Revision: 6353 http://ipcop.svn.sourceforge.net/ipcop/?rev=6353&view=rev Author: dotzball Date: 2012-02-17 13:01:03 +0000 (Fri, 17 Feb 2012) Log Message: ----------- Fix PERL warnings.
Display all (validation) errormessages, not only the last one. Modified Paths: -------------- ipcop/trunk/html/cgi-bin/urlfilter.cgi Modified: ipcop/trunk/html/cgi-bin/urlfilter.cgi =================================================================== --- ipcop/trunk/html/cgi-bin/urlfilter.cgi 2012-02-17 12:59:59 UTC (rev 6352) +++ ipcop/trunk/html/cgi-bin/urlfilter.cgi 2012-02-17 13:01:03 UTC (rev 6353) @@ -22,7 +22,7 @@ # # Add entry in menu (not yet ;-)) -# MENU ENTRY services 015 "url filter" "url filter configuration" +# MENU ENTRY services 020 "url filter" "url filter configuration" # # Make sure translation exists $Lang::tr{'url filter'} @@ -191,11 +191,13 @@ s/\s+-\s+/-/g; s/\s+/ /g; s/\n//g; - if (/.*-.*-.*/) { $errormessage = $Lang::tr{'errmsg invalid ip or mask'}; } + if (/.*-.*-.*/) { + $errormessage .= "$Lang::tr{'errmsg invalid ip or mask'}<br />"; + } @temp = split(/-/); foreach (@temp) { unless ((&General::validipormask($_)) || (&General::validipandmask($_))) { - $errormessage = $Lang::tr{'errmsg invalid ip or mask'}; + $errormessage .= "$Lang::tr{'errmsg invalid ip or mask'}<br />"; } } } @@ -206,12 +208,14 @@ s/\s+-\s+/-/g; s/\s+/ /g; s/\n//g; - if (/.*-.*-.*/) { $errormessage = $Lang::tr{'errmsg invalid ip or mask'}; } + if (/.*-.*-.*/) { + $errormessage .= "$Lang::tr{'errmsg invalid ip or mask'}<br />"; + } @temp = split(/-/); foreach (@temp) { unless ((&General::validipormask($_)) || (&General::validipandmask($_))) { - $errormessage = $Lang::tr{'errmsg invalid ip or mask'}; + $errormessage .= "$Lang::tr{'errmsg invalid ip or mask'}<br />"; } } } @@ -235,7 +239,7 @@ $_ = substr($_, rindex($_, "/") + 1); if ($_) { if (copy($filtersettings{'UPLOADFILE'}, "$repository/$_") != 1) { - $errormessage = $!; + $errormessage .= "$!<br />"; goto ERROR; } } @@ -246,12 +250,12 @@ &General::getcgihash(\%filtersettings, {'wantfile' => 1, 'filevar' => 'UPDATEFILE'}); if (!($filtersettings{'UPDATEFILE'} =~ /.tar.gz$/)) { - $errormessage = $Lang::tr{'urlfilter wrong filetype'}; + $errormessage .= "$Lang::tr{'urlfilter wrong filetype'}<br />"; goto ERROR; } if (copy($filtersettings{'UPDATEFILE'}, "/var/ipcop/proxy/blacklists.tar.gz") != 1) { - $errormessage = $!; + $errormessage .= "$!<br />"; goto ERROR; } @@ -261,7 +265,7 @@ system("/bin/tar --no-same-owner -xzf /var/ipcop/proxy/blacklists.tar.gz -C /var/ipcop/proxy/update"); if ($exitcode > 0) { - $errormessage = $Lang::tr{'urlfilter tar error'}; + $errormessage .= "$Lang::tr{'urlfilter tar error'};<br />" } else { @@ -274,7 +278,7 @@ } if (!(-d "/var/ipcop/proxy/update/blacklists")) { - $errormessage = $Lang::tr{'urlfilter invalid content'}; + $errormessage .= "$Lang::tr{'urlfilter invalid content'}<br />"; } else { # remove old blacklists (except custom lists) @@ -307,7 +311,7 @@ ) ) { - $errormessage = $Lang::tr{'urlfilter backup error'}; + $errormessage .= "$Lang::tr{'urlfilter backup error'}<br />"; goto ERROR; } else { @@ -330,25 +334,25 @@ &General::getcgihash(\%filtersettings, {'wantfile' => 1, 'filevar' => 'UPDATEFILE'}); if (!($filtersettings{'UPDATEFILE'} =~ /.tar.gz$/)) { - $errormessage = $Lang::tr{'urlfilter wrong filetype'}; + $errormessage .= "$Lang::tr{'urlfilter wrong filetype'}<br />"; goto ERROR; } if (!(-d "/var/ipcop/proxy/restore")) { mkdir("/var/ipcop/proxy/restore"); } if (copy($filtersettings{'UPDATEFILE'}, "/var/ipcop/proxy/backup.tar.gz") != 1) { - $errormessage = $!; + $errormessage .= "$!<br />"; } my $exitcode = system( "/bin/tar --no-same-owner --preserve-permissions -xzf /var/ipcop/proxy/backup.tar.gz -C /var/ipcop/proxy/restore" ); if ($exitcode > 0) { - $errormessage = $Lang::tr{'urlfilter tar error'}; + $errormessage .= "$Lang::tr{'urlfilter tar error'}<br />"; } else { if (!(-e "/var/ipcop/proxy/restore/settings")) { - $errormessage = $Lang::tr{'urlfilter invalid restore file'}; + $errormessage .= "$Lang::tr{'urlfilter invalid restore file'}<br />"; } else { system("cp -rp /var/ipcop/proxy/restore/* /var/ipcop/proxy/"); @@ -372,11 +376,11 @@ if ($filtersettings{'ACTION'} eq $Lang::tr{'save and restart'}) { if ((!($proxysettings{'ENABLED_GREEN_1'} eq 'on')) && (!($proxysettings{'ENABLED_BLUE_1'} eq 'on')) && (!($proxysettings{'ENABLED_OVPN'} eq 'on'))) { - $errormessage = $Lang::tr{'urlfilter web proxy service required'}; + $errormessage .= "$Lang::tr{'urlfilter web proxy service required'}<br />"; goto ERROR; } if (!($proxysettings{'ENABLE_REDIRECTOR'} eq 'on')) { - $errormessage = $Lang::tr{'redirectors are disabled'}; + $errormessage .= "$Lang::tr{'redirectors are disabled'}<br />"; goto ERROR; } @@ -402,15 +406,15 @@ $tcsettings{'TCMODE'} = 'on'; if (!$tcsettings{'DST'}) { - $errormessage = $Lang::tr{'urlfilter dst error'}; + $errormessage .= "$Lang::tr{'urlfilter dst error'}<br />"; } if (!$tcsettings{'SRC'}) { - $errormessage = $Lang::tr{'urlfilter src error'}; + $errormessage .= "$Lang::tr{'urlfilter src error'}<br />"; } if (!($tcsettings{'TO_HOUR'} . $tcsettings{'TO_MINUTE'} gt $tcsettings{'FROM_HOUR'} . $tcsettings{'FROM_MINUTE'})) { - $errormessage = $Lang::tr{'urlfilter timespace error'}; + $errormessage .= "$Lang::tr{'urlfilter timespace error'}<br />"; } if ( @@ -425,7 +429,7 @@ ) ) { - $errormessage = $Lang::tr{'urlfilter weekday error'}; + $errormessage .= "$Lang::tr{'urlfilter weekday error'}<br />"; } if (!$errormessage) { @@ -542,10 +546,10 @@ if (($tcsettings{'MODE'} eq 'TIMECONSTRAINT') && ($tcsettings{'ACTION'} eq $Lang::tr{'urlfilter restart'})) { if ($proxysettings{'ENABLE_REDIRECTOR'} ne 'on') { - $errormessage = $Lang::tr{'redirectors are disabled'}; + $errormessage .= "$Lang::tr{'redirectors are disabled'}<br />"; } if ((!($proxysettings{'ENABLED_GREEN_1'} eq 'on')) && (!($proxysettings{'ENABLED_BLUE_1'} eq 'on')) && (!($proxysettings{'ENABLED_OVPN'} eq 'on'))) { - $errormessage = $Lang::tr{'urlfilter web proxy service required'}; + $errormessage .= "$Lang::tr{'urlfilter web proxy service required'}<br />"; } if (!$errormessage) { @@ -620,11 +624,11 @@ $uqsettings{'UQMODE'} = 'on'; if ((!($uqsettings{'TIME_QUOTA'} =~ /^\d+/)) || ($uqsettings{'TIME_QUOTA'} < '1')) { - $errormessage = $Lang::tr{'urlfilter quota time error'}; + $errormessage .= "$Lang::tr{'urlfilter quota time error'}<br />"; } @temp = split(/\n/, $uqsettings{'QUOTA_USERS'}); - undef $uqsettings{'QUOTA_USERS'}; + $uqsettings{'QUOTA_USERS'} = ''; foreach (@temp) { s/^\s+//g; s/\s+$//g; @@ -633,7 +637,7 @@ } if ($uqsettings{'QUOTA_USERS'} eq '') { - $errormessage = $Lang::tr{'urlfilter quota user error'}; + $errormessage .= "$Lang::tr{'urlfilter quota user error'}<br />"; } $_ = $uqsettings{'QUOTA_USERS'}; @@ -743,10 +747,10 @@ if (($uqsettings{'MODE'} eq 'USERQUOTA') && ($uqsettings{'ACTION'} eq $Lang::tr{'urlfilter restart'})) { if (!($proxysettings{'ENABLE_REDIRECTOR'} eq 'on')) { - $errormessage = $Lang::tr{'redirectors are disabled'}; + $errormessage .= "$Lang::tr{'redirectors are disabled'}<br />"; } if ((!($proxysettings{'ENABLED_GREEN_1'} eq 'on')) && (!($proxysettings{'ENABLED_BLUE_1'} eq 'on')) && (!($proxysettings{'ENABLED_OVPN'} eq 'on'))) { - $errormessage = $Lang::tr{'urlfilter web proxy service required'}; + $errormessage .= "$Lang::tr{'urlfilter web proxy service required'}<br />"; } if (!$errormessage) { system('/usr/local/bin/restartsquid'); } @@ -825,20 +829,20 @@ &General::getcgihash(\%besettings, {'wantfile' => 1, 'filevar' => 'IMPORTFILE'}); if (!($besettings{'IMPORTFILE'} =~ /.tar.gz$/)) { - $errormessage = $Lang::tr{'urlfilter wrong filetype'}; + $errormessage .= "$Lang::tr{'urlfilter wrong filetype'}<br />"; } else { if (!-d "$editdir") { mkdir("$editdir"); } if (copy($besettings{'IMPORTFILE'}, "$editdir/blacklist.tar.gz") != 1) { - $errormessage = $!; + $errormessage .= "$!<br />"; } else { my $exitcode = system("/bin/tar --no-same-owner --preserve-permissions -xzf $editdir/blacklist.tar.gz -C $editdir"); if ($exitcode > 0) { - $errormessage = $Lang::tr{'urlfilter tar error'}; + $errormessage .= "$Lang::tr{'urlfilter tar error'}<br />"; } else { $i = 0; @@ -850,7 +854,7 @@ } if (!($i == 1)) { - $errormessage = $Lang::tr{'urlfilter invalid import file'}; + $errormessage .= "$Lang::tr{'urlfilter invalid import file'}<br />"; } else { delete $besettings{'BE_DOMAINS'}; @@ -894,7 +898,7 @@ $besettings{'BEMODE'} = 'on'; if ($besettings{'BE_NAME'} eq '') { - $errormessage = $Lang::tr{'urlfilter category name error'}; + $errormessage .= "$Lang::tr{'urlfilter category name error'}<br />"; } elsif ($besettings{'BE_DOMAINS'} || $besettings{'BE_URLS'} || $besettings{'BE_EXPRESSIONS'}) { @@ -921,7 +925,7 @@ close FILE; if (system("/bin/tar -C $editdir -czf $editdir/$besettings{'BE_NAME'}.tar.gz blacklists")) { - $errormessage = $Lang::tr{'urlfilter export error'}; + $errormessage .= "$Lang::tr{'urlfilter export error'}<br />"; } else { print "Content-type: application/gzip\n"; @@ -939,7 +943,7 @@ } } else { - $errormessage = $Lang::tr{'urlfilter category data error'}; + $errormessage .= "$Lang::tr{'urlfilter category data error'}<br />"; } } @@ -947,7 +951,7 @@ $besettings{'BEMODE'} = 'on'; if ($besettings{'BE_NAME'} eq '') { - $errormessage = $Lang::tr{'urlfilter category name error'}; + $errormessage .= "$Lang::tr{'urlfilter category name error'}<br />"; } elsif ($besettings{'BE_DOMAINS'} || $besettings{'BE_URLS'} || $besettings{'BE_EXPRESSIONS'}) { @@ -990,7 +994,7 @@ print FILE "dest $besettings{'BE_NAME'} {\n"; if ($besettings{'BE_DOMAINS'}) { print FILE " domainlist domains\n"; } if ($besettings{'BE_URLS'}) { print FILE " urllist urls\n"; } - if ($besettings{'BE_EXPRESSIONS'}) { print FILE " expressions expressions\n"; } + if ($besettings{'BE_EXPRESSIONS'}) { print FILE " expressionlist expressions\n"; } print FILE "}\n\n"; print FILE "acl {\n"; print FILE " default {\n"; @@ -1015,13 +1019,13 @@ if (-d $editdir) { system("rm -rf $editdir"); } } else { - $errormessage = $Lang::tr{'urlfilter category data error'}; + $errormessage .= "$Lang::tr{'urlfilter category data error'}<br />"; } } if (($filtersettings{'ACTION'} eq $Lang::tr{'save'}) && ($filtersettings{'MODE'} eq 'blacklist update')) { if (($filtersettings{'UPDATE_SOURCE'} eq 'custom') && ($filtersettings{'CUSTOM_UPDATE_URL'} eq '')) { - $errormessage = $Lang::tr{'urlfilter custom url required'}; + $errormessage .= "$Lang::tr{'urlfilter custom url required'}<br />"; } else { my %updateConf = (); @@ -1036,7 +1040,7 @@ if ($filtersettings{'ACTION'} eq $Lang::tr{'instant update'}) { if ($filtersettings{'UPDATE_SOURCE'} eq 'custom' && $filtersettings{'CUSTOM_UPDATE_URL'} eq '') { - $errormessage = $Lang::tr{'urlfilter custom url required'}; + $errormessage .= "$Lang::tr{'urlfilter custom url required'}<br />"; } else { $updatemessage = $Lang::tr{'urlfilter upload information'}; @@ -1655,14 +1659,14 @@ $source_name = substr($_, 0, rindex($_, ",")); $source_url = substr($_, index($_, ",") + 1); my $selected = ''; - if ($updatesettings{'UPDATE_SOURCE'} eq $source_url) { + if (defined($updatesettings{'UPDATE_SOURCE'}) && $updatesettings{'UPDATE_SOURCE'} eq $source_url) { $selected = "selected='selected'"; } print "\t<option value='$source_url' $selected>$source_name</option>\n"; } my $selectedCustom = ''; - if ($updatesettings{'UPDATE_SOURCE'} eq 'custom') { + if (defined($updatesettings{'UPDATE_SOURCE'}) && $updatesettings{'UPDATE_SOURCE'} eq 'custom') { $selectedCustom = "selected='selected'"; } @@ -1682,7 +1686,7 @@ <td class='button2buttons'> END ; - if ($updatesettings{'UPDATE_SOURCE'} ne "") { + if (defined($updatesettings{'UPDATE_SOURCE'}) && $updatesettings{'UPDATE_SOURCE'} ne "") { print "<input type='submit' name='ACTION' value='$Lang::tr{'instant update'}' />"; } print <<END @@ -2814,7 +2818,7 @@ # transform to pre1.8 client definitions @clients = split(/\n/, $filtersettings{'UNFILTERED_CLIENTS'}); - undef $filtersettings{'UNFILTERED_CLIENTS'}; + $filtersettings{'UNFILTERED_CLIENTS'} = ''; foreach (@clients) { s/^\s+//g; s/\s+$//g; @@ -2827,7 +2831,7 @@ # transform to pre1.8 client definitions @clients = split(/\n/, $filtersettings{'BANNED_CLIENTS'}); - undef $filtersettings{'BANNED_CLIENTS'}; + $filtersettings{'BANNED_CLIENTS'} = ''; foreach (@clients) { s/^\s+//g; s/\s+$//g; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. ------------------------------------------------------------------------------ Virtualization & Cloud Management Using Capacity Planning Cloud computing makes use of virtualization - but cloud computing also focuses on allowing computing to be delivered as a service. http://www.accelacomm.com/jaw/sfnl/114/51521223/ _______________________________________________ Ipcop-svn mailing list Ipcop-svn@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/ipcop-svn