~singpolyma/biboumi

9df757fc6737b59f56d5b808ef48baba760b142e — Florent Le Coz 9 years ago b8ce9ed
Handle topic changes
2 files changed, 3 insertions(+), 0 deletions(-)

M src/irc/irc_client.cpp
M src/irc/irc_client.hpp
M src/irc/irc_client.cpp => src/irc/irc_client.cpp +2 -0
@@ 274,6 274,8 @@ void IrcClient::on_topic_received(const IrcMessage& message)
  const std::string chan_name = utils::tolower(message.arguments[1]);
  IrcChannel* channel = this->get_channel(chan_name);
  channel->topic = message.arguments[2];
  if (channel->joined)
    this->bridge->send_topic(this->hostname, chan_name, channel->topic);
}

void IrcClient::on_channel_completely_joined(const IrcMessage& message)

M src/irc/irc_client.hpp => src/irc/irc_client.hpp +1 -0
@@ 218,6 218,7 @@ static const std::unordered_map<std::string, irc_callback_t> irc_callbacks = {
  {"PRIVMSG", &IrcClient::on_channel_message},
  {"353", &IrcClient::set_and_forward_user_list},
  {"332", &IrcClient::on_topic_received},
  {"TOPIC", &IrcClient::on_topic_received},
  {"366", &IrcClient::on_channel_completely_joined},
  {"001", &IrcClient::on_welcome_message},
  {"PART", &IrcClient::on_part},