php IHDR w Q )Ba pHYs sRGB gAMA a IDATxMk\U s&uo,mD )Xw+e?tw.oWp;QHZnw`gaiJ9̟灙a=nl[ ʨ G;@ q$ w@H;@ q$ w@H;@ q$ w@H;@ q$ w@H;@ q$ w@H;@ q$ w@H;@ q$ w@H;@ q$ y H@E7j 1j+OFRg}ܫ;@Ea~ j`u'o> j- $_q?qS XzG'ay
files >> /usr/libexec/webmin/virtual-server/ |
files >> //usr/libexec/webmin/virtual-server/delete_databases.cgi |
#!/usr/bin/perl # Delete several databases from a domain, after asking for confirmation require './virtual-server-lib.pl'; &ReadParse(); $d = &get_domain($in{'dom'}); &can_edit_domain($d) || &error($text{'edit_ecannot'}); &can_edit_databases($d) || &error($text{'databases_ecannot'}); &error_setup($text{'ddatabases_err'}); # Get the DBs @d = split(/\0/, $in{'d'}); @d || &error($text{'ddatabases_enone'}); @dbs = &domain_databases($d); foreach $tn (@d) { ($t, $n) = split(/_/, $tn, 2); ($db) = grep { $_->{'type'} eq $t && $_->{'name'} eq $n } @dbs; $db || &error(&text('ddatabases_edb', $t, $n)); if ($db->{'name'} eq $d->{'db'} && !&can_edit_database_name()) { &error(&text('ddatabases_edbdef', $t, $n)); } push(@deldbs, $db); } if ($in{'confirm'}) { # Go for it! &ui_print_unbuffered_header(&domain_in($d), $text{'ddatabases_title'}, ""); foreach $db (@deldbs) { if (&indexof($db->{'type'}, &list_database_plugins()) >= 0) { &plugin_call($db->{'type'}, "database_delete", $d, $db->{'name'}); } else { $dfunc = "delete_".$db->{'type'}."_database"; &$dfunc($d, $db->{'name'}); } } &$first_print($text{'setup_save'}); &save_domain($d); &$second_print($text{'setup_done'}); &refresh_webmin_user($d); } else { # Ask first &ui_print_header(&domain_in($d), $text{'ddatabases_title'}, ""); # Work out the total size foreach $db (@deldbs) { if (&indexof($db->{'type'}, &list_database_plugins()) >= 0) { # Get size from plugin ($size, $tables) = &plugin_call($db->{'type'}, "database_size", $d, $db->{'name'}); } else { # From core DB call $szfunc = $db->{'type'}."_size"; ($size, $tables) = &$szfunc($d, $db->{'name'}); } $totalsize += $size; $totaltables += $tables; } print "<center>\n"; print &ui_form_start("delete_databases.cgi", "post"); print &ui_hidden("dom", $d->{'id'}),"\n"; foreach $tn (@d) { print &ui_hidden("d", $tn),"\n"; } print &text($totaltables ? 'ddatabases_rusure2' : 'ddatabases_rusure3', scalar(@d), $totaltables, &nice_size($totalsize)),"<p>\n"; @dnames = map { $_->{'name'} } @deldbs; print &ui_form_end([ [ "confirm", $text{'ddatabases_ok'} ] ]); print &text('ddatabases_dbs', join(" ", map { "<tt>$_</tt>" } @dnames)),"<br>\n"; print "</center>\n"; } &ui_print_footer("list_databases.cgi?dom=$d->{'id'}", $text{'databases_return'});y~or5J={Eeu磝Qk ᯘG{?+]ן?wM3X^歌>{7پK>on\jy Rg/=fOroNVv~Y+ NGuÝHWyw[eQʨSb> >}Gmx[o[<{Ϯ_qFvM IENDB`