From: Michael Andreen Date: Tue, 8 Jan 2008 22:21:46 +0000 (+0100) Subject: Show planet_data on check page X-Git-Url: https://ruin.nu/git/?p=ndwebbie.git;a=commitdiff_plain;h=33e9d7fc67e7e25fd9dee023c753d80f31e21f54 Show planet_data on check page --- diff --git a/NDWeb/Pages/Check.pm b/NDWeb/Pages/Check.pm index 5df1265..eb0aa84 100644 --- a/NDWeb/Pages/Check.pm +++ b/NDWeb/Pages/Check.pm @@ -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, diff --git a/database/scans.sql b/database/scans.sql index cbd44fe..bd7d3f3 100644 --- a/database/scans.sql +++ b/database/scans.sql @@ -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); diff --git a/templates/check.tmpl b/templates/check.tmpl index a4a14c1..a8c55fe 100644 --- a/templates/check.tmpl +++ b/templates/check.tmpl @@ -67,6 +67,18 @@
+Amount + + + + + + + +
TickType
+
+
+ @@ -93,6 +105,7 @@
TickValueGain
+
@@ -135,6 +148,7 @@
TargetNameMissionLanding tickETAAmount
+
stats