X-Git-Url: https://ruin.nu/git/?a=blobdiff_plain;f=lib%2FNDWeb%2FController%2FIntel.pm;h=9666282e1f805c31fafac2af5784a77866f8f269;hb=23e133163ef06e0afc2000152df31c966f4929b2;hp=bafea58ea8be45ad64da1f5450990e5b3193ad52;hpb=07aec9f5f20e4a605d65bbe2337a05663c0b16e7;p=ndwebbie.git diff --git a/lib/NDWeb/Controller/Intel.pm b/lib/NDWeb/Controller/Intel.pm index bafea58..9666282 100644 --- a/lib/NDWeb/Controller/Intel.pm +++ b/lib/NDWeb/Controller/Intel.pm @@ -103,6 +103,17 @@ ORDER BY tick DESC, mission $query->execute($id,$ticks); $c->stash(outgoing => $query->fetchall_arrayref({}) ); + $query = $dbh->prepare(q{ +SELECT tag, array_to_string(array_agg(username),', ') AS nicks, to_char(max(time),'YYYY-MM-DD HH24:MI') AS time +FROM planet_tags pt + JOIN users u USING (uid) +WHERE pt.pid = $1 +GROUP BY tag +ORDER BY time DESC + }); + $query->execute($id); + $c->stash(tags => $query->fetchall_arrayref({}) ); + } sub channels : Local { @@ -258,7 +269,7 @@ sub member : Local { my $dbh = $c->model; my $query = $dbh->prepare(q{ - SELECT coords(t.x,t.y,t.z), i.eta, i.tick, rt.id AS ndtarget, rc.launched, inc.landing_tick + SELECT coords(t.x,t.y,t.z), i.eta, i.tick, rt.id AS ndtarget, rc.launched FROM users u LEFT OUTER JOIN (SELECT DISTINCT eta,tick,sender,target,mission,name FROM intel WHERE amount IS NULL) i ON i.sender = u.pid LEFT OUTER JOIN current_planet_stats t ON i.target = t.pid @@ -266,10 +277,6 @@ sub member : Local { JOIN raid_targets rt ON r.id = rt.raid) rt ON rt.pid = i.target AND (rt.tick + 12) > i.tick AND rt.tick <= i.tick LEFT OUTER JOIN raid_claims rc ON rt.id = rc.target AND rc.uid = u.uid AND i.tick = rt.tick + rc.wave - 1 - LEFT OUTER JOIN (SELECT pid, eta, landing_tick FROM calls c - JOIN incomings i USING (call)) inc ON inc.pid = i.target - AND (inc.landing_tick + inc.eta) >= i.tick - AND (inc.landing_tick - inc.eta - 1) <= (i.tick - i.eta) WHERE u.uid = $1 AND i.mission = 'Attack' ORDER BY (i.tick - i.eta) });