List of usage examples for com.liferay.portal.kernel.theme ThemeDisplay getScopeGroupId
public long getScopeGroupId()
From source file:com.liferay.wiki.web.internal.portlet.configuration.icon.DeletePagePortletConfigurationIcon.java
License:Open Source License
@Override public String getURL(PortletRequest portletRequest, PortletResponse portletResponse) { ThemeDisplay themeDisplay = (ThemeDisplay) portletRequest.getAttribute(WebKeys.THEME_DISPLAY); try {//from w ww. j av a 2 s .c om WikiPage page = ActionUtil.getPage(portletRequest); PortletURL portletURL = PortalUtil.getControlPanelPortletURL(portletRequest, WikiPortletKeys.WIKI_ADMIN, PortletRequest.ACTION_PHASE); portletURL.setParameter(ActionRequest.ACTION_NAME, "/wiki/edit_page"); portletURL.setParameter(Constants.CMD, Constants.DELETE); if (!page.isDraft() && isTrashEnabled(themeDisplay.getScopeGroupId())) { portletURL.setParameter(Constants.CMD, Constants.MOVE_TO_TRASH); } else { portletURL.setParameter("version", String.valueOf(page.getVersion())); } PortletURL redirectURL = PortalUtil.getControlPanelPortletURL(portletRequest, WikiPortletKeys.WIKI_ADMIN, PortletRequest.ACTION_PHASE); redirectURL.setParameter("mvcRenderCommandName", "/wiki/view_pages"); redirectURL.setParameter("navigation", "all-pages"); redirectURL.setParameter("nodeId", String.valueOf(page.getNodeId())); portletURL.setParameter("redirect", redirectURL.toString()); portletURL.setParameter("nodeId", String.valueOf(page.getNodeId())); portletURL.setParameter("title", page.getTitle()); return portletURL.toString(); } catch (Exception e) { } return StringPool.BLANK; }
From source file:com.liferay.wiki.web.internal.portlet.configuration.icon.PermissionsPortletConfigurationIcon.java
License:Open Source License
@Override public String getURL(PortletRequest portletRequest, PortletResponse portletResponse) { String url = StringPool.BLANK; ThemeDisplay themeDisplay = (ThemeDisplay) portletRequest.getAttribute(WebKeys.THEME_DISPLAY); try {/*from w w w.java 2s . c o m*/ url = PermissionsURLTag.doTag(StringPool.BLANK, "com.liferay.wiki", themeDisplay.getScopeGroupName(), null, String.valueOf(themeDisplay.getScopeGroupId()), LiferayWindowState.POP_UP.toString(), null, themeDisplay.getRequest()); } catch (Exception e) { } return url; }
From source file:com.liferay.wiki.web.internal.portlet.configuration.icon.PermissionsPortletConfigurationIcon.java
License:Open Source License
@Override public boolean isShow(PortletRequest portletRequest) { ThemeDisplay themeDisplay = (ThemeDisplay) portletRequest.getAttribute(WebKeys.THEME_DISPLAY); User user = themeDisplay.getUser();/* www . j a va2 s. c o m*/ if (user.isDefaultUser()) { return false; } PermissionChecker permissionChecker = themeDisplay.getPermissionChecker(); try { if (!WikiResourcePermissionChecker.contains(permissionChecker, themeDisplay.getScopeGroupId(), ActionKeys.PERMISSIONS)) { return false; } } catch (Exception e) { return false; } return true; }
From source file:com.liferay.wiki.web.internal.portlet.toolbar.item.WikiPortletToolbarContributor.java
License:Open Source License
protected void addPortletTitleMenuItem(List<MenuItem> menuItems, WikiNode node, ThemeDisplay themeDisplay, PortletRequest portletRequest) throws PortalException { if (!containsPermission(themeDisplay.getPermissionChecker(), themeDisplay.getScopeGroupId(), node.getNodeId(), ActionKeys.ADD_PAGE)) { return;//w w w . j av a 2s.co m } URLMenuItem urlMenuItem = new URLMenuItem(); urlMenuItem.setIcon("icon-plus-sign-2"); urlMenuItem.setLabel(LanguageUtil.get(PortalUtil.getHttpServletRequest(portletRequest), "add-page")); PortletDisplay portletDisplay = themeDisplay.getPortletDisplay(); PortletURL portletURL = PortletURLFactoryUtil.create(portletRequest, portletDisplay.getId(), PortletRequest.RENDER_PHASE); portletURL.setParameter("mvcRenderCommandName", "/wiki/edit_page"); portletURL.setParameter("redirect", PortalUtil.getCurrentURL(portletRequest)); portletURL.setParameter("nodeId", String.valueOf(node.getNodeId())); portletURL.setParameter("title", StringPool.BLANK); portletURL.setParameter("editTitle", "1"); urlMenuItem.setURL(portletURL.toString()); menuItems.add(urlMenuItem); }
From source file:com.liferay.wiki.web.internal.portlet.toolbar.item.WikiPortletToolbarContributor.java
License:Open Source License
private WikiNode _getNode(ThemeDisplay themeDisplay, PortletRequest portletRequest) { WikiNode node = (WikiNode) portletRequest.getAttribute(WikiWebKeys.WIKI_NODE); if (node != null) { return node; }//from ww w . j a v a 2 s . c o m String initialNodeName = StringPool.BLANK; try { WikiGroupServiceOverriddenConfiguration wikiGroupServiceOverriddenConfiguration = ConfigurationProviderUtil .getConfiguration(WikiGroupServiceOverriddenConfiguration.class, new GroupServiceSettingsLocator(themeDisplay.getScopeGroupId(), WikiConstants.SERVICE_NAME)); initialNodeName = wikiGroupServiceOverriddenConfiguration.initialNodeName(); } catch (ConfigurationException ce) { _log.error("Unable to get initial node name for group " + themeDisplay.getScopeGroupId()); } String name = BeanParamUtil.getString(node, portletRequest, "name", initialNodeName); if (Validator.isNotNull(name)) { try { node = _wikiNodeService.getNode(themeDisplay.getScopeGroupId(), name); } catch (NoSuchNodeException nsne) { node = null; } catch (PortalException pe) { _log.error(pe, pe); } } return node; }
From source file:se.vgregion.portal.innovationsslussen.createidea.controller.CreateIdeaViewController.java
License:Open Source License
/** * The render method for the confirmation view. * * @param request the request//from w w w . j av a 2 s . c o m * @param response the response * @param model the model * @return the view */ @RenderMapping(params = "view=confirmation") public String showConfirmation(RenderRequest request, RenderResponse response, final ModelMap model) { ThemeDisplay themeDisplay = (ThemeDisplay) request.getAttribute(WebKeys.THEME_DISPLAY); long companyId = themeDisplay.getCompanyId(); long scopeGroupId = themeDisplay.getScopeGroupId(); try { Layout ideaLayout = getFriendlyURLLayout(scopeGroupId, themeDisplay); long ideaPlid = ideaLayout.getPlid(); String ideaLink = request.getParameter("ideaLink"); model.addAttribute("urlTitle", ideaLink); model.addAttribute("ideaPlid", ideaPlid); model.addAttribute("ideaPortletName", IdeaPortletsConstants.PORTLET_NAME_IDEA_PORTLET); } catch (Exception e) { e.printStackTrace(); } return "confirmation"; }
From source file:se.vgregion.portal.innovationsslussen.createidea.controller.CreateIdeaViewController.java
License:Open Source License
/** * The default render method.//w w w . j av a 2 s . c o m * * @param request the request * @param response the response * @param model the model * @param idea the idea * @param result the binding results * @return the view */ @RenderMapping() public String createIdea(RenderRequest request, RenderResponse response, final ModelMap model, @ModelAttribute Idea idea, BindingResult result) { ThemeDisplay themeDisplay = (ThemeDisplay) request.getAttribute(WebKeys.THEME_DISPLAY); long scopeGroupId = themeDisplay.getScopeGroupId(); long userId = themeDisplay.getUserId(); boolean isSignedIn = themeDisplay.isSignedIn(); if (model.get("errors") == null) { // No idea exists idea = IdeaPortletUtil.getIdeaFromRequest(request); // Set dummy data for person if (idea.getIdeaPerson().getName().equals("")) { String screenName = ""; String otherUserVgrId = (String) model.get("otherUserVgrId"); if (otherUserVgrId != null) { if (!otherUserVgrId.equals("")) { screenName = otherUserVgrId; } } else { screenName = themeDisplay.getUser().getScreenName(); } IdeaPerson ideaPerson = idea.getIdeaPerson(); AdPerson adCriteria = new AdPerson(); adCriteria.setCn(screenName); List<AdPerson> findings = ldapService.find(adCriteria); if (findings.size() == 1) { AdPerson person = findings.get(0); ideaPerson.setEmail(person.getMail()); ideaPerson.setJobPosition(person.getTitle()); ideaPerson.setName(person.getDisplayName()); ideaPerson.setAdministrativeUnit(person.getDivision()); ideaPerson.setPhoneMobile(person.getMobile()); ideaPerson.setPhone(person.getTelephoneNumber()); ideaPerson.setVgrId(person.getCn()); ideaPerson.setName(person.getDisplayName()); model.addAttribute("otherUserVgrId", idea.getIdeaPerson().getVgrId()); } populateValuesFromKiv(screenName, ideaPerson); } } else { // Copy binding error from save action result.addAllErrors((BindingResult) model.get("errors")); if (idea.getIdeaPerson() != null) { String vgrId = idea.getIdeaPerson().getVgrId(); if (vgrId != null && !vgrId.isEmpty()) { model.addAttribute("otherUserVgrId", vgrId); } } } IdeaPermissionChecker ideaPermissionChecker = ideaPermissionCheckerService .getIdeaPermissionChecker(scopeGroupId, userId, idea); model.addAttribute("isSignedIn", isSignedIn); model.addAttribute("idea", idea); model.addAttribute("ideaClass", Idea.class); model.addAttribute("ideaPermissionChecker", ideaPermissionChecker); return "view"; }
From source file:se.vgregion.portal.innovationsslussen.createidea.controller.CreateIdeaViewController.java
License:Open Source License
/** * Method handling Action request.//from w w w .j a v a 2s. c om * * @param request the request * @param response the response * @param model the model * @param idea the idea * @param result the binding results */ @ActionMapping("submitIdea") public final void submitIdea(ActionRequest request, ActionResponse response, final ModelMap model, @ModelAttribute Idea idea, BindingResult result) { ThemeDisplay themeDisplay = (ThemeDisplay) request.getAttribute(WebKeys.THEME_DISPLAY); // todo auktoriseringskontroll? LOGGER.info("submitIdea"); idea = IdeaPortletUtil.getIdeaFromRequest(request); idea.setCreated(new Date()); idea.setHidden(false); ideaValidator.validate(idea, result); if (!result.hasErrors()) { try { String schemeServerNamePort = generateSchemeServerNamePort(request); //Populate with extra information about the user (from the ldap if at all). AdPerson criteria = new AdPerson(); String otherUserVgrId = ""; IdeaPermissionChecker ideaPermissionChecker = ideaPermissionCheckerService .getIdeaPermissionChecker(themeDisplay.getScopeGroupId(), themeDisplay.getUserId(), idea); if (ideaPermissionChecker.isHasPermissionCreateIdeaForOtherUser()) { otherUserVgrId = idea.getIdeaPerson().getVgrId(); } if (otherUserVgrId != null && !otherUserVgrId.isEmpty()) { criteria.setCn(otherUserVgrId); idea.setOriginalUserId(themeDisplay.getUserId()); } else { criteria.setCn(themeDisplay.getUser().getScreenName()); } List<AdPerson> findings = ldapService.find(criteria); if (findings.size() == 1) { AdPerson person = findings.get(0); IdeaPerson ip = idea.getIdeaPerson(); ip.setName(person.getDisplayName()); ip.setVgrId(person.getCn()); ip.setAdministrativeUnit(person.getDivision()); //ip.setBirthYear(person.getBirthYear()); ip.setVgrStrukturPerson(person.getFormattedVgrStrukturPerson()); //ip.setPhoneMobile(person.getMobile()); //ip.setPhone(person.getTelephoneNumber()); ip.setVgrId(person.getCn()); ip.setName(person.getDisplayName()); } populateValuesFromKiv(idea.getIdeaPerson().getVgrId(), idea.getIdeaPerson()); idea = ideaService.addIdea(idea, schemeServerNamePort); response.setRenderParameter("ideaLink", idea.getUrlTitle()); response.setRenderParameter("view", "confirmation"); } catch (CreateIdeaException e) { // Add error - create failed result.addError(new ObjectError("", "Hoppsan nu gick ngot fel, vi fr inte kontakt med ett " + "bakomliggande system. Var god frsk igen senare.")); model.addAttribute("errors", result); copyRequestParameters(request, response); response.setRenderParameter("view", "view"); e.printStackTrace(); } catch (SystemException e) { result.addError( new ObjectError("", "Hoppsan nu gick ngot fel, anvndaren som du frsker skapa " + "idn fr finns inte eller gr inte att skapa.")); e.printStackTrace(); } catch (RuntimeException e) { SQLException nextException = Util.getNextExceptionFromLastCause(e); if (nextException != null) { LOGGER.error(nextException.getMessage(), nextException); } result.addError(new ObjectError("", "Hoppsan nu gick ngot fel, vi fr inte kontakt med ett " + "bakomliggande system. Var god frsk igen senare.")); model.addAttribute("errors", result); copyRequestParameters(request, response); response.setRenderParameter("view", "view"); e.printStackTrace(); } catch (PortalException e) { result.addError( new ObjectError("", "Hoppsan nu gick ngot fel, anvndaren som du frsker skapa " + "idn fr finns inte eller gr inte att skapa.")); e.printStackTrace(); } } else { model.addAttribute("otherUserVgrId", idea.getIdeaPerson().getVgrId()); model.addAttribute("errors", result); model.addAttribute("idea", idea); //copyRequestParameters(request, response); response.setRenderParameter("view", "view"); } }
From source file:se.vgregion.portal.innovationsslussen.createidea.controller.CreateIdeaViewControllerTest.java
License:Open Source License
@Before public void setUp() { ideaService = Mockito.mock(IdeaService.class); ideaSettingsService = Mockito.mock(IdeaSettingsService.class); ideaValidator = Mockito.mock(IdeaValidator.class); ldapService = Mockito.mock(LdapService.class); kivLdapService = Mockito.mock(LdapService.class); ideaPermissionCheckerService = Mockito.mock(IdeaPermissionCheckerService.class); renderRequest = Mockito.mock(RenderRequest.class); renderResponse = Mockito.mock(RenderResponse.class); model = Mockito.mock(ModelMap.class); ThemeDisplay themeDisplay = Mockito.mock(ThemeDisplay.class); Mockito.when(renderRequest.getAttribute(WebKeys.THEME_DISPLAY)).thenReturn(themeDisplay); Mockito.when(themeDisplay.getScopeGroupId()).thenReturn(1l); User user = Mockito.mock(User.class); Mockito.when(themeDisplay.getUser()).thenReturn(user); List<AdPerson> persons = new ArrayList<AdPerson>(); persons.add(new AdPerson()); Mockito.when(ldapService.find(Mockito.any(AdPerson.class))).thenReturn(persons); List<KivPerson> kivPersons = new ArrayList<KivPerson>(); kivPersons.add(new KivPerson()); Mockito.when(kivLdapService.find(Mockito.any(KivPerson.class))).thenReturn(kivPersons); controller = new CreateIdeaViewController(ideaService, ideaSettingsService, ideaValidator, ldapService, kivLdapService, ideaPermissionCheckerService) { @Override/*w w w.j av a 2 s.com*/ protected Layout getFriendlyURLLayout(long scopeGroupId, ThemeDisplay themeDisplay) throws SystemException, PortalException { return Mockito.mock(Layout.class); } @Override protected void copyRequestParameters(ActionRequest request, ActionResponse response) { } @Override protected HttpServletRequest toHttpServletRequest(ActionRequest request) { return Mockito.mock(HttpServletRequest.class); } }; }
From source file:se.vgregion.portal.innovationsslussen.createidea.controller.CreateIdeaViewControllerTest.java
License:Open Source License
@Test public void submitIdea() throws Exception { ActionRequest actionRequest = Mockito.mock(ActionRequest.class); ActionResponse actionResponse = Mockito.mock(ActionResponse.class); Idea idea = new Idea(); BindingResult binding = Mockito.mock(BindingResult.class); ThemeDisplay themeDisplay = Mockito.mock(ThemeDisplay.class); Mockito.when(themeDisplay.getScopeGroupId()).thenReturn(1l); Mockito.when(themeDisplay.getCompanyId()).thenReturn(1l); Mockito.when(actionRequest.getAttribute(WebKeys.THEME_DISPLAY)).thenReturn(themeDisplay); controller.submitIdea(actionRequest, actionResponse, model, idea, binding); }