mirror of
https://github.com/webmin/webmin.git
synced 2026-03-20 16:50:24 +00:00
Mass user deletion
This commit is contained in:
35
iscsi-server/delete_users.cgi
Normal file
35
iscsi-server/delete_users.cgi
Normal file
@@ -0,0 +1,35 @@
|
||||
#!/usr/local/bin/perl
|
||||
# Delete multiple users
|
||||
|
||||
use strict;
|
||||
use warnings;
|
||||
require './iscsi-server-lib.pl';
|
||||
our (%text, %in, %config);
|
||||
&error_setup($text{'dusers_err'});
|
||||
&lock_file($config{'auths_file'});
|
||||
&ReadParse();
|
||||
|
||||
# Get the users
|
||||
my @users = &list_iscsi_users();
|
||||
my @delusers;
|
||||
foreach my $d (split(/\0/, $in{'d'})) {
|
||||
my ($user) = grep { $_->{'user'} eq $d } @users;
|
||||
if ($user) {
|
||||
push(@delusers, $user);
|
||||
}
|
||||
}
|
||||
@delusers || &error($text{'dusers_enone'});
|
||||
|
||||
# Delete them, in reverse line order
|
||||
foreach my $user (sort { $b->{'line'} cmp $a->{'line'} } @delusers) {
|
||||
&delete_iscsi_user($user);
|
||||
}
|
||||
|
||||
&unlock_file($config{'auths_file'});
|
||||
if (@delusers == 1) {
|
||||
&webmin_log("delete", "user", $delusers[0]->{'user'});
|
||||
}
|
||||
else {
|
||||
&webmin_log("delete", "users", scalar(@delusers));
|
||||
}
|
||||
&redirect("list_users.cgi");
|
||||
@@ -12,7 +12,7 @@ my @users = &list_iscsi_users();
|
||||
my @links = ( "<a href='edit_user.cgi?new=1'>$text{'users_add'}</a>" );
|
||||
if (@users) {
|
||||
unshift(@links, &select_all_link("d"), &select_invert_link("d"));
|
||||
print &ui_form_start("delete_devices.cgi");
|
||||
print &ui_form_start("delete_users.cgi");
|
||||
print &ui_links_row(\@links);
|
||||
my @tds = ( "width=5" );
|
||||
print &ui_columns_start([ undef,
|
||||
|
||||
@@ -13,7 +13,8 @@ if ($type eq 'extent' || $type eq 'device' || $type eq 'target' ||
|
||||
return &text('log_'.$action.'_'.$type,
|
||||
"<tt>".&html_escape($object)."</tt>");
|
||||
}
|
||||
elsif ($type eq 'extents' || $type eq 'devices' || $type eq 'targets') {
|
||||
elsif ($type eq 'extents' || $type eq 'devices' || $type eq 'targets' ||
|
||||
$type eq 'users') {
|
||||
return &text('log_'.$action.'_'.$type, $object);
|
||||
}
|
||||
else {
|
||||
|
||||
Reference in New Issue
Block a user