From 581f0be64f6648c450876135cec92e0071d37771 Mon Sep 17 00:00:00 2001 From: vv01f Date: Sat, 29 Mar 2014 18:59:32 +0100 Subject: [PATCH] Revert "don't publish news items with future @date" issues with calendar-summary and calendar This reverts commit 4b74bd5a880a6cf5d148925392cfee50379f9615. --- documentation/conventions.md | 5 ----- documentation/todo.md | 4 ++++ xsl/atom.xsl | 4 ++-- xsl/calendar-summary.xsl | 3 +-- xsl/portal2items.xsl | 36 ++++++++++++++++++++---------------- xsl/rss.xsl | 4 ++-- xsl/xhtml5.xsl | 21 ++------------------- 7 files changed, 31 insertions(+), 46 deletions(-) diff --git a/documentation/conventions.md b/documentation/conventions.md index b84a2716d..61b3254b1 100644 --- a/documentation/conventions.md +++ b/documentation/conventions.md @@ -9,8 +9,3 @@ XSL-Stylesheet - Wird IMMER explizit als Parameter an xsltproc übergeben, nicht als Attribut in xml-stylesheet-Tag - Begründung: Ermöglicht Transformation in verschiedene Formate durch Angabe des entsprechenden XSL-Stylesheets (z.B. item-XML-Datei in HTML oder alternativ in RSS transformieren) - -== news pre-posting - -some news shall be written right now but published later, thats why the date next to author of the news/events item etc. should be compared and if greater than the current one not considered for publication yet. - diff --git a/documentation/todo.md b/documentation/todo.md index 748f4b135..bd5de90a6 100644 --- a/documentation/todo.md +++ b/documentation/todo.md @@ -1,5 +1,9 @@ = was man noch machen könnte +== news pre-posting + +some news shall be written right now but published later, thats why the date next to author of the news/events item etc. should be compared and if greater than the current one not considered for publication yet. + == potal-mediagoblin eine option für das bekanntgeben eines neuen Bilcdes fehlt im Mediagobline. Derzeit werden alle Bilder von bestimmten Nutzern (john, astro, lachmoewe, bigalex) bekannt gegeben.. nuja. diff --git a/xsl/atom.xsl b/xsl/atom.xsl index dc06cc92a..37098d652 100644 --- a/xsl/atom.xsl +++ b/xsl/atom.xsl @@ -41,8 +41,8 @@ + starts-with(substring-after(substring-after($newsfile, '/'), '/'), $prefix)"> + diff --git a/xsl/calendar-summary.xsl b/xsl/calendar-summary.xsl index 02cab05c3..0235ba0de 100644 --- a/xsl/calendar-summary.xsl +++ b/xsl/calendar-summary.xsl @@ -31,8 +31,7 @@ - + <xsl:choose> diff --git a/xsl/portal2items.xsl b/xsl/portal2items.xsl index 3ec3419e1..c76d30564 100644 --- a/xsl/portal2items.xsl +++ b/xsl/portal2items.xsl @@ -1,7 +1,6 @@ <?xml version="1.0" encoding="utf-8"?> <xsl:stylesheet version="1.0" xmlns:atom="http://www.w3.org/2005/Atom" - xmlns:date="http://exslt.org/dates-and-times" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> <xsl:output method="xml" encoding="utf-8" indent="yes"/> @@ -18,13 +17,10 @@ <!-- Extract from news --> <xsl:for-each select="document('../news.xml')//newsfile"> - <xsl:if test="starts-with(date:difference(date:date-time(), @date), '-')"> - <xsl:apply-templates select="document(concat('../', .))/item" - mode="news"> - <xsl:with-param name="link" - select="concat(substring-before(substring-after(., 'content/'), '.xml'), '.html')"/> - </xsl:apply-templates> - </xsl:if> + <xsl:apply-templates select="document(concat('../', .))/item" mode="news"> + <xsl:with-param name="link" + select="concat(substring-before(substring-after(., 'content/'), '.xml'), '.html')"/> + </xsl:apply-templates> </xsl:for-each> </portal> </xsl:template> @@ -89,15 +85,23 @@ </xsl:template> <xsl:template match="item" mode="news"> - <xsl:param name="link"/> + <xsl:param name="link"/> - <item date="{@date}" class="news"> - <header>News</header> - <footer>by <xsl:value-of select="@author"/></footer> - <content-text><xsl:value-of select="@title"/></content-text> - <xsl:apply-templates select=".//image[1]" mode="news"/> - <link><xsl:value-of select="$link"/></link> - </item> + <!-- date cannot be compared (to current date) in xslt 1.0 without a param handed over --> + <!-- current-date() as of XSLT 2.0 --> + <!-- + <xsl:if test="{@date}"> + --> + <item date="{@date}" class="news"> + <header>News</header> + <footer>by <xsl:value-of select="@author"/></footer> + <content-text><xsl:value-of select="@title"/></content-text> + <xsl:apply-templates select=".//image[1]" mode="news"/> + <link><xsl:value-of select="$link"/></link> + </item> + <!-- + </xsl:if> + --> </xsl:template> <xsl:template match="item/image[1]" mode="news"> diff --git a/xsl/rss.xsl b/xsl/rss.xsl index 0c2529032..3806e2d50 100644 --- a/xsl/rss.xsl +++ b/xsl/rss.xsl @@ -39,8 +39,8 @@ <xsl:sort select="date:seconds(document(.)/item/@date)" data-type="number" order="descending" /> <xsl:variable name="newsfile" select="."/> <xsl:if test="(position() <= $maxitems) and - starts-with(substring-after(substring-after($newsfile, '/'), '/'), $prefix) and - starts-with(date:difference(date:date-time(), document(.)/item/@date), '-')"> + starts-with(substring-after(substring-after($newsfile, '/'), '/'), $prefix)"> + <xsl:apply-templates select="document(.)/item"> <xsl:with-param name="newsfile" select="$newsfile"/> </xsl:apply-templates> diff --git a/xsl/xhtml5.xsl b/xsl/xhtml5.xsl index 606fb7ed3..8547de3cd 100644 --- a/xsl/xhtml5.xsl +++ b/xsl/xhtml5.xsl @@ -135,14 +135,7 @@ <xsl:for-each select="newsfile"> <xsl:sort select="date:seconds(document(concat('../', .))/item/@date)" data-type="number" order="descending" /> - <xsl:if test="position() <= 10 and - not(starts-with( - date:difference( - document(concat('../', .))/item/@date, - date:date-time() - ), - '-' - ))"> + <xsl:if test="position() <= 10"> <xsl:variable name="newsfile"><xsl:value-of select="."/></xsl:variable> <xsl:variable name="itemposition" select="position()"/> @@ -259,17 +252,7 @@ <xsl:variable name="newsfile" select="."/> <xsl:for-each select="document(concat('../', $newsfile))/item"> - <xsl:if test="((string-length($prefix) = 0) or - starts-with($newsfile, concat('content/news/', $prefix))) and - (($details != 'resources-only') or - (count(resource) > 0)) and - starts-with( - date:difference( - document(concat('../', .))/item/@date, - date:date-time() - ), - '-' - )"> + <xsl:if test="((string-length($prefix) = 0) or starts-with($newsfile, concat('content/news/', $prefix))) and (($details != 'resources-only') or (count(resource) > 0))"> <div> <xsl:if test="($details = 'event') and event">