Package com.dotmarketing.portlets.contentlet.struts

Examples of com.dotmarketing.portlets.contentlet.struts.ImportContentletsForm


        //Validation
        UploadPortletRequest uploadReq = PortalUtil.getUploadPortletRequest(req);
        byte[] bytes = FileUtil.getBytes(uploadReq.getFile("file"));

        ImportContentletsForm importContentletsForm = (ImportContentletsForm) form;
        if(importContentletsForm.getStructure().isEmpty()){
          SessionMessages.add(req, "error", "structure-type-is-required");
          setForward(req, "portlet.ext.contentlet.import_contentlets");
        }else if (bytes == null || bytes.length == 0) {
          SessionMessages.add(req, "error", "message.contentlet.file.required");
          setForward(req, "portlet.ext.contentlet.import_contentlets");
        } else {
          try {
            Reader reader = null;
            CsvReader csvreader = null;
            String[] csvHeaders = null;
            int languageCodeHeaderColumn = -1;
            int countryCodeHeaderColumn = -1;
                       
            if (importContentletsForm.getLanguage() == -1)
              reader = new InputStreamReader(new ByteArrayInputStream(bytes), Charset.forName("UTF-8"));
            else
              reader = new InputStreamReader(new ByteArrayInputStream(bytes));
           
            csvreader = new CsvReader(reader);
            csvreader.setSafetySwitch(false);
           
            switch ((int) importContentletsForm.getLanguage()) {
            case -1:
              if (0 < importContentletsForm.getFields().length) {
                if (csvreader.readHeaders()) {
                  csvHeaders = csvreader.getHeaders();
                  for (int column = 0; column < csvHeaders.length; ++column) {
                    if (csvHeaders[column].equals(languageCodeHeader))
                      languageCodeHeaderColumn = column;
                    if (csvHeaders[column].equals(countryCodeHeader))
                      countryCodeHeaderColumn = column;
                   
                    if ((-1 < languageCodeHeaderColumn) && (-1 < countryCodeHeaderColumn))
                      break;
                  }
                 
                  if ((-1 == languageCodeHeaderColumn) || (-1 == countryCodeHeaderColumn)) {
                    SessionMessages.add(req, "error", "message.import.contentlet.csv_headers.required");
                    setForward(req, "portlet.ext.contentlet.import_contentlets");
                  } else {
                    _generatePreview(0,req, res, config, form, user, bytes, csvHeaders, csvreader, languageCodeHeaderColumn, countryCodeHeaderColumn, reader);
                    setForward(req, "portlet.ext.contentlet.import_contentlets_preview");
                  }
                } else {
                  SessionMessages.add(req, "error", "message.import.contentlet.csv_headers.error");
                  setForward(req, "portlet.ext.contentlet.import_contentlets");
                }
              } else {
                SessionMessages.add(req, "error", "message.import.contentlet.key_field.required");
                setForward(req, "portlet.ext.contentlet.import_contentlets");
              }
              break;
            case 0:
              SessionMessages.add(req, "error", "message.import.contentlet.language.required");
              setForward(req, "portlet.ext.contentlet.import_contentlets");
              break;
            default:
              _generatePreview(0, req, res, config, form, user, bytes, csvHeaders, csvreader, languageCodeHeaderColumn, countryCodeHeaderColumn, reader);
              setForward(req, "portlet.ext.contentlet.import_contentlets_preview");
              break;
            }
           
            csvreader.close();
          } catch (Exception e) {
            _handleException(e, req);
            return;
          }
        }

      } catch (Exception ae) {
        _handleException(ae, req);
        return;
      }
    } else if ((cmd != null) && cmd.equals(com.dotmarketing.util.Constants.PUBLISH)) {
      AdminLogger.log(ImportContentletsAction.class, "processAction", "Importing Contentlets", user);
      Long importIdComplete=(Long)session.getAttribute("importId");
      String subcmd = req.getParameter("subcmd");
       if(subcmd != null && subcmd.equals("importContentletsResults")){
        HashMap<String, List<String>>results=ImportAuditUtil.loadImportResults(importIdComplete);
        req.setAttribute("importResults", results);
        setForward(req, "portlet.ext.contentlet.import_contentlets_results");
      } else {
        final ActionRequestImpl reqImpl = (ActionRequestImpl) req;
        final HttpServletRequest httpReq = reqImpl.getHttpServletRequest();
        final long importId = ImportAuditUtil.createAuditRecord(user.getUserId(), (String)httpReq.getSession().getAttribute("fileName"));
        Thread t=new Thread() {
          public void run() {
            try {
              Logger.debug(this, "Calling Process File Method");
             
              Reader reader = null;
              CsvReader csvreader = null;
              String[] csvHeaders = null;
              int languageCodeHeaderColumn = -1;
              int countryCodeHeaderColumn = -1;
             
              byte[] bytes = (byte[]) httpReq.getSession().getAttribute("file_to_import");
              File file= (File)httpReq.getSession().getAttribute("csvFile");
              ImportContentletsForm importContentletsForm = (ImportContentletsForm) form;
              if (importContentletsForm.getLanguage() == -1)
                reader = new InputStreamReader(new ByteArrayInputStream(bytes), Charset.forName("UTF-8"));
              else
                reader = new InputStreamReader(new ByteArrayInputStream(bytes));
              csvreader = new CsvReader(reader);
              csvreader.setSafetySwitch(false);
               
              if (importContentletsForm.getLanguage() == -1) {
                if (csvreader.readHeaders()) {
                  csvHeaders = csvreader.getHeaders();
                  for (int column = 0; column < csvHeaders.length; ++column) {
                    if (csvHeaders[column].equals(languageCodeHeader))
                      languageCodeHeaderColumn = column;
View Full Code Here


    httpRes.setContentType("application/octet-stream");
    httpRes.setHeader("Content-Disposition", "attachment; filename=\"CSV_Template.csv\"");

    ServletOutputStream out = httpRes.getOutputStream();
    ImportContentletsForm importForm = (ImportContentletsForm) form;

    List<Field> fields = FieldsCache.getFieldsByStructureInode(importForm.getStructure());
    for(int i = 0; i < fields.size(); i++) {
      Field field = fields.get(i);
      if (ImportUtil.isImportableField(field)) {
        String fieldName = field.getFieldName();
        if(fieldName.contains(","))
View Full Code Here

    HttpSession session = httpReq.getSession();

    httpReq.getSession().setAttribute("file_to_import", bytes);
    httpReq.getSession().setAttribute("form_to_import", form);

    ImportContentletsForm importForm = (ImportContentletsForm) form;
    httpReq.getSession().setAttribute("fileName", importForm.getFileName());
    String currentHostId = (String)session.getAttribute(com.dotmarketing.util.WebKeys.CMS_SELECTED_HOST_ID);
    HashMap<String, List<String>> results = ImportUtil.importFile(importId, currentHostId, importForm.getStructure(), importForm.getFields(), true, (importForm.getLanguage() == -1), user, importForm.getLanguage(), csvHeaders, csvreader, languageCodeHeaderColumn, countryCodeHeaderColumn, reader);

    req.setAttribute("previewResults", results);
  }
View Full Code Here

    // wraps request to get session object
    ActionRequestImpl reqImpl = (ActionRequestImpl) req;
    HttpServletRequest httpReq = reqImpl.getHttpServletRequest();
    HttpSession session = httpReq.getSession();
    ImportContentletsForm importForm = (ImportContentletsForm) httpReq.getSession().getAttribute("form_to_import");
    String currentHostId = (String)session.getAttribute(com.dotmarketing.util.WebKeys.CMS_SELECTED_HOST_ID);
     HashMap<String, List<String>> results = ImportUtil.importFile(importId, currentHostId, importForm.getStructure(), importForm.getFields(), false, (importForm.getLanguage() == -1), user, importForm.getLanguage(), csvHeaders, csvreader, languageCodeHeaderColumn, countryCodeHeaderColumn, reader);
     //req.setAttribute("importResults", results);
     return results;
   
  }
View Full Code Here

TOP

Related Classes of com.dotmarketing.portlets.contentlet.struts.ImportContentletsForm

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.