X-Git-Url: https://ruin.nu/git/?a=blobdiff_plain;f=lib%2FNDWeb%2FController%2FUsers.pm;h=13b79c74e0c9e257b525efe264f1fb733f661956;hb=33a44a03fa129739264f7ccd983e38c96c11a677;hp=40e9aaa51f2b2c162d03fa38b0aa9f0de3ea1623;hpb=b8b4989cd6ad0d0a3f45f6a7972293f79aadd087;p=ndwebbie.git diff --git a/lib/NDWeb/Controller/Users.pm b/lib/NDWeb/Controller/Users.pm index 40e9aaa..13b79c7 100644 --- a/lib/NDWeb/Controller/Users.pm +++ b/lib/NDWeb/Controller/Users.pm @@ -29,7 +29,7 @@ sub index :Path :Args(0) { my $dbh = $c->model; my $query = $dbh->prepare(q{ -SELECT uid,username,pnick,array_to_string(array_agg(g.groupname),', ') AS groups +SELECT uid,username,discord_id,pnick,array_to_string(array_agg(g.groupname),', ') AS groups FROM users u LEFT OUTER JOIN (groupmembers gm NATURAL JOIN groups g) USING (uid) WHERE uid > 0 GROUP BY u.uid,username,pnick @@ -159,30 +159,33 @@ sub postmail : Local { my ( $self, $c ) = @_; my $dbh = $c->model; + my $group = $c->req->param('group'); 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($c->req->param('group')); + $emails->execute($group); my @emails; while (my $email = $emails->fetchrow_hashref){ push @emails,$email->{email}; } + my $subject = $c->req->param('subject'); + my $message = $c->req->param('message'); my %mail = ( - smtp => 'ruin.nu', + smtp => 'localhost', BCC => (join ',',@emails), From => 'NewDawn Command ', 'Content-type' => 'text/plain; charset="UTF-8"', - Subject => $c->req->param('subject'), - Message => $c->req->param('message'), + Subject => $subject, + Message => $message, ); if (sendmail %mail) { $c->flash(ok => \@emails); }else { $c->flash(error => $Mail::Sendmail::error); - $c->flash(subject => $c->req->param('subject')); - $c->flash(message => $c->req->param('message')); + $c->flash(subject => $subject); + $c->flash(message => $message); } $c->res->redirect($c->uri_for('mail')); @@ -226,11 +229,12 @@ sub postsms : Local { $c->req->parameters->{uid} = [$c->req->parameters->{uid}] unless ref $c->req->parameters->{uid} eq 'ARRAY'; + my $message = $c->req->param('message'); my $query = $dbh->prepare(q{INSERT INTO sms (uid,message,number) (SELECT $1,$2, trim(leading '+' FROM sms) FROM users u WHERE uid = ANY ($3) AND sms SIMILAR TO '\+\d+' )}); - $query->execute($c->user->id,$c->req->param('message'),$c->req->parameters->{uid}); + $query->execute($c->user->id,$message,$c->req->parameters->{uid}); $c->res->redirect($c->uri_for('sms')); }