]> git.donarmstrong.com Git - infobot.git/blobdiff - src/User.pl
&showProc in delForked()
[infobot.git] / src / User.pl
index 4589c08a65813f1d70578d6f769231f9d41b6c1b..3290d528e71361deb98f55cdd8362796ed3012a2 100644 (file)
@@ -6,79 +6,49 @@
 if (&IsParam("useStrict")) { use strict; }
 
 sub IsFlag {
-    my $flags = $_[0];
+    my $flags = shift;
     my ($ret, $f, $o) = "";
-    my @ind = split //, $flags;
-
-    $userHandle ||= "default";
-
-    &DEBUG("isFlag: userHandle == '$userHandle'.");
 
     foreach $f (split //, $userList{$userHandle}{'flags'}) {
-       foreach $o (@ind) {
+       foreach $o ( split //, $flags ) {
            next unless ($f eq $o);
 
            $ret = $f;
            last;
        }
     }
+
     $ret;
 }
 
 sub verifyUser {
     my ($nick, $lnuh) = @_;
-#    my ($n,$u,$h) = ($lnuh =~ /^(\S+)!(\S+)\@(\S+)$/);
     my ($user,$m);
-    $userHandle = "default";
 
-    ### FIXME: THIS NEEDS TO BE FIXED TO RECOGNISE HOSTMASKS!!!
-    my $userinlist = "";
     foreach $user (keys %userList) {
-       ### Hack for time being.
-       if (0) {
-           if ($user =~ /^\Q$nick\E$/i) {
-               &DEBUG("vU: setting uH => '$user'.");
-               $userHandle = $user;
-               last;
-           }
-           next;
-       } else {
-           $userinlist = $user if ($user =~ /^\Q$nick\E$/);
-       }
-
        foreach $m (keys %{$userList{$user}{'mask'}}) {
            $m =~ s/\?/./g;
            $m =~ s/\*/.*?/g;
            $m =~ s/([\@\(\)\[\]])/\\$1/g;
 
            next unless ($lnuh =~ /^$m$/i);
-           &DEBUG("vUser: $lnuh matched masked ($m). Good!");
+
+           if ($user !~ /^\Q$nick\E$/i) {
+               &status("vU: host matched but diff nick ($nick != $user).");
+           }
 
            $userHandle = $user;
-           $userinlist = "";
            last;
        }
-       last if ($userHandle ne "");
-    }
 
-    if ($userinlist and $userHandle eq "") {
-       &DEBUG("vUser: user is in list but wrong host.");
-       $userHandle = $userinlist;
-    }
+       last if ($userHandle ne "");
 
-    # seen.
-    if (&IsParam("seen") and $msgType =~ /public/) {
-       $seencache{$who}{'time'} = time();
-       $seencache{$who}{'nick'} = $orig{who};
-       $seencache{$who}{'host'} = $uh;
-       $seencache{$who}{'chan'} = $talkchannel;
-       $seencache{$who}{'msg'}  = $orig{message};
-       $seencache{$who}{'msgcount'}++;
+       if ($user =~ /^\Q$nick\E$/i) {
+           &status("vU: nick matched but host is not in list ($lnuh).");
+       }
     }
 
-#    $talkWho{$talkchannel} = $orig{who};
-#    $talkWho = $orig{who};
-### FIXME HERE.
+    $userHandle ||= "default";
     $talkWho{$talkchannel} = $who if (defined $talkchannel);
     $talkWho = $who;