summaryrefslogtreecommitdiff
path: root/ishtar_common
diff options
context:
space:
mode:
Diffstat (limited to 'ishtar_common')
-rw-r--r--ishtar_common/context_processors.py24
-rw-r--r--ishtar_common/views.py14
2 files changed, 26 insertions, 12 deletions
diff --git a/ishtar_common/context_processors.py b/ishtar_common/context_processors.py
index 8131e0382..d1e088a8f 100644
--- a/ishtar_common/context_processors.py
+++ b/ishtar_common/context_processors.py
@@ -43,9 +43,15 @@ def _get_changelog_version_from_file():
)
if not os.path.exists(changelog_dir):
return "no-version"
- changelog_file = os.path.join(changelog_dir, f"changelog_1.md")
- if not os.path.exists(changelog_file):
+ filename = ""
+ for fle in reversed(sorted(os.listdir(changelog_dir))):
+ if not fle.startswith("changelog_") or not fle.endswith(".md"):
+ continue
+ filename = fle
+ break
+ if not filename:
return "no-version"
+ changelog_file = os.path.join(changelog_dir, filename)
current_version = None
with open(changelog_file, "r") as changelog:
for line in changelog.readlines():
@@ -125,10 +131,11 @@ def get_base_context(request):
if password_expired and not request.path.endswith("password_change/"):
msg = str(_("Your password has expired. Please update it using this "
"<form>."))
+ form_str = _("form")
msg = msg.replace(
"<form>",
f'<a href="{reverse("password_change")}">'
- f'{_("form")} '
+ f'{form_str} '
f'<i class="fa fa-external-link" aria-hidden="true"></i>'
'</a>'
)
@@ -140,15 +147,16 @@ def get_base_context(request):
current_version = get_changelog_version()
if current_version != user_version and "changelog" not in dct["CURRENT_PATH"]:
if user_version:
- msg = str(_("Ishtar have been updated from version <old-version> to <new-version>. "
- "Check the <changelog>."))
+ msg = str(_("Since your last login, Ishtar has been updated from version <old-version> to "
+ "<new-version>. Check the <changelog>."))
else:
- msg = str(_("Ishtar have been updated to version <new-version>. Check the "
- "<changelog>."))
+ msg = str(_("Since your last login, Ishtar has been updated to version <new-version>. "
+ "Check the <changelog>."))
+ changelog_str = _("changelog")
msg = msg.replace(
"<changelog>",
f'<a href="{reverse("changelog")}">'
- f'{_("changelog")} '
+ f'{changelog_str} '
f'<i class="fa fa-external-link" aria-hidden="true"></i>'
f'</a>'
).replace("<old-version>", user_version).replace("<new-version>", current_version)
diff --git a/ishtar_common/views.py b/ishtar_common/views.py
index ba9be495a..a49dc7aee 100644
--- a/ishtar_common/views.py
+++ b/ishtar_common/views.py
@@ -1181,16 +1181,22 @@ class ChangelogView(IshtarMixin, LoginRequiredMixin, TemplateView):
page_number = int(kwargs.get("page", 0) or 0) or 1
if page_number == 1:
self.update_read_version()
- changelog_file = os.path.join(changelog_dir, f"changelog_{page_number}.md")
- if not os.path.exists(changelog_file):
+ list_dir = list([fle for fle in os.listdir(changelog_dir)
+ if fle.startswith("changelog_") and fle.endswith(".md")])
+ current_file = ""
+ for idx, fle in enumerate(reversed(sorted(list_dir))):
+ if (idx + 1) == page_number:
+ current_file = fle
+ break
+ if not current_file:
raise Http404()
+ changelog_file = os.path.join(changelog_dir, current_file)
with open(changelog_file, "r") as changelog:
context["changelog"] = markdown(changelog.read())
if page_number > 1:
context["next"] = page_number - 1
- changelog_file_next = os.path.join(changelog_dir, f"changelog_{page_number + 1}.md")
- if os.path.exists(changelog_file_next):
+ if len(list_dir) > page_number:
context["previous"] = page_number + 1
return context