Improve context creation and lowercasing
This commit is contained in:
parent
5f5966a8b4
commit
6d9017a4bd
@ -62,8 +62,8 @@ class Channel(IRCContext):
|
|||||||
|
|
||||||
is_channel = True
|
is_channel = True
|
||||||
|
|
||||||
def __init__(self, name, client, **kwargs):
|
def __init__(self, name, client):
|
||||||
super().__init__(name, client, **kwargs)
|
super().__init__(name, client)
|
||||||
self.users = set()
|
self.users = set()
|
||||||
self.modes = {}
|
self.modes = {}
|
||||||
self.timestamp = None
|
self.timestamp = None
|
||||||
|
@ -39,13 +39,15 @@ def context_types(*types):
|
|||||||
class IRCContext:
|
class IRCContext:
|
||||||
"""Base class for channels and users."""
|
"""Base class for channels and users."""
|
||||||
|
|
||||||
def __init__(self, name, client, *, ref=None):
|
def __init__(self, name, client):
|
||||||
self.name = name
|
self.name = name
|
||||||
self.client = client
|
self.client = client
|
||||||
self.ref = ref
|
self.ref = None
|
||||||
|
|
||||||
def lower(self):
|
def lower(self):
|
||||||
return type(self)(lower(name), client, ref=(self.ref or self))
|
temp = type(self)(lower(name), client)
|
||||||
|
temp.ref = self.ref or self
|
||||||
|
return temp
|
||||||
|
|
||||||
def get_send_type(self, *, is_notice=False, is_privmsg=False):
|
def get_send_type(self, *, is_notice=False, is_privmsg=False):
|
||||||
if is_notice and not is_privmsg:
|
if is_notice and not is_privmsg:
|
||||||
|
@ -171,9 +171,9 @@ class User(IRCContext):
|
|||||||
|
|
||||||
_messages = defaultdict(list)
|
_messages = defaultdict(list)
|
||||||
|
|
||||||
def __new__(cls, cli, nick, ident, host, realname, account, **kwargs):
|
def __new__(cls, cli, nick, ident, host, realname, account):
|
||||||
self = super().__new__(cls)
|
self = super().__new__(cls)
|
||||||
super(User, self).__init__(nick, cli, **kwargs)
|
super(User, self).__init__(nick, cli)
|
||||||
|
|
||||||
self._ident = ident
|
self._ident = ident
|
||||||
self._host = host
|
self._host = host
|
||||||
@ -229,7 +229,10 @@ class User(IRCContext):
|
|||||||
return done
|
return done
|
||||||
|
|
||||||
def lower(self):
|
def lower(self):
|
||||||
return type(self)(self.client, lower(self.nick), lower(self.ident), lower(self.host), lower(self.realname), lower(self.account), channels, ref=(self.ref or self))
|
temp = type(self)(self.client, lower(self.nick), lower(self.ident), lower(self.host), lower(self.realname), lower(self.account))
|
||||||
|
temp.channels = self.channels
|
||||||
|
temp.ref = self.ref or self
|
||||||
|
return temp
|
||||||
|
|
||||||
def is_owner(self):
|
def is_owner(self):
|
||||||
if self.is_fake:
|
if self.is_fake:
|
||||||
|
Loading…
x
Reference in New Issue
Block a user