merge-requests/30/head
Bob Mottram 2024-04-10 16:00:42 +01:00
parent a9f49879ce
commit ccc4759b10
2 changed files with 159 additions and 100 deletions

View File

@ -2383,10 +2383,13 @@ def daemon_http_get(self) -> None:
if show_qrcode(self, calling_domain, self.path, if show_qrcode(self, calling_domain, self.path,
self.server.base_dir, self.server.base_dir,
self.server.domain, self.server.domain,
self.server.domain_full,
self.server.onion_domain, self.server.onion_domain,
self.server.i2p_domain, self.server.i2p_domain,
self.server.port, self.server.port,
getreq_start_time): getreq_start_time,
self.server.fitness,
self.server.debug):
return return
fitness_performance(getreq_start_time, self.server.fitness, fitness_performance(getreq_start_time, self.server.fitness,
@ -2399,21 +2402,30 @@ def daemon_http_get(self) -> None:
if search_screen_banner(self, self.path, if search_screen_banner(self, self.path,
self.server.base_dir, self.server.base_dir,
self.server.domain, self.server.domain,
getreq_start_time): getreq_start_time,
self.server.domain_full,
self.server.fitness,
self.server.debug):
return return
if self.path.endswith('/left_col_image.png'): if self.path.endswith('/left_col_image.png'):
if column_image(self, 'left', self.path, if column_image(self, 'left', self.path,
self.server.base_dir, self.server.base_dir,
self.server.domain, self.server.domain,
getreq_start_time): getreq_start_time,
self.server.domain_full,
self.server.fitness,
self.server.debug):
return return
if self.path.endswith('/right_col_image.png'): if self.path.endswith('/right_col_image.png'):
if column_image(self, 'right', self.path, if column_image(self, 'right', self.path,
self.server.base_dir, self.server.base_dir,
self.server.domain, self.server.domain,
getreq_start_time): getreq_start_time,
self.server.domain_full,
self.server.fitness,
self.server.debug):
return return
fitness_performance(getreq_start_time, self.server.fitness, fitness_performance(getreq_start_time, self.server.fitness,
@ -2423,14 +2435,20 @@ def daemon_http_get(self) -> None:
if self.path.startswith('/defaultprofilebackground'): if self.path.startswith('/defaultprofilebackground'):
show_default_profile_background(self, self.server.base_dir, show_default_profile_background(self, self.server.base_dir,
self.server.theme_name, self.server.theme_name,
getreq_start_time) getreq_start_time,
self.server.domain_full,
self.server.fitness,
self.server.debug)
return return
# show a background image on the login or person options page # show a background image on the login or person options page
if '-background.' in self.path: if '-background.' in self.path:
if show_background_image(self, self.path, if show_background_image(self, self.path,
self.server.base_dir, self.server.base_dir,
getreq_start_time): getreq_start_time,
self.server.domain_full,
self.server.fitness,
self.server.debug):
return return
fitness_performance(getreq_start_time, self.server.fitness, fitness_performance(getreq_start_time, self.server.fitness,
@ -2440,7 +2458,8 @@ def daemon_http_get(self) -> None:
# emoji images # emoji images
if '/emoji/' in self.path: if '/emoji/' in self.path:
show_emoji(self, self.path, self.server.base_dir, show_emoji(self, self.path, self.server.base_dir,
getreq_start_time) getreq_start_time, self.server.domain_full,
self.server.fitness, self.server.debug)
return return
fitness_performance(getreq_start_time, self.server.fitness, fitness_performance(getreq_start_time, self.server.fitness,
@ -2455,7 +2474,8 @@ def daemon_http_get(self) -> None:
'/media/') '/media/')
if '/media/' in self.path: if '/media/' in self.path:
show_media(self, self.path, self.server.base_dir, show_media(self, self.path, self.server.base_dir,
getreq_start_time) getreq_start_time, self.server.fitness,
self.server.debug)
return return
if '/ontologies/' in self.path or \ if '/ontologies/' in self.path or \
@ -2474,7 +2494,10 @@ def daemon_http_get(self) -> None:
# Note that this comes before the busy flag to avoid conflicts # Note that this comes before the busy flag to avoid conflicts
if '/sharefiles/' in self.path: if '/sharefiles/' in self.path:
if show_share_image(self, self.path, self.server.base_dir, if show_share_image(self, self.path, self.server.base_dir,
getreq_start_time): getreq_start_time,
self.server.domain_full,
self.server.fitness,
self.server.debug):
return return
fitness_performance(getreq_start_time, self.server.fitness, fitness_performance(getreq_start_time, self.server.fitness,
@ -2485,7 +2508,10 @@ def daemon_http_get(self) -> None:
# Note that this comes before the busy flag to avoid conflicts # Note that this comes before the busy flag to avoid conflicts
if self.path.startswith('/icons/'): if self.path.startswith('/icons/'):
show_icon(self, self.path, self.server.base_dir, show_icon(self, self.path, self.server.base_dir,
getreq_start_time) getreq_start_time, self.server.theme_name,
self.server.iconsCache,
self.server.domain_full,
self.server.fitness, self.server.debug)
return return
# show images within https://instancedomain/activitypub # show images within https://instancedomain/activitypub
@ -2493,7 +2519,11 @@ def daemon_http_get(self) -> None:
if self.path.endswith('.png'): if self.path.endswith('.png'):
show_specification_image(self, self.path, show_specification_image(self, self.path,
self.server.base_dir, self.server.base_dir,
getreq_start_time) getreq_start_time,
self.server.iconsCache,
self.server.domain_full,
self.server.fitness,
self.server.debug)
return return
# show images within https://instancedomain/manual # show images within https://instancedomain/manual
@ -2501,7 +2531,11 @@ def daemon_http_get(self) -> None:
if is_image_file(self.path): if is_image_file(self.path):
show_manual_image(self, self.path, show_manual_image(self, self.path,
self.server.base_dir, self.server.base_dir,
getreq_start_time) getreq_start_time,
self.server.iconsCache,
self.server.domain_full,
self.server.fitness,
self.server.debug)
return return
# help screen images # help screen images
@ -2509,7 +2543,11 @@ def daemon_http_get(self) -> None:
if self.path.startswith('/helpimages/'): if self.path.startswith('/helpimages/'):
show_help_screen_image(self, self.path, show_help_screen_image(self, self.path,
self.server.base_dir, self.server.base_dir,
getreq_start_time) getreq_start_time,
self.server.theme_name,
self.server.domain_full,
self.server.fitness,
self.server.debug)
return return
fitness_performance(getreq_start_time, self.server.fitness, fitness_performance(getreq_start_time, self.server.fitness,
@ -2521,7 +2559,9 @@ def daemon_http_get(self) -> None:
if self.path.startswith('/avatars/'): if self.path.startswith('/avatars/'):
show_cached_avatar(self, referer_domain, self.path, show_cached_avatar(self, referer_domain, self.path,
self.server.base_dir, self.server.base_dir,
getreq_start_time) getreq_start_time,
self.server.fitness,
self.server.debug)
return return
fitness_performance(getreq_start_time, self.server.fitness, fitness_performance(getreq_start_time, self.server.fitness,
@ -2533,7 +2573,9 @@ def daemon_http_get(self) -> None:
if show_avatar_or_banner(self, referer_domain, self.path, if show_avatar_or_banner(self, referer_domain, self.path,
self.server.base_dir, self.server.base_dir,
self.server.domain, self.server.domain,
getreq_start_time): getreq_start_time,
self.server.fitness,
self.server.debug):
return return
fitness_performance(getreq_start_time, self.server.fitness, fitness_performance(getreq_start_time, self.server.fitness,

View File

@ -31,7 +31,8 @@ from person import save_person_qrcode
def show_avatar_or_banner(self, referer_domain: str, path: str, def show_avatar_or_banner(self, referer_domain: str, path: str,
base_dir: str, domain: str, base_dir: str, domain: str,
getreq_start_time) -> bool: getreq_start_time, fitness: {},
debug: bool) -> bool:
"""Shows an avatar or banner or profile background image """Shows an avatar or banner or profile background image
""" """
if '/users/' not in path: if '/users/' not in path:
@ -115,15 +116,15 @@ def show_avatar_or_banner(self, referer_domain: str, path: str,
referer_domain, True, referer_domain, True,
last_modified_time_str) last_modified_time_str)
write2(self, media_binary) write2(self, media_binary)
fitness_performance(getreq_start_time, fitness_performance(getreq_start_time, fitness,
self.server.fitness,
'_GET', 'show_avatar_or_banner', '_GET', 'show_avatar_or_banner',
self.server.debug) debug)
return True return True
def show_cached_avatar(self, referer_domain: str, path: str, def show_cached_avatar(self, referer_domain: str, path: str,
base_dir: str, getreq_start_time) -> None: base_dir: str, getreq_start_time,
fitness: {}, debug: bool) -> None:
"""Shows an avatar image obtained from the cache """Shows an avatar image obtained from the cache
""" """
media_filename = base_dir + '/cache' + path media_filename = base_dir + '/cache' + path
@ -146,25 +147,27 @@ def show_cached_avatar(self, referer_domain: str, path: str,
referer_domain, referer_domain,
False, None) False, None)
write2(self, media_binary) write2(self, media_binary)
fitness_performance(getreq_start_time, self.server.fitness, fitness_performance(getreq_start_time, fitness,
'_GET', 'show_cached_avatar', '_GET', 'show_cached_avatar',
self.server.debug) debug)
return return
http_404(self, 46) http_404(self, 46)
def show_help_screen_image(self, path: str, def show_help_screen_image(self, path: str,
base_dir: str, getreq_start_time) -> None: base_dir: str, getreq_start_time,
theme_name: str, domain_full: str,
fitness: {}, debug: bool) -> None:
"""Shows a help screen image """Shows a help screen image
""" """
if not is_image_file(path): if not is_image_file(path):
return return
media_str = path.split('/helpimages/')[1] media_str = path.split('/helpimages/')[1]
if '/' not in media_str: if '/' not in media_str:
if not self.server.theme_name: if not theme_name:
theme = 'default' theme = 'default'
else: else:
theme = self.server.theme_name theme = theme_name
icon_filename = media_str icon_filename = media_str
else: else:
theme = media_str.split('/')[0] theme = media_str.split('/')[0]
@ -191,18 +194,20 @@ def show_help_screen_image(self, path: str,
set_headers_etag(self, media_filename, set_headers_etag(self, media_filename,
mime_type, mime_type,
media_binary, None, media_binary, None,
self.server.domain_full, domain_full,
False, None) False, None)
write2(self, media_binary) write2(self, media_binary)
fitness_performance(getreq_start_time, self.server.fitness, fitness_performance(getreq_start_time, fitness,
'_GET', 'show_help_screen_image', '_GET', 'show_help_screen_image',
self.server.debug) debug)
return return
http_404(self, 43) http_404(self, 43)
def show_manual_image(self, path: str, def show_manual_image(self, path: str,
base_dir: str, getreq_start_time) -> None: base_dir: str, getreq_start_time,
icons_cache: {}, domain_full: str,
fitness: {}, debug: bool) -> None:
"""Shows an image within the manual """Shows an image within the manual
""" """
image_filename = path.split('/', 1)[1] image_filename = path.split('/', 1)[1]
@ -215,18 +220,18 @@ def show_manual_image(self, path: str,
# The file has not changed # The file has not changed
http_304(self) http_304(self)
return return
if self.server.iconsCache.get(media_filename): if icons_cache.get(media_filename):
media_binary = self.server.iconsCache[media_filename] media_binary = icons_cache[media_filename]
mime_type_str = media_file_mime_type(media_filename) mime_type_str = media_file_mime_type(media_filename)
set_headers_etag(self, media_filename, set_headers_etag(self, media_filename,
mime_type_str, mime_type_str,
media_binary, None, media_binary, None,
self.server.domain_full, domain_full,
False, None) False, None)
write2(self, media_binary) write2(self, media_binary)
fitness_performance(getreq_start_time, self.server.fitness, fitness_performance(getreq_start_time, fitness,
'_GET', 'show_manual_image', '_GET', 'show_manual_image',
self.server.debug) debug)
return return
if os.path.isfile(media_filename): if os.path.isfile(media_filename):
media_binary = None media_binary = None
@ -241,19 +246,21 @@ def show_manual_image(self, path: str,
set_headers_etag(self, media_filename, set_headers_etag(self, media_filename,
mime_type, mime_type,
media_binary, None, media_binary, None,
self.server.domain_full, domain_full,
False, None) False, None)
write2(self, media_binary) write2(self, media_binary)
self.server.iconsCache[media_filename] = media_binary icons_cache[media_filename] = media_binary
fitness_performance(getreq_start_time, self.server.fitness, fitness_performance(getreq_start_time, fitness,
'_GET', 'show_manual_image', '_GET', 'show_manual_image',
self.server.debug) debug)
return return
http_404(self, 42) http_404(self, 42)
def show_specification_image(self, path: str, def show_specification_image(self, path: str,
base_dir: str, getreq_start_time) -> None: base_dir: str, getreq_start_time,
icons_cache: {}, domain_full: str,
fitness: {}, debug: bool) -> None:
"""Shows an image within the ActivityPub specification document """Shows an image within the ActivityPub specification document
""" """
image_filename = path.split('/', 1)[1] image_filename = path.split('/', 1)[1]
@ -266,18 +273,18 @@ def show_specification_image(self, path: str,
# The file has not changed # The file has not changed
http_304(self) http_304(self)
return return
if self.server.iconsCache.get(media_filename): if icons_cache.get(media_filename):
media_binary = self.server.iconsCache[media_filename] media_binary = icons_cache[media_filename]
mime_type_str = media_file_mime_type(media_filename) mime_type_str = media_file_mime_type(media_filename)
set_headers_etag(self, media_filename, set_headers_etag(self, media_filename,
mime_type_str, mime_type_str,
media_binary, None, media_binary, None,
self.server.domain_full, domain_full,
False, None) False, None)
write2(self, media_binary) write2(self, media_binary)
fitness_performance(getreq_start_time, self.server.fitness, fitness_performance(getreq_start_time, fitness,
'_GET', 'show_specification_image', '_GET', 'show_specification_image',
self.server.debug) debug)
return return
if os.path.isfile(media_filename): if os.path.isfile(media_filename):
media_binary = None media_binary = None
@ -292,19 +299,21 @@ def show_specification_image(self, path: str,
set_headers_etag(self, media_filename, set_headers_etag(self, media_filename,
mime_type, mime_type,
media_binary, None, media_binary, None,
self.server.domain_full, domain_full,
False, None) False, None)
write2(self, media_binary) write2(self, media_binary)
self.server.iconsCache[media_filename] = media_binary icons_cache[media_filename] = media_binary
fitness_performance(getreq_start_time, self.server.fitness, fitness_performance(getreq_start_time, fitness,
'_GET', 'show_specification_image', '_GET', 'show_specification_image',
self.server.debug) debug)
return return
http_404(self, 40) http_404(self, 40)
def show_share_image(self, path: str, def show_share_image(self, path: str,
base_dir: str, getreq_start_time) -> bool: base_dir: str, getreq_start_time,
domain_full: str, fitness: {},
debug: bool) -> bool:
"""Show a shared item image """Show a shared item image
""" """
if not is_image_file(path): if not is_image_file(path):
@ -333,18 +342,20 @@ def show_share_image(self, path: str,
set_headers_etag(self, media_filename, set_headers_etag(self, media_filename,
media_file_type, media_file_type,
media_binary, None, media_binary, None,
self.server.domain_full, domain_full,
False, None) False, None)
write2(self, media_binary) write2(self, media_binary)
fitness_performance(getreq_start_time, fitness_performance(getreq_start_time, fitness,
self.server.fitness,
'_GET', 'show_share_image', '_GET', 'show_share_image',
self.server.debug) debug)
return True return True
def show_icon(self, path: str, def show_icon(self, path: str,
base_dir: str, getreq_start_time) -> None: base_dir: str, getreq_start_time,
theme_name: str,
icons_cache: {}, domain_full: str,
fitness: {}, debug: bool) -> None:
"""Shows an icon """Shows an icon
""" """
if not path.endswith('.png'): if not path.endswith('.png'):
@ -352,10 +363,10 @@ def show_icon(self, path: str,
return return
media_str = path.split('/icons/')[1] media_str = path.split('/icons/')[1]
if '/' not in media_str: if '/' not in media_str:
if not self.server.theme_name: if not theme_name:
theme = 'default' theme = 'default'
else: else:
theme = self.server.theme_name theme = theme_name
icon_filename = media_str icon_filename = media_str
else: else:
theme = media_str.split('/')[0] theme = media_str.split('/')[0]
@ -366,17 +377,17 @@ def show_icon(self, path: str,
# The file has not changed # The file has not changed
http_304(self) http_304(self)
return return
if self.server.iconsCache.get(media_str): if icons_cache.get(media_str):
media_binary = self.server.iconsCache[media_str] media_binary = icons_cache[media_str]
mime_type_str = media_file_mime_type(media_filename) mime_type_str = media_file_mime_type(media_filename)
set_headers_etag(self, media_filename, set_headers_etag(self, media_filename,
mime_type_str, mime_type_str,
media_binary, None, media_binary, None,
self.server.domain_full, domain_full,
False, None) False, None)
write2(self, media_binary) write2(self, media_binary)
fitness_performance(getreq_start_time, self.server.fitness, fitness_performance(getreq_start_time, fitness,
'_GET', 'show_icon', self.server.debug) '_GET', 'show_icon', debug)
return return
if os.path.isfile(media_filename): if os.path.isfile(media_filename):
media_binary = None media_binary = None
@ -390,18 +401,19 @@ def show_icon(self, path: str,
set_headers_etag(self, media_filename, set_headers_etag(self, media_filename,
mime_type, mime_type,
media_binary, None, media_binary, None,
self.server.domain_full, domain_full,
False, None) False, None)
write2(self, media_binary) write2(self, media_binary)
self.server.iconsCache[media_str] = media_binary icons_cache[media_str] = media_binary
fitness_performance(getreq_start_time, self.server.fitness, fitness_performance(getreq_start_time, fitness,
'_GET', 'show_icon', self.server.debug) '_GET', 'show_icon', debug)
return return
http_404(self, 38) http_404(self, 38)
def show_media(self, path: str, base_dir: str, def show_media(self, path: str, base_dir: str,
getreq_start_time) -> None: getreq_start_time, fitness: {},
debug: bool) -> None:
"""Returns a media file """Returns a media file
""" """
if is_image_file(path) or \ if is_image_file(path) or \
@ -443,9 +455,9 @@ def show_media(self, path: str, base_dir: str,
last_modified_time_str) last_modified_time_str)
write2(self, media_transcript) write2(self, media_transcript)
fitness_performance(getreq_start_time, fitness_performance(getreq_start_time,
self.server.fitness, fitness,
'_GET', 'show_media', '_GET', 'show_media',
self.server.debug) debug)
return return
http_404(self, 32) http_404(self, 32)
return return
@ -462,16 +474,17 @@ def show_media(self, path: str, base_dir: str,
None, True, None, True,
last_modified_time_str) last_modified_time_str)
write2(self, media_binary) write2(self, media_binary)
fitness_performance(getreq_start_time, self.server.fitness, fitness_performance(getreq_start_time, fitness,
'_GET', 'show_media', self.server.debug) '_GET', 'show_media', debug)
return return
http_404(self, 33) http_404(self, 33)
def show_qrcode(self, calling_domain: str, path: str, def show_qrcode(self, calling_domain: str, path: str,
base_dir: str, domain: str, base_dir: str, domain: str, domain_full: str,
onion_domain: str, i2p_domain: str, onion_domain: str, i2p_domain: str,
port: int, getreq_start_time) -> bool: port: int, getreq_start_time,
fitness: {}, debug: bool) -> bool:
"""Shows a QR code for an account """Shows a QR code for an account
""" """
nickname = get_nickname_from_actor(path) nickname = get_nickname_from_actor(path)
@ -510,13 +523,12 @@ def show_qrcode(self, calling_domain: str, path: str,
mime_type = media_file_mime_type(qr_filename) mime_type = media_file_mime_type(qr_filename)
set_headers_etag(self, qr_filename, mime_type, set_headers_etag(self, qr_filename, mime_type,
media_binary, None, media_binary, None,
self.server.domain_full, domain_full,
False, None) False, None)
write2(self, media_binary) write2(self, media_binary)
fitness_performance(getreq_start_time, fitness_performance(getreq_start_time, fitness,
self.server.fitness,
'_GET', 'show_qrcode', '_GET', 'show_qrcode',
self.server.debug) debug)
return True return True
http_404(self, 94) http_404(self, 94)
return True return True
@ -524,7 +536,9 @@ def show_qrcode(self, calling_domain: str, path: str,
def search_screen_banner(self, path: str, def search_screen_banner(self, path: str,
base_dir: str, domain: str, base_dir: str, domain: str,
getreq_start_time) -> bool: getreq_start_time,
domain_full: str,
fitness: {}, debug: bool) -> bool:
"""Shows a banner image on the search screen """Shows a banner image on the search screen
""" """
nickname = get_nickname_from_actor(path) nickname = get_nickname_from_actor(path)
@ -559,20 +573,20 @@ def search_screen_banner(self, path: str,
mime_type = media_file_mime_type(banner_filename) mime_type = media_file_mime_type(banner_filename)
set_headers_etag(self, banner_filename, mime_type, set_headers_etag(self, banner_filename, mime_type,
media_binary, None, media_binary, None,
self.server.domain_full, domain_full,
False, None) False, None)
write2(self, media_binary) write2(self, media_binary)
fitness_performance(getreq_start_time, fitness_performance(getreq_start_time, fitness,
self.server.fitness,
'_GET', 'search_screen_banner', '_GET', 'search_screen_banner',
self.server.debug) debug)
return True return True
http_404(self, 96) http_404(self, 96)
return True return True
def column_image(self, side: str, path: str, base_dir: str, domain: str, def column_image(self, side: str, path: str, base_dir: str, domain: str,
getreq_start_time) -> bool: getreq_start_time, domain_full: str,
fitness: {}, debug: bool) -> bool:
"""Shows an image at the top of the left/right column """Shows an image at the top of the left/right column
""" """
nickname = get_nickname_from_actor(path) nickname = get_nickname_from_actor(path)
@ -603,20 +617,21 @@ def column_image(self, side: str, path: str, base_dir: str, domain: str,
mime_type = media_file_mime_type(banner_filename) mime_type = media_file_mime_type(banner_filename)
set_headers_etag(self, banner_filename, mime_type, set_headers_etag(self, banner_filename, mime_type,
media_binary, None, media_binary, None,
self.server.domain_full, domain_full,
False, None) False, None)
write2(self, media_binary) write2(self, media_binary)
fitness_performance(getreq_start_time, fitness_performance(getreq_start_time, fitness,
self.server.fitness,
'_GET', 'column_image ' + side, '_GET', 'column_image ' + side,
self.server.debug) debug)
return True return True
http_404(self, 98) http_404(self, 98)
return True return True
def show_default_profile_background(self, base_dir: str, theme_name: str, def show_default_profile_background(self, base_dir: str, theme_name: str,
getreq_start_time) -> bool: getreq_start_time,
domain_full: {},
fitness: {}, debug: bool) -> bool:
"""If a background image is missing after searching for a handle """If a background image is missing after searching for a handle
then substitute this image then substitute this image
""" """
@ -648,14 +663,13 @@ def show_default_profile_background(self, base_dir: str, theme_name: str,
set_headers_etag(self, bg_filename, set_headers_etag(self, bg_filename,
'image/' + ext, 'image/' + ext,
bg_binary, None, bg_binary, None,
self.server.domain_full, domain_full,
False, None) False, None)
write2(self, bg_binary) write2(self, bg_binary)
fitness_performance(getreq_start_time, fitness_performance(getreq_start_time, fitness,
self.server.fitness,
'_GET', '_GET',
'show_default_profile_background', 'show_default_profile_background',
self.server.debug) debug)
return True return True
break break
@ -664,7 +678,9 @@ def show_default_profile_background(self, base_dir: str, theme_name: str,
def show_background_image(self, path: str, def show_background_image(self, path: str,
base_dir: str, getreq_start_time) -> bool: base_dir: str, getreq_start_time,
domain_full: str, fitness: {},
debug: bool) -> bool:
"""Show a background image """Show a background image
""" """
image_extensions = get_image_extensions() image_extensions = get_image_extensions()
@ -699,21 +715,22 @@ def show_background_image(self, path: str,
set_headers_etag(self, bg_filename, set_headers_etag(self, bg_filename,
'image/' + ext, 'image/' + ext,
bg_binary, None, bg_binary, None,
self.server.domain_full, domain_full,
False, None) False, None)
write2(self, bg_binary) write2(self, bg_binary)
fitness_performance(getreq_start_time, fitness_performance(getreq_start_time, fitness,
self.server.fitness,
'_GET', '_GET',
'show_background_image', 'show_background_image',
self.server.debug) debug)
return True return True
http_404(self, 99) http_404(self, 99)
return True return True
def show_emoji(self, path: str, def show_emoji(self, path: str,
base_dir: str, getreq_start_time) -> None: base_dir: str, getreq_start_time,
domain_full: {}, fitness: {},
debug: bool) -> None:
"""Returns an emoji image """Returns an emoji image
""" """
if is_image_file(path): if is_image_file(path):
@ -738,10 +755,10 @@ def show_emoji(self, path: str,
set_headers_etag(self, emoji_filename, set_headers_etag(self, emoji_filename,
media_image_type, media_image_type,
media_binary, None, media_binary, None,
self.server.domain_full, domain_full,
False, None) False, None)
write2(self, media_binary) write2(self, media_binary)
fitness_performance(getreq_start_time, self.server.fitness, fitness_performance(getreq_start_time, fitness,
'_GET', 'show_emoji', self.server.debug) '_GET', 'show_emoji', debug)
return return
http_404(self, 36) http_404(self, 36)