Display of hashtag categories is optional

main
bashrc 2026-08-27 17:01:14 +01:00
parent d0bded581f
commit 62a3cf5240
3 changed files with 26 additions and 15 deletions

View File

@ -161,14 +161,18 @@ def get_right_column_content(base_dir: str, nickname: str, domain_full: str,
translate['Newswire RSS Feed'] + ' | " title="' + \
translate['Newswire RSS Feed'] + '" src="/' + \
'icons/logorss.png" /></a>\n'
rss_icon_str += \
' <a href="/categories.xml" tabindex="4" ' + \
'class="imageAnchor">' + \
'<img class="' + edit_image_class + \
'" loading="lazy" decoding="async" alt="' + \
translate['Hashtag Categories RSS Feed'] + ' | " title="' + \
translate['Hashtag Categories RSS Feed'] + '" src="/' + \
'icons/categoriesrss.png" /></a>\n'
account_dir: str = acct_dir(base_dir, nickname, domain)
show_categories_filename: str = account_dir + '/.showCategories'
show_categories = is_a_file(show_categories_filename)
if show_categories:
rss_icon_str += \
' <a href="/categories.xml" tabindex="4" ' + \
'class="imageAnchor">' + \
'<img class="' + edit_image_class + \
'" loading="lazy" decoding="async" alt="' + \
translate['Hashtag Categories RSS Feed'] + ' | " title="' + \
translate['Hashtag Categories RSS Feed'] + '" src="/' + \
'icons/categoriesrss.png" /></a>\n'
if rss_icon_at_top:
html_str += rss_icon_str

View File

@ -90,7 +90,8 @@ def get_hashtag_categories_feed(base_dir: str,
return rss_str
def html_hash_tag_swarm(base_dir: str, actor: str, translate: {}) -> str:
def html_hash_tag_swarm(base_dir: str, actor: str, translate: {},
show_categories: bool) -> str:
"""Returns a tag swarm of today's hashtags
"""
max_tag_length = 42
@ -321,9 +322,9 @@ def _update_cached_hashtag_swarm(base_dir: str, nickname: str, domain: str,
translate: {}) -> bool:
"""Updates the hashtag swarm stored as a file
"""
cached_hashtag_swarm_filename = \
acct_dir(base_dir, nickname, domain) + '/.hashtagSwarm'
save_swarm = True
account_dir: str = acct_dir(base_dir, nickname, domain)
cached_hashtag_swarm_filename = account_dir + '/.hashtagSwarm'
if is_a_file(cached_hashtag_swarm_filename):
last_modified = file_last_modified(cached_hashtag_swarm_filename)
modified_date = None
@ -348,9 +349,12 @@ def _update_cached_hashtag_swarm(base_dir: str, nickname: str, domain: str,
else:
print('WARN: no modified date for ' + str(last_modified))
if save_swarm:
show_categories_filename = account_dir + '/.showCategories'
show_categories = is_a_file(show_categories_filename)
remove_old_hashtags(base_dir, 3)
actor = local_actor_url(http_prefix, nickname, domain_full)
new_swarm_str = html_hash_tag_swarm(base_dir, actor, translate)
new_swarm_str = html_hash_tag_swarm(base_dir, actor, translate,
show_categories)
if new_swarm_str:
if save_string(new_swarm_str, cached_hashtag_swarm_filename,
'EX: unable to write cached hashtag swarm ' +

View File

@ -522,9 +522,9 @@ def html_search(translate: {}, base_dir: str, path: str, domain: str,
translate['Search'] + '</button>\n'
follow_str += ' </form>\n'
cached_hashtag_swarm_filename: str = \
acct_dir(base_dir, search_nickname, domain) + '/.hashtagSwarm'
swarm_str: str = ''
account_dir = acct_dir(base_dir, search_nickname, domain)
cached_hashtag_swarm_filename: str = account_dir + '/.hashtagSwarm'
if is_a_file(cached_hashtag_swarm_filename):
swarm_str = \
load_string(cached_hashtag_swarm_filename,
@ -534,7 +534,10 @@ def html_search(translate: {}, base_dir: str, path: str, domain: str,
if swarm_str is None:
swarm_str: str = ''
if not swarm_str:
swarm_str = html_hash_tag_swarm(base_dir, actor, translate)
show_categories_filename: str = account_dir + '/.showCategories'
show_categories = is_a_file(show_categories_filename)
swarm_str = html_hash_tag_swarm(base_dir, actor, translate,
show_categories)
if swarm_str:
save_string(swarm_str, cached_hashtag_swarm_filename,
'EX: ' +