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:com.dushyant.sample.service.SampleGwtRpcServiceImpl.java
License:Apache License
@Override public ServiceOutput doSomeStuff(ServiceInput input) throws SampleException { LOG.debug("RPC service invoked"); ServiceOutput serviceOutput = null;/*from w w w . j a v a 2s .com*/ try { // Here in the GWT RPC method we can now access PortletRequest, PortletSession etc and get whatever we can // from those objects as follows. // Lets get the current ThemeDisplay object from portlet request ThemeDisplay themeDisplay = (ThemeDisplay) getPortletRequest().getAttribute(WebKeys.THEME_DISPLAY); // Let's get current group id from the theme display (i.e., from current community or organization) Long groupId = themeDisplay.getScopeGroupId(); String groupName = themeDisplay.getScopeGroup().getDescriptiveName(); // Now lets get portlet session id String sessionId = getPortletSession().getId(); serviceOutput = new ServiceOutput("Hello " + input.getName() + ". You are currently accessing group = " + groupName + " with id = " + groupId + " and your portlet sessionId = " + sessionId, input); } catch (Throwable throwable) { throw new SampleException("Could not do \"doSomeStuff\"", throwable); } return serviceOutput; }
From source file:com.evolveum.liferay.usercreatehook.CustomCreateAccountAction.java
License:Apache License
@Override public void processAction(StrutsPortletAction originalStrutsPortletAction, PortletConfig portletConfig, ActionRequest actionRequest, ActionResponse actionResponse) throws Exception { LOG.debug("Before call of original action"); ThemeDisplay themeDisplay = (ThemeDisplay) actionRequest.getAttribute(WebKeys.THEME_DISPLAY); Company company = themeDisplay.getCompany(); // reserved screennames validation part START String screenName = ParamUtil.getString(actionRequest, "screenName"); Set<String> reservedScreennamesSet = new HashSet<String>(); List<String> reservedScreennames = WSConfig.getReservedScreennames(); if (reservedScreennames != null) { reservedScreennamesSet.addAll(reservedScreennames); }/* www . j a va 2 s.co m*/ if (screenName != null && reservedScreennamesSet.contains(screenName.trim())) { SessionErrors.add(actionRequest.getPortletSession(), ReservedUserScreenNameException.class.getName()); return; } // reserved screennames validation part END // custom email validation part START long parentOrganizationId = ParamUtil.getLong(actionRequest, "parentOrganizationId"); long subOrganizationId = ParamUtil.getLong(actionRequest, "organizationId"); long organizationId = -1; if (parentOrganizationId > 0l || subOrganizationId > 0l) { organizationId = subOrganizationId > 0l ? subOrganizationId : parentOrganizationId; Set<String> permittedDomainsSet = new HashSet<String>(); // get addition email addresses of organization List<EmailAddress> organizationEmailAddresses = EmailAddressLocalServiceUtil .getEmailAddresses(company.getCompanyId(), Organization.class.getName(), organizationId); if (organizationEmailAddresses != null) { for (EmailAddress emailAddress : organizationEmailAddresses) { String domain = EmailUtil.getEmailDomain(emailAddress.getAddress()); permittedDomainsSet.add(domain); } } List<String> allwaysPermittedDomains = WSConfig.getAllwaysPermittedEmailDomains(); if (allwaysPermittedDomains != null) { permittedDomainsSet.addAll(allwaysPermittedDomains); } String emailAddress = ParamUtil.getString(actionRequest, "emailAddress"); String emailDomain = null; if (emailAddress != null) { emailAddress = emailAddress.trim().toLowerCase(); emailDomain = EmailUtil.getEmailDomain(emailAddress); } if (emailDomain == null || !permittedDomainsSet.contains(emailDomain)) { SessionErrors.add(actionRequest.getPortletSession(), "notPermittedEmailDomainError"); return; } } // custom email validation part END originalStrutsPortletAction.processAction(originalStrutsPortletAction, portletConfig, actionRequest, actionResponse); LOG.debug("After call of original action"); String cmd = ParamUtil.getString(actionRequest, Constants.CMD); if (cmd.equals(Constants.ADD)) { // XXX [mso] hack to get redirect location with created user's login in pattern '...&_58_login=<user-login>' LOG.debug("Trying to get redirect location..."); Class<?> actionResponseImplClass = actionResponse.getClass(); // com.liferay.portlet.ActionResponseImpl Class<?> stateAwareResponseImplClass = actionResponseImplClass.getSuperclass(); // com.liferay.portlet.StateAwareResponseImpl Method redirectLocationMethod = stateAwareResponseImplClass .getDeclaredMethod(METHOD_GET_REDIRECT_LOCATION); String redirectLocation = (String) redirectLocationMethod.invoke(actionResponse, (Object[]) null); LOG.debug("Redirect location: '" + redirectLocation + "'"); if (!StringUtils.isBlank(redirectLocation)) { // user was created // redirect location example for login 'a3': // 'http://localhost:8080/web/guest/what-we-do?p_p_id=58&p_p_lifecycle=0&p_p_state=maximized&p_p_mode=view&saveLastPath=0&_58_struts_action=%2Flogin%2Flogin&_58_login=a3' // 1) get his login // 2) update his organizations if any // 1) LOG.debug("Trying to get new user's login from redirect location..."); String login = getLoginFromRedirectUrl(redirectLocation); LOG.debug("User's login: '" + login + "'"); if (!StringUtils.isBlank(login)) { User user = loadUser(company, login); if (user != null) { // 2) if (organizationId > 0l) { LOG.info("Setting organization/suborganization: '" + organizationId + "' to user: '" + login + "'"); UserLocalServiceUtil.addOrganizationUsers(organizationId, new long[] { user.getUserId() }); LOG.debug("Organization/suborganization set successfully"); } } else { LOG.error("Unable to load user for login '" + login + "'"); } } else { LOG.error("Unable to get login from redirect location: '" + redirectLocation + "'"); } } } }
From source file:com.ext.portlet.plans.PlanLocalServiceHelper.java
License:Open Source License
/** * Returns user settings for plans portlet (columns configuration). * Method first checks if there is object with user settings in current * session, if it is, this object is returned. If it isn't, new object * is created with default data./*from w ww . j av a 2s .co m*/ * * @param request render request * @return returns columns configuration * @throws PortalException passed up in case of framework error * @throws SystemException passed up in case of framework error */ public static PlansUserSettings getPlanUserSettings(PortletRequest request, long planTypeId) throws PortalException, SystemException { String settingsParamName = getUserSettingsParamName(planTypeId); PlansUserSettings userSettings = (PlansUserSettings) request.getPortletSession() .getAttribute(settingsParamName); if (userSettings == null) { ThemeDisplay themeDisplay = (ThemeDisplay) request.getAttribute(WebKeys.THEME_DISPLAY); long userId = themeDisplay.getUserId(); User user = UserLocalServiceUtil.getUser(userId); if (!user.isDefaultUser()) { // try { List tmp = PlansUserSettingsLocalServiceUtil.getPlansUserSettingses(0, 9999); //userSettings = PlansUserSettingsLocalServiceUtil.getByUserIdPlanTypeId(userId, planTypeId); userSettings = null; if (userSettings != null) { setPlansFilterPositionsIds(userSettings); } } if (userSettings == null || user.isDefaultUser()) { userSettings = PlansUserSettingsLocalServiceUtil.createPlansUserSettings(0L); userSettings.setPlanTypeId(planTypeId); userSettings.setUserId(userId); userSettings.setFilterEnabled(false); userSettings.setFilterPositionsAll(false); PlanType planType = PlanTypeLocalServiceUtil.getPlanType(planTypeId); for (PlanTypeColumn planTypeColumn : PlanTypeLocalServiceUtil.getColumns(planType)) { PlanColumnSettings settings = PlanColumnSettingsLocalServiceUtil.createPlanColumnSettings(0L); settings.setColumnName(planTypeColumn.getColumnName()); settings.setPlanUserSettingsId(userSettings.getPlanUserSettingsId()); settings.setVisible(planTypeColumn.getVisibleByDefault()); //userSettings.addColumnSettings(settings); } /* for (Columns c:Columns.defaults()) { c.setUserSetting(userSettings, true); }*/ // userSettings.setShowName(true); // userSettings.setShowDate(true); // userSettings.setShowTemperatureChange(true); // userSettings.setShowCO2(true); // userSettings.setShowMitigationCost(true); // userSettings.setShowDamageCost(true); // // userSettings.setShowPositions(true); // userSettings.setShowVotes(true); // userSettings. } request.getPortletSession().setAttribute(settingsParamName, userSettings); } return userSettings; }
From source file:com.ext.portlet.plans.PlanLocalServiceHelper.java
License:Open Source License
/** * Method responsible for storing filters configuration. Configuration is * stored in session also, if user is authorized then configuration is * persisted.//from w ww.j av a 2 s . c om * * @param request render request * @param plansFilter filters configuration that should be stored * @throws PortalException passed up in case of framework error * @throws SystemException passed up in case of framework error */ public static void saveFilter(PortletRequest request, PlansFilter plansFilter) throws SystemException, PortalException { ThemeDisplay themeDisplay = (ThemeDisplay) request.getAttribute(WebKeys.THEME_DISPLAY); long userId = themeDisplay.getUserId(); User user = UserLocalServiceUtil.getUser(userId); if (!user.isDefaultUser()) { storePlansFilterPositionsIds(plansFilter); PlansFilterLocalServiceUtil.updatePlansFilter(plansFilter); } String filterParamName = getFilterParamName(plansFilter.getPlanTypeId()); request.getPortletSession().setAttribute(filterParamName, plansFilter); }
From source file:com.ext.portlet.plans.PlanLocalServiceHelper.java
License:Open Source License
public static void saveFilter(PortletRequest request, PlansUserSettings plansFilter) throws SystemException, PortalException { ThemeDisplay themeDisplay = (ThemeDisplay) request.getAttribute(WebKeys.THEME_DISPLAY); long userId = themeDisplay.getUserId(); User user = UserLocalServiceUtil.getUser(userId); if (!user.isDefaultUser()) { storePlansFilterPositionsIds(plansFilter); PlansUserSettingsLocalServiceUtil.updatePlansUserSettings(plansFilter); }/*from w w w.j a v a2s. com*/ String filterParamName = getFilterParamName(plansFilter.getPlanTypeId()); request.getPortletSession().setAttribute(filterParamName, plansFilter); }
From source file:com.ext.portlet.plans.PlanLocalServiceHelper.java
License:Open Source License
/** * Method adds plan vote to request object. * * @param request request that should be populated with users plan vote * @throws PortalException passed up in case of framework exception * @throws SystemException passed up in case of framework exception *//*from ww w. j a v a 2s.c o m*/ public static void addPlanVote(PortletRequest request) throws PortalException, SystemException { ThemeDisplay themeDisplay = (ThemeDisplay) request.getAttribute(WebKeys.THEME_DISPLAY); long userId = themeDisplay.getUserId(); try { PlanVote planVote = PlanVoteLocalServiceUtil.getPlanVote(new PlanVotePK(userId, 1L)); request.setAttribute(PlanConstants.VOTE, planVote); } catch (NoSuchPlanVoteException e) { // ignore } }
From source file:com.fb.action.EditEntryAction.java
License:Open Source License
protected void addOpenGraphProperties(PortletRequest request, PortletResponse response, BlogsEntry entry) throws PortalException, SystemException { ThemeDisplay themeDisplay = (ThemeDisplay) request.getAttribute(WebKeys.THEME_DISPLAY); Map<String, String> opengraphAttributes = (Map<String, String>) request.getAttribute(OPENGRAPH_ATTRIBUTE); if (opengraphAttributes == null) { opengraphAttributes = new HashMap<String, String>(); request.setAttribute(OPENGRAPH_ATTRIBUTE, opengraphAttributes); }/* www. j a va2 s.c om*/ Map<String, String> twitterAttributes = (Map<String, String>) request.getAttribute(TWITTER_ATTRIBUTE); if (twitterAttributes == null) { twitterAttributes = new HashMap<String, String>(); request.setAttribute(TWITTER_ATTRIBUTE, twitterAttributes); } opengraphAttributes.put("type", "website"); PortletURL portletURL = ((LiferayPortletResponse) response).createRenderURL(); portletURL.setParameter("struts_action", "/blogs/view_entry"); portletURL.setParameter("urlTitle", entry.getUrlTitle()); String url = PortalUtil.getCanonicalURL(portletURL.toString(), themeDisplay, themeDisplay.getLayout()); opengraphAttributes.put("url", url); twitterAttributes.put("url", url); String title = entry.getTitle(); opengraphAttributes.put("title", title); twitterAttributes.put("title", title); String description = entry.getDescription(); if (Validator.isNotNull(description)) { opengraphAttributes.put("description", description); twitterAttributes.put("description", description); } Group group = GroupLocalServiceUtil.getGroup(entry.getGroupId()); opengraphAttributes.put("site_name", group.getDescriptiveName()); opengraphAttributes.put("locale", themeDisplay.getLanguageId()); String smallImage = null; if (entry.isSmallImage()) { smallImage = entry.getEntryImageURL(themeDisplay); } if (Validator.isNotNull(smallImage)) { opengraphAttributes.put("image", smallImage); twitterAttributes.put("image", smallImage); } String twCard = "summary"; if (Validator.isNotNull(smallImage)) { twCard = "photo"; } twitterAttributes.put("card", twCard); /* // TODO: Site Setting for twitter account String twSite = ""; if (Validator.isNotNull(twSite)) { twitterAttributes.put("site", StringPool.AT + twSite); } */ User user = UserLocalServiceUtil.getUser(entry.getUserId()); Contact contact = user.getContact(); if (Validator.isNotNull(contact.getTwitterSn())) { twitterAttributes.put("creator", StringPool.AT + contact.getTwitterSn()); } }
From source file:com.fb.action.FacebookConnectAction.java
License:Open Source License
@Override public String execute(StrutsAction originalStrutsAction, HttpServletRequest request, HttpServletResponse response) throws Exception { ThemeDisplay themeDisplay = (ThemeDisplay) request.getAttribute(WebKeys.THEME_DISPLAY); if (!FacebookConnectUtil.isEnabled(themeDisplay.getCompanyId())) { throw new PrincipalException(); }/* ww w. j ava 2 s . c om*/ HttpSession session = request.getSession(); String redirect = ParamUtil.getString(request, "redirect"); String code = ParamUtil.getString(request, "code"); String token = FacebookConnectUtil.getAccessToken(themeDisplay.getCompanyId(), redirect, code); if (Validator.isNotNull(token)) { session.setAttribute(FACEBOOK_ACCESS_TOKEN, token); setFacebookCredentials(session, themeDisplay.getCompanyId(), token); } else { _log.error("there is not token from facebook"); //return mapping.findForward("/common/referer_jsp.jsp"); } response.sendRedirect(redirect); return null; }
From source file:com.fb.action.OpenGraphLayoutAction.java
License:Open Source License
protected void addOpenGraphProperties(HttpServletRequest request) throws PortalException, SystemException { ThemeDisplay themeDisplay = (ThemeDisplay) request.getAttribute(WebKeys.THEME_DISPLAY); Map<String, String> opengraphAttributes = (Map<String, String>) request .getAttribute("LIFERAY_SHARED_OPENGRAPH"); if (opengraphAttributes == null) { opengraphAttributes = new HashMap<String, String>(); request.setAttribute("LIFERAY_SHARED_OPENGRAPH", opengraphAttributes); }/*from w ww . j ava 2s. c om*/ UnicodeProperties layoutTypeSettings = null; Layout layout = themeDisplay.getLayout(); Group group = themeDisplay.getScopeGroup(); if (layout != null) { layoutTypeSettings = layout.getTypeSettingsProperties(); } String ogTitle = layoutTypeSettings.getProperty("og-title"); String ogType = layoutTypeSettings.getProperty("og-type"); String ogImage = layoutTypeSettings.getProperty("og-image"); String ogDescription = layoutTypeSettings.getProperty("og-description"); String ogVideo = layoutTypeSettings.getProperty("og-video"); String ogAudio = layoutTypeSettings.getProperty("og-audio"); String ogDeterminer = layoutTypeSettings.getProperty("og-determiner"); if (Validator.isNull(ogType)) { if (group.isUser()) { ogType = "profile"; } else { ogType = "website"; } } opengraphAttributes.put("type", ogType); opengraphAttributes.put("url", PortalUtil.getCanonicalURL(PortalUtil.getLayoutFullURL(themeDisplay), themeDisplay, layout)); if (Validator.isNull(ogTitle)) { ogTitle = layout.getTitle(themeDisplay.getLanguageId()); } opengraphAttributes.put("title", ogTitle); if (Validator.isNull(ogDescription)) { ogDescription = layout.getDescription(themeDisplay.getLanguageId()); } if (Validator.isNotNull(ogDescription)) { opengraphAttributes.put("description", ogDescription); } if (Validator.isNotNull(ogVideo)) { opengraphAttributes.put("video", ogVideo); } if (Validator.isNotNull(ogAudio)) { opengraphAttributes.put("audio", ogAudio); } if (Validator.isNotNull(ogDeterminer)) { opengraphAttributes.put("determiner", ogDeterminer); } opengraphAttributes.put("site_name", group.getDescriptiveName()); opengraphAttributes.put("locale", themeDisplay.getLanguageId()); if (Validator.isNull(ogImage) && layout.isIconImage()) { ogImage = themeDisplay.getPathImage() + "/layout_icon?img_id=" + layout.getIconImageId() + "&t=" + WebServerServletTokenUtil.getToken(layout.getIconImageId()); } if (Validator.isNotNull(ogImage)) { opengraphAttributes.put("image", ogImage); } }
From source file:com.fmdp.webform.portlet.WebFormPortlet.java
License:Open Source License
public void deleteData(ActionRequest actionRequest, ActionResponse actionResponse) throws Exception { ThemeDisplay themeDisplay = (ThemeDisplay) actionRequest.getAttribute(WebKeys.THEME_DISPLAY); String portletId = PortalUtil.getPortletId(actionRequest); PortletPermissionUtil.check(themeDisplay.getPermissionChecker(), themeDisplay.getPlid(), portletId, ActionKeys.CONFIGURATION);//from w ww . ja v a2 s. c o m PortletPreferences preferences = PortletPreferencesFactoryUtil.getPortletSetup(actionRequest); String databaseTableName = preferences.getValue("databaseTableName", StringPool.BLANK); if (Validator.isNotNull(databaseTableName)) { ExpandoTableLocalServiceUtil.deleteTable(themeDisplay.getCompanyId(), WebFormUtil.class.getName(), databaseTableName); } }