#!/usr/local/bin/perl
# save_address.cgi
# Save, add or delete an address book entry
require './mailbox-lib.pl';
&ReadParse();
@addrs = &list_addresses();
if ($in{'delete'} ne '') {
($del) = grep { $_->[2] eq $in{'delete'} } @addrs;
&addressbook_remove_whitelist($del->[0]);
&delete_address($in{'delete'});
}
else {
&error_setup($text{'address_err'});
$in{'addr'} =~ /^\S+\@\S+$/ || &error($text{'address_eaddr'});
$in{'addr'} =~ /[,<>"'\(\)]/ && &error($text{'address_eaddr'});
if ($in{'from'} == 2) {
# Turn off default for all others
foreach $a (@addrs) {
if ($a->[3] == 2 && $a->[2] != $in{'edit'}) {
&modify_address($a->[2], $a->[0],
$a->[1], 1);
}
}
}
if ($in{'add'}) {
&create_address($in{'addr'}, $in{'name'}, $in{'from'});
}
else {
&modify_address($in{'edit'}, $in{'addr'}, $in{'name'}, $in{'from'});
}
&addressbook_to_whitelist();
}
&redirect("list_addresses.cgi?mode=users");
syntax highlighted by Code2HTML, v. 0.9.1