internal void JoinNotify(IrcUser user, string name)
{
if (!m_loggedIn)
m_loggedIn = true;
IrcChannel chan;
if (user == Me)
{
Me.DeleteChannel(name);
}
if ((chan = GetChannel(name)) == null)
{
Send("mode " + name);
if (user != m_me)
{
foreach (IrcChannel c in m_me)
{
user.AddChannel(c);
c.AddUser(user);
c.DeleteUser(user);
}
m_me = user;
m_Users.Remove(m_me.Nick);
}
chan = new IrcChannel(this, name);
}
user.AddChannel(chan);
chan.UserJoinedNotify(user);
OnJoin(user, chan);
}