3 # Display database-level permissions
5 require './mysql-lib.pl';
6 $access{'perms'} || &error($text{'perms_ecannot'});
7 &ui_print_header(undef, $text{'dbs_title'}, "", "dbs");
9 @rowlinks = ( "<a href='edit_db.cgi?new=1'>$text{'dbs_add'}</a>" );
10 $d = &execute_sql_safe($master_db, "select * from db order by db");
11 if (@{$d->{'data'}}) {
12 print &ui_form_start("delete_dbs.cgi");
13 unshift(@rowlinks, &select_all_link("d", 0),
14 &select_invert_link("d", 0) );
15 print &ui_links_row(\@rowlinks);
17 print &ui_columns_start([ "",
21 $text{'dbs_perms'} ], 100, 0, \@tds);
23 foreach $u (@{$d->{'data'}}) {
25 next if ($access{'perms'} == 2 && !&can_edit_db($u->[1]));
27 push(@cols, "<a href='edit_db.cgi?idx=$i'>".
28 ($u->[1] eq '%' || $u->[1] eq '' ? $text{'dbs_any'}
29 : &html_escape($u->[1]))."</a>");
30 push(@cols, $u->[2] eq '' ? $text{'dbs_anon'}
31 : &html_escape($u->[2]));
32 push(@cols, $u->[0] eq '%' ? $text{'dbs_any'} :
33 $u->[0] eq '' ? $text{'dbs_hosts'}
34 : &html_escape($u->[0]));
36 for($j=3; $j<=&db_priv_cols()+3-1; $j++) {
37 push(@priv, $text{"dbs_priv$j"}) if ($u->[$j] eq 'Y');
40 scalar(@priv) == &db_priv_cols() ? $text{'dbs_all'} :
41 !@priv ? $text{'dbs_none'} : join(" | ", @priv));
42 print &ui_checked_columns_row(\@cols, \@tds,
43 "d", join(" ", $u->[0], $u->[1], $u->[2]));
45 print &ui_columns_end();
48 print "<b>$text{'dbs_empty'}</b> <p>\n";
50 print &ui_links_row(\@rowlinks);
51 print &ui_form_end([ [ "delete", $text{'users_delete'} ]]) if (@{$d->{'data'}});
53 &ui_print_footer("", $text{'index_return'});