package com.psddev.cms.tool.page; import java.io.IOException; import java.util.UUID; import javax.servlet.ServletException; import com.psddev.cms.db.History; import com.psddev.cms.tool.PageServlet; import com.psddev.cms.tool.ToolPageContext; import com.psddev.dari.db.Query; import com.psddev.dari.util.RoutingFilter; @RoutingFilter.Path(application = "cms", value = "/historyEdit") @SuppressWarnings("serial") public class HistoryEdit extends PageServlet { @Override protected String getPermissionId() { return null; } @Override protected void doService(final ToolPageContext page) throws IOException, ServletException { History history = Query .from(History.class) .where("_id = ?", page.param(UUID.class, "id")) .first(); if (page.isFormPost()) { try { history.setName(page.param(String.class, "name")); history.save(); page.writeStart("script", "type", "text/javascript"); page.write("window.location = window.location;"); page.writeEnd(); return; } catch (Exception error) { page.getErrors().add(error); } } page.writeHeader(); page.writeStart("div", "class", "widget"); page.writeStart("h1", "class", "icon icon-object-history"); page.writeHtml(page.localize(HistoryEdit.class, "title")); page.writeEnd(); page.include("/WEB-INF/errors.jsp"); page.writeStart("form", "method", "post", "action", page.url("")); page.writeStart("div", "class", "inputContainer"); page.writeStart("div", "class", "inputLabel"); page.writeStart("label", "for", page.createId()); page.writeHtml(page.localize(HistoryEdit.class, "label.name")); page.writeEnd(); page.writeEnd(); page.writeStart("div", "class", "inputSmall"); page.writeElement("input", "type", "text", "id", page.getId(), "name", "name", "value", history.getName()); page.writeEnd(); page.writeEnd(); page.writeStart("div", "class", "actions"); page.writeStart("button", "class", "icon icon-action-save", "name", "action-save", "value", "true"); page.writeHtml(page.localize(HistoryEdit.class, "action.save")); page.writeEnd(); page.writeEnd(); page.writeEnd(); page.writeEnd(); page.writeFooter(); } }