#!/usr/local/bin/perl # delete_packs.cgi # Ask if the user wants to delete multiple packages, and if so do it # XXX logging require './software-lib.pl'; &ReadParse(); &error_setup($text{'deletes_err'}); foreach $d (split(/\0/, $in{'del'})) { local ($p, $v) = split(/\s/, $d); local @pinfo; (@pinfo = &package_info($p, $v)) || &error(&text('delete_epack', $p)); push(@packs, $p); push(@vers, $v); push(@infos, \@pinfo); } @packs || &error($text{'deletes_enone'}); &ui_print_header(undef, $text{'deletes_title'}, "", "delete"); if ($in{'sure'}) { # do the deletion print "

\n"; if (defined(&delete_packages)) { # Can just use one function print &text('deletes_desc', "".join(" ", @packs).""), "

\n"; $error = &delete_packages(\@packs, \%in, \@vers); if ($error) { print "",&text('deletes_failed2', $error),"

\n"; } else { print "$text{'deletes_success2'}

\n"; } } else { # Need to use a loop for($i=0; $i<@packs; $i++) { $error = &delete_package($packs[$i], \%in, $vers[$i]); if ($error) { print "",&text('deletes_failed1', "$packs[$i]", $error),"
\n"; } else { print &text('deletes_success1', "$packs[$i]"),"
\n"; } } } &webmin_log("deletes", "package", undef, { 'packs' => \@packs }); } else { # Ask if the user is sure.. print "

\n"; print &text('deletes_rusure', "".join(" ", @packs).""), "

\n"; print "

\n"; foreach $d (split(/\0/, $in{'del'})) { print "\n"; } print "\n"; print "\n"; print "

\n"; if (defined(&delete_options)) { &delete_options($packs[0]); } print "

\n"; } &ui_print_footer("search.cgi?search=$in{'search'}", $text{'search_return'});