Search in sources :

Example 1 with Page

use of com.revolsys.ui.web.config.Page in project com.revolsys.open by revolsys.

the class PageBreadcrumbsView method serializeElement.

@Override
public void serializeElement(final XmlWriter out) {
    final Page page = (Page) getObject();
    out.startTag(HtmlElem.DIV);
    out.attribute(HtmlAttr.CLASS, this.cssClass);
    out.startTag(HtmlElem.UL);
    crumb(out, page, true);
    out.endTag(HtmlElem.UL);
    out.endTag(HtmlElem.DIV);
}
Also used : Page(com.revolsys.ui.web.config.Page)

Example 2 with Page

use of com.revolsys.ui.web.config.Page in project com.revolsys.open by revolsys.

the class OnLoadTag method doStartTag.

/**
 * Process the start tag.
 *
 * @return SKIP_BODY
 */
@Override
public int doStartTag() throws JspException {
    try {
        final WebUiContext context = WebUiContext.get();
        if (context != null) {
            final Page page = context.getPage();
            if (page != null) {
                final JspWriter out = this.pageContext.getOut();
                final Iterator onLoads = page.getOnLoads().iterator();
                out.print("onload=\"");
                while (onLoads.hasNext()) {
                    final String onLoad = (String) onLoads.next();
                    out.print(onLoad);
                    out.print("; ");
                }
                out.print("\"");
            }
        }
        return SKIP_BODY;
    } catch (final Throwable t) {
        throw new JspTagException(t);
    }
}
Also used : Iterator(java.util.Iterator) Page(com.revolsys.ui.web.config.Page) WebUiContext(com.revolsys.ui.web.config.WebUiContext) JspWriter(javax.servlet.jsp.JspWriter)

Example 3 with Page

use of com.revolsys.ui.web.config.Page in project com.revolsys.open by revolsys.

the class StylesTag method doStartTag.

/**
 * Process the start tag.
 *
 * @return SKIP_BODY
 * @throws JspException If there was an exception processing the tag.
 */
@Override
public int doStartTag() throws JspException {
    try {
        final WebUiContext context = WebUiContext.get();
        if (context != null) {
            final Page page = context.getPage();
            if (page != null) {
                final Collection styles = page.getStyles();
                String contextPath = context.getContextPath();
                if (contextPath.equals("/")) {
                    contextPath = "";
                }
                final JspWriter out = this.pageContext.getOut();
                final Iterator styleIter = styles.iterator();
                while (styleIter.hasNext()) {
                    final String style = (String) styleIter.next();
                    out.print("<link rel=\"stylesheet\" href=\"");
                    out.print(style);
                    out.println("\" type=\"text/css\" />");
                }
            }
        }
        final SiteNodeController controller = (SiteNodeController) this.pageContext.findAttribute("rsWebController");
        if (controller instanceof PageController) {
            final PageController page = (PageController) controller;
            serializeElements(page.getStyles());
        }
        return SKIP_BODY;
    } catch (final Throwable t) {
        log.error(t.getMessage(), t);
        throw new JspTagException(t.getMessage(), t);
    }
}
Also used : SiteNodeController(com.revolsys.ui.web.config.SiteNodeController) PageController(com.revolsys.ui.web.config.PageController) Iterator(java.util.Iterator) Collection(java.util.Collection) Page(com.revolsys.ui.web.config.Page) WebUiContext(com.revolsys.ui.web.config.WebUiContext) JspWriter(javax.servlet.jsp.JspWriter)

Example 4 with Page

use of com.revolsys.ui.web.config.Page in project com.revolsys.open by revolsys.

the class HtmlUiBuilder method newObjectAddPage.

public Element newObjectAddPage(final Map<String, Object> defaultValues, final String prefix, final String preInsertMethod) throws IOException, ServletException {
    final T object = newObject();
    final HttpServletRequest request = HttpServletUtils.getRequest();
    Property.set(object, defaultValues);
    // if (!canAddObject(request)) {
    // response.sendError(HttpServletResponse.SC_FORBIDDEN,
    // "No permission to edit " + getTypeName() + " #" + getId());
    // return null;
    // }
    final Map<String, Object> parameters = new HashMap<>();
    final String pageName = getName(prefix, "add");
    final Set<String> parameterNamesToSave = new HashSet<>();
    final Form form = newTableForm(object, pageName);
    for (final String param : parameterNamesToSave) {
        form.addSavedParameter(param, request.getParameter(param));
    }
    form.initialize(request);
    if (form.isPosted() && form.isMainFormTask()) {
        if (form.isValid()) {
            if ((Boolean) JavaBeanUtil.method(this, preInsertMethod, form, object)) {
                insertObject(object);
                parameters.put("message", "Saved");
                final Object id = Property.get(object, getIdPropertyName());
                parameters.put(getIdParameterName(), id);
                postInsert(object);
                final String viewName = getName(prefix, "view");
                final String url = getPageUrl(viewName, parameters);
                redirectAfterCommit(url);
                return new TabElementContainer();
            }
        }
    }
    final Page page = getPage(pageName);
    final String title = page.getExpandedTitle();
    request.setAttribute("title", title);
    final Menu actionMenu = new Menu();
    addMenuItem(actionMenu, prefix, "list", "Cancel", "_top").addProperty("buttonClass", "btn-danger");
    addMenuItem(actionMenu, prefix, "add", "Clear Fields").addProperty("buttonClass", "btn-warning");
    final String name = form.getName();
    final Menu saveMenu = new Menu("Save", "javascript:$('#" + name + "').submit()");
    saveMenu.addProperty("buttonClass", "btn-primary");
    actionMenu.addMenuItem(saveMenu);
    final ButtonsToolbarElement buttonsToolbar = new ButtonsToolbarElement(actionMenu);
    final ElementContainer view = new ElementContainer(form, buttonsToolbar);
    final TabElementContainer tabs = new TabElementContainer();
    tabs.add(title, view);
    return tabs;
}
Also used : ElementContainer(com.revolsys.ui.html.view.ElementContainer) TabElementContainer(com.revolsys.ui.html.view.TabElementContainer) HashMap(java.util.HashMap) LinkedHashMap(java.util.LinkedHashMap) UiBuilderObjectForm(com.revolsys.ui.html.form.UiBuilderObjectForm) HtmlUiBuilderObjectForm(com.revolsys.ui.html.form.HtmlUiBuilderObjectForm) Form(com.revolsys.ui.html.form.Form) Page(com.revolsys.ui.web.config.Page) TabElementContainer(com.revolsys.ui.html.view.TabElementContainer) HttpServletRequest(javax.servlet.http.HttpServletRequest) Menu(com.revolsys.ui.model.Menu) ButtonsToolbarElement(com.revolsys.ui.html.view.ButtonsToolbarElement) HashSet(java.util.HashSet)

Example 5 with Page

use of com.revolsys.ui.web.config.Page in project com.revolsys.open by revolsys.

the class HtmlUiBuilder method addObjectViewPage.

public void addObjectViewPage(final TabElementContainer tabs, final Object object, final String prefix) {
    final HttpServletRequest request = getRequest();
    if (object == null) {
        throw new PageNotFoundException();
    } else {
        final String pageName = getName(prefix, "view");
        final Page page = getPage(pageName);
        if (page == null) {
            throw new PageNotFoundException("Page not found " + pageName);
        } else {
            final List<KeySerializer> serializers = getSerializers(pageName, "view");
            final Element detailView = newDetailView(object, serializers);
            setPageTitle(request, pageName);
            final Menu actionMenu = new Menu();
            final Menu editMenu = addMenuItem(actionMenu, prefix, "edit", "Edit", "_top");
            if (editMenu != null) {
                editMenu.addProperty("buttonClass", "btn-primary");
            }
            final ElementContainer view = new ElementContainer(detailView);
            addMenuElement(view, actionMenu);
            final String tabId = getTypeName() + "_" + pageName;
            final String title = getPageTitle(pageName);
            tabs.add(tabId, title, view);
        }
    }
}
Also used : HttpServletRequest(javax.servlet.http.HttpServletRequest) PageNotFoundException(com.revolsys.ui.web.exception.PageNotFoundException) ElementContainer(com.revolsys.ui.html.view.ElementContainer) TabElementContainer(com.revolsys.ui.html.view.TabElementContainer) ButtonsToolbarElement(com.revolsys.ui.html.view.ButtonsToolbarElement) Element(com.revolsys.ui.html.view.Element) Page(com.revolsys.ui.web.config.Page) Menu(com.revolsys.ui.model.Menu) KeySerializer(com.revolsys.ui.html.serializer.key.KeySerializer)

Aggregations

Page (com.revolsys.ui.web.config.Page)14 WebUiContext (com.revolsys.ui.web.config.WebUiContext)5 Menu (com.revolsys.ui.model.Menu)4 PageNotFoundException (com.revolsys.ui.web.exception.PageNotFoundException)4 HttpServletRequest (javax.servlet.http.HttpServletRequest)4 ButtonsToolbarElement (com.revolsys.ui.html.view.ButtonsToolbarElement)3 ElementContainer (com.revolsys.ui.html.view.ElementContainer)3 TabElementContainer (com.revolsys.ui.html.view.TabElementContainer)3 SiteNodeController (com.revolsys.ui.web.config.SiteNodeController)3 Iterator (java.util.Iterator)3 JspWriter (javax.servlet.jsp.JspWriter)3 Form (com.revolsys.ui.html.form.Form)2 HtmlUiBuilderObjectForm (com.revolsys.ui.html.form.HtmlUiBuilderObjectForm)2 UiBuilderObjectForm (com.revolsys.ui.html.form.UiBuilderObjectForm)2 PageController (com.revolsys.ui.web.config.PageController)2 HashMap (java.util.HashMap)2 HashSet (java.util.HashSet)2 LinkedHashMap (java.util.LinkedHashMap)2 ServletException (javax.servlet.ServletException)2 KeySerializer (com.revolsys.ui.html.serializer.key.KeySerializer)1