Example #1
0
 /**
  * Sets space for this ui component to work with.
  *
  * @param space
  * @throws Exception
  */
 public void setValue(Space space) throws Exception {
   invokeGetBindingBean(space);
   UIFormTextAreaInput description = getUIFormTextAreaInput(SPACE_DESCRIPTION);
   description.setValue(StringEscapeUtils.unescapeHtml(description.getValue()));
   // TODO: have to find the way to don't need the line code below.
   getUIStringInput(SPACE_TAG).setValue(space.getTag());
 }
Example #2
0
 private void setValueField(UIFormInputWithActions withActions, String field, String values)
     throws Exception {
   try {
     UIFormTextAreaInput textArea = withActions.getUIFormTextAreaInput(field);
     String vls = textArea.getValue();
     if (!ForumUtils.isEmpty(vls)) {
       values = values + ForumUtils.COMMA + vls;
       values = ForumUtils.removeStringResemble(values.replaceAll(",,", ForumUtils.COMMA));
     }
     textArea.setValue(values);
   } catch (Exception e) {
     log.debug("Set Value into field " + field + " is fall.", e);
   }
 }
 @Override
 protected void processEvent(Event<PreviewPageActionComponent> event) throws Exception {
   UIWikiPortlet wikiPortlet = event.getSource().getAncestorOfType(UIWikiPortlet.class);
   WebuiRequestContext context = WebuiRequestContext.getCurrentInstance();
   ResourceBundle res = context.getApplicationResourceBundle();
   UIWikiMaskWorkspace uiMaskWS = wikiPortlet.getChild(UIWikiMaskWorkspace.class);
   UIWikiPageEditForm wikiPageEditForm =
       event.getSource().getAncestorOfType(UIWikiPageEditForm.class);
   UIWikiPagePreview wikiPagePreview =
       uiMaskWS.createUIComponent(UIWikiPagePreview.class, null, null);
   UIWikiRichTextArea wikiRichTextArea = wikiPageEditForm.getChild(UIWikiRichTextArea.class);
   UIWikiPageTitleControlArea wikiPageTitleArea =
       wikiPageEditForm.getChild(UIWikiPageTitleControlArea.class);
   String markupSyntax = Utils.getDefaultSyntax();
   boolean isRichTextRendered = wikiRichTextArea.isRendered();
   RenderingService renderingService =
       (RenderingService) PortalContainer.getComponent(RenderingService.class);
   String markup;
   if (isRichTextRendered) {
     String htmlContent = wikiRichTextArea.getUIFormTextAreaInput().getValue();
     markup =
         renderingService.render(
             htmlContent, Syntax.XHTML_1_0.toIdString(), markupSyntax, false);
     Utils.feedDataForWYSIWYGEditor(wikiPageEditForm, markup);
   } else {
     UIFormTextAreaInput markupInput =
         wikiPageEditForm.findComponentById(UIWikiPageEditForm.FIELD_CONTENT);
     markup = (markupInput.getValue() == null) ? "" : markupInput.getValue();
   }
   wikiPagePreview.renderWikiMarkup(markup, markupSyntax);
   String pageTitle = wikiPageTitleArea.getTitle();
   if (pageTitle != null) wikiPagePreview.setPageTitle(wikiPageTitleArea.getTitle());
   else {
     wikiPagePreview.setPageTitle(res.getString("UIWikiPageTitleControlArea.label.Untitled"));
   }
   uiMaskWS.setUIComponent(wikiPagePreview);
   uiMaskWS.setShow(true);
   uiMaskWS.setPopupTitle(res.getString("UIEditorTabs.action.PreviewPage"));
   event.getRequestContext().addUIComponentToUpdateByAjax(uiMaskWS);
   super.processEvent(event);
 }
Example #4
0
  /**
   * constructor
   *
   * @param name
   * @throws Exception
   */
  public UISpaceSettings(String name) throws Exception {
    super(name);
    WebuiRequestContext requestContext = WebuiRequestContext.getCurrentInstance();
    ResourceBundle resourceBundle = requestContext.getApplicationResourceBundle();
    UIFormStringInput spaceDisplayName =
        new UIFormStringInput(SPACE_DISPLAY_NAME, SPACE_DISPLAY_NAME, null);
    spaceDisplayName.setHTMLAttribute(
        HTML_ATTRIBUTE_PLACEHOLDER,
        resourceBundle.getString("UISpaceSettings.label.spaceDisplayName"));
    addUIFormInput(
        spaceDisplayName
            .addValidator(MandatoryValidator.class)
            .addValidator(
                ExpressionValidator.class, "^([\\p{L}\\s\\d\']+[\\s]?)+$", MSG_INVALID_SPACE_NAME)
            .addValidator(StringLengthValidator.class, 3, 30));

    UIFormTextAreaInput description =
        new UIFormTextAreaInput(SPACE_DESCRIPTION, SPACE_DESCRIPTION, null);
    description.setHTMLAttribute(
        HTML_ATTRIBUTE_PLACEHOLDER,
        resourceBundle.getString("UISpaceSettings.label.spaceDescription"));
    addUIFormInput(description.addValidator(StringLengthValidator.class, 0, 255));
  }
Example #5
0
  /**
   * constructor
   *
   * @throws Exception
   */
  public UISpaceInfo() throws Exception {
    WebuiRequestContext requestContext = WebuiRequestContext.getCurrentInstance();
    ResourceBundle resourceBundle = requestContext.getApplicationResourceBundle();
    UIFormStringInput spaceId = new UIFormStringInput(SPACE_ID, SPACE_ID, null).setRendered(false);
    spaceId.setHTMLAttribute(
        HTML_ATTRIBUTE_TITLE, resourceBundle.getString("UISpaceInfo.label.SpaceId"));
    addUIFormInput(spaceId);

    UIFormStringInput spaceDisplayName =
        new UIFormStringInput(SPACE_DISPLAY_NAME, SPACE_DISPLAY_NAME, null);
    spaceDisplayName.setHTMLAttribute(
        HTML_ATTRIBUTE_PLACEHOLDER,
        resourceBundle.getString("UISpaceSettings.label.spaceDisplayName"));
    addUIFormInput(
        spaceDisplayName
            .addValidator(MandatoryValidator.class)
            .addValidator(
                ExpressionValidator.class,
                "^([\\p{L}\\d\']+[\\s]?)+$",
                "UISpaceInfo.msg.name-invalid")
            .addValidator(StringLengthValidator.class, 3, 30));

    UIFormTextAreaInput description =
        new UIFormTextAreaInput(SPACE_DESCRIPTION, SPACE_DESCRIPTION, null);
    description.setHTMLAttribute(
        HTML_ATTRIBUTE_PLACEHOLDER,
        resourceBundle.getString("UISpaceSettings.label.spaceDescription"));
    addUIFormInput(description.addValidator(StringLengthValidator.class, 0, 255));

    // temporary disable tag
    UIFormStringInput tag = new UIFormStringInput(SPACE_TAG, SPACE_TAG, null).setRendered(false);
    tag.setHTMLAttribute(HTML_ATTRIBUTE_TITLE, resourceBundle.getString("UISpaceInfo.label.tag"));
    addUIFormInput(tag);

    PopupContainer popupContainer = createUIComponent(PopupContainer.class, null, null);
    addChild(popupContainer);
  }
Example #6
0
 public void updateSelect(String selectField, String value) throws Exception {
   UIFormTextAreaInput fieldInput = getUIFormTextAreaInput(selectField);
   String values = fieldInput.getValue();
   fieldInput.setValue(ForumUtils.updateMultiValues(value, values));
 }
  private void initUserProfileForm() throws Exception {
    List<SelectItemOption<String>> list;
    UIFormStringInput userId = new UIFormStringInput(FIELD_USERID_INPUT, FIELD_USERID_INPUT, null);
    userId.setValue(this.editUserProfile.getUserId());
    userId.setReadOnly(true);
    userId.setDisabled(true);
    UIFormStringInput screenName =
        new UIFormStringInput(FIELD_SCREENNAME_INPUT, FIELD_SCREENNAME_INPUT, null);
    String screenN = editUserProfile.getScreenName();
    if (ForumUtils.isEmpty(screenN)) screenN = editUserProfile.getUserId();
    screenName.setValue(CommonUtils.decodeSpecialCharToHTMLnumber(screenN));
    UIFormStringInput userTitle =
        new UIFormStringInput(FIELD_USERTITLE_INPUT, FIELD_USERTITLE_INPUT, null);
    String title = this.editUserProfile.getUserTitle();
    boolean isAdmin = false;
    UICheckBoxInput userRole =
        new UICheckBoxInput(FIELD_USERROLE_CHECKBOX, FIELD_USERROLE_CHECKBOX, false);
    if (this.editUserProfile.getUserRole() == 0) isAdmin = true;
    if (isAdmin(this.editUserProfile.getUserId())) {
      userRole.setDisabled(true);
      isAdmin = true;
      if (this.editUserProfile.getUserRole() != 0) title = Utils.ADMIN;
    }
    userRole.setValue(isAdmin);
    userTitle.setValue(CommonUtils.decodeSpecialCharToHTMLnumber(title));

    UIFormTextAreaInput signature =
        new UIFormTextAreaInput(FIELD_SIGNATURE_TEXTAREA, FIELD_SIGNATURE_TEXTAREA, null);
    signature.setValue(CommonUtils.decodeSpecialCharToHTMLnumber(editUserProfile.getSignature()));
    UICheckBoxInput isDisplaySignature =
        new UICheckBoxInput(
            FIELD_ISDISPLAYSIGNATURE_CHECKBOX, FIELD_ISDISPLAYSIGNATURE_CHECKBOX, false);
    isDisplaySignature.setChecked(this.editUserProfile.getIsDisplaySignature());

    UIFormTextAreaInput moderateForums =
        new UIFormTextAreaInput(
            FIELD_MODERATEFORUMS_MULTIVALUE, FIELD_MODERATEFORUMS_MULTIVALUE, null);
    List<String> values = Arrays.asList(editUserProfile.getModerateForums());
    this.listModerate = new ArrayList<String>(values);
    moderateForums.setValue(stringForumProcess(values));
    moderateForums.setReadOnly(true);

    UIFormTextAreaInput moderateCategorys =
        new UIFormTextAreaInput(
            FIELD_MODERATECATEGORYS_MULTIVALUE, FIELD_MODERATECATEGORYS_MULTIVALUE, null);
    List<String> valuesCate = Arrays.asList(editUserProfile.getModerateCategory());
    this.listModCate = new ArrayList<String>(valuesCate);
    moderateCategorys.setValue(stringCategoryProcess(valuesCate));
    moderateCategorys.setReadOnly(true);

    UIAvatarContainer avatarContainer = createUIComponent(UIAvatarContainer.class, null, "Avatar");
    avatarContainer.setUserProfile(this.editUserProfile);
    avatarContainer.setForumService(getForumService());
    UICheckBoxInput isDisplayAvatar =
        new UICheckBoxInput(FIELD_ISDISPLAYAVATAR_CHECKBOX, FIELD_ISDISPLAYAVATAR_CHECKBOX, false);
    isDisplayAvatar.setChecked(this.editUserProfile.getIsDisplayAvatar());
    // Option
    String[] timeZone1 = getLabel(FIELD_TIMEZONE).split(ForumUtils.SLASH);
    list = new ArrayList<SelectItemOption<String>>();
    for (String string : timeZone1) {
      list.add(new SelectItemOption<String>(string, ForumUtils.getTimeZoneNumberInString(string)));
    }
    UIFormSelectBox timeZone =
        new UIFormSelectBox(FIELD_TIMEZONE_SELECTBOX, FIELD_TIMEZONE_SELECTBOX, list);
    double timeZoneOld = -editUserProfile.getTimeZone();
    Date date = getNewDate(timeZoneOld);
    String mark = "-";
    if (timeZoneOld < 0) {
      timeZoneOld = -timeZoneOld;
    } else if (timeZoneOld > 0) {
      mark = "+";
    } else {
      timeZoneOld = 0.0;
      mark = ForumUtils.EMPTY_STR;
    }
    timeZone.setValue(mark + timeZoneOld + "0");

    list = new ArrayList<SelectItemOption<String>>();
    String[] format =
        new String[] {
          "M-d-yyyy",
          "M-d-yy",
          "MM-dd-yy",
          "MM-dd-yyyy",
          "yyyy-MM-dd",
          "yy-MM-dd",
          "dd-MM-yyyy",
          "dd-MM-yy",
          "M/d/yyyy",
          "M/d/yy",
          "MM/dd/yy",
          "MM/dd/yyyy",
          "yyyy/MM/dd",
          "yy/MM/dd",
          "dd/MM/yyyy",
          "dd/MM/yy"
        };
    for (String frm : format) {
      list.add(
          new SelectItemOption<String>(
              (frm.toLowerCase() + " (" + TimeConvertUtils.getFormatDate(frm, date) + ")"), frm));
    }
    UIFormSelectBox shortdateFormat =
        new UIFormSelectBox(FIELD_SHORTDATEFORMAT_SELECTBOX, FIELD_SHORTDATEFORMAT_SELECTBOX, list);
    shortdateFormat.setValue(editUserProfile.getShortDateFormat());
    list = new ArrayList<SelectItemOption<String>>();
    format =
        new String[] {
          "EEE, MMMM dd, yyyy",
          "EEEE, MMMM dd, yyyy",
          "EEEE, dd MMMM, yyyy",
          "EEE, MMM dd, yyyy",
          "EEEE, MMM dd, yyyy",
          "EEEE, dd MMM, yyyy",
          "MMMM dd, yyyy",
          "dd MMMM, yyyy",
          "MMM dd, yyyy",
          "dd MMM, yyyy"
        };
    for (String idFrm : format) {
      list.add(
          new SelectItemOption<String>(
              (idFrm.toLowerCase() + " (" + TimeConvertUtils.getFormatDate(idFrm, date) + ")"),
              idFrm.replaceFirst(" ", "=")));
    }
    UIFormSelectBox longDateFormat =
        new UIFormSelectBox(FIELD_LONGDATEFORMAT_SELECTBOX, FIELD_LONGDATEFORMAT_SELECTBOX, list);
    longDateFormat.setValue(editUserProfile.getLongDateFormat().replaceFirst(" ", "="));
    list = new ArrayList<SelectItemOption<String>>();
    list.add(new SelectItemOption<String>("12-hour", "hh:mm=a"));
    list.add(new SelectItemOption<String>("24-hour", "HH:mm"));
    UIFormSelectBox timeFormat =
        new UIFormSelectBox(FIELD_TIMEFORMAT_SELECTBOX, FIELD_TIMEFORMAT_SELECTBOX, list);
    timeFormat.setValue(editUserProfile.getTimeFormat().replace(' ', '='));
    list = new ArrayList<SelectItemOption<String>>();
    for (int i = 5; i <= 45; i = i + 5) {
      list.add(new SelectItemOption<String>(String.valueOf(i), ("id" + i)));
    }
    UIFormSelectBox maximumThreads =
        new UIFormSelectBox(FIELD_MAXTOPICS_SELECTBOX, FIELD_MAXTOPICS_SELECTBOX, list);
    maximumThreads.setValue("id" + editUserProfile.getMaxTopicInPage());
    list = new ArrayList<SelectItemOption<String>>();
    for (int i = 5; i <= 35; i = i + 5) {
      list.add(new SelectItemOption<String>(String.valueOf(i), ("id" + i)));
    }
    UIFormSelectBox maximumPosts =
        new UIFormSelectBox(FIELD_MAXPOSTS_SELECTBOX, FIELD_MAXPOSTS_SELECTBOX, list);
    maximumPosts.setValue("id" + editUserProfile.getMaxPostInPage());
    // Ban
    UICheckBoxInput isBanned =
        new UICheckBoxInput(FIELD_ISBANNED_CHECKBOX, FIELD_ISBANNED_CHECKBOX, false);
    boolean isBan = editUserProfile.getIsBanned();
    isBanned.setChecked(isBan);
    list = new ArrayList<SelectItemOption<String>>();
    String dv = "Day";
    int i = 1;
    long oneDate = 86400000, until = 0;
    Calendar cal = CommonUtils.getGreenwichMeanTime();
    if (isBan) {
      until = editUserProfile.getBanUntil();
      cal.setTimeInMillis(until);
      list.add(
          new SelectItemOption<String>(
              getLabel("Banned until: ")
                  + TimeConvertUtils.getFormatDate(
                      editUserProfile.getShortDateFormat() + " hh:mm a", cal.getTime())
                  + " GMT+0",
              ("Until_" + until)));
    }
    while (true) {
      if (i == 2 && dv.equals("Day")) {
        dv = "Days";
      }
      if (i == 8 && dv.equals("Days")) i = 10;
      if (i == 11) {
        i = 2;
        dv = "Weeks";
      }
      if (i == 4 && dv.equals("Weeks")) {
        i = 1;
        dv = "Month";
      }
      if (i == 2 && dv.equals("Month")) {
        dv = "Months";
      }
      if (i == 7 && dv.equals("Months")) {
        i = 1;
        dv = "Year";
      }
      if (i == 2 && dv.equals("Year")) {
        dv = "Years";
      }
      if (i == 4 && dv.equals("Years")) {
        break;
      }
      if (dv.equals("Days") || dv.equals("Day")) {
        cal = CommonUtils.getGreenwichMeanTime();
        until = cal.getTimeInMillis() + i * oneDate;
        cal.setTimeInMillis(until);
      }
      if (dv.equals("Weeks")) {
        cal = CommonUtils.getGreenwichMeanTime();
        until = cal.getTimeInMillis() + i * oneDate * 7;
        cal.setTimeInMillis(until);
      }
      if (dv.equals("Month") || dv.equals("Months")) {
        cal = CommonUtils.getGreenwichMeanTime();
        cal.setLenient(true);
        int t = cal.get(Calendar.MONTH) + i;
        if (t >= 12) {
          cal.set(Calendar.YEAR, cal.get(Calendar.YEAR) + 1);
          t -= 12;
        }
        cal.set(Calendar.MONTH, t);
        until = cal.getTimeInMillis();
      }
      if (dv.equals("Years") || dv.equals("Year")) {
        cal = CommonUtils.getGreenwichMeanTime();
        cal.setLenient(true);
        cal.set(Calendar.YEAR, cal.get(Calendar.YEAR) + i);
        until = cal.getTimeInMillis();
      }
      list.add(
          new SelectItemOption<String>(
              i
                  + " "
                  + getLabel(dv)
                  + " ("
                  + TimeConvertUtils.getFormatDate(
                      editUserProfile.getShortDateFormat() + " hh:mm a", cal.getTime())
                  + " GMT+0)",
              ("Until_" + until)));
      ++i;
    }
    UIFormSelectBox banUntil =
        new UIFormSelectBox(FIELD_BANUNTIL_SELECTBOX, FIELD_BANUNTIL_SELECTBOX, list);
    if (isBan) {
      banUntil.setValue("Until_" + editUserProfile.getBanUntil());
    }
    UIFormTextAreaInput banReason =
        new UIFormTextAreaInput(FIELD_BANREASON_TEXTAREA, FIELD_BANREASON_TEXTAREA, null);
    UIFormStringInput banCounter =
        new UIFormStringInput(FIELD_BANCOUNTER_INPUT, FIELD_BANCOUNTER_INPUT, null);
    banCounter.setValue(editUserProfile.getBanCounter() + ForumUtils.EMPTY_STR);
    UIFormTextAreaInput banReasonSummary =
        new UIFormTextAreaInput(
            FIELD_BANREASONSUMMARY_MULTIVALUE, FIELD_BANREASONSUMMARY_MULTIVALUE, null);
    banReasonSummary.setValue(ForumUtils.unSplitForForum(editUserProfile.getBanReasonSummary()));
    banReasonSummary.setReadOnly(true);
    UIFormStringInput createdDateBan =
        new UIFormStringInput(FIELD_CREATEDDATEBAN_INPUT, FIELD_CREATEDDATEBAN_INPUT, null);
    if (isBan) {
      banReason.setValue(editUserProfile.getBanReason());
      createdDateBan.setValue(
          TimeConvertUtils.getFormatDate(
              "MM/dd/yyyy, hh:mm a", editUserProfile.getCreatedDateBan()));
    } else {
      banReason.setDisabled(false);
    }
    UIFormInputWithActions inputSetProfile = new UIFormInputWithActions(FIELD_USERPROFILE_FORM);
    inputSetProfile.addUIFormInput(userId);
    inputSetProfile.addUIFormInput(screenName);
    inputSetProfile.addUIFormInput(userTitle);
    inputSetProfile.addUIFormInput(userRole);
    inputSetProfile.addUIFormInput(moderateCategorys);
    inputSetProfile.addUIFormInput(moderateForums);
    inputSetProfile.addUIFormInput(signature);
    inputSetProfile.addUIFormInput(isDisplaySignature);

    inputSetProfile.addUIFormInput(avatarContainer);
    inputSetProfile.addUIFormInput(isDisplayAvatar);

    String[] fields =
        new String[] {FIELD_MODERATEFORUMS_MULTIVALUE, FIELD_MODERATECATEGORYS_MULTIVALUE};
    String[] actionNames = new String[] {"AddValuesModForum", "AddValuesModCategory"};
    List<ActionData> actions;
    ActionData actionData;
    for (int j = 0; j < fields.length; j++) {
      String string = fields[j];
      actionData = new ActionData();
      actionData.setActionListener(actionNames[j]);
      actionData.setActionParameter(string);
      actionData.setCssIconClass("uiIconAddIcon uiIconLightGray");
      actionData.setActionName(string);
      actions = new ArrayList<ActionData>();
      actions.add(actionData);
      inputSetProfile.setActionField(string, actions);
    }
    //
    addUIFormInput(inputSetProfile);

    UIFormInputWithActions inputSetOption = new UIFormInputWithActions(FIELD_USEROPTION_FORM);
    inputSetOption.addUIFormInput(timeZone);
    inputSetOption.addUIFormInput(shortdateFormat);
    inputSetOption.addUIFormInput(longDateFormat);
    inputSetOption.addUIFormInput(timeFormat);
    inputSetOption.addUIFormInput(maximumThreads);
    inputSetOption.addUIFormInput(maximumPosts);
    addUIFormInput(inputSetOption);

    UIFormInputWithActions inputSetBan = new UIFormInputWithActions(FIELD_USERBAN_FORM);
    inputSetBan.addUIFormInput(isBanned);
    inputSetBan.addUIFormInput(banUntil);
    inputSetBan.addUIFormInput(banReason);
    inputSetBan.addUIFormInput(banCounter);
    inputSetBan.addUIFormInput(banReasonSummary);
    inputSetBan.addUIFormInput(createdDateBan);
    //
    addUIFormInput(inputSetBan);

    UIPageListTopicByUser pageListTopicByUser = addChild(UIPageListTopicByUser.class, null, null);
    pageListTopicByUser.setUserName(this.editUserProfile.getUserId());
    UIPageListPostByUser listPostByUser = addChild(UIPageListPostByUser.class, null, null);
    listPostByUser.setUserName(this.editUserProfile.getUserId());
  }