1#!/usr/local/bin/perl
2# Delete several selected database permissions
3
4require './mysql-lib.pl';
5&ReadParse();
6$access{'perms'} || &error($text{'perms_ecannot'});
7&error_setup($text{'dbs_derr'});
8@d = split(/\0/, $in{'d'});
9@d || &error($trext{'dbs_enone'});
10
11if (!$in{'confirm'}) {
12	# Ask first
13	&ui_print_header(undef, $text{'dbs_dtitle'}, "");
14
15	print &ui_confirmation_form("delete_dbs.cgi",
16		&text('dbs_drusure', scalar(@d)),
17		[ map { [ "d", $_ ] } @d ],
18		[ [ "confirm", $text{'dbs_dok'} ] ],
19		);
20
21	&ui_print_footer('list_dbs.cgi', $text{'dbs_return'},
22			 "", $text{'index_return'});
23	}
24else {
25	# Delete the database permissions
26	foreach $hdu (@d) {
27		($host, $db, $user) = split(/ /, $hdu);
28		$access{'perms'} == 1 || &can_edit_db($db) ||
29			&error($text{'perms_edb'});
30		&execute_sql_logged($master_db,
31			     "delete from db where user = '$user' ".
32			     "and host = '$host' ".
33			     "and db = '$db'");
34		}
35	&execute_sql_logged($master_db, 'flush privileges');
36
37	# Log it
38	&webmin_log("delete", "dbprivs", scalar(@d));
39	&redirect("list_dbs.cgi");
40	}
41
42