mirror of https://gitlab.com/bashrc2/epicyon
Move conversation function to daemon post module
parent
7c677cf4d4
commit
e669d7fa44
103
daemon_get.py
103
daemon_get.py
|
@ -28,7 +28,6 @@ from blocking import update_blocked_cache
|
||||||
from blocking import add_global_block
|
from blocking import add_global_block
|
||||||
from blocking import blocked_timeline_json
|
from blocking import blocked_timeline_json
|
||||||
from cache import get_person_from_cache
|
from cache import get_person_from_cache
|
||||||
from webapp_conversation import html_conversation_view
|
|
||||||
from webapp_moderation import html_account_info
|
from webapp_moderation import html_account_info
|
||||||
from webapp_calendar import html_calendar_delete_confirm
|
from webapp_calendar import html_calendar_delete_confirm
|
||||||
from webapp_calendar import html_calendar
|
from webapp_calendar import html_calendar
|
||||||
|
@ -200,6 +199,7 @@ from daemon_get_post import show_announcers_of_post
|
||||||
from daemon_get_post import show_likers_of_post
|
from daemon_get_post import show_likers_of_post
|
||||||
from daemon_get_post import show_individual_at_post
|
from daemon_get_post import show_individual_at_post
|
||||||
from daemon_get_post import show_new_post
|
from daemon_get_post import show_new_post
|
||||||
|
from daemon_get_post import show_conversation_thread
|
||||||
from daemon_get_collections import get_featured_collection
|
from daemon_get_collections import get_featured_collection
|
||||||
from daemon_get_collections import get_featured_tags_collection
|
from daemon_get_collections import get_featured_tags_collection
|
||||||
from daemon_get_collections import get_following_json
|
from daemon_get_collections import get_following_json
|
||||||
|
@ -560,15 +560,15 @@ def daemon_http_get(self) -> None:
|
||||||
self.server.debug)
|
self.server.debug)
|
||||||
return
|
return
|
||||||
|
|
||||||
if _show_conversation_thread(self, authorized,
|
if show_conversation_thread(self, authorized,
|
||||||
calling_domain, self.path,
|
calling_domain, self.path,
|
||||||
self.server.base_dir,
|
self.server.base_dir,
|
||||||
self.server.http_prefix,
|
self.server.http_prefix,
|
||||||
self.server.domain,
|
self.server.domain,
|
||||||
self.server.port,
|
self.server.port,
|
||||||
self.server.debug,
|
self.server.debug,
|
||||||
self.server.session,
|
self.server.session,
|
||||||
cookie):
|
cookie):
|
||||||
fitness_performance(getreq_start_time, self.server.fitness,
|
fitness_performance(getreq_start_time, self.server.fitness,
|
||||||
'_GET', '_show_conversation_thread',
|
'_GET', '_show_conversation_thread',
|
||||||
self.server.debug)
|
self.server.debug)
|
||||||
|
@ -4598,89 +4598,6 @@ def _browser_config(self, calling_domain: str, referer_domain: str,
|
||||||
self.server.debug)
|
self.server.debug)
|
||||||
|
|
||||||
|
|
||||||
def _show_conversation_thread(self, authorized: bool,
|
|
||||||
calling_domain: str, path: str,
|
|
||||||
base_dir: str, http_prefix: str,
|
|
||||||
domain: str, port: int,
|
|
||||||
debug: str, curr_session,
|
|
||||||
cookie: str) -> bool:
|
|
||||||
"""get conversation thread from the date link on a post
|
|
||||||
"""
|
|
||||||
if not path.startswith('/users/'):
|
|
||||||
return False
|
|
||||||
if '?convthread=' not in path:
|
|
||||||
return False
|
|
||||||
post_id = path.split('?convthread=')[1].strip()
|
|
||||||
post_id = post_id.replace('--', '/')
|
|
||||||
if post_id.startswith('/users/'):
|
|
||||||
instance_url = get_instance_url(calling_domain,
|
|
||||||
self.server.http_prefix,
|
|
||||||
self.server.domain_full,
|
|
||||||
self.server.onion_domain,
|
|
||||||
self.server.i2p_domain)
|
|
||||||
post_id = instance_url + post_id
|
|
||||||
nickname = path.split('/users/')[1]
|
|
||||||
if '?convthread=' in nickname:
|
|
||||||
nickname = nickname.split('?convthread=')[0]
|
|
||||||
if '/' in nickname:
|
|
||||||
nickname = nickname.split('/')[0]
|
|
||||||
timezone = None
|
|
||||||
if self.server.account_timezone.get(nickname):
|
|
||||||
timezone = \
|
|
||||||
self.server.account_timezone.get(nickname)
|
|
||||||
bold_reading = False
|
|
||||||
if self.server.bold_reading.get(nickname):
|
|
||||||
bold_reading = True
|
|
||||||
conv_str = \
|
|
||||||
html_conversation_view(authorized,
|
|
||||||
post_id, self.server.translate,
|
|
||||||
base_dir,
|
|
||||||
http_prefix,
|
|
||||||
nickname,
|
|
||||||
domain,
|
|
||||||
self.server.project_version,
|
|
||||||
self.server.recent_posts_cache,
|
|
||||||
self.server.max_recent_posts,
|
|
||||||
curr_session,
|
|
||||||
self.server.cached_webfingers,
|
|
||||||
self.server.person_cache,
|
|
||||||
port,
|
|
||||||
self.server.yt_replace_domain,
|
|
||||||
self.server.twitter_replacement_domain,
|
|
||||||
self.server.show_published_date_only,
|
|
||||||
self.server.peertube_instances,
|
|
||||||
self.server.allow_local_network_access,
|
|
||||||
self.server.theme_name,
|
|
||||||
self.server.system_language,
|
|
||||||
self.server.max_like_count,
|
|
||||||
self.server.signing_priv_key_pem,
|
|
||||||
self.server.cw_lists,
|
|
||||||
self.server.lists_enabled,
|
|
||||||
timezone, bold_reading,
|
|
||||||
self.server.dogwhistles,
|
|
||||||
self.server.access_keys,
|
|
||||||
self.server.min_images_for_accounts,
|
|
||||||
debug,
|
|
||||||
self.server.buy_sites,
|
|
||||||
self.server.blocked_cache,
|
|
||||||
self.server.block_federated,
|
|
||||||
self.server.auto_cw_cache)
|
|
||||||
if conv_str:
|
|
||||||
msg = conv_str.encode('utf-8')
|
|
||||||
msglen = len(msg)
|
|
||||||
login_headers(self, 'text/html', msglen, calling_domain)
|
|
||||||
write2(self, msg)
|
|
||||||
self.server.getreq_busy = False
|
|
||||||
return True
|
|
||||||
# redirect to the original site if there are no results
|
|
||||||
if '://' + self.server.domain_full + '/' in post_id:
|
|
||||||
redirect_headers(self, post_id, cookie, calling_domain)
|
|
||||||
else:
|
|
||||||
redirect_headers(self, post_id, None, calling_domain)
|
|
||||||
self.server.getreq_busy = False
|
|
||||||
return True
|
|
||||||
|
|
||||||
|
|
||||||
def _get_speaker(self, calling_domain: str, referer_domain: str,
|
def _get_speaker(self, calling_domain: str, referer_domain: str,
|
||||||
path: str, base_dir: str, domain: str) -> None:
|
path: str, base_dir: str, domain: str) -> None:
|
||||||
"""Returns the speaker file used for TTS and
|
"""Returns the speaker file used for TTS and
|
||||||
|
|
|
@ -9,6 +9,8 @@ __module_group__ = "Core"
|
||||||
|
|
||||||
import os
|
import os
|
||||||
import json
|
import json
|
||||||
|
from webapp_conversation import html_conversation_view
|
||||||
|
from utils import get_instance_url
|
||||||
from utils import is_public_post_from_url
|
from utils import is_public_post_from_url
|
||||||
from utils import local_actor_url
|
from utils import local_actor_url
|
||||||
from utils import locate_post
|
from utils import locate_post
|
||||||
|
@ -30,6 +32,8 @@ from httpcodes import http_401
|
||||||
from httpcodes import http_403
|
from httpcodes import http_403
|
||||||
from httpcodes import http_404
|
from httpcodes import http_404
|
||||||
from httpheaders import set_headers
|
from httpheaders import set_headers
|
||||||
|
from httpheaders import login_headers
|
||||||
|
from httpheaders import redirect_headers
|
||||||
from httprequests import request_http
|
from httprequests import request_http
|
||||||
from posts import populate_replies_json
|
from posts import populate_replies_json
|
||||||
from posts import remove_post_interactions
|
from posts import remove_post_interactions
|
||||||
|
@ -128,7 +132,7 @@ def _show_post_from_file(self, post_filename: str, liked_by: str,
|
||||||
cookie, calling_domain, False)
|
cookie, calling_domain, False)
|
||||||
write2(self, msg)
|
write2(self, msg)
|
||||||
fitness_performance(getreq_start_time, self.server.fitness,
|
fitness_performance(getreq_start_time, self.server.fitness,
|
||||||
'_GET', '_show_post_from_file',
|
'_GET', 'show_post_from_file',
|
||||||
debug)
|
debug)
|
||||||
else:
|
else:
|
||||||
if secure_mode(curr_session, proxy_type, False,
|
if secure_mode(curr_session, proxy_type, False,
|
||||||
|
@ -158,7 +162,7 @@ def _show_post_from_file(self, post_filename: str, liked_by: str,
|
||||||
None, calling_domain, False)
|
None, calling_domain, False)
|
||||||
write2(self, msg)
|
write2(self, msg)
|
||||||
fitness_performance(getreq_start_time, self.server.fitness,
|
fitness_performance(getreq_start_time, self.server.fitness,
|
||||||
'_GET', '_show_post_from_file json',
|
'_GET', 'show_post_from_file json',
|
||||||
debug)
|
debug)
|
||||||
else:
|
else:
|
||||||
http_404(self, 73)
|
http_404(self, 73)
|
||||||
|
@ -256,7 +260,7 @@ def show_individual_post(self, ssml_getreq: bool, authorized: bool,
|
||||||
include_create_wrapper,
|
include_create_wrapper,
|
||||||
curr_session)
|
curr_session)
|
||||||
fitness_performance(getreq_start_time, self.server.fitness,
|
fitness_performance(getreq_start_time, self.server.fitness,
|
||||||
'_GET', '_show_individual_post',
|
'_GET', 'show_individual_post',
|
||||||
self.server.debug)
|
self.server.debug)
|
||||||
return result
|
return result
|
||||||
|
|
||||||
|
@ -408,7 +412,7 @@ def show_new_post(self, edit_post_params: {},
|
||||||
write2(self, msg)
|
write2(self, msg)
|
||||||
fitness_performance(getreq_start_time,
|
fitness_performance(getreq_start_time,
|
||||||
self.server.fitness,
|
self.server.fitness,
|
||||||
'_GET', '_show_new_post',
|
'_GET', 'show_new_post',
|
||||||
self.server.debug)
|
self.server.debug)
|
||||||
return True
|
return True
|
||||||
return False
|
return False
|
||||||
|
@ -510,7 +514,7 @@ def show_individual_at_post(self, ssml_getreq: bool, authorized: bool,
|
||||||
include_create_wrapper,
|
include_create_wrapper,
|
||||||
curr_session)
|
curr_session)
|
||||||
fitness_performance(getreq_start_time, self.server.fitness,
|
fitness_performance(getreq_start_time, self.server.fitness,
|
||||||
'_GET', '_show_individual_at_post',
|
'_GET', 'show_individual_at_post',
|
||||||
self.server.debug)
|
self.server.debug)
|
||||||
return result
|
return result
|
||||||
|
|
||||||
|
@ -578,7 +582,7 @@ def show_likers_of_post(self, authorized: bool,
|
||||||
cookie, calling_domain, False)
|
cookie, calling_domain, False)
|
||||||
write2(self, msg)
|
write2(self, msg)
|
||||||
fitness_performance(getreq_start_time, self.server.fitness,
|
fitness_performance(getreq_start_time, self.server.fitness,
|
||||||
'_GET', '_show_likers_of_post',
|
'_GET', 'show_likers_of_post',
|
||||||
debug)
|
debug)
|
||||||
return True
|
return True
|
||||||
|
|
||||||
|
@ -647,7 +651,7 @@ def show_announcers_of_post(self, authorized: bool,
|
||||||
cookie, calling_domain, False)
|
cookie, calling_domain, False)
|
||||||
write2(self, msg)
|
write2(self, msg)
|
||||||
fitness_performance(getreq_start_time, self.server.fitness,
|
fitness_performance(getreq_start_time, self.server.fitness,
|
||||||
'_GET', '_show_announcers_of_post',
|
'_GET', 'show_announcers_of_post',
|
||||||
debug)
|
debug)
|
||||||
return True
|
return True
|
||||||
|
|
||||||
|
@ -775,7 +779,7 @@ def show_replies_to_post(self, authorized: bool,
|
||||||
cookie, calling_domain, False)
|
cookie, calling_domain, False)
|
||||||
write2(self, msg)
|
write2(self, msg)
|
||||||
fitness_performance(getreq_start_time, self.server.fitness,
|
fitness_performance(getreq_start_time, self.server.fitness,
|
||||||
'_GET', '_show_replies_to_post',
|
'_GET', 'show_replies_to_post',
|
||||||
debug)
|
debug)
|
||||||
else:
|
else:
|
||||||
if secure_mode(curr_session, proxy_type, False,
|
if secure_mode(curr_session, proxy_type, False,
|
||||||
|
@ -795,7 +799,7 @@ def show_replies_to_post(self, authorized: bool,
|
||||||
calling_domain, False)
|
calling_domain, False)
|
||||||
write2(self, msg)
|
write2(self, msg)
|
||||||
fitness_performance(getreq_start_time, self.server.fitness,
|
fitness_performance(getreq_start_time, self.server.fitness,
|
||||||
'_GET', '_show_replies_to_post json',
|
'_GET', 'show_replies_to_post json',
|
||||||
debug)
|
debug)
|
||||||
else:
|
else:
|
||||||
http_404(self, 62)
|
http_404(self, 62)
|
||||||
|
@ -896,7 +900,7 @@ def show_replies_to_post(self, authorized: bool,
|
||||||
cookie, calling_domain, False)
|
cookie, calling_domain, False)
|
||||||
write2(self, msg)
|
write2(self, msg)
|
||||||
fitness_performance(getreq_start_time, self.server.fitness,
|
fitness_performance(getreq_start_time, self.server.fitness,
|
||||||
'_GET', '_show_replies_to_post',
|
'_GET', 'show_replies_to_post',
|
||||||
debug)
|
debug)
|
||||||
else:
|
else:
|
||||||
if secure_mode(curr_session, proxy_type, False,
|
if secure_mode(curr_session, proxy_type, False,
|
||||||
|
@ -916,7 +920,7 @@ def show_replies_to_post(self, authorized: bool,
|
||||||
None, calling_domain, False)
|
None, calling_domain, False)
|
||||||
write2(self, msg)
|
write2(self, msg)
|
||||||
fitness_performance(getreq_start_time, self.server.fitness,
|
fitness_performance(getreq_start_time, self.server.fitness,
|
||||||
'_GET', '_show_replies_to_post json',
|
'_GET', 'show_replies_to_post json',
|
||||||
debug)
|
debug)
|
||||||
else:
|
else:
|
||||||
http_404(self, 64)
|
http_404(self, 64)
|
||||||
|
@ -967,6 +971,89 @@ def show_notify_post(self, authorized: bool,
|
||||||
include_create_wrapper,
|
include_create_wrapper,
|
||||||
curr_session)
|
curr_session)
|
||||||
fitness_performance(getreq_start_time, self.server.fitness,
|
fitness_performance(getreq_start_time, self.server.fitness,
|
||||||
'_GET', '_show_notify_post',
|
'_GET', 'show_notify_post',
|
||||||
self.server.debug)
|
self.server.debug)
|
||||||
return result
|
return result
|
||||||
|
|
||||||
|
|
||||||
|
def show_conversation_thread(self, authorized: bool,
|
||||||
|
calling_domain: str, path: str,
|
||||||
|
base_dir: str, http_prefix: str,
|
||||||
|
domain: str, port: int,
|
||||||
|
debug: str, curr_session,
|
||||||
|
cookie: str) -> bool:
|
||||||
|
"""get conversation thread from the date link on a post
|
||||||
|
"""
|
||||||
|
if not path.startswith('/users/'):
|
||||||
|
return False
|
||||||
|
if '?convthread=' not in path:
|
||||||
|
return False
|
||||||
|
post_id = path.split('?convthread=')[1].strip()
|
||||||
|
post_id = post_id.replace('--', '/')
|
||||||
|
if post_id.startswith('/users/'):
|
||||||
|
instance_url = get_instance_url(calling_domain,
|
||||||
|
self.server.http_prefix,
|
||||||
|
self.server.domain_full,
|
||||||
|
self.server.onion_domain,
|
||||||
|
self.server.i2p_domain)
|
||||||
|
post_id = instance_url + post_id
|
||||||
|
nickname = path.split('/users/')[1]
|
||||||
|
if '?convthread=' in nickname:
|
||||||
|
nickname = nickname.split('?convthread=')[0]
|
||||||
|
if '/' in nickname:
|
||||||
|
nickname = nickname.split('/')[0]
|
||||||
|
timezone = None
|
||||||
|
if self.server.account_timezone.get(nickname):
|
||||||
|
timezone = \
|
||||||
|
self.server.account_timezone.get(nickname)
|
||||||
|
bold_reading = False
|
||||||
|
if self.server.bold_reading.get(nickname):
|
||||||
|
bold_reading = True
|
||||||
|
conv_str = \
|
||||||
|
html_conversation_view(authorized,
|
||||||
|
post_id, self.server.translate,
|
||||||
|
base_dir,
|
||||||
|
http_prefix,
|
||||||
|
nickname,
|
||||||
|
domain,
|
||||||
|
self.server.project_version,
|
||||||
|
self.server.recent_posts_cache,
|
||||||
|
self.server.max_recent_posts,
|
||||||
|
curr_session,
|
||||||
|
self.server.cached_webfingers,
|
||||||
|
self.server.person_cache,
|
||||||
|
port,
|
||||||
|
self.server.yt_replace_domain,
|
||||||
|
self.server.twitter_replacement_domain,
|
||||||
|
self.server.show_published_date_only,
|
||||||
|
self.server.peertube_instances,
|
||||||
|
self.server.allow_local_network_access,
|
||||||
|
self.server.theme_name,
|
||||||
|
self.server.system_language,
|
||||||
|
self.server.max_like_count,
|
||||||
|
self.server.signing_priv_key_pem,
|
||||||
|
self.server.cw_lists,
|
||||||
|
self.server.lists_enabled,
|
||||||
|
timezone, bold_reading,
|
||||||
|
self.server.dogwhistles,
|
||||||
|
self.server.access_keys,
|
||||||
|
self.server.min_images_for_accounts,
|
||||||
|
debug,
|
||||||
|
self.server.buy_sites,
|
||||||
|
self.server.blocked_cache,
|
||||||
|
self.server.block_federated,
|
||||||
|
self.server.auto_cw_cache)
|
||||||
|
if conv_str:
|
||||||
|
msg = conv_str.encode('utf-8')
|
||||||
|
msglen = len(msg)
|
||||||
|
login_headers(self, 'text/html', msglen, calling_domain)
|
||||||
|
write2(self, msg)
|
||||||
|
self.server.getreq_busy = False
|
||||||
|
return True
|
||||||
|
# redirect to the original site if there are no results
|
||||||
|
if '://' + self.server.domain_full + '/' in post_id:
|
||||||
|
redirect_headers(self, post_id, cookie, calling_domain)
|
||||||
|
else:
|
||||||
|
redirect_headers(self, post_id, None, calling_domain)
|
||||||
|
self.server.getreq_busy = False
|
||||||
|
return True
|
||||||
|
|
Loading…
Reference in New Issue