private void handleUnban(BroadcastChatClient client, string channel, string target) { if (!server.Channels.ContainsKey(channel)) { client.SendErrorNoChannel(channel); } else if (!server.Channels[channel].Clients.ContainsKey(client.Nick)) { client.SendErrorNotInChannel(channel); } else if (!server.Channels[channel].Clients.ContainsKey(target)) { client.SendErrorUserNotInChannel(channel, target); } else if (!server.Channels[channel].OperClients.ContainsKey(client.Nick)) { client.SendErrorNotChanOper(channel, target); } else if (!server.Channels[channel].BannedClients.ContainsKey(target)) { client.SendErrorUserAlreadyBanned(channel, target); } else { server.Channels[channel].SendUnban(client.Nick, target); } }
private void handleKick(BroadcastChatClient client, string channel, string kicked) { if (!server.Channels.ContainsKey(channel)) { client.SendErrorNoChannel(channel); } else if (!server.Clients.ContainsKey(kicked)) { client.SendErrorNoNick(kicked); } else if (!server.Channels[channel].Clients.ContainsKey(kicked)) { client.SendErrorUserNotInChannel(channel, kicked); } else if (!server.Channels[channel].OperClients.ContainsKey(client.Nick)) { client.SendErrorNotChanOper(channel, client.Nick); } else { server.Channels[channel].SendKick(client.Nick, server.Clients[kicked]); } }