--- trunk/sender.pl 2005/05/15 21:52:56 22 +++ trunk/sender.pl 2005/05/15 22:30:54 24 @@ -120,26 +120,7 @@ chomp; next if (/^#/ || /^\s*$/); my ($email, $name) = split(/\s+/,$_, 2); - $name ||= ''; - if (! Email::Valid->address($email)) { - print "SKIPPING $name <$email>\n"; - next; - } - print "# $name <$email>\n"; - my $this_user = $users->find_or_create({ - email => $email, - full_name => $name, - }) || die "can't find or create member\n"; - my $user_on_list = $user_list->find_or_create({ - user_id => $this_user->id, - list_id => $list->id, - }) || die "can't add user to list"; - $added++; - } - - foreach my $c_name ($loader->tables) { - my $c = $loader->find_class($c_name)|| die "can't find $c_name"; - $c->dbi_commit(); + $added++ if ($nos->add_member_to_list( email => $email, name => $name, list => $add_opt )); } print "list ",$list->name," has $added users\n"; @@ -159,31 +140,17 @@ if ($queue_opt ne '') { # add message to list queue - my $this_list = $lists->search( - name => $queue_opt, - )->first || die "can't find list $queue_opt"; - my $message_text; while(<>) { $message_text .= $_; } - die "no message" unless ($message_text); - - my $this_message = $messages->find_or_create({ - message => $message_text - }) || die "can't insert message"; - - $this_message->dbi_commit() || die "can't add message"; - - $queue->find_or_create({ - message_id => $this_message->id, - list_id => $this_list->id, - }) || die "can't add message ",$this_message->id," to list ",$this_list->id, ": ",$this_list->name; - - $queue->dbi_commit || die "can't add message to list ",$this_list->name; + my $id = $nos->add_message_to_queue( + list => $queue_opt, + message => $message_text, + ); - print "added message ",$this_message->id, " to list ",$this_list->name,"\n"; + print "added message $id to list $queue_opt\n"; } else { # list messages in queue