X-Git-Url: https://ruin.nu/git/?a=blobdiff_plain;f=NDWeb%2FPages%2FMail.pm;h=897976e2f79de546cc26ac8d9f987f72645b7f1d;hb=2d897bb31419753af8e33b992d46ed355c1a53cd;hp=858d0ded49585e663e33288b61f80f5a32e70ea4;hpb=d6c9085e748c4d61901aaea72f0e1546dcc7cdda;p=ndwebbie.git diff --git a/NDWeb/Pages/Mail.pm b/NDWeb/Pages/Mail.pm index 858d0de..897976e 100644 --- a/NDWeb/Pages/Mail.pm +++ b/NDWeb/Pages/Mail.pm @@ -17,18 +17,18 @@ # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. * #**************************************************************************/ -package ND::Web::Pages::Mail; +package NDWeb::Pages::Mail; use strict; use warnings FATAL => 'all'; use CGI qw/:standard/; use Mail::Sendmail; -use ND::Web::Forum; -use ND::Web::Include; +use NDWeb::Forum; +use NDWeb::Include; -use base qw/ND::Web::XMLPage/; +use base qw/NDWeb::XMLPage/; -$ND::Web::Page::PAGES{mail} = __PACKAGE__; +$NDWeb::Page::PAGES{mail} = __PACKAGE__; sub render_body { my $self = shift; @@ -40,16 +40,19 @@ sub render_body { return $self->noAccess unless $self->isHC; - my $groups = $DBH->prepare(q{SELECT gid,groupname FROM groups ORDER BY gid}); + my $groups = $DBH->prepare(q{SELECT gid,groupname FROM groups WHERE gid > 0 ORDER BY gid}); $groups->execute; my @groups; + push @groups,{gid => -1, groupname => 'Pick a group'}; while (my $group = $groups->fetchrow_hashref){ push @groups,$group; } $BODY->param(Groups => \@groups); - if (defined param('cmd')){ - my $emails = $DBH->prepare(q{SELECT email FROM users WHERE (uid IN (SELECT uid FROM groupmembers WHERE gid = $1) OR $1 = -1) AND email is not null}); + if (defined param('cmd') && param('group') > 0){ + my $emails = $DBH->prepare(q{SELECT email FROM users + WHERE uid IN (SELECT uid FROM groupmembers WHERE gid = $1) + AND email is not null}); $emails->execute(param('group')); my @emails; while (my $email = $emails->fetchrow_hashref){ @@ -71,6 +74,9 @@ sub render_body { }else { $ND::ERROR .= p $Mail::Sendmail::error; } + }elsif(defined param('message')) { + $BODY->param(Subject => param('subject')); + $BODY->param(Message => param('message')); } return $BODY; }