]> ruin.nu Git - ndwebbie.git/commitdiff
Revert "Remove attack groups"
authorMichael Andreen <harv@ruin.nu>
Fri, 14 Jan 2011 20:27:01 +0000 (21:27 +0100)
committerMichael Andreen <harv@ruin.nu>
Fri, 14 Jan 2011 20:27:01 +0000 (21:27 +0100)
This reverts commit 5f201b31d1ed259f7eec068794b477f886a77bcb.

The attack groups are enabled again.

lib/NDWeb/Controller/Members.pm
root/src/members/index.tt2

index 2f89142da1e7082ec467fb2fcf63661e03850454..b8cdbe159d313858d6d1bf89a4dad5f8c883e139 100644 (file)
@@ -83,6 +83,12 @@ ORDER BY landing_tick DESC
                });
        $announcements->execute($c->user->id);
        $c->stash(announcements => $announcements->fetchall_arrayref({}) );
+
+       my ($attackgroups) = $dbh->selectrow_array(q{
+SELECT array_agg(gid) FROM groupmembers WHERE gid IN ('x','y','z') AND uid = $1
+               }, undef, $c->user->id);
+       $c->stash(attackgroups => $attackgroups);
+
 }
 
 sub posthostupdate : Local {
@@ -95,6 +101,23 @@ sub posthostupdate : Local {
        $c->res->redirect($c->uri_for(''));
 }
 
+sub postattackgroups : Local {
+       my ( $self, $c ) = @_;
+       my $dbh = $c->model;
+
+       my @groups = $c->req->param('class');
+       $dbh->do(q{DELETE FROM groupmembers WHERE gid IN ('x','y','z') AND gid <> ALL($1) AND uid = $2
+               },undef, \@groups, $c->user->id);
+
+       $dbh->do(q{INSERT INTO groupmembers (uid,gid) (
+               SELECT $2, gid FROM unnest($1::text[]) AS gid WHERE gid IN ('x','y','z')
+       EXCEPT
+               SELECT uid,gid FROM groupmembers WHERE uid = $2
+               )},undef, \@groups, $c->user->id);
+
+       $c->res->redirect($c->uri_for(''));
+}
+
 sub postsmsupdate : Local {
        my ( $self, $c ) = @_;
        my $dbh = $c->model;
index 6f4b226a2ecb6f2aa573bca53199978827faafe9..a2ef6fbb653fca5faa277b7a7e08de42cc85bd03 100644 (file)
        </p>
 </form>
 </fieldset>
+<fieldset class="forum-post"> <legend>Attack classes</legend>
+<form action="[% c.uri_for('postattackgroups') %]" method="post">
+<p>Pick the classes you use for your attack fleets:</p>
+<p>
+FiCo: <input type="checkbox" name="class" value="x"[% IF attackgroups.grep('x').size > 0 %] checked[%END%]>
+FrDe: <input type="checkbox" name="class" value="y"[% IF attackgroups.grep('y').size > 0 %] checked[%END%]>
+CrBs: <input type="checkbox" name="class" value="z"[% IF attackgroups.grep('z').size > 0 %] checked[%END%]>
+<input type="submit" name="cmd" value="Submit">
+</p>
+</form>
+</fieldset>
 <form action="[% c.uri_for('posthostupdate') %]" method="post">
 <fieldset class="forum-post"> <legend>Hostname</legend>
        <p>Hostname: