/** TODO: Remove. This should extend from EditFileEntryAction once it is modularized. */ protected void addMultipleFileEntries( PortletConfig portletConfig, ActionRequest actionRequest, ActionResponse actionResponse) throws Exception { List<KeyValuePair> validFileNameKVPs = new ArrayList<>(); List<KeyValuePair> invalidFileNameKVPs = new ArrayList<>(); String[] selectedFileNames = ParamUtil.getParameterValues(actionRequest, "selectedFileName", new String[0], false); for (String selectedFileName : selectedFileNames) { addMultipleFileEntries( portletConfig, actionRequest, actionResponse, selectedFileName, validFileNameKVPs, invalidFileNameKVPs); } JSONArray jsonArray = JSONFactoryUtil.createJSONArray(); for (KeyValuePair validFileNameKVP : validFileNameKVPs) { String fileName = validFileNameKVP.getKey(); String originalFileName = validFileNameKVP.getValue(); JSONObject jsonObject = JSONFactoryUtil.createJSONObject(); jsonObject.put("added", Boolean.TRUE); jsonObject.put("fileName", fileName); jsonObject.put("originalFileName", originalFileName); jsonArray.put(jsonObject); } for (KeyValuePair invalidFileNameKVP : invalidFileNameKVPs) { String fileName = invalidFileNameKVP.getKey(); String errorMessage = invalidFileNameKVP.getValue(); JSONObject jsonObject = JSONFactoryUtil.createJSONObject(); jsonObject.put("added", Boolean.FALSE); jsonObject.put("errorMessage", errorMessage); jsonObject.put("fileName", fileName); jsonObject.put("originalFileName", fileName); jsonArray.put(jsonObject); } JSONPortletResponseUtil.writeJSON(actionRequest, actionResponse, jsonArray); }
private void _buildPortletBreadcrumb(HttpServletRequest request, StringBundler sb) throws Exception { List<KeyValuePair> portletBreadcrumbList = PortalUtil.getPortletBreadcrumbList(request); if (portletBreadcrumbList == null) { return; } for (KeyValuePair kvp : portletBreadcrumbList) { String breadcrumbText = kvp.getKey(); String breadcrumbURL = kvp.getValue(); sb.append("<li><span>"); if (Validator.isNotNull(breadcrumbURL)) { sb.append("<a href=\""); sb.append(HtmlUtil.escape(breadcrumbURL)); sb.append("\">"); } sb.append(HtmlUtil.escape(breadcrumbText)); if (Validator.isNotNull(breadcrumbURL)) { sb.append("</a>"); } sb.append("</span></li>"); } }
public void importPermissions(String resourceName, long resourcePK, long newResourcePK) throws PortalException, SystemException { if (!MapUtil.getBoolean(_parameterMap, PortletDataHandlerKeys.PERMISSIONS)) { return; } List<KeyValuePair> permissions = _permissionsMap.get(getPrimaryKeyString(resourceName, resourcePK)); if (permissions == null) { return; } Map<Long, String[]> roleIdsToActionIds = new HashMap<Long, String[]>(); for (KeyValuePair permission : permissions) { String roleName = permission.getKey(); Role role = null; Team team = null; if (roleName.startsWith(PermissionExporter.ROLE_TEAM_PREFIX)) { roleName = roleName.substring(PermissionExporter.ROLE_TEAM_PREFIX.length()); try { team = TeamLocalServiceUtil.getTeam(_groupId, roleName); } catch (NoSuchTeamException nste) { if (_log.isWarnEnabled()) { _log.warn("Team " + roleName + " does not exist"); } continue; } } try { if (team != null) { role = RoleLocalServiceUtil.getTeamRole(_companyId, team.getTeamId()); } else { role = RoleLocalServiceUtil.getRole(_companyId, roleName); } } catch (NoSuchRoleException nsre) { if (_log.isWarnEnabled()) { _log.warn("Role " + roleName + " does not exist"); } continue; } String[] actionIds = StringUtil.split(permission.getValue()); roleIdsToActionIds.put(role.getRoleId(), actionIds); } if (roleIdsToActionIds.isEmpty()) { return; } if (ResourceBlockLocalServiceUtil.isSupported(resourceName)) { ResourceBlockLocalServiceUtil.setIndividualScopePermissions( _companyId, _groupId, resourceName, newResourcePK, roleIdsToActionIds); } else { ResourcePermissionLocalServiceUtil.setResourcePermissions( _companyId, resourceName, ResourceConstants.SCOPE_INDIVIDUAL, String.valueOf(newResourcePK), roleIdsToActionIds); } }
public InputSource resolveEntity(String publicId, String systemId) { ClassLoader classLoader = getClass().getClassLoader(); if (_log.isDebugEnabled()) { _log.debug("Resolving entity " + publicId + " " + systemId); } if (publicId != null) { for (int i = 0; i < _PUBLIC_IDS.length; i++) { KeyValuePair kvp = _PUBLIC_IDS[i]; if (publicId.equals(kvp.getKey())) { InputStream is = classLoader.getResourceAsStream(_DEFINITIONS_PATH + kvp.getValue()); if (_log.isDebugEnabled()) { _log.debug("Entity found for public id " + systemId); } return new InputSource(is); } } } else if (systemId != null) { for (int i = 0; i < _SYSTEM_IDS.length; i++) { KeyValuePair kvp = _SYSTEM_IDS[i]; if (systemId.equals(kvp.getKey())) { InputStream is = classLoader.getResourceAsStream(_DEFINITIONS_PATH + kvp.getValue()); if (_log.isDebugEnabled()) { _log.debug("Entity found for system id " + systemId); } InputSource inputSource = new InputSource(is); inputSource.setSystemId(kvp.getKey()); return inputSource; } } if (!systemId.endsWith(".dtd") && !systemId.endsWith(".xsd")) { throw new XNIException("Invalid system id " + systemId); } if (!systemId.startsWith(Http.HTTP_WITH_SLASH) && !systemId.startsWith(Http.HTTPS_WITH_SLASH)) { InputStream inputStream = classLoader.getResourceAsStream(systemId); if (inputStream != null) { InputSource inputSource = new InputSource(inputStream); inputSource.setSystemId(systemId); return inputSource; } else { throw new XNIException("Invalid system id " + systemId); } } } if (_log.isDebugEnabled()) { _log.debug("No entity found for " + publicId + " " + systemId); } return null; }