Handle hostnames with upper-case letters
[webmin.git] / postgresql / cgi_args.pl
1
2 do 'postgresql-lib.pl';
3
4 sub cgi_args
5 {
6 my ($cgi) = @_;
7 my $db;
8 eval {
9         local $main::error_must_die = 1;
10         ($db) = grep { &can_edit_db($_) &&
11                        !/^template/ } &list_databases();
12         };
13 return undef if (!$db); # Don't know which DB to use
14 if ($cgi eq 'edit_dbase.cgi' || $cgi eq 'backup_form.cgi' ||
15     $cgi eq 'exec_form.cgi' || $cgi eq 'restore_form.cgi') {
16         # Use first DB
17         return 'db='.&urlize($db);
18         }
19 elsif ($cgi eq 'list_grants.cgi') {
20         # Works with no args
21         return '';
22         }
23 elsif ($cgi eq 'table_form.cgi') {
24         return 'db='.&urlize($db).'&fields=4';
25         }
26 elsif ($cgi eq 'edit_view.cgi' || $cgi eq 'edit_seq.cgi') {
27         return 'db='.&urlize($db).'&new=1';
28         }
29 elsif ($cgi eq 'edit_table.cgi' || $cgi eq 'edit_field.cgi' ||
30        $cgi eq 'view_table.cgi') {
31         # Find a table
32         my $table;
33         eval {
34                 local $main::error_must_die = 1;
35                 ($table) = &list_tables($db);
36                 };
37         return 'db='.&urlize($db).'&table='.&urlize($table).
38                ($cgi eq 'edit_field.cgi' ? '&idx=0' : '');
39         }
40 return undef;
41 }