Server IP : 195.201.23.43 / Your IP : 18.117.161.73 Web Server : Apache System : Linux webserver2.vercom.be 5.4.0-192-generic #212-Ubuntu SMP Fri Jul 5 09:47:39 UTC 2024 x86_64 User : kdecoratie ( 1041) PHP Version : 7.1.33-63+ubuntu20.04.1+deb.sury.org+1 Disable Function : pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals, MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : ON Directory : /usr/share/webmin/virtual-server/ |
Upload File : |
#!/usr/bin/perl # Uninstall a bunch of scripts from some virtual server require './virtual-server-lib.pl'; &ReadParse(); $d = &get_domain($in{'dom'}); &can_edit_domain($d) && &can_edit_scripts() || &error($text{'edit_ecannot'}); if ($in{'upgrade'}) { # Just go to mass upgrade page &redirect("mass_upgrade.cgi?$in"); exit; } &error_setup($text{'massu_err'}); @d = split(/\0/, $in{'d'}); @d || &error($text{'masse_enone'}); # Get the scripts being removed @got = &list_domain_scripts($d); foreach $id (@d) { ($sinfo) = grep { $_->{'id'} eq $id } @got; if ($sinfo) { push(@del, $sinfo); } } if ($in{'confirm'}) { # Do it &ui_print_unbuffered_header(&domain_in($d), $text{'massu_title'}, ""); # Get locks &obtain_lock_web($d); &obtain_lock_cron($d); foreach $sinfo (@del) { # Call the un-install function $script = &get_script($sinfo->{'name'}); &$first_print(&text('scripts_uninstalling', $script->{'desc'}, $sinfo->{'version'})); ($ok, $msg) = &{$script->{'uninstall_func'}}( $d, $sinfo->{'version'}, $sinfo->{'opts'}); &$indent_print(); print $msg,"<br>\n"; &$outdent_print(); if ($ok) { &$second_print($text{'setup_done'}); # Remove any custom PHP directory &clear_php_version($d, $sinfo); # Remove custom proxy path &delete_noproxy_path($d, $script, $sinfo->{'version'}, $sinfo->{'opts'}); # Record script un-install in domain &remove_domain_script($d, $sinfo); } else { &$second_print($text{'scripts_failed'}); } &run_post_actions(); } &release_lock_web($d); &release_lock_cron($d); &webmin_log("uninstall", "scripts", scalar(@d)); } else { # Ask first &ui_print_header(&domain_in($d), $text{'massu_title'}, ""); print "<center>\n"; print &ui_form_start("mass_uninstall.cgi", "post"); print &ui_hidden("dom", $in{'dom'}),"\n"; foreach $id (@d) { print &ui_hidden("d", $id),"\n"; } $sz = $dbcount = 0; @descs = ( ); foreach $sinfo (@del) { $script = &get_script($sinfo->{'name'}); $opts = $sinfo->{'opts'}; $sz += &disk_usage_kb($opts->{'dir'})*1024; if ($opts->{'db'}) { if (!$donedb{$opts->{'db'}}++) { $dbcount++; } } if ($opts->{'dir'} eq &public_html_dir($d)) { $delhtml = 1; } push(@descs, $script->{'desc'}." ".$sinfo->{'version'}); } print &text('massu_rusure', scalar(@d), &nice_size($sz)),"\n"; if ($dbcount) { print &text('massu_rusuredb', $dbcount),"\n"; } print "<p>\n"; if ($delhtml) { print &text('massu_rusurehome', &public_html_dir($d, 1)), "<p>\n"; } print &text('massu_sel', "<tt>".ui_text_color(join(", ", @descs), 'danger')."</tt>"),"<br>\n"; print "</p>\n"; print &ui_submit($text{'scripts_uok2'}, "confirm"),"\n"; print &ui_form_end(),"\n"; print "</center>\n"; } &ui_print_footer("list_scripts.cgi?dom=$in{'dom'}", $text{'scripts_return'}, &domain_footer_link($d));Private