]> ruin.nu Git - ndwebbie.git/commitdiff
Show planet_data on check page
authorMichael Andreen <harv@ruin.nu>
Tue, 8 Jan 2008 22:21:46 +0000 (23:21 +0100)
committerMichael Andreen <harv@ruin.nu>
Tue, 8 Jan 2008 22:21:46 +0000 (23:21 +0100)
NDWeb/Pages/Check.pm
database/scans.sql
templates/check.tmpl

index 5df1265199408f700d3f2e1531f51567331fdf56..eb0aa848c3f9605a5001d35521079b319cb4bd93 100644 (file)
@@ -122,7 +122,7 @@ sub render_body {
                        }
                }
                if ($self->isMember && ($self->isOfficer || $self->isBC)){
-                       if ($z && $planet->{alliance} eq 'NewDawn' && not ($self->isHC || $self->isOfficer)){
+                       if ($z && defined $planet->{alliance} && $planet->{alliance} eq 'NewDawn' && not ($self->isHC || $self->isOfficer)){
                                log_message $ND::UID,"BC browsing ND planet $planet->{coords} tick $self->{TICK}";
                        }
                }
@@ -145,7 +145,7 @@ sub render_body {
                                        AND t.tick = ( SELECT MAX(tick) FROM planet_stats)
                        WHERE  i.uid = -1
                                AND i.sender = ?
-                               AND (i.tick > tick() - 14 OR i.mission = 'Full Fleet')
+                               AND (i.tick > tick() - 14 OR i.mission = 'Full fleet')
                        GROUP BY i.id,x,y,z,i.mission,i.tick,i.name,i.amount,i.ingal,i.uid
                        ORDER BY i.tick,x,y,z
                });
@@ -178,7 +178,7 @@ sub render_body {
                                        AND s.tick = ( SELECT MAX(tick) FROM planet_stats)
                        WHERE  i.uid = -1
                                AND i.target = ?
-                               AND (i.tick > tick() - 14 OR i.mission = 'Full Fleet')
+                               AND (i.tick > tick() - 14 OR i.mission = 'Full fleet')
                        GROUP BY i.id,x,y,z,i.mission,i.tick,i.name,i.amount,i.ingal,i.uid
                        ORDER BY i.tick,x,y,z
                });
@@ -238,6 +238,20 @@ sub render_body {
                }
                $BODY->param(OldCoords => \@coords);
 
+               $query = $DBH->prepare(q{SELECT DISTINCT ON(rid) tick,category,name,amount
+                       FROM planet_data pd JOIN planet_data_types pdt ON pd.rid = pdt.id
+                       WHERE pd.id = $1 ORDER BY rid,tick DESC
+               });
+               $query->execute($planet_id);
+               my @pdata;
+               $i = 0;
+               while (my $data = $query->fetchrow_hashref){
+                       $data->{ODD} = ++$i % 2;
+                       $data->{amount} =~ s/(^[-+]?\d+?(?=(?>(?:\d{3})+)(?!\d))|\G\d{3}(?=\d))/$1,/g; #Add comma for ever 3 digits, i.e. 1000 => 1,000
+                       push @pdata,$data;
+               }
+               $BODY->param(PlanetData => \@pdata);
+
        }
        $query = $DBH->prepare(q{SELECT x,y,
                size, size_gain, size_gain_day,
index cbd44fe7cad130709c5f463aad5d8bd009dd96d2..bd7d3f3b621fe7311a1b57f67d7bf0b878fd5108 100644 (file)
@@ -126,3 +126,6 @@ FROM scans s
        JOIN (SELECT scan AS id,amount AS seccents FROM planet_data
                WHERE rid = 24) AS sc USING (id)
 ORDER BY planet,tick DESC, id DESC
+
+
+CREATE INDEX planet_data_id_index ON planet_data (id);
index a4a14c183b16552a521a99c39ceb91b54a4a3d35..a8c55fe6b2b988a33aea95739b63892b421b6939 100644 (file)
 <TMPL_IF OnePlanet>
 <div class="leftinfo">
 <table>
+<tr><th>Tick</th><th>Type</th>Amount</tr>
+<TMPL_LOOP PlanetData>
+<tr class="<TMPL_IF ODD>odd<TMPL_ELSE>even</TMPL_IF>">
+       <td><TMPL_VAR NAME=Tick></td>
+       <td><TMPL_VAR NAME=Category> <TMPL_VAR NAME=Name></td>
+       <td><TMPL_VAR NAME=Amount></td>
+</tr>
+</TMPL_LOOP>
+</table>
+</div>
+<div class="leftinfo">
+<table>
 <tr><th>Tick</th><th>Value</th><th>Gain</th></tr>
 <TMPL_LOOP Values>
 <tr>
 </TMPL_LOOP>
 </table>
 </div>
+<div class="leftinfo">
 <table>
        <tr><th>Target</th><th>Name</th><th>Mission</th><th>Landing tick</th><th>ETA</th><th>Amount</th></tr>
        <TMPL_LOOP Missions>
        </tr>
        </TMPL_LOOP>
 </table>
+</div>
 </TMPL_IF>
 <div class="leftinfo">
 <img class="graph" src="/graph/stats/<TMPL_VAR NAME=Coords>" alt="stats" height="300" width="500"/>