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<? extends List<? extends T>> choices,
        IChoiceRenderer<? super T> renderer) 

Source Link

Document

Constructor

Usage

From source file:com.alfredmuponda.lostandfound.pages.AddNewUserPage.java

License:Apache License

public AddNewUserPage() {
    user = new User();
    admin = Arrays.asList("Yes", "No");
    Form form = new Form("form");
    add(new HeaderPanel("headerpanel"));
    add(form);//from  w w w  .  ja  v a 2  s .  com

    designationField = new TextField("designation", new PropertyModel(user, "designation"));
    crNumberField = new TextField("crnumber", new PropertyModel(user, "crNumber"));
    stationField = new TextField("station", new PropertyModel(user, "station"));
    sectionField = new TextField("section", new PropertyModel(user, "section"));
    sectionRefField = new TextField("sectionref", new PropertyModel(user, "sectionRef"));
    nameField = new TextField("name", new PropertyModel(user, "name"));
    surnameField = new TextField("surname", new PropertyModel(user, "surname"));
    usernameField = new TextField("username", new PropertyModel(user, "username"));
    passwordField1 = new PasswordTextField("password1", new PropertyModel(user, "password1"));
    passwordField2 = new PasswordTextField("password2", new PropertyModel(user, "password2"));
    isAdminField = new RadioChoice("admin", new PropertyModel(user, "adminAsString"), admin);

    form.add(new FeedbackPanel("feedback"));
    form.add(designationField);
    form.add(crNumberField);
    form.add(stationField);
    form.add(sectionField);
    form.add(sectionRefField);
    form.add(nameField);
    form.add(surnameField);
    form.add(usernameField);
    form.add(passwordField1);
    form.add(passwordField2);
    form.add(isAdminField);
    form.add(new Button("submit") {
        @Override
        public void onSubmit() {
            ReadWriteDatabase db = new ReadWriteDatabase();
            getInfo();
            db.addNewUser(user);
            clear();
        }
    });

    designationField.setRequired(true);
    crNumberField.setRequired(true);
    stationField.setRequired(true);
    sectionRefField.setRequired(true);
    nameField.setRequired(true);
    surnameField.setRequired(true);
    isAdminField.setRequired(true);
    usernameField.setRequired(true).add(new UsernameValidator());
    passwordField1.add(StringValidator.minimumLength(8)).add(new PasswordPolicyValidator());
    passwordField2.add(new SameValueValidator(passwordField1, passwordField2));
}

From source file:com.axway.ats.testexplorer.pages.testcasesCopy.TestcasesCopyPage.java

License:Apache License

@Override
protected void addCopyDetailsComponents() {

    copyEntityTypes = ENTITY_TYPES.valueOf(copyEntitiesType);
    String[] copyEntitiesTokens = copyEntities.split("_");
    srcEntityIds = new int[copyEntitiesTokens.length];
    for (int i = 0; i < copyEntitiesTokens.length; i++) {
        srcEntityIds[i] = Integer.parseInt(copyEntitiesTokens[i]);
    }//w  w w .j  ava 2s.  co m

    TextField<String> sourceHost = new TextField<String>("sourceHost", sourceHostModel);
    sourceHostModel.setObject(getTESession().getDbHost());
    form.add(sourceHost);

    TextField<String> sourceDbName = new TextField<String>("sourceDbName", sourceDbNameModel);
    sourceDbNameModel.setObject(getTESession().getDbName());
    form.add(sourceDbName);

    TextArea<String> sourceSelectionToCopy = new TextArea<String>("sourceSelectionToCopy",
            sourceSelectionToCopyModel);
    sourceSelectionToCopyModel.setObject(getCopySelectionInfo(copyEntityTypes));
    form.add(sourceSelectionToCopy);

    TextField<String> destinationRunId = new TextField<String>("destinationRunId", destinationRunIdModel);
    destinationRunIdModel.setObject("");
    form.add(destinationRunId);

    TextField<String> destinationHost = new TextField<String>("destinationHost", destinationHostModel);
    destinationHostModel.setObject(getTESession().getDbHost());
    form.add(destinationHost);

    TextField<String> destinationPort = new TextField<String>("destinationPort", destinationPortModel);
    destinationPortModel.setObject("");
    form.add(destinationPort);

    TextField<String> destinationDbName = new TextField<String>("destinationDbName", destinationDbNameModel);
    destinationDbNameModel.setObject(getTESession().getDbName());
    form.add(destinationDbName);

    RadioChoice<String> hostingType = new RadioChoice<String>("testcaseOverwriteOption",
            new PropertyModel<String>(this, "selectedEntityType"),
            Arrays.asList(TestcasesCopyUtility.OVERWRITE_TESTCASES_MSG_OVERWRITE,
                    TestcasesCopyUtility.OVERWRITE_TESTCASES_MSG_OVERWRITE_NOT_PASSED));
    form.add(hostingType);
}

From source file:com.doculibre.constellio.wicket.panels.admin.searchInterface.theme.ThemeConfigPanel.java

License:Open Source License

public ThemeConfigPanel(String id) {
    super(id);/*ww  w .j a  va  2s .c om*/

    SearchInterfaceConfigServices mySearchInterfaceConfigServices = ConstellioSpringUtils
            .getSearchInterfaceConfigServices();
    SearchInterfaceConfig config = mySearchInterfaceConfigServices.get();
    configModel = new ReloadableEntityModel<SearchInterfaceConfig>(config);

    Form form = new Form("form") {
        @Override
        protected void onSubmit() {
            super.onSubmit();
            EntityManager entityManager = ConstellioPersistenceContext.getCurrentEntityManager();
            if (!entityManager.getTransaction().isActive()) {
                entityManager.getTransaction().begin();
            }

            SearchInterfaceConfigServices searchInterfaceConfigServices = ConstellioSpringUtils
                    .getSearchInterfaceConfigServices();
            SearchInterfaceConfig config = configModel.getObject();
            searchInterfaceConfigServices.makePersistent(config);
            entityManager.getTransaction().commit();
        }
    };
    form.setModel(new CompoundPropertyModel(configModel));

    FeedbackPanel feedbackPanel = new FeedbackPanel("feedback");

    IChoiceRenderer skinRenderer = new ChoiceRenderer() {
        @Override
        public Object getDisplayValue(Object object) {
            return getLocalizer().getString("skin." + object, ThemeConfigPanel.this);
        }
    };
    RadioChoice skinChoice = new RadioChoice("skin", Arrays.asList(SearchInterfaceConfig.SKINS), skinRenderer);

    add(form);
    form.add(feedbackPanel);
    form.add(skinChoice);
}

From source file:com.modusoperandi.dragonfly.widgets.chart.SettingsPanel.java

License:Open Source License

/**
 * Instantiates a new settings page.//from   w w w  .j a v a  2  s .  com
 *
 * @param id
 * @param modalWindow
 */
public SettingsPanel(final String id, final ModalWindow modalWindow) {

    super(id);

    configuration = new HashMap<>();

    final Form<?> dataForm = new Form<>("dataForm");
    add(dataForm);

    contentDiv = new WebMarkupContainer("contentDiv");
    contentDiv.setOutputMarkupId(true);
    dataForm.add(contentDiv);

    // ////////////////////////////
    // Type
    final RadioChoice<String> typeField = new RadioChoice<String>("type", new PropertyModel<>(this, "type"),
            Arrays.asList(
                    new String[] { XY, FACET_BAR, SERIES_LINE, FACET_PIE, TIMEWHEEL, HEAT_MAP_RING_MAP })) {

        private static final long serialVersionUID = 1L;

        @Override
        public String getSuffix() {

            return "";
        }
    };

    typeField.add(new AjaxFormChoiceComponentUpdatingBehavior() {

        private static final long serialVersionUID = 1L;

        @Override
        protected void onUpdate(final AjaxRequestTarget target) {

            type = getComponent().getDefaultModelObjectAsString();

            showDivs();

            target.add(contentDiv);
        }

    });
    contentDiv.add(typeField);

    // ////////////////////////////
    // Index Name
    populateIndices();

    indexDiv = new WebMarkupContainer("indexDiv");
    indexDiv.setOutputMarkupId(true);
    contentDiv.add(indexDiv);

    selectIndex = new DropDownChoice<>("dataSet", new PropertyModel<String>(this, "indexName"), indexList);
    selectIndex.add(new AjaxFormComponentUpdatingBehavior("focus") {

        private static final long serialVersionUID = 2981822623630720652L;

        @Override
        protected void onUpdate(final AjaxRequestTarget target) {

            if (populateIndices()) {
                target.add(selectIndex);
            }
        }
    });
    selectIndex.add(new AjaxFormComponentUpdatingBehavior("change") {

        private static final long serialVersionUID = 2981822623630720652L;

        @Override
        protected void onUpdate(final AjaxRequestTarget target) {

            populateFieldsList(numericFieldsList, "double");
            populateFieldsList(allFieldsList, null);
            populateFieldsList(timeFieldsList, "date");
            populateFieldsList(locationFieldsList, "geo_point");

            if (numericFieldsList.size() > 0) {

                seriesYField = numericFieldsList.get(0);

                xField = numericFieldsList.get(0);
                yField = numericFieldsList.get(0);
            }

            if (allFieldsList.size() > 0) {

                countField = allFieldsList.get(0);

                pieCountField = allFieldsList.get(0);

                seriesXField = allFieldsList.get(0);

                hmrmLabelField = allFieldsList.get(0);
            }

            if (timeFieldsList.size() > 0) {

                twTimeField = timeFieldsList.get(0);

                hmrmTimeField = timeFieldsList.get(0);
            }

            if (locationFieldsList.size() > 0) {

                hmrmLocationField = locationFieldsList.get(0);
            }

            target.add(xSelectField);
            target.add(ySelectField);
            target.add(countSelectField);
            target.add(seriesXSelectField);
            target.add(seriesYSelectField);
            target.add(pieCountSelectField);
            target.add(twTimeSelectField);
            target.add(hmrmTimeSelectField);
            target.add(hmrmLocationSelectField);
            target.add(hmrmLabelSelectField);
        }
    });
    indexDiv.add(selectIndex);

    // ////////////////////////////
    // Type Panels
    configureXyDiv();
    configureFacetBarDiv();
    configureSeriesDiv();
    configureFacetPieDiv();
    configureTimewheelDiv();
    configureHeatMapRingMapDiv();

    showDivs();

    // ////////////////////////////
    // Buttons
    dataForm.add(new AjaxButton("okButton") {

        private static final long serialVersionUID = 1L;

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

            configuration.clear();

            configuration.put("Index", indexName);
            configuration.put("Type", type);

            switch (type) {
            case XY:
                configuration.put("X", xField);
                configuration.put("Y", yField);
                break;

            case FACET_BAR:
                configuration.put("CountField", countField);
                configuration.put("MaxItems", maxItems);
                break;

            case SERIES_LINE:
                configuration.put("X", seriesXField);
                configuration.put("Y", seriesYField);
                break;

            case FACET_PIE:
                configuration.put("CountField", pieCountField);
                configuration.put("MaxItems", pieMaxItems);
                break;

            case TIMEWHEEL:
                configuration.put("TimeScale", twTimeScaleField);
                configuration.put("TimeField", twTimeField);
                configuration.put("ContrastScale", twContrastScaleField);
                break;

            case HEAT_MAP_RING_MAP:
                configuration.put("TimeScale", hmrmTimeScaleField);
                configuration.put("TimeField", hmrmTimeField);
                configuration.put("LocationField", hmrmLocationField);
                configuration.put("LabelField", hmrmLabelField);
                break;
            }

            ok = true;
            modalWindow.close(target);
        }
    });

    dataForm.add(new AjaxButton("cancelButton") {

        private static final long serialVersionUID = 1L;

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

            configuration.clear();

            ok = false;
            modalWindow.close(target);
        }
    });
}

From source file:com.modusoperandi.dragonfly.widgets.choropleth.ChoroplethWidgetPage.java

License:Open Source License

private void initialize() {

    // ////////////////////////////
    // Form//from w ww .  j a  va 2 s  .  co m
    final Form<?> queryForm = new Form<>("queryForm");
    add(queryForm);

    // ////////////////////////////
    // From Data Set
    populateIndices();

    fromIndex = new DropDownChoice<>("fromDataSetName", new PropertyModel<String>(this, "fromIndexName"),
            fromIndexList);
    fromIndex.setOutputMarkupId(true);
    fromIndex.add(new AjaxFormComponentUpdatingBehavior("focus") {

        private static final long serialVersionUID = 2981822623630720652L;

        @Override
        protected void onUpdate(final AjaxRequestTarget target) {

            if (populateIndices()) {
                target.add(fromIndex);
            }
        }
    });
    fromIndex.add(new AjaxFormComponentUpdatingBehavior("change") {

        private static final long serialVersionUID = 2981822623630720652L;

        @Override
        protected void onUpdate(final AjaxRequestTarget target) {

            populateFieldLists();
            target.add(latField);
            target.add(lonField);
            target.add(valueField);
        }
    });
    queryForm.add(fromIndex);

    // ///////////////////////////////
    // To Data Set
    queryField = new TextField<>("toDataSetName", new PropertyModel<>(this, "toIndexName"));
    queryForm.add(queryField);
    final RadioChoice<String> dataSetAction = new RadioChoice<String>("dataSetAction",
            new PropertyModel<>(this, "indexAction"), Arrays.asList(new String[] { OVERWRITE, APPEND })) {

        private static final long serialVersionUID = 1L;

        @Override
        public String getSuffix() {

            return "";
        }
    };
    dataSetAction.add(new AjaxFormChoiceComponentUpdatingBehavior() {

        private static final long serialVersionUID = 1L;

        @Override
        protected void onUpdate(final AjaxRequestTarget target) {

            indexAction = getComponent().getDefaultModelObjectAsString();
        }

    });
    queryForm.add(dataSetAction);

    // ////////////////////////////
    // Filter
    final TextField<String> filterField = new TextField<>("filter", new PropertyModel<String>(this, "filter"));

    queryForm.add(filterField);

    // ///////////////////////////////
    // Coordinates
    latField = new DropDownChoice<>("lat", new PropertyModel<String>(this, "lat"), fieldList);
    latField.setOutputMarkupId(true);
    queryForm.add(latField);

    lonField = new DropDownChoice<>("lon", new PropertyModel<String>(this, "lon"), fieldList);
    lonField.setOutputMarkupId(true);
    queryForm.add(lonField);

    // ///////////////////////////////
    // Value
    valueField = new DropDownChoice<>("value", new PropertyModel<String>(this, "value"), fieldList);
    valueField.setOutputMarkupId(true);
    queryForm.add(valueField);

    // //////////////////////////////
    // Limits
    queryForm.add(new TextField<>("upperLimit", new PropertyModel<>(this, "upperLimit")));
    queryForm.add(new TextField<>("lowerLimit", new PropertyModel<>(this, "lowerLimit")));

    // //////////////////////////////
    // Color Action
    final RadioChoice<String> colorAction = new RadioChoice<String>("colorAction",
            new PropertyModel<>(this, "colorActionStr"),
            Arrays.asList(new String[] { AVERAGE, MIN, MAX, TOTAL, COUNT })) {

        private static final long serialVersionUID = 1L;

        @Override
        public String getSuffix() {

            return "";
        }
    };
    colorAction.add(new AjaxFormChoiceComponentUpdatingBehavior() {

        private static final long serialVersionUID = 1L;

        @Override
        protected void onUpdate(final AjaxRequestTarget target) {

            colorActionStr = getComponent().getDefaultModelObjectAsString();
        }

    });
    queryForm.add(colorAction);

    // ////////////////////////////
    // File
    // Populate the drop down list with the files on the server
    getFileList(fileList, Arrays.asList(".json"), null);
    selectFile = new DropDownChoice<>("fileName", new PropertyModel<String>(this, "fileName"), fileList);
    queryForm.add(selectFile);

    // ///////////////////////////////
    // Search
    queryForm.add(new AnalyzeAjaxButton());
}

From source file:com.modusoperandi.dragonfly.widgets.map.MapSettingsPanel.java

License:Open Source License

/**
 * Instantiates a new map settings page.
 * //from w  w  w  .j av  a 2s.co  m
 * @param id
 * @param modalWindow
 */
public MapSettingsPanel(final String id, final ModalWindow modalWindow) {

    super(id);

    populateWmsPresetList();

    configuration = new HashMap<>();

    final Form<?> dataForm = new Form<>("dataForm");
    add(dataForm);

    contentDiv = new WebMarkupContainer("contentDiv");
    contentDiv.setOutputMarkupId(true);
    dataForm.add(contentDiv);

    // ////////////////////////////
    // Type

    final RadioChoice<String> typeField = new RadioChoice<String>("type", new PropertyModel<>(this, "type"),
            Arrays.asList(new String[] { HEAT_MAP, GEO_JSON, WMS })) {

        private static final long serialVersionUID = 1L;

        @Override
        public String getSuffix() {

            return "";
        }
    };

    typeField.add(new AjaxFormChoiceComponentUpdatingBehavior() {

        private static final long serialVersionUID = 1L;

        @Override
        protected void onUpdate(final AjaxRequestTarget target) {

            type = getComponent().getDefaultModelObjectAsString();

            showDivs();

            target.add(contentDiv);
            target.add(heatmapDiv);
            target.add(geojsonDiv);
            target.add(wmsDiv);
        }

    });
    contentDiv.add(typeField);

    // ////////////////////////////
    // Index Name

    populateIndices();

    indexDiv = new WebMarkupContainer("indexDiv");
    indexDiv.setOutputMarkupId(true);
    contentDiv.add(indexDiv);

    selectIndex = new DropDownChoice<>("dataSet", new PropertyModel<String>(this, "indexName"), indexList);
    selectIndex.setOutputMarkupId(true);
    selectIndex.add(new AjaxFormComponentUpdatingBehavior("focus") {

        private static final long serialVersionUID = 2981822623630720652L;

        @Override
        protected void onUpdate(final AjaxRequestTarget target) {

            if (populateIndices()) {
                target.add(selectIndex);
            }
        }
    });
    selectIndex.add(new AjaxFormComponentUpdatingBehavior("change") {

        private static final long serialVersionUID = 2981822623630720652L;

        @Override
        protected void onUpdate(final AjaxRequestTarget target) {

            populateFieldsList(locationFieldList, "geo_point");
            if (locationFieldList.size() > 0) {
                hmLocation = locationFieldList.get(0);
            }

            populateFieldsList(stringFieldList, "string");
            if (stringFieldList.size() > 0) {
                geojson = stringFieldList.get(0);
            }

            target.add(geojsonField);
            target.add(hmLocationField);
        }
    });
    indexDiv.add(selectIndex);

    // ////////////////////////////
    // Type Panels

    configureHeatmapDiv();
    configureGeojsonDiv();
    configureWmsDiv();

    showDivs();

    // ////////////////////////////
    // Buttons

    dataForm.add(new AjaxButton("okButton") {

        private static final long serialVersionUID = 1L;

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

            configuration.clear();

            switch (type) {
            case HEAT_MAP:
                configuration.put("Type", HEAT_MAP);
                configuration.put("Index", indexName);
                configuration.put("Location", hmLocation);
                configuration.put("HmTransparency", hmTransparency);
                configuration.put("HmRadius", hmRadius);
                break;

            case GEO_JSON:
                configuration.put("Type", GEO_JSON);
                configuration.put("Index", indexName);
                configuration.put("GeojsonField", geojson);
                break;

            case WMS:
                configuration.put("Type", WMS);
                configuration.put("TileURL", tileUrl);
                configuration.put("Name", wmsName);
                configuration.put("Format", wmsFormat);
                configuration.put("Attribution", wmsAttribution);
                configuration.put("Layers", wmsLayers);
                break;
            }

            ok = true;
            modalWindow.close(target);
        }
    });

    dataForm.add(new AjaxButton("cancelButton") {

        private static final long serialVersionUID = 1L;

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

            configuration.clear();

            ok = false;
            modalWindow.close(target);
        }
    });
}

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

License:Open Source License

public FreeQuestionTextGroupingPanel(String id, FreeQuestion question, FreeQuestionTextGroup group,
        final Locale locale, GroupAddedCallback groupAddedCallback) {
    super(id, group, locale, groupAddedCallback);
    questionId = question.getId();/*from w w w  . j a v a2s.c o  m*/

    getStimulus().setDefaultModel(new LocalizedPropertyModel(question, "text", locale));
    getStimulus().modelChanged();

    final List choices = Arrays.asList(new String[] { new StringResourceModel("equals", this, null).getString(),
            new StringResourceModel("not_equals", this, null).getString(),
            new StringResourceModel("contains", this, null).getString(),
            new StringResourceModel("not_contains", this, null).getString() });

    add(new RadioChoice("filterType", new PropertyModel(this, "choice"), choices));

    add(new TextField("filterString", new PropertyModel(this, "filterText")));
}

From source file:com.userweave.pages.user.configuration.UserEditProfessionalPanel.java

License:Open Source License

public UserEditProfessionalPanel(String id, UserModel userModel) {
    super(id, userModel);

    add(new ServicePanel("servicePanel", ServicePanelType.OWN_HOSTING));
    add(new ServicePanel("servicePanel2", ServicePanelType.ADVANCE_PRODUCT));

    companyContainer = new WebMarkupContainer("companyContainer");
    getForm().add(companyContainer);/*from   ww w .  ja  v  a  2 s.  c  o m*/
    companyContainer.setOutputMarkupPlaceholderTag(true);

    company = new TextField("company");

    company.add(AjaxBehaviorFactory.getUpdateBehavior("onblur", UserEditProfessionalPanel.this));

    companyContainer.add(company);

    DropDownChoice position = new DropDownChoice("position", Arrays.asList(User.Position.values()),
            new LocalizedPositionChoiceRenderer(this));

    position.add(AjaxBehaviorFactory.getUpdateBehavior("onchange", UserEditProfessionalPanel.this));

    companyContainer.add(position);

    TextField url = new TextField("companyUrl");

    url.add(AjaxBehaviorFactory.getUpdateBehavior("onblur", UserEditProfessionalPanel.this));

    companyContainer.add(url);

    TextField vatin = new TextField("VATIN");

    vatin.add(AjaxBehaviorFactory.getUpdateBehavior("onblur", UserEditProfessionalPanel.this));

    companyContainer.add(vatin);

    TextField employment = new TextField("employment");

    employment.add(AjaxBehaviorFactory.getUpdateBehavior("onblur", UserEditProfessionalPanel.this));

    companyContainer.add(employment);

    // set initial visibility
    companyContainer.setVisible(getUser().getBusinessRole() == BusinessRole.Company);
    company.setRequired(((User) getDefaultModelObject()).getBusinessRole() == BusinessRole.Company);

    RadioChoice businessRole = new RadioChoice("businessRole", Arrays.asList(User.BusinessRole.values()),
            new LocalizedBusinessRoleChoiceRenderer(this)).setSuffix("");
    businessRole.add(new IValidator() {

        @Override
        public void validate(IValidatable validatable) {
            Object o = validatable.getValue();

            User.BusinessRole val = (User.BusinessRole) o;

            if (val == BusinessRole.Company) {
                company.setRequired(true);
            } else {
                company.setRequired(false);
            }
        }
    });

    businessRole.add(new AjaxFormChoiceComponentUpdatingBehavior() {
        @Override
        protected void onUpdate(AjaxRequestTarget target) {
            boolean actsAsCompany = getUser().getBusinessRole() == BusinessRole.Company;
            companyContainer.setVisible(actsAsCompany);
            company.setRequired(actsAsCompany);
            target.addComponent(companyContainer);
            onSubmit(target);
        }
    });

    getForm().add(businessRole);
}

From source file:com.userweave.pages.user.invitation.InviteUserPanel.java

License:Open Source License

public InviteUserPanel(String id) {
    super(id);/*from  ww w . j av a  2s . c om*/

    add(feedbackPanel = new FeedbackPanel("feedback").setOutputMarkupId(true));

    Form form = new Form("form", new CompoundPropertyModel(this));

    add(form);

    List<Invitation> invitations = UserWeaveSession.get().getUser().getInvitations();

    email = new StringResourceModel("label_email_textfield", this, null).getString();

    form.add(new TextField("email").setRequired(true));

    form.add(new RadioChoice("locale", LocalizationUtils.getSupportedConfigurationFrontendLocales(),
            new LocaleChoiceRenderer(getLocale())).setSuffix("<span>&nbsp;&nbsp;</span>"));

    form.add(new AjaxButton("submit") {

        @Override
        protected void onSubmit(AjaxRequestTarget target, Form form) {
            target.add(feedbackPanel);
            invite(target);
        }

        @Override
        protected void onError(AjaxRequestTarget target, Form form) {
            target.add(feedbackPanel);
        }
    });
}

From source file:com.userweave.pages.user.registration.UserRegistrationForm.java

License:Open Source License

public UserRegistrationForm(String id, IModel userModel, final ModalWindow agbModalWindow) {
    super(id);/* w  w  w  . j ava 2s. co m*/

    setModel(new CompoundPropertyModel(userModel));

    WebMarkupContainer container = new WebMarkupContainer("container");
    add(container);

    companyContainer = new WebMarkupContainer("companyContainer");
    container.add(companyContainer);
    companyContainer.setOutputMarkupPlaceholderTag(true);
    // set initial visibility
    companyContainer.setVisible(getUser().getBusinessRole() == BusinessRole.Company);

    //add(new TextField("email").setRequired(true).setEnabled(getUser().getEmail() == null));

    add(new CheckBox("verified").setEnabled(false));

    //add(new ExternalLink("agb",new Model("http://usability-methods.com/en/termsofuse") , new StringResourceModel("agb", this, null)));

    add(new AjaxLink("agb") {

        @Override
        public void onClick(AjaxRequestTarget target) {
            agbModalWindow.show(target);
        }

    });

    container.add(new TextField("surname").setRequired(true));
    container.add(new TextField("forename").setRequired(true));

    container.add(new DropDownChoice("locale", LocalizationUtils.getSupportedConfigurationFrontendLocales(),
            new LocaleChoiceRenderer(null)));

    container.add(new RadioChoice("gender", Arrays.asList(User.Gender.values()),
            new LocalizedGenderChoiceRenderer(this)).setSuffix(""));

    container.add(new CallnumberPanel("callnumberPanel", new PropertyModel(getModel(), "callnumber")));

    RadioChoice businessRole = new RadioChoice("businessRole", Arrays.asList(User.BusinessRole.values()),
            new LocalizedBusinessRoleChoiceRenderer(this)).setSuffix("");
    businessRole.add(new IValidator() {

        @Override
        public void validate(IValidatable validatable) {
            Object o = validatable.getValue();

            User.BusinessRole val = (User.BusinessRole) o;

            if (val == BusinessRole.Company) {
                company.setRequired(true);
            } else {
                company.setRequired(false);
            }
        }
    });

    businessRole.add(new AjaxFormChoiceComponentUpdatingBehavior() {
        @Override
        protected void onUpdate(AjaxRequestTarget target) {
            boolean actsAsCompany = getUser().getBusinessRole() == BusinessRole.Company;
            companyContainer.setVisible(actsAsCompany);
            target.addComponent(companyContainer);
        }
    });
    container.add(businessRole);

    companyContainer.add(new DropDownChoice("position", Arrays.asList(User.Position.values()),
            new LocalizedPositionChoiceRenderer(this)));

    companyContainer.add(new TextField("employment"));

    companyContainer.add(company = new TextField("company"));
    //add(new TextField("education"));               
    companyContainer.add(new TextField("companyUrl"));
    companyContainer.add(new TextField("VATIN"));

    container.add(new AddressForRegistrationPanel("addressPanel", new PropertyModel(getModel(), "address")));

    container.add(new CheckBox("receiveNews"));
    //add(new CheckBox("verified").setRequired(true).setEnabled(!getUser().isVerified()));

    container.add(new DefaultButton("saveButton", new StringResourceModel("save", this, null), this) {
        @Override
        protected void onSubmit(AjaxRequestTarget target, Form form) {
            UserRegistrationForm.this.onSave(target);
        }

        @Override
        protected void onError(AjaxRequestTarget target, Form form) {
            target.addComponent(UserRegistrationForm.this.get("feedback"));

        }
    });

    add(new FeedbackPanel("feedback").setOutputMarkupId(true));
}