package com.psddev.cms.tool.page; import java.io.IOException; import javax.servlet.ServletException; import com.psddev.cms.db.Workflow; import com.psddev.cms.tool.PageServlet; import com.psddev.cms.tool.ToolPageContext; import com.psddev.dari.db.Query; import com.psddev.dari.db.State; import com.psddev.dari.util.RoutingFilter; @RoutingFilter.Path(application = "cms", value = "/admin/workflows.jsp") @SuppressWarnings("serial") public class AdminWorkflows extends PageServlet { @Override protected String getPermissionId() { return "area/admin/adminWorkflows"; } @Override protected void doService(ToolPageContext page) throws IOException, ServletException { Object selected = page.findOrReserve(Workflow.class); State selectedState = State.getInstance(selected); if (page.tryStandardUpdate(selected)) { return; } page.writeHeader(); page.writeStart("div", "class", "withLeftNav"); page.writeStart("div", "class", "leftNav"); page.writeStart("div", "class", "widget"); page.writeStart("h1", "class", "icon icon-object-workflow"); page.writeHtml(page.localize(AdminWorkflows.class, "title")); page.writeEnd(); page.writeStart("ul", "class", "links"); page.writeStart("li", "class", "new " + (selectedState.isNew() ? "selected" : "")); page.writeStart("a", "href", page.url(null)); page.writeHtml(page.localize(Workflow.class, "action.newType")); page.writeEnd(); page.writeEnd(); for (Workflow workflow : Query .from(Workflow.class) .sortAscending("name") .selectAll()) { page.writeStart("li", "class", workflow.equals(selected) ? "selected" : null); page.writeStart("a", "href", page.objectUrl(null, workflow)); page.writeObjectLabel(workflow); page.writeEnd(); page.writeEnd(); } page.writeEnd(); page.writeEnd(); page.writeEnd(); page.writeStart("div", "class", "main"); page.writeStart("div", "class", "widget"); page.writeStandardForm(selected); page.writeEnd(); page.writeEnd(); page.writeEnd(); page.writeFooter(); } }