use lib get_info 'xchatdir';
use Xchat::XPI;
+use Xchat::XPI::Utils qw<save_context>;
our $VERSION = '0.03';
hook_command 'AID', sub {
my $forcepasswd = $_[0][1];
- my $oldctxt = get_context;
- my @contexts = get_servers_ctxt;
+ my @contexts = get_servers_ctxt;
+ my $guard = save_context;
for (@contexts) {
set_context $_;
my $passwd = $forcepasswd || get_info 'nickserv';
next unless $passwd;
command 'ID ' . $passwd;
}
- set_context $oldctxt;
return EAT_ALL;
}, {
help_text => 'AID [password], identify you on all servers'
my $target = $_[0][1] || get_prefs 'irc_nick1';
return EAT_ALL unless $target;
my $forcepasswd = $_[0][2];
- my $oldctxt = get_context;
- my @contexts = get_servers_ctxt;
+ my @contexts = get_servers_ctxt;
+ my $guard = save_context;
for (@contexts) {
set_context $_;
my $passwd = $forcepasswd || get_info 'nickserv';
command join ' ', 'GHOST', $target, $passwd;
}
}
- set_context $oldctxt;
return EAT_ALL;
}, {
help_text => 'AGHOST [nick] [password], kill usurping clients on all servers'