]> ruin.nu Git - ndwebbie.git/commitdiff
fixed fleet pasting bug
authorMichael Andreen <harv@ruin.nu>
Fri, 15 Dec 2006 13:55:21 +0000 (13:55 +0000)
committerMichael Andreen <harv@ruin.nu>
Fri, 15 Dec 2006 13:55:21 +0000 (13:55 +0000)
main.pl
templates/main.tmpl

diff --git a/main.pl b/main.pl
index 2231e36e0f26302224473db3955ea58e55bfe40f..81d7c8f12e8b56687477834b003181cfd8413ffc 100644 (file)
--- a/main.pl
+++ b/main.pl
@@ -23,6 +23,7 @@ $ND::TEMPLATE->param(TITLE => 'Main Page');
 
 our $BODY;
 our $DBH;
+my $error;
 
 if (param('cmd') eq 'fleet'){
        $DBH->begin_work;
@@ -37,10 +38,9 @@ if (param('cmd') eq 'fleet'){
        $delete->execute($id);
        my $insert = $DBH->prepare('INSERT INTO fleet_ships (fleet,ship,amount) VALUES (?,?,?)');
        $fleet = param('fleet');
-       while ($fleet =~ m/((?:[A-Z][a-z]+ )*[A-Z][a-z]+)\s+((?:\d+|,)+)/g){
-               my $amount = $2;
-               $amount =~ s/,//;
-               $insert->execute($id,$1,$amount);
+       $fleet =~ s/,//g;
+       while ($fleet =~ m/((?:[A-Z][a-z]+ )*[A-Z][a-z]+)\s+(\d+)/g){
+               $insert->execute($id,$1,$2) or $error .= '<p>'.$DBH->errstr.'</p>';
        }
        $fleet = $DBH->prepare('UPDATE fleets SET landing_tick = tick() WHERE id = ?');
        $fleet->execute($id);
@@ -116,6 +116,7 @@ while (my($fleet,$coords,$mission,$amount,$landing_tick) = $query->fetchrow){
 $BODY->param(Fleets => \@fleets);
 
 $BODY->param(SMS => $sms);
+$BODY->param(Error => $error);
 
 1;
 
index 03da63cfd943539c8225f957ccf466fc8ce4c4bd..5ba2dc72859c5f0f8c5f9716f818705623f6bfa1 100644 (file)
@@ -1,3 +1,4 @@
+<TMPL_VAR NAME=Error>
 <p>Hello <TMPL_VAR NAME=Username>.</p>
 <fieldset> <legend>Message from HC<TMPL_IF isHC> <a href="index.pl?page=motd">EDIT</a></TMPL_IF></legend>
        <TMPL_VAR NAME=MOTD>