m.reply msg
end
+ def do_listgroups(m, params)
+ ar = @bot.filter_groups.map { |s| s.to_s }.sort!
+ if ar.empty?
+ msg = _("no known filter groups")
+ else
+ msg = _("known filter groups: ") << ar.join(", ")
+ end
+ m.reply msg
+ end
+
def do_search(m, params)
l = @bot.filter_names.map { |s| s.to_s }
pat = params[:pat].to_s
plugin.map "filters list [:group]", :action => :do_list
plugin.map "filters search *pat", :action => :do_search
+plugin.map "filter groups", :action => :do_listgroups
@filters.key?(global_filter_name(name, group))
end
+ # This method checks if the bot has a filter group named _name_
+ def has_filter_group?(name)
+ @filter_group.key?(name)
+ end
+
# This method is used to register a new filter
def register_filter(name, group=nil, &block)
raise "No block provided" unless block_given?
end
end
+ # This method is used to retrieve the filter group names
+ def filter_groups
+ return [] unless defined? @filter_group
+ return @filter_group.keys
+ end
+
# This method clears the filter list and installs the identity filter
def clear_filters
@filters ||= {}