- Fix tsec
- Rework security
- Fix fullstack error
pull/1/head
hikariatama 2022-08-21 22:57:02 +00:00
parent 89040b6e2f
commit c815a3eda0
3 changed files with 6 additions and 68 deletions

View File

@ -256,6 +256,7 @@ class TelegramLogsHandler(logging.Handler):
self._mods[client_id].inline.bot,
item[0],
),
"disable_security": True,
}
),
)

View File

@ -671,11 +671,8 @@ class HikkaSecurityMod(loader.Module):
)
return
self._db.set(
security.__name__,
group,
list(set(self._db.get(security.__name__, group, []) + [user.id])),
)
if user.id not in getattr(self._client.dispatcher.security, group):
getattr(self._client.dispatcher.security, group).append(user.id)
m = (
self.strings(f"{group}_added").format(
@ -723,11 +720,8 @@ class HikkaSecurityMod(loader.Module):
if not user:
return
self._db.set(
security.__name__,
group,
list(set(self._db.get(security.__name__, group, [])) - {user.id}),
)
if user.id in getattr(self._client.dispatcher.security, group):
getattr(self._client.dispatcher.security, group).remove(user.id)
m = self.strings(f"{group}_removed").format(
user.id,
@ -738,7 +732,7 @@ class HikkaSecurityMod(loader.Module):
async def _list_group(self, message: Message, group: str):
_resolved_users = []
for user in self._db.get(security.__name__, group, []) + (
for user in getattr(self._client.dispatcher.security, group) + (
[self.tg_id] if group == "owner" else []
):
try:

View File

@ -17,32 +17,6 @@ class PointerList(list):
self._default = default
super().__init__(db.get(module, key, default))
def sync(self):
super().__init__(self._db.get(self._module, self._key, self._default))
def __getitem__(self, index: int) -> Any:
self.sync()
return super().__getitem__(index)
def __iter__(self) -> Iterable:
self.sync()
return super().__iter__()
def __reversed__(self) -> Iterable:
self.sync()
return super().__reversed__()
def __contains__(self, item: Any) -> bool:
self.sync()
return super().__contains__(item)
def __len__(self) -> int:
self.sync()
return super().__len__()
def __bool__(self) -> bool:
return bool(self._db.get(self._module, self._key, self._default))
def __repr__(self):
return f"PointerList({list(self)})"
@ -114,43 +88,12 @@ class PointerDict(dict):
self._default = default
super().__init__(db.get(module, key, default))
def sync(self):
super().__init__(self._db.get(self._module, self._key, self._default))
def __repr__(self):
return f"PointerDict({dict(self)})"
def __bool__(self) -> bool:
return bool(self._db.get(self._module, self._key, self._default))
def __reversed__(self) -> Iterable:
self.sync()
return super().__reversed__()
def __contains__(self, item: Any) -> bool:
self.sync()
return super().__contains__(item)
def __getitem__(self, key: str) -> Any:
self.sync()
return super().__getitem__(key)
def __iter__(self) -> Iterable:
self.sync()
return super().__iter__()
def items(self) -> Iterable:
self.sync()
return super().items()
def keys(self) -> Iterable:
self.sync()
return super().keys()
def values(self) -> Iterable:
self.sync()
return super().values()
def __setitem__(self, key: str, value: Any):
super().__setitem__(key, value)
self._save()