mirror of https://gitlab.com/bashrc2/epicyon
Merge branch 'main' of gitlab.com:bashrc2/epicyon
commit
5d3b105c5c
198
daemon.py
198
daemon.py
|
@ -258,6 +258,7 @@ from languages import set_actor_languages
|
|||
from languages import get_understood_languages
|
||||
from like import update_likes_collection
|
||||
from reaction import update_reaction_collection
|
||||
from utils import get_json_content_from_accept
|
||||
from utils import remove_eol
|
||||
from utils import text_in_file
|
||||
from utils import is_onion_request
|
||||
|
@ -1279,12 +1280,10 @@ class PubServer(BaseHTTPRequestHandler):
|
|||
msg = msg_str.encode('utf-8')
|
||||
msglen = len(msg)
|
||||
if self._has_accept(calling_domain):
|
||||
if 'application/ld+json' in self.headers['Accept']:
|
||||
self._set_headers('application/ld+json', msglen,
|
||||
None, calling_domain, True)
|
||||
else:
|
||||
self._set_headers('application/json', msglen,
|
||||
None, calling_domain, True)
|
||||
protocol_str = \
|
||||
get_json_content_from_accept(self.headers.get('Accept'))
|
||||
self._set_headers(protocol_str, msglen,
|
||||
None, calling_domain, True)
|
||||
else:
|
||||
self._set_headers('application/ld+json', msglen,
|
||||
None, calling_domain, True)
|
||||
|
@ -1474,12 +1473,10 @@ class PubServer(BaseHTTPRequestHandler):
|
|||
msg = msg_str.encode('utf-8')
|
||||
msglen = len(msg)
|
||||
if self._has_accept(calling_domain):
|
||||
if 'application/ld+json' in self.headers['Accept']:
|
||||
self._set_headers('application/ld+json', msglen,
|
||||
None, calling_domain, True)
|
||||
else:
|
||||
self._set_headers('application/json', msglen,
|
||||
None, calling_domain, True)
|
||||
protocol_str = \
|
||||
get_json_content_from_accept(self.headers.get('Accept'))
|
||||
self._set_headers(protocol_str, msglen,
|
||||
None, calling_domain, True)
|
||||
else:
|
||||
self._set_headers('application/ld+json', msglen,
|
||||
None, calling_domain, True)
|
||||
|
@ -1553,12 +1550,11 @@ class PubServer(BaseHTTPRequestHandler):
|
|||
msg = msg_str.encode('utf-8')
|
||||
msglen = len(msg)
|
||||
if self._has_accept(calling_domain):
|
||||
if 'application/ld+json' in self.headers['Accept']:
|
||||
self._set_headers('application/ld+json', msglen,
|
||||
None, calling_domain, True)
|
||||
else:
|
||||
self._set_headers('application/json', msglen,
|
||||
None, calling_domain, True)
|
||||
accept_str = self.headers.get('Accept')
|
||||
protocol_str = \
|
||||
get_json_content_from_accept(accept_str)
|
||||
self._set_headers(protocol_str, msglen,
|
||||
None, calling_domain, True)
|
||||
else:
|
||||
self._set_headers('application/ld+json', msglen,
|
||||
None, calling_domain, True)
|
||||
|
@ -7465,7 +7461,9 @@ class PubServer(BaseHTTPRequestHandler):
|
|||
msg = msg_str.encode('utf-8')
|
||||
|
||||
msglen = len(msg)
|
||||
self._set_headers('application/json', msglen,
|
||||
protocol_str = \
|
||||
get_json_content_from_accept(self.headers['Accept'])
|
||||
self._set_headers(protocol_str, msglen,
|
||||
None, calling_domain, False)
|
||||
self._write(msg)
|
||||
if self.server.debug:
|
||||
|
@ -7601,7 +7599,9 @@ class PubServer(BaseHTTPRequestHandler):
|
|||
msg_str)
|
||||
msg = msg_str.encode('utf-8')
|
||||
msglen = len(msg)
|
||||
self._set_headers('application/json', msglen,
|
||||
protocol_str = \
|
||||
get_json_content_from_accept(self.headers['Accept'])
|
||||
self._set_headers(protocol_str, msglen,
|
||||
None, calling_domain, False)
|
||||
self._write(msg)
|
||||
|
||||
|
@ -10812,7 +10812,8 @@ class PubServer(BaseHTTPRequestHandler):
|
|||
referer_domain,
|
||||
msg_str)
|
||||
msg = msg_str.encode('utf-8')
|
||||
protocol_str = 'application/json'
|
||||
protocol_str = \
|
||||
get_json_content_from_accept(self.headers['Accept'])
|
||||
msglen = len(msg)
|
||||
self._set_headers(protocol_str, msglen, None,
|
||||
calling_domain, False)
|
||||
|
@ -10917,7 +10918,8 @@ class PubServer(BaseHTTPRequestHandler):
|
|||
referer_domain,
|
||||
msg_str)
|
||||
msg = msg_str.encode('utf-8')
|
||||
protocol_str = 'application/json'
|
||||
protocol_str = \
|
||||
get_json_content_from_accept(self.headers['Accept'])
|
||||
msglen = len(msg)
|
||||
self._set_headers(protocol_str, msglen,
|
||||
None, calling_domain, False)
|
||||
|
@ -11037,7 +11039,9 @@ class PubServer(BaseHTTPRequestHandler):
|
|||
msg_str)
|
||||
msg = msg_str.encode('utf-8')
|
||||
msglen = len(msg)
|
||||
self._set_headers('application/json', msglen,
|
||||
protocol_str = \
|
||||
get_json_content_from_accept(self.headers['Accept'])
|
||||
self._set_headers(protocol_str, msglen,
|
||||
None, calling_domain, False)
|
||||
self._write(msg)
|
||||
fitness_performance(getreq_start_time, self.server.fitness,
|
||||
|
@ -11169,8 +11173,10 @@ class PubServer(BaseHTTPRequestHandler):
|
|||
msg_str)
|
||||
msg = msg_str.encode('utf-8')
|
||||
msglen = len(msg)
|
||||
self._set_headers('application/json',
|
||||
msglen, None,
|
||||
accept_str = self.headers['Accept']
|
||||
protocol_str = \
|
||||
get_json_content_from_accept(accept_str)
|
||||
self._set_headers(protocol_str, msglen, None,
|
||||
calling_domain, False)
|
||||
self._write(msg)
|
||||
fitness_performance(getreq_start_time,
|
||||
|
@ -11516,8 +11522,9 @@ class PubServer(BaseHTTPRequestHandler):
|
|||
msg_str)
|
||||
msg = msg_str.encode('utf-8')
|
||||
msglen = len(msg)
|
||||
self._set_headers('application/json',
|
||||
msglen,
|
||||
protocol_str = \
|
||||
get_json_content_from_accept(self.headers['Accept'])
|
||||
self._set_headers(protocol_str, msglen,
|
||||
None, calling_domain, False)
|
||||
self._write(msg)
|
||||
fitness_performance(getreq_start_time, self.server.fitness,
|
||||
|
@ -11832,7 +11839,10 @@ class PubServer(BaseHTTPRequestHandler):
|
|||
msg_str)
|
||||
msg = msg_str.encode('utf-8')
|
||||
msglen = len(msg)
|
||||
self._set_headers('application/json', msglen,
|
||||
accept_str = self.headers['Accept']
|
||||
protocol_str = \
|
||||
get_json_content_from_accept(accept_str)
|
||||
self._set_headers(protocol_str, msglen,
|
||||
None, calling_domain, False)
|
||||
self._write(msg)
|
||||
fitness_performance(getreq_start_time,
|
||||
|
@ -11989,8 +11999,10 @@ class PubServer(BaseHTTPRequestHandler):
|
|||
msg_str)
|
||||
msg = msg_str.encode('utf-8')
|
||||
msglen = len(msg)
|
||||
self._set_headers('application/json',
|
||||
msglen,
|
||||
accept_str = self.headers['Accept']
|
||||
protocol_str = \
|
||||
get_json_content_from_accept(accept_str)
|
||||
self._set_headers(protocol_str, msglen,
|
||||
None, calling_domain, False)
|
||||
self._write(msg)
|
||||
fitness_performance(getreq_start_time,
|
||||
|
@ -12149,7 +12161,10 @@ class PubServer(BaseHTTPRequestHandler):
|
|||
msg_str)
|
||||
msg = msg_str.encode('utf-8')
|
||||
msglen = len(msg)
|
||||
self._set_headers('application/json', msglen,
|
||||
accept_str = self.headers['Accept']
|
||||
protocol_str = \
|
||||
get_json_content_from_accept(accept_str)
|
||||
self._set_headers(protocol_str, msglen,
|
||||
None, calling_domain, False)
|
||||
self._write(msg)
|
||||
fitness_performance(getreq_start_time,
|
||||
|
@ -12304,7 +12319,10 @@ class PubServer(BaseHTTPRequestHandler):
|
|||
msg_str)
|
||||
msg = msg_str.encode('utf-8')
|
||||
msglen = len(msg)
|
||||
self._set_headers('application/json', msglen,
|
||||
accept_str = self.headers['Accept']
|
||||
protocol_str = \
|
||||
get_json_content_from_accept(accept_str)
|
||||
self._set_headers(protocol_str, msglen,
|
||||
None, calling_domain, False)
|
||||
self._write(msg)
|
||||
fitness_performance(getreq_start_time,
|
||||
|
@ -12459,8 +12477,10 @@ class PubServer(BaseHTTPRequestHandler):
|
|||
msg_str)
|
||||
msg = msg_str.encode('utf-8')
|
||||
msglen = len(msg)
|
||||
self._set_headers('application/json',
|
||||
msglen,
|
||||
accept_str = self.headers['Accept']
|
||||
protocol_str = \
|
||||
get_json_content_from_accept(accept_str)
|
||||
self._set_headers(protocol_str, msglen,
|
||||
None, calling_domain, False)
|
||||
self._write(msg)
|
||||
fitness_performance(getreq_start_time,
|
||||
|
@ -12623,8 +12643,10 @@ class PubServer(BaseHTTPRequestHandler):
|
|||
msg_str)
|
||||
msg = msg_str.encode('utf-8')
|
||||
msglen = len(msg)
|
||||
self._set_headers('application/json',
|
||||
msglen,
|
||||
accept_str = self.headers['Accept']
|
||||
protocol_str = \
|
||||
get_json_content_from_accept(accept_str)
|
||||
self._set_headers(protocol_str, msglen,
|
||||
None, calling_domain, False)
|
||||
self._write(msg)
|
||||
fitness_performance(getreq_start_time,
|
||||
|
@ -12789,8 +12811,10 @@ class PubServer(BaseHTTPRequestHandler):
|
|||
msg_str)
|
||||
msg = msg_str.encode('utf-8')
|
||||
msglen = len(msg)
|
||||
self._set_headers('application/json',
|
||||
msglen,
|
||||
accept_str = self.headers['Accept']
|
||||
protocol_str = \
|
||||
get_json_content_from_accept(accept_str)
|
||||
self._set_headers(protocol_str, msglen,
|
||||
None, calling_domain, False)
|
||||
self._write(msg)
|
||||
fitness_performance(getreq_start_time,
|
||||
|
@ -13137,7 +13161,10 @@ class PubServer(BaseHTTPRequestHandler):
|
|||
msg_str)
|
||||
msg = msg_str.encode('utf-8')
|
||||
msglen = len(msg)
|
||||
self._set_headers('application/json', msglen,
|
||||
accept_str = self.headers['Accept']
|
||||
protocol_str = \
|
||||
get_json_content_from_accept(accept_str)
|
||||
self._set_headers(protocol_str, msglen,
|
||||
None, calling_domain, False)
|
||||
self._write(msg)
|
||||
fitness_performance(getreq_start_time,
|
||||
|
@ -13286,7 +13313,10 @@ class PubServer(BaseHTTPRequestHandler):
|
|||
msg_str)
|
||||
msg = msg_str.encode('utf-8')
|
||||
msglen = len(msg)
|
||||
self._set_headers('application/json', msglen,
|
||||
accept_str = self.headers['Accept']
|
||||
protocol_str = \
|
||||
get_json_content_from_accept(accept_str)
|
||||
self._set_headers(protocol_str, msglen,
|
||||
None, calling_domain, False)
|
||||
self._write(msg)
|
||||
fitness_performance(getreq_start_time,
|
||||
|
@ -13432,7 +13462,10 @@ class PubServer(BaseHTTPRequestHandler):
|
|||
msg_str)
|
||||
msg = msg_str.encode('utf-8')
|
||||
msglen = len(msg)
|
||||
self._set_headers('application/json', msglen,
|
||||
accept_str = self.headers['Accept']
|
||||
protocol_str = \
|
||||
get_json_content_from_accept(accept_str)
|
||||
self._set_headers(protocol_str, msglen,
|
||||
None, calling_domain, False)
|
||||
self._write(msg)
|
||||
fitness_performance(getreq_start_time,
|
||||
|
@ -13572,7 +13605,10 @@ class PubServer(BaseHTTPRequestHandler):
|
|||
msg_str)
|
||||
msg = msg_str.encode('utf-8')
|
||||
msglen = len(msg)
|
||||
self._set_headers('application/json', msglen,
|
||||
accept_str = self.headers['Accept']
|
||||
protocol_str = \
|
||||
get_json_content_from_accept(accept_str)
|
||||
self._set_headers(protocol_str, msglen,
|
||||
None, calling_domain, False)
|
||||
self._write(msg)
|
||||
fitness_performance(getreq_start_time,
|
||||
|
@ -13707,7 +13743,10 @@ class PubServer(BaseHTTPRequestHandler):
|
|||
msg_str)
|
||||
msg = msg_str.encode('utf-8')
|
||||
msglen = len(msg)
|
||||
self._set_headers('application/json', msglen,
|
||||
accept_str = self.headers['Accept']
|
||||
protocol_str = \
|
||||
get_json_content_from_accept(accept_str)
|
||||
self._set_headers(protocol_str, msglen,
|
||||
None, calling_domain, False)
|
||||
self._write(msg)
|
||||
fitness_performance(getreq_start_time,
|
||||
|
@ -13843,7 +13882,10 @@ class PubServer(BaseHTTPRequestHandler):
|
|||
msg_str)
|
||||
msg = msg_str.encode('utf-8')
|
||||
msglen = len(msg)
|
||||
self._set_headers('application/json', msglen,
|
||||
accept_str = self.headers['Accept']
|
||||
protocol_str = \
|
||||
get_json_content_from_accept(accept_str)
|
||||
self._set_headers(protocol_str, msglen,
|
||||
None, calling_domain, False)
|
||||
self._write(msg)
|
||||
fitness_performance(getreq_start_time,
|
||||
|
@ -13875,7 +13917,10 @@ class PubServer(BaseHTTPRequestHandler):
|
|||
msg_str)
|
||||
msg = msg_str.encode('utf-8')
|
||||
msglen = len(msg)
|
||||
self._set_headers('application/json', msglen,
|
||||
accept_str = self.headers['Accept']
|
||||
protocol_str = \
|
||||
get_json_content_from_accept(accept_str)
|
||||
self._set_headers(protocol_str, msglen,
|
||||
None, calling_domain, False)
|
||||
self._write(msg)
|
||||
|
||||
|
@ -13903,7 +13948,10 @@ class PubServer(BaseHTTPRequestHandler):
|
|||
msg_str)
|
||||
msg = msg_str.encode('utf-8')
|
||||
msglen = len(msg)
|
||||
self._set_headers('application/json', msglen,
|
||||
accept_str = self.headers['Accept']
|
||||
protocol_str = \
|
||||
get_json_content_from_accept(accept_str)
|
||||
self._set_headers(protocol_str, msglen,
|
||||
None, calling_domain, False)
|
||||
self._write(msg)
|
||||
|
||||
|
@ -14996,8 +15044,11 @@ class PubServer(BaseHTTPRequestHandler):
|
|||
msg_str)
|
||||
msg = msg_str.encode('utf-8')
|
||||
msglen = len(msg)
|
||||
self._set_headers('application/json',
|
||||
msglen, None, calling_domain, False)
|
||||
accept_str = self.headers['Accept']
|
||||
protocol_str = \
|
||||
get_json_content_from_accept(accept_str)
|
||||
self._set_headers(protocol_str, msglen,
|
||||
None, calling_domain, False)
|
||||
self._write(msg)
|
||||
|
||||
def _send_block(self, http_prefix: str,
|
||||
|
@ -15147,8 +15198,11 @@ class PubServer(BaseHTTPRequestHandler):
|
|||
msg_str = json.dumps(acct_pub_key_json, ensure_ascii=False)
|
||||
msg = msg_str.encode('utf-8')
|
||||
msglen = len(msg)
|
||||
self._set_headers('application/json',
|
||||
msglen, None, calling_domain, False)
|
||||
accept_str = self.headers['Accept']
|
||||
protocol_str = \
|
||||
get_json_content_from_accept(accept_str)
|
||||
self._set_headers(protocol_str, msglen,
|
||||
None, calling_domain, False)
|
||||
self._write(msg)
|
||||
return
|
||||
|
||||
|
@ -15402,8 +15456,11 @@ class PubServer(BaseHTTPRequestHandler):
|
|||
msg_str)
|
||||
msg = msg_str.encode('utf-8')
|
||||
msglen = len(msg)
|
||||
self._set_headers('application/json',
|
||||
msglen, None, calling_domain, False)
|
||||
accept_str = self.headers['Accept']
|
||||
protocol_str = \
|
||||
get_json_content_from_accept(accept_str)
|
||||
self._set_headers(protocol_str, msglen,
|
||||
None, calling_domain, False)
|
||||
self._write(msg)
|
||||
return
|
||||
elif catalog_type == 'csv':
|
||||
|
@ -15501,8 +15558,11 @@ class PubServer(BaseHTTPRequestHandler):
|
|||
msg_str)
|
||||
msg = msg_str.encode('utf-8')
|
||||
msglen = len(msg)
|
||||
self._set_headers('application/json',
|
||||
msglen, None, calling_domain, False)
|
||||
accept_str = self.headers['Accept']
|
||||
protocol_str = \
|
||||
get_json_content_from_accept(accept_str)
|
||||
self._set_headers(protocol_str, msglen,
|
||||
None, calling_domain, False)
|
||||
self._write(msg)
|
||||
return
|
||||
elif catalog_type == 'csv':
|
||||
|
@ -15855,8 +15915,11 @@ class PubServer(BaseHTTPRequestHandler):
|
|||
msg_str)
|
||||
msg = msg_str.encode('utf-8')
|
||||
msglen = len(msg)
|
||||
self._set_headers('application/json',
|
||||
msglen, None, calling_domain, False)
|
||||
accept_str = self.headers['Accept']
|
||||
protocol_str = \
|
||||
get_json_content_from_accept(accept_str)
|
||||
self._set_headers(protocol_str, msglen,
|
||||
None, calling_domain, False)
|
||||
self._write(msg)
|
||||
return
|
||||
|
||||
|
@ -15924,7 +15987,10 @@ class PubServer(BaseHTTPRequestHandler):
|
|||
msg_str)
|
||||
msg = msg_str.encode('utf-8')
|
||||
msglen = len(msg)
|
||||
self._set_headers('application/json', msglen,
|
||||
accept_str = self.headers['Accept']
|
||||
protocol_str = \
|
||||
get_json_content_from_accept(accept_str)
|
||||
self._set_headers(protocol_str, msglen,
|
||||
None, calling_domain, False)
|
||||
self._write(msg)
|
||||
fitness_performance(getreq_start_time, self.server.fitness,
|
||||
|
@ -16007,8 +16073,10 @@ class PubServer(BaseHTTPRequestHandler):
|
|||
msg_str)
|
||||
msg = msg_str.encode('utf-8')
|
||||
msglen = len(msg)
|
||||
self._set_headers('application/json',
|
||||
msglen,
|
||||
accept_str = self.headers['Accept']
|
||||
protocol_str = \
|
||||
get_json_content_from_accept(accept_str)
|
||||
self._set_headers(protocol_str, msglen,
|
||||
None, calling_domain, False)
|
||||
self._write(msg)
|
||||
fitness_performance(getreq_start_time, self.server.fitness,
|
||||
|
@ -18415,8 +18483,10 @@ class PubServer(BaseHTTPRequestHandler):
|
|||
msg_str)
|
||||
msg = msg_str.encode('utf-8')
|
||||
msglen = len(msg)
|
||||
self._set_headers('application/json',
|
||||
msglen,
|
||||
accept_str = self.headers['Accept']
|
||||
protocol_str = \
|
||||
get_json_content_from_accept(accept_str)
|
||||
self._set_headers(protocol_str, msglen,
|
||||
None, calling_domain, False)
|
||||
self._write(msg)
|
||||
fitness_performance(getreq_start_time, self.server.fitness,
|
||||
|
@ -19766,8 +19836,10 @@ class PubServer(BaseHTTPRequestHandler):
|
|||
msg_str)
|
||||
msg = msg_str.encode('utf-8')
|
||||
msglen = len(msg)
|
||||
self._set_headers('application/json',
|
||||
msglen,
|
||||
accept_str = self.headers['Accept']
|
||||
protocol_str = \
|
||||
get_json_content_from_accept(accept_str)
|
||||
self._set_headers(protocol_str, msglen,
|
||||
None, calling_domain, False)
|
||||
self._write(msg)
|
||||
return True
|
||||
|
|
File diff suppressed because one or more lines are too long
41
follow.py
41
follow.py
|
@ -92,8 +92,7 @@ def _pre_approved_follower(base_dir: str,
|
|||
approve_handle: str) -> bool:
|
||||
"""Is the given handle an already manually approved follower?
|
||||
"""
|
||||
handle = nickname + '@' + domain
|
||||
account_dir = base_dir + '/accounts/' + handle
|
||||
account_dir = acct_dir(base_dir, nickname, domain)
|
||||
approved_filename = account_dir + '/approved.txt'
|
||||
if os.path.isfile(approved_filename):
|
||||
if text_in_file(approve_handle, approved_filename):
|
||||
|
@ -107,13 +106,12 @@ def _remove_from_follow_base(base_dir: str,
|
|||
debug: bool) -> None:
|
||||
"""Removes a handle/actor from follow requests or rejects file
|
||||
"""
|
||||
handle = nickname + '@' + domain
|
||||
accounts_dir = base_dir + '/accounts/' + handle
|
||||
accounts_dir = acct_dir(base_dir, nickname, domain)
|
||||
approve_follows_filename = accounts_dir + '/' + follow_file + '.txt'
|
||||
if not os.path.isfile(approve_follows_filename):
|
||||
if debug:
|
||||
print('There is no ' + follow_file +
|
||||
' to remove ' + handle + ' from')
|
||||
' to remove ' + nickname + '@' + domain + ' from')
|
||||
return
|
||||
accept_deny_actor = None
|
||||
if not text_in_file(accept_or_deny_handle, approve_follows_filename):
|
||||
|
@ -177,10 +175,10 @@ def is_following_actor(base_dir: str,
|
|||
The actor can also be a handle: nickname@domain
|
||||
"""
|
||||
domain = remove_domain_port(domain)
|
||||
handle = nickname + '@' + domain
|
||||
if not os.path.isdir(base_dir + '/accounts/' + handle):
|
||||
accounts_dir = acct_dir(base_dir, nickname, domain)
|
||||
if not os.path.isdir(accounts_dir):
|
||||
return False
|
||||
following_file = base_dir + '/accounts/' + handle + '/following.txt'
|
||||
following_file = accounts_dir + '/following.txt'
|
||||
if not os.path.isfile(following_file):
|
||||
return False
|
||||
if actor.startswith('@'):
|
||||
|
@ -309,7 +307,8 @@ def unfollow_account(base_dir: str, nickname: str, domain: str,
|
|||
if not os.path.isdir(base_dir + '/accounts/' + handle):
|
||||
os.mkdir(base_dir + '/accounts/' + handle)
|
||||
|
||||
filename = base_dir + '/accounts/' + handle + '/' + follow_file
|
||||
accounts_dir = acct_dir(base_dir, nickname, domain)
|
||||
filename = accounts_dir + '/' + follow_file
|
||||
if not os.path.isfile(filename):
|
||||
if debug:
|
||||
print('DEBUG: follow file ' + filename + ' was not found')
|
||||
|
@ -339,7 +338,7 @@ def unfollow_account(base_dir: str, nickname: str, domain: str,
|
|||
|
||||
# write to an unfollowed file so that if a follow accept
|
||||
# later arrives then it can be ignored
|
||||
unfollowed_filename = base_dir + '/accounts/' + handle + '/unfollowed.txt'
|
||||
unfollowed_filename = accounts_dir + '/unfollowed.txt'
|
||||
if os.path.isfile(unfollowed_filename):
|
||||
if not text_in_file(handle_to_unfollow_lower,
|
||||
unfollowed_filename, False):
|
||||
|
@ -374,12 +373,12 @@ def clear_follows(base_dir: str, nickname: str, domain: str,
|
|||
follow_file: str = 'following.txt') -> None:
|
||||
"""Removes all follows
|
||||
"""
|
||||
handle = nickname + '@' + domain
|
||||
if not os.path.isdir(base_dir + '/accounts'):
|
||||
os.mkdir(base_dir + '/accounts')
|
||||
if not os.path.isdir(base_dir + '/accounts/' + handle):
|
||||
os.mkdir(base_dir + '/accounts/' + handle)
|
||||
filename = base_dir + '/accounts/' + handle + '/' + follow_file
|
||||
accounts_dir = acct_dir(base_dir, nickname, domain)
|
||||
if not os.path.isdir(accounts_dir):
|
||||
os.mkdir(accounts_dir)
|
||||
filename = accounts_dir + '/' + follow_file
|
||||
if os.path.isfile(filename):
|
||||
try:
|
||||
os.remove(filename)
|
||||
|
@ -401,8 +400,8 @@ def _get_no_of_follows(base_dir: str, nickname: str, domain: str,
|
|||
# account holders
|
||||
# if not authenticated:
|
||||
# return 9999
|
||||
handle = nickname + '@' + domain
|
||||
filename = base_dir + '/accounts/' + handle + '/' + follow_file
|
||||
accounts_dir = acct_dir(base_dir, nickname, domain)
|
||||
filename = accounts_dir + '/' + follow_file
|
||||
if not os.path.isfile(filename):
|
||||
return 0
|
||||
ctr = 0
|
||||
|
@ -518,8 +517,8 @@ def get_following_feed(base_dir: str, domain: str, port: int, path: str,
|
|||
|
||||
handle_domain = domain
|
||||
handle_domain = remove_domain_port(handle_domain)
|
||||
handle = nickname + '@' + handle_domain
|
||||
filename = base_dir + '/accounts/' + handle + '/' + follow_file + '.txt'
|
||||
accounts_dir = acct_dir(base_dir, nickname, handle_domain)
|
||||
filename = accounts_dir + '/' + follow_file + '.txt'
|
||||
if not os.path.isfile(filename):
|
||||
return following
|
||||
curr_page = 1
|
||||
|
@ -608,8 +607,7 @@ def no_of_follow_requests(base_dir: str,
|
|||
follow_type: str) -> int:
|
||||
"""Returns the current number of follow requests
|
||||
"""
|
||||
accounts_dir = base_dir + '/accounts/' + \
|
||||
nickname_to_follow + '@' + domain_to_follow
|
||||
accounts_dir = acct_dir(base_dir, nickname_to_follow, domain_to_follow)
|
||||
approve_follows_filename = accounts_dir + '/followrequests.txt'
|
||||
if not os.path.isfile(approve_follows_filename):
|
||||
return 0
|
||||
|
@ -644,8 +642,7 @@ def store_follow_request(base_dir: str,
|
|||
group_account: bool) -> bool:
|
||||
"""Stores the follow request for later use
|
||||
"""
|
||||
accounts_dir = base_dir + '/accounts/' + \
|
||||
nickname_to_follow + '@' + domain_to_follow
|
||||
accounts_dir = acct_dir(base_dir, nickname_to_follow, domain_to_follow)
|
||||
if not os.path.isdir(accounts_dir):
|
||||
return False
|
||||
|
||||
|
|
|
@ -622,7 +622,10 @@ def save_person_qrcode(base_dir: str,
|
|||
return
|
||||
handle = get_full_domain('@' + nickname + '@' + qrcode_domain, port)
|
||||
url = pyqrcode.create(handle)
|
||||
url.png(qrcode_filename, scale)
|
||||
try:
|
||||
url.png(qrcode_filename, scale)
|
||||
except ModuleNotFoundError:
|
||||
print('EX: pyqrcode png module not found')
|
||||
|
||||
|
||||
def create_person(base_dir: str, nickname: str, domain: str, port: int,
|
||||
|
|
4
tests.py
4
tests.py
|
@ -1826,7 +1826,9 @@ def test_shared_items_federation(base_dir: str) -> None:
|
|||
bob_instance_actor_json = \
|
||||
get_json(signing_priv_key_pem, session_client,
|
||||
'http://' + bob_address + '/@actor', test_headers, {}, True,
|
||||
__version__, 'http', 'somedomain.or.other', 10, True)
|
||||
__version__, 'http', 'somedomain.or.other', 10, False)
|
||||
if not bob_instance_actor_json:
|
||||
print('Unable to get json for ' + 'http://' + bob_address + '/@actor')
|
||||
assert bob_instance_actor_json
|
||||
pprint(bob_instance_actor_json)
|
||||
assert bob_instance_actor_json['name'] == 'ACTOR'
|
||||
|
|
23
utils.py
23
utils.py
|
@ -3805,11 +3805,12 @@ def disallow_announce(content: str) -> bool:
|
|||
"don't boost",
|
||||
'boost_denied',
|
||||
'boosts_denied',
|
||||
'BoostDenied',
|
||||
'BoostsDenied'
|
||||
'boostdenied',
|
||||
'boostsdenied'
|
||||
)
|
||||
content_lower = content.lower()
|
||||
for diss in disallow_strings:
|
||||
if diss in content:
|
||||
if diss in content_lower:
|
||||
return True
|
||||
return False
|
||||
|
||||
|
@ -3828,10 +3829,12 @@ def disallow_reply(content: str) -> bool:
|
|||
'do not reply',
|
||||
"don't reply",
|
||||
"don't @ me",
|
||||
'DontAtMe'
|
||||
'dont@me',
|
||||
'dontatme'
|
||||
)
|
||||
content_lower = content.lower()
|
||||
for diss in disallow_strings:
|
||||
if diss in content:
|
||||
if diss in content_lower:
|
||||
return True
|
||||
return False
|
||||
|
||||
|
@ -3859,3 +3862,13 @@ def safe_system_string(text: str) -> str:
|
|||
"""
|
||||
text = text.replace('$(', '(').replace('`', '')
|
||||
return text
|
||||
|
||||
|
||||
def get_json_content_from_accept(accept: str) -> str:
|
||||
"""returns the json content type for the given accept
|
||||
"""
|
||||
protocol_str = 'application/json'
|
||||
if accept:
|
||||
if 'application/ld+json' in accept:
|
||||
protocol_str = 'application/ld+json'
|
||||
return protocol_str
|
||||
|
|
Loading…
Reference in New Issue