List of usage examples for org.apache.wicket.ajax.markup.html AjaxLink setVisible
public final Component setVisible(final boolean visible)
From source file:cz.zcu.kiv.eegdatabase.wui.ui.groups.ListOfMembersGroupPage.java
License:Apache License
private void setupComponents(final int groupId) { add(new Label("title", facade.getResearchGroupTitle(groupId))); final WebMarkupContainer container = new WebMarkupContainer("container"); container.setOutputMarkupPlaceholderTag(true); LoadableDetachableModel<List<Map<String, Object>>> listModel = new LoadableDetachableModel<List<Map<String, Object>>>() { private static final long serialVersionUID = 1L; @Override/*from w w w .j a v a 2 s . com*/ protected List<Map<String, Object>> load() { return facade.getListOfGroupMembers(groupId); } }; final boolean isUserGroupAdmin = securityFacade.userIsAdminInGroup(groupId); PropertyListView<Map<String, Object>> members = new PropertyListView<Map<String, Object>>("members", listModel) { private static final long serialVersionUID = 1L; @Override protected void populateItem(final ListItem<Map<String, Object>> item) { final Map<String, Object> person = item.getModelObject(); boolean enabled = true; final int personId = (Integer) person.get("personId"); final ResearchGroupMembershipId id = new ResearchGroupMembershipId(personId, groupId); item.add(new Label("givenname", (String) person.get("givenname"))); item.add(new Label("surname", (String) person.get("surname"))); item.add(new Label("username", (String) (person.get("username") != null ? person.get("username") : "---"))); GroupRole role = GroupRole.valueOf((String) person.get("authority")); item.add(new EnumLabel<GroupRole>("authority", role)); final DropDownChoice<GroupRole> roles = new DropDownChoice<GroupRole>("roles", new Model<GroupRole>(role), Arrays.asList(GroupRole.values()), new EnumChoiceRenderer<GroupRole>()); roles.add(new AjaxFormComponentUpdatingBehavior("onChange") { private static final long serialVersionUID = 1L; @Override protected void onUpdate(AjaxRequestTarget target) { GroupRole groupRole = roles.getModelObject(); ResearchGroupMembership membership = facade.readMemberhip(id); membership.setAuthority(groupRole.name()); facade.updateMemberhip(membership); setResponsePage(getPage()); } }); roles.setVisibilityAllowed(isUserGroupAdmin); Person owner = personFacade.getPerson((String) person.get("username")); List<ResearchGroup> groups = facade.getResearchGroupsWhereOwner(owner); for (ResearchGroup group : groups) { if (group.getResearchGroupId() == groupId) { enabled = false; } } item.setEnabled(enabled); item.add(roles); AjaxLink<Void> removeLink = (new AjaxLink<Void>("removeFromGroupLink") { private static final long serialVersionUID = 1L; @Override public void onClick(AjaxRequestTarget target) { ResearchGroupMembership membership = facade.readMemberhip(id); facade.deleteMemberhip(membership); setResponsePage(getPage()); } @Override protected void updateAjaxAttributes(AjaxRequestAttributes attributes) { super.updateAjaxAttributes(attributes); AjaxCallListener ajaxCallListener = new AjaxCallListener(); ajaxCallListener.onPrecondition("return confirm('" + ResourceUtils.getString("link.confirm.sureToRemoveUserFromGroup") + "');"); attributes.getAjaxCallListeners().add(ajaxCallListener); } }); removeLink.setVisibilityAllowed(isUserGroupAdmin); removeLink.setVisible(enabled); item.add(removeLink); } }; container.add(members); BookmarkablePageLink<Void> backToDetailLink = new BookmarkablePageLink<Void>("backLink", ResearchGroupsDetailPage.class, PageParametersUtils.getDefaultPageParameters(groupId)); BookmarkablePageLink<Void> addMemberLink = new BookmarkablePageLink<Void>("addMemberLink", AddMemberToGroupPage.class, PageParametersUtils.getDefaultPageParameters(groupId)); BookmarkablePageLink<Void> transferOwnershipLink = new BookmarkablePageLink<Void>("transferOwnershipLink", TransferOwnershipPage.class, PageParametersUtils.getDefaultPageParameters(groupId)); addMemberLink.setVisibilityAllowed(isUserGroupAdmin); transferOwnershipLink.setVisibilityAllowed(isLoggedPersonOwner); add(container, backToDetailLink, addMemberLink, transferOwnershipLink); }
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);/* w w w . j a v a 2 s . co 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:guru.mmp.application.web.template.pages.UserAdministrationPage.java
License:Apache License
/** * Constructs a new <code>UserAdministrationPage</code>. *///from w w w .j a va2s . com public UserAdministrationPage() { super("Users"); try { /* * Retrieve the list of user directories for the organisation the currently logged on user * is associated with and default to the first user directory. */ List<UserDirectory> userDirectories = getUserDirectories(); userDirectory = userDirectories.get(0); /* * The table container, which allows the table and its associated navigator to be updated * using AJAX. */ WebMarkupContainer tableContainer = new WebMarkupContainer("tableContainer"); tableContainer.setOutputMarkupId(true); add(tableContainer); // The dialog used to confirm the removal of a user RemoveDialog removeDialog = new RemoveDialog(tableContainer); add(removeDialog); // The "addLink" used to add a new user Link<Void> addLink = new Link<Void>("addLink") { private static final long serialVersionUID = 1000000; @Override public void onClick() { AddUserPage page = new AddUserPage(getPageReference(), userDirectory.getId()); setResponsePage(page); } }; tableContainer.add(addLink); FilteredUserDataProvider dataProvider = new FilteredUserDataProvider(userDirectory.getId()); // The "userDirectoryDropdownMenu" dropdown button DropdownMenu<UserDirectory> userDirectoryDropdownMenu = new DropdownMenu<UserDirectory>( "userDirectoryDropdownMenu", new PropertyModel<>(this, "userDirectory"), userDirectories, "fa fa-users") { @Override protected String getDisplayValue(UserDirectory menuItem) { return menuItem.getName(); } @Override protected void onMenuItemSelected(AjaxRequestTarget target, UserDirectory menuItem) { dataProvider.setUserDirectoryId(userDirectory.getId()); if (target != null) { target.add(tableContainer); target.appendJavaScript( "jQuery('[data-toggle=\"tooltip\"]').tooltip({container: 'body', animation: false});"); } } }; userDirectoryDropdownMenu.setVisible(userDirectories.size() > 1); tableContainer.add(userDirectoryDropdownMenu); // The "filterForm" form Form<Void> filterForm = new Form<>("filterForm"); filterForm.setMarkupId("filterForm"); filterForm.setOutputMarkupId(true); // The "filter" field TextField<String> filterField = new TextField<>("filter", new PropertyModel<>(dataProvider, "filter")); filterForm.add(filterField); // The "filterButton" button Button filterButton = new Button("filterButton") { private static final long serialVersionUID = 1000000; @Override public void onSubmit() { } }; filterButton.setDefaultFormProcessing(true); filterForm.add(filterButton); // The "resetButton" button Button resetButton = new Button("resetButton") { private static final long serialVersionUID = 1000000; @Override public void onSubmit() { dataProvider.setFilter(""); } }; filterForm.add(resetButton); tableContainer.add(filterForm); // The user data view DataView<User> dataView = new DataView<User>("user", dataProvider) { private static final long serialVersionUID = 1000000; @Override protected void populateItem(Item<User> item) { User user = item.getModelObject(); item.add(new Label("username", new PropertyModel<String>(item.getModel(), "username"))); item.add(new Label("firstName", new PropertyModel<String>(item.getModel(), "firstName"))); item.add(new Label("lastName", new PropertyModel<String>(item.getModel(), "lastName"))); // The "userGroupsLink" link Link<Void> userGroupsLink = new Link<Void>("userGroupsLink") { private static final long serialVersionUID = 1000000; @Override public void onClick() { User user = item.getModelObject(); if (!user.getUsername().equalsIgnoreCase("Administrator")) { UserGroupsPage page = new UserGroupsPage(getPageReference(), userDirectory.getId(), user.getUsername()); setResponsePage(page); } } }; item.add(userGroupsLink); // The "updateLink" link Link<Void> updateLink = new Link<Void>("updateLink") { private static final long serialVersionUID = 1000000; @Override public void onClick() { User user = item.getModelObject(); if (!user.getUsername().equalsIgnoreCase("Administrator")) { UpdateUserPage page = new UpdateUserPage(getPageReference(), item.getModel()); setResponsePage(page); } } }; updateLink.setVisible(!user.isReadOnly()); item.add(updateLink); // The "resetPassword" link Link<Void> resetPasswordLink = new Link<Void>("resetPasswordLink") { private static final long serialVersionUID = 1000000; @Override public void onClick() { ResetUserPasswordPage page = new ResetUserPasswordPage(getPageReference(), new Model<>(item.getModelObject())); setResponsePage(page); } }; resetPasswordLink.setVisible(!user.isReadOnly()); item.add(resetPasswordLink); // The "removeLink" link AjaxLink<Void> removeLink = new AjaxLink<Void>("removeLink") { private static final long serialVersionUID = 1000000; @Override public void onClick(AjaxRequestTarget target) { User user = item.getModelObject(); if (user != null) { if (!user.getUsername().equalsIgnoreCase("Administrator")) { removeDialog.show(target, user); } } else { target.add(tableContainer); } } }; removeLink.setVisible(!user.isReadOnly()); item.add(removeLink); } }; dataView.setItemsPerPage(10); dataView.setItemReuseStrategy(ReuseIfModelsEqualStrategy.getInstance()); tableContainer.add(dataView); tableContainer.add(new PagingNavigator("navigator", dataView)); } catch (Throwable e) { throw new WebApplicationException("Failed to initialise the UserAdministrationPage", e); } }
From source file:hsa.awp.usergui.registrationmanagement.ConfirmedRegistrationManagementPanel.java
License:Open Source License
public ConfirmedRegistrationManagementPanel(String id, final List<ConfirmedRegistration> registrations) { super(id);// www . j a va 2 s .co m final MarkupContainer box = new WebMarkupContainer("FifoManagementBox"); box.setOutputMarkupId(true); final LoadableDetachedModel<List<ConfirmedRegistration>> regModel = new LoadableDetachedModel<List<ConfirmedRegistration>>() { /** * unique serialization id. */ private static final long serialVersionUID = -5771746782326674752L; @Override protected List<ConfirmedRegistration> load() { SingleUser singleUser = controller .getUserById(SecurityContextHolder.getContext().getAuthentication().getName()); return controller.findConfirmedRegistrationsByParticipantId(singleUser.getId()); } }; box.add(new ListView<ConfirmedRegistration>("registrationList", regModel) { /** * generated uid. */ private static final long serialVersionUID = 5261679476830400718L; @Override protected void populateItem(final ListItem<ConfirmedRegistration> item) { ConfirmedRegistration registration = item.getModelObject(); Event event = controller.getEventById(registration.getEventId()); item.add(new Label("regName", formatIdSubjectNameAndDetailInformation(event))); if (registration.getProcedure() == null) { item.add(new Label("procedureName", "direkt")); } else { item.add(new Label("procedureName", registration.getProcedure().getName())); } AjaxLink<String> deleteLink = new AjaxLink<String>("regCancelLink") { /** * generated UID. */ private static final long serialVersionUID = 7720300709649429249L; @Override public void onClick(AjaxRequestTarget target) { controller.deleteConfirmedRegistration(item.getModelObject()); RegistrationManagementPanel regPan = findParent(RegistrationManagementPanel.class); if (regPan != null) { regPan.update(target); } target.addComponent(box); regModel.detach(); } }; deleteLink.setVisible(controller.isCampaignOpen(item.getModelObject())); item.add(deleteLink); deleteLink.add(new JavascriptEventConfirmation("onclick", "Sind Sie sicher?/Are you sure?")); } }); add(box); }
From source file:net.rrm.ehour.ui.common.form.FormUtil.java
License:Open Source License
public static void setSubmitActions(final FormConfig formConfig) { final boolean inDemoMode = formConfig.getConfig().isInDemoMode(); AjaxButton submitButton = new AjaxButton("submitButton", formConfig.getForm()) { @Override// w ww.j a va 2 s. c o m protected void onSubmit(AjaxRequestTarget target, Form<?> form) { if (!inDemoMode) { AdminBackingBean backingBean = (AdminBackingBean) formConfig.getForm().getDefaultModelObject(); PayloadAjaxEvent<AdminBackingBean> ajaxEvent = new PayloadAjaxEvent<>( formConfig.getSubmitEventType(), backingBean); EventPublisher.publishAjaxEvent(formConfig.getSubmitTarget(), ajaxEvent); } } @Override protected void updateAjaxAttributes(AjaxRequestAttributes attributes) { super.updateAjaxAttributes(attributes); attributes.getAjaxCallListeners() .add(inDemoMode ? new DemoDecorator() : new LoadingSpinnerDecorator()); } @Override protected void onError(AjaxRequestTarget target, Form<?> form) { target.add(form); if (formConfig.getErrorEventType() != null) { AjaxEvent errorEvent = new AjaxEvent(formConfig.getErrorEventType()); EventPublisher.publishAjaxEvent(formConfig.getSubmitTarget(), errorEvent); } } }; submitButton.setModel(new ResourceModel("general.save")); // default submit formConfig.getForm().add(submitButton); AjaxLink<Void> deleteButton = new AjaxLink<Void>("deleteButton") { @Override public void onClick(AjaxRequestTarget target) { if (!inDemoMode) { AdminBackingBean backingBean = (AdminBackingBean) formConfig.getForm().getDefaultModelObject(); PayloadAjaxEvent<AdminBackingBean> ajaxEvent = new PayloadAjaxEvent<>( formConfig.getDeleteEventType(), backingBean); EventPublisher.publishAjaxEvent(formConfig.getSubmitTarget(), ajaxEvent); } } @Override protected void updateAjaxAttributes(AjaxRequestAttributes attributes) { super.updateAjaxAttributes(attributes); List<IAjaxCallListener> callListeners = attributes.getAjaxCallListeners(); if (inDemoMode) { callListeners.add(new DemoDecorator()); } else { callListeners.add(new JavaScriptConfirmation(new ResourceModel("general.deleteConfirmation"))); callListeners.add(new LoadingSpinnerDecorator()); } } }; deleteButton.setVisible(formConfig.isIncludeDelete()); formConfig.getForm().add(deleteButton); }
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 ww .j a va2 s . 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.timesheet.panel.TimesheetRowList.java
License:Open Source License
private Component createBookWholeWeekLink(final TimesheetRow row, final String bookWholeWeek) { final AjaxLink<Void> link = new AjaxLink<Void>(bookWholeWeek) { private static final long serialVersionUID = -663239917205218384L; @Override// ww w. ja va 2s. c o m public void onClick(AjaxRequestTarget target) { row.bookRemainingHoursOnRow(); target.add(form); } }; link.setVisible(EhourWebApplication.get().isBookWholeWeekEnabled() && !row.getTimesheet().isAnyLocked()); return link; }
From source file:org.apache.isis.viewer.wicket.ui.components.bookmarkedpages.BookmarkedPagesPanel.java
License:Apache License
private void buildGui() { final BookmarkedPagesModel bookmarkedPagesModel = getModel(); Component helpText = addHelpText(bookmarkedPagesModel); addOrReplace(helpText);// w w w. j a v a 2 s. c o m final WebMarkupContainer container = new WebMarkupContainer(ID_BOOKMARK_LIST) { private static final long serialVersionUID = 1L; @Override public void renderHead(IHeaderResponse response) { response.render(CssHeaderItem.forReference( new CssResourceReference(BookmarkedPagesPanel.class, "BookmarkedPagesPanel.css"))); response.render(JavaScriptReferenceHeaderItem.forReference(SLIDE_PANEL_JS)); } }; // allow to be updated by AjaxLink container.setOutputMarkupId(true); add(container); final AjaxLink<Void> clearAllBookmarksLink = new AjaxLink<Void>(CLEAR_BOOKMARKS) { private static final long serialVersionUID = 1L; @Override public void onClick(AjaxRequestTarget target) { BookmarkedPagesPanel.this.getModel().clear(); setEnabled(false); target.add(container, this); } }; clearAllBookmarksLink.setOutputMarkupId(true); add(clearAllBookmarksLink); clearAllBookmarksLink.setOutputMarkupId(true); if (getModel().isEmpty()) { clearAllBookmarksLink.setVisible(false); } final ListView<BookmarkTreeNode> listView = new ListView<BookmarkTreeNode>(ID_BOOKMARKED_PAGE_ITEM, bookmarkedPagesModel) { private static final long serialVersionUID = 1L; @Override protected void populateItem(ListItem<BookmarkTreeNode> item) { final BookmarkTreeNode node = item.getModelObject(); try { final PageType pageType = node.getPageType(); final Class<? extends Page> pageClass = pageClassRegistry.getPageClass(pageType); final AjaxLink<Object> clearBookmarkLink = new AjaxLink<Object>(ID_CLEAR_BOOKMARK_LINK) { private static final long serialVersionUID = 1L; @Override public void onClick(AjaxRequestTarget target) { bookmarkedPagesModel.remove(node); if (bookmarkedPagesModel.isEmpty()) { permanentlyHide(CLEAR_BOOKMARKS); } target.add(container, clearAllBookmarksLink); } }; if (node.getDepth() == 0) { clearBookmarkLink.add(new CssClassAppender("clearBookmark")); } else { clearBookmarkLink.setEnabled(true); } item.add(clearBookmarkLink); PageParameters pageParameters = node.getPageParameters(); final AbstractLink link = Links.newBookmarkablePageLink(ID_BOOKMARKED_PAGE_LINK, pageParameters, pageClass); ObjectSpecification objectSpec = null; RootOid oid = node.getOidNoVer(); if (oid != null) { ObjectSpecId objectSpecId = oid.getObjectSpecId(); objectSpec = getSpecificationLoader().lookupBySpecId(objectSpecId); } final ResourceReference imageResource = imageCache.resourceReferenceForSpec(objectSpec); final Image image = new Image(ID_BOOKMARKED_PAGE_ICON, imageResource) { private static final long serialVersionUID = 1L; @Override protected boolean shouldAddAntiCacheParameter() { return false; } }; link.addOrReplace(image); String title = node.getTitle(); final Label label = new Label(ID_BOOKMARKED_PAGE_TITLE, title); link.add(label); item.add(link); if (bookmarkedPagesModel.isCurrent(pageParameters)) { item.add(new CssClassAppender("disabled")); } item.add(new CssClassAppender("bookmarkDepth" + node.getDepth())); } catch (ObjectNotFoundException ex) { // ignore // this is a partial fix for an infinite redirect loop. // should be a bit smarter here, though; see ISIS-596. } } }; container.add(listView); }
From source file:org.apache.syncope.client.console.pages.AbstractSyncTaskModalPage.java
License:Apache License
public AbstractSyncTaskModalPage(final ModalWindow window, final AbstractProvisioningTaskTO taskTO, final PageReference pageRef) { super(window, taskTO, pageRef); final AjaxDropDownChoicePanel<String> resource = new AjaxDropDownChoicePanel<>("resource", getString("resourceName"), new PropertyModel<String>(taskTO, "resource")); resource.setChoices(allResources.getObject()); resource.setChoiceRenderer(new SelectChoiceRenderer<String>()); resource.addRequiredLabel();/*w w w . ja v a 2 s .co m*/ resource.setEnabled(taskTO.getKey() == 0); resource.setStyleSheet("ui-widget-content ui-corner-all long_dynamicsize"); profile.add(resource); final WebMarkupContainer syncActionsClassNames = new WebMarkupContainer("syncActionsClassNames"); syncActionsClassNames.setOutputMarkupId(true); profile.add(syncActionsClassNames); final AjaxLink<Void> first = new IndicatingAjaxLink<Void>("first") { private static final long serialVersionUID = -7978723352517770644L; @Override public void onClick(final AjaxRequestTarget target) { taskTO.getActionsClassNames().add(StringUtils.EMPTY); setVisible(false); target.add(syncActionsClassNames); } }; first.setOutputMarkupPlaceholderTag(true); first.setVisible(taskTO.getActionsClassNames().isEmpty()); syncActionsClassNames.add(first); final ListView<String> actionsClasses = new ListView<String>("actionsClasses", new PropertyModel<List<String>>(taskTO, "actionsClassNames")) { private static final long serialVersionUID = 9101744072914090143L; @Override protected void populateItem(final ListItem<String> item) { final String className = item.getModelObject(); final DropDownChoice<String> actionsClass = new DropDownChoice<String>("actionsClass", new Model<String>(className), syncActionsClasses.getObject()); actionsClass.setNullValid(true); actionsClass.setRequired(true); actionsClass.add(new AjaxFormComponentUpdatingBehavior(Constants.ON_CHANGE) { private static final long serialVersionUID = -1107858522700306810L; @Override protected void onUpdate(final AjaxRequestTarget target) { taskTO.getActionsClassNames().set(item.getIndex(), actionsClass.getModelObject()); target.add(syncActionsClassNames); } }); actionsClass.setRequired(true); actionsClass.setOutputMarkupId(true); actionsClass.setRequired(true); item.add(actionsClass); AjaxLink<Void> minus = new IndicatingAjaxLink<Void>("drop") { private static final long serialVersionUID = -7978723352517770644L; @Override public void onClick(final AjaxRequestTarget target) { taskTO.getActionsClassNames().remove(className); first.setVisible(taskTO.getActionsClassNames().isEmpty()); target.add(syncActionsClassNames); } }; item.add(minus); final AjaxLink<Void> plus = new IndicatingAjaxLink<Void>("add") { private static final long serialVersionUID = -7978723352517770644L; @Override public void onClick(final AjaxRequestTarget target) { taskTO.getActionsClassNames().add(StringUtils.EMPTY); target.add(syncActionsClassNames); } }; plus.setOutputMarkupPlaceholderTag(true); plus.setVisible(item.getIndex() == taskTO.getActionsClassNames().size() - 1); item.add(plus); } }; syncActionsClassNames.add(actionsClasses); syncActionsClassNames.setEnabled(!syncActionsClasses.getObject().isEmpty()); final AjaxCheckBoxPanel creates = new AjaxCheckBoxPanel("performCreate", getString("creates"), new PropertyModel<Boolean>(taskTO, "performCreate")); profile.add(creates); final AjaxCheckBoxPanel updates = new AjaxCheckBoxPanel("performUpdate", getString("updates"), new PropertyModel<Boolean>(taskTO, "performUpdate")); profile.add(updates); final AjaxCheckBoxPanel deletes = new AjaxCheckBoxPanel("performDelete", getString("updates"), new PropertyModel<Boolean>(taskTO, "performDelete")); profile.add(deletes); final AjaxCheckBoxPanel syncStatus = new AjaxCheckBoxPanel("syncStatus", getString("syncStatus"), new PropertyModel<Boolean>(taskTO, "syncStatus")); profile.add(syncStatus); matchingRule = new AjaxDropDownChoicePanel<MatchingRule>("matchingRule", "matchingRule", new PropertyModel<MatchingRule>(taskTO, "matchingRule")); matchingRule.setChoices(Arrays.asList(MatchingRule.values())); ((DropDownChoice) matchingRule.getField()).setNullValid(false); unmatchingRule = new AjaxDropDownChoicePanel<UnmatchingRule>("unmatchingRule", "unmatchingRule", new PropertyModel<UnmatchingRule>(taskTO, "unmatchingRule")); unmatchingRule.setChoices(Arrays.asList(UnmatchingRule.values())); ((DropDownChoice) unmatchingRule.getField()).setNullValid(false); }
From source file:org.apache.syncope.client.console.panels.GroupDetailsPanel.java
License:Apache License
public GroupDetailsPanel(final String id, final GroupTO groupTO, final boolean templateMode) { super(id);/*w w w.ja v a2s . com*/ ownerContainer = new WebMarkupContainer("ownerContainer"); ownerContainer.setOutputMarkupId(true); this.add(ownerContainer); final ModalWindow userOwnerSelectWin = new ModalWindow("userOwnerSelectWin"); userOwnerSelectWin.setCssClassName(ModalWindow.CSS_CLASS_GRAY); userOwnerSelectWin.setCookieName("create-userOwnerSelect-modal"); this.add(userOwnerSelectWin); final ModalWindow groupOwnerSelectWin = new ModalWindow("groupOwnerSelectWin"); groupOwnerSelectWin.setCssClassName(ModalWindow.CSS_CLASS_GRAY); groupOwnerSelectWin.setCookieName("create-groupOwnerSelect-modal"); this.add(groupOwnerSelectWin); final ModalWindow parentSelectWin = new ModalWindow("parentSelectWin"); parentSelectWin.setCssClassName(ModalWindow.CSS_CLASS_GRAY); parentSelectWin.setCookieName("create-parentSelect-modal"); this.add(parentSelectWin); if (templateMode) { parentFragment = new Fragment("parent", "parentFragment", this); parentModel = new ParentModel(groupTO); @SuppressWarnings("unchecked") final AjaxTextFieldPanel parent = new AjaxTextFieldPanel("parent", "parent", parentModel); parent.setReadOnly(true); parent.setOutputMarkupId(true); parentFragment.add(parent); final AjaxLink<Void> parentSelect = new IndicatingAjaxLink<Void>("parentSelect") { private static final long serialVersionUID = -7978723352517770644L; @Override public void onClick(final AjaxRequestTarget target) { parentSelectWin.setPageCreator(new ModalWindow.PageCreator() { private static final long serialVersionUID = -7834632442532690940L; @Override public Page createPage() { return new GroupSelectModalPage(getPage().getPageReference(), parentSelectWin, ParentSelectPayload.class); } }); parentSelectWin.show(target); } }; parentFragment.add(parentSelect); final IndicatingAjaxLink<Void> parentReset = new IndicatingAjaxLink<Void>("parentReset") { private static final long serialVersionUID = -7978723352517770644L; @Override public void onClick(final AjaxRequestTarget target) { parentModel.setObject(null); target.add(parent); } }; parentFragment.add(parentReset); } else { parentFragment = new Fragment("parent", "emptyFragment", this); } parentFragment.setOutputMarkupId(true); this.add(parentFragment); final AjaxTextFieldPanel name = new AjaxTextFieldPanel("name", "name", new PropertyModel<String>(groupTO, "key")); final WebMarkupContainer jexlHelp = JexlHelpUtils.getJexlHelpWebContainer("jexlHelp"); final AjaxLink<Void> questionMarkJexlHelp = JexlHelpUtils.getAjaxLink(jexlHelp, "questionMarkJexlHelp"); this.add(questionMarkJexlHelp); questionMarkJexlHelp.add(jexlHelp); if (!templateMode) { name.addRequiredLabel(); questionMarkJexlHelp.setVisible(false); } this.add(name); userOwnerModel = new OwnerModel(groupTO, AttributableType.USER); @SuppressWarnings("unchecked") final AjaxTextFieldPanel userOwner = new AjaxTextFieldPanel("userOwner", "userOwner", userOwnerModel); userOwner.setReadOnly(true); userOwner.setOutputMarkupId(true); ownerContainer.add(userOwner); final AjaxLink<Void> userOwnerSelect = new IndicatingAjaxLink<Void>("userOwnerSelect") { private static final long serialVersionUID = -7978723352517770644L; @Override public void onClick(final AjaxRequestTarget target) { userOwnerSelectWin.setPageCreator(new ModalWindow.PageCreator() { private static final long serialVersionUID = -7834632442532690940L; @Override public Page createPage() { return new UserOwnerSelectModalPage(getPage().getPageReference(), userOwnerSelectWin); } }); userOwnerSelectWin.show(target); } }; ownerContainer.add(userOwnerSelect); final IndicatingAjaxLink<Void> userOwnerReset = new IndicatingAjaxLink<Void>("userOwnerReset") { private static final long serialVersionUID = -7978723352517770644L; @Override public void onClick(final AjaxRequestTarget target) { userOwnerModel.setObject(null); target.add(userOwner); } }; ownerContainer.add(userOwnerReset); groupOwnerModel = new OwnerModel(groupTO, AttributableType.GROUP); @SuppressWarnings("unchecked") final AjaxTextFieldPanel groupOwner = new AjaxTextFieldPanel("groupOwner", "groupOwner", groupOwnerModel); groupOwner.setReadOnly(true); groupOwner.setOutputMarkupId(true); ownerContainer.add(groupOwner); final AjaxLink<Void> groupOwnerSelect = new IndicatingAjaxLink<Void>("groupOwnerSelect") { private static final long serialVersionUID = -7978723352517770644L; @Override public void onClick(final AjaxRequestTarget target) { parentSelectWin.setPageCreator(new ModalWindow.PageCreator() { private static final long serialVersionUID = -7834632442532690940L; @Override public Page createPage() { return new GroupSelectModalPage(getPage().getPageReference(), parentSelectWin, GroupOwnerSelectPayload.class); } }); parentSelectWin.show(target); } }; ownerContainer.add(groupOwnerSelect); final IndicatingAjaxLink<Void> groupOwnerReset = new IndicatingAjaxLink<Void>("groupOwnerReset") { private static final long serialVersionUID = -7978723352517770644L; @Override public void onClick(final AjaxRequestTarget target) { groupOwnerModel.setObject(null); target.add(groupOwner); } }; ownerContainer.add(groupOwnerReset); final AjaxCheckBoxPanel inhOwner = new AjaxCheckBoxPanel("inheritOwner", "inheritOwner", new PropertyModel<Boolean>(groupTO, "inheritOwner")); this.add(inhOwner); final AjaxCheckBoxPanel inhTemplates = new AjaxCheckBoxPanel("inheritTemplates", "inheritTemplates", new PropertyModel<Boolean>(groupTO, "inheritTemplates")); inhTemplates.getField().add(new AjaxFormComponentUpdatingBehavior(Constants.ON_CHANGE) { private static final long serialVersionUID = -1107858522700306810L; @Override protected void onUpdate(final AjaxRequestTarget target) { send(getPage(), Broadcast.BREADTH, new GroupAttrTemplatesChange(Type.gPlainAttrTemplates, target)); send(getPage(), Broadcast.BREADTH, new GroupAttrTemplatesChange(Type.gDerAttrTemplates, target)); send(getPage(), Broadcast.BREADTH, new GroupAttrTemplatesChange(Type.gVirAttrTemplates, target)); } }); this.add(inhTemplates); }