Handle hostnames with upper-case letters
[webmin.git] / software / log_parser.pl
1 # log_parser.pl
2 # Functions for parsing this module's logs
3
4 do 'software-lib.pl';
5
6 # parse_webmin_log(user, script, action, type, object, &params)
7 # Converts logged information from this module into human-readable form
8 sub parse_webmin_log
9 {
10 local ($user, $script, $action, $type, $object, $p, $long) = @_;
11 if ($action eq 'install') {
12         return &text("log_install_package", "<tt>$object</tt>");
13         }
14 elsif ($action eq 'apt') {
15         local @p = split(/\0/, $p->{'packages'});
16         return &text($long || @p < 2 ? "log_${type}_apt_l" : "log_${type}_apt",
17                      "<tt>".join(" ",@p)."</tt>", scalar(@p));
18         }
19 elsif ($action eq 'rhn') {
20         local @p = @{$p->{'packages'}};
21         return &text($long || @p < 2 ? "log_${type}_rhn_l" : "log_${type}_rhn",
22                      "<tt>".join(" ",@p)."</tt>", scalar(@p));
23         }
24 elsif ($action eq "yum") {
25         local @p = @{$p->{'packages'}};
26         return &text($long || @p < 2 ? "log_${type}_yum_l" : "log_${type}_yum",
27                      "<tt>".join(" ",@p)."</tt>", scalar(@p));
28         }
29 elsif ($action eq "urpmi") {
30         return $text{'log_urpmi_'.$type};
31         }
32 elsif ($action eq 'delete') {
33         return &text('log_delete', "<tt>$object</tt>");
34         }
35 elsif ($action eq 'deletes') {
36         local @p = split(/\0/, $p->{'packs'});
37         if ($long) {
38                 return &text('log_deletes_l', "<tt>".join(" ", @p)."</tt>");
39                 }
40         else {
41                 return &text('log_deletes', scalar(@p));
42                 }
43         }
44 else {
45         return undef;
46         }
47 }
48