From 41abb5273b6b0bcca79e7edb189831f4f601a9dc Mon Sep 17 00:00:00 2001
From: Helge Jung <hej@c3pb.de>
Date: Sat, 23 Sep 2023 11:12:18 +0200
Subject: [PATCH] backoffice/staticpages: remove 'new page' functionality
 (broken anyway)

---
 .../templates/backoffice/staticpage_list.html |  3 --
 src/backoffice/urls.py                        |  1 -
 src/backoffice/views/pages.py                 | 37 -------------------
 3 files changed, 41 deletions(-)

diff --git a/src/backoffice/templates/backoffice/staticpage_list.html b/src/backoffice/templates/backoffice/staticpage_list.html
index 5c427b75d..9825e896b 100644
--- a/src/backoffice/templates/backoffice/staticpage_list.html
+++ b/src/backoffice/templates/backoffice/staticpage_list.html
@@ -32,9 +32,6 @@
       </tbody>
     </table>
   </div>
-  <div class="card-footer">
-    <a href="{% url 'backoffice:page-new' %}">add a new page</a>
-  </div>
 </div>
 
 
diff --git a/src/backoffice/urls.py b/src/backoffice/urls.py
index 4c23b967f..615cb4cd1 100644
--- a/src/backoffice/urls.py
+++ b/src/backoffice/urls.py
@@ -43,7 +43,6 @@ urlpatterns = [
     path('conferences', misc.ConferenceSelectionView.as_view(), name='conference_selection'),
 
     path('pages', pages.PagesView.as_view(), name='pages'),
-    path('page/new', pages.NewPageView.as_view(), name='page-new'),
     path('page/<uuid:pk>', pages.PageView.as_view(), name='page-detail'),
     path('page/<uuid:pk>/delete', pages.PageDeleteView.as_view(), name='page-delete'),
     path('page/<uuid:pk>/delete-revision', pages.PageRevisionDeleteView.as_view(), name='page-revision-delete'),
diff --git a/src/backoffice/views/pages.py b/src/backoffice/views/pages.py
index 745d34450..e8de9ba74 100644
--- a/src/backoffice/views/pages.py
+++ b/src/backoffice/views/pages.py
@@ -58,43 +58,6 @@ class PagesView(ConferenceMixin, ListView):
         return context
 
 
-class NewPageView(ConferenceMixin, FormView):
-    permission_required = ('core.static_pages')
-    form_class = StaticPageCreateForm
-    template_name = 'backoffice/staticpage_form.html'
-
-    def post(self, request, *args, **kwargs):
-        try:
-            response = super().post(request, *args, **kwargs)
-        except IntegrityError:
-            messages.error(request, _('StaticPage__slug__duplicate'))
-            response = self.get(request, *args, **kwargs)
-
-        return response
-
-    def form_valid(self, form):
-        static_page = form.save(commit=False)
-        static_page.conference = self.conference
-        static_page.save()
-
-        revision = StaticPageRevision(page=static_page, title=form.cleaned_data['title'], author=self.request.user, body=form.cleaned_data['body'])
-        revision.save()
-        revision.set_public()
-        revision.save()
-
-        self.object = static_page
-
-        return super().form_valid(form)
-
-    def get_context_data(self, **kwargs):
-        context = super().get_context_data(**kwargs)
-        context['active_page'] = 'pages'
-        return context
-
-    def get_success_url(self, *args, **kwargs):
-        return reverse('backoffice:page-detail', kwargs={'pk': self.object.pk})
-
-
 class PageView(ConferenceMixin, UpdateView):
     permission_required = ('core.static_pages')
     form_class = StaticPageEditForm
-- 
GitLab