<% /** * Copyright (c) 2000-2009 Liferay, Inc. All rights reserved. * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal * in the Software without restriction, including without limitation the rights * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell * copies of the Software, and to permit persons to whom the Software is * furnished to do so, subject to the following conditions: * * The above copyright notice and this permission notice shall be included in * all copies or substantial portions of the Software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE * SOFTWARE. */ %> <% int assetOrder = ParamUtil.getInteger(request, "assetOrder", -1); long folderId = ParamUtil.getLong(request, "assetParentId", DLFolderConstants.DEFAULT_PARENT_FOLDER_ID); DLFolder folder = null; if (folderId > 0) { try { folder = DLFolderLocalServiceUtil.getFolder(folderId); } catch (com.liferay.portlet.documentlibrary.NoSuchFolderException nsfe) { } } List folderIdLists = new ArrayList(); folderIdLists.add(new Long(folderId)); DLFolderLocalServiceUtil.getSubfolderIds(folderIdLists, scopeGroupId, folderId); String folderIds = ParamUtil.getString(request, "folderIds"); long[] folderIdsArray = StringUtil.split(folderIds, 0L); String keywords = ParamUtil.getString(request, "keywords"); PortletURL portletURL = renderResponse.createRenderURL(); portletURL.setParameter("struts_action", "/portlet_configuration/edit_configuration"); portletURL.setParameter("redirect", redirect); portletURL.setParameter("backURL", redirect); portletURL.setParameter("portletResource", portletResource); portletURL.setParameter("typeSelection", DLFileEntry.class.getName()); portletURL.setParameter("assetParentId", String.valueOf(folderId)); %>
" onclick="submitForm(document.fm, '<%= portletURL.toString() %>')" />
<% List headerNames = new ArrayList(); headerNames.add("folder"); headerNames.add("document"); headerNames.add("score"); SearchContainer searchContainer = new SearchContainer(renderRequest, null, null, SearchContainer.DEFAULT_CUR_PARAM, SearchContainer.DEFAULT_DELTA, portletURL, headerNames, LanguageUtil.format(pageContext, "no-documents-were-found-that-matched-the-keywords-x", "" + HtmlUtil.escape(keywords) + "")); try { Hits results = DLFolderLocalServiceUtil.search(company.getCompanyId(), scopeGroupId, themeDisplay.getUserId(), folderIdsArray, keywords, searchContainer.getStart(), searchContainer.getEnd()); int total = results.getLength(); searchContainer.setTotal(total); List resultRows = searchContainer.getResultRows(); for (int i = 0; i < results.getDocs().length; i++) { com.liferay.portal.kernel.search.Document doc = results.doc(i); ResultRow row = new ResultRow(doc, i, i); long entryFolderId = GetterUtil.getLong(doc.get("repositoryId")); String fileName = doc.get("path"); DLFileEntry fileEntry = DLFileEntryLocalServiceUtil.getFileEntry(entryFolderId, fileName); fileEntry = fileEntry.toEscapedModel(); TagsAsset asset = TagsAssetLocalServiceUtil.getAsset(DLFileEntry.class.getName(), fileEntry.getFileEntryId()); StringBuilder sb = new StringBuilder(); sb.append("javascript: "); sb.append(renderResponse.getNamespace()); sb.append("selectAsset('"); sb.append(asset.getAssetId()); sb.append("', '"); sb.append(asset.getAssetId()); sb.append("', '"); sb.append(UnicodeFormatter.toString(asset.getTitle())); sb.append("', '"); sb.append(assetOrder); sb.append("');"); String rowHREF = sb.toString(); // Folder and document DLFolder entryFolder = DLFolderLocalServiceUtil.getFolder(entryFolderId); entryFolder = entryFolder.toEscapedModel(); row.addText(entryFolder.getName(), rowHREF); row.addText(fileEntry.getTitle(), rowHREF); // Score row.addScore(results.score(i)); // Add result row resultRows.add(row); } } catch (Exception e) { } %>
<% List headerNames = new ArrayList(); headerNames.add("folder"); headerNames.add("num-of-folders"); headerNames.add("num-of-documents"); SearchContainer searchContainer = new SearchContainer(renderRequest, null, null, SearchContainer.DEFAULT_CUR_PARAM, SearchContainer.DEFAULT_DELTA, portletURL, headerNames, "there-are-no-folders"); int total = DLFolderLocalServiceUtil.getFoldersCount(scopeGroupId, folderId); searchContainer.setTotal(total); List results = DLFolderLocalServiceUtil.getFolders(scopeGroupId, folderId, searchContainer.getStart(), searchContainer.getEnd()); searchContainer.setResults(results); List resultRows = searchContainer.getResultRows(); for (int i = 0; i < results.size(); i++) { DLFolder curFolder = (DLFolder)results.get(i); ResultRow row = new ResultRow(curFolder, curFolder.getFolderId(), i); PortletURL rowURL = renderResponse.createRenderURL(); rowURL.setParameter("struts_action", "/portlet_configuration/edit_configuration"); rowURL.setParameter("redirect", redirect); rowURL.setParameter("backURL", redirect); rowURL.setParameter("portletResource", portletResource); rowURL.setParameter("typeSelection", DLFileEntry.class.getName()); rowURL.setParameter("assetParentId", String.valueOf(curFolder.getFolderId())); // Name StringBuilder sb = new StringBuilder(); sb.append(""); sb.append(""); sb.append(curFolder.getName()); sb.append(""); if (Validator.isNotNull(curFolder.getDescription())) { sb.append("
"); sb.append(curFolder.getDescription()); } row.addText(sb.toString(), rowURL); // Statistics List subfolderIds = new ArrayList(); subfolderIds.add(new Long(curFolder.getFolderId())); DLFolderLocalServiceUtil.getSubfolderIds(subfolderIds, scopeGroupId, curFolder.getFolderId()); int foldersCount = subfolderIds.size() - 1; int fileEntriesCount = DLFileEntryLocalServiceUtil.getFoldersFileEntriesCount(subfolderIds); row.addText(String.valueOf(foldersCount), rowURL); row.addText(String.valueOf(fileEntriesCount), rowURL); // Add result row resultRows.add(row); } %>
<% headerNames.clear(); headerNames.add("document"); headerNames.add("size"); headerNames.add("downloads"); headerNames.add("locked"); searchContainer = new SearchContainer(renderRequest, null, null, "cur2", SearchContainer.DEFAULT_DELTA, portletURL, headerNames, "there-are-no-documents"); total = DLFileEntryLocalServiceUtil.getFileEntriesCount(folder.getFolderId()); searchContainer.setTotal(total); results = DLFileEntryLocalServiceUtil.getFileEntries(folder.getFolderId(), searchContainer.getStart(), searchContainer.getEnd()); searchContainer.setResults(results); resultRows = searchContainer.getResultRows(); for (int i = 0; i < results.size(); i++) { DLFileEntry fileEntry = (DLFileEntry)results.get(i); fileEntry = fileEntry.toEscapedModel(); ResultRow row = new ResultRow(fileEntry, fileEntry.getFileEntryId(), i); TagsAsset asset = TagsAssetLocalServiceUtil.getAsset(DLFileEntry.class.getName(), fileEntry.getFileEntryId()); StringBuilder sb = new StringBuilder(); sb.append("javascript: "); sb.append(renderResponse.getNamespace()); sb.append("selectAsset('"); sb.append(asset.getAssetId()); sb.append("', '"); sb.append(asset.getAssetId()); sb.append("', '"); sb.append(UnicodeFormatter.toString(asset.getTitle())); sb.append("', '"); sb.append(assetOrder); sb.append("');"); String rowHREF = sb.toString(); // Title and description sb = new StringBuilder(); sb.append(""); sb.append(fileEntry.getTitle()); if (Validator.isNotNull(fileEntry.getDescription())) { sb.append("
"); sb.append(fileEntry.getDescription()); } row.addText(sb.toString(), rowHREF); // Statistics row.addText(TextFormatter.formatKB(fileEntry.getSize(), locale) + "k", rowHREF); row.addText(String.valueOf(fileEntry.getReadCount()), rowHREF); // Locked boolean isLocked = LockServiceUtil.isLocked(DLFileEntry.class.getName(), DLUtil.getLockId(fileEntry.getFolderId(), fileEntry.getName())); row.addText(LanguageUtil.get(pageContext, isLocked ? "yes" : "no"), rowHREF); // Add result row resultRows.add(row); } %>
<%! public static String getBreadcrumbs(DLFolder folder, DLFileEntry fileEntry, PageContext pageContext, RenderRequest req, RenderResponse res, String portletResource, String redirect) throws Exception { if ((fileEntry != null) && (folder == null)) { folder = fileEntry.getFolder(); } PortletURL foldersURL = res.createRenderURL(); foldersURL.setParameter("struts_action", "/portlet_configuration/edit_configuration"); foldersURL.setParameter("redirect", redirect); foldersURL.setParameter("backURL", redirect); foldersURL.setParameter("portletResource", portletResource); foldersURL.setParameter("typeSelection", DLFileEntry.class.getName()); String foldersLink = "" + LanguageUtil.get(pageContext, "folders") + ""; if (folder == null) { return foldersLink; } String breadcrumbs = StringPool.BLANK; if (folder != null) { for (int i = 0;; i++) { PortletURL portletURL = res.createRenderURL(); portletURL.setParameter("struts_action", "/portlet_configuration/edit_configuration"); portletURL.setParameter("redirect", redirect); portletURL.setParameter("backURL", redirect); portletURL.setParameter("portletResource", portletResource); portletURL.setParameter("typeSelection", DLFileEntry.class.getName()); portletURL.setParameter("assetParentId", String.valueOf(folder.getFolderId())); String folderLink = "" + folder.getName() + ""; if (i == 0) { breadcrumbs = folderLink; } else { breadcrumbs = folderLink + " » " + breadcrumbs; } if (folder.isRoot()) { break; } folder = DLFolderLocalServiceUtil.getFolder(folder.getParentFolderId()); } } breadcrumbs = foldersLink + " » " + breadcrumbs; return breadcrumbs; } %>