Add cgi args script
authorJamie Cameron <jcameron@webmin.com>
Fri, 5 Jun 2009 17:49:08 +0000 (17:49 +0000)
committerJamie Cameron <jcameron@webmin.com>
Fri, 5 Jun 2009 17:49:08 +0000 (17:49 +0000)
lvm/cgi_args.pl [new file with mode: 0644]
webmin_search.cgi

diff --git a/lvm/cgi_args.pl b/lvm/cgi_args.pl
new file mode 100644 (file)
index 0000000..be3e15c
--- /dev/null
@@ -0,0 +1,35 @@
+
+do 'lvm-lib.pl';
+
+sub cgi_args
+{
+my ($cgi) = @_;
+my @vgs = &list_volume_groups();
+if ($cgi eq 'edit_vg.cgi') {
+       # First volume group
+       return @vgs ? 'vg='.&urlize($vgs[0]->{'name'}) : 'new=1';
+       }
+elsif ($cgi eq 'edit_pv.cgi') {
+       # First physical volume in group
+       if (@vgs) {
+               local @pvs = &list_physical_volumes($vgs[0]->{'name'});
+               return 'vg='.&urlize($vgs[0]->{'name'}).'&'.
+                      (@pvs ? 'pv='.$pvs[0]->{'name'} : 'new=1');
+               }
+       else {
+               return 'none';
+               }
+       }
+elsif ($cgi eq 'edit_lv.cgi') {
+       # First logical volume in group
+       if (@vgs) {
+               local @lvs = &list_logical_volumes($vgs[0]->{'name'});
+               return 'vg='.&urlize($vgs[0]->{'name'}).'&'.
+                      (@lvs ? 'lv='.$lvs[0]->{'name'} : 'new=1');
+               }
+       else {
+               return 'none';
+               }
+       }
+return undef;
+}
index 7e1b2d5..43c50fe 100644 (file)
@@ -317,7 +317,7 @@ sub cgi_page_title
 local ($m, $cgi) = @_;
 local $data = &read_file_contents(&module_root_directory($m)."/".$cgi);
 local $rv;
-if ($data =~ /(header|ui_print_header|ui_print_unbuffered_header)\([^,]+,\s*(\$text{'([^']+)'|\$text{"([^"]+)"|\&text\('([^']+)'|\&text\("([^"]+)")/) {
+if ($data =~ /(header|ui_print_header|ui_print_unbuffered_header)\([^,]+,[^,]*(\$text{'([^']+)'|\$text{"([^"]+)"|\&text\('([^']+)'|\&text\("([^"]+)")/) {
        local $msg = $3 || $4 || $5 || $6;
        local %mtext = &load_language($m);
        $rv = $mtext{$msg};