diff --git a/src/plainui/jinja2/plainui/static_page.html b/src/plainui/jinja2/plainui/static_page.html index c2da82261904c649b3ecccbd289e6fe36487d9e6..ae5026bdc69b607548451d5672d4228df8568f91 100644 --- a/src/plainui/jinja2/plainui/static_page.html +++ b/src/plainui/jinja2/plainui/static_page.html @@ -13,6 +13,9 @@ <div class="alert alert-warning">{{ _("This page does not exist.") }}</div> {%- endif %} {%- else %} + {%- if revision_not_found %} + <div class="alert alert-info">{{ _("This revision does not exist.") }}</div> + {%- endif %} {{ titleMacro.title(title=page.title) }} <div class="row"> <div class="col m-2 d-flex justify-content-start"> diff --git a/src/plainui/views.py b/src/plainui/views.py index 88c96f6414b804148057e4db715d58870616bad4..c794cc9a2b1eb4c5ae915a50c335f8cc42f5693e 100644 --- a/src/plainui/views.py +++ b/src/plainui/views.py @@ -488,12 +488,18 @@ class StaticPageView(ConferenceRequiredMixin, TemplateView): context['page_can_create'] = False revision = self.request.GET.get('rev') if revision: - static_page_revision = static_page.revisions.get(revision=revision) - page_body = render_markdown(static_page_revision.body) - if can_edit: - context['edit_url'] = reverse('plainui:static_page_edit', kwargs={'page_slug': page_slug}) + ('?rev=' + revision if revision else '') - else: - context['edit_url'] = None + try: + static_page_revision = static_page.revisions.get(revision=revision) + page_body = render_markdown(static_page_revision.body) + if can_edit: + context["edit_url"] = reverse( + "plainui:static_page_edit", kwargs={"page_slug": page_slug} + ) + ("?rev=" + revision if revision else "") + else: + context["edit_url"] = None + except StaticPageRevision.DoesNotExist: + context["revision_not_found"] = True + page_body = static_page.body_html else: page_body = static_page.body_html context['edit_url'] = reverse('plainui:static_page_edit', kwargs={'page_slug': page_slug}) if can_edit else None