]> ruin.nu Git - ndwebbie.git/commitdiff
Need to pick channel before sending
authorMichael Andreen <harv@ruin.nu>
Thu, 2 Jul 2009 18:06:20 +0000 (20:06 +0200)
committerMichael Andreen <harv@ruin.nu>
Thu, 2 Jul 2009 18:06:20 +0000 (20:06 +0200)
lib/NDWeb/Controller/Members.pm
root/src/members/ircrequest.tt2

index f6cbefdd91473476487c054d9290f2d4456782e2..d8d9b40f55c35b4b4f5de0ee502864151bb7f40b 100644 (file)
@@ -235,21 +235,26 @@ sub ircrequest : Local {
        my $dbh = $c->model;
 
        $c->stash(reply => $c->flash->{reply});
-       $c->stash(channels => ['def','scan','members']);
+       $c->stash(channels => ['scan','members','def']);
 }
 
 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)
+       if ($c->req->param('channel')){
+               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'));
-       system 'killall','-USR1', 'irssi';
+               $query->execute($c->user->id,$c->req->param('channel'),$c->req->param('message'));
+               system 'killall','-USR1', 'irssi';
 
-       $c->flash(reply => "Msg sent to: ".$c->req->param('channel'));
-       $c->res->redirect($c->uri_for('ircrequest'));
+               $c->flash(reply => "Msg sent to: ".$c->req->param('channel'));
+               $c->res->redirect($c->uri_for('ircrequest'));
+       }else{
+               $c->stash(ircmessage => $c->req->param('message'));
+               $c->go('ircrequest');
+       }
 }
 
 sub points : Local {
index 5d2c98b8d6b1d4beaf4e215275ef283912d67631..dd31bd47a59d5aeb1ea96032e67bc0d79d74d120 100644 (file)
@@ -4,11 +4,25 @@
 [% END %]
 <form action="[% c.uri_for('postircrequest') %]" method="post"><fieldset> <legend>IRC request</legend>
        <p>Message to irc. To def channel you can report incs with a line from gal status.</p>
-       <input style="width: 90%" type="text" name="message" value="">
-       <br><select name="channel">
+       <input style="width: 90%" type="text" name="message" value="[% ircmessage %]">
+       <br><select name="channel" id="channel">
+       <option value="">Pick a channel</option>
 [% FOR ch IN channels %]
        <option value="[% ch %]">[% ch | ucfirst %]</option>
 [% END %]
        </select>
-       <input type="submit" value="Send">
+       <input type="submit" value="Send" id="ircsend">
 </fieldset></form>
+
+<script type="text/javascript">
+$(document).ready(function(){
+       $("#ircsend").attr("disabled","true");
+       $('#channel').change(function(){
+               var u = $('option:selected');
+               if (u.val() == '')
+                       $("#ircsend").attr("disabled","true");
+               else
+                       $("#ircsend").removeAttr("disabled");
+       });
+});
+</script>