}
}
-
- my $query = $DBH->prepare(intelquery('o.alliance AS oalliance,coords(o.x,o.y,o.z) AS origin, coords(t.x,t.y,t.z) AS target, t.nick',"t.alliance_id = 1 $showticks"));
+ my $query = $DBH->prepare(q{SELECT u.uid,u.username,u.attack_points, u.defense_points
+ ,count(CASE WHEN i.mission = 'Attack' THEN 1 ELSE NULL END) AS attacks
+ ,count(CASE WHEN (i.mission = 'Defend' OR i.mission = 'AllyDef') THEN 1 ELSE NULL END) AS defenses
+ FROM users u
+ JOIN groupmembers gm USING (uid)
+ LEFT OUTER JOIN (SELECT * FROM intel WHERE amount = -1) i ON i.sender = u.planet
+ LEFT OUTER JOIN current_planet_stats t ON i.target = t.id
+ WHERE gm.gid = 2
+ GROUP BY u.uid,u.username,u.attack_points, u.defense_points
+ ORDER BY attacks DESC,defenses DESC});
$query->execute() or $error .= $DBH->errstr;
- my @intellists;
- my @incomings;
+ my @members;
my $i = 0;
while (my $intel = $query->fetchrow_hashref){
- if ($intel->{ingal}){
- $intel->{missionclass} = 'ingal';
- }else{
- $intel->{missionclass} = $intel->{mission};
- }
- $intel->{oalliance} = ' ' unless $intel->{oalliance};
- $i++;
- $intel->{ODD} = $i % 2;
- push @incomings,$intel;
- }
- push @intellists,{Message => 'Incoming fleets', Intel => \@incomings, Origin => 1};
-
- $query = $DBH->prepare(intelquery('o.nick,coords(o.x,o.y,o.z) AS origin,t.alliance AS talliance,coords(t.x,t.y,t.z) AS target',"o.alliance_id = 1 $showticks"));
- $query->execute() or $error .= $DBH->errstr;
- my @outgoings;
- $i = 0;
- while (my $intel = $query->fetchrow_hashref){
- if ($intel->{ingal}){
- $intel->{missionclass} = 'ingal';
- }else{
- $intel->{missionclass} = $intel->{mission};
- }
- $intel->{talliance} = ' ' unless $intel->{talliance};
$i++;
$intel->{ODD} = $i % 2;
- push @outgoings,$intel;
+ push @members,$intel;
}
- push @intellists,{Message => 'Outgoing Fleets', Intel => \@outgoings, Target => 1};
- $BODY->param(IntelLIsts => \@intellists);
+ $BODY->param(Members => \@members);
$BODY->param(Error => $error);
return $BODY;
<TMPL_VAR NAME=Error>
<p><a href="/<TMPL_VAR NAME=PAGE>?show=all">Show all ticks</a></p>
-<TMPL_LOOP IntelLists>
-<TMPL_IF Message><p><TMPL_VAR NAME=Message></p></TMPL_IF>
<table>
<tr>
- <TMPL_IF Origin><th>Alliance</th><TMPL_ELSE><th>Nick</th></TMPL_IF><th>Sender</th>
- <th>Mission</th><th>Landing tick</th><th>ETA</th><th>Amount</th>
- <th>Target</th><TMPL_IF Target><th>Alliance</th><TMPL_ELSE><th>Nick</th></TMPL_IF>
- <th>Ingal</th><th>Reported by</th>
+ <th>Member</th><th>Attacks</th><th>Defenses</th><th>Attack Points</th><th>Defense Points</th>
+ <th>Solo attacks</th><th>Def outside ND/Gal</th>
</tr>
- <TMPL_LOOP Intel>
+ <TMPL_LOOP Members>
<tr class="<TMPL_IF ODD>odd<TMPL_ELSE>even</TMPL_IF>">
- <TMPL_IF OAlliance>
- <td><TMPL_VAR NAME=OAlliance></td>
- <TMPL_ELSE>
- <td><TMPL_VAR NAME=Nick></td>
- </TMPL_IF>
- <td><a href="intel?coords=<TMPL_VAR NAME=Origin>"><TMPL_VAR NAME=Origin></a></td>
- <td class="<TMPL_VAR NAME=MissionClass>"><TMPL_VAR NAME=Mission></td>
- <td align="center"><TMPL_VAR NAME=landingtick></td>
- <td align="center"><TMPL_VAR NAME=ETA></td>
- <td><TMPL_VAR NAME=Amount></td>
- <td><a href="intel?coords=<TMPL_VAR NAME=Target>"><TMPL_VAR NAME=Target></a></td>
- <TMPL_IF TAlliance>
- <td><TMPL_VAR NAME=TAlliance></td>
- <TMPL_ELSE>
- <td><TMPL_VAR NAME=Nick></td>
- </TMPL_IF>
- <td><TMPL_VAR NAME=Ingal></td>
- <td><TMPL_VAR NAME=Username></td>
+ <td><a href="intel?coords=<TMPL_VAR NAME=uid>"><TMPL_VAR NAME=username></a></td>
+ <td><TMPL_VAR NAME=attacks></td>
+ <td><TMPL_VAR NAME=defenses></td>
+ <td><TMPL_VAR NAME=attack_points></td>
+ <td><TMPL_VAR NAME=defense_points></td>
</tr>
</TMPL_LOOP>
</table>
-</TMPL_LOOP>