+ def readonly(m, params)
+ action = params[:action]
+ user = params[:option]
+ case action
+ when 'remove'
+ if @bot.config['markov.readonly'].include? user
+ s = @bot.config['markov.readonly']
+ s.delete user
+ @bot.config['markov.readonly'] = s
+ m.reply _("%{u} removed") % { :u => user }
+ else
+ m.reply _("not found in list")
+ end
+ when 'add'
+ if user
+ if @bot.config['markov.readonly'].include?(user)
+ m.reply _("%{u} already in list") % { :u => user }
+ else
+ @bot.config['markov.readonly'] = @bot.config['markov.readonly'].push user
+ m.reply _("%{u} added to markov readonly list") % { :u => user }
+ end
+ else
+ m.reply _("give the name of a person or channel to read only")
+ end
+ when 'list'
+ m.reply _("I'm only reading %{readonly}") % { :readonly => @bot.config['markov.readonly'].join(", ") }
+ else
+ m.reply _("have markov not answer to input from a hostmask or a channel. usage: markov readonly add <mask or channel>; markov readonly remove <mask or channel>; markov readonly list")
+ end
+ end
+