From 154b46194f4d8f832d84a0e896b7690c452646a0 Mon Sep 17 00:00:00 2001 From: Pragmatic Software Date: Tue, 28 Jul 2015 17:47:53 -0700 Subject: [PATCH] Use comma-separated list of channels when auto-joining to reduce IRC commands --- PBot/IRCHandlers.pm | 15 ++++----------- 1 file changed, 4 insertions(+), 11 deletions(-) diff --git a/PBot/IRCHandlers.pm b/PBot/IRCHandlers.pm index 16c36308..78dedf19 100644 --- a/PBot/IRCHandlers.pm +++ b/PBot/IRCHandlers.pm @@ -211,15 +211,6 @@ sub on_mode { } } } - elsif($mode eq "+e" && $channel eq $event->{conn}->nick) { - foreach my $chan (keys %{ $self->{pbot}->{channels}->{channels}->hash }) { - if($self->{channels}->{channels}->hash->{$chan}{enabled}) { - $self->{pbot}->{logger}->log("Joining channel: $chan\n"); - $event->{conn}->join($chan); - } - } - $self->{pbot}->{joined_channels} = 1; - } } } return 0; @@ -310,12 +301,14 @@ sub on_nickchange { $self->{pbot}->{logger}->log("$nick!$user\@$host changed nick to $newnick\n"); if ($newnick eq $self->{pbot}->{registry}->get_value('irc', 'botnick') and not $self->{pbot}->{joined_channels}) { + my $chans; foreach my $chan (keys %{ $self->{pbot}->{channels}->{channels}->hash }) { if($self->{pbot}->{channels}->{channels}->hash->{$chan}{enabled}) { - $self->{pbot}->{logger}->log("Joining channel: $chan\n"); - $self->{pbot}->{chanops}->join_channel($chan); + $chans .= "$chan,"; } } + $self->{pbot}->{logger}->log("Joining channels: $chans\n"); + $self->{pbot}->{chanops}->join_channel($chans); $self->{pbot}->{joined_channels} = 1; }