Example usage for com.liferay.portal.kernel.repository.model Folder getAncestors

List of usage examples for com.liferay.portal.kernel.repository.model Folder getAncestors

Introduction

In this page you can find the example usage for com.liferay.portal.kernel.repository.model Folder getAncestors.

Prototype

public List<Folder> getAncestors() throws PortalException;

Source Link

Usage

From source file:com.liferay.document.library.web.internal.util.DLBreadcrumbUtil.java

License:Open Source License

public static void addPortletBreadcrumbEntries(Folder folder, HttpServletRequest request, PortletURL portletURL)
        throws Exception {

    ThemeDisplay themeDisplay = (ThemeDisplay) request.getAttribute(WebKeys.THEME_DISPLAY);

    PortletDisplay portletDisplay = themeDisplay.getPortletDisplay();

    long rootFolderId = DLFolderConstants.DEFAULT_PARENT_FOLDER_ID;

    boolean ignoreRootFolder = ParamUtil.getBoolean(request, "ignoreRootFolder");

    if (!ignoreRootFolder) {
        DLPortletInstanceSettings dlPortletInstanceSettings = DLPortletInstanceSettings
                .getInstance(themeDisplay.getLayout(), portletDisplay.getId());

        rootFolderId = dlPortletInstanceSettings.getRootFolderId();
    }//from w ww. ja  v a  2s . c  o  m

    List<Folder> ancestorFolders = Collections.emptyList();

    if ((folder != null) && (folder.getFolderId() != rootFolderId)) {
        ancestorFolders = folder.getAncestors();

        int indexOfRootFolder = -1;

        for (int i = 0; i < ancestorFolders.size(); i++) {
            Folder ancestorFolder = ancestorFolders.get(i);

            if (rootFolderId == ancestorFolder.getFolderId()) {
                indexOfRootFolder = i;
            }
        }

        if (indexOfRootFolder > -1) {
            ancestorFolders = ancestorFolders.subList(0, indexOfRootFolder);
        }
    }

    Collections.reverse(ancestorFolders);

    for (Folder ancestorFolder : ancestorFolders) {
        portletURL.setParameter("folderId", String.valueOf(ancestorFolder.getFolderId()));

        Map<String, Object> data = new HashMap<>();

        data.put("direction-right", Boolean.TRUE.toString());
        data.put("folder-id", ancestorFolder.getFolderId());

        PortalUtil.addPortletBreadcrumbEntry(request, ancestorFolder.getName(), portletURL.toString(), data);
    }

    long folderId = DLFolderConstants.DEFAULT_PARENT_FOLDER_ID;

    if (folder != null) {
        folderId = folder.getFolderId();
    }

    portletURL.setParameter("folderId", String.valueOf(folderId));

    if ((folderId != DLFolderConstants.DEFAULT_PARENT_FOLDER_ID) && (folderId != rootFolderId)) {

        Folder unescapedFolder = folder.toUnescapedModel();

        Map<String, Object> data = new HashMap<>();

        data.put("direction-right", Boolean.TRUE.toString());
        data.put("folder-id", folderId);

        PortalUtil.addPortletBreadcrumbEntry(request, unescapedFolder.getName(), portletURL.toString(), data);
    }
}

From source file:com.liferay.document.library.web.internal.util.IGUtil.java

License:Open Source License

public static void addPortletBreadcrumbEntries(Folder folder, HttpServletRequest request,
        RenderResponse renderResponse) throws Exception {

    String mvcRenderCommandName = ParamUtil.getString(request, "mvcRenderCommandName");

    PortletURL portletURL = renderResponse.createRenderURL();

    if (mvcRenderCommandName.equals("/document_library/select_folder")) {
        ThemeDisplay themeDisplay = (ThemeDisplay) request.getAttribute(WebKeys.THEME_DISPLAY);

        portletURL.setParameter("mvcRenderCommandName", mvcRenderCommandName);
        portletURL.setWindowState(LiferayWindowState.POP_UP);

        PortalUtil.addPortletBreadcrumbEntry(request, themeDisplay.translate("home"), portletURL.toString());
    } else {/*from   w w w.j  a v a2s. c o m*/
        portletURL.setParameter("mvcRenderCommandName", "/image_gallery_display/view");
    }

    long rootFolderId = getRootFolderId(request);

    List<Folder> ancestorFolders = Collections.emptyList();

    if ((folder != null) && (folder.getFolderId() != rootFolderId)) {
        ancestorFolders = folder.getAncestors();

        int indexOfRootFolder = -1;

        for (int i = 0; i < ancestorFolders.size(); i++) {
            Folder ancestorFolder = ancestorFolders.get(i);

            if (rootFolderId == ancestorFolder.getFolderId()) {
                indexOfRootFolder = i;
            }
        }

        if (indexOfRootFolder > -1) {
            ancestorFolders = ancestorFolders.subList(0, indexOfRootFolder);
        }
    }

    Collections.reverse(ancestorFolders);

    for (Folder ancestorFolder : ancestorFolders) {
        portletURL.setParameter("folderId", String.valueOf(ancestorFolder.getFolderId()));

        PortalUtil.addPortletBreadcrumbEntry(request, ancestorFolder.getName(), portletURL.toString());
    }

    portletURL.setParameter("folderId", String.valueOf(folder.getFolderId()));

    PortalUtil.addPortletBreadcrumbEntry(request, folder.getName(), portletURL.toString());
}

From source file:com.liferay.item.selector.taglib.internal.util.ItemSelectorRepositoryEntryBrowserUtil.java

License:Open Source License

public static void addPortletBreadcrumbEntries(long folderId, String displayStyle, HttpServletRequest request,
        LiferayPortletResponse liferayPortletResponse, PortletURL portletURL) throws Exception {

    addGroupSelectorBreadcrumbEntry(request, liferayPortletResponse, portletURL);

    portletURL.setParameter("displayStyle", displayStyle);

    ThemeDisplay themeDisplay = (ThemeDisplay) request.getAttribute(WebKeys.THEME_DISPLAY);

    Group scopeGroup = themeDisplay.getScopeGroup();

    addPortletBreadcrumbEntry(DLFolderConstants.DEFAULT_PARENT_FOLDER_ID, request,
            scopeGroup.getDescriptiveName(request.getLocale()), portletURL);

    if (folderId != DLFolderConstants.DEFAULT_PARENT_FOLDER_ID) {
        Folder folder = DLAppServiceUtil.getFolder(folderId);

        List<Folder> ancestorFolders = folder.getAncestors();

        Collections.reverse(ancestorFolders);

        for (Folder ancestorFolder : ancestorFolders) {
            addPortletBreadcrumbEntry(ancestorFolder.getFolderId(), request, ancestorFolder.getName(),
                    portletURL);//from   w w  w  . j a v a 2s.  co m
        }

        addPortletBreadcrumbEntry(folder.getFolderId(), request, folder.getName(), portletURL);
    }
}

From source file:com.liferay.portlet.documentlibrary.util.DLImpl.java

License:Open Source License

@Override
public void addPortletBreadcrumbEntries(Folder folder, HttpServletRequest request, PortletURL portletURL)
        throws Exception {

    ThemeDisplay themeDisplay = (ThemeDisplay) request.getAttribute(WebKeys.THEME_DISPLAY);

    PortletDisplay portletDisplay = themeDisplay.getPortletDisplay();

    long defaultFolderId = DLFolderConstants.DEFAULT_PARENT_FOLDER_ID;

    boolean ignoreRootFolder = ParamUtil.getBoolean(request, "ignoreRootFolder");

    if (!ignoreRootFolder) {
        DLPortletInstanceSettings dlPortletInstanceSettings = DLPortletInstanceSettings
                .getInstance(themeDisplay.getLayout(), portletDisplay.getId());

        defaultFolderId = dlPortletInstanceSettings.getDefaultFolderId();
    }/*from   w w w  .  jav a  2 s.c o m*/

    List<Folder> ancestorFolders = Collections.emptyList();

    if ((folder != null) && (folder.getFolderId() != defaultFolderId)) {
        ancestorFolders = folder.getAncestors();

        int indexOfRootFolder = -1;

        for (int i = 0; i < ancestorFolders.size(); i++) {
            Folder ancestorFolder = ancestorFolders.get(i);

            if (defaultFolderId == ancestorFolder.getFolderId()) {
                indexOfRootFolder = i;
            }
        }

        if (indexOfRootFolder > -1) {
            ancestorFolders = ancestorFolders.subList(0, indexOfRootFolder);
        }
    }

    Collections.reverse(ancestorFolders);

    for (Folder ancestorFolder : ancestorFolders) {
        portletURL.setParameter("folderId", String.valueOf(ancestorFolder.getFolderId()));

        Map<String, Object> data = new HashMap<>();

        data.put("direction-right", Boolean.TRUE.toString());
        data.put("folder-id", ancestorFolder.getFolderId());

        PortalUtil.addPortletBreadcrumbEntry(request, ancestorFolder.getName(), portletURL.toString(), data);
    }

    long folderId = DLFolderConstants.DEFAULT_PARENT_FOLDER_ID;

    if (folder != null) {
        folderId = folder.getFolderId();
    }

    portletURL.setParameter("folderId", String.valueOf(folderId));

    if ((folderId != DLFolderConstants.DEFAULT_PARENT_FOLDER_ID) && (folderId != defaultFolderId)) {

        Folder unescapedFolder = folder.toUnescapedModel();

        Map<String, Object> data = new HashMap<>();

        data.put("direction-right", Boolean.TRUE.toString());
        data.put("folder-id", folderId);

        PortalUtil.addPortletBreadcrumbEntry(request, unescapedFolder.getName(), portletURL.toString(), data);
    }
}

From source file:com.liferay.portlet.documentlibrary.util.DLImpl.java

License:Open Source License

@Override
public String getAbsolutePath(PortletRequest portletRequest, long folderId) throws PortalException {

    ThemeDisplay themeDisplay = (ThemeDisplay) portletRequest.getAttribute(WebKeys.THEME_DISPLAY);

    if (folderId == DLFolderConstants.DEFAULT_PARENT_FOLDER_ID) {
        return themeDisplay.translate("home");
    }/*from www  .ja v a2  s . c  om*/

    Folder folder = DLAppLocalServiceUtil.getFolder(folderId);

    List<Folder> folders = folder.getAncestors();

    Collections.reverse(folders);

    StringBundler sb = new StringBundler((folders.size() * 3) + 5);

    sb.append(themeDisplay.translate("home"));
    sb.append(StringPool.SPACE);

    for (Folder curFolder : folders) {
        sb.append(StringPool.RAQUO_CHAR);
        sb.append(StringPool.SPACE);
        sb.append(curFolder.getName());
    }

    sb.append(StringPool.RAQUO_CHAR);
    sb.append(StringPool.SPACE);
    sb.append(folder.getName());

    return sb.toString();
}

From source file:com.liferay.portlet.imagegallerydisplay.util.IGUtil.java

License:Open Source License

public static void addPortletBreadcrumbEntries(Folder folder, HttpServletRequest request,
        RenderResponse renderResponse) throws Exception {

    String strutsAction = ParamUtil.getString(request, "struts_action");

    PortletURL portletURL = renderResponse.createRenderURL();

    if (strutsAction.equals("/image_gallery_display/select_folder")) {
        ThemeDisplay themeDisplay = (ThemeDisplay) request.getAttribute(WebKeys.THEME_DISPLAY);

        portletURL.setWindowState(LiferayWindowState.POP_UP);

        portletURL.setParameter("struts_action", strutsAction);

        PortalUtil.addPortletBreadcrumbEntry(request, themeDisplay.translate("home"), portletURL.toString());
    } else {/*from   ww  w  . j  av a  2  s. c om*/
        portletURL.setParameter("struts_action", "/image_gallery_display/view");
    }

    List<Folder> ancestorFolders = folder.getAncestors();

    Collections.reverse(ancestorFolders);

    for (Folder ancestorFolder : ancestorFolders) {
        portletURL.setParameter("folderId", String.valueOf(ancestorFolder.getFolderId()));

        PortalUtil.addPortletBreadcrumbEntry(request, ancestorFolder.getName(), portletURL.toString());
    }

    portletURL.setParameter("folderId", String.valueOf(folder.getFolderId()));

    if (strutsAction.equals("/journal/select_image_gallery")) {
        portletURL.setParameter("groupId", String.valueOf(folder.getGroupId()));
    }

    PortalUtil.addPortletBreadcrumbEntry(request, folder.getName(), portletURL.toString());
}