Merge branch 'next' into image-management
[Sone.git] / src / main / java / net / pterodactylus / sone / web / DeleteSonePage.java
index 4cccc63..abe26ea 100644 (file)
@@ -17,6 +17,9 @@
 
 package net.pterodactylus.sone.web;
 
+import net.pterodactylus.sone.data.Sone;
+import net.pterodactylus.sone.web.page.Page.Request.Method;
+import net.pterodactylus.util.template.DataProvider;
 import net.pterodactylus.util.template.Template;
 
 /**
@@ -37,7 +40,7 @@ public class DeleteSonePage extends SoneTemplatePage {
         *            The Sone web interface
         */
        public DeleteSonePage(Template template, WebInterface webInterface) {
-               super("deleteSone.html", template, "Page.DeleteSone.Title", webInterface);
+               super("deleteSone.html", template, "Page.DeleteSone.Title", webInterface, true);
        }
 
        //
@@ -48,20 +51,15 @@ public class DeleteSonePage extends SoneTemplatePage {
         * {@inheritDoc}
         */
        @Override
-       protected void processTemplate(Request request, Template template) throws RedirectException {
-               super.processTemplate(request, template);
-       }
-
-       //
-       // SONETEMPLATEPAGE METHODS
-       //
-
-       /**
-        * {@inheritDoc}
-        */
-       @Override
-       protected boolean requiresLogin() {
-               return true;
+       protected void processTemplate(Request request, DataProvider dataProvider) throws RedirectException {
+               super.processTemplate(request, dataProvider);
+               if (request.getMethod() == Method.POST) {
+                       if (request.getHttpRequest().isPartSet("deleteSone")) {
+                               Sone currentSone = getCurrentSone(request.getToadletContext());
+                               webInterface.getCore().deleteSone(currentSone);
+                       }
+                       throw new RedirectException("index.html");
+               }
        }
 
 }