Example usage for org.apache.wicket.ajax.markup.html AjaxLink AjaxLink

List of usage examples for org.apache.wicket.ajax.markup.html AjaxLink AjaxLink

Introduction

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

Prototype

public AjaxLink(final String id) 

Source Link

Document

Construct.

Usage

From source file:cz.zcu.kiv.eegdatabase.wui.ui.lists.ListHardwareDefinitionsPage.java

License:Apache License

private void setupComponents() {

    setPageTitle(ResourceUtils.getModel("pageTitle.hardwareList"));
    add(new ButtonPageMenu("leftMenu", ListsLeftPageMenu.values()));

    final WebMarkupContainer container = new WebMarkupContainer("container");
    container.setOutputMarkupId(true);/*from  w ww  . j a v  a 2s  .c o  m*/
    container.setOutputMarkupPlaceholderTag(true);

    final ListModelWithResearchGroupCriteria<Hardware> model = new ListModelWithResearchGroupCriteria<Hardware>() {

        private static final long serialVersionUID = 1L;

        @Override
        protected List<Hardware> loadList(ResearchGroup group) {
            if (group == null || group.getResearchGroupId() == CoreConstants.DEFAULT_ITEM_ID)
                return facade.getDefaultRecords();
            else {
                return facade.getRecordsByGroup(group.getResearchGroupId());
            }
        }
    };

    List<ResearchGroup> groups;
    final boolean isAdmin = security.isAdmin();
    final boolean isExperimenter = security.userIsExperimenter();
    if (isAdmin) {
        ResearchGroup defaultGroup = new ResearchGroup(CoreConstants.DEFAULT_ITEM_ID,
                EEGDataBaseSession.get().getLoggedUser(), ResourceUtils.getString("label.defaultHardware"),
                "-");
        groups = researchGroupFacade.getAllRecords();
        groups.add(0, defaultGroup);
    } else
        groups = researchGroupFacade.getResearchGroupsWhereMember(EEGDataBaseSession.get().getLoggedUser());

    PropertyListView<Hardware> hardware = new PropertyListView<Hardware>("hardware", model) {

        private static final long serialVersionUID = 1L;

        @Override
        protected void populateItem(final ListItem<Hardware> item) {
            item.add(new Label("hardwareId"));
            item.add(new Label("title"));
            item.add(new Label("type"));
            item.add(new Label("description"));

            PageParameters parameters = PageParametersUtils
                    .getDefaultPageParameters(item.getModelObject().getHardwareId())
                    .add(PageParametersUtils.GROUP_PARAM,
                            (model.getCriteriaModel().getObject() == null) ? CoreConstants.DEFAULT_ITEM_ID
                                    : model.getCriteriaModel().getObject().getResearchGroupId());

            item.add(new BookmarkablePageLink<Void>("edit", HardwareFormPage.class, parameters));
            item.add(new AjaxLink<Void>("delete") {

                private static final long serialVersionUID = 1L;

                @Override
                public void onClick(AjaxRequestTarget target) {

                    target.add(getFeedback());
                    int id = item.getModelObject().getHardwareId();
                    ResearchGroup group = model.getCriteriaModel().getObject();

                    if (facade.canDelete(id)) {
                        if (group != null) {
                            int groupId = group.getResearchGroupId();

                            if (groupId == CoreConstants.DEFAULT_ITEM_ID) { // delete default weather if it's from default group
                                if (!facade.hasGroupRel(id)) { // delete only if it doesn't have group relationship
                                    facade.delete(item.getModelObject());
                                    //getFeedback().info(ResourceUtils.getString("text.itemWasDeletedFromDatabase"));
                                    setResponsePage(ListHardwareDefinitionsPage.class);
                                } else {
                                    getFeedback().error(ResourceUtils.getString("text.itemInUse"));
                                }
                            } else {
                                HardwareGroupRel h = facade.getGroupRel(id, groupId);
                                facade.deleteGroupRel(h);
                                if (!facade.isDefault(id)) { // delete only non default weather
                                    facade.delete(item.getModelObject());
                                }
                                setResponsePage(ListHardwareDefinitionsPage.class);
                            }
                        }

                    } else {
                        getFeedback().error(ResourceUtils.getString("text.itemInUse"));
                    }

                }

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

                    AjaxCallListener ajaxCallListener = new AjaxCallListener();
                    ajaxCallListener.onPrecondition("return confirm('Are you sure you want to delete item?');");
                    attributes.getAjaxCallListeners().add(ajaxCallListener);
                }

            }.setVisibilityAllowed(isAdmin || isExperimenter));

        }
    };
    container.add(hardware);

    AjaxLink<Void> link = new AjaxLink<Void>("addHardwareLink") {

        private static final long serialVersionUID = 1L;

        @Override
        public void onClick(AjaxRequestTarget target) {
            int researchGroupId = (model.getCriteriaModel().getObject() == null) ? CoreConstants.DEFAULT_ITEM_ID
                    : model.getCriteriaModel().getObject().getResearchGroupId();
            setResponsePage(HardwareFormPage.class,
                    PageParametersUtils.getPageParameters(PageParametersUtils.GROUP_PARAM, researchGroupId));
        }
    };
    link.setVisibilityAllowed(isAdmin || isExperimenter);

    add(new ResearchGroupSelectForm("form", model.getCriteriaModel(), new ListModel<ResearchGroup>(groups),
            container, isAdmin));
    add(link, container);
}

From source file:cz.zcu.kiv.eegdatabase.wui.ui.lists.ListPersonOptParamPage.java

License:Apache License

private void setupComponents() {

    setPageTitle(ResourceUtils.getModel("pageTitle.personOptionalParameterList"));
    add(new ButtonPageMenu("leftMenu", ListsLeftPageMenu.values()));

    final WebMarkupContainer container = new WebMarkupContainer("container");
    container.setOutputMarkupPlaceholderTag(true);

    final ListModelWithResearchGroupCriteria<PersonOptParamDef> model = new ListModelWithResearchGroupCriteria<PersonOptParamDef>() {

        private static final long serialVersionUID = 1L;

        @Override/*from  ww w. j a v a2 s. c  om*/
        protected List<PersonOptParamDef> loadList(ResearchGroup group) {
            if (group == null || group.getResearchGroupId() == CoreConstants.DEFAULT_ITEM_ID)
                return facade.getDefaultRecords();
            else {
                return facade.getRecordsByGroup(group.getResearchGroupId());
            }
        }
    };

    List<ResearchGroup> groups;
    final boolean isAdmin = security.isAdmin();
    final boolean isExperimenter = security.userIsExperimenter();
    if (isAdmin) {
        ResearchGroup defaultGroup = new ResearchGroup(CoreConstants.DEFAULT_ITEM_ID,
                EEGDataBaseSession.get().getLoggedUser(),
                ResourceUtils.getString("label.defaultPersonOptParamDef"), "-");
        groups = researchGroupFacade.getAllRecords();
        groups.add(0, defaultGroup);
    } else
        groups = researchGroupFacade.getResearchGroupsWhereMember(EEGDataBaseSession.get().getLoggedUser());

    PropertyListView<PersonOptParamDef> params = new PropertyListView<PersonOptParamDef>("params", model) {

        private static final long serialVersionUID = 1L;

        @Override
        protected void populateItem(final ListItem<PersonOptParamDef> item) {
            item.add(new Label("personOptParamDefId"));
            item.add(new Label("paramName"));
            item.add(new Label("paramDataType"));

            PageParameters parameters = PageParametersUtils
                    .getDefaultPageParameters(item.getModelObject().getPersonOptParamDefId())
                    .add(PageParametersUtils.GROUP_PARAM,
                            (model.getCriteriaModel().getObject() == null) ? CoreConstants.DEFAULT_ITEM_ID
                                    : model.getCriteriaModel().getObject().getResearchGroupId());

            item.add(new BookmarkablePageLink<Void>("edit", PersonOptParamFormPage.class, parameters));
            item.add(new AjaxLink<Void>("delete") {

                private static final long serialVersionUID = 1L;

                @Override
                public void onClick(AjaxRequestTarget target) {

                    int id = item.getModelObject().getPersonOptParamDefId();
                    ResearchGroup group = model.getCriteriaModel().getObject();

                    if (facade.canDelete(id)) {
                        if (group != null) {
                            int groupId = group.getResearchGroupId();

                            if (groupId == CoreConstants.DEFAULT_ITEM_ID) { // delete default weather if it's from default group
                                if (!facade.hasGroupRel(id)) { // delete only if it doesn't have group relationship
                                    facade.delete(item.getModelObject());
                                    setResponsePage(ListPersonOptParamPage.class);
                                } else {
                                    getFeedback().error(ResourceUtils.getString("text.itemInUse"));
                                }
                            } else {
                                PersonOptParamDefGroupRel h = facade.getGroupRel(id, groupId);
                                if (!facade.isDefault(id)) { // delete only non default weather
                                    facade.delete(item.getModelObject());
                                }
                                facade.deleteGroupRel(h);
                                setResponsePage(ListPersonOptParamPage.class);
                            }
                        }

                    } else {
                        getFeedback().error(ResourceUtils.getString("text.itemInUse"));
                    }

                    target.add(container);
                    target.add(getFeedback());
                }

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

                    AjaxCallListener ajaxCallListener = new AjaxCallListener();
                    ajaxCallListener.onPrecondition("return confirm('Are you sure you want to delete item?');");
                    attributes.getAjaxCallListeners().add(ajaxCallListener);
                }

            }.setVisibilityAllowed(isAdmin || isExperimenter));

        }
    };
    container.add(params);

    AjaxLink<Void> link = new AjaxLink<Void>("addParamLink") {

        private static final long serialVersionUID = 1L;

        @Override
        public void onClick(AjaxRequestTarget target) {
            int researchGroupId = (model.getCriteriaModel().getObject() == null) ? CoreConstants.DEFAULT_ITEM_ID
                    : model.getCriteriaModel().getObject().getResearchGroupId();
            setResponsePage(PersonOptParamFormPage.class,
                    PageParametersUtils.getPageParameters(PageParametersUtils.GROUP_PARAM, researchGroupId));
        }
    };
    link.setVisibilityAllowed(isAdmin || isExperimenter);

    add(new ResearchGroupSelectForm("form", model.getCriteriaModel(), new ListModel<ResearchGroup>(groups),
            container, isAdmin));
    add(link, container);
}

From source file:cz.zcu.kiv.eegdatabase.wui.ui.lists.ListSoftwareDefinitionsPage.java

License:Apache License

private void setupComponents() {

    setPageTitle(ResourceUtils.getModel("pageTitle.softwareList"));
    add(new ButtonPageMenu("leftMenu", ListsLeftPageMenu.values()));

    final WebMarkupContainer container = new WebMarkupContainer("container");
    container.setOutputMarkupId(true);/*from   w ww .j ava2 s. c  o  m*/
    container.setOutputMarkupPlaceholderTag(true);

    final ListModelWithResearchGroupCriteria<Software> model = new ListModelWithResearchGroupCriteria<Software>() {

        private static final long serialVersionUID = 1L;

        @Override
        protected List<Software> loadList(ResearchGroup group) {
            if (group == null || group.getResearchGroupId() == CoreConstants.DEFAULT_ITEM_ID)
                return facade.getDefaultRecords();
            else {
                return facade.getRecordsByGroup(group.getResearchGroupId());
            }
        }
    };

    List<ResearchGroup> groups;
    final boolean isAdmin = security.isAdmin();
    final boolean isExperimenter = security.userIsExperimenter();
    if (isAdmin) {
        ResearchGroup defaultGroup = new ResearchGroup(CoreConstants.DEFAULT_ITEM_ID,
                EEGDataBaseSession.get().getLoggedUser(), ResourceUtils.getString("label.defaultSoftware"),
                "-");
        groups = researchGroupFacade.getAllRecords();
        groups.add(0, defaultGroup);
    } else
        groups = researchGroupFacade.getResearchGroupsWhereMember(EEGDataBaseSession.get().getLoggedUser());

    PropertyListView<Software> software = new PropertyListView<Software>("software", model) {

        private static final long serialVersionUID = 1L;

        @Override
        protected void populateItem(final ListItem<Software> item) {
            item.add(new Label("softwareId"));
            item.add(new Label("title"));
            item.add(new Label("description"));

            PageParameters parameters = PageParametersUtils
                    .getDefaultPageParameters(item.getModelObject().getSoftwareId())
                    .add(PageParametersUtils.GROUP_PARAM,
                            (model.getCriteriaModel().getObject() == null) ? CoreConstants.DEFAULT_ITEM_ID
                                    : model.getCriteriaModel().getObject().getResearchGroupId());

            item.add(new BookmarkablePageLink<Void>("edit", SoftwareFormPage.class, parameters));
            item.add(new AjaxLink<Void>("delete") {

                private static final long serialVersionUID = 1L;

                @Override
                public void onClick(AjaxRequestTarget target) {

                    target.add(getFeedback());
                    int id = item.getModelObject().getSoftwareId();
                    ResearchGroup group = model.getCriteriaModel().getObject();

                    if (facade.canDelete(id)) {
                        if (group != null) {
                            int groupId = group.getResearchGroupId();

                            if (groupId == CoreConstants.DEFAULT_ITEM_ID) { // delete default item if it's from default group
                                if (!facade.hasGroupRel(id)) { // delete only if it doesn't have group relationship
                                    facade.delete(item.getModelObject());
                                    //getFeedback().info(ResourceUtils.getString("text.itemWasDeletedFromDatabase"));
                                    setResponsePage(ListSoftwareDefinitionsPage.class);
                                } else {
                                    getFeedback().error(ResourceUtils.getString("text.itemInUse"));
                                }
                            } else {

                                if (!facade.isDefault(id)) { // delete only non default weather
                                    facade.delete(item.getModelObject());
                                }
                                setResponsePage(ListSoftwareDefinitionsPage.class);
                            }
                        }

                    } else {
                        getFeedback().error(ResourceUtils.getString("text.itemInUse"));
                    }

                }

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

                    AjaxCallListener ajaxCallListener = new AjaxCallListener();
                    ajaxCallListener.onPrecondition("return confirm('Are you sure you want to delete item?');");
                    attributes.getAjaxCallListeners().add(ajaxCallListener);
                }

            }.setVisibilityAllowed(isAdmin || isExperimenter));

        }
    };
    container.add(software);

    AjaxLink<Void> link = new AjaxLink<Void>("addSoftwareLink") {

        private static final long serialVersionUID = 1L;

        @Override
        public void onClick(AjaxRequestTarget target) {
            int researchGroupId = (model.getCriteriaModel().getObject() == null) ? CoreConstants.DEFAULT_ITEM_ID
                    : model.getCriteriaModel().getObject().getResearchGroupId();
            setResponsePage(SoftwareFormPage.class,
                    PageParametersUtils.getPageParameters(PageParametersUtils.GROUP_PARAM, researchGroupId));
        }
    };
    link.setVisibilityAllowed(isAdmin || isExperimenter);

    add(new ResearchGroupSelectForm("form", model.getCriteriaModel(), new ListModel<ResearchGroup>(groups),
            container, isAdmin));
    add(link, container);
}

From source file:cz.zcu.kiv.eegdatabase.wui.ui.lists.ListWeatherDefinitiosPage.java

License:Apache License

private void setupComponents() {

    setPageTitle(ResourceUtils.getModel("pageTitle.weatherDefinitionsList"));

    add(new ButtonPageMenu("leftMenu", ListsLeftPageMenu.values()));

    final WebMarkupContainer container = new WebMarkupContainer("container");
    container.setOutputMarkupPlaceholderTag(true);

    final ListModelWithResearchGroupCriteria<Weather> model = new ListModelWithResearchGroupCriteria<Weather>() {

        private static final long serialVersionUID = 1L;

        @Override/* w w  w . j a va  2 s . co  m*/
        protected List<Weather> loadList(ResearchGroup group) {
            if (group == null || group.getResearchGroupId() == CoreConstants.DEFAULT_ITEM_ID)
                return facade.getDefaultRecords();
            else {
                return facade.getRecordsByGroup(group.getResearchGroupId());
            }
        }
    };

    List<ResearchGroup> groups;
    final boolean isAdmin = security.isAdmin();
    final boolean isExperimenter = security.userIsExperimenter();
    if (isAdmin) {
        ResearchGroup defaultGroup = new ResearchGroup(CoreConstants.DEFAULT_ITEM_ID,
                EEGDataBaseSession.get().getLoggedUser(), ResourceUtils.getString("label.defaultWeather"), "-");
        groups = researchGroupFacade.getAllRecords();
        groups.add(0, defaultGroup);
    } else
        groups = researchGroupFacade.getResearchGroupsWhereMember(EEGDataBaseSession.get().getLoggedUser());

    PropertyListView<Weather> weathers = new PropertyListView<Weather>("weathers", model) {

        private static final long serialVersionUID = 1L;

        @Override
        protected void populateItem(final ListItem<Weather> item) {
            item.add(new Label("weatherId"));
            item.add(new Label("title"));
            item.add(new Label("description"));

            PageParameters parameters = PageParametersUtils
                    .getDefaultPageParameters(item.getModelObject().getWeatherId())
                    .add(PageParametersUtils.GROUP_PARAM,
                            (model.getCriteriaModel().getObject() == null) ? CoreConstants.DEFAULT_ITEM_ID
                                    : model.getCriteriaModel().getObject().getResearchGroupId());

            item.add(new BookmarkablePageLink<Void>("edit", WeatherFormPage.class, parameters));
            item.add(new AjaxLink<Void>("delete") {

                private static final long serialVersionUID = 1L;

                @Override
                public void onClick(AjaxRequestTarget target) {

                    int id = item.getModelObject().getWeatherId();
                    ResearchGroup group = model.getCriteriaModel().getObject();

                    if (facade.canDelete(id)) {
                        if (group != null) {
                            int groupId = group.getResearchGroupId();

                            if (groupId == CoreConstants.DEFAULT_ITEM_ID) { // delete default weather if it's from default group
                                if (!facade.hasGroupRel(id)) { // delete only if it doesn't have group relationship
                                    facade.delete(item.getModelObject());
                                    setResponsePage(ListWeatherDefinitiosPage.class);
                                } else {
                                    getFeedback().error(ResourceUtils.getString("text.itemInUse"));
                                }
                            } else {
                                WeatherGroupRel h = facade.getGroupRel(id, groupId);
                                if (!facade.isDefault(id)) { // delete only non default weather
                                    facade.delete(item.getModelObject());
                                }
                                facade.deleteGroupRel(h);
                                setResponsePage(ListWeatherDefinitiosPage.class);
                            }
                        }

                    } else {
                        getFeedback().error(ResourceUtils.getString("text.itemInUse"));
                    }

                    target.add(container);
                    target.add(getFeedback());
                }

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

                    AjaxCallListener ajaxCallListener = new AjaxCallListener();
                    ajaxCallListener.onPrecondition("return confirm('Are you sure you want to delete item?');");
                    attributes.getAjaxCallListeners().add(ajaxCallListener);
                }

            }.setVisibilityAllowed(isAdmin || isExperimenter));

        }
    };
    container.add(weathers);

    AjaxLink<Void> link = new AjaxLink<Void>("addWeatherLink") {

        private static final long serialVersionUID = 1L;

        @Override
        public void onClick(AjaxRequestTarget target) {
            int researchGroupId = (model.getCriteriaModel().getObject() == null) ? CoreConstants.DEFAULT_ITEM_ID
                    : model.getCriteriaModel().getObject().getResearchGroupId();
            setResponsePage(WeatherFormPage.class,
                    PageParametersUtils.getPageParameters(PageParametersUtils.GROUP_PARAM, researchGroupId));
        }
    };
    link.setVisibilityAllowed(isAdmin || isExperimenter);

    add(new ResearchGroupSelectForm("form", model.getCriteriaModel(), new ListModel<ResearchGroup>(groups),
            container, isAdmin));
    add(link, container);

}

From source file:cz.zcu.kiv.eegdatabase.wui.ui.order.OrderItemPanel.java

License:Apache License

public OrderItemPanel(String id, final IModel<OrderItem> model, final boolean malleable) {
    super(id, new CompoundPropertyModel<OrderItem>(model));

    this.malleable = malleable;

    showActionModel = ResourceUtils.getModel("action.show");
    hideActionModel = ResourceUtils.getModel("action.hide");

    final OrderItem modelItem = model.getObject();
    final Experiment experiment = model.getObject().getExperiment();
    final ExperimentPackage experimentPackage = model.getObject().getExperimentPackage();
    final MembershipPlan membershipPlan = model.getObject().getMembershipPlan();
    final ResearchGroup researchGroup = model.getObject().getResearchGroup();

    // prepare containers
    WebMarkupContainer experimentContainer = new WebMarkupContainer("experiment") {

        private static final long serialVersionUID = 1L;

        @Override/* w ww  . j av  a  2  s.  c  om*/
        public boolean isVisible() {
            return experiment != null;
        }
    };

    final WebMarkupContainer packageContainer = new WebMarkupContainer("package") {

        private static final long serialVersionUID = 1L;

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

    WebMarkupContainer membershipPlanContainer = new WebMarkupContainer("membershipPlan") {

        private static final long serialVersionUID = 1L;

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

    // prepare texts for experiment container
    int experimentId;
    String scenarioTitle;
    String date;
    if (experiment != null) {
        experimentId = experiment.getExperimentId();
        scenarioTitle = experiment.getScenario().getTitle();
        date = new SimpleDateFormat(StringUtils.DATE_TIME_FORMAT_PATTER, EEGDataBaseSession.get().getLocale())
                .format((Date) experiment.getStartTime());
    } else {
        experimentId = 0;
        scenarioTitle = "";
        date = "";
    }

    int membershipPlanID;
    String membershipPlanName = "";
    String researchGroupName = "";

    if (membershipPlan != null) {
        membershipPlanName = membershipPlan.getName();
        membershipPlanID = membershipPlan.getMembershipId();
    } else {
        membershipPlanID = -1;
    }
    if (researchGroup != null) {
        researchGroupName = " for " + researchGroup.getDescription();
    } else {
        researchGroupName = "";
    }

    // add components for experiment container
    experimentContainer.add(new Label("experimentText1", ResourceUtils.getModel("text.order.item.experiment1",
            Integer.toString(experimentId), scenarioTitle)));
    experimentContainer
            .add(new Label("experimentText2", ResourceUtils.getModel("text.order.item.experiment2", date)));
    experimentContainer.add(new BookmarkablePageLink<Void>("detail", ExperimentsDetailPage.class,
            PageParametersUtils.getDefaultPageParameters(experimentId)));
    ExperimentBuyDownloadLinkPanel downloadExpLink = new ExperimentBuyDownloadLinkPanel("downloadExpLink",
            experiment, new Model<ExperimentLicence>());
    downloadExpLink.setVisible(EEGDataBaseSession.get().isExperimentPurchased(experimentId));
    experimentContainer.add(downloadExpLink);

    membershipPlanContainer.add(new Label("membershipPlanText1", membershipPlanName + researchGroupName));
    membershipPlanContainer.add(new BookmarkablePageLink<Void>("detail", MembershipPlansDetailPage.class,
            PageParametersUtils.getDefaultPageParameters(membershipPlanID)));
    final ModalWindow promoCodePopup = this.addPromoCodePopup(modelItem, membershipPlanContainer);

    // prepare texts for package container
    final int packageId;
    String name;
    String group;
    if (experimentPackage != null) {
        packageId = experimentPackage.getExperimentPackageId();
        name = experimentPackage.getName();
        group = experimentPackage.getResearchGroup() != null ? experimentPackage.getResearchGroup().getTitle()
                : "";
    } else {
        packageId = 0;
        name = "";
        group = "";
    }

    // add components for package container
    packageContainer.add(new Label("packageText1", ResourceUtils.getModel("text.order.item.package1", name)));
    //packageContainer.add(new Label("packageText2", ResourceUtils.getModel("text.order.item.package2", group)));

    // add component for list of experiments in package
    final PropertyListView<Experiment> packageExperimentList = new PropertyListView<Experiment>("experiments",
            facade.getExperimentsByPackage(packageId)) {

        private static final long serialVersionUID = 1L;

        @Override
        protected void populateItem(ListItem<Experiment> item) {
            item.add(new Label("experimentId"));
            item.add(new Label("scenario.title"));
            item.add(new TimestampLabel("date", item.getModelObject().getStartTime(),
                    StringUtils.DATE_TIME_FORMAT_PATTER));
            item.add(new BookmarkablePageLink<Void>("detail", ExperimentsDetailPage.class,
                    PageParametersUtils.getDefaultPageParameters(item.getModelObject().getExperimentId())));
        }
    };

    // add show hide link for list of experiments in package
    final Label showHideLinkLabel = new Label("showHideLinkLabel", showActionModel);
    AjaxLink<Void> showHideLink = new AjaxLink<Void>("detail") {

        private static final long serialVersionUID = 1L;

        @Override
        public void onClick(AjaxRequestTarget target) {

            packageExperimentList.setVisible(!packageExperimentList.isVisible());
            if (packageExperimentList.isVisible())
                showHideLinkLabel.setDefaultModel(hideActionModel);
            else
                showHideLinkLabel.setDefaultModel(showActionModel);

            target.add(packageContainer);
        }
    };

    showHideLink.add(showHideLinkLabel);
    packageContainer.add(showHideLink);
    packageContainer.add(packageExperimentList);
    packageContainer.add(new BookmarkablePageLink<ExperimentsPackageDownloadPage>("downloadLink",
            ExperimentsPackageDownloadPage.class, PageParametersUtils.getDefaultPageParameters(packageId)) {

        private static final long serialVersionUID = 1L;

        @Override
        public boolean isVisible() {
            return !malleable;
        }

    });

    packageExperimentList.setVisible(false);

    experimentContainer.setOutputMarkupId(true);
    packageContainer.setOutputMarkupId(true);
    add(experimentContainer, packageContainer, membershipPlanContainer);
    //BookmarkablePageLink<Void> applyPromoCodeLink = new BookmarkablePageLink<Void>("applyPromoCode", BuyMembershipPlanPersonPage.class);
    //add(applyPromoCodeLink);

}

From source file:cz.zcu.kiv.eegdatabase.wui.ui.order.OrderItemPanel.java

License:Apache License

private ModalWindow addPromoCodePopup(final OrderItem parent, WebMarkupContainer membershipPlanContainer) {
    final ModalWindow popup = new ModalWindow("promoCodePopup");
    popup.setAutoSize(true);/*from ww w  .j a  v  a2  s  . c o m*/
    popup.setResizable(false);
    popup.setMinimalWidth(500);
    popup.setWidthUnit("px");
    popup.showUnloadConfirmation(false);

    PromoCodePopupForm popupForm = new PromoCodePopupForm(popup.getContentId(),
            new Model<StringWrapper>(new StringWrapper())) {

        @Override
        protected void onSubmitAction(IModel<StringWrapper> strWrapper, AjaxRequestTarget target,
                Form<?> form) {
            String code = strWrapper.getObject().getValue();
            if (parent.getMembershipPlan() != null) {
                if (parent.getResearchGroup() == null) {
                    if (promoFacade.isValidPersonalPlanCode(code)) {
                        PromoCode promoCode = promoFacade.getPromoCodeByKeyword(code);
                        parent.setPromoCode(promoCode);
                        double price = parent.getMembershipPlan().getPrice().doubleValue()
                                * (1d - ((double) promoCode.getDiscount() / 100d));
                        parent.setPrice(new BigDecimal(price));
                    }
                } else {
                    if (promoFacade.isValidGroupPlanCode(code)) {
                        PromoCode promoCode = promoFacade.getPromoCodeByKeyword(code);
                        parent.setPromoCode(promoCode);
                        double price = parent.getMembershipPlan().getPrice().doubleValue()
                                * (1d - ((double) promoCode.getDiscount() / 100d));
                        parent.setPrice(new BigDecimal(price));
                    }
                }
            }
            ModalWindow.closeCurrent(target);
            setResponsePage(ShoppingCartPage.class);
        }

        @Override
        protected void onCancelAction(IModel<StringWrapper> strWrapper, AjaxRequestTarget target,
                Form<?> form) {
            ModalWindow.closeCurrent(target);
        }

    };
    popup.setContent(popupForm);
    membershipPlanContainer.add(popup);
    AjaxLink popupLink = new AjaxLink<Object>("applyPromoCode") {

        private static final long serialVersionUID = 1L;

        @Override
        public void onClick(AjaxRequestTarget target) {
            //License l = this.getModelObject();
            //if (l!=null) System.out.println(l.getTitle());
            popup.show(target);
        }

    };
    popup.setOutputMarkupPlaceholderTag(true);
    popup.setVisibilityAllowed(true);
    String promoCode = "";
    if (parent.getPromoCode() != null) {
        promoCode = "Applied code: " + parent.getPromoCode().getKeyword() + " ("
                + parent.getPromoCode().getDiscount() + "% off)";
    }
    membershipPlanContainer.add(new Label("promoCodeText", promoCode));
    membershipPlanContainer.add(popupLink);
    popupLink.setVisible(malleable);
    return popup;
}

From source file:cz.zcu.kiv.eegdatabase.wui.ui.signalProcessing.ResultListPage.java

License:Apache License

public ResultListPage() {
    add(new ButtonPageMenu("leftMenu", ExperimentsPageLeftMenu.values()));

    Person loggedPerson = service.getLoggedPerson();

    PropertyListView<ServiceResult> results = new PropertyListView<ServiceResult>("results",
            new ListModel<ServiceResult>(new ArrayList<ServiceResult>(service.getResults(loggedPerson)))) {

        private static final long serialVersionUID = 1L;

        @Override//  w  w w .j  ava 2  s  . c o m
        protected void populateItem(final ListItem<ServiceResult> item) {
            final ServiceResult result = item.getModelObject();
            item.add(new Label("title", result.getTitle()));
            item.add(new Label("status", result.getStatus()));
            item.add(new Label("filename", result.getFilename()));

            item.add(new Link<Void>("download") {
                @Override
                public void onClick() {
                    ServiceResult result = item.getModelObject();
                    FileDTO outputFile = service.getResultFile(result.getServiceResultId());
                    getRequestCycle()
                            .scheduleRequestHandlerAfterCurrent(FileUtils.prepareDownloadFile(outputFile));
                }
            });
            item.add(new AjaxLink<Void>("delete") {
                @Override
                public void onClick(AjaxRequestTarget ajaxRequestTarget) {
                    service.delete(item.getModelObject());
                    setResponsePage(ResultListPage.class);
                }

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

                    AjaxCallListener ajaxCallListener = new AjaxCallListener();
                    ajaxCallListener.onPrecondition("return confirm('Are you sure you want to delete item?');");
                    attributes.getAjaxCallListeners().add(ajaxCallListener);
                }
            });
        }
    };
    add(results);
}

From source file:de.alpharogroup.wicket.base.examples.ModelPage.java

License:Apache License

public ModelPage(final PageParameters parameters) {
    super(parameters);
    setModel(Model.of(new Person()));
    // set nickname null...
    getModelObject().setNickname(null);//www. ja v a  2 s . c  o m
    // Set PropertyModel to an Object that is null...
    nicknameModel = new PropertyModel<>(getModel(), "nickname");
    add(new MenubarPanel("menubarPanel"));
    final String nickname = nicknameModel.getObject();
    System.out.println("nickname is:" + nickname);
    add(new Label("text", nicknameModel).setOutputMarkupId(true));
    // TODO add an AjaxLink to change the nickname...

    final AjaxLink<Void> updateLabelLink = new AjaxLink<Void>("updateLabelLink") {
        private static final long serialVersionUID = 1L;

        @Override
        public void onClick(final AjaxRequestTarget target) {
            // set nickname to foo...
            ModelPage.this.getModelObject().setNickname("foo");
            System.out.println("nickname is:" + ModelPage.this.getModelObject().getNickname());
            target.add(ModelPage.this.get("text"));
        }
    };
    add(updateLabelLink);

}

From source file:de.alpharogroup.wicket.behaviors.examples.HomePage.java

License:Apache License

/**
 * Constructor that is invoked when page is invoked without a session.
 *
 * @param parameters/*w ww.  jav  a  2 s.  c om*/
 *            Page parameters
 */
public HomePage(final PageParameters parameters) {
    final IModel<String> mailtoAddresModel = ResourceModelFactory.newResourceModel(
            ResourceBundleKey.builder().key("mailtoAddresModel.value").defaultValue("").build(), this);

    final IModel<String> mailtoViewModel = ResourceModelFactory.newResourceModel(
            ResourceBundleKey.builder().key("mailtoViewModel.value").defaultValue("").build(), this);

    final MailtoModel mailtoModel = new MailtoModel(mailtoAddresModel, mailtoViewModel);

    add(new MailtoLabel("mailtoLabel", mailtoModel));

    final Button button = new Button("button") {

        /**
         *
         */
        private static final long serialVersionUID = 1L;

        @Override
        public void onSubmit() {

        }

    };
    add(new JavascriptResourceReferenceAppenderBehavior(this.getClass(), "functions.js", "func"));
    add(JavascriptAppenderBehavior.builder().id("xy").javascript("alertnow();").build());

    add(new Link<String>("focusRequestExamplePage") {

        /**
         *
         */
        private static final long serialVersionUID = 1L;

        @Override
        public void onClick() {
            setResponsePage(FocusRequestExamplePage.class);
        }
    });

    add(button);
    add(new FaviconBehavior());

    final AjaxLink<Void> link01 = new AjaxLink<Void>("link01") {
        private static final long serialVersionUID = 1L;

        @Override
        public void onClick(final AjaxRequestTarget target) {

        }
    };
    link01.add(new AttributeAppender("class", "navbarlink"));
    add(link01);
    final AjaxLink<Void> link02 = new AjaxLink<Void>("link02") {
        private static final long serialVersionUID = 1L;

        @Override
        public void onClick(final AjaxRequestTarget target) {

        }
    };
    add(link02);

}

From source file:de.alpharogroup.wicket.components.actions.ActionPanel.java

License:Apache License

/**
 * {@inheritDoc}//from   ww  w . j  a v  a  2  s.  com
 */
@Override
protected AbstractLink newActionLink(final String id) {
    final AjaxLink<String> link = new AjaxLink<String>(id) {
        /**
         * The serialVersionUID
         */
        private static final long serialVersionUID = 1L;

        /**
         * {@inheritDoc}
         */
        @Override
        public void onClick(final AjaxRequestTarget target) {
            ActionPanel.this.onAction(target);
        }
    };
    return link;
}