]> ruin.nu Git - ndwebbie.git/blobdiff - NDWeb/Pages/Raids.pm
Converted calls page, also using jquery.
[ndwebbie.git] / NDWeb / Pages / Raids.pm
index ac1f6b9f936cb2127ef0b30eef885724fdf48b9d..31be782d6b6000cb8efcdd66cf7faf29ebf71ace 100644 (file)
@@ -119,13 +119,18 @@ sub render_body {
                my $target = param('target');
                my $wave = param('wave');
 
-               my $findtarget = $DBH->prepare("SELECT rt.id FROM raid_targets rt NATURAL JOIN raid_access ra NATURAL JOIN groupmembers where uid = ? AND id = ?");
+               $DBH->begin_work;
+               my $findtarget = $DBH->prepare(q{SELECT rt.id FROM raid_targets rt 
+                       NATURAL JOIN raid_access ra NATURAL JOIN groupmembers 
+                       WHERE uid = ? AND id = ?
+                       FOR UPDATE
+               });
                my $result = $DBH->selectrow_array($findtarget,undef,$ND::UID,$target);
                if ($result != $target){
+                       $DBH->rollback;
                        return $self->noAccess; 
                }
 
-               $DBH->begin_work;
                if (param('cmd') eq 'Claim'){
                        my $claims = $DBH->prepare(qq{SELECT username FROM raid_claims NATURAL JOIN users WHERE target = ? AND wave = ?});
                        $claims->execute($target,$wave);
@@ -200,6 +205,7 @@ sub render_body {
                                        COALESCE(avg(total),0) FROM
                                        structure_scans)::int)*1500 AS fleetvalue
                        ,(metal+crystal+eonium)/100 AS resvalue, comment
+                       , hidden, light, medium, heavy
                        FROM current_planet_stats p 
                        JOIN raid_targets r ON p.id = r.planet 
                        LEFT OUTER JOIN planet_scans ps ON p.id = ps.planet
@@ -209,6 +215,7 @@ sub render_body {
                        ORDER BY size});
                $targetquery->execute($raid->{id});
                my @targets;
+               my %production = (0 => 'None', 35 => 'Light', 65 => 'Medium', 100 => 'High');
                while (my $target = $targetquery->fetchrow_hashref){
                        my %target;
                        if ($planet){
@@ -234,6 +241,11 @@ sub render_body {
                                $target{ResValue} = floor($target->{resvalue}/$num)*$num;
                        }
                        $target{comment} = parseMarkup($target->{comment}) if ($target->{comment});
+                       
+                       $target{Hidden} = int($target->{hidden} / 100);
+                       $target{Light} = $production{$target->{light}};
+                       $target{Medium} = $production{$target->{medium}};
+                       $target{Heavy} = $production{$target->{heavy}};
 
                        my $unitscans = $DBH->prepare(q{ 
                                SELECT DISTINCT ON (name) i.id,i.name, i.tick, i.amount