public void deleteLayout(ActionRequest actionRequest, ActionResponse actionResponse) throws Exception { ThemeDisplay themeDisplay = (ThemeDisplay) actionRequest.getAttribute(WebKeys.THEME_DISPLAY); String redirect = ParamUtil.getString(actionRequest, "redirect"); long selPlid = ParamUtil.getLong(actionRequest, "selPlid"); if (selPlid <= 0) { long groupId = ParamUtil.getLong(actionRequest, "groupId"); boolean privateLayout = ParamUtil.getBoolean(actionRequest, "privateLayout"); long layoutId = ParamUtil.getLong(actionRequest, "layoutId"); Layout layout = layoutLocalService.getLayout(groupId, privateLayout, layoutId); selPlid = layout.getPlid(); } Object[] returnValue = SitesUtil.deleteLayout(actionRequest, actionResponse); if (selPlid == themeDisplay.getRefererPlid()) { long newRefererPlid = (Long) returnValue[2]; redirect = HttpUtil.setParameter(redirect, "refererPlid", newRefererPlid); redirect = HttpUtil.setParameter(redirect, actionResponse.getNamespace() + "selPlid", 0); } actionRequest.setAttribute(WebKeys.REDIRECT, redirect); }
public void updateAttachments(ActionRequest actionRequest, ActionResponse actionResponse) throws Exception { String portletId = PortalUtil.getPortletId(actionRequest); long resourcePrimKey = ParamUtil.getLong(actionRequest, "resourcePrimKey"); String dirName = ParamUtil.getString(actionRequest, "dirName"); ServiceContext serviceContext = ServiceContextFactory.getInstance(KBArticle.class.getName(), actionRequest); dirName = KBArticleServiceUtil.updateAttachments(portletId, resourcePrimKey, dirName, serviceContext); String redirect = ParamUtil.getString(actionRequest, "redirect"); redirect = HttpUtil.setParameter(redirect, actionResponse.getNamespace() + "dirName", dirName); actionRequest.setAttribute(WebKeys.REDIRECT, redirect); }
public void updateKBArticle(ActionRequest actionRequest, ActionResponse actionResponse) throws Exception { ThemeDisplay themeDisplay = (ThemeDisplay) actionRequest.getAttribute(WebKeys.THEME_DISPLAY); String portletId = PortalUtil.getPortletId(actionRequest); String cmd = ParamUtil.getString(actionRequest, Constants.CMD); long resourcePrimKey = ParamUtil.getLong(actionRequest, "resourcePrimKey"); long parentResourcePrimKey = ParamUtil.getLong(actionRequest, "parentResourcePrimKey"); String title = ParamUtil.getString(actionRequest, "title"); String content = ParamUtil.getString(actionRequest, "content"); String description = ParamUtil.getString(actionRequest, "description"); String[] sections = actionRequest.getParameterValues("sections"); String dirName = ParamUtil.getString(actionRequest, "dirName"); int workflowAction = ParamUtil.getInteger(actionRequest, "workflowAction"); KBArticle kbArticle = null; ServiceContext serviceContext = ServiceContextFactory.getInstance(KBArticle.class.getName(), actionRequest); if (cmd.equals(Constants.ADD)) { kbArticle = KBArticleServiceUtil.addKBArticle( portletId, parentResourcePrimKey, title, content, description, sections, dirName, serviceContext); } else if (cmd.equals(Constants.UPDATE)) { kbArticle = KBArticleServiceUtil.updateKBArticle( resourcePrimKey, title, content, description, sections, dirName, serviceContext); } if (!cmd.equals(Constants.ADD) && !cmd.equals(Constants.UPDATE)) { return; } if (workflowAction == WorkflowConstants.ACTION_SAVE_DRAFT) { String namespace = actionResponse.getNamespace(); String redirect = getRedirect(actionRequest, actionResponse); String editURL = PortalUtil.getLayoutFullURL(themeDisplay); editURL = HttpUtil.setParameter(editURL, "p_p_id", PortletKeys.KNOWLEDGE_BASE_ADMIN); editURL = HttpUtil.setParameter(editURL, namespace + "mvcPath", templatePath + "edit_article.jsp"); editURL = HttpUtil.setParameter(editURL, namespace + "redirect", redirect); editURL = HttpUtil.setParameter( editURL, namespace + "resourcePrimKey", kbArticle.getResourcePrimKey()); actionRequest.setAttribute(WebKeys.REDIRECT, editURL); } }
@Override public void processAction( ActionMapping actionMapping, ActionForm actionForm, PortletConfig portletConfig, ActionRequest actionRequest, ActionResponse actionResponse) throws Exception { String cmd = ParamUtil.getString(actionRequest, Constants.CMD); try { Organization organization = null; if (cmd.equals(Constants.ADD) || cmd.equals(Constants.UPDATE)) { organization = updateOrganization(actionRequest); } else if (cmd.equals(Constants.DELETE)) { deleteOrganizations(actionRequest); } String redirect = ParamUtil.getString(actionRequest, "redirect"); if (organization != null) { redirect = HttpUtil.setParameter( redirect, actionResponse.getNamespace() + "organizationId", organization.getOrganizationId()); } sendRedirect(actionRequest, actionResponse, redirect); } catch (Exception e) { if (e instanceof NoSuchOrganizationException || e instanceof PrincipalException) { SessionErrors.add(actionRequest, e.getClass()); setForward(actionRequest, "portlet.users_admin.error"); } else if (e instanceof AddressCityException || e instanceof AddressStreetException || e instanceof AddressZipException || e instanceof DuplicateOrganizationException || e instanceof EmailAddressException || e instanceof NoSuchCountryException || e instanceof NoSuchListTypeException || e instanceof NoSuchRegionException || e instanceof OrganizationNameException || e instanceof OrganizationParentException || e instanceof PhoneNumberException || e instanceof RequiredOrganizationException || e instanceof WebsiteURLException) { if (e instanceof NoSuchListTypeException) { NoSuchListTypeException nslte = (NoSuchListTypeException) e; SessionErrors.add(actionRequest, e.getClass().getName() + nslte.getType()); } else { SessionErrors.add(actionRequest, e.getClass()); } if (e instanceof RequiredOrganizationException) { String redirect = PortalUtil.escapeRedirect(ParamUtil.getString(actionRequest, "redirect")); long organizationId = ParamUtil.getLong(actionRequest, "organizationId"); if (organizationId > 0) { redirect = HttpUtil.setParameter( redirect, actionResponse.getNamespace() + "organizationId", organizationId); } if (Validator.isNotNull(redirect)) { actionResponse.sendRedirect(redirect); } } } else { throw e; } } }