X-Git-Url: https://ruin.nu/git/?a=blobdiff_plain;f=alliances.pl;fp=alliances.pl;h=62aae64f71ad2b7a98c5e8e5e81df5012773a30b;hb=afc3b476209555d1769aaca6f4f376f57dcefc33;hp=101f2db12a9caf69664041cc55b5d3a81ef4afa5;hpb=38ca8c5683ec02a62badb6a0150e60a9a9338580;p=ndwebbie.git diff --git a/alliances.pl b/alliances.pl index 101f2db..62aae64 100644 --- a/alliances.pl +++ b/alliances.pl @@ -33,12 +33,31 @@ if (param('alliance') =~ /^(\d+)$/){ my $query = $DBH->prepare(q{SELECT id,name, relationship FROM alliances WHERE id = ?}); $alliance = $DBH->selectrow_hashref($query,undef,$1); } -if ($alliance && param ('cmd') eq 'coords'){ - $DBH->begin_work; - $DBH->commit or $error .= "

Something went wrong: ".$DBH->errstr."

"; -} if ($alliance && param ('cmd') eq 'change'){ $DBH->begin_work; + if (param('crelationship')){ + my $value = escapeHTML(param('relationship')); + if ($DBH->do(q{UPDATE alliances SET relationship = ? WHERE id =?} + ,undef,$value,$alliance->{id})){ + $alliance->{relationship} = $value; + $LOG->execute($ND::UID,"HC set alliance: $alliance->{id} relationship: $value"); + }else{ + $error .= "

Something went wrong: ".$DBH->errstr."

"; + } + } + my $coords = param('coords'); + my $addplanet = $DBH->prepare(q{ +UPDATE planets SET alliance_id = ?, nick = coalesce(?,nick) +WHERE id = (SELECT id FROM current_planet_stats WHERE x = ? AND y = ? AND z = ?); + }); + while ($coords =~ m/(\d+):(\d+):(\d+)(?:\s+nick=\s*(\S+))?/g){ + if ($addplanet->execute($alliance->{id},$4,$1,$2,$3)){ + $error .= "

Added planet $1:$2:$3 (nick $4) to this alliance

"; + $LOG->execute($ND::UID,"HC Added planet $1:$2:$3 (nick $4) to alliance: $alliance->{id}"); + }else{ + $error .= "

Something went wrong: ".$DBH->errstr."

"; + } + } $DBH->commit or $error .= "

Something went wrong: ".$DBH->errstr."

"; }