From f79954caa064990f19788089b412b502369675de Mon Sep 17 00:00:00 2001 From: Michael Andreen Date: Wed, 16 Jul 2008 18:56:43 +0200 Subject: [PATCH] Converted defrequest and made it into a generic irc request --- NDWeb/Pages/DefRequest.pm | 51 --------------------------------- database/ircrequest.sql | 7 +++++ lib/NDWeb/Controller/Members.pm | 20 +++++++++++++ root/lib/site/leftbar.tt2 | 2 +- root/src/members/ircrequest.tt2 | 14 +++++++++ templates/defrequest.tmpl | 11 ------- 6 files changed, 42 insertions(+), 63 deletions(-) delete mode 100644 NDWeb/Pages/DefRequest.pm create mode 100644 database/ircrequest.sql create mode 100644 root/src/members/ircrequest.tt2 delete mode 100644 templates/defrequest.tmpl diff --git a/NDWeb/Pages/DefRequest.pm b/NDWeb/Pages/DefRequest.pm deleted file mode 100644 index b8cec31..0000000 --- a/NDWeb/Pages/DefRequest.pm +++ /dev/null @@ -1,51 +0,0 @@ -#************************************************************************** -# Copyright (C) 2006 by Michael Andreen * -# * -# This program is free software; you can redistribute it and/or modify * -# it under the terms of the GNU General Public License as published by * -# the Free Software Foundation; either version 2 of the License, or * -# (at your option) any later version. * -# * -# This program is distributed in the hope that it will be useful, * -# but WITHOUT ANY WARRANTY; without even the implied warranty of * -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * -# GNU General Public License for more details. * -# * -# You should have received a copy of the GNU General Public License * -# along with this program; if not, write to the * -# Free Software Foundation, Inc., * -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. * -#**************************************************************************/ - -package NDWeb::Pages::DefRequest; -use strict; -use warnings FATAL => 'all'; -use CGI qw/:standard/; -use NDWeb::Include; - -use base qw/NDWeb::XMLPage/; - -$NDWeb::Page::PAGES{defrequest} = __PACKAGE__; - -sub render_body { - my $self = shift; - my ($BODY) = @_; - $self->{TITLE} = 'Request Defense'; - my $DBH = $self->{DBH}; - - return $self->noAccess unless $self->isMember; - - my $error; - - if (defined param('cmd') && param('cmd') eq 'submit'){ - my $insert = $DBH->prepare('INSERT INTO defense_requests (uid,message) VALUES (?,?)'); - if($insert->execute($ND::UID,param('message'))){ - $BODY->param(Reply => param('message')); - }else{ - $error .= "".$DBH->errstr.""; - } - } - $BODY->param(Error => $error); - return $BODY; -} -1; diff --git a/database/ircrequest.sql b/database/ircrequest.sql new file mode 100644 index 0000000..88abeff --- /dev/null +++ b/database/ircrequest.sql @@ -0,0 +1,7 @@ +CREATE TABLE irc_requests ( + id SERIAL PRIMARY KEY, + channel TEXT NOT NULL, + message TEXT NOT NULL, + sent BOOL NOT NULL DEFAULT FALSE, + uid INTEGER NOT NULL REFERENCES users(uid) +); diff --git a/lib/NDWeb/Controller/Members.pm b/lib/NDWeb/Controller/Members.pm index 9373b8f..bb1f741 100644 --- a/lib/NDWeb/Controller/Members.pm +++ b/lib/NDWeb/Controller/Members.pm @@ -225,6 +225,26 @@ sub postfleetsupdates : Local { $c->res->redirect($c->uri_for('')); } +sub ircrequest : Local { + my ( $self, $c ) = @_; + my $dbh = $c->model; + + $c->stash(reply => $c->flash->{reply}); + $c->stash(channels => ['def','scan','members']); +} + +sub postircrequest : Local { + my ( $self, $c ) = @_; + my $dbh = $c->model; + + my $query = $dbh->prepare(q{INSERT INTO irc_requests + (uid,channel,message) VALUES($1,$2,$3) + }); + $query->execute($c->user->id,$c->req->param('channel'),$c->req->param('message')); + + $c->flash(reply => "Msg sent to: ".$c->req->param('channel')); + $c->res->redirect($c->uri_for('ircrequest')); +} sub points : Local { my ( $self, $c, $order ) = @_; diff --git a/root/lib/site/leftbar.tt2 b/root/lib/site/leftbar.tt2 index 3d134e4..1adec4a 100644 --- a/root/lib/site/leftbar.tt2 +++ b/root/lib/site/leftbar.tt2 @@ -39,7 +39,7 @@
  • Launch confirmation
  • CovOp targets
  • Distwhores
  • -
  • Request defense
  • +
  • IRC request
  • [% ELSE %] [% IF c.user.planet %] diff --git a/root/src/members/ircrequest.tt2 b/root/src/members/ircrequest.tt2 new file mode 100644 index 0000000..5c5c8d4 --- /dev/null +++ b/root/src/members/ircrequest.tt2 @@ -0,0 +1,14 @@ +[% META title = 'IRC Request' %] +[% IF reply %] +

    [% reply %]

    +[% END %] +
    Launch confirmation +

    Message to irc. To def channel you can report incs with a line from gal status.

    + + +
    +
    diff --git a/templates/defrequest.tmpl b/templates/defrequest.tmpl deleted file mode 100644 index c2fdeb4..0000000 --- a/templates/defrequest.tmpl +++ /dev/null @@ -1,11 +0,0 @@ - -

    Sent the message '' to def -channel

    -
    Launch confirmation -

    Message to def channel (like a line from gal status):

    - - - -
    - -
    -- 2.39.2