mirror of
https://github.com/MCV-Software/TWBlue.git
synced 2026-03-06 09:27:33 +01:00
Bugs y restaurar mastodon a su estado original, que se tocó sin querer
This commit is contained in:
@@ -954,9 +954,14 @@ class BaseBuffer(base.Buffer):
|
|||||||
return post.get("uri")
|
return post.get("uri")
|
||||||
if it.get("uri"):
|
if it.get("uri"):
|
||||||
return it.get("uri")
|
return it.get("uri")
|
||||||
for key in ("id", "convoId", "convo_id", "messageId", "message_id", "msgId", "msg_id"):
|
for key in ("id", "cid", "rev", "convoId", "convo_id", "messageId", "message_id", "msgId", "msg_id"):
|
||||||
if it.get(key):
|
if it.get(key):
|
||||||
return it.get(key)
|
return it.get(key)
|
||||||
|
nested = it.get("message") or it.get("record")
|
||||||
|
if isinstance(nested, dict):
|
||||||
|
for key in ("id", "cid", "rev", "messageId", "message_id", "msgId", "msg_id"):
|
||||||
|
if nested.get(key):
|
||||||
|
return nested.get(key)
|
||||||
if it.get("did"):
|
if it.get("did"):
|
||||||
return it.get("did")
|
return it.get("did")
|
||||||
if it.get("handle"):
|
if it.get("handle"):
|
||||||
@@ -965,27 +970,33 @@ class BaseBuffer(base.Buffer):
|
|||||||
if isinstance(author, dict):
|
if isinstance(author, dict):
|
||||||
return author.get("did") or author.get("handle")
|
return author.get("did") or author.get("handle")
|
||||||
# Chat message fallback
|
# Chat message fallback
|
||||||
sent_at = it.get("sentAt") or it.get("sent_at")
|
sent_at = it.get("sentAt") or it.get("sent_at") or it.get("createdAt") or it.get("created_at")
|
||||||
sender = it.get("sender") or {}
|
sender = it.get("sender") or (nested.get("sender") if isinstance(nested, dict) else {}) or {}
|
||||||
sender_did = sender.get("did") if isinstance(sender, dict) else None
|
sender_did = sender.get("did") if isinstance(sender, dict) else None
|
||||||
text = it.get("text")
|
text = it.get("text") or (nested.get("text") if isinstance(nested, dict) else None)
|
||||||
if sent_at or sender_did or text:
|
if sent_at or sender_did or text:
|
||||||
return (sent_at, sender_did, text)
|
return (sent_at, sender_did, text)
|
||||||
return None
|
return None
|
||||||
post = getattr(it, "post", None)
|
post = getattr(it, "post", None)
|
||||||
if post is not None:
|
if post is not None:
|
||||||
return getattr(post, "uri", None)
|
return getattr(post, "uri", None)
|
||||||
for attr in ("uri", "id", "convoId", "convo_id", "messageId", "message_id", "msgId", "msg_id", "did", "handle"):
|
for attr in ("uri", "id", "cid", "rev", "convoId", "convo_id", "messageId", "message_id", "msgId", "msg_id", "did", "handle"):
|
||||||
val = getattr(it, attr, None)
|
val = getattr(it, attr, None)
|
||||||
if val:
|
if val:
|
||||||
return val
|
return val
|
||||||
|
nested = getattr(it, "message", None) or getattr(it, "record", None)
|
||||||
|
if nested is not None:
|
||||||
|
for attr in ("id", "cid", "rev", "messageId", "message_id", "msgId", "msg_id"):
|
||||||
|
val = getattr(nested, attr, None)
|
||||||
|
if val:
|
||||||
|
return val
|
||||||
author = getattr(it, "author", None)
|
author = getattr(it, "author", None)
|
||||||
if author is not None:
|
if author is not None:
|
||||||
return getattr(author, "did", None) or getattr(author, "handle", None)
|
return getattr(author, "did", None) or getattr(author, "handle", None)
|
||||||
sent_at = getattr(it, "sentAt", None) or getattr(it, "sent_at", None)
|
sent_at = getattr(it, "sentAt", None) or getattr(it, "sent_at", None) or getattr(it, "createdAt", None) or getattr(it, "created_at", None)
|
||||||
sender = getattr(it, "sender", None)
|
sender = getattr(it, "sender", None) or (getattr(nested, "sender", None) if nested is not None else None)
|
||||||
sender_did = getattr(sender, "did", None) if sender is not None else None
|
sender_did = getattr(sender, "did", None) if sender is not None else None
|
||||||
text = getattr(it, "text", None)
|
text = getattr(it, "text", None) or (getattr(nested, "text", None) if nested is not None else None)
|
||||||
if sent_at or sender_did or text:
|
if sent_at or sender_did or text:
|
||||||
return (sent_at, sender_did, text)
|
return (sent_at, sender_did, text)
|
||||||
return None
|
return None
|
||||||
|
|||||||
@@ -92,15 +92,22 @@ class ConversationListBuffer(BaseBuffer):
|
|||||||
return obj.get(key, default)
|
return obj.get(key, default)
|
||||||
return getattr(obj, key, default)
|
return getattr(obj, key, default)
|
||||||
|
|
||||||
for attr in ("id", "messageId", "message_id", "msgId", "msg_id"):
|
for attr in ("id", "messageId", "message_id", "msgId", "msg_id", "cid", "rev"):
|
||||||
val = g(last_msg, attr)
|
val = g(last_msg, attr)
|
||||||
if val:
|
if val:
|
||||||
return val
|
return val
|
||||||
|
|
||||||
sent_at = g(last_msg, "sentAt") or g(last_msg, "sent_at")
|
nested = g(last_msg, "message") or g(last_msg, "record")
|
||||||
sender = g(last_msg, "sender") or {}
|
if nested:
|
||||||
|
for attr in ("id", "messageId", "message_id", "msgId", "msg_id", "cid", "rev"):
|
||||||
|
val = g(nested, attr)
|
||||||
|
if val:
|
||||||
|
return val
|
||||||
|
|
||||||
|
sent_at = g(last_msg, "sentAt") or g(last_msg, "sent_at") or g(last_msg, "createdAt") or g(last_msg, "created_at")
|
||||||
|
sender = g(last_msg, "sender") or (g(nested, "sender") if nested else {}) or {}
|
||||||
sender_did = g(sender, "did")
|
sender_did = g(sender, "did")
|
||||||
text = g(last_msg, "text")
|
text = g(last_msg, "text") or (g(nested, "text") if nested else None)
|
||||||
if sent_at or sender_did or text:
|
if sent_at or sender_did or text:
|
||||||
return (sent_at, sender_did, text)
|
return (sent_at, sender_did, text)
|
||||||
return None
|
return None
|
||||||
@@ -210,11 +217,13 @@ class ConversationListBuffer(BaseBuffer):
|
|||||||
|
|
||||||
new_db = []
|
new_db = []
|
||||||
new_count = 0
|
new_count = 0
|
||||||
|
first_load = len(self.session.db[self.name]) == 0
|
||||||
for convo in items:
|
for convo in items:
|
||||||
key = self.get_convo_id(convo) or self._get_members_key(convo)
|
key = self.get_convo_id(convo) or self._get_members_key(convo)
|
||||||
new_db.append(convo)
|
new_db.append(convo)
|
||||||
if key is None:
|
if key is None:
|
||||||
new_count += 1
|
if first_load:
|
||||||
|
new_count += 1
|
||||||
continue
|
continue
|
||||||
if key not in existing:
|
if key not in existing:
|
||||||
new_count += 1
|
new_count += 1
|
||||||
|
|||||||
@@ -21,7 +21,7 @@ def character_count(post_text, post_cw, character_limit=500):
|
|||||||
# We will use text for counting character limit only.
|
# We will use text for counting character limit only.
|
||||||
full_text = post_text+post_cw
|
full_text = post_text+post_cw
|
||||||
# find remote users as Mastodon doesn't count the domain in char limit.
|
# find remote users as Mastodon doesn't count the domain in char limit.
|
||||||
users = re.findall(r"@[\w\.-]+@[\w\.-]+", full_text)
|
users = re.findall("@[\w\.-]+@[\w\.-]+", full_text)
|
||||||
for user in users:
|
for user in users:
|
||||||
domain = user.split("@")[-1]
|
domain = user.split("@")[-1]
|
||||||
full_text = full_text.replace("@"+domain, "")
|
full_text = full_text.replace("@"+domain, "")
|
||||||
|
|||||||
@@ -20,7 +20,7 @@ class EditTemplate(object):
|
|||||||
self.template: str = template
|
self.template: str = template
|
||||||
|
|
||||||
def validate_template(self, template: str) -> bool:
|
def validate_template(self, template: str) -> bool:
|
||||||
used_variables: List[str] = re.findall(r"\$\w+", template)
|
used_variables: List[str] = re.findall("\$\w+", template)
|
||||||
validated: bool = True
|
validated: bool = True
|
||||||
for var in used_variables:
|
for var in used_variables:
|
||||||
if var[1:] not in self.variables:
|
if var[1:] not in self.variables:
|
||||||
|
|||||||
@@ -44,7 +44,7 @@ class Session(base.baseSession):
|
|||||||
if self.settings["mastodon"]["access_token"] != None and self.settings["mastodon"]["instance"] != None:
|
if self.settings["mastodon"]["access_token"] != None and self.settings["mastodon"]["instance"] != None:
|
||||||
try:
|
try:
|
||||||
log.debug("Logging in to Mastodon instance {}...".format(self.settings["mastodon"]["instance"]))
|
log.debug("Logging in to Mastodon instance {}...".format(self.settings["mastodon"]["instance"]))
|
||||||
self.api = mastodon.Mastodon(access_token=self.settings["mastodon"]["access_token"], api_base_url=self.settings["mastodon"]["instance"], mastodon_version=MASTODON_VERSION, user_agent="TWBlue/{}".format(application.version), version_check_mode=self.version_check_mode, request_timeout=30)
|
self.api = mastodon.Mastodon(access_token=self.settings["mastodon"]["access_token"], api_base_url=self.settings["mastodon"]["instance"], mastodon_version=MASTODON_VERSION, user_agent="TWBlue/{}".format(application.version), version_check_mode=self.version_check_mode)
|
||||||
if verify_credentials == True:
|
if verify_credentials == True:
|
||||||
credentials = self.api.account_verify_credentials()
|
credentials = self.api.account_verify_credentials()
|
||||||
self.db["user_name"] = credentials["username"]
|
self.db["user_name"] = credentials["username"]
|
||||||
|
|||||||
Reference in New Issue
Block a user