]> git.donarmstrong.com Git - infobot.git/blobdiff - src/Process.pl
warn on pmsg karma - raven24++
[infobot.git] / src / Process.pl
index 824651d2e426b0490b993bb2c9a756c5282b7ab7..1f00469ea1831438c2dc9787c6b01a29fd44e3bc 100644 (file)
@@ -26,8 +26,9 @@ sub process {
     $learnok = 1 if ($addressed);
     if ( $param{'learn'} =~ /^HUNGRY$/i ) {
         $learnok  = 1;
-        $addrchar = 1;
-        $talkok   = 1;
+        #FIXME: why can we talk if we just want to learn?
+        #$addrchar = 1;
+        #$talkok   = 1;
     }
 
     &shmFlush();                     # hack.
@@ -200,7 +201,7 @@ sub process {
     }
 
     # allowOutsiders.
-    if ( &IsParam('disallowOutsiders') and $msgType =~ /private/i ) {
+    if ( &IsParam('disallowOutsiders') and $msgType =~ /private/i and IsFlag('o') ne 'o' ) {
         my $found = 0;
 
         foreach ( keys %channels ) {
@@ -274,7 +275,7 @@ sub process {
     }
 
     # greetings.
-    if ( $message =~ /how (the hell )?are (ya|you)( doin\'?g?)?\?*$/ ) {
+    if ( $message =~ /how (the hell )?are (ya|you)( doin\'?g?)?\?*$/ && $talkok ) {
 
         &performReply( &getRandom( keys %{ $lang{'howareyou'} } ) );
         return;
@@ -303,15 +304,19 @@ sub process {
     ###
 
     # karma. set...
-    if (   $msgType =~ /public/i
-        && $message =~ /^(\S+)(--|\+\+)\s*$/
+    if (   $message =~ /^(\S+)(--|\+\+)\s*$/
         && $addressed
         && &IsChanConfOrWarn('karma') )
     {
 
-    # to request factoids such as 'g++' or 'libstdc++', append '?' to the query.
+        # for factoids such as 'g++' or 'libstdc++', append '?' to query.
         my ( $term, $inc ) = ( lc $1, $2 );
 
+        if( !( $msgType =~ /public/i ) ) {
+            &msg( $who, "please use karma in a channel only");
+            return;
+        }
+
         if ( lc $term eq lc $who ) {
             &msg( $who, "please don't karma yourself" );
             return;