From: Giuseppe Bilotta Date: Mon, 7 Apr 2008 12:14:25 +0000 (+0200) Subject: message: new 'ignored' property X-Git-Url: https://git.netwichtig.de/gitweb/?a=commitdiff_plain;h=6defc06a719501298575e239e4094d07814136b6;p=user%2Fhenk%2Fcode%2Fruby%2Frbot.git message: new 'ignored' property --- diff --git a/lib/rbot/ircbot.rb b/lib/rbot/ircbot.rb index f1a56792..9afdc46c 100644 --- a/lib/rbot/ircbot.rb +++ b/lib/rbot/ircbot.rb @@ -566,19 +566,15 @@ class Bot # debug "Message target is #{data[:target].inspect}" # debug "Bot is #{myself.inspect}" - ignored = false @config['irc.ignore_users'].each { |mask| if m.source.matches?(server.new_netmask(mask)) - ignored = true - break + m.ignored = true end } irclogprivmsg(m) - unless ignored - @plugins.irc_delegate('privmsg', m) - end + @plugins.irc_delegate('privmsg', m) unless m.ignored? } @client[:notice] = proc { |data| message = NoticeMessage.new(self, server, data[:source], data[:target], data[:message]) diff --git a/lib/rbot/message.rb b/lib/rbot/message.rb index aa825e13..bd3f85f1 100644 --- a/lib/rbot/message.rb +++ b/lib/rbot/message.rb @@ -128,6 +128,10 @@ module Irc # has the message been replied to/handled by a plugin? attr_accessor :replied + # should the message be ignored? + attr_accessor :ignored + alias :ignored? :ignored + # instantiate a new Message # bot:: associated bot class # server:: Server where the message took place @@ -145,6 +149,7 @@ module Irc @message = BasicUserMessage.stripcolour message @replied = false @server = server + @ignored = false @identified = false if @msg_wants_id && @server.capabilities[:"identify-msg"]