]> ruin.nu Git - NDIRC.git/blobdiff - Scans.pm
r26 feudalism, late commit
[NDIRC.git] / Scans.pm
index 1315e22408b2875ef6357fe05f46660fe2501990..ccdc1f34d96c9189dce1919cfd8aa906b1951a11 100644 (file)
--- a/Scans.pm
+++ b/Scans.pm
@@ -29,12 +29,11 @@ our @EXPORT = qw/addScan addScanGroup sendScan/;
 
 sub addScan {
        my ($id,$verbose) = @_;
-       DB();
        if (1){
-               unless ($ND::DBH->selectrow_array("SELECT scan_id FROM scans WHERE scan_id = ? AND tick >= tick() - 168",undef,$id)){
+               unless ($ND::DBH->selectrow_array(q{SELECT scan_id FROM scans WHERE NOT groupscan AND scan_id = ? AND tick >= tick() - 168},undef,$id)){
                        my @user = $ND::DBH->selectrow_array(q{SELECT uid,username, scan_points, tick() 
                                FROM users WHERE hostmask ILIKE ? },undef,$ND::address);
-                       if ($ND::DBH->do(q{INSERT INTO scans (scan_id,tick,"type") VALUES (?,tick(),COALESCE(?,'-1'))},
+                       if ($ND::DBH->do(q{INSERT INTO scans (scan_id,tick,uid) VALUES (?,tick(),COALESCE(?,-1))},
                                        undef,$id,$user[0]) == 1){
                                if (@user){
                                        $ND::DBH->do('UPDATE users SET scan_points = scan_points + 1 WHERE uid = ? ',undef,$user[0]);
@@ -51,12 +50,11 @@ sub addScan {
 }
 sub addScanGroup {
        my ($id,$verbose) = @_;
-       DB();
        if (1){
-               unless ($ND::DBH->selectrow_array("SELECT scan_id FROM scans WHERE type = 'group' AND  scan_id = ? AND tick >= tick() - 168",undef,$id)){
+               unless ($ND::DBH->selectrow_array("SELECT scan_id FROM scans WHERE groupscan AND  scan_id = ? AND tick >= tick() - 168",undef,$id)){
                        my @user = $ND::DBH->selectrow_array(q{SELECT uid,username, scan_points, tick() 
                                FROM users WHERE hostmask ILIKE ? },undef,$ND::address);
-                       if ($ND::DBH->do(q{INSERT INTO scans (scan_id,tick,"type",scan) VALUES (?,tick(),'group',COALESCE(?,'-1'))},
+                       if ($ND::DBH->do(q{INSERT INTO scans (scan_id,tick,groupscan,uid) VALUES (?,tick(),true,COALESCE(?,-1))},
                                        undef,$id,$user[0]) == 1){
                                if (@user){
                                        $ND::server->command("msg $ND::target Added scan group, at tick $user[3]. Points will be added after parsing");
@@ -71,11 +69,18 @@ sub addScanGroup {
 }
 
 sub sendScan {
-       my ($target,$msg) = @_;
-       DB();
+       my ($msg, $command) = @_;
+       my ($target,$mess);
+       if (defined $msg && $msg =~ /^(\S+) (.*)$/){
+               $target = $1;
+               $mess = $2;
+       }else{
+               $ND::server->command("notice $ND::nick syntax: $command nick message");
+               return;
+       }
        if (scanner()){
-               $ND::server->command("msg $target ".chr(2).$msg.chr(3)."4 (reply with /msg $ND::scanchan)");
-               $ND::server->command("msg $ND::target ${ND::C}3$1 << $2");
+               $ND::server->command("msg $target ".chr(2).$mess.chr(3)."4 (reply with /msg $ND::scanchan)");
+               $ND::server->command("msg $ND::target ${ND::C}3$target << $mess");
        }
 }