X-Git-Url: https://ruin.nu/git/?a=blobdiff_plain;f=addintel.pl;h=b3d5aed99abfdd588fb142a33180f39011792982;hb=03830799201db0b0f28e9c494fdd1b5b5143749c;hp=9493b425c8eff19e22f2ec9102abd534a7b04b48;hpb=c09ad789e3b01520e8eb41cc19631099879787d2;p=ndwebbie.git diff --git a/addintel.pl b/addintel.pl index 9493b42..b3d5aed 100644 --- a/addintel.pl +++ b/addintel.pl @@ -18,51 +18,64 @@ #**************************************************************************/ use strict; +use warnings FATAL => 'all'; +use ND::Web::Forum; -$ND::TEMPLATE->param(TITLE => 'Launch Confirmation'); +$ND::TEMPLATE->param(TITLE => 'Add Intel and Scans'); our $BODY; our $DBH; -our $LOG; - - +our $ERROR; +my $error; die "You don't have access" unless isMember(); -if (param('cmd') eq 'submit' || param('cmd') eq 'submit_message'){ +if (defined param('cmd')){ + if (param('cmd') eq 'submit' || param('cmd') eq 'submit_message'){ my $findscan = $DBH->prepare("SELECT scan_id FROM scans WHERE scan_id = ? AND tick >= tick() - 48"); my $addscan = $DBH->prepare('INSERT INTO scans (scan_id,tick,"type") VALUES (?,tick(),?)'); my $addpoint = $DBH->prepare('UPDATE users SET scan_points = scan_points + 1 WHERE uid = ? '); - my $intel = param('intel'); - my @scans; - while ($intel =~ m/http:\/\/game.planetarion.com\/showscan.pl\?scan_id=(\d+)/g){ - my %scan; - $scan{Scan} = $1; - $findscan->execute($1); - if ($findscan->rows == 0){ - if ($addscan->execute($1,$ND::UID)){ - $addpoint->execute($ND::UID); - $scan{Message} = 'added'; + my $intel = param('intel'); + my @scans; + while ($intel =~ m/http:\/\/game.planetarion.com\/showscan.pl\?scan_id=(\d+)/g){ + my %scan; + $scan{Scan} = $1; + $scan{Message} = "Scan $1: "; + $findscan->execute($1); + if ($findscan->rows == 0){ + if ($addscan->execute($1,$ND::UID)){ + $addpoint->execute($ND::UID); + $scan{Message} .= 'added'; + }else{ + $scan{Message} .= "something went wrong: $DBH->errstr"; + } }else{ - $scan{Message} = "something went wrong: $DBH->errstr"; + $scan{Message} .= 'already exists'; } - }else{ - $scan{Message} = 'already exists'; + push @scans,\%scan; + } + $BODY->param(Scans => \@scans); + my $tick = $ND::TICK; + $tick = param('tick') if $tick =~ /^(\d+)$/; + my $addintel = $DBH->prepare(qq{SELECT add_intel(?,?,?,?,?,?,?,?,?,?,?)}); + while ($intel =~ m/(\d+):(\d+):(\d+)\*?\s+(\d+):(\d+):(\d+)\*?\s+.+(?:Ter|Cat|Xan|Zik)?\s+(\d+)\s+(Attack|Defend)\s+(\d+)/g){ + $addintel->execute($tick,$9, $1,$2,$3,$4,$5,$6,$7,$8,$ND::UID) or $error .= $DBH->errstr; } - push @scans,\%scan; } - $BODY->param(Scans => \@scans); - my $tick = $ND::TICK; - $tick = param('tick') if $tick =~ /^(\d+)$/; - my $addintel = $DBH->prepare(qq{SELECT add_intel(?,?,?,?,?,?,?,?,?,?,?)}); - while ($intel =~ m/(\d+):(\d+):(\d+)\*?\s+(\d+):(\d+):(\d+)\*?\s+.+(?:Ter|Cat|Xan|Zik)?\s+(\d+)\s+(Attack|Defend)\s+(\d+)/g){ - $addintel->execute($tick,$9, $1,$2,$3,$4,$5,$6,$7,$8,$ND::UID) or print $DBH->errstr; + if (param('cmd') eq 'submit_message'){ + my $board = {id => 12}; + my $subject = param('subject'); + unless ($subject){ + if (param('intel') =~ /(.*\w.*)/){ + $subject = $1; + } + + } + if (my $thread = addForumThread $DBH,$board,$ND::UID,$subject){ + $error .= p 'Intel message added' if addForumPost $DBH,$thread,$ND::UID,param('intel') + } } } -if (param('cmd') eq 'submit_message'){ - my $query = $DBH->prepare(q{INSERT INTO intel_messages (uid,message) VALUES(?,?)}); - $query->execute($ND::UID,escapeHTML(param('intel'))) or print $DBH->errstr; -} - - +$BODY->param(Tick => $ND::TICK); +$BODY->param(Error => $error); 1;