public void RemoveHandler(object sender, ReceivedChannelModeEventArgs e) { if (!e.Channel.ClearFlag(Flag)) { e.Cancel(); } }
public void RemoveHandler(object sender, ReceivedChannelModeEventArgs e) { if (!e.Channel.Properties.Remove(Key)) { e.Cancel(); } }
public void AddHandler(object sender, ReceivedChannelModeEventArgs e) { if (!e.Channel.SetFlag(Flag)) { e.Cancel(); } }
public void AddHandler(object sender, ReceivedChannelModeEventArgs e) { List <HostMask> list = GetList(e.Channel); if (list.Count > e.Server.Settings.MaximumListSize && (!e.Channel.HasFlag("LongLists") || list.Count > e.Server.Settings.MaximumLongListSize)) { e.User.SendNumeric(Numerics.ERR_BANLISTFULL, "That list is full. Contact a network operator to override this."); e.Cancel(); return; } HostMask mask = HostMask.Parse(e.Argument); if ((mask.Nickname == null || mask.Username == null || mask.Hostname == null) && mask.Account == null) { e.User.SendNumeric(Numerics.ERR_BADMASK, "List entries must be fully qualified hostmasks."); e.Cancel(); return; } if (list.Contains(mask)) { e.Cancel(); return; } list.Add(mask); }
public void AddHandler(object sender, ReceivedChannelModeEventArgs e) { uint value; if (uint.TryParse(e.Argument, out value)) { e.Channel.Properties[this.GetType().Name] = value; } }
public void RemoveHandler(object sender, ReceivedChannelModeEventArgs e) { List <HostMask> list = GetList(e.Channel); HostMask mask = HostMask.Parse(e.Argument); if (!list.Remove(mask)) { e.Cancel(); } }
public void RemoveHandler(object sender, ReceivedChannelModeEventArgs e) { UserBase target = e.Channel.GetUser(e.Argument, e.User); if (target == null) { e.Cancel(); return; } e.Channel.RemovePrefix(target, Prefix); }
public void AddHandler(object sender, ReceivedChannelModeEventArgs e) { ChannelBase channel = e.Server.GetChannel(e.Argument); if (channel != null && (e.User.IsProtect(channel) || channel.HasFlag("FreeTarget"))) { e.Channel.Properties[this.GetType().Name] = e.Argument; } else { e.User.SendNumeric(Numerics.ERR_RESTRICTED, "MODE", ":You must be +a in the target channel in order to forward to it, unless it is a free target."); e.Cancel(); } }
private bool AddMode(UserBase user, ChannelModeAttribute attr, string argument) { try { ReceivedChannelModeEventArgs e = new ReceivedChannelModeEventArgs(Server, this, user, argument); Server.Domains.AddChannelModeHandlers[attr.Mode].Invoke(this, e); if (e.IsCanceled) { return(false); } else { Modes[attr.Mode] = argument ?? string.Empty; return(true); } } catch (Exception ex) { Console.WriteLine("Error adding mode {0}: {1}", ex); return(false); } }
public void RemoveHandler(object sender, ReceivedChannelModeEventArgs e) { e.Channel.Properties.Remove(this.GetType().Name); }
public void AddHandler(object sender, ReceivedChannelModeEventArgs e) { e.Channel.Properties[this.GetType().Name] = e.Argument; }
public void AddHandler(object sender, ReceivedChannelModeEventArgs e) { e.Channel.Properties[Key] = Parse(e.Argument); }