Example usage for org.apache.wicket.ajax AjaxRequestTarget appendJavaScript

List of usage examples for org.apache.wicket.ajax AjaxRequestTarget appendJavaScript

Introduction

In this page you can find the example usage for org.apache.wicket.ajax AjaxRequestTarget appendJavaScript.

Prototype

void appendJavaScript(CharSequence javascript);

Source Link

Document

Adds javascript that will be evaluated on the client side after components are replaced

If the javascript needs to do something asynchronously (i.e.

Usage

From source file:name.martingeisse.wicket.util.AjaxRequestUtil.java

License:Open Source License

/**
 * Opens a Javascript alert box with a fixed message. Does nothing visible
 * but logs an error in non-AJAX requests.
 * @param message the message to show//ww  w . java 2s .  com
 */
public static void alert(String message) {
    AjaxRequestTarget target = getAjaxRequestTarget();
    if (checkTarget(target)) {
        target.appendJavaScript(
                "alert('" + JavascriptAssemblerUtil.escapeStringLiteralSpecialCharacters(message) + "');");
    }
}

From source file:net.dontdrinkandroot.extensions.wicket.component.jqueryui.JQueryUiAjaxSlider.java

License:Apache License

public void onValueChanged(final AjaxRequestTarget target) {

    target.appendJavaScript(String.format("$('#%s').slider({ 'option', 'max', %d})", this.getMarkupId(),
            this.maxModel.getObject()));
    target.appendJavaScript(String.format("$('#%s').slider({ 'option', 'min', %d})", this.getMarkupId(),
            this.minModel.getObject()));
    target.appendJavaScript(String.format("$('#%s').slider({ 'option', 'value', %d})", this.getMarkupId(),
            this.getModelObject()));
}

From source file:net.dontdrinkandroot.wicket.bootstrap.component.progress.ProgressBar.java

License:Apache License

public void update(AjaxRequestTarget target) {

    target.appendJavaScript(
            String.format("$('#%s').css({width: '%d%%'});", this.bar.getMarkupId(), this.getModelObject()));
    target.appendJavaScript(String.format("$('#%s').attr('aria-valuenow', %d);", this.bar.getMarkupId(),
            this.getModelObject()));
}

From source file:net.rrm.ehour.ui.common.panel.entryselector.EntrySelectorPanel.java

License:Open Source License

public void reRender(AjaxRequestTarget target) {
    target.add(listContainer);
    target.appendJavaScript(jsRefresh());
}

From source file:net.rrm.ehour.ui.common.panel.entryselector.EntrySelectorPanel.java

License:Open Source License

private void addHideInactiveFilter(Form<Void> form) {
    final HideInactiveFilter hideInactiveFilter = new HideInactiveFilter();
    hideInactiveFilter.setHideInactive(getEhourWebSession().getHideInactiveSelections());

    final WebMarkupContainer filterIcon = new WebMarkupContainer("filterIcon");
    addFilterIconAttributes(filterIcon, getEhourWebSession().getHideInactiveSelections());
    filterIcon.setOutputMarkupId(true);/*from  w  w  w  .j a  v a 2s  .c  o m*/

    final AjaxLink<Void> hideInactiveLink = new AjaxLink<Void>("filterToggle") {
        @Override
        public void onClick(AjaxRequestTarget target) {
            Boolean hideInactiveSelections = getEhourWebSession().toggleHideInactiveSelections();
            HideInactiveFilter inactiveFilter = new HideInactiveFilter(hideInactiveSelections);
            send(getPage(), Broadcast.DEPTH, new InactiveFilterChangedEvent(inactiveFilter, target));

            target.appendJavaScript(jsRefresh());

            filterIcon.removeAll();
            addFilterIconAttributes(filterIcon, getEhourWebSession().getHideInactiveSelections());
            target.add(filterIcon);
        }

        @Override
        protected void updateAjaxAttributes(AjaxRequestAttributes attributes) {
            super.updateAjaxAttributes(attributes);

            attributes.getAjaxCallListeners().add(new LoadingSpinnerDecorator());
        }
    };

    hideInactiveLink.setVisible(showHideInactiveLink);
    hideInactiveLink.add(filterIcon);
    form.add(hideInactiveLink);
}

From source file:net.rrm.ehour.ui.report.panel.criteria.ReportCriteriaPanel.java

License:Open Source License

private void addCustomerSelection(final ReportCriteriaBackingBean bean, WebMarkupContainer parent) {
    customers = new ListMultipleChoice<>("reportCriteria.userSelectedCriteria.customers",
            new PropertyModel<Collection<Customer>>(bean, "reportCriteria.userSelectedCriteria.customers"),
            new PropertyModel<List<Customer>>(bean, "reportCriteria.availableCriteria.customers"),
            new DomainObjectChoiceRenderer<Customer>());
    customers.setMarkupId("customerSelect");
    customers.setMaxRows(MAX_CRITERIA_ROW);

    customers.setOutputMarkupId(true);//from w w w  . j ava 2 s  .  co m

    customers.add(new AjaxFormComponentUpdatingBehavior("change") {
        private static final long serialVersionUID = -5588313671121851508L;

        protected void onUpdate(AjaxRequestTarget target) {
            // show only projects for selected customers
            List<Customer> preCustomers = Lists
                    .newArrayList(bean.getReportCriteria().getAvailableCriteria().getCustomers());

            updateReportCriteria(ReportCriteriaUpdateType.UPDATE_CUSTOMERS_AND_PROJECTS);

            List<Customer> postCustomers = bean.getReportCriteria().getAvailableCriteria().getCustomers();

            if (!preCustomers.containsAll(postCustomers)) {
                updateCustomers(target);
            }
            updateProjects(target);
        }
    });

    parent.add(customers);

    final AjaxCheckBox deactivateBox = new AjaxCheckBox(
            "reportCriteria.userSelectedCriteria.onlyActiveCustomers") {
        @Override
        protected void onUpdate(AjaxRequestTarget target) {
            updateCustomersAndProjects(target);
        }
    };
    deactivateBox.setOutputMarkupId(true);
    parent.add(deactivateBox);

    final DropDownChoice<Sort> customerSort = createCustomerSort();
    parent.add(customerSort);

    parent.add(new AjaxLink<Void>("clearCustomer") {
        @Override
        public void onClick(AjaxRequestTarget target) {
            bean.getReportCriteria().getUserSelectedCriteria().resetCustomerSelection();

            updateReportCriteria(ReportCriteriaUpdateType.UPDATE_CUSTOMERS_AND_PROJECTS);

            updateCustomers(target);
            updateProjects(target);

            target.appendJavaScript(getCustomerFilterClearScript());

            target.add(customerSort);
            target.add(deactivateBox);
        }
    });
}

From source file:net.rrm.ehour.ui.report.panel.criteria.ReportCriteriaPanel.java

License:Open Source License

private void addProjectSelection(final ReportCriteriaBackingBean bean, WebMarkupContainer parent) {
    projects = new ListMultipleChoice<>("reportCriteria.userSelectedCriteria.projects",
            new PropertyModel<List<Project>>(bean, "reportCriteria.availableCriteria.projects"),
            new DomainObjectChoiceRenderer<Project>());
    projects.setMaxRows(MAX_CRITERIA_ROW);
    projects.setOutputMarkupId(true);//from ww  w  . j  a v a2 s.c om
    projects.setMarkupId("projectSelect");

    projects.add(new AjaxFormComponentUpdatingBehavior("change") {
        @Override
        protected void onUpdate(AjaxRequestTarget target) {

        }
    });

    parent.add(projects);

    final AjaxCheckBox onlyActiveCheckbox = new AjaxCheckBox(
            "reportCriteria.userSelectedCriteria.onlyActiveProjects") {
        @Override
        protected void onUpdate(AjaxRequestTarget target) {
            updateReportCriteria(ReportCriteriaUpdateType.UPDATE_CUSTOMERS_AND_PROJECTS);
            updateCustomers(target);
            updateProjects(target);
        }
    };
    onlyActiveCheckbox.setOutputMarkupId(true);
    parent.add(onlyActiveCheckbox);

    final AjaxCheckBox billableCheckbox = new AjaxCheckBox(
            "reportCriteria.userSelectedCriteria.onlyBillableProjects",
            new PropertyModel<Boolean>(ReportCriteriaPanel.this.getDefaultModel(),
                    "reportCriteria.userSelectedCriteria.onlyBillableProjects")) {
        @Override
        protected void onUpdate(AjaxRequestTarget target) {
            updateReportCriteria(ReportCriteriaUpdateType.UPDATE_CUSTOMERS_AND_PROJECTS);
            updateProjects(target);
        }
    };

    billableCheckbox.setMarkupId("reportCriteria.userSelectedCriteria.onlyBillableProjects");
    billableCheckbox.setOutputMarkupId(true);
    parent.add(billableCheckbox);

    final DropDownChoice<Sort> projectSort = createProjectSort();
    parent.add(projectSort);

    parent.add(new AjaxLink<Void>("clearProject") {
        @Override
        public void onClick(AjaxRequestTarget target) {
            bean.getReportCriteria().getUserSelectedCriteria().resetProjectSelection();

            updateReportCriteria(ReportCriteriaUpdateType.UPDATE_CUSTOMERS_AND_PROJECTS);

            updateCustomers(target);
            updateProjects(target);

            target.appendJavaScript(getProjectFilterClearScript());

            target.add(projectSort);
            target.add(billableCheckbox);
            target.add(onlyActiveCheckbox);
        }
    });
}

From source file:net.rrm.ehour.ui.report.panel.criteria.ReportCriteriaPanel.java

License:Open Source License

private void applyClientSideProjectFilter(AjaxRequestTarget target) {
    target.appendJavaScript(getProjectFilterRegistrationScript());
}

From source file:net.rrm.ehour.ui.report.panel.criteria.ReportCriteriaPanel.java

License:Open Source License

private void applyClientSideCustomerFilter(AjaxRequestTarget target) {
    target.appendJavaScript(getCustomerFilterRegistrationScript());
}

From source file:net.rrm.ehour.ui.report.panel.criteria.ReportCriteriaPanel.java

License:Open Source License

private void addUserSelection(final ReportCriteriaBackingBean bean, WebMarkupContainer parent) {
    users = new ListMultipleChoice<>("reportCriteria.userSelectedCriteria.users",
            new PropertyModel<List<User>>(getDefaultModel(), "reportCriteria.availableCriteria.users"),
            new DomainObjectChoiceRenderer<User>());
    users.setMarkupId("userSelect");
    users.setOutputMarkupId(true);/*  w w  w  . j av a2s .  com*/
    users.setMaxRows(MAX_CRITERIA_ROW);
    parent.add(users);

    // hide active checkbox
    final AjaxCheckBox deactivateBox = new AjaxCheckBox("reportCriteria.userSelectedCriteria.onlyActiveUsers") {
        private static final long serialVersionUID = 2585047163449150793L;

        @Override
        protected void onUpdate(AjaxRequestTarget target) {
            updateReportCriteria(ReportCriteriaUpdateType.UPDATE_USERS_AND_DEPTS);
            target.add(users);

            // reapply the filter to the possible new contents of the dropdowns
            target.appendJavaScript(getUserFilterRegistrationScript());
        }
    };

    parent.add(deactivateBox);

    Label filterToggleText = new Label("onlyActiveUsersLabel", new ResourceModel("report.onlyActiveUsers"));
    parent.add(filterToggleText);

    parent.add(new AjaxLink<Void>("clearUser") {
        @Override
        public void onClick(AjaxRequestTarget target) {
            bean.getReportCriteria().getUserSelectedCriteria().resetUserSelection();

            updateReportCriteria(ReportCriteriaUpdateType.UPDATE_USERS_AND_DEPTS);

            updateUsers(target);
            updateDepartments(target);

            target.appendJavaScript(getUserFilterClearScript());
        }
    });
}