diff options
author | David Phillips <david@yeah.nah.nz> | 2018-10-24 19:33:18 +1300 |
---|---|---|
committer | David Phillips <david@yeah.nah.nz> | 2018-10-24 19:33:18 +1300 |
commit | ace8734c27d5c8331cc6cd29b4e10671612be693 (patch) | |
tree | 815a2e63f512d89b60fb486a8ef72317322c0108 /Plugin | |
parent | a59f6c4d3d8664526c09d30b974a2ae9eca03b07 (diff) | |
download | idalius-ace8734c27d5c8331cc6cd29b4e10671612be693.tar.xz |
Admin: Add runtime prefix changing
Diffstat (limited to 'Plugin')
-rw-r--r-- | Plugin/Admin.pm | 25 |
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) = @_; |