Example usage for org.apache.wicket.feedback FeedbackMessage isRendered

List of usage examples for org.apache.wicket.feedback FeedbackMessage isRendered

Introduction

In this page you can find the example usage for org.apache.wicket.feedback FeedbackMessage isRendered.

Prototype

public final boolean isRendered() 

Source Link

Document

Gets whether or not this message has been rendered

Usage

From source file:com.evolveum.midpoint.web.page.PageBase.java

License:Apache License

@Override
protected void onAfterRender() {
    super.onAfterRender();
    //we try to remove messages (and operation results) that were stored in session, but only
    //if all session messages were already rendered.
    boolean allRendered = true;
    FeedbackMessages messages = getSession().getFeedbackMessages();
    Iterator<FeedbackMessage> iterator = messages.iterator();
    while (iterator.hasNext()) {
        FeedbackMessage message = iterator.next();
        if (!message.isRendered()) {
            allRendered = false;//from  w  w w.  jav a 2 s  . c om
            break;
        }
    }

    if (getSession().getFeedbackMessages().size() > 0 && allRendered) {
        getSession().getFeedbackMessages().clear();
    }
}

From source file:org.dcm4chee.web.common.markup.modal.FeedbackMessageWindow.java

License:LGPL

@Override
protected boolean needAutoOpen() {
    FeedbackMessages fbMessages = getSession().getFeedbackMessages();
    FeedbackMessage fbMsg;
    boolean hasMsg = false;
    for (final Iterator<FeedbackMessage> iter = fbMessages.iterator(); iter.hasNext();) {
        fbMsg = iter.next();//from   ww  w . ja v a2s  .  com
        if (fbMsg.getReporter() != null && !fbMsg.isRendered()) {
            hasMsg = true;
            messages.add(fbMsg);
        }
    }
    return hasMsg;
}

From source file:org.hippoecm.frontend.plugins.standards.panelperspective.breadcrumb.PanelPluginBreadCrumbPanel.java

License:Apache License

public PanelPluginBreadCrumbPanel(final String id, final IBreadCrumbModel breadCrumbModel) {
    super(id, breadCrumbModel);
    // add feedback panel to show errors
    feedback = new FeedbackPanel("feedback", new ContainerFeedbackMessageFilter(this) {
        @Override/*w  w w . ja  v  a2s  .  co  m*/
        public boolean accept(final FeedbackMessage message) {
            return !message.isRendered() && super.accept(message);
        }
    });
    feedback.setOutputMarkupId(true);
    add(feedback);
}

From source file:org.onehippo.forge.settings.management.TabPanel.java

License:Apache License

public TabPanel(final String id, final IBreadCrumbModel breadCrumbModel, final IPluginContext context,
        final IPluginConfig config, final List<FeatureConfigPanel> features) {
    super(id);//from   w  ww.  ja v a 2  s.com
    this.config = config;
    this.context = context;
    this.breadCrumbModel = breadCrumbModel;
    this.features = new ArrayList<FeatureConfigPanel>();
    if (features != null) {
        this.features.addAll(features);
    }

    // create feedback panel to show errors
    final FeedbackPanel feedback = new FeedbackPanel("feedback", new IFeedbackMessageFilter() {
        private static final long serialVersionUID = 1L;

        @Override
        public boolean accept(final FeedbackMessage message) {
            return !message.isRendered();
        }
    });
    feedback.setOutputMarkupId(true);

    final Form form = new Form("form");

    form.add(new AjaxButton("save-button", form) {
        private static final long serialVersionUID = 1L;

        @Override
        protected void onSubmit(final AjaxRequestTarget target, final Form<?> form) {
            for (FeatureConfigPanel feature : features) {
                feature.save();
            }
            target.add(form);
            info(getString("data-saved"));
            target.add(feedback);
        }

        @Override
        protected void onError(final AjaxRequestTarget target, final Form<?> form) {
            target.add(form);
            target.add(feedback);
        }
    });

    form.add(new AjaxButton("cancel-button") {
        private static final long serialVersionUID = 1L;

        @Override
        protected void onSubmit(AjaxRequestTarget target, Form form) {
            for (FeatureConfigPanel feature : features) {
                feature.cancel();
            }
            try {
                UserSession.get().getJcrSession().refresh(false);
            } catch (RepositoryException e) {
                log.error("An exception occurred while trying to refresh the session: {}", e);
            }
            // one up
            List<IBreadCrumbParticipant> l = breadCrumbModel.allBreadCrumbParticipants();
            breadCrumbModel.setActive(l.get(l.size() - 2));
        }
    }.setDefaultFormProcessing(false));

    form.add(feedback);

    // add a ListView containing all features to the form
    final ListView<FeatureConfigPanel> listView = new ListView<FeatureConfigPanel>("feature-list", features) { // or use a provider
        private static final long serialVersionUID = 1L;

        @Override
        protected void populateItem(final ListItem<FeatureConfigPanel> item) {
            FeatureConfigPanel feature = item.getModelObject();
            item.add(feature);
        }
    };
    listView.setRenderBodyOnly(true);
    form.add(listView);

    add(form);
}

From source file:org.sakaiproject.oauth.tool.pages.SakaiPage.java

License:Educational Community License

private void init() {
    FeedbackPanel feedbackPanel = new FeedbackPanel("feedback") {
        @Override//  www . ja  v  a  2 s .c o  m
        protected Component newMessageDisplayComponent(final String id, final FeedbackMessage message) {
            if (message.getLevel() == FeedbackMessage.INFO)
                add(new SimpleAttributeModifier("class", "success"));
            else
                add(new SimpleAttributeModifier("class", "alertMessage"));

            return super.newMessageDisplayComponent(id, message);
        }

        // If we don't link up visibility to having messages, then when changing the filter after displaying
        // the message, the message disappears but they surrounding box remains.
        public boolean isVisible() {
            return anyMessage();
        }
    };
    feedbackPanel.setFilter(new IFeedbackMessageFilter() {
        public boolean accept(FeedbackMessage message) {
            return !message.isRendered();
        }
    });
    add(feedbackPanel);
    menu = new RepeatingView("menu") {
        /**
         * Automatically hide the repeating view if there is no element present in there.
         * @return true if there is at least one child element, false otherwise
         */
        @Override
        public boolean isVisible() {
            return iterator().hasNext() && super.isVisible();
        }
    };
    add(menu);
}

From source file:pl.doa.wicket.ui.feedback.FeedbackLabel.java

License:Apache License

/**
 * Set the content of this FeedbackLabel, depending on if the component has
 * a FeedbackMessage./*w w w. j a  v  a2  s .  c o m*/
 * <p/>
 * The HTML class attribute will be filled with the error level of the
 * feedback message. That way, you can easily style different messages
 * differently. Examples:
 * <p/>
 * class = "feedbacklabel INFO" class = "feedbacklabel ERROR" class =
 * "feedbacklabel DEBUG" class = "feedbacklabel FATAL"
 *
 * @see Component
 */
@Override
protected void onBeforeRender() {
    super.onBeforeRender();
    this.setDefaultModel(null);

    FeedbackMessages messages = component.getFeedbackMessages();
    if (messages != null) {
        if (this.text != null) {
            this.setDefaultModel(text);
        } else {
            for (FeedbackMessage message : messages) {
                // rendering first available message
                if (message.isRendered()) {
                    continue;
                }
                message.markRendered();
                setDefaultModel(new Model<Serializable>(message.getMessage()));
                break;
            }
        }

        this.add(new AttributeModifier("class", new Model(getCssClass(messages.first()))));
    } else {
        this.setDefaultModel(null);
    }
}

From source file:ro.nextreports.server.web.common.jgrowl.JGrowlAjaxBehavior.java

License:Apache License

private String renderFeedback() {
    //   this.getComponent().getFeedbackMessage();
    FeedbackMessages fm = Session.get().getFeedbackMessages();

    Iterator<FeedbackMessage> iter = fm.iterator();
    StringBuilder sb = new StringBuilder();
    while (iter.hasNext()) {
        FeedbackMessage message = iter.next();
        if ((message.getReporter() != null) || message.isRendered()) {
            // if a component-level message, don't show it
            continue;
        }/*from   www.  j a v  a2  s.c om*/

        // if we are info stick set to info else set to message level
        String cssClassSuffix = "";
        switch (message.getLevel()) {
        case INFO_STICKY:
        case INFO_FADE:
            cssClassSuffix = "INFO";
            break;
        case ERROR_STICKY:
            cssClassSuffix = "ERROR";
            break;
        default:
            cssClassSuffix = message.getLevelAsString();
            break;
        }
        Serializable serializable = message.getMessage();

        // grab the message, if it's null use an empty string
        String msg = (serializable == null) ? StringUtils.EMPTY : serializable.toString();

        sb.append("$.jGrowl(\"").append(escape(msg)).append('\"');
        sb.append(", {");
        // set the css style, i.e. the theme
        sb.append("theme: \'jgrowl-").append(cssClassSuffix).append("\'");
        // set afterOpen
        String afterOpen = getAfterOpenJavaScript();
        if (StringUtils.isNotEmpty(afterOpen)) {
            sb.append(", afterOpen: " + getAfterOpenJavaScript());
        }
        // set sticky
        if (message.getLevel() > FeedbackMessage.INFO) {
            sb.append(", sticky: true");
        } else {
            // default is 3000 (3sec)
            sb.append(", life: 5000");
        }

        sb.append("});");

        message.markRendered();
    }

    return sb.toString();
}