Snake case

merge-requests/26/head
Bob Mottram 2022-01-03 23:24:44 +00:00
parent 43379ae568
commit 11ebc26756
1 changed files with 131 additions and 131 deletions

View File

@ -18,155 +18,155 @@ from webapp_utils import html_highlight_label
def header_buttons_timeline(default_timeline: str,
boxName: str,
pageNumber: int,
box_name: str,
page_number: int,
translate: {},
usersPath: str,
users_path: str,
mediaButton: str,
blogsButton: str,
featuresButton: str,
newsButton: str,
inboxButton: str,
dmButton: str,
newDM: str,
repliesButton: str,
newReply: str,
blogs_button: str,
features_button: str,
news_button: str,
inbox_button: str,
dm_button: str,
new_dm: str,
replies_button: str,
new_reply: str,
minimal: bool,
sentButton: str,
sharesButtonStr: str,
wantedButtonStr: str,
bookmarksButtonStr: str,
eventsButtonStr: str,
moderationButtonStr: str,
newPostButtonStr: str,
sent_button: str,
shares_button_str: str,
wanted_button_str: str,
bookmarks_button_str: str,
events_button_str: str,
moderation_button_str: str,
new_post_button_str: str,
base_dir: str,
nickname: str, domain: str,
timelineStartTime,
newCalendarEvent: bool,
calendarPath: str,
calendarImage: str,
followApprovals: str,
timeline_start_time,
new_calendar_event: bool,
calendar_path: str,
calendar_image: str,
follow_approvals: str,
icons_as_buttons: bool,
access_keys: {}) -> str:
"""Returns the header at the top of the timeline, containing
buttons for inbox, outbox, search, calendar, etc
"""
# start of the button header with inbox, outbox, etc
tlStr = '<div class="containerHeader"><nav>\n'
tl_str = '<div class="containerHeader"><nav>\n'
# first button
if default_timeline == 'tlmedia':
tlStr += \
'<a href="' + usersPath + '/tlmedia" tabindex="-1" ' + \
tl_str += \
'<a href="' + users_path + '/tlmedia" tabindex="-1" ' + \
'accesskey="' + access_keys['menuMedia'] + '"' + \
'><button class="' + \
mediaButton + '"><span>' + translate['Media'] + \
'</span></button></a>'
elif default_timeline == 'tlblogs':
tlStr += \
'<a href="' + usersPath + \
tl_str += \
'<a href="' + users_path + \
'/tlblogs" tabindex="-1"><button class="' + \
blogsButton + '"><span>' + translate['Blogs'] + \
blogs_button + '"><span>' + translate['Blogs'] + \
'</span></button></a>'
elif default_timeline == 'tlfeatures':
tlStr += \
'<a href="' + usersPath + \
tl_str += \
'<a href="' + users_path + \
'/tlfeatures" tabindex="-1"><button class="' + \
featuresButton + '"><span>' + translate['Features'] + \
features_button + '"><span>' + translate['Features'] + \
'</span></button></a>'
else:
tlStr += \
'<a href="' + usersPath + \
tl_str += \
'<a href="' + users_path + \
'/inbox" tabindex="-1"><button class="' + \
inboxButton + '"><span>' + \
inbox_button + '"><span>' + \
translate['Inbox'] + '</span></button></a>'
# if this is a news instance and we are viewing the news timeline
featuresHeader = False
if default_timeline == 'tlfeatures' and boxName == 'tlfeatures':
featuresHeader = True
features_header = False
if default_timeline == 'tlfeatures' and box_name == 'tlfeatures':
features_header = True
if not featuresHeader:
tlStr += \
'<a href="' + usersPath + \
'/dm" tabindex="-1"><button class="' + dmButton + \
'"><span>' + html_highlight_label(translate['DM'], newDM) + \
if not features_header:
tl_str += \
'<a href="' + users_path + \
'/dm" tabindex="-1"><button class="' + dm_button + \
'"><span>' + html_highlight_label(translate['DM'], new_dm) + \
'</span></button></a>'
repliesIndexFilename = \
replies_index_filename = \
acct_dir(base_dir, nickname, domain) + '/tlreplies.index'
if os.path.isfile(repliesIndexFilename):
tlStr += \
'<a href="' + usersPath + '/tlreplies" tabindex="-1">' + \
'<button class="' + repliesButton + '"><span>' + \
html_highlight_label(translate['Replies'], newReply) + \
if os.path.isfile(replies_index_filename):
tl_str += \
'<a href="' + users_path + '/tlreplies" tabindex="-1">' + \
'<button class="' + replies_button + '"><span>' + \
html_highlight_label(translate['Replies'], new_reply) + \
'</span></button></a>'
# typically the media button
if default_timeline != 'tlmedia':
if not minimal and not featuresHeader:
tlStr += \
'<a href="' + usersPath + '/tlmedia" tabindex="-1" ' + \
if not minimal and not features_header:
tl_str += \
'<a href="' + users_path + '/tlmedia" tabindex="-1" ' + \
'accesskey="' + access_keys['menuMedia'] + '">' + \
'<button class="' + \
mediaButton + '"><span>' + translate['Media'] + \
'</span></button></a>'
else:
if not minimal:
tlStr += \
'<a href="' + usersPath + \
tl_str += \
'<a href="' + users_path + \
'/inbox" tabindex="-1"><button class="' + \
inboxButton + '"><span>' + translate['Inbox'] + \
inbox_button + '"><span>' + translate['Inbox'] + \
'</span></button></a>'
if not featuresHeader:
if not features_header:
# typically the blogs button
# but may change if this is a blogging oriented instance
if default_timeline != 'tlblogs':
if not minimal:
titleStr = translate['Blogs']
title_str = translate['Blogs']
if default_timeline == 'tlfeatures':
titleStr = translate['Article']
tlStr += \
'<a href="' + usersPath + \
title_str = translate['Article']
tl_str += \
'<a href="' + users_path + \
'/tlblogs" tabindex="-1"><button class="' + \
blogsButton + '"><span>' + titleStr + \
blogs_button + '"><span>' + title_str + \
'</span></button></a>'
else:
if not minimal:
tlStr += \
'<a href="' + usersPath + \
tl_str += \
'<a href="' + users_path + \
'/inbox" tabindex="-1"><button class="' + \
inboxButton + '"><span>' + translate['Inbox'] + \
inbox_button + '"><span>' + translate['Inbox'] + \
'</span></button></a>'
# typically the news button
# but may change if this is a news oriented instance
if default_timeline == 'tlfeatures':
if not featuresHeader:
tlStr += \
'<a href="' + usersPath + \
if not features_header:
tl_str += \
'<a href="' + users_path + \
'/inbox" tabindex="-1"><button class="' + \
inboxButton + '"><span>' + translate['Inbox'] + \
inbox_button + '"><span>' + translate['Inbox'] + \
'</span></button></a>'
# show todays events buttons on the first inbox page
happeningStr = ''
if boxName == 'inbox' and pageNumber == 1:
happening_str = ''
if box_name == 'inbox' and page_number == 1:
now = datetime.now()
tomorrow = datetime.now() + timedelta(1)
twodays = datetime.now() + timedelta(2)
if day_events_check(base_dir, nickname, domain, now):
# happening today button
if not icons_as_buttons:
happeningStr += \
'<a href="' + usersPath + '/calendar?year=' + \
happening_str += \
'<a href="' + users_path + '/calendar?year=' + \
str(now.year) + '?month=' + str(now.month) + \
'?day=' + str(now.day) + '" tabindex="-1">' + \
'<button class="buttonevent">' + \
translate['Happening Today'] + '</button></a>'
else:
happeningStr += \
'<a href="' + usersPath + '/calendar?year=' + \
happening_str += \
'<a href="' + users_path + '/calendar?year=' + \
str(now.year) + '?month=' + str(now.month) + \
'?day=' + str(now.day) + '" tabindex="-1">' + \
'<button class="button">' + \
@ -175,51 +175,51 @@ def header_buttons_timeline(default_timeline: str,
elif day_events_check(base_dir, nickname, domain, tomorrow):
# happening tomorrow button
if not icons_as_buttons:
happeningStr += \
'<a href="' + usersPath + '/calendar?year=' + \
happening_str += \
'<a href="' + users_path + '/calendar?year=' + \
str(tomorrow.year) + '?month=' + str(tomorrow.month) + \
'?day=' + str(tomorrow.day) + '" tabindex="-1">' + \
'<button class="buttonevent">' + \
translate['Happening Tomorrow'] + '</button></a>'
else:
happeningStr += \
'<a href="' + usersPath + '/calendar?year=' + \
happening_str += \
'<a href="' + users_path + '/calendar?year=' + \
str(tomorrow.year) + '?month=' + str(tomorrow.month) + \
'?day=' + str(tomorrow.day) + '" tabindex="-1">' + \
'<button class="button">' + \
translate['Happening Tomorrow'] + '</button></a>'
elif day_events_check(base_dir, nickname, domain, twodays):
if not icons_as_buttons:
happeningStr += \
'<a href="' + usersPath + \
happening_str += \
'<a href="' + users_path + \
'/calendar" tabindex="-1">' + \
'<button class="buttonevent">' + \
translate['Happening This Week'] + '</button></a>'
else:
happeningStr += \
'<a href="' + usersPath + \
happening_str += \
'<a href="' + users_path + \
'/calendar" tabindex="-1">' + \
'<button class="button">' + \
translate['Happening This Week'] + '</button></a>'
if not featuresHeader:
if not features_header:
# button for the outbox
tlStr += \
'<a href="' + usersPath + '/outbox"><button class="' + \
sentButton + '" tabindex="-1"><span>' + translate['Sent'] + \
tl_str += \
'<a href="' + users_path + '/outbox"><button class="' + \
sent_button + '" tabindex="-1"><span>' + translate['Sent'] + \
'</span></button></a>'
# add other buttons
tlStr += \
sharesButtonStr + wantedButtonStr + bookmarksButtonStr + \
eventsButtonStr + \
moderationButtonStr + happeningStr + newPostButtonStr
tl_str += \
shares_button_str + wanted_button_str + bookmarks_button_str + \
events_button_str + \
moderation_button_str + happening_str + new_post_button_str
if not featuresHeader:
if not features_header:
if not icons_as_buttons:
# the search icon
tlStr += \
'<a class="imageAnchor" href="' + usersPath + \
tl_str += \
'<a class="imageAnchor" href="' + users_path + \
'/search"><img loading="lazy" src="/' + \
'icons/search.png" title="' + \
translate['Search and follow'] + '" alt="| ' + \
@ -227,110 +227,110 @@ def header_buttons_timeline(default_timeline: str,
'" class="timelineicon"/></a>'
else:
# the search button
tlStr += \
'<a href="' + usersPath + \
tl_str += \
'<a href="' + users_path + \
'/search" tabindex="-1"><button class="button">' + \
'<span>' + translate['Search'] + \
'</span></button></a>'
# benchmark 5
time_diff = int((time.time() - timelineStartTime) * 1000)
time_diff = int((time.time() - timeline_start_time) * 1000)
if time_diff > 100:
print('TIMELINE TIMING ' + boxName + ' 5 = ' + str(time_diff))
print('TIMELINE TIMING ' + box_name + ' 5 = ' + str(time_diff))
# the calendar button
if not featuresHeader:
calendarAltText = translate['Calendar']
if newCalendarEvent:
if not features_header:
calendar_alt_text = translate['Calendar']
if new_calendar_event:
# indicate that the calendar icon is highlighted
calendarAltText = '*' + calendarAltText + '*'
calendar_alt_text = '*' + calendar_alt_text + '*'
if not icons_as_buttons:
tlStr += \
tl_str += \
' <a class="imageAnchor" href="' + \
usersPath + calendarPath + \
users_path + calendar_path + \
'"><img loading="lazy" src="/icons/' + \
calendarImage + '" title="' + translate['Calendar'] + \
'" alt="| ' + calendarAltText + \
calendar_image + '" title="' + translate['Calendar'] + \
'" alt="| ' + calendar_alt_text + \
'" class="timelineicon"/></a>\n'
else:
tlStr += \
'<a href="' + usersPath + calendarPath + \
tl_str += \
'<a href="' + users_path + calendar_path + \
'" tabindex="-1"><button class="button">' + \
'<span>' + translate['Calendar'] + \
'</span></button></a>'
if not featuresHeader:
if not features_header:
# the show/hide button, for a simpler header appearance
if not icons_as_buttons:
tlStr += \
tl_str += \
' <a class="imageAnchor" href="' + \
usersPath + '/minimal' + \
users_path + '/minimal' + \
'"><img loading="lazy" src="/icons' + \
'/showhide.png" title="' + translate['Show/Hide Buttons'] + \
'" alt="| ' + translate['Show/Hide Buttons'] + \
'" class="timelineicon"/></a>\n'
else:
tlStr += \
'<a href="' + usersPath + '/minimal' + \
tl_str += \
'<a href="' + users_path + '/minimal' + \
'" tabindex="-1"><button class="button">' + \
'<span>' + translate['Show/Hide Buttons'] + \
'</span></button></a>'
if featuresHeader:
tlStr += \
'<a href="' + usersPath + '/inbox" tabindex="-1">' + \
if features_header:
tl_str += \
'<a href="' + users_path + '/inbox" tabindex="-1">' + \
'<button class="button">' + \
'<span>' + translate['User'] + '</span></button></a>'
# the newswire button to show right column links
if not icons_as_buttons:
tlStr += \
tl_str += \
'<a class="imageAnchorMobile" href="' + \
usersPath + '/newswiremobile">' + \
users_path + '/newswiremobile">' + \
'<img loading="lazy" src="/icons' + \
'/newswire.png" title="' + translate['News'] + \
'" alt="| ' + translate['News'] + \
'" class="timelineicon"/></a>'
else:
# NOTE: deliberately no \n at end of line
tlStr += \
tl_str += \
'<a href="' + \
usersPath + '/newswiremobile' + \
users_path + '/newswiremobile' + \
'" tabindex="-1"><button class="buttonMobile">' + \
'<span>' + translate['Newswire'] + \
'</span></button></a>'
# the links button to show left column links
if not icons_as_buttons:
tlStr += \
tl_str += \
'<a class="imageAnchorMobile" href="' + \
usersPath + '/linksmobile">' + \
users_path + '/linksmobile">' + \
'<img loading="lazy" src="/icons' + \
'/links.png" title="' + translate['Edit Links'] + \
'" alt="| ' + translate['Edit Links'] + \
'" class="timelineicon"/></a>'
else:
# NOTE: deliberately no \n at end of line
tlStr += \
tl_str += \
'<a href="' + \
usersPath + '/linksmobile' + \
users_path + '/linksmobile' + \
'" tabindex="-1"><button class="buttonMobile">' + \
'<span>' + translate['Links'] + \
'</span></button></a>'
if featuresHeader:
tlStr += \
'<a href="' + usersPath + '/editprofile" tabindex="-1">' + \
if features_header:
tl_str += \
'<a href="' + users_path + '/editprofile" tabindex="-1">' + \
'<button class="buttonDesktop">' + \
'<span>' + translate['Settings'] + '</span></button></a>'
if not featuresHeader:
tlStr += followApprovals
if not features_header:
tl_str += follow_approvals
if not icons_as_buttons:
# end of headericons div
tlStr += '</div>'
tl_str += '</div>'
# end of the button header with inbox, outbox, etc
tlStr += ' </nav></div>\n'
return tlStr
tl_str += ' </nav></div>\n'
return tl_str