my $dbh = $c->model;
local $_ = $find || $c->req->param('coords');
+ $c->stash(searchterm => $_);
if (/(\d+)(?: |:)(\d+)(?: |:)(\d+)(?:(?: |:)(\d+))?/){
my $planet = $dbh->selectrow_array(q{SELECT planetid($1,$2,$3,$4)}
,undef,$1,$2,$3,$4);
$c->res->redirect($c->uri_for('planet',$planet));
+ }else{
+ my $query = $dbh->prepare(q{SELECT id,coords(x,y,z),nick
+ FROM current_planet_stats p
+ WHERE nick ilike $1
+ });
+ $query->execute($_);
+ my $planets = $query->fetchall_arrayref({});
+ if (@{$planets} == 1){
+ $c->res->redirect($c->uri_for('planet',$planets->[0]->{id}));
+ }else{
+ $c->stash(planets => $planets);
+ }
}
}
,ruler, p.planet,race, size, score, value
, xp, sizerank, scorerank, valuerank, xprank, p.value - p.size*200
- COALESCE(ps.metal+ps.crystal+ps.eonium,0)/150
- - COALESCE(ss.total ,(SELECT COALESCE(avg(total),0)
- FROM structure_scans)::int)*1500 AS fleetvalue
+ - COALESCE(ds.total ,(SELECT COALESCE(avg(total),0)
+ FROM current_development_scans)::int)*1500 AS fleetvalue
,(metal+crystal+eonium)/100 AS resvalue, planet_status,hit_us
, alliance,relationship,nick
FROM current_planet_stats p
- LEFT OUTER JOIN planet_scans ps ON p.id = ps.planet
- LEFT OUTER JOIN structure_scans ss ON p.id = ss.planet
+ LEFT OUTER JOIN current_planet_scans ps ON p.id = ps.planet
+ LEFT OUTER JOIN current_development_scans ds ON p.id = ds.planet
WHERE planet_status IN ('Friendly','NAP') order by x,y,z asc
});
$query->execute;