Package com.dotcms.repackage.org.apache.struts.action

Examples of com.dotcms.repackage.org.apache.struts.action.ActionForward


  public ActionForward saveUserAddress(ActionMapping mapping, ActionForm lf,
      HttpServletRequest request, HttpServletResponse response)
      throws Exception {

    if (request.getSession().getAttribute(WebKeys.CMS_USER) == null) {
      return new ActionForward("/dotCMS/login");
    }

    MyAccountForm form = (MyAccountForm) lf;
    User user = (User) request.getSession().getAttribute(WebKeys.CMS_USER);
    String userId = user.getUserId();
View Full Code Here


  public ActionForward saveUserCategories(ActionMapping mapping,
      ActionForm lf, HttpServletRequest request,
      HttpServletResponse response) throws Exception {

    if (request.getSession().getAttribute(WebKeys.CMS_USER) == null) {
      return new ActionForward("/dotCMS/login");
    }

    MyAccountForm form = (MyAccountForm) lf;
    User user = (User) request.getSession().getAttribute(WebKeys.CMS_USER);
    String userId = user.getUserId();
View Full Code Here

  public ActionForward saveUserOrganization(ActionMapping mapping,
      ActionForm lf, HttpServletRequest request,
      HttpServletResponse response) throws Exception {

    if (request.getSession().getAttribute(WebKeys.CMS_USER) == null) {
      return new ActionForward("/dotCMS/login");
    }

    MyAccountForm form = (MyAccountForm) lf;
    User user = (User) request.getSession().getAttribute(WebKeys.CMS_USER);
    String userId = user.getUserId();
    String companyId = Config.getStringProperty("COMPANY_ID");
    UserProxy userProxy = com.dotmarketing.business.APILocator.getUserProxyAPI().getUserProxy(user,APILocator.getUserAPI().getSystemUser(), false);
    // ExtUser extUser = (ExtUser) InodeFactory.getChildOfClass(userProxy,
    // ExtUser.class);

    if (!Validator.validate(request, lf, mapping))
      return mapping.findForward("editUserOrganizationPage");



    // extUser.setNeedUpdateInfo(false);
    // HibernateUtil.saveOrUpdate(extUser);
    HibernateUtil.flush();

    loadUserInfoInRequest(form, userId, request);
    if (request.getSession().getAttribute(
        WebKeys.REDIRECT_AFTER_UPDATE_ACCOUNT_INFO) != null) {
      String redir = (String) request.getSession().getAttribute(
          WebKeys.REDIRECT_AFTER_UPDATE_ACCOUNT_INFO);
      request.getSession().removeAttribute(
          WebKeys.REDIRECT_AFTER_UPDATE_ACCOUNT_INFO);
      ActionForward af = new ActionForward(SecurityUtils.stripReferer(request, redir));
      af.setRedirect(true);
      return af;
    }
    return mapping.findForward("myAccountPage");
  }
View Full Code Here

        String queryString = request.getQueryString();
        String invalidCaptchaURL = request.getParameter("invalidCaptchaReturnUrl");
        if(!UtilMethods.isSet(invalidCaptchaURL)) {
          invalidCaptchaURL = errorURL;
        }
        ActionForward af = new ActionForward();
          af.setRedirect(true);
          if (UtilMethods.isSet(queryString)) {
           
            af.setPath(invalidCaptchaURL + "?" + queryString + "&error=Validation-Image");
          } else {
            af.setPath(invalidCaptchaURL + "?error=Validation-Image");
          }
     

       
        return af;
      }
     
    }



    Map<String, Object> parameters = null;
    if (request instanceof UploadServletRequest)
    {
      UploadServletRequest uploadReq = (UploadServletRequest) request;
      parameters = new HashMap<String, Object> (uploadReq.getParameterMap());
      for (Entry<String, Object> entry : parameters.entrySet())
      {
        if(entry.getKey().toLowerCase().indexOf("file") > -1 && !entry.getKey().equals("attachFiles"))
        {
          parameters.put(entry.getKey(), uploadReq.getFile(entry.getKey()));
        }
      }
    }
    else
    {
      parameters = new HashMap<String, Object> (request.getParameterMap());
    }

    Set<String> toValidate = new java.util.HashSet<String>(parameters.keySet());

    //Enhancing the ignored parameters not to be send in the email
    String ignoredParameters = (String) EmailFactory.getMapValue("ignore", parameters);
    if(ignoredParameters == null)
    {
      ignoredParameters = "";
    }
    ignoredParameters += ":useCaptcha:captcha:invalidCaptchaReturnUrl:return:returnUrl:errorURL:ignore:to:from:cc:bcc:dispatch:order:prettyOrder:autoReplyTo:autoReplyFrom:autoReplyText:autoReplySubject:";
    parameters.put("ignore", ignoredParameters);

    // getting categories from inodes
    // getting parent category name and child categories name
    // and replacing the "categories" parameter
    String categories = "";
    String[] categoriesArray = request.getParameterValues("categories");
    if (categoriesArray != null) {
      HashMap hashCategories = new HashMap<String, String>();
      for (int i = 0; i < categoriesArray.length; i++) {
        Category node = (Category) InodeFactory.getInode(categoriesArray[i], Category.class);
        Category parent = (Category) InodeFactory.getParentOfClass(node, Category.class);
        String parentCategoryName = parent.getCategoryName();

        if (hashCategories.containsKey(parentCategoryName)) {
          String childCategoryName = (String) hashCategories.get(parentCategoryName);
          if (UtilMethods.isSet(childCategoryName)) {
            childCategoryName += ", ";
          }
          childCategoryName += node.getCategoryName();
          hashCategories.put(parentCategoryName, childCategoryName);
        }
        else {
          hashCategories.put(parentCategoryName, node.getCategoryName());
        }
      }

      Set<String> keySet = hashCategories.keySet();
      for (String stringKey: keySet) {

        if (UtilMethods.isSet(categories)) {
          categories += "; ";
        }
        categories += stringKey + " : " + (String) hashCategories.get(stringKey);
        parameters.put(stringKey, (String) hashCategories.get(stringKey));
      }
      parameters.remove("categories");
    }

    WebForm webForm = new WebForm();
    try
    {
      /*validation parameter should ignore the returnUrl and erroURL field in the spam check*/
      String[] removeParams = ignoredParameters.split(":");
      for(String param : removeParams){
        toValidate.remove(param);
      }
     
     
     
      parameters.put("request", request);
      parameters.put("response", response);
     
      //Sending the email     
      webForm = EmailFactory.sendParameterizedEmail(parameters, toValidate, currentHost, currentUser);
     
     
     
      webForm.setCategories(categories);

      if(UtilMethods.isSet(request.getParameter("createAccount")) && request.getParameter("createAccount").equals("true"))
      {
        //if we create account set to true we create a user account and add user comments.
        createAccount(webForm, request);
        try{
            String userInode = webForm.getUserInode();
            String customFields = webForm.getCustomFields();
            customFields += " User Inode = " + String.valueOf(userInode) + " | ";
            webForm.setCustomFields(customFields);
        }
        catch(Exception e){
           
        }

      }

     
            if(UtilMethods.isSet(webForm.getFormType())){
                HibernateUtil.saveOrUpdate(webForm);
            }
     
     
      if (request.getParameter("return") != null)
      {
        ActionForward af = new ActionForward(SecurityUtils.stripReferer(request, request.getParameter("return")));
        af.setRedirect(true);
        return af;
      }
      else if (request.getParameter("returnUrl") != null)
      {
        ActionForward af = new ActionForward(SecurityUtils.stripReferer(request, request.getParameter("returnUrl")));
        af.setRedirect(true);
        return af;
      }
      else
      {
        return rMapping.findForward("thankYouPage");
      }

        }
        catch (DotRuntimeException e)
        {
            errors.add(Globals.ERROR_KEY, new ActionMessage("error.processing.your.email"));
            request.getSession().setAttribute(Globals.ERROR_KEY, errors);

            String queryString = request.getQueryString();

            if (queryString == null) {
                java.util.Enumeration<String> parameterNames = request.getParameterNames();
                queryString = "";
                String parameterName;
                for (; parameterNames.hasMoreElements();) {
                    parameterName = parameterNames.nextElement();

                    if (0 < queryString.length()) {
                        queryString = queryString + "&" + parameterName + "=" + UtilMethods.encodeURL(request.getParameter(parameterName));
                    } else {
                        queryString = parameterName + "=" + UtilMethods.encodeURL(request.getParameter(parameterName));
                    }
                }
            }

            ActionForward af;
            if (UtilMethods.isSet(queryString)) {
                af = new ActionForward(SecurityUtils.stripReferer(request, errorURL + "?" + queryString));
            } else {
                af = new ActionForward(SecurityUtils.stripReferer(request, errorURL));
            }

            af.setRedirect(true);

            return af;
        }
   

View Full Code Here

      java.util.Date now = new java.util.Date();
      u = APILocator.getUserAPI().loadUserById(userId,APILocator.getUserAPI().getSystemUser(),false);
      if ((u.getCreateDate() == null) || (u.getCreateDate().after(now))) {
        u = APILocator.getUserAPI().loadByUserByEmail(userId, APILocator.getUserAPI().getSystemUser(), false);
        if ((u.getCreateDate() == null) || (u.getCreateDate().after(now))) {
          ActionForward af = mapping.findForward("subscribePage");
              return af;
        }
      }
    } else {
        ActionForward af = mapping.findForward("subscribePage");
          return af;
    }

    HibernateUtil.startTransaction();

    if(UtilMethods.isSet(inodes))
      subscribeToMailingLists(u, inodes, false);
    else
      subscribeToMailingLists(u, inodes, true);

    HibernateUtil.commitTransaction();

      ActionMessages message = new ActionMessages();
    message.add("message", new ActionMessage("message.myaccount.mailinglists.updated"));
    saveMessages(request, message);

    String referrer = null;
    if (request.getParameter("referrer") != null && !request.getParameter("referrer").toString().equalsIgnoreCase("")) {
      referrer = (String)request.getParameter("referrer");
    }

      ActionForward af = mapping.findForward("subscribePage");
    if(UtilMethods.isSet(referrer) && !referrer.startsWith(af.getPath())) {
      af = new ActionForward(SecurityUtils.stripReferer(request, referrer));
      af.setRedirect(true);
    }

      if (UtilMethods.isSet(ui)) {
        request.setAttribute("ui", ui);
      }
View Full Code Here

    ActionErrors errors = form.validateCreateAndSubscribe(mapping, request);

    if(errors.size() > 0) {
      saveMessages(request.getSession(), errors);
        ActionForward af = mapping.findForward("subscribePage");
      if(UtilMethods.isSet(referrer) && !referrer.startsWith(af.getPath())) {
        af = new ActionForward(SecurityUtils.stripReferer(request, referrer));
        af.setRedirect(true);
      }
      return af;
    }

    HibernateUtil.startTransaction();
    if(user == null) {
      //### CREATE USER ###
      user = APILocator.getUserAPI().createUser(null, null);
      user.setEmailAddress(form.getEmailAddress());
      user.setFirstName(form.getName() == null ? "" : form.getName());
      user.setLastName(form.getLastName() == null ? "" : form.getLastName());
      user.setPasswordEncrypted(true);
      user.setPassword(PublicEncryptionFactory.getRandomEncryptedPassword());
      user.setComments("");
      user.setGreeting("Welcome, " + user.getFullName() + "!");
      user.setCreateDate(today);
      user.setActive(true);
      APILocator.getUserAPI().save(user,APILocator.getUserAPI().getSystemUser(),false);
    }


    subscribeToMailingLists(user, inodes, form.isUnsubscribeFromAll());
    HibernateUtil.commitTransaction();

      ActionMessages message = new ActionMessages();
    message.add("message", new ActionMessage("message.myaccount.mailinglists.updated"));
    saveMessages(request.getSession(), message);

    String returnURL = null;
    if (request.getParameter("return") != null && !request.getParameter("return").toString().equalsIgnoreCase("")) {
      returnURL = (String)request.getParameter("return");
    }

      ActionForward af = mapping.findForward("subscribePage");
    if(UtilMethods.isSet(returnURL) && !returnURL.startsWith(af.getPath())) {
      af = new ActionForward(SecurityUtils.stripReferer(request, returnURL));
      af.setRedirect(true);
    }

        return af;

    }
View Full Code Here

  private final LanguageAPI langAPI = APILocator.getLanguageAPI();
    private final CategoryAPI catAPI = APILocator.getCategoryAPI();
  private final HostWebAPI hostWebAPI = WebAPILocator.getHostWebAPI();

  public ActionForward unspecified(ActionMapping mapping, ActionForm lf, HttpServletRequest request, HttpServletResponse response) {
    ActionForward forward = new ActionForward("/");
    forward.setRedirect(false);
    return forward;
  }
View Full Code Here

     */
    String referrer = request.getParameter("referrer");
    if(referrer.endsWith("?")){
      referrer = referrer.substring(0,referrer.length()-1);
    }
    ActionForward af = new ActionForward(SecurityUtils.stripReferer(request, referrer));
    af.setRedirect(true);

    int index = referrer.lastIndexOf('/');
    String htmlServlet = null;
    if (index < 0)
      htmlServlet = referrer;
    else
      htmlServlet = referrer.substring(index + 1);

    if (htmlServlet.indexOf('.') < 0) {
      //If is a servlet
      referrer += "/";
    }

    String params="";
    HibernateUtil.startTransaction();

    try {
      /**
       * Getting user
       */
      String userId = request.getParameter("userId");

      /**
       * Getting content structure
       */
      String structureInode = request.getParameter("structure");
      Structure st = StructureCache.getStructureByInode(structureInode);


      /**
       * Getting options flags
       */
      String options = request.getParameter("options");
      if(UtilMethods.isSet(options)){
        options = PublicEncryptionFactory.decryptString(options);
        String[] opt = options.split(";");
        for(String text: opt){
          if(text.indexOf("contentUseCaptcha") != -1){
            useCaptcha = Boolean.parseBoolean(text.substring(text.indexOf("=")+1));
          }else if(text.indexOf("contentUseAudioCaptcha") != -1){
            useAudioCaptcha = Boolean.parseBoolean(text.substring(text.indexOf("=")+1));
          }else if(text.indexOf("contentAutoPublish") != -1){
            autoPublish = Boolean.parseBoolean(text.substring(text.indexOf("=")+1));
          }else if(text.indexOf("contentModeration") != -1){
            moderatorRole = text.substring(text.indexOf("=")+1);
          }
        }
      }

      /**
       * Setting content values
       */
      URLEncoder encoder = new URLEncoder();
      StringBuilder paramsBuff=new StringBuilder();
      List<String> parametersName = new ArrayList<String>();
      List<String[]> values = new ArrayList<String[]>();
      List<String> parametersfileName = new ArrayList<String>();
      List<String[]> filevalues = new ArrayList<String[]>();
      java.util.Enumeration<String> parameterNames = request.getParameterNames();
      Map <String, String> parameters=  new HashMap <String, String> ();
      String parameterName;
      String emailvalues;
      String []emailvaluessep;
      List <String> emails= new ArrayList <String>();
      if (st.getStructureType() == Structure.STRUCTURE_TYPE_FORM) {
        emailvalues = st.getFieldVar("formEmail").getValues();
        if(UtilMethods.isSet(emailvalues)){
          emailvalues = emailvalues.trim().toLowerCase();
        }
        else {
            emailvalues = "";
        }
        if (UtilMethods.isSet(emailvalues)) {
          if (emailvalues.contains(",")) {
            emailvaluessep = emailvalues.split(",");
            for (String email : emailvaluessep) {
              if(RegEX.contains(email.trim(),"^[_A-Za-z0-9-]+(\\.[_A-Za-z0-9-]+)*@[A-Za-z0-9-]+(\\.[A-Za-z0-9-]+)*((\\.[A-Za-z]{2,}){1}$)"))
                emails.add(email.trim());
              else throw new Exception("The email list provided by the Form is incorrectly formmated, please enter on the Form properties a valid email addresses separated by a comma.");
            }
          }else
            if(RegEX.contains(emailvalues.trim(),"^[_A-Za-z0-9-]+(\\.[_A-Za-z0-9-]+)*@[A-Za-z0-9-]+(\\.[A-Za-z0-9-]+)*((\\.[A-Za-z]{2,}){1}$)"))
              emails.add(emailvalues.trim());
            else throw new Exception("The email provided by the Form is incorrect, please enter on the Form properties valid email address. ");
        }

        parameters.put("formTitle", st.getFieldVar("formTitle").getValues());
        parameters.put("formEmail", emailvalues);
        parameters.put("formReturnPage", st.getFieldVar("formReturnPage").getValues());


      }

      for (; parameterNames.hasMoreElements();) {
        parameterName = parameterNames.nextElement();
        Field  field = st.getFieldVar(parameterName);
        String fieldTypeStr = field!=null?field.getFieldType():"";
        Field.FieldType fieldType =  Field.FieldType.getFieldType(fieldTypeStr);
        String[] fieldValues = request.getParameterValues(parameterName);
        String value = "";
        if(fieldValues.length>1){
          for(String val:fieldValues){
            value+=","+val;
          }
          parameters.put(parameterName,value.substring(1));
        }else{
          parameters.put(parameterName,fieldValues[0]);
        }

        if(fieldType == null || (fieldType!=null && !fieldType.equals(Field.FieldType.IMAGE) && !fieldType.equals(Field.FieldType.FILE)&& !fieldType.equals(Field.FieldType.BINARY))){
          parametersName.add(parameterName);
          String[] vals = request.getParameterValues(parameterName);
          values.add(vals);
          if(!parameterName.equals("dispatch") && !parameterName.equals("captcha") && !parameterName.equals("options") && !parameterName.equals("structure") && !parameterName.equals("userId") && !parameterName.equals("referrer")){
            if(!SubmitContentUtil.imageOrFileParam(st, parameterName) && !UtilMethods.isImage(parameterName)){
              for(String val : vals){
                if(val.length() < 512) {
                  paramsBuff.append("&").append(parameterName).append("=").append(encoder.encode(val));
                }
              }
            }
          }
        }
        else {
          parametersfileName.add(parameterName);
          String[] vals = request.getParameterValues(parameterName);
          filevalues.add(vals);

          if(!parameterName.equals("dispatch") && !parameterName.equals("captcha") && !parameterName.equals("options") && !parameterName.equals("structure") && !parameterName.equals("userId") && !parameterName.equals("referrer")){
            if(!SubmitContentUtil.imageOrFileParam(st, parameterName)){
              for(String val : vals){
                paramsBuff.append("&").append(parameterName).append("=").append(encoder.encode(val));
              }
            }
          }
        }
      }

      params=paramsBuff.toString();

      /*
       * Checking for captcha
       */
      if(useCaptcha){

        if(!CaptchaUtil.isValidImageCaptcha(request)){
          User user = com.liferay.portal.util.PortalUtil.getUser(request);
          String mes=LanguageUtil.get(user, "org.dotcms.frontend.content.submission.captcha.validation.image");
          mes = mes.replace(":", "");
          errors.add(ActionMessages.GLOBAL_MESSAGE, new ActionMessage("message.contentlet.required", mes));
          saveMessages(session, errors);
          if(errors.size() > 0 && UtilMethods.isSet(params)){
            referrer=referrer+"?"+params.substring(1);
            af = new ActionForward(referrer);
            af.setRedirect(true);
          }
          return af;
        }

      }

      if(useAudioCaptcha){

        if(!CaptchaUtil.isValidAudioCaptcha(request)){
          errors.add(ActionMessages.GLOBAL_MESSAGE, new ActionMessage("message.contentlet.required","Validation Sound"));
          saveMessages(session, errors);
          if(errors.size() > 0 && UtilMethods.isSet(params)){
            referrer=referrer+"?"+params.substring(1);
            af = new ActionForward(referrer);
            af.setRedirect(true);
          }
          return af;
        }
      }

      /**
       * Get Categories
       */
      ArrayList<Category> cats = new ArrayList<Category>();
      String[] arr = request.getParameterValues("categories") == null?new String[0]:request.getParameterValues("categories");
      if (arr != null && arr.length > 0) {
        for (int i = 0; i < arr.length; i++) {
          if(UtilMethods.isSet(arr[i])){
            Category c = catAPI.find(arr[i], SubmitContentUtil.getUserFromId(userId), true);
            if(UtilMethods.isSet(c))
              cats.add(c);
          }
        }
      }

      for (int i = 0; i < parametersName.size(); ++i) {
        Field field = st.getFieldVar(parametersName.get(i));
        String[] fieldValue = values.get(i);
        int size = 0;
                if(fieldValue!= null && !fieldValue[0].equals("") ){
                  size=1;
          if (fieldValue[0].contains(",")) {
            String[] fieldValueaux = fieldValue[0].split(",");
            fieldValue = fieldValueaux;
            size = fieldValue.length;
          }
         }

        for (int j = 0; j < size; j++) {
          if ((field != null)&& (field.getFieldType() != null)&& (field.getFieldType().equals(Field.FieldType.CATEGORY.toString()))){
            Category c = catAPI.find(com.dotmarketing.util.VelocityUtil.cleanVelocity(fieldValue[j].trim()),SubmitContentUtil.getUserFromId(userId), true);
            if(UtilMethods.isSet(c))
              cats.add(c);
          }

        }
      }

      List<Map<String,Object>> fileParameters = new ArrayList<Map<String,Object>>();

      DotContentletValidationException cve = new DotContentletValidationException("Contentlet's fields are not valid");
      boolean hasError = false;

      /**
       * Get image fields
       */
      imageFields = StructureFactory.getImagesFieldsList(st, parametersfileName, filevalues);
      if(imageFields.size() > 0){

        for(Field f : imageFields){
          java.io.File uploadedFile = uploadReq.getFile(f.getVelocityVarName());
          String title = uploadReq.getFileName(f.getVelocityVarName());
          if(f.isRequired() && !UtilMethods.isSet(title)){
            cve.addRequiredField(f);
            hasError = true;
            continue;
          }
          if(uploadedFile!=null && uploadedFile.length()> 0){
            String contentType = uploadReq.getContentType(f.getVelocityVarName());
            if(contentType.equals("image/png") || contentType.equals("image/gif") || contentType.equals("image/jpeg")){
              Map<String,Object> temp = new HashMap<String,Object>();
              temp.put("field", f);
              temp.put("title", title);
              temp.put("file", uploadedFile);
              temp.put("host", host);
              fileParameters.add(temp);
            }else{
              cve.addBadTypeField(f);
              hasError = true;
              imageNames.add(title);
              continue;
            }
          }
        }
      }

      /**
       * Get file fields
       */
      //http://jira.dotmarketing.net/browse/DOTCMS-3463
      Map <String, Object> tempBinaryValues= new HashMap <String, Object>();
      fileFields = StructureFactory.getFilesFieldsList(st, parametersfileName, filevalues);
      List <Field> fields = st.getFields();
      for(Field field:fields){
        Map <String, Object> binaryvalues= new HashMap <String, Object>();
        if (field.getFieldType().equals("binary"))
        {
          tempBinaryValues=processBinaryTempFileUpload( field.getVelocityVarName(), request, field.getFieldContentlet()) ;
          binaryvalues.put("field", field);
          parametersName.add(tempBinaryValues.get("parameterName").toString());
          Object ob = tempBinaryValues.get("parameterValues");
          if(ob != null){
            File f = (File)ob;
            binaryvalues.put("file", f);
            values.add(new String []{f.getAbsolutePath()});
          }else{
            binaryvalues.put(field.getVelocityVarName(), null);
            values.add(new String []{""});
          }
          fileParameters.add(binaryvalues);
        }

      }
      if(fileFields.size() > 0){

        for(Field f : fileFields){
          java.io.File uploadedFile = uploadReq.getFile(f.getVelocityVarName());
          String title = uploadReq.getFileName(f.getVelocityVarName());
          fileNames.add(title);

          if(f.isRequired() && !UtilMethods.isSet(title)){
            cve.addRequiredField(f);
            hasError = true;
            continue;
          }
          if(uploadedFile!=null && uploadedFile.length()> 0) {
            Map<String,Object> temp = new HashMap<String,Object>();
            temp.put("field", f);
            temp.put("title", title);
            temp.put("file", uploadedFile);
            temp.put("host", host);
            fileParameters.add(temp);
          }
        }
      }

      if(hasError){
        throw cve;
      }

      /**
       * Save content
       */
      Contentlet contentlet = SubmitContentUtil.createContent(st, cats, userId, parametersName, values, options, fileParameters, autoPublish, host, moderatorRole);



      message.add(Globals.MESSAGE_KEY, new ActionMessage("message.contentlet.save"));
      session.setAttribute(Globals.MESSAGE_KEY, message);

      HibernateUtil.commitTransaction();
      if(!APILocator.getContentletAPI().isInodeIndexed(contentlet.getInode())){
        Logger.error(this, "Unable to index contentlet");
      }
      if (st.getStructureType()== Structure.STRUCTURE_TYPE_FORM ){
        if(st.getFieldVar("formReturnPage")!= null && UtilMethods.isSet(st.getFieldVar("formReturnPage").getValues())){
          af.setPath(st.getFieldVar("formReturnPage").getValues());
        }
        if(UtilMethods.isSet(request.getParameter("formReturnPageOverride"))){
          af.setPath(request.getParameter("formReturnPageOverride"));
        }
        parameters.put("returnUrl", af.getPath());
        parameters.put("IP:", request.getRemoteAddr());

        String reverseName = null;
        try{
          reverseName = DNSUtil.reverseDns(request.getRemoteAddr());
          if(!reverseName.equals(request.getRemoteAddr())){
            parameters.put("reverseName", reverseName);
          }
        }
        catch(Throwable t){

        }




        try{
          String referer = request.getHeader("Referer");
          if(referer.indexOf("?") > -1){
            referer = referer.substring(0,referer.indexOf("?"));
          }
          parameters.put("referrer", referer);
        }
        catch(Exception e){

        }




        Clickstream clickstream = (Clickstream) request.getSession().getAttribute("clickstream");
        if(clickstream != null &&  UtilMethods.isSet(clickstream.getInitialReferrer())){
          parameters.put("Initial Referer", clickstream.getInitialReferrer());
        }

        parameters.remove("options");
        parameters.remove("structure");
        parameters.remove("dispatch");
        parameters.remove("formEmail");
        parameters.remove("formTitle");
        parameters.remove("formReturnPage");
        EmailUtils.SendContentSubmitEmail(parameters, st,emails);
      }

    }catch (DotContentletValidationException ve) {
      HibernateUtil.rollbackTransaction();
      Logger.debug(this, ve.getMessage());

      Language userlang=langAPI.getLanguage(
                          (String)request.getSession().getAttribute(
                                  com.dotmarketing.util.WebKeys.HTMLPAGE_LANGUAGE));

      if(ve.hasRequiredErrors()){
        List<Field> reqs = ve.getNotValidFields().get(DotContentletValidationException.VALIDATION_FAILED_REQUIRED);
        for (Field errorField : reqs) {
            String fname=langAPI.getStringKey(userlang, errorField.getFieldName());
          String customizedMessage = SubmitContentUtil.getCustomizedFieldErrorMessage(errorField, SubmitContentUtil.errorFieldVariable);
          if(UtilMethods.isSet(customizedMessage)){
            errors.add(Globals.ERROR_KEY,
                    new ActionMessage("secure.form.error.message.contentlet", fname,
                            langAPI.getStringKey(userlang, customizedMessage)));
          }else{
            errors.add(Globals.ERROR_KEY, new ActionMessage("message.contentlet.required", fname));
          }
        }
      }
      if(ve.hasLengthErrors()){
        List<Field> reqs = ve.getNotValidFields().get(DotContentletValidationException.VALIDATION_FAILED_MAXLENGTH);
        for (Field errorField : reqs) {
            String fname=langAPI.getStringKey(userlang, errorField.getFieldName());
          String customizedMessage = SubmitContentUtil.getCustomizedFieldErrorMessage(errorField, SubmitContentUtil.errorFieldVariable);
          if(UtilMethods.isSet(customizedMessage)){
            errors.add(Globals.ERROR_KEY,
                    new ActionMessage("secure.form.error.message.contentlet", fname,
                            langAPI.getStringKey(userlang, customizedMessage)));
          }else{
            errors.add(Globals.ERROR_KEY, new ActionMessage("message.contentlet.maxlength", fname,"255"));
          }
        }
      }
      if(ve.hasPatternErrors()){
        List<Field> reqs = ve.getNotValidFields().get(DotContentletValidationException.VALIDATION_FAILED_PATTERN);
        for (Field errorField : reqs) {
            String fname=langAPI.getStringKey(userlang, errorField.getFieldName());
          String customizedMessage = SubmitContentUtil.getCustomizedFieldErrorMessage(errorField, SubmitContentUtil.errorFieldVariable);
          if(UtilMethods.isSet(customizedMessage)){
            errors.add(Globals.ERROR_KEY,
                    new ActionMessage("secure.form.error.message.contentlet", fname,
                            langAPI.getStringKey(userlang, customizedMessage)));
          }else{
            errors.add(Globals.ERROR_KEY, new ActionMessage("message.contentlet.format", fname));
          }
        }
      }

      if(ve.hasRelationshipErrors()){
        //need to update message to support multiple relationship validation errors
        errors.add(Globals.ERROR_KEY, new ActionMessage("message.relationship.required", "relationships"));
      }

      if(ve.hasUniqueErrors()){
        List<Field> reqs = ve.getNotValidFields().get(DotContentletValidationException.VALIDATION_FAILED_UNIQUE);
        for (Field errorField : reqs) {
            String fname=langAPI.getStringKey(userlang, errorField.getFieldName());
          String customizedMessage = SubmitContentUtil.getCustomizedFieldErrorMessage(errorField, SubmitContentUtil.errorFieldVariable);
          if(UtilMethods.isSet(customizedMessage)){
            errors.add(Globals.ERROR_KEY,
                    new ActionMessage("secure.form.error.message.contentlet", fname,
                            langAPI.getStringKey(userlang, customizedMessage)));
          }else{
            errors.add(Globals.ERROR_KEY, new ActionMessage("message.contentlet.unique", fname));
          }
        }
      }
      if(ve.hasBadTypeErrors()){
        List<Field> reqs = ve.getNotValidFields().get(DotContentletValidationException.VALIDATION_FAILED_BADTYPE);
        for (Field errorField : reqs) {
            String fname=langAPI.getStringKey(userlang, errorField.getFieldName());
          String customizedMessage = SubmitContentUtil.getCustomizedFieldErrorMessage(errorField, SubmitContentUtil.errorFieldVariable);
          if(UtilMethods.isSet(customizedMessage)){
            errors.add(Globals.ERROR_KEY,
                    new ActionMessage("secure.form.error.message.contentlet", fname,
                            langAPI.getStringKey(userlang, customizedMessage)));
          }else{
            errors.add(Globals.ERROR_KEY, new ActionMessage("message.contentlet.invalid.image", fname));
          }
        }
      }
      //errors.add(Globals.ERROR_KEY, new ActionMessage("error.invalid.field",e.getMessage()));
      session.setAttribute(Globals.ERROR_KEY, errors);
    }catch (Exception e) {
      HibernateUtil.rollbackTransaction();
      Logger.debug(this, e.getMessage());
      errors.add(Globals.ERROR_KEY, new ActionMessage("error.generic.message",e.getMessage()));
      session.setAttribute(Globals.ERROR_KEY, errors);
    }

    if(errors.size() > 0 && UtilMethods.isSet(params)){
      String[] paramList = params.split("&");
            String l = "";

            for(String param : paramList){

              if(UtilMethods.isSet(param)) {
                String leftSide = param.substring(0, param.indexOf("="));
                if((!imageNames.contains(leftSide)) && !fileNames.contains(leftSide)){
                  l = l + "&" + param;
                }
              }
            }

            referrer=referrer+"?"+l;
      af = new ActionForward(referrer);
      af.setRedirect(true);
    }

    return af;

  }
View Full Code Here

        String countValue = (contentlet.getStringProperty(field.getVelocityVarName()) ==  null) ? field.getDefaultValue() : (String)contentlet.getStringProperty(field.getVelocityVarName());
        int numberOfClicks  = new Integer(countValue).intValue();
        contentlet.setStringProperty(field.getVelocityVarName(),String.valueOf(numberOfClicks));
        conAPI.checkin(contentlet,new HashMap<Relationship, List<Contentlet>>(),new ArrayList<Category>(),new ArrayList<Permission>() ,APILocator.getUserAPI().getSystemUser(),true);
        }
        ActionForward af = new ActionForward(SecurityUtils.stripReferer(request, redirectLink));
          af.setRedirect(true);
          return af;
   
  }
View Full Code Here

     if (request.getSession().getAttribute(WebKeys.REDIRECT_AFTER_LOGIN) != null) {
             String redir = (String) request.getSession().getAttribute(WebKeys.REDIRECT_AFTER_LOGIN);
             request.removeAttribute(WebKeys.REDIRECT_AFTER_LOGIN);
             request.getSession().setAttribute("createAccountForm",lf);
             Logger.debug(this.getClass(), "redirecting after account creation: " + redir);
             ActionForward af = new ActionForward(SecurityUtils.stripReferer(request, redir));
             af.setRedirect(true);
             return af;
         }
    
    ActionForward af = mapping.findForward("createAccount");
    return af;
  }
View Full Code Here

TOP

Related Classes of com.dotcms.repackage.org.apache.struts.action.ActionForward

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.