List of usage examples for com.liferay.portal.kernel.util WebKeys THEME_DISPLAY
String THEME_DISPLAY
To view the source code for com.liferay.portal.kernel.util WebKeys THEME_DISPLAY.
Click Source Link
From source file:atc.otn.ckan.portlets.OrganizationUploader.java
@Override public void doView(RenderRequest renderRequest, RenderResponse renderResponse) { //********************** Variables ********************** //json array holding the user receivers with their roles and units JSONArray licenses = new JSONArray(); CKANClient client;/*from www .j ava 2 s.c om*/ ThemeDisplay themeDisplay = (ThemeDisplay) renderRequest.getAttribute(WebKeys.THEME_DISPLAY); String url = ""; //********************** Action ********************** try { url = PortalUtil.getLayoutURL(themeDisplay.getLayout(), themeDisplay); String city = ""; if (url.contains("/web/antwerp")) { city = "antwerp"; } else if (url.contains("/web/birmingham")) { city = "birmingham"; } else if (url.contains("/web/issy")) { city = "issy"; } else if (url.contains("/web/liberec")) { city = "liberec"; } else { city = "guest"; } renderRequest.setAttribute("city", city); //init CKAN client client = new CKANClient(); licenses = client.getLicenses(); //return list to jsp renderRequest.setAttribute("licenses", licenses); super.doView(renderRequest, renderResponse); } catch (Exception e) { e.printStackTrace(); } }
From source file:atc.otn.ckan.portlets.OrganizationUploader.java
@ProcessAction(name = "orgDocument") public void orgDocument(ActionRequest actionRequest, ActionResponse actionResponse) throws IOException, PortletException, PortalException, SystemException { //********************** Variables ********************** ThemeDisplay themeDisplay = (ThemeDisplay) actionRequest.getAttribute(WebKeys.THEME_DISPLAY); User user = themeDisplay.getUser();/*from ww w . j av a2 s. com*/ DocumentManager dm = new DocumentManager(); Folder folder; UploadPortletRequest uploadPortletRequest = PortalUtil.getUploadPortletRequest(actionRequest); File file; String fileName; Folder parentFolder; long repositoryId; String mimeType; String fileURL = ""; CKANClient client; JSONObject datasetData = new JSONObject(), resource = new JSONObject(), dTankresource = new JSONObject(); JSONArray resources = new JSONArray(), extras = new JSONArray(), tags = new JSONArray(), dTankresources = new JSONArray(); String[] tagsStr; String datasetURL = ""; String dTankDatasetURL = ""; String organizationId; InputStream in = null; Properties p = new Properties(); //get the repository id repositoryId = themeDisplay.getScopeGroupId(); //get the CKAN folder parentFolder = DLAppServiceUtil.getFolder(repositoryId, PARENT_FOLDER_ID, ROOT_FOLDER_NAME); //init CKAN client client = new CKANClient(); long now = new Date().getTime(); //********************** Action ********************** try { in = this.getClass().getResourceAsStream("/portlet.properties"); p.load(in); organizationId = p.getProperty("CKAN.organizationID"); logger.info("uploading document...."); //get the file uploaded file = uploadPortletRequest.getFile("fileInput"); //if file was given after all if (uploadPortletRequest.getFile("fileInput") != null && file.exists()) { fileName = uploadPortletRequest.getFileName("fileInput"); mimeType = uploadPortletRequest.getContentType("fileInput"); //folder = dm.createUserFolder(actionRequest, themeDisplay); fileURL = dm.uploadFile(themeDisplay, actionRequest, parentFolder, file, fileName, mimeType); file.delete(); } else if (ParamUtil.getString(uploadPortletRequest, "link") != null) { fileURL = ParamUtil.getString(uploadPortletRequest, "link"); } tagsStr = ParamUtil.getString(uploadPortletRequest, "tags").split(","); logger.info(ParamUtil.getString(uploadPortletRequest, "tags")); //create json objects as ckan requires them resource.put("url", fileURL); /* Give the resource the same name as the package */ resource.put("name", ParamUtil.getString(uploadPortletRequest, "dstitle")); //resource.put("name", ParamUtil.getString(uploadPortletRequest,"dname")); //resource.put("description", ParamUtil.getString(uploadPortletRequest,"description")); resource.put("format", ParamUtil.getString(uploadPortletRequest, "format")); resources.put(resource); /* Don't upload to CKAN xlxs,xls and csv files */ if (!resource.getString("format").equals("XLSX") && !resource.getString("format").equals("XLS") && !resource.getString("format").equals("CSV")) { for (String tag : tagsStr) { if (!tag.isEmpty()) { tags.put(new JSONObject().put("name", tag)); } } //convert title of dataset to ascii characters for the url to be valid String stringName = ParamUtil.getString(uploadPortletRequest, "dstitle").toLowerCase().replace(" ", "-"); String nameForUrl = java.net.URLEncoder.encode(stringName.toString(), "ascii").replace("%", "-") .toLowerCase(); datasetData.put("title", ParamUtil.getString(uploadPortletRequest, "dstitle")); datasetData.put("name", nameForUrl + now); datasetData.put("owner_org", organizationId); datasetData.put("notes", ParamUtil.getString(uploadPortletRequest, "notes")); datasetData.put("url", ParamUtil.getString(uploadPortletRequest, "source")); datasetData.put("version", ParamUtil.getString(uploadPortletRequest, "version")); datasetData.put("author", ParamUtil.getString(uploadPortletRequest, "author")); datasetData.put("license_id", ParamUtil.getString(uploadPortletRequest, "license")); datasetData.put("resources", resources); if (tags.length() > 0) { datasetData.put("tags", tags); } //Store dataset in CKAN datasetURL = client.addOrganizationDataset(user.getUserId(), datasetData); if (!datasetURL.startsWith("http")) { actionRequest.setAttribute("ckanerror", datasetURL); SessionErrors.add(actionRequest, "ckanerror"); } else { SessionMessages.add(actionRequest, "ckansuccess"); System.out.println("uploaded to CKAN " + datasetURL); } } // End CKAN UPload else {// Upload to Datatank if (!fileURL.equals("")) { JSONObject dtankData = new JSONObject(); /*Remove everything after the .xls*/ int ext = 0; if ((ext = fileURL.indexOf(".xls/")) > 0) { fileURL = fileURL.substring(0, ext + 4); } else if ((ext = fileURL.indexOf(".xlsx/")) > 0) { fileURL = fileURL.substring(0, ext + 5); } else if ((ext = fileURL.indexOf(".csv")) > 0) { fileURL = fileURL.substring(0, ext + 4); } System.out.println("Datatank resource url: " + fileURL); String dTankformat = ParamUtil.getString(uploadPortletRequest, "format").toLowerCase(); if (dTankformat.equals("xlsx")) { dTankformat = "xls"; } dtankData.put("description", ParamUtil.getString(uploadPortletRequest, "notes")); dtankData.put("uri", fileURL); dtankData.put("type", dTankformat); dtankData.put("title", ParamUtil.getString(uploadPortletRequest, "dstitle")); dTankDatasetURL = client.addToDataTank(dtankData, dTankformat, ParamUtil.getString(uploadPortletRequest, "dstitle").toLowerCase().replace(" ", "_") + now); if (dTankDatasetURL.startsWith("http:")) { logger.info("uploaded to Datatank: " + dTankDatasetURL); if (client.getDatatankTransform(dTankDatasetURL)) { /*Now store the file back in CKAN*/ dTankresource.put("url", dTankDatasetURL + ".geojson"); /* Give the resource the same name as the package */ dTankresource.put("name", ParamUtil.getString(uploadPortletRequest, "dstitle")); //resource.put("name", ParamUtil.getString(uploadPortletRequest,"dname")); //resource.put("description", ParamUtil.getString(uploadPortletRequest,"description")); dTankresource.put("format", "geojson"); dTankresources.put(dTankresource); for (String tag : tagsStr) { if (!tag.isEmpty()) { tags.put(new JSONObject().put("name", tag)); } } datasetData.put("title", ParamUtil.getString(uploadPortletRequest, "dstitle")); datasetData.put("name", ParamUtil.getString(uploadPortletRequest, "dstitle") .toLowerCase().replace(" ", "-") + now); datasetData.put("owner_org", organizationId); datasetData.put("notes", ParamUtil.getString(uploadPortletRequest, "notes")); datasetData.put("url", ParamUtil.getString(uploadPortletRequest, "source")); datasetData.put("version", ParamUtil.getString(uploadPortletRequest, "version")); datasetData.put("author", ParamUtil.getString(uploadPortletRequest, "author")); datasetData.put("license_id", ParamUtil.getString(uploadPortletRequest, "license")); //if uploaded file format is xls or csv if (ParamUtil.getString(uploadPortletRequest, "format").toLowerCase().equals("csv") || ParamUtil.getString(uploadPortletRequest, "format").toLowerCase() .equals("xls") || ParamUtil.getString(uploadPortletRequest, "format").toLowerCase() .equals("xlsx")) { client = new CKANClient(); //get the bbox value from geojson coming from Datatank extras = client.getExtent(dTankDatasetURL); //prepare the jsonArray from service to insert it as a custom field in CKAN String extrStr = extras.toString().replaceAll("[\\[\\]]", ""); List<HashMap<String, String>> extraDictionaries = new ArrayList<HashMap<String, String>>(); HashMap<String, String> extraDictionary = new HashMap<String, String>(); extraDictionary.put("value", extrStr); extraDictionary.put("key", "extent"); extraDictionaries.add(extraDictionary); datasetData.put("extras", extraDictionaries); } datasetData.put("resources", dTankresources); if (tags.length() > 0) { datasetData.put("tags", tags); } //Store dataset in CKAN datasetURL = client.addOrganizationDataset(user.getUserId(), datasetData); if (!datasetURL.startsWith("http")) { actionRequest.setAttribute("ckanerror", datasetURL); SessionErrors.add(actionRequest, "ckanerror"); } //actionRequest.setAttribute("dTanksuccess", dTankDatasetURL +".geojson"); actionRequest.setAttribute("dTanksuccess", "Your dataset is succefully transformed into geojson.<br /> Go to <a href='/my-datasets'>My Datasets</a> to view it!"); SessionMessages.add(actionRequest, "dTanksuccess"); logger.info("Dtank transofrmed succesfully stored in CKAN: " + datasetURL); } else { actionRequest.setAttribute("dTankerror", "Your file could not be transformed into geojson format.<br /> Please check if it has column headers and if the records contain coordinates. For excel files, the system will try to transform data found in the first sheet which should be named 'sheet1'"); SessionErrors.add(actionRequest, "dTankerror"); } } else { actionRequest.setAttribute("dTankerror", "Your file could not be transformed into geojson format"); SessionErrors.add(actionRequest, "dTankerror"); } } } PortletURL actionUrl = PortletURLFactoryUtil.create(actionRequest, themeDisplay.getPortletDisplay().getId(), themeDisplay.getPlid(), PortletRequest.ACTION_PHASE); String redirectUrl = actionUrl.toString().replaceAll("upload-organization-dataset", "organization-datasets"); actionResponse.sendRedirect(redirectUrl); } catch (Exception e) { e.printStackTrace(); } }
From source file:atc.otn.ckan.portlets.Uploader.java
@ProcessAction(name = "uploadDocument") public void uploadDocument(ActionRequest actionRequest, ActionResponse actionResponse) throws IOException, PortletException, PortalException, SystemException { //********************** Variables ********************** ThemeDisplay themeDisplay = (ThemeDisplay) actionRequest.getAttribute(WebKeys.THEME_DISPLAY); User user = themeDisplay.getUser();/*from w ww. j av a2 s . c o m*/ DocumentManager dm = new DocumentManager(); Folder folder; UploadPortletRequest uploadPortletRequest = PortalUtil.getUploadPortletRequest(actionRequest); File file; String fileName; Folder parentFolder; long repositoryId; String mimeType; String fileURL = ""; CKANClient client; JSONObject datasetData = new JSONObject(), resource = new JSONObject(), dTankresource = new JSONObject(); JSONArray resources = new JSONArray(), extras = new JSONArray(), tags = new JSONArray(), dTankresources = new JSONArray(); String[] tagsStr; String datasetURL = ""; String dTankDatasetURL = ""; //get the repository id repositoryId = themeDisplay.getScopeGroupId(); //get the CKAN folder parentFolder = DLAppServiceUtil.getFolder(repositoryId, PARENT_FOLDER_ID, ROOT_FOLDER_NAME); //init CKAN client client = new CKANClient(); long now = new Date().getTime(); //********************** Action ********************** try { // logger.info("uploading document...."); //get the file uploaded file = uploadPortletRequest.getFile("fileInput"); //if file was given after all if (uploadPortletRequest.getFile("fileInput") != null && file.exists()) { fileName = uploadPortletRequest.getFileName("fileInput"); mimeType = uploadPortletRequest.getContentType("fileInput"); //folder = dm.createUserFolder(actionRequest, themeDisplay); fileURL = dm.uploadFile(themeDisplay, actionRequest, parentFolder, file, fileName, mimeType); file.delete(); } else if (ParamUtil.getString(uploadPortletRequest, "link") != null) { fileURL = ParamUtil.getString(uploadPortletRequest, "link"); } tagsStr = ParamUtil.getString(uploadPortletRequest, "tags").split(","); logger.info(ParamUtil.getString(uploadPortletRequest, "tags")); //create json objects as ckan requires them resource.put("url", fileURL); /* Give the resource the same name as the package */ resource.put("name", ParamUtil.getString(uploadPortletRequest, "dstitle")); //resource.put("name", ParamUtil.getString(uploadPortletRequest,"dname")); //resource.put("description", ParamUtil.getString(uploadPortletRequest,"description")); resource.put("format", ParamUtil.getString(uploadPortletRequest, "format")); resources.put(resource); /* Don't upload to CKAN xlxs,xls and csv files */ if (!resource.getString("format").equals("XLSX") && !resource.getString("format").equals("XLS") && !resource.getString("format").equals("CSV")) { for (String tag : tagsStr) { if (!tag.isEmpty()) { tags.put(new JSONObject().put("name", tag)); } } //convert title of dataset to ascii characters for the url to be valid String stringName = ParamUtil.getString(uploadPortletRequest, "dstitle").toLowerCase().replace(" ", "-"); String nameForUrl = java.net.URLEncoder.encode(stringName.toString(), "ascii").replace("%", "-") .toLowerCase(); datasetData.put("title", ParamUtil.getString(uploadPortletRequest, "dstitle")); datasetData.put("name", nameForUrl + now); datasetData.put("owner_org", user.getUserId() + "_org"); datasetData.put("notes", ParamUtil.getString(uploadPortletRequest, "notes")); datasetData.put("url", ParamUtil.getString(uploadPortletRequest, "source")); datasetData.put("version", ParamUtil.getString(uploadPortletRequest, "version")); datasetData.put("author", ParamUtil.getString(uploadPortletRequest, "author")); datasetData.put("license_id", ParamUtil.getString(uploadPortletRequest, "license")); datasetData.put("resources", resources); if (tags.length() > 0) { datasetData.put("tags", tags); } //Store dataset in CKAN datasetURL = client.addUserDataset(user.getUserId(), datasetData); if (!datasetURL.startsWith("http")) { actionRequest.setAttribute("ckanerror", datasetURL); SessionErrors.add(actionRequest, "ckanerror"); } else { SessionMessages.add(actionRequest, "ckansuccess"); System.out.println("uploaded to CKAN " + datasetURL); } } // End CKAN UPload else {// Upload to Datatank if (!fileURL.equals("")) { JSONObject dtankData = new JSONObject(); /*Remove everything after the .xls*/ int ext = 0; if ((ext = fileURL.indexOf(".xls/")) > 0) { fileURL = fileURL.substring(0, ext + 4); } else if ((ext = fileURL.indexOf(".xlsx/")) > 0) { fileURL = fileURL.substring(0, ext + 5); } else if ((ext = fileURL.indexOf(".csv")) > 0) { fileURL = fileURL.substring(0, ext + 4); } System.out.println("Datatank resource url: " + fileURL); String dTankformat = ParamUtil.getString(uploadPortletRequest, "format").toLowerCase(); if (dTankformat.equals("xlsx")) { dTankformat = "xls"; } dtankData.put("description", ParamUtil.getString(uploadPortletRequest, "notes")); dtankData.put("uri", fileURL); dtankData.put("type", dTankformat); dtankData.put("title", ParamUtil.getString(uploadPortletRequest, "dstitle")); dTankDatasetURL = client.addToDataTank(dtankData, dTankformat, ParamUtil.getString(uploadPortletRequest, "dstitle").toLowerCase().replace(" ", "_") + now); if (dTankDatasetURL.startsWith("http:")) { logger.info("uploaded to Datatank: " + dTankDatasetURL); if (client.getDatatankTransform(dTankDatasetURL)) { /*Now store the file back in CKAN*/ dTankresource.put("url", dTankDatasetURL + ".geojson"); /* Give the resource the same name as the package */ dTankresource.put("name", ParamUtil.getString(uploadPortletRequest, "dstitle")); //resource.put("name", ParamUtil.getString(uploadPortletRequest,"dname")); //resource.put("description", ParamUtil.getString(uploadPortletRequest,"description")); dTankresource.put("format", "geojson"); dTankresources.put(dTankresource); for (String tag : tagsStr) { if (!tag.isEmpty()) { tags.put(new JSONObject().put("name", tag)); } } datasetData.put("title", ParamUtil.getString(uploadPortletRequest, "dstitle")); datasetData.put("name", ParamUtil.getString(uploadPortletRequest, "dstitle") .toLowerCase().replace(" ", "-") + now); datasetData.put("owner_org", user.getUserId() + "_org"); datasetData.put("notes", ParamUtil.getString(uploadPortletRequest, "notes")); datasetData.put("url", ParamUtil.getString(uploadPortletRequest, "source")); datasetData.put("version", ParamUtil.getString(uploadPortletRequest, "version")); datasetData.put("author", ParamUtil.getString(uploadPortletRequest, "author")); datasetData.put("license_id", ParamUtil.getString(uploadPortletRequest, "license")); //if uploaded file format is xls or csv if (ParamUtil.getString(uploadPortletRequest, "format").toLowerCase().equals("csv") || ParamUtil.getString(uploadPortletRequest, "format").toLowerCase() .equals("xls") || ParamUtil.getString(uploadPortletRequest, "format").toLowerCase() .equals("xlsx")) { client = new CKANClient(); //get the bbox value from geojson coming from Datatank extras = client.getExtent(dTankDatasetURL); //prepare the jsonArray from service to insert it as a custom field in CKAN String extrStr = extras.toString().replaceAll("[\\[\\]]", ""); List<HashMap<String, String>> extraDictionaries = new ArrayList<HashMap<String, String>>(); HashMap<String, String> extraDictionary = new HashMap<String, String>(); extraDictionary.put("value", extrStr); extraDictionary.put("key", "extent"); extraDictionaries.add(extraDictionary); datasetData.put("extras", extraDictionaries); } datasetData.put("resources", dTankresources); if (tags.length() > 0) { datasetData.put("tags", tags); } //Store dataset in CKAN datasetURL = client.addUserDataset(user.getUserId(), datasetData); if (!datasetURL.startsWith("http")) { actionRequest.setAttribute("ckanerror", datasetURL); SessionErrors.add(actionRequest, "ckanerror"); } //actionRequest.setAttribute("dTanksuccess", dTankDatasetURL +".geojson"); actionRequest.setAttribute("dTanksuccess", "Your dataset is succefully transformed into geojson.<br /> Go to <a href='/my-datasets'>My Datasets</a> to view it!"); SessionMessages.add(actionRequest, "dTanksuccess"); logger.info("Dtank transofrmed succesfully stored in CKAN: " + datasetURL); } else { actionRequest.setAttribute("dTankerror", "Your file could not be transformed into geojson format.<br /> Please check if it has column headers and if the records contain coordinates. For excel files, the system will try to transform data found in the first sheet which should be named 'sheet1'"); SessionErrors.add(actionRequest, "dTankerror"); } } else { actionRequest.setAttribute("dTankerror", "Your file could not be transformed into geojson format"); SessionErrors.add(actionRequest, "dTankerror"); } } } } catch (Exception e) { e.printStackTrace(); } }
From source file:au.com.permeance.liferay.portlet.documentlibrary.action.DownloadFolderZipAction.java
License:Open Source License
protected void downloadFolder(ResourceRequest resourceRequest, ResourceResponse resourceResponse) throws Exception { ThemeDisplay themeDisplay = (ThemeDisplay) resourceRequest.getAttribute(WebKeys.THEME_DISPLAY); long groupId = themeDisplay.getScopeGroupId(); long repositoryId = ParamUtil.getLong(resourceRequest, "repositoryId"); long folderId = ParamUtil.getLong(resourceRequest, "folderId"); Folder folder = DLAppServiceUtil.getFolder(folderId); ServiceContext serviceContext = ServiceContextFactory.getInstance(Folder.class.getName(), resourceRequest); PermissionChecker permissionChecker = PermissionThreadLocal.getPermissionChecker(); if (!folder.containsPermission(permissionChecker, ActionKeys.VIEW)) { throw new PrincipalException(); }/* w w w . j ava 2s. c om*/ File tempZipFile = null; try { tempZipFile = createTempZipFile(); DLFolderExportZipServiceUtil.exportFolderToZipFile(groupId, repositoryId, folderId, serviceContext, tempZipFile); String downloadZipFileName = folder.getName() + ZIP_FILE_EXT; sendZipFile(resourceRequest, resourceResponse, tempZipFile, downloadZipFileName); } catch (Exception e) { String msg = "Error downloading folder " + folderId + " from repository " + repositoryId + " : " + e.getMessage(); s_log.error(msg, e); throw new PortalException(msg, e); } finally { safeDeleteFile(tempZipFile); tempZipFile = null; } }
From source file:au.com.permeance.liferay.portlet.documentlibrary.action.FolderInfoAction.java
License:Open Source License
protected DLFolderInfo buildFolderInfo(RenderRequest renderRequest, RenderResponse renderResponse) throws Exception { ThemeDisplay themeDisplay = (ThemeDisplay) renderRequest.getAttribute(WebKeys.THEME_DISPLAY); long groupId = ParamUtil.getLong(renderRequest, "groupId"); long scopeGroupId = themeDisplay.getScopeGroupId(); String scopeGroupName = themeDisplay.getScopeGroupName(); long repositoryId = ParamUtil.getLong(renderRequest, "repositoryId"); long folderId = ParamUtil.getLong(renderRequest, "folderId"); Folder folder = DLAppServiceUtil.getFolder(folderId); ServiceContext serviceContext = ServiceContextFactory.getInstance(Folder.class.getName(), renderRequest); if (s_log.isDebugEnabled()) { s_log.debug("building folder info ..."); ParamUtil.print(renderRequest);/*from ww w. j a va2s .co m*/ s_log.debug("groupId: " + groupId); s_log.debug("scopeGroupId: " + scopeGroupId); s_log.debug("scopeGroupName: " + scopeGroupName); s_log.debug("repositoryId: " + repositoryId); s_log.debug("folderId: " + folderId); } PermissionChecker permissionChecker = PermissionThreadLocal.getPermissionChecker(); if (!folder.containsPermission(permissionChecker, ActionKeys.VIEW)) { throw new PrincipalException(); } DLFolderInfo folderInfo = new DLFolderInfo(); try { User user = UserServiceUtil.getUserById(folder.getUserId()); DLFolderUsage folderUsage = DLFolderUsageServiceUtil.calculateFolderUsage(repositoryId, folderId, serviceContext); folderInfo.setFolderId(folderId); folderInfo.setFolderName(folder.getName()); folderInfo.setFolderCreateDate(folder.getCreateDate()); folderInfo.setFolderDescription(folder.getDescription()); folderInfo.setFolderPath(buildPath(folder)); folderInfo.setFolderUsage(folderUsage); folderInfo.setFolderUserId(folder.getUserId()); if (user != null) { folderInfo.setFolderUserFullName(user.getFullName()); } folderInfo.setRepositoryId(repositoryId); Repository repository = null; if (repositoryId != scopeGroupId) { repository = RepositoryServiceUtil.getRepository(repositoryId); if (repository != null) { folderInfo.setRepositoryName(repository.getName()); folderInfo.setRepositoryClassName(repository.getClassName()); folderInfo.setRepositoryDescription(repository.getDescription()); } } } catch (Exception e) { String msg = "Error building information for folder " + folderId + " in repository " + repositoryId + " : " + e.getMessage(); s_log.error(msg, e); throw new PortalException(msg, e); } finally { // placeholder } return folderInfo; }
From source file:au.com.permeance.liferay.portlets.workflow.WebContentWorkflowPortlet.java
License:Open Source License
@Override public void processAction(final ActionRequest actionRequest, final ActionResponse actionResponse) throws IOException, PortletException { final long groupId = ParamUtil.getLong(actionRequest, "groupId"); final ThemeDisplay themeDisplay = (ThemeDisplay) actionRequest.getAttribute(WebKeys.THEME_DISPLAY); final Enumeration<String> paramNames = actionRequest.getParameterNames(); boolean success = true; while (paramNames.hasMoreElements()) { final String name = paramNames.nextElement(); if (!name.startsWith(_PREFIX)) { continue; }/*from www. j a va2 s .co m*/ final long structureId = GetterUtil.getLong(name.substring(_PREFIX.length(), name.length()), -1l); if (structureId >= 0) { String workflowDefinition = ParamUtil.getString(actionRequest, name); try { WorkflowDefinitionLinkLocalServiceUtil.updateWorkflowDefinitionLink(themeDisplay.getUserId(), themeDisplay.getCompanyId(), groupId, JournalArticle.class.getName(), structureId, 0, workflowDefinition); } catch (SystemException e) { _log.warn("Error processing action: " + e.getMessage(), e); SessionErrors.add(actionRequest, e.toString()); success = false; } catch (PortalException e) { _log.warn("Error processing action: " + e.getMessage(), e); SessionErrors.add(actionRequest, e.toString()); success = false; } } } if (success) { SessionMessages.add(actionRequest, "success"); } sendRedirect(actionRequest, actionResponse); }
From source file:au.com.permeance.utility.propertiesviewer.portlets.PropertiesViewerPortlet.java
License:Open Source License
@Override public void serveResource(final ResourceRequest resourceRequest, final ResourceResponse resourceResponse) throws IOException, PortletException { try {// w ww . ja va 2s . c o m ThemeDisplay themeDisplay = (ThemeDisplay) resourceRequest.getAttribute(WebKeys.THEME_DISPLAY); PortletDisplay portletDisplay = themeDisplay.getPortletDisplay(); String portletId = portletDisplay.getId(); PermissionChecker checker = PermissionThreadLocal.getPermissionChecker(); if (checker != null && (checker.isCompanyAdmin() || checker.isOmniadmin() || PortletPermissionUtil.contains(checker, portletId, ActionKeys.VIEW))) { UploadPortletRequest uploadRequest = PortalUtil.getUploadPortletRequest(resourceRequest); String exportType = GetterUtil .getString(uploadRequest.getParameter(PropertiesViewerConstants.PARAM_EXPORTTYPE), "all"); String exportSection = GetterUtil.getString( uploadRequest.getParameter(PropertiesViewerConstants.PARAM_EXPORTSECTION), "system"); String term = GetterUtil.getString( uploadRequest.getParameter(PropertiesViewerConstants.PARAM_SEARCH), StringPool.BLANK); boolean passwordSafe = GetterUtil.getBoolean( uploadRequest.getParameter(PropertiesViewerConstants.PARAM_PASSWORDSAFE), false); String filename = PropertiesViewerConstants.SECTION_SYSTEM; Properties toOutput = PropertiesSearchUtil.createSortedProperties(); if (PropertiesViewerConstants.SECTION_SYSTEM.equals(exportSection)) { if (PropertiesViewerConstants.TYPE_ALL.equals(exportType) || term.length() == 0) { toOutput = PropertiesSearchUtil.searchSystemProperties(toOutput, StringPool.BLANK); } else { // search filename += PropertiesViewerConstants.FILE_SEARCH; toOutput = PropertiesSearchUtil.searchSystemProperties(toOutput, term); } if (passwordSafe) { filterPasswordSafe(toOutput); filename += PropertiesViewerConstants.FILE_PASSWORDSAFE; } } else if (PropertiesViewerConstants.SECTION_PORTAL.equals(exportSection)) { // portal filename = PropertiesViewerConstants.SECTION_PORTAL; if (PropertiesViewerConstants.TYPE_ALL.equals(exportType) || term.length() == 0) { toOutput = PropertiesSearchUtil.searchPortalProperties(toOutput, StringPool.BLANK); } else { // search filename += PropertiesViewerConstants.FILE_SEARCH; toOutput = PropertiesSearchUtil.searchPortalProperties(toOutput, term); } if (passwordSafe) { filterPasswordSafe(toOutput); filename += PropertiesViewerConstants.FILE_PASSWORDSAFE; } } else if (PropertiesViewerConstants.SECTION_UPLOAD.equals(exportSection)) { // uploaded filename = PropertiesViewerConstants.FILE_FORMATTED; File uploaded = uploadRequest.getFile(PropertiesViewerConstants.PARAM_FILE); if (uploaded != null) { FileInputStream fis = new FileInputStream(uploaded); try { toOutput.load(fis); } finally { try { if (fis != null) { fis.close(); } } catch (Exception e) { } } } } else { throw new PortletException(PropertiesViewerConstants.EXCEPTION_INVALID_OPERATION); } resourceResponse.setContentType(PropertiesViewerConstants.PROPERTIES_MIME_TYPE); resourceResponse.addProperty(HttpHeaders.CACHE_CONTROL, PropertiesViewerConstants.CACHE_HEADER_VALUE); resourceResponse.addProperty(HttpHeaders.CONTENT_DISPOSITION, "attachment; filename=" + filename + ".properties"); toOutput.store(resourceResponse.getPortletOutputStream(), StringPool.BLANK); } } catch (IOException e) { throw e; } catch (PortletException e) { throw e; } catch (Exception e) { throw new PortletException(e); } }
From source file:blade.document.action.configurationicon.BladeActionConfigurationIcon.java
License:Apache License
public String getURL(PortletRequest portletRequest, PortletResponse portletResponse) { HttpServletRequest servletRequest = _portal.getHttpServletRequest(portletRequest); ThemeDisplay themeDisplay = (ThemeDisplay) portletRequest.getAttribute(WebKeys.THEME_DISPLAY); FileEntry fileEntry = _retrieveFile(servletRequest); PortletURL portletURL = PortletURLFactoryUtil.create(servletRequest, "blade_document_action_portlet_BladeDocumentActionPortlet", themeDisplay.getPlid(), PortletRequest.RENDER_PHASE); String fileName = fileEntry.getFileName(); String mimeType = fileEntry.getMimeType(); String version = fileEntry.getVersion(); String createdDate = fileEntry.getCreateDate().toString(); String createdUserName = fileEntry.getUserName(); String statusLabel = null;//from w w w. j a v a2 s .c om try { statusLabel = WorkflowConstants.getStatusLabel(fileEntry.getLatestFileVersion().getStatus()); } catch (PortalException pe) { _log.error(pe); } portletURL.setParameter("fileName", fileName); portletURL.setParameter("mimeType", mimeType); portletURL.setParameter("version", version); portletURL.setParameter("statusLabel", statusLabel); portletURL.setParameter("createdDate", createdDate); portletURL.setParameter("createdUserName", createdUserName); try { portletURL.setWindowState(LiferayWindowState.POP_UP); } catch (WindowStateException wse) { _log.error(wse); } StringBuilder stringBuilder = new StringBuilder(); stringBuilder.append("javascript:Liferay.Util.openWindow("); stringBuilder.append("{dialog: {cache: false,width:800,modal: true},"); stringBuilder.append("title: 'basic information',id: "); stringBuilder.append("'testPopupIdUnique',uri: '"); stringBuilder.append(portletURL.toString() + "'});"); return stringBuilder.toString(); }
From source file:blade.document.action.displaycontext.BladeActionDisplayContext.java
License:Apache License
public BladeActionDisplayContext(UUID uuid, DLViewFileVersionDisplayContext parentDLDisplayContext, HttpServletRequest request, HttpServletResponse response, FileVersion fileVersion) { super(uuid, parentDLDisplayContext, request, response, fileVersion); _themeDisplay = (ThemeDisplay) request.getAttribute(WebKeys.THEME_DISPLAY); }
From source file:blade.portlet.BladePortletAction.java
License:Open Source License
@Override public void processAction(StrutsPortletAction originalStrutsPortletAction, PortletConfig portletConfig, ActionRequest actionRequest, ActionResponse actionResponse) throws Exception { _log.debug("BladePortletAction - procesAction"); ThemeDisplay themeDisplay = (ThemeDisplay) actionRequest.getAttribute(WebKeys.THEME_DISPLAY); User loggedinUser = themeDisplay.getUser(); if (loggedinUser != null) { _log.info("Logging in with user:[" + loggedinUser.getFirstName() + " " + loggedinUser.getLastName() + "]"); _log.info("Logged in user: Current Greetings[" + loggedinUser.getGreeting() + "]"); }// w w w .ja v a 2 s.co m originalStrutsPortletAction.processAction(originalStrutsPortletAction, portletConfig, actionRequest, actionResponse); }