aboutsummaryrefslogtreecommitdiff
path: root/Plugin
diff options
context:
space:
mode:
authorDavid Phillips <david@yeah.nah.nz>2018-10-24 19:33:18 +1300
committerDavid Phillips <david@yeah.nah.nz>2018-10-24 19:33:18 +1300
commitace8734c27d5c8331cc6cd29b4e10671612be693 (patch)
tree815a2e63f512d89b60fb486a8ef72317322c0108 /Plugin
parenta59f6c4d3d8664526c09d30b974a2ae9eca03b07 (diff)
downloadidalius-ace8734c27d5c8331cc6cd29b4e10671612be693.tar.xz
Admin: Add runtime prefix changing
Diffstat (limited to 'Plugin')
-rw-r--r--Plugin/Admin.pm25
1 files changed, 25 insertions, 0 deletions
diff --git a/Plugin/Admin.pm b/Plugin/Admin.pm
index ff8b646..404dbf4 100644
--- a/Plugin/Admin.pm
+++ b/Plugin/Admin.pm
@@ -34,6 +34,9 @@ sub configure {
$cmdref->($self, "ignore", sub { $self->ignore(@_); } );
$cmdref->($self, "don't ignore", sub { $self->do_not_ignore(@_); } );
$cmdref->($self, "who are you ignoring?", sub { $self->dump_ignore(@_); } );
+ $cmdref->($self, "prefix rm", sub { $self->prefix_rm(@_); } );
+ $cmdref->($self, "prefix del", sub { $self->prefix_rm(@_); } );
+ $cmdref->($self, "prefix set", sub { $self->prefix_set(@_); } );
$cmdref->($self, "exit", sub { $self->exit(@_); } );
@@ -41,6 +44,7 @@ sub configure {
$cmdref->($self, "load", sub { $self->load_plugin(@_); } );
$cmdref->($self, "unload", sub { $self->unload_plugin(@_); } );
+
return $self;
}
@@ -221,6 +225,27 @@ sub dump_ignore {
return "I am ignoring: " . join ", ", @{$root_config->{ignore}};
}
+sub prefix_rm {
+ my ($self, $irc, $logger, $who, $where, $ided, $rest, @arguments) = @_;
+
+ return "Syntax: prefix rm" unless @arguments == 0;
+
+ my $old = $root_config->{prefix};
+ $root_config->{prefix} = undef;
+
+ return "Prefix removed (used to be $old)" if $old;
+ return "Prefix was already removed";
+}
+
+sub prefix_set {
+ my ($self, $irc, $logger, $who, $where, $ided, $rest, @arguments) = @_;
+
+ return "Syntax: prefix set <new prefix>" unless @arguments > 0;
+
+ $root_config->{prefix} = $rest;
+ return "Prefix set to $root_config->{prefix}";
+}
+
sub exit {
my ($self, $irc, $logger, $who, $where, $ided, $rest, @arguments) = @_;