+ my $findGraph;
+ if (defined $z){
+ $findGraph = $DBH->prepare(q{SELECT graph FROM planet_graphs WHERE planet = planetid($1,$2,$3,$4) AND tick = $4 AND type = $5});
+ $findGraph->execute($x,$y,$z,$ND::TICK,$type) or die $DBH->errstr;
+ }
+ if (defined $findGraph and my $graph = $findGraph->fetchrow_hashref){
+ $img = $graph->{graph};
+ }elsif(defined $x){
+ my $query;
+ if (defined $z){
+ if ($type eq 'stats'){
+ $query = $DBH->prepare(q{SELECT tick,score,size,value,xp*60 AS "xp*60" FROM planets natural join planet_stats WHERE id = planetid($1,$2,$3,$4) ORDER BY tick ASC});
+ }elsif($type eq 'ranks'){
+ $query = $DBH->prepare(q{SELECT tick,-scorerank AS score,-sizerank AS size,-valuerank AS value,-xprank AS xp FROM planets natural join planet_stats WHERE id = planetid($1,$2,$3,$4) ORDER BY tick ASC});
+ }
+ $query->execute($x,$y,$z,$ND::TICK) or die $DBH->errstr;
+ }else{
+ if ($type eq 'stats'){
+ $query = $DBH->prepare(q{SELECT tick,score,size,value,xp*60 AS "xp*60" FROM galaxies WHERE x = $1 AND y = $2 ORDER BY tick ASC});
+ }elsif($type eq 'ranks'){
+ $query = $DBH->prepare(q{SELECT tick,-scorerank AS score,-sizerank AS size,-valuerank AS value,-xprank AS xp FROM galaxies WHERE x = $1 AND y = $2 ORDER BY tick ASC});
+ }
+ $query->execute($x,$y) or die $DBH->errstr;
+ }