# log_parser.pl # Functions for parsing this module's logs use strict; use warnings; no warnings 'redefine'; no warnings 'uninitialized'; our (%text, %in, %access, $squid_version, %config); do 'squid-lib.pl'; # parse_webmin_log(user, script, action, type, object, ¶ms) # Converts logged information from this module into human-readable form sub parse_webmin_log { my ($user, $script, $action, $type, $object, $p) = @_; $object = &html_escape($object); if ($type eq 'acl') { return &text("log_acl_$action", "$object"); } elsif ($type eq 'host') { return &text("log_host_$action", "$object"); } elsif ($type eq 'http' || $type eq 'icp' || $type eq 'always' || $type eq 'never' || $type eq 'pool' || $type eq 'delay' || $type eq 'headeracc' || $type eq 'refresh') { return &text("log_${type}_${action}", "".&html_escape($object).""); } elsif ($type eq 'pools' || $type eq 'refreshes' || $type eq 'hosts') { return &text("log_${type}_${action}", $object); } elsif ($type eq 'user') { return &text("log_user_$action", "$object"); } elsif ($action eq 'purge') { return &text('log_purge', "".&html_escape($object).""); } elsif ($text{"log_$action"}) { return $text{"log_$action"}; } else { return undef; } }