summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--plugins/pacokick.py20
1 files changed, 20 insertions, 0 deletions
diff --git a/plugins/pacokick.py b/plugins/pacokick.py
new file mode 100644
index 00000000..3ecef7a8
--- /dev/null
+++ b/plugins/pacokick.py
@@ -0,0 +1,20 @@
+from random import choice
+from tabs import MucTab
+
+from plugin import BasePlugin
+
+class Plugin(BasePlugin):
+ def init(self):
+ self.add_command('pacokick', self.command_kick, '/pacokick <nick> [reason]\nPacokick: kick a random user.')
+
+ def command_kick(self, arg):
+ tab = self.core.current_tab()
+ if isinstance(tab, MucTab):
+ kickable = list(filter(lambda x: x.affiliation in ('none', 'member'), tab.users))
+ if kickable:
+ to_kick = choice(kickable)
+ if to_kick:
+ to_kick = to_kick.nick
+ tab.command_kick(to_kick + ' ' +arg)
+ else:
+ self.core.information('No one to kick :(', 'Info')