Added CGI args parser
authorJamie Cameron <jcameron@webmin.com>
Wed, 10 Jun 2009 17:46:36 +0000 (17:46 +0000)
committerJamie Cameron <jcameron@webmin.com>
Wed, 10 Jun 2009 17:46:36 +0000 (17:46 +0000)
mailboxes/cgi_args.pl [new file with mode: 0644]
webmin-search-lib.pl

diff --git a/mailboxes/cgi_args.pl b/mailboxes/cgi_args.pl
new file mode 100644 (file)
index 0000000..dccc4a0
--- /dev/null
@@ -0,0 +1,21 @@
+
+do 'mailboxes-lib.pl';
+
+sub cgi_args
+{
+my ($cgi) = @_;
+my @users = &list_mail_users(1, \&can_user);
+if ($cgi eq 'list_mail.cgi') {
+       # First allowed user
+       return @users ? 'user='.&urlize($users[0]->[0]) : 'none';
+       }
+elsif ($cgi eq 'view_mail.cgi') {
+       # First mail, if any
+       return 'none' if (!@users);
+       my @folders = &list_user_folders(@{$users[0]});
+       my ($f) = grep { &mailbox_folder_size($_, 1) } @folders;
+       return $f ? 'user='.&urlize($users[0]->[0]).
+                   '&idx=0&folder='.$f->{'index'} : 'none';
+       }
+return undef;
+}
index 7bfe373..6d5e704 100644 (file)
@@ -275,7 +275,7 @@ if ($data =~ /(ui_print_header|ui_print_unbuffered_header)\([^,]+,[^,]*(\$text{'
        local %mtext = &load_language($m);
        $rv = $mtext{$msg};
        }
-elsif ($data =~ /(^|\s)header\(\s*(\$text{'([^']+)'|\$text{"([^"]+)"|\&text\('([^']+)'|\&text\("([^"]+)")/) {
+elsif ($data =~ /(^|\s|mail_page_)header\(\s*(\$text{'([^']+)'|\$text{"([^"]+)"|\&text\('([^']+)'|\&text\("([^"]+)")/) {
        # Old header function
        local $msg = $3 || $4 || $5 || $6;
        local %mtext = &load_language($m);