<% /** * 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. */ %> <% SyndFeed feed = null; try { ObjectValuePair ovp = RSSUtil.getFeed(url); feed = (SyndFeed)ovp.getValue(); if (Validator.isNull(title)) { title = HtmlUtil.escape(feed.getTitle()); } } catch (Exception e) { } %>
<% StringBuilder sb = new StringBuilder(); String feedLink = feed.getLink(); if ((feedLink == null) || (!HttpUtil.hasDomain(feedLink))) { sb.append(HttpUtil.getProtocol(url)); sb.append(Http.PROTOCOL_DELIMITER); sb.append(HttpUtil.getDomain(url)); feedLink = sb.toString() + feed.getLink(); } else { sb.append(HttpUtil.getProtocol(feedLink)); sb.append(Http.PROTOCOL_DELIMITER); sb.append(HttpUtil.getDomain(feedLink)); } String baseURL = sb.toString(); Date publishedDate = feed.getPublishedDate(); String description = feed.getDescription(); SyndImage feedImage = feed.getImage(); String feedImageLink = StringPool.BLANK; String feedImageURL = StringPool.BLANK; if (feedImage != null) { feedImageLink = feedImage.getLink(); if (!HttpUtil.hasDomain(feedImageLink)) { feedImageLink = baseURL + feedImageLink; } feedImageURL = feedImage.getUrl(); if (!HttpUtil.hasDomain(feedImageURL)) { feedImageURL = baseURL + feedImageURL; } } %>
<%= HtmlUtil.escape(description) %>
<%= feedImage.getDescription() %>
<% List entries = feed.getEntries(); for (int j = 0; j < entries.size(); j++) { SyndEntry entry = (SyndEntry)entries.get(j); String entryLink = entry.getLink(); if (Validator.isNotNull(entryLink) && !HttpUtil.hasDomain(entryLink)) { entryLink = baseURL + entryLink; } String author = entry.getAuthor(); SyndContent content = entry.getDescription(); List contents = new ArrayList(); if (content == null) { contents = entry.getContents(); } else { contents.add(content); } %>
<%= entry.getTitle() %>
<%= dateFormatDateTime.format(entry.getPublishedDate()) %>
<% for (int k = 0; k < contents.size(); k++) { content = (SyndContent)contents.get(k); if ((content != null) && Validator.isNotNull(content.getValue())) { String value = StringUtil.replace( content.getValue(), new String[] { "src=\"/", "href=\"/" }, new String[] { "src=\"" + baseURL + "/", "href=\"" + baseURL + "/" }); %> <%= value %> <% } } %>
<% if ((j + 1) >= entriesPerFeed) { break; } } %>
<%= LanguageUtil.format(pageContext, "cannot-be-found", urls[i], false) %>