Example usage for com.liferay.portal.kernel.theme ThemeDisplay isSignedIn

List of usage examples for com.liferay.portal.kernel.theme ThemeDisplay isSignedIn

Introduction

In this page you can find the example usage for com.liferay.portal.kernel.theme ThemeDisplay isSignedIn.

Prototype

public boolean isSignedIn() 

Source Link

Usage

From source file:se.vgregion.portal.innovationsslussen.idea.controller.IdeaViewController.java

License:Open Source License

/**
 * Method handling Action request./*from  w  ww.ja  v  a  2 s. co m*/
 *
 * @param request  the request
 * @param response the response
 * @param model    the model
 */
@ActionMapping(params = "action=updateFromBarium")
public final void updateFromBarium(ActionRequest request, ActionResponse response, final ModelMap model) {

    LOGGER.info("updateFromBarium");

    ThemeDisplay themeDisplay = getThemeDisplay(request);

    IdeaContentType ideaContentType = IdeaContentType.valueOf(ParamUtil.getString(request, "ideaContentType"));
    String id = ParamUtil.getString(request, "id");
    String urlTitle = ParamUtil.getString(request, "urlTitle", "");

    if (themeDisplay.isSignedIn()) {
        try {
            Idea idea = ideaService.find(id);
            IdeaService.UpdateFromBariumResult result = ideaService.updateFromBarium(idea);
            urlTitle = result.getNewIdea().getUrlTitle();
            model.put("updateFromBariumOutcome", result.isChanged());
        } catch (UpdateIdeaException e) {
            LOGGER.error(e.getMessage(), e);
            throw new RuntimeException(e);
        }
    }

    if (ideaContentType == IdeaContentType.IDEA_CONTENT_TYPE_PRIVATE) {
        response.setRenderParameter("type", "private");
    }

    response.setRenderParameter("urlTitle", urlTitle);
}

From source file:se.vgregion.portal.innovationsslussen.idealist.controller.IdeaListViewController.java

License:Open Source License

/**
 * The default render method./*from w  w  w  .j  av  a 2s  .  c  o m*/
 *
 * @param request  the request
 * @param response the response
 * @param model    the model
 * @return the view
 */
@RenderMapping()
public String showIdeaList(RenderRequest request, RenderResponse response, final ModelMap model) {

    ThemeDisplay themeDisplay = (ThemeDisplay) request.getAttribute(WebKeys.THEME_DISPLAY);
    long scopeGroupId = themeDisplay.getScopeGroupId();
    long companyId = themeDisplay.getCompanyId();
    long userId = themeDisplay.getUserId();
    boolean isSignedIn = themeDisplay.isSignedIn();

    String returnView = "view_open_ideas";

    try {

        PortletPreferences prefs = request.getPreferences();
        String ideaListType = prefs.getValue("ideaListType", "0");
        int entryCount = Integer.valueOf(prefs.getValue("entryCount", "6"));

        Layout ideaLayout = getFriendlyURLLayout(scopeGroupId, themeDisplay.getLayout().isPrivateLayout());

        long ideaPlid = ideaLayout.getPlid();

        List<Idea> ideasFromService = new ArrayList<Idea>();
        List<Idea> ideaList = new ArrayList<Idea>();

        int currentPage = ParamUtil.getInteger(request, "pageNumber",
                PageIteratorConstants.PAGINATOR_START_DEFAULT);

        int ideaPhase = ParamUtil.getInteger(request, "ideaPhase", 0);
        int ideaVisible = ParamUtil.getInteger(request, "ideaVisible", 1);
        int ideaSort = ParamUtil.getInteger(request, "ideaSort", 0);

        String transporter = ParamUtil.getString(request, "transporter", "0");

        int maxPages = PageIteratorConstants.MAX_PAGES_DEFAULT;
        long totalCount = 0;

        int start = (currentPage - 1) * entryCount;

        if (ideaListType.equals(IdeaPortletsConstants.IDEA_LIST_PORTLET_VIEW_OPEN_IDEAS)) {

            Map<String, Object> map = searchService.getPublicVisibleIdeas(companyId, scopeGroupId, start,
                    entryCount, ideaSort, ideaPhase);

            ideasFromService = (List<Idea>) map.get("ideas");
            totalCount = (Long) map.get("totalIdeasCount");

        } else if (ideaListType.equals(IdeaPortletsConstants.IDEA_LIST_PORTLET_VIEW_USER_IDEAS)) {

            if (isSignedIn) {
                ideasFromService = ideaService.findIdeasByGroupIdAndUserId(companyId, scopeGroupId, userId,
                        start, entryCount);

                totalCount = ideaService.findIdeasCountByGroupIdAndUserId(companyId, scopeGroupId, userId);
            }

            returnView = "view_user_ideas";
        } else if (ideaListType.equals(IdeaPortletsConstants.IDEA_LIST_PORTLET_VIEW_USER_FAVORITED_IDEAS)) {

            if (isSignedIn) {
                ideasFromService = ideaService.findVisibleUserFavoritedIdeas(companyId, scopeGroupId, userId,
                        start, entryCount);

                totalCount = ideaService.findVisibleUserFavoritedIdeasCount(companyId, scopeGroupId, userId);
            }

            returnView = "view_user_favorites";
        } else if (ideaListType.equals(IdeaPortletsConstants.IDEA_LIST_PORTLET_VIEW_CLOSED_IDEAS)) {

            if (isSignedIn) {
                ideasFromService = ideaService.findVisibleIdeasByGroupId(companyId, scopeGroupId,
                        IdeaStatus.PRIVATE_IDEA, start, entryCount);

                totalCount = ideaService.findVisibleIdeaCountByGroupId(companyId, scopeGroupId,
                        IdeaStatus.PRIVATE_IDEA);
            }

            returnView = "view_closed_ideas";
        } else if (ideaListType
                .equals(IdeaPortletsConstants.IDEA_LIST_PORTLET_VIEW_IDEAS_FOR_IDEATRANSPORTER)) {

            Map<String, Object> map = searchService.getVisibleIdeasForIdeaTransporters(companyId, scopeGroupId,
                    start, entryCount, ideaSort, ideaPhase, ideaVisible, transporter);

            ideasFromService = (List<Idea>) map.get("ideas");
            totalCount = (Long) map.get("totalIdeasCount");

            // Collect all Idea transporters
            setIdeaTransporters(model, scopeGroupId, companyId, entryCount, start, ideaVisible);

            returnView = "view_transporter_ideas";

        }

        for (Idea idea : ideasFromService) {
            /*int commentsCount = 0;
                    
            if (idea.isPublic()) {
               commentsCount = ideaService.getPublicCommentsCount(idea);
            } else {
               commentsCount = ideaService.getPrivateCommentsCount(idea);
            }
                    
            idea.setCommentsCount(commentsCount);*/

            ideaList.add(idea);
        }

        PageIterator pageIterator = new PageIterator(totalCount, currentPage, entryCount, maxPages);

        model.addAttribute("ideaPlid", ideaPlid);
        model.addAttribute("ideaPortletName", IdeaPortletsConstants.PORTLET_NAME_IDEA_PORTLET);
        model.addAttribute("ideaList", ideaList);
        model.addAttribute("ideaListType", ideaListType);
        model.addAttribute("ideaPhase", ideaPhase);
        model.addAttribute("ideaSort", ideaSort);
        model.addAttribute("ideaVisible", ideaVisible);
        model.addAttribute("transporter", transporter);
        model.addAttribute("isSignedIn", isSignedIn);
        model.addAttribute("pageIterator", pageIterator);

    } catch (PortalException e) {
        e.printStackTrace();
    } catch (SystemException e) {
        e.printStackTrace();
    }

    return returnView;
}