List of usage examples for com.liferay.portal.kernel.util StringPool SLASH
String SLASH
To view the source code for com.liferay.portal.kernel.util StringPool SLASH.
Click Source Link
From source file:com.liferay.wiki.engine.html.internal.HtmlEngine.java
License:Open Source License
private Map<String, Boolean> _getOutgoingLinks(WikiPage page) throws PortalException { if (Validator.isNull(page.getContent())) { return Collections.emptyMap(); }/* w ww . j a v a 2s. c o m*/ Map<String, Boolean> links = new HashMap<>(); Source source = new Source(page.getContent()); List<StartTag> startTags = source.getAllStartTags("a"); for (StartTag startTag : startTags) { String href = startTag.getAttributeValue("href"); if (Validator.isNull(href)) { continue; } int pos = href.lastIndexOf(_friendlyURLMapping); if (pos == -1) { continue; } String friendlyURL = href.substring(pos + _friendlyURLMapping.length()); if (friendlyURL.endsWith(StringPool.SLASH)) { friendlyURL = friendlyURL.substring(0, friendlyURL.length() - 1); } Map<String, String> routeParameters = new HashMap<>(); if (!_router.urlToParameters(friendlyURL, routeParameters)) { if (_log.isWarnEnabled()) { _log.warn("No route could be found to match URL " + friendlyURL); } continue; } String title = routeParameters.get("title"); String nodeName = routeParameters.get("nodeName"); if (Validator.isNull(title) || Validator.isNull(nodeName)) { continue; } try { _wikiNodeLocalService.getNode(page.getGroupId(), nodeName); links.put(StringUtil.toLowerCase(title), Boolean.TRUE); } catch (NoSuchNodeException nsne) { if (_log.isWarnEnabled()) { _log.warn(nsne.getMessage()); } } } return links; }
From source file:com.liferay.wiki.engine.markdown.MarkdownEngine.java
License:Open Source License
@Override public Map<String, Boolean> getOutgoingLinks(WikiPage page) throws PageContentException { String content = convert(page, null, null, null); if (Validator.isNull(content)) { return Collections.emptyMap(); }/*from w w w . j ava 2s . c o m*/ Map<String, Boolean> links = new HashMap<>(); Source source = new Source(content); List<StartTag> startTags = source.getAllStartTags("a"); for (StartTag startTag : startTags) { String href = startTag.getAttributeValue("href"); if (Validator.isNull(href)) { continue; } int pos = href.lastIndexOf(_friendlyURLMapping); if (pos == -1) { continue; } String friendlyURL = href.substring(pos + _friendlyURLMapping.length()); if (friendlyURL.endsWith(StringPool.SLASH)) { friendlyURL = friendlyURL.substring(0, friendlyURL.length() - 1); } Map<String, String> routeParameters = new HashMap<>(); if (!_router.urlToParameters(friendlyURL, routeParameters)) { if (_log.isWarnEnabled()) { _log.warn("No route could be found to match URL " + friendlyURL); } continue; } String title = routeParameters.get("title"); String nodeName = routeParameters.get("nodeName"); if (Validator.isNull(title) || Validator.isNull(nodeName)) { continue; } try { _wikiNodeLocalService.getNode(page.getGroupId(), nodeName); links.put(StringUtil.toLowerCase(title), Boolean.TRUE); } catch (PortalException pe) { if (_log.isWarnEnabled()) { _log.warn(pe.getMessage()); } } } return links; }
From source file:com.liferay.wiki.importer.impl.mediawiki.MediaWikiImporter.java
License:Open Source License
protected String translateMediaWikiImagePaths(String content) { return content.replaceAll(_imagesPattern.pattern(), "$1$2" + SHARED_IMAGES_TITLE + StringPool.SLASH + "$3$4"); }
From source file:com.liferay.wiki.service.impl.WikiPageLocalServiceImpl.java
License:Open Source License
protected String getPageURL(WikiPage page, ServiceContext serviceContext) throws PortalException { HttpServletRequest request = serviceContext.getRequest(); if (request == null) { return StringPool.BLANK; }/* w w w . j a v a2 s.c o m*/ String layoutFullURL = LayoutURLUtil.getLayoutURL(page.getGroupId(), WikiPortletKeys.WIKI, serviceContext); if (Validator.isNotNull(layoutFullURL)) { return layoutFullURL + Portal.FRIENDLY_URL_SEPARATOR + "wiki/" + page.getNodeId() + StringPool.SLASH + HttpUtil.encodeURL(WikiEscapeUtil.escapeName(page.getTitle())); } else { PortletURL portletURL = PortalUtil.getControlPanelPortletURL(request, WikiPortletKeys.WIKI_ADMIN, PortletRequest.RENDER_PHASE); portletURL.setParameter("mvcRenderCommandName", "/wiki/view_page_activities"); portletURL.setParameter("nodeId", String.valueOf(page.getNodeId())); portletURL.setParameter("title", page.getTitle()); return portletURL.toString(); } }
From source file:com.liferay.wiki.service.impl.WikiPageServiceImpl.java
License:Open Source License
protected String exportToRSS(String name, String description, String type, double version, String displayStyle, String feedURL, String entryURL, String attachmentURLPrefix, List<WikiPage> pages, boolean diff, Locale locale) throws PortalException { SyndFeed syndFeed = new SyndFeedImpl(); syndFeed.setDescription(description); List<SyndEntry> syndEntries = new ArrayList<>(); syndFeed.setEntries(syndEntries);/* www .jav a 2 s . com*/ WikiPage latestPage = null; StringBundler sb = new StringBundler(6); for (WikiPage page : pages) { SyndEntry syndEntry = new SyndEntryImpl(); String author = PortalUtil.getUserName(page); syndEntry.setAuthor(author); SyndContent syndContent = new SyndContentImpl(); syndContent.setType(RSSUtil.ENTRY_TYPE_DEFAULT); sb.setIndex(0); sb.append(entryURL); if (entryURL.endsWith(StringPool.SLASH)) { sb.append(HttpUtil.encodeURL(page.getTitle())); } if (diff) { if ((latestPage != null) || (pages.size() == 1)) { sb.append(StringPool.QUESTION); sb.append(PortalUtil.getPortletNamespace(WikiPortletKeys.WIKI)); sb.append("version="); sb.append(page.getVersion()); String value = null; if (latestPage == null) { value = wikiEngineRenderer.convert(page, null, null, attachmentURLPrefix); } else { try { value = wikiEngineRenderer.diffHtml(latestPage, page, null, null, attachmentURLPrefix); } catch (PortalException pe) { throw pe; } catch (SystemException se) { throw se; } catch (Exception e) { throw new SystemException(e); } } syndContent.setValue(value); syndEntry.setDescription(syndContent); syndEntries.add(syndEntry); } } else { String value = null; WikiGroupServiceOverriddenConfiguration wikiGroupServiceOverriddenConfiguration = configurationProvider .getConfiguration(WikiGroupServiceOverriddenConfiguration.class, new GroupServiceSettingsLocator(page.getGroupId(), WikiConstants.SERVICE_NAME)); if (displayStyle.equals(RSSUtil.DISPLAY_STYLE_ABSTRACT)) { value = StringUtil.shorten(HtmlUtil.extractText(page.getContent()), wikiGroupServiceOverriddenConfiguration.rssAbstractLength(), StringPool.BLANK); } else if (displayStyle.equals(RSSUtil.DISPLAY_STYLE_TITLE)) { value = StringPool.BLANK; } else { value = wikiEngineRenderer.convert(page, null, null, attachmentURLPrefix); } syndContent.setValue(value); syndEntry.setDescription(syndContent); syndEntries.add(syndEntry); } syndEntry.setLink(sb.toString()); syndEntry.setPublishedDate(page.getCreateDate()); String title = page.getTitle() + StringPool.SPACE + page.getVersion(); if (page.isMinorEdit()) { title += StringPool.SPACE + StringPool.OPEN_PARENTHESIS + LanguageUtil.get(locale, "minor-edit") + StringPool.CLOSE_PARENTHESIS; } syndEntry.setTitle(title); syndEntry.setUpdatedDate(page.getModifiedDate()); syndEntry.setUri(sb.toString()); latestPage = page; } syndFeed.setFeedType(RSSUtil.getFeedType(type, version)); List<SyndLink> syndLinks = new ArrayList<>(); syndFeed.setLinks(syndLinks); SyndLink syndLinkSelf = new SyndLinkImpl(); syndLinks.add(syndLinkSelf); syndLinkSelf.setHref(feedURL); syndLinkSelf.setRel("self"); syndFeed.setPublishedDate(new Date()); syndFeed.setTitle(name); syndFeed.setUri(feedURL); try { return RSSUtil.export(syndFeed); } catch (FeedException fe) { throw new SystemException(fe); } }
From source file:com.liferay.wiki.web.internal.portlet.action.GetPageAttachmentAction.java
License:Open Source License
@Override public String execute(HttpServletRequest request, HttpServletResponse response) throws Exception { try {/*from w ww .j a v a 2 s. c o m*/ long nodeId = ParamUtil.getLong(request, "nodeId"); String title = ParamUtil.getString(request, "title"); String fileName = ParamUtil.getString(request, "fileName"); if (fileName.startsWith(MediaWikiImporter.SHARED_IMAGES_TITLE + StringPool.SLASH)) { String[] fileNameParts = fileName.split(MediaWikiImporter.SHARED_IMAGES_TITLE + StringPool.SLASH); fileName = fileNameParts[1]; title = MediaWikiImporter.SHARED_IMAGES_TITLE; } int status = ParamUtil.getInteger(request, "status", WorkflowConstants.STATUS_APPROVED); getFile(nodeId, title, fileName, status, request, response); return null; } catch (Exception e) { if ((e instanceof NoSuchPageException) || (e instanceof NoSuchFileException)) { if (_log.isWarnEnabled()) { _log.warn(e); } } else { PortalUtil.sendError(e, request, response); } return null; } }
From source file:com.liferay.wiki.web.internal.portlet.action.RSSAction.java
License:Open Source License
@Override protected byte[] getRSS(HttpServletRequest request) throws Exception { ThemeDisplay themeDisplay = (ThemeDisplay) request.getAttribute(WebKeys.THEME_DISPLAY); long nodeId = ParamUtil.getLong(request, "nodeId"); String title = ParamUtil.getString(request, "title"); int max = ParamUtil.getInteger(request, "max", SearchContainer.DEFAULT_DELTA); String type = ParamUtil.getString(request, "type", RSSUtil.FORMAT_DEFAULT); double version = ParamUtil.getDouble(request, "version", RSSUtil.VERSION_DEFAULT); String displayStyle = ParamUtil.getString(request, "displayStyle", RSSUtil.DISPLAY_STYLE_DEFAULT); String layoutFullURL = PortalUtil.getLayoutFullURL(themeDisplay.getScopeGroupId(), WikiPortletKeys.WIKI); StringBundler sb = new StringBundler(4); sb.append(layoutFullURL);/*w w w. j a v a 2 s. com*/ sb.append(Portal.FRIENDLY_URL_SEPARATOR); sb.append("wiki/"); sb.append(nodeId); String feedURL = sb.toString(); String entryURL = feedURL + StringPool.SLASH + title; Locale locale = themeDisplay.getLocale(); String rss = StringPool.BLANK; if (nodeId > 0) { String attachmentURLPrefix = WikiUtil.getAttachmentURLPrefix(themeDisplay.getPathMain(), themeDisplay.getPlid(), nodeId, title); if (Validator.isNotNull(title)) { rss = _wikiPageService.getPagesRSS(nodeId, title, max, type, version, displayStyle, feedURL, entryURL, attachmentURLPrefix, locale); } else { rss = _wikiPageService.getNodePagesRSS(nodeId, max, type, version, displayStyle, feedURL, entryURL, attachmentURLPrefix); } } return rss.getBytes(StringPool.UTF8); }
From source file:com.liferay.wiki.web.internal.portlet.route.WikiFriendlyURLMapper.java
License:Open Source License
@Override public String buildPath(LiferayPortletURL liferayPortletURL) { Map<String, String> routeParameters = new HashMap<>(); buildRouteParameters(liferayPortletURL, routeParameters); addParameter(routeParameters, "nodeName", true); addParameter(routeParameters, "title", true); String friendlyURLPath = router.parametersToUrl(routeParameters); if (Validator.isNull(friendlyURLPath)) { return null; }//from w ww. j ava 2s . c o m addParametersIncludedInPath(liferayPortletURL, routeParameters); friendlyURLPath = StringPool.SLASH.concat(getMapping()).concat(friendlyURLPath); return friendlyURLPath; }
From source file:com.liferay.wol.friends.social.FriendsActivityInterpreter.java
License:Open Source License
protected SocialActivityFeedEntry doInterpret(SocialActivity activity, ThemeDisplay themeDisplay) throws Exception { String creatorUserName = getUserName(activity.getUserId(), themeDisplay); String receiverUserName = getUserName(activity.getReceiverUserId(), themeDisplay); User creatorUser = UserLocalServiceUtil.getUserById(activity.getUserId()); User receiverUser = UserLocalServiceUtil.getUserById(activity.getReceiverUserId()); int activityType = activity.getType(); // Link//from w w w .j a v a 2 s . com StringBuilder sb = new StringBuilder(); sb.append(themeDisplay.getURLPortal()); sb.append(themeDisplay.getPathFriendlyURLPublic()); sb.append(StringPool.SLASH); sb.append(creatorUser.getScreenName()); sb.append("/friends"); String link = sb.toString(); // Title String title = StringPool.BLANK; if (activityType == FriendsActivityKeys.ADD_FRIEND) { sb = new StringBuilder(); sb.append("<a href=\""); sb.append(themeDisplay.getURLPortal()); sb.append(themeDisplay.getPathFriendlyURLPublic()); sb.append(StringPool.SLASH); sb.append(creatorUser.getScreenName()); sb.append("/profile\">"); sb.append(creatorUserName); sb.append("</a>"); String creatorUserNameURL = sb.toString(); sb = new StringBuilder(); sb.append("<a href=\""); sb.append(themeDisplay.getURLPortal()); sb.append(themeDisplay.getPathFriendlyURLPublic()); sb.append(StringPool.SLASH); sb.append(receiverUser.getScreenName()); sb.append("/profile\">"); sb.append(receiverUserName); sb.append("</a>"); String receiverUserNameURL = sb.toString(); title = themeDisplay.translate("activity-wol-summary-add-friend", new Object[] { creatorUserNameURL, receiverUserNameURL }); } // Body String body = StringPool.BLANK; return new SocialActivityFeedEntry(link, title, body); }
From source file:com.liferay.wol.friends.social.FriendsRequestInterpreter.java
License:Open Source License
protected SocialRequestFeedEntry doInterpret(SocialRequest request, ThemeDisplay themeDisplay) throws Exception { String creatorUserName = getUserName(request.getUserId(), themeDisplay); User creatorUser = UserLocalServiceUtil.getUserById(request.getUserId()); int requestType = request.getType(); // Title//from w w w. j a v a 2 s . c o m String title = StringPool.BLANK; if (requestType == FriendsRequestKeys.ADD_FRIEND) { StringBuilder sb = new StringBuilder(); sb.append("<a href=\""); sb.append(themeDisplay.getURLPortal()); sb.append(themeDisplay.getPathFriendlyURLPublic()); sb.append(StringPool.SLASH); sb.append(creatorUser.getScreenName()); sb.append("/profile\">"); sb.append(creatorUserName); sb.append("</a>"); String creatorUserNameURL = sb.toString(); title = themeDisplay.translate("request-wol-summary-add-friend", new Object[] { creatorUserNameURL }); } // Body String body = StringPool.BLANK; return new SocialRequestFeedEntry(title, body); }