Example usage for org.apache.wicket.validation.validator RangeValidator maximum

List of usage examples for org.apache.wicket.validation.validator RangeValidator maximum

Introduction

In this page you can find the example usage for org.apache.wicket.validation.validator RangeValidator maximum.

Prototype

public static <T extends Comparable<? super T> & Serializable> RangeValidator<T> maximum(T maximum) 

Source Link

Usage

From source file:net.rrm.ehour.ui.admin.config.panel.MiscConfigPanel.java

License:Open Source License

private void addMiscComponents(Form<?> form) {
    // show turnover checkbox
    CheckBox showTurnover = new CheckBox("config.showTurnover");
    showTurnover.setMarkupId("showTurnover");
    form.add(showTurnover);/*from  ww  w  .j  ava 2  s .c  o  m*/

    final MainConfigBackingBean configBackingBean = (MainConfigBackingBean) getDefaultModelObject();

    // working hours
    TextField<Float> workHours = new TextField<>("config.completeDayHours", Float.class);
    workHours.setLabel(new ResourceModel("admin.config.workHours"));
    workHours.add(new ValidatingFormComponentAjaxBehavior());
    workHours.add(RangeValidator.minimum(0f));
    workHours.add(RangeValidator.maximum(24f));
    workHours.setRequired(true);
    form.add(new AjaxFormComponentFeedbackIndicator("workHoursValidationError", workHours));
    form.add(workHours);

    // weeks start at
    DropDownChoice<Date> weekStartsAt;
    weekStartsAt = new DropDownChoice<>("firstWeekStart", DateUtil
            .createDateSequence(DateUtil.getDateRangeForWeek(new GregorianCalendar()), new EhourConfigStub()),
            new WeekDayRenderer(configBackingBean.getLocaleLanguage()));
    form.add(weekStartsAt);

    // Timezone
    DropDownChoice<String> timezone = new DropDownChoice<>("config.timeZone",
            Lists.newArrayList(DateTimeZone.getAvailableIDs()));
    form.add(timezone);

    // pm access rights
    form.add(new DropDownChoice<>("config.pmPrivilege", Arrays.asList(PmPrivilege.values()),
            new EnumChoiceRenderer<PmPrivilege>()));

    // split admin role
    final Container convertManagersContainer = new Container("convertManagers");
    DropDownChoice<UserRole> convertManagersTo = new DropDownChoice<>("convertManagersTo",
            Lists.newArrayList(UserRole.ADMIN, UserRole.USER), new UserRoleRenderer());
    convertManagersContainer.add(convertManagersTo);
    convertManagersContainer.setVisible(false);
    form.add(convertManagersContainer);

    AjaxCheckBox withManagerCheckbox = new AjaxCheckBox("config.splitAdminRole") {
        @Override
        protected void onUpdate(AjaxRequestTarget target) {
            Boolean managersEnabled = this.getModelObject();

            boolean showConvert = !managersEnabled && !userService.getUsers(UserRole.MANAGER).isEmpty();

            if (convertManagersContainer.isVisible() != showConvert) {
                convertManagersContainer.setVisible(showConvert);
                target.add(convertManagersContainer);
            }
        }
    };
    withManagerCheckbox.setMarkupId("splitAdminRole");

    form.add(withManagerCheckbox);
}

From source file:org.geogig.geoserver.web.repository.PostgresConfigFormPanel.java

License:Open Source License

public PostgresConfigFormPanel(String id, IModel<PostgresConfigBean> model) {
    super(id, model);

    setOutputMarkupId(true);/*from ww  w . ja  v  a 2  s  .  c o  m*/
    hostPanel = new TextParamPanel("hostPanel", new PropertyModel<>(model, "host"),
            new ResourceModel("PostgresConfigFormPanel.host", "Host Name"), true);
    hostPanel.getFormComponent().setType(String.class);
    add(hostPanel);
    portPanel = new TextParamPanel("portPanel", new PropertyModel<>(model, "port"),
            new ResourceModel("PostgresConfigFormPanel.port", "Port"), false);
    // set the type for the port, and validators
    portPanel.getFormComponent().setType(Integer.TYPE).add((IValidator) RangeValidator.minimum(1025),
            (IValidator) RangeValidator.maximum(65535));
    add(portPanel);
    dbPanel = new TextParamPanel("dbPanel", new PropertyModel<>(model, "database"),
            new ResourceModel("PostgresConfigFormPanel.database", "Database Name"), true);
    dbPanel.getFormComponent().setType(String.class);
    add(dbPanel);
    schemaPanel = new TextParamPanel("schemaPanel", new PropertyModel<>(model, "schema"),
            new ResourceModel("PostgresConfigFormPanel.schema", "Schema Name"), false);
    schemaPanel.getFormComponent().setType(String.class);
    add(schemaPanel);
    usernamePanel = new TextParamPanel("usernamePanel", new PropertyModel<>(model, "username"),
            new ResourceModel("PostgresConfigFormPanel.username", "Username"), true);
    usernamePanel.getFormComponent().setType(String.class);
    add(usernamePanel);
    passwordPanel = new PasswordParamPanel("passwordPanel", new PropertyModel<>(model, "password"),
            new ResourceModel("PostgresConfigFormPanel.password", "Password"), true);
    passwordPanel.getFormComponent().setType(String.class);
    add(passwordPanel);
}

From source file:org.wicketopia.builder.feature.validator.DoubleRangeFeature.java

License:Apache License

@Override
protected IValidator<?> createValidator() {
    if (max != Double.MAX_VALUE && min != Double.MIN_VALUE) {
        return new RangeValidator<Double>(min, max);
    } else if (max != Double.MAX_VALUE) {
        return RangeValidator.maximum(max);
    } else {//from   w w w .  j a v  a 2  s . co m
        return RangeValidator.minimum(min);
    }
}

From source file:org.wicketopia.builder.feature.validator.LongRangeFeature.java

License:Apache License

@Override
protected IValidator<?> createValidator() {
    if (max != Long.MAX_VALUE && min != Long.MIN_VALUE) {
        return new RangeValidator<Long>(min, max);
    } else if (max != Long.MAX_VALUE) {
        return RangeValidator.maximum(max);
    } else {/*from w w  w . j a  va  2  s .c  o  m*/
        return RangeValidator.minimum(min);
    }
}

From source file:ro.nextreports.server.web.report.RunHistoryPanel.java

License:Apache License

@SuppressWarnings("unchecked")
public RunHistoryPanel(String id, final Report report) {
    super(id);//from   w w  w  . java2 s  .  co m

    group = new CheckGroup<RunReportHistory>("group", marked);

    String reportPath = null;
    if (report != null) {
        reportPath = report.getPath();
    }
    runHistoryDataProvider = new RunReportHistoryDataProvider(reportPath);
    runHistoryTable = createRunHistoryTable(runHistoryDataProvider);
    runHistoryTable.setOutputMarkupId(true);

    /*
    int updateInterval = NextServerApplication.get().getConfiguration().getInt("ui.updateInterval", 0);
    if (updateInterval > 0) {
       runHistoryTable.add(new AjaxSelfUpdatingTimerBehavior(Duration.seconds(updateInterval)));
    }
    */

    Form<RunReportHistory> form = new Form<RunReportHistory>("form");

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

    List<String> types = new ArrayList<String>();
    types.add(DAY_TYPE);
    types.add(FROM_DAY_TYPE);
    IChoiceRenderer<String> renderer = new ChoiceRenderer<String>() {

        @Override
        public Object getDisplayValue(String object) {
            return getString("ActionContributor.RunHistory." + object);
        }

        @Override
        public String getIdValue(String object, int index) {
            return object;
        }

    };
    DropDownChoice<String> typeDropDownChoice = new DropDownChoice<String>("type",
            new PropertyModel<String>(this, "type"), types, renderer);
    typeDropDownChoice.setOutputMarkupPlaceholderTag(true);
    typeDropDownChoice.add(new AjaxFormComponentUpdatingBehavior("onchange") {

        private static final long serialVersionUID = 1L;

        @Override
        protected void onUpdate(AjaxRequestTarget target) {
            setDateRange(target);
        }

    });
    form.add(typeDropDownChoice);

    time = new Date();
    DateField timeField = new DateField("time", new PropertyModel(this, "time")) {

        protected DateTextField newDateTextField(String s, PropertyModel propertyModel) {

            final DateTextField dateField = DateTextField.withConverter(s, propertyModel,
                    new StyleDateConverter("S-", false));
            dateField.add(new AjaxFormComponentUpdatingBehavior("onchange") {
                protected void onUpdate(AjaxRequestTarget target) {
                    // @todo wicket 1.5 does not update model for DateField and DateTimeField
                    // https://issues.apache.org/jira/browse/WICKET-4496   
                    // use this as an workaround   
                    time = (Date) dateField.getDefaultModelObject();

                    setDateRange(target);
                }
            });
            dateField.setLabel(new Model<String>(getString("ActionContributor.RunHistory.day")));
            return dateField;
        }

        protected DatePicker newDatePicker() {
            return new DatePicker() {
                private static final long serialVersionUID = 1L;

                @Override
                protected void configure(final Map<String, Object> widgetProperties,
                        final IHeaderResponse response, final Map<String, Object> initVariables) {
                    super.configure(widgetProperties, response, initVariables);
                }

                @Override
                protected boolean enableMonthYearSelection() {
                    return true;
                }
            };
        }
    };
    timeField.setRequired(true);
    timeField.add(new AttributeModifier("class", "timeField"));
    form.add(timeField);

    tillTime = new Date();
    tillTimeField = new DateField("tillTime", new PropertyModel(this, "tillTime")) {
        protected DateTextField newDateTextField(String s, PropertyModel propertyModel) {
            final DateTextField dateField = DateTextField.withConverter(s, propertyModel,
                    new StyleDateConverter("S-", false));
            dateField.add(new AjaxFormComponentUpdatingBehavior("onchange") {
                protected void onUpdate(AjaxRequestTarget target) {
                    // @todo wicket 1.5 does not update model for DateField and DateTimeField
                    // https://issues.apache.org/jira/browse/WICKET-4496      
                    // use this as an workaround                       
                    tillTime = (Date) dateField.getDefaultModelObject();

                    setDateRange(target);
                }
            });
            dateField.setLabel(new Model<String>(getString("ActionContributor.RunHistory.TillDay")));
            return dateField;
        }

        protected DatePicker newDatePicker() {
            return new DatePicker() {
                private static final long serialVersionUID = 1L;

                @Override
                protected void configure(final Map<String, Object> widgetProperties,
                        final IHeaderResponse response, final Map<String, Object> initVariables) {
                    super.configure(widgetProperties, response, initVariables);
                }

                @Override
                protected boolean enableMonthYearSelection() {
                    return true;
                }
            };
        }
    };
    tillTimeField.setVisible(false);
    tillTimeField.setOutputMarkupId(true);
    tillTimeField.setOutputMarkupPlaceholderTag(true);
    tillTimeField.add(new AttributeModifier("class", "timeField"));
    form.add(tillTimeField);

    group.add(runHistoryTable);
    form.add(group);

    Label rowsLabel = new Label("rowsLabel", getString("ActionContributor.RunHistory.rows"));
    form.add(rowsLabel);
    TextField<Integer> rowsTextField = new TextField<Integer>("rows", new PropertyModel(this, "rowsPerPage"));
    rowsTextField.setRequired(true);
    rowsTextField.add(RangeValidator.minimum(5));
    rowsTextField.add(RangeValidator.maximum(1000));
    rowsTextField.setLabel(Model.of(getString("ActionContributor.RunHistory.rows")));
    form.add(rowsTextField);

    AjaxButton rowsLink = new AjaxButton("rowsLink") {

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

        @Override
        protected void onSubmit(AjaxRequestTarget target, Form<?> form) {
            runHistoryTable.setItemsPerPage(rowsPerPage);
            target.add(feedbackPanel);
            target.add(runHistoryTable);
        }
    };
    form.add(rowsLink);

    AjaxSubmitConfirmLink submitLink = new AjaxSubmitConfirmLink("deleteLink", getString("deleteEntities")) {

        private static final long serialVersionUID = 1L;

        public void onSubmit(AjaxRequestTarget target, Form<?> form) {
            if (marked == null) {
                return;
            }
            for (RunReportHistory h : marked) {
                try {
                    storageService.removeEntityById(h.getId());
                } catch (Exception e) {
                    e.printStackTrace();
                    add(new AlertBehavior(e.getMessage()));
                    target.add(this);
                }
            }
            if (marked.size() > 0) {
                target.add(runHistoryTable);
            }
        }

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

    };
    form.add(submitLink);

    WebMarkupContainer buttonsPanel = new WebMarkupContainer("buttonsPanel") {

        @Override
        public boolean isVisible() {
            return (report != null);
        }

    };
    if (NextServerSession.get().isDemo()) {
        submitLink.setVisible(false);
    }

    buttonsPanel.add(new AjaxLink("cancel") {

        @Override
        public void onClick(AjaxRequestTarget target) {
            //                if (ActionUtil.isFromSearch()) {
            //                    setResponsePage(new SearchEntityPage(null));
            //                } else {
            //                    setResponsePage(HomePage.class);
            //                }
            EntityBrowserPanel panel = findParent(EntityBrowserPanel.class);
            panel.backwardWorkspace(target);
        }

    });
    form.add(buttonsPanel);

    add(form);
}