Example usage for org.apache.wicket.markup.html.form RadioChoice RadioChoice

List of usage examples for org.apache.wicket.markup.html.form RadioChoice RadioChoice

Introduction

In this page you can find the example usage for org.apache.wicket.markup.html.form RadioChoice RadioChoice.

Prototype

public RadioChoice(String id, IModel<T> model, IModel<? extends List<? extends T>> choices,
        IChoiceRenderer<? super T> renderer) 

Source Link

Document

Constructor

Usage

From source file:com.userweave.module.methoden.questionnaire.page.grouping.rating.RatingGroupingPanel.java

License:Open Source License

public RatingGroupingPanel(String id, Integer numberOfRatingSteps, T group, final Locale locale,
        GroupAddedCallback groupAddedCallback, boolean groupMissingValues) {
    super(id, group, locale, groupAddedCallback);

    this.group = group;

    setDefaultModel(new CompoundPropertyModel(group));

    final FormComponent lowerBoundTextField = new TextField("lowerBound") {
        @Override/*from  w w  w .  j  a v a2 s.  c  om*/
        public boolean isVisible() {
            return operator != null && !operator.equals(Operator.LESS)
                    && !operator.equals(Operator.MISSING_VALUE);
        }

    };

    setValidation(lowerBoundTextField, numberOfRatingSteps);

    add(lowerBoundTextField);

    final FormComponent upperBoundTextField = new TextField("upperBound") {
        @Override
        public boolean isVisible() {
            return operator != null && !operator.equals(Operator.GREATER)
                    && !operator.equals(Operator.MISSING_VALUE);
        }
    };

    setValidation(upperBoundTextField, numberOfRatingSteps);

    add(upperBoundTextField);

    final Component and = new WebMarkupContainer("and") {
        @Override
        public boolean isVisible() {
            return operator != null && operator.equals(Operator.BETWEEN)
                    && !operator.equals(Operator.MISSING_VALUE);
        }
    }.setOutputMarkupPlaceholderTag(true);

    add(and);

    List<Operator> operators = new ArrayList<Operator>();
    for (Operator op : Operator.values()) {
        if (!op.equals(Operator.MISSING_VALUE) || groupMissingValues) {
            operators.add(op);
        }
    }

    add(new RadioChoice("operator", new PropertyModel(this, "operator"), operators, new ChoiceRenderer("name"))
            .setRequired(true).add(new AjaxFormChoiceComponentUpdatingBehavior() {
                @Override
                protected void onUpdate(AjaxRequestTarget target) {
                    target.addComponent(lowerBoundTextField);
                    target.addComponent(upperBoundTextField);
                    target.addComponent(and);
                }
            })

    );

}

From source file:de.alpharogroup.wicket.components.factory.ComponentFactory.java

License:Apache License

/**
 * Factory method for create a new {@link RadioChoice}.
 *
 * @param <T>//from www.j a v a 2  s . c  o  m
 *            the generic type of the model
 * @param id
 *            the id
 * @param model
 *            the model
 * @param choices
 *            The list of choices in the radio choice
 * @param renderer
 *            the renderer
 * @return the new {@link RadioChoice}
 */
public static <T> RadioChoice<T> newRadioChoice(final String id, final IModel<T> model,
        final List<? extends T> choices, final IChoiceRenderer<? super T> renderer) {
    final RadioChoice<T> radioChoice = new RadioChoice<>(id, model, choices, renderer);
    radioChoice.setOutputMarkupId(true);
    return radioChoice;
}

From source file:hsa.awp.admingui.edit.event.OccurrencePanel.java

License:Open Source License

/**
 * Constructor for editing an {@link Occurrence}.
 *
 * @param id       wicket id/*  w  w w  .  j  a  v a  2  s .  c o  m*/
 * @param evt      event whose {@link Occurrence} is edited
 * @param toUpdate component to update.
 * @param occ      {@link Occurrence} which is edited.
 */
public OccurrencePanel(String id, final Event evt, WebMarkupContainer toUpdate, Occurrence occ) {

    super(id);

    this.toUpdate = toUpdate;
    if (occ == null) {
        this.occurrence = Occurrence.getInstance(controller.getActiveMandator(getSession()));
    } else {
        this.occurrence = occ;
    }
    this.event = evt;

    if (!occurrence.getId().equals(0L)) {
        occurrence = controller.updateOccurrence(occurrence);
    }

    Form<Occurrence> form = new Form<Occurrence>("event.occurrencePanel.form");
    add(form);

    feedbackPanel = new FeedbackPanel("event.occurrencePanel.feedbackPanel");
    feedbackPanel.setOutputMarkupId(true);
    form.add(feedbackPanel);

    List<OccurrenceType> occurrenceType = new LinkedList<OccurrenceType>();
    for (OccurrenceType type : OccurrenceType.values()) {
        occurrenceType.add(type);
    }

    ChoiceRenderer<OccurrenceType> choiceRenderer = new ChoiceRenderer<OccurrenceType>("desc");

    occurrenceTypeChoice = new RadioChoice<OccurrenceType>("event.occurrencePanel.occurrenceTypeChoice",
            new Model<OccurrenceType>(), occurrenceType, choiceRenderer);
    if (occurrence != null && occurrence.getType() != null) {
        occurrenceTypeChoice.setModelObject(occurrence.getType());
    }

    form.add(occurrenceTypeChoice);

    startDateField = new DateTimeField("event.occurrencePanel.start", new Model<Date>());
    if (occurrence != null && occurrence.getStartDate() != null) {
        startDateField.setModelObject(occurrence.getStartDate().getTime());
    }
    form.add(startDateField);

    endDateField = new DateTimeField("event.occurrencePanel.end", new Model<Date>());
    if (occurrence != null && occurrence.getEndDate() != null) {
        endDateField.setModelObject(occurrence.getEndDate().getTime());
    }
    form.add(endDateField);

    informationField = new TextField<String>("event.occurencePanel.information",
            new Model<String>(occurrence.getInformation()));
    form.add(informationField);

    form.add(new AjaxButton("event.occurrencePanel.submit") {
        /**
         * unique serialization id.
         */
        private static final long serialVersionUID = -3346661392645147244L;

        @Override
        protected void onError(AjaxRequestTarget target, Form<?> form) {

            target.addComponent(feedbackPanel);
        }

        @Override
        protected void onSubmit(AjaxRequestTarget target, Form<?> form) {

            if (OccurrencePanel.this.toUpdate != null) {
                target.addComponent(OccurrencePanel.this.toUpdate);
            }
            target.addComponent(feedbackPanel);

            boolean error = false;

            if (occurrenceTypeChoice.getModelObject() != null) {
                occurrence.setType(occurrenceTypeChoice.getModelObject());
            } else {
                feedbackPanel.error("Kein Typ gegeben");
                error = true;
            }

            if (startDateField.getModelObject() == null) {
                feedbackPanel.error("Ein Startdatum muss gegeben sein");
                error = true;
            }

            if (!error) {
                getParent().setVisible(false);
                target.addComponent(getParent());
                getParent().setOutputMarkupId(true);

                Calendar start = Calendar.getInstance();
                start.setTime(startDateField.getModelObject());
                Calendar end = Calendar.getInstance();
                end.setTime(endDateField.getModelObject());
                occurrence.setInterval(start, end);
                occurrence.setInformation(informationField.getModelObject());

                controller.writeOccurrenceToEvent(occurrence, event, getSession());
            }
        }
    });
}

From source file:hsa.awp.admingui.util.UserSelectPanel.java

License:Open Source License

/**
 * Constructor for creating a Panel to select a user.
 *
 * @param id wicket:id/*ww w  .  jav a 2s. c o m*/
 */
public UserSelectPanel(String id) {

    super(id);

    Form<Object> form = new Form<Object>("userSelectPanel.form");
    add(form);

    usersFound = Collections.emptyList();

    userFindFeedbackPanel = new FeedbackPanel("userSelectPanel.feedbackPanel");
    userFindFeedbackPanel.setFilter(new ContainerFeedbackMessageFilter(form));
    form.add(userFindFeedbackPanel);

    usernameInput = new TextField<String>("userSelectPanel.username", new Model<String>());
    form.add(usernameInput);

    final LoadableDetachedModel<List<SingleUser>> userListModel = new LoadableDetachedModel<List<SingleUser>>() {
        @Override
        protected List<SingleUser> load() {
            return usersFound;
        }
    };

    userFoundRadioChoice = new RadioChoice<SingleUser>("userSelectPanel.userFound", new Model<SingleUser>(),
            userListModel, new IChoiceRenderer<SingleUser>() {
                @Override
                public Object getDisplayValue(SingleUser object) {
                    return object.getName() + " (" + object.getUsername() + ")";
                }

                @Override
                public String getIdValue(SingleUser object, int index) {
                    return String.valueOf(index);
                }
            });
    form.add(userFoundRadioChoice);

    submitButton = new Button("userSelectPanel.submitButton", new Model<String>(getSubmitButtonText())) {
        /**
         * unique serialization id.
         */
        private static final long serialVersionUID = 1127918285241155983L;

        @Override
        public void onSubmit() {

            Session.get().getFeedbackMessages().clear();

            if (usersFound == null) {
                userFindFeedbackPanel.error("Kein Benutzer ausgew&uuml;hlt");
            }

            if (onSendSubmit(userFoundRadioChoice.getModelObject())) {
                usernameInput.clearInput();
                userFoundRadioChoice.clearInput();
            }

            if (getResponsePage() != null) {
                setResponsePage(getResponsePage());
            }

        }
    };
    form.add(submitButton);
    submitButton.setVisible(false);

    searchUserButton = new Button("userSelectPanel.searchuser", new Model<String>(getFindUserButtonText())) {
        /**
         * unique serialization id.
         */
        private static final long serialVersionUID = 18453249101L;

        @Override
        public void onSubmit() {

            userFoundRadioChoice.clearInput();
            submitButton.setVisible(false);

            String searchString = usernameInput.getModelObject();
            if (searchString == null) {
                return;
            }

            if (isSearchInvalid(searchString)) {
                userFindFeedbackPanel.error("Ungltige Suche");
                return;
            }

            usersFound = controller.searchForUser(searchString);

            if (usersFound == null) {
                Session.get().getFeedbackMessages().clear();
                userFindFeedbackPanel.error("Kein Benutzer gefunden");
            } else {

                Comparator<SingleUser> singleUserComparator = new Comparator<SingleUser>() {
                    @Override
                    public int compare(SingleUser singleUser, SingleUser singleUser1) {
                        return singleUser.getName().compareTo(singleUser1.getName());
                    }
                };

                Collections.sort(usersFound, singleUserComparator);

                userListModel.detach();
                submitButton.setVisible(true);
            }
        }
    };
    form.add(searchUserButton);
}

From source file:nl.knaw.dans.dccd.web.upload.UploadIntroPage.java

License:Apache License

public UploadIntroPage() {
    uploadSelection = new UploadTypeSelection();

    Form form = new Form("form");
    add(form);//w w  w.j a  v  a  2  s  .  c om

    // TODO use html formatting for the "hint" texts in the properties file
    // Place it in a Label and use label.setEscapeModelStrings(false);
    form.add(new Label("hint_text", getString("hint")).setEscapeModelStrings(false));

    // upload type selection as Choice
    RadioChoice choice = new RadioChoice("selection", new PropertyModel(uploadSelection, "selection"),
            uploadSelection.getTypeList(), new EnumChoiceRenderer(this, null)) {
        private static final long serialVersionUID = -784957323409770888L;

        // NOTE disable the manual creation option, we don't have it YET
        // NOTE HARDCODED  to be the second option!
        @Override
        protected boolean isDisabled(Object object, int index, String selected) {
            if (index > 0)
                return true;
            else
                return false;
        }

    };
    choice.setEscapeModelStrings(false);
    form.add(choice);

    // Next
    form.add(new SubmitLink("next") {
        private static final long serialVersionUID = -4179679565306357773L;

        @Override
        public void onSubmit() {
            //logger.info("Next onSubmit is called");
            //logger.info("OnSubmit with selection: " + uploadSelection.getSelectionAsString());
            next();
        }
    });

    // Cancel
    form.add(new SubmitLink("cancel") {
        private static final long serialVersionUID = -3928218818189732662L;

        @Override
        public void onSubmit() {
            //logger.info("Cancel onSubmit is called");
            cancel();
        }
    });
}

From source file:org.apache.openmeetings.web.components.admin.users.UserForm.java

License:Apache License

/**
 * Add the fields to the form/*from   w  w w. j  a va  2s.c om*/
 */
private void addFormFields() {

    RequiredTextField<String> login = new RequiredTextField<String>("login");
    login.add(new StringValidator(4, null));
    // login.setLabel(new Model<String>("testname"));
    add(login);

    passwordField = new PasswordTextField("password");
    add(passwordField);
    passwordField.setRequired(false);

    add(new DropDownChoice<Long>("salutations_id", getSalutationsIds(), new IChoiceRenderer<Long>() {
        private static final long serialVersionUID = 1L;

        public Object getDisplayValue(Long id) {
            return getSaluationLabelById(id);
        }

        public String getIdValue(Long id, int index) {
            return "" + id;
        }

    }));

    add(new TextField<String>("firstname"));
    add(new TextField<String>("lastname"));

    add(new DropDownChoice<OmTimeZone>("omTimeZone", Application.getBean(OmTimeZoneDao.class).getOmTimeZones(),
            new ChoiceRenderer<OmTimeZone>("frontEndLabel", "jname")));

    add(new DropDownChoice<Long>("language_id", getFieldLanguageIds(), new IChoiceRenderer<Long>() {
        private static final long serialVersionUID = 1L;

        public Object getDisplayValue(Long id) {
            return getFieldLanguageLabelById(id);
        }

        public String getIdValue(Long id, int index) {
            return "" + id;
        }

    }));

    add(DateLabel.forDatePattern("starttime", "dd.MM.yyyy HH:mm:ss"));
    add(DateLabel.forDatePattern("updatetime", "dd.MM.yyyy HH:mm:ss"));

    add(new CheckBox("forceTimeZoneCheck"));
    RequiredTextField<String> email = new RequiredTextField<String>("adresses.email");
    // email.setLabel(new Model<String>("testemail"));
    email.add(EmailAddressValidator.getInstance());
    add(email);
    add(new TextField<String>("adresses.phone"));
    add(new CheckBox("sendSMS"));
    DateTextField age = new DateTextField("age");
    DatePicker datePicker = new DatePicker() {
        private static final long serialVersionUID = 1L;

        @Override
        protected String getAdditionalJavaScript() {
            return "${calendar}.cfg.setProperty(\"navigator\",true,false); ${calendar}.render();";
        }
    };
    datePicker.setShowOnFieldClick(true);
    datePicker.setAutoHide(true);
    age.add(datePicker);
    add(age);
    add(new TextField<String>("adresses.street"));
    add(new TextField<String>("adresses.additionalname"));
    add(new TextField<String>("adresses.zip"));
    add(new TextField<String>("adresses.town"));
    add(new DropDownChoice<State>("adresses.states", Application.getBean(StateDao.class).getStates(),
            new ChoiceRenderer<State>("name", "state_id")));

    final String field159 = WebSession.getString(159);
    final String field160 = WebSession.getString(160);

    add(new DropDownChoice<Integer>("status", Arrays.asList(0, 1), new IChoiceRenderer<Integer>() {

        private static final long serialVersionUID = 1L;

        public Object getDisplayValue(Integer id) {
            if (id.equals(0)) {
                return field159;
            } else if (id.equals(1)) {
                return field160;
            }
            return null;
        }

        public String getIdValue(Integer id, int index) {
            return "" + id;
        }

    }));

    final String field166 = WebSession.getString(166);
    final String field167 = WebSession.getString(167);
    final String field168 = WebSession.getString(168);
    final String field1311 = WebSession.getString(1311);

    add(new DropDownChoice<Long>("level_id", Arrays.asList(1L, 2L, 3L, 4L), new IChoiceRenderer<Long>() {

        private static final long serialVersionUID = 1L;

        public Object getDisplayValue(Long id) {
            if (id.equals(1L)) {
                return field166;
            } else if (id.equals(2L)) {
                return field167;
            } else if (id.equals(3L)) {
                return field168;
            } else if (id.equals(4L)) {
                return field1311;
            }
            return null;
        }

        public String getIdValue(Long id, int index) {
            return "" + id;
        }

    }));

    add(new TextArea<String>("adresses.comment"));

    List<Organisation> orgList = Application.getBean(OrganisationManager.class).getOrganisations(3L);
    List<Organisation_Users> orgUsers = new ArrayList<Organisation_Users>(orgList.size());
    for (Organisation org : orgList) {
        orgUsers.add(new Organisation_Users(org));
    }
    ListMultipleChoice<Organisation_Users> orgChoiceList = new ListMultipleChoice<Organisation_Users>(
            "organisation_users", orgUsers,
            new ChoiceRenderer<Organisation_Users>("organisation.name", "organisation.organisation_id"));
    add(orgChoiceList);

    final String field1160 = WebSession.getString(1160); // 1160 everybody
    final String field1168 = WebSession.getString(1168); // 1168 contact
    final String field1169 = WebSession.getString(1169); // 1169 nobody

    add(new RadioChoice<Long>("community_settings", new IModel<Long>() {
        private static final long serialVersionUID = 1L;

        public Long getObject() {
            if (user.getShowContactData() != null && user.getShowContactData()) {
                return 1L;
            } else if (user.getShowContactDataToContacts() != null && user.getShowContactDataToContacts()) {
                return 2L;
            }
            return 3L;
        }

        public void setObject(Long choice) {
            if (choice.equals(1L)) {
                user.setShowContactData(true);
                user.setShowContactDataToContacts(false);
            } else if (choice.equals(2L)) {
                user.setShowContactData(false);
                user.setShowContactDataToContacts(true);
            } else {
                user.setShowContactData(false);
                user.setShowContactDataToContacts(false);
            }
        }

        public void detach() {
        }
    }, Arrays.asList(1L, 2L, 3L), new IChoiceRenderer<Long>() {
        private static final long serialVersionUID = 1L;

        public Object getDisplayValue(Long id) {
            if (id.equals(1L)) {
                return field1160;
            } else if (id.equals(2L)) {
                return field1168;
            } else {
                return field1169;
            }
        }

        public String getIdValue(Long id, int index) {
            return "" + id;
        }

    }));

    add(new TextArea<String>("userOffers"));
    add(new TextArea<String>("userSearchs"));
}

From source file:org.cipango.ims.hss.web.privateid.EditPrivateIdPage.java

License:Apache License

@SuppressWarnings("unchecked")
public EditPrivateIdPage(PageParameters pageParameters) {
    super(pageParameters);
    _key = pageParameters.getString("id");
    _subscriptionId = pageParameters.getString("subscription");
    PrivateIdentity privateIdentity = null;
    if (_key != null) {
        privateIdentity = _dao.findById(_key);
        if (privateIdentity == null) {
            error(MapVariableInterpolator.interpolate(getString(getPrefix() + ".error.notFound"),
                    new MicroMap("identity", _key)));
            _key = null;//from  ww  w .  j a va2  s .c om
        }
    }
    DaoDetachableModel model = new DaoDetachableModel(privateIdentity);

    if (isAdding()) {
        _title = getString(getPrefix() + ".add.title");
    } else {
        _title = getString(getPrefix() + ".edit.title", model);
    }

    Form form = new Form("form", new CompoundPropertyModel(model));
    add(form);

    form.add(new Label("title", privateIdentity == null ? "" : privateIdentity.getIdentity()));
    form.add(new RequiredTextField<String>("identity", String.class));

    _pwdDisplayable = isPwdDisplayableAsString(privateIdentity);
    RadioChoice passwordEdit = new RadioChoice("passwordEdit", new Model(_pwdDisplayable),
            Arrays.asList(new Boolean[] { true, false }), new ChoiceRenderer<Boolean>() {
                @Override
                public Object getDisplayValue(Boolean id) {
                    if (id)
                        return getString("privateId.passwordEdit.string");
                    else
                        return getString("privateId.passwordEdit.hexadecimal");
                }
            });
    form.add(passwordEdit);
    passwordEdit.add(new AjaxFormChoiceComponentUpdatingBehavior() {
        @Override
        protected void onUpdate(AjaxRequestTarget target) {
            Component passwordAsString = getPage().get("form:passwordAsString");
            Component password = getPage().get("form:password");
            if (!passwordAsString.isVisible() && !_pwdDisplayable) {
                getSession().warn(getString("privateId.error.passwordNotDisplayableAsString"));
                Component passwordEdit = getPage().get("form:passwordEdit");
                passwordEdit.setDefaultModelObject(false);
                target.addComponent(passwordEdit);
                target.addComponent(getPage().get("feedback"));
            } else {
                passwordAsString.setVisible(!passwordAsString.isVisible());
                password.setVisible(!password.isVisible());
                target.addComponent(passwordAsString);
                target.addComponent(password);
            }
        }
    });

    form.add(new TextField("passwordAsString", String.class).setOutputMarkupId(true)
            .setOutputMarkupPlaceholderTag(true).setVisible(_pwdDisplayable));
    form.add(new TextField("password", byte[].class).setOutputMarkupId(true).setOutputMarkupPlaceholderTag(true)
            .setVisible(!_pwdDisplayable));

    form.add(new TextField("operatorId", byte[].class).add(new AbstractValidator<byte[]>() {
        @Override
        protected void onValidate(IValidatable<byte[]> validatable) {
            if (validatable.getValue().length != 16)
                error(validatable, "validator.byteArray.length");
        }
    }));

    form.add(new Button("submit") {
        @Override
        public void onSubmit() {
            apply(getForm());
        }
    });
    form.add(new Button("cancel") {
        @Override
        public void onSubmit() {
            getSession().info(getString("modification.cancel"));
            goToBackPage(PrivateIdBrowserPage.class);
        }
    }.setDefaultFormProcessing(false));

    if (privateIdentity != null)
        setContextMenu(new ContextPanel(privateIdentity));
}

From source file:org.cipango.ims.hss.web.subscription.DeregistrationPage.java

License:Apache License

@SuppressWarnings("unchecked")
public DeregistrationPage(PageParameters pageParameters) {
    super(pageParameters);
    Subscription subscription = getSubscription(pageParameters);
    _key = subscription == null ? null : subscription.getName();

    Form form = new Form("form");
    form.add(new Label("title", _key));

    RadioChoice deregistrationType = new RadioChoice("deregistrationType", new Model(true),
            Arrays.asList(new Boolean[] { true, false }), new ChoiceRenderer<Boolean>() {
                @Override//from  w w  w  .  ja v a  2 s  .c  o  m
                public Object getDisplayValue(Boolean id) {
                    if (id)
                        return "Public identities";
                    else
                        return "Private identities";
                }
            });
    form.add(deregistrationType);
    deregistrationType.add(new AjaxFormChoiceComponentUpdatingBehavior() {
        @Override
        protected void onUpdate(AjaxRequestTarget target) {
            Component privateId = getPage().get("form:privateIdTr");
            Component publicIds = getPage().get("form:publicIdsTr");
            boolean privateVisible = !privateId.isVisible();
            privateId.setVisible(privateVisible);
            ((ListMultipleChoice) getPage().get("form:privateIdTr:privateIds")).setRequired(privateVisible);
            ((ListMultipleChoice) getPage().get("form:publicIdsTr:publicIds")).setRequired(!privateVisible);
            publicIds.setVisible(!privateVisible);
            target.addComponent(privateId);
            target.addComponent(publicIds);
        }
    });

    List<String> privateIds = subscription == null ? Collections.EMPTY_LIST
            : new ArrayList(subscription.getPrivateIds());
    WebMarkupContainer privateIdTr = new WebMarkupContainer("privateIdTr");
    privateIdTr.setOutputMarkupId(true).setOutputMarkupPlaceholderTag(true).setVisible(false);
    form.add(privateIdTr);
    privateIdTr.add(new ListMultipleChoice("privateIds", new Model(new ArrayList()), privateIds));

    List<String> publicIds = subscription == null ? Collections.EMPTY_LIST
            : new ArrayList(subscription.getPublicIds());
    WebMarkupContainer publicIdsTr = new WebMarkupContainer("publicIdsTr");
    publicIdsTr.setOutputMarkupId(true).setOutputMarkupPlaceholderTag(true);
    form.add(publicIdsTr);
    publicIdsTr
            .add(new ListMultipleChoice("publicIds", new Model(new ArrayList()), publicIds).setRequired(true));

    form.add(new DropDownChoice("reasonCode", new Model<ReasonCode>(), Arrays.asList(ReasonCode.values()))
            .setRequired(true));

    form.add(new TextField<String>("reasonPhrase", new Model<String>()));

    form.add(new AjaxFallbackButton("submit", form) {
        @Override
        protected void doSubmit(AjaxRequestTarget target, Form<?> form) throws Exception {
            boolean deregisterPublic = (Boolean) getForm().get("deregistrationType").getDefaultModelObject();
            String reasonPhrase = (String) getForm().get("reasonPhrase").getDefaultModelObject();
            ReasonCode reasonCode = (ReasonCode) getForm().get("reasonCode").getDefaultModelObject();

            if (deregisterPublic) {
                List<String> publicIds = (List<String>) getForm().get("publicIdsTr:publicIds")
                        .getDefaultModelObject();
                Set<PublicIdentity> publicIdentities = new HashSet<PublicIdentity>(publicIds.size());
                Iterator<String> it = publicIds.iterator();
                while (it.hasNext())
                    publicIdentities.add((PublicUserIdentity) _publicIdentityDao.findById(it.next()));

                try {
                    getCxManager().sendRtr(publicIdentities, reasonCode, reasonPhrase);
                    getSession().info(getString("subscription.deregistration.done"));
                } catch (Exception e) {
                    __log.warn("Failed to send RTR", e);
                    error(MapVariableInterpolator.interpolate(getString("subscription.error.deregistration"),
                            new MicroMap("reason", e.toString())));
                }
            } else {
                List<String> privateIds = (List<String>) getForm().get("privateIdTr:privateIds")
                        .getDefaultModelObject();
                Set<PrivateIdentity> privateIdentities = new HashSet<PrivateIdentity>(privateIds.size());
                Iterator<String> it = privateIds.iterator();
                while (it.hasNext())
                    privateIdentities.add(_privateIdentityDao.findById(it.next()));

                try {
                    getCxManager().sendRtrPrivate(privateIdentities, reasonCode, reasonPhrase);
                    getSession().info(getString("subscription.deregistration.done"));
                } catch (Exception e) {
                    __log.warn("Failed to send RTR", e);
                    error(MapVariableInterpolator.interpolate(getString("subscription.error.deregistration"),
                            new MicroMap("reason", e.getMessage())));
                }

            }
            if (target != null) {
                Component contextMenu = new ContextPanel(_dao.findById(_key));
                getPage().get("contextMenu").replaceWith(contextMenu);
                target.addComponent(getPage().get("contextMenu"));
            }
        }

    });

    form.add(new Button("cancel") {
        public void onSubmit() {
            getSession().info(getString(getPrefix() + ".delete.canceled", new DaoDetachableModel(_key)));
            goToBackPage(SubscriptionBrowserPage.class);
        }
    }.setDefaultFormProcessing(false));

    add(form);
    if (subscription != null)
        setContextMenu(new ContextPanel(subscription));
}

From source file:org.geoserver.wps.web.WPSAccessRulePage.java

License:Open Source License

public WPSAccessRulePage() {
    wpsInfo = getGeoServer().getService(WPSInfo.class);
    Form form = new Form("form", new CompoundPropertyModel(wpsInfo));

    processFactories = cloneFactoryInfos(wpsInfo.getProcessGroups());
    ProcessFactoryInfoProvider provider = new ProcessFactoryInfoProvider(processFactories, getLocale());
    GeoServerRoleService roleService = getSecurityManager().getActiveRoleService();
    try {// w  w w. j  a v a2  s .  co  m
        for (GeoServerRole r : roleService.getRoles()) {
            availableRoles.add(r.getAuthority());
        }
    } catch (IOException e1) {
        LOGGER.log(Level.FINER, e1.getMessage(), e1);
    }

    TextField<Integer> maxComplexInputSize = new TextField<Integer>("maxComplexInputSize", Integer.class);
    maxComplexInputSize.add(new MinimumValidator<Integer>(0));
    form.add(maxComplexInputSize);

    final AutoCompleteSettings settings = new AutoCompleteSettings();
    settings.setShowCompleteListOnFocusGain(false);
    settings.setShowListOnEmptyInput(true);
    settings.setShowListOnFocusGain(true);
    settings.setMaxHeightInPx(100);

    GeoServerTablePanel<ProcessGroupInfo> processFilterEditor = new GeoServerTablePanel<ProcessGroupInfo>(
            "processFilterTable", provider) {

        @Override
        protected Component getComponentForProperty(String id, final IModel itemModel,
                Property<ProcessGroupInfo> property) {

            if (property.getName().equals("enabled")) {
                Fragment fragment = new Fragment(id, "enabledFragment", WPSAccessRulePage.this);
                CheckBox enabled = new CheckBox("enabled", property.getModel(itemModel));
                enabled.setOutputMarkupId(true);
                fragment.add(enabled);
                return fragment;
            } else if (property.getName().equals("prefix")) {
                return new Label(id, property.getModel(itemModel));
            } else if (property.getName().equals("title")) {
                return new Label(id, property.getModel(itemModel));
            } else if (property.getName().equals("summary")) {
                return new Label(id, property.getModel(itemModel));
            } else if (property.getName().equals("roles")) {
                Fragment fragment = new Fragment(id, "rolesFragment", WPSAccessRulePage.this);
                TextArea<String> roles = new TextArea<String>("roles", property.getModel(itemModel)) {
                    public org.apache.wicket.util.convert.IConverter getConverter(java.lang.Class<?> type) {
                        return new RolesConverter(availableRoles);
                    };
                };
                StringBuilder selectedRoles = new StringBuilder();
                IAutoCompleteRenderer<String> roleRenderer = new RolesRenderer(selectedRoles);
                AutoCompleteBehavior<String> b = new RolesAutoCompleteBehavior(roleRenderer, settings,
                        selectedRoles, availableRoles);
                roles.setOutputMarkupId(true);
                roles.add(b);
                fragment.add(roles);
                return fragment;
            } else if (property.getName().equals("edit")) {
                Fragment fragment = new Fragment(id, "linkFragment", WPSAccessRulePage.this);
                // we use a submit link to avoid losing the other edits in the form
                Link link = new Link("link") {
                    @Override
                    public void onClick() {
                        ProcessGroupInfo pfi = (ProcessGroupInfo) itemModel.getObject();
                        setResponsePage(new ProcessSelectionPage(WPSAccessRulePage.this, pfi));
                    }
                };
                fragment.add(link);

                return fragment;
            }

            return null;
        }
    };
    processFilterEditor.setFilterable(false);
    processFilterEditor.setPageable(false);
    processFilterEditor.setOutputMarkupId(true);
    form.add(processFilterEditor);

    form.add(new AjaxLink("processAccessModeHelp") {
        @Override
        public void onClick(AjaxRequestTarget target) {
            dialog.showInfo(target, new StringResourceModel("processAccessModeHelp.title", getPage(), null),
                    new StringResourceModel("processAccessModeHelp.message", getPage(), null));
        }
    });
    catalogModeChoice = new RadioChoice("processAccessMode",
            new PropertyModel<CatalogMode>(wpsInfo, "catalogMode"), CATALOG_MODES, new CatalogModeRenderer());
    catalogModeChoice.setSuffix(" ");
    form.add(catalogModeChoice);

    SubmitLink submit = new SubmitLink("submit", new StringResourceModel("save", (Component) null, null)) {
        @Override
        public void onSubmit() {
            try {
                // overwrite the process factories that we did clone to achieve isolation
                List<ProcessGroupInfo> factories = wpsInfo.getProcessGroups();
                factories.clear();
                factories.addAll(processFactories);
                getGeoServer().save(wpsInfo);
                doReturn();
            } catch (Exception e) {
                error(e);
            }
        }
    };
    form.add(submit);

    Button cancel = new Button("cancel", new StringResourceModel("cancel", (Component) null, null)) {
        public void onSubmit() {
            doReturn();
        }
    };
    form.add(cancel);

    add(form);

}

From source file:org.obiba.onyx.marble.core.wicket.consent.ConsentModeSelectionPanel.java

License:Open Source License

@SuppressWarnings("serial")
private RadioChoice<ConsentMode> createConsentModeRadio() {
    RadioChoice<ConsentMode> consentModeRadio = new RadioChoice<ConsentMode>("consentMode",
            new PropertyModel(activeConsentService, "consent.mode"), Arrays.asList(ConsentMode.values()),
            new ChoiceRenderer()) {

        @Override//www.j a v a2  s  .co  m
        protected boolean localizeDisplayValues() {
            return true;
        }
    };

    consentModeRadio.setRequired(true);

    return consentModeRadio;
}