20 ~ SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER |
20 ~ SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER |
21 ~ CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, |
21 ~ CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, |
22 ~ OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE |
22 ~ OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE |
23 ~ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
23 ~ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
24 --%> |
24 --%> |
25 <%@page contentType="application/rss+xml;charset=UTF-8" pageEncoding="UTF-8" %> |
25 <%@page contentType="application/rss+xml;charset=UTF-8" pageEncoding="UTF-8" trimDirectiveWhitespaces="true" %> |
26 <%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> |
26 <%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> |
27 <%@taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %> |
27 <%@taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %> |
28 <jsp:useBean id="viewmodel" type="de.uapcore.lightpit.viewmodel.IssueFeed" scope="request"/> |
28 <jsp:useBean id="viewmodel" type="de.uapcore.lightpit.viewmodel.IssueFeed" scope="request"/> |
29 <channel> |
29 <channel> |
30 <title><c:out value="${viewmodel.project.name}"/> | <fmt:message key="feed.issues.title"/></title> |
30 <title><c:out value="${viewmodel.project.name}"/> | <fmt:message key="feed.issues.title"/></title> |
31 <description><fmt:message key="feed.issues.description"/></description> |
31 <description><fmt:message key="feed.issues.description"/></description> |
32 <link>${baseHref}projects/${viewmodel.project.node}</link> |
32 <link>${baseHref}projects/${viewmodel.project.node}</link> |
33 <language>${pageContext.response.locale.language}</language> |
33 <language>${pageContext.response.locale.language}</language> |
|
34 <pubDate><fmt:formatDate value="${viewmodel.lastModified}" pattern="EEE, dd MMM yyyy HH:mm:ss zzz" /></pubDate> |
|
35 <lastBuildDate><fmt:formatDate value="${viewmodel.lastModified}" pattern="EEE, dd MMM yyyy HH:mm:ss zzz" /></lastBuildDate> |
34 |
36 |
35 <c:forEach items="${viewmodel.issues}" var="issue"> |
37 <c:forEach items="${viewmodel.issues}" var="issue"> |
36 <item> |
38 <item> |
37 <title><c:if test="${not empty issue.component}"><c:out value="${issue.component.name}"/> - </c:if><c:out value="${issue.subject}"/></title> |
39 <title><c:if test="${not empty issue.component}"><c:out value="${issue.component.name}"/> - </c:if><c:out value="${issue.subject}"/></title> |
38 <description><c:out value="${issue.description}"/></description> |
40 <description><c:choose> |
|
41 <c:when test="${issue.created eq issue.updated}"> |
|
42 <fmt:message key="feed.issues.created"/> |
|
43 </c:when> |
|
44 <c:otherwise> |
|
45 <fmt:message key="feed.issues.updated"/> |
|
46 </c:otherwise> |
|
47 </c:choose></description> |
39 <category><fmt:message key="issue.category.${issue.category}"/></category> |
48 <category><fmt:message key="issue.category.${issue.category}"/></category> |
40 <link>${baseHref}projects/${issue.project.node}/issues/-/${empty issue.component ? '-' : issue.component.node}/${issue.id}</link> |
49 <link>${baseHref}projects/${issue.project.node}/issues/-/${empty issue.component ? '-' : issue.component.node}/${issue.id}</link> |
41 <guid isPermaLink="true">${baseHref}projects/${issue.project.node}/issues/-/-/${issue.id}</guid> |
50 <guid isPermaLink="true">${baseHref}projects/${issue.project.node}/issues/-/-/${issue.id}</guid> |
42 <pubDate><fmt:formatDate value="${issue.updated}" pattern="EEE, dd MMM yyyy HH:mm:ss zzz" /></pubDate> |
51 <pubDate><fmt:formatDate value="${issue.updated}" pattern="EEE, dd MMM yyyy HH:mm:ss zzz" /></pubDate> |
43 </item> |
52 </item> |