ezmlm-web interface code:

* remove list entry from webusers file after list removal (Closes: #54)
This commit is contained in:
lars 2008-10-15 20:27:07 +00:00
parent 5b98b18ff9
commit 3d836546c3

View file

@ -1617,6 +1617,10 @@ sub delete_list {
} }
warn "List '" . $list->thislist() . "' deleted"; warn "List '" . $list->thislist() . "' deleted";
} }
# remove the authorization line from the webusers file
webauth_remove_list($listname);
return (0==0); return (0==0);
} }
@ -2532,6 +2536,7 @@ sub is_option_in_selections {
sub update_webusers { sub update_webusers {
# replace existing webusers-line or add a new one # replace existing webusers-line or add a new one
# empty "webusers_input" results in the removal of the line
my $listname = shift; my $listname = shift;
my $webusers_input = shift; my $webusers_input = shift;
@ -2578,9 +2583,13 @@ sub update_webusers {
} }
while(<TMP>) { while(<TMP>) {
if ($_ =~ m/^$listname\s*:/i) { if ($_ =~ m/^$listname\s*:/i) {
print WU $listname . ': ' . $webusers_input . "\n" if ($matched == 0) {
if ($matched == 0); # print the new permission only if it is non-empty
$matched = 1; # this allows to reuse the code for list removal
print WU $listname . ': ' . $webusers_input . "\n"
if ($webusers_input);
$matched = 1;
}
} else { } else {
print WU $_; print WU $_;
} }
@ -2791,6 +2800,15 @@ sub webauth_create_list {
# --------------------------------------------------------------------------- # ---------------------------------------------------------------------------
sub webauth_remove_list {
my $listname = shift;
# call "update_webusers" with an empty string -> removal
return (update_webusers($listname, ''));
}
# ---------------------------------------------------------------------------
sub get_available_interface_languages { sub get_available_interface_languages {
my (%languages, @files, $file); my (%languages, @files, $file);