summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog5
-rw-r--r--data/rbot/plugins/opme.rb22
2 files changed, 19 insertions, 8 deletions
diff --git a/ChangeLog b/ChangeLog
index 941bb6e3..76b43e66 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2006-09-09 Giuseppe Bilotta <giuseppe.bilotta@gmail.com>
+
+ * New Auth Framework: rbot was opping anyone who asked for it (opme
+ plugin). Fixed, and cleaned up.
+
2006-09-01 Giuseppe Bilotta <giuseppe.bilotta@gmail.com>
* New Auth Framework: document and fine tune permissions view the auth
diff --git a/data/rbot/plugins/opme.rb b/data/rbot/plugins/opme.rb
index 3df3d0d1..54f61b91 100644
--- a/data/rbot/plugins/opme.rb
+++ b/data/rbot/plugins/opme.rb
@@ -1,19 +1,25 @@
class OpMePlugin < Plugin
def help(plugin, topic="")
- return "opme <channel> => grant user ops in <channel>"
+ return "opme [<channel>] => grant user ops in <channel> (or in the current channel if no channel is specified)"
end
- def privmsg(m)
- if(m.params)
- channel = m.params
- else
- channel = m.channel
+ def opme(m, params)
+ channel = params[:chan]
+ unless channel
+ if m.private?
+ m.reply "you should tell me where you want me to op you"
+ return
+ else
+ channel = m.channel.to_s
+ end
end
target = m.sourcenick
- m.okay
+ m.okay unless channel == m.channel.to_s
@bot.sendq("MODE #{channel} +o #{target}")
end
end
+
plugin = OpMePlugin.new
-plugin.register("opme")
+plugin.map("opme [:chan]")
+plugin.default_auth("*",false)