public void init() throws Exception { UIFormTableIteratorInputSet uiTableInputSet = createUIComponent(UIFormTableIteratorInputSet.class, null, null); uiTableInputSet.setName(getClass().getSimpleName()); uiTableInputSet.setId(getClass().getSimpleName()); uiTableInputSet.setColumns(TABLE_COLUMNS); addChild(uiTableInputSet); UIFormInputSet uiInputSet; UICheckBoxInput checkBoxInput; UIFormInputInfo uiInfo; HTMLEntityEncoder encoder = HTMLEntityEncoder.getInstance(); // ApplicationRegistryService appRegService = getApplicationComponent(ApplicationRegistryService.class); List<ApplicationCategory> categories = getAllCategories(); List<UIFormInputSet> uiInputSetList = new ArrayList<UIFormInputSet>(); for (ApplicationCategory category : categories) { uiInputSet = new UIFormInputSet(category.getName()); boolean defaultValue = false; if (application != null) { String definitionName = application.getDisplayName().replace(' ', '_'); defaultValue = appRegService.getApplication(category.getName(), definitionName) != null; } checkBoxInput = new UICheckBoxInput("category_" + category.getName(), null, defaultValue); checkBoxInput.setOnChange("SelectBox"); uiInfo = new UIFormInputInfo("categoryName", null, encoder.encode(category.getDisplayName(true))); uiInputSet.addChild(checkBoxInput); uiInputSet.addChild(uiInfo); uiTableInputSet.addChild(uiInputSet); uiInputSetList.add(uiInputSet); } UIFormPageIterator uiIterator = uiTableInputSet.getChild(UIFormPageIterator.class); SerializablePageList<UIFormInputSet> pageList = new SerializablePageList<UIFormInputSet>(UIFormInputSet.class, uiInputSetList, 5); uiIterator.setPageList(pageList); }
@SuppressWarnings("unchecked") public UIPortletForm() throws Exception { super("UIPortletForm"); UIFormInputSet uiPortletPrefSet = new UIFormInputSet(FIELD_PORTLET_PREF).setRendered(false); addUIFormInput(uiPortletPrefSet); UIFormInputSet uiSettingSet = new UIFormInputSet("PortletSetting"); uiSettingSet .addUIFormInput(new UIFormInputInfo("displayName", "displayName", null)) .addUIFormInput( new UIFormStringInput("title", "title", null) .addValidator(StringLengthValidator.class, 3, 60) .addValidator(NotHTMLTagValidator.class, "UIPortletForm.msg.InvalidPortletTitle")) .addUIFormInput( new UIFormStringInput("width", "width", null) .addValidator( ExpressionValidator.class, "(^([1-9]\\d*)px$)?", "UIPortletForm.msg.InvalidWidthHeight")) .addUIFormInput( new UIFormStringInput("height", "height", null) .addValidator( ExpressionValidator.class, "(^([1-9]\\d*)px$)?", "UIPortletForm.msg.InvalidWidthHeight")) .addUIFormInput(new UICheckBoxInput("showInfoBar", "showInfoBar", false)) .addUIFormInput(new UICheckBoxInput("showPortletMode", "showPortletMode", false)) .addUIFormInput(new UICheckBoxInput("showWindowState", "showWindowState", false)) .addUIFormInput( new UIFormTextAreaInput("description", "description", null) .addValidator( NotHTMLTagValidator.class, "UIPortletForm.msg.InvalidPortletDescription")); addUIFormInput(uiSettingSet); UIFormInputIconSelector uiIconSelector = new UIFormInputIconSelector("Icon", "icon"); addUIFormInput(uiIconSelector); UIFormInputThemeSelector uiThemeSelector = new UIFormInputThemeSelector(FIELD_THEME, null); SkinService skinService = getApplicationComponent(SkinService.class); uiThemeSelector.getChild(UIItemThemeSelector.class).setValues(skinService.getPortletThemes()); addUIFormInput(uiThemeSelector); UIListPermissionSelector uiListPermissionSelector = createUIComponent(UIListPermissionSelector.class, null, null); uiListPermissionSelector.configure("UIAccessPermission", "accessPermissions"); uiListPermissionSelector.addValidator(EmptyIteratorValidator.class); UIFormInputSet uiPermissionSet = createUIComponent(UIFormInputSet.class, "PortletPermission", null); uiPermissionSet.addChild(uiListPermissionSelector); addUIFormInput(uiPermissionSet); }
@SuppressWarnings("unchecked") public UIPageForm(InitParams initParams) throws Exception { super("UIPageForm"); PortalRequestContext pcontext = Util.getPortalRequestContext(); UserPortalConfigService configService = getApplicationComponent(UserPortalConfigService.class); List<SelectItemOption<String>> ownerTypes = new ArrayList<SelectItemOption<String>>(); ownerTypes.add(new SelectItemOption<String>(PortalConfig.USER_TYPE)); UserPortalConfig userPortalConfig = configService.getUserPortalConfig(pcontext.getPortalOwner(), pcontext.getRemoteUser()); ExoContainer container = ExoContainerContext.getCurrentContainer(); UserACL acl = (UserACL) container.getComponentInstanceOfType(UserACL.class); if (acl.hasEditPermission(userPortalConfig.getPortalConfig())) { ownerTypes.add(new SelectItemOption<String>(PortalConfig.PORTAL_TYPE)); } ownerIdInput = new UIFormStringInput(OWNER_ID, OWNER_ID, null); ownerIdInput.setEditable(false).setValue(pcontext.getRemoteUser()); UIFormSelectBox uiSelectBoxOwnerType = new UIFormSelectBox(OWNER_TYPE, OWNER_TYPE, ownerTypes); uiSelectBoxOwnerType.setOnChange("ChangeOwnerType"); UIFormInputSet uiSettingSet = new UIFormInputSet("PageSetting"); uiSettingSet .addUIFormInput(new UIFormStringInput("pageId", "pageId", null).setEditable(false)) .addUIFormInput(uiSelectBoxOwnerType) .addUIFormInput(ownerIdInput) .addUIFormInput( new UIFormStringInput("name", "name", null) .addValidator(StringLengthValidator.class, 3, 30) .addValidator(IdentifierValidator.class) .addValidator(MandatoryValidator.class)) .addUIFormInput( new UIFormStringInput("title", "title", null) .addValidator(StringLengthValidator.class, 3, 120)) .addUIFormInput(new UIFormCheckBoxInput("showMaxWindow", "showMaxWindow", false)); addUIFormInput(uiSettingSet); setSelectedTab(uiSettingSet.getId()); // WebuiRequestContext context = WebuiRequestContext.getCurrentInstance(); // Param param = initParams.getParam("PageTemplate"); // List<SelectItemCategory> itemCategories = // (List<SelectItemCategory>)param.getMapGroovyObject(context); // UIFormInputItemSelector uiTemplate = new UIFormInputItemSelector("Template", "template"); // uiTemplate.setItemCategories(itemCategories); // addUIFormInput(uiTemplate); uiPermissionSetting = createUIComponent(UIFormInputSet.class, "PermissionSetting", null); UIListPermissionSelector uiListPermissionSelector = createUIComponent(UIListPermissionSelector.class, null, null); uiListPermissionSelector.configure("UIListPermissionSelector", "accessPermissions"); uiListPermissionSelector.addValidator(EmptyIteratorValidator.class); uiPermissionSetting.addChild(uiListPermissionSelector); uiPermissionSetting.setSelectedComponent(uiListPermissionSelector.getId()); UIPermissionSelector uiEditPermission = createUIComponent(UIPermissionSelector.class, null, null); uiEditPermission.setRendered(false); uiEditPermission.addValidator( org.exoplatform.webui.organization.UIPermissionSelector.MandatoryValidator.class); uiEditPermission.setEditable(false); uiEditPermission.configure("UIPermissionSelector", "editPermission"); uiPermissionSetting.addChild(uiEditPermission); // TODO: This following line is fixed for bug PORTAL-2127 uiListPermissionSelector .getChild(UIFormPopupWindow.class) .setId("UIPageFormPopupGroupMembershipSelector"); List<String> groups = configService.getMakableNavigations(pcontext.getRemoteUser(), true); if (groups.size() > 0) { Collections.sort(groups); ownerTypes.add(new SelectItemOption<String>(PortalConfig.GROUP_TYPE)); List<SelectItemOption<String>> groupsItem = new ArrayList<SelectItemOption<String>>(); for (String group : groups) { groupsItem.add(new SelectItemOption<String>(group)); } groupIdSelectBox = new UIFormSelectBox(OWNER_ID, OWNER_ID, groupsItem); groupIdSelectBox.setOnChange("ChangeOwnerId"); groupIdSelectBox.setParent(uiSettingSet); } setActions(new String[] {"Save", "Close"}); }