view xsls/news.xsls @ 107:ee725af08951

Two unrelated changes were erroneously committed simultaneously: - Making the rest of HTML valid. - Updating the "Converting rewrite rules" howto examples to utilize the new power of the "return" directive.
author Ruslan Ermilov <ru@nginx.com>
date Wed, 19 Oct 2011 12:39:11 +0000
parents c007b57d617c
children f31230984540
line wrap: on
line source

X:stylesheet {

X:output method="html" indent="no" encoding="utf-8"
    doctype-public="-//W3C//DTD HTML 4.01 Transitional//EN";

X:strip-space elements = "*";

<!--
  -- a current directory of a XSLT script is where the script is stored,
  -- but not where XSLT processor has been started to run the script
  -->
X:param XML = "'../xml'";
X:param YEAR;

X:var SITE = "'http://nginx.org'";
X:var LINK = "/news/@link";

X:include href = "dirname.xslt";
X:include href = "link.xslt";
X:include href = "style.xslt";
X:include href = "body.xslt";
X:include href = "menu.xslt";
X:include href = "content.xslt";


X:template = "/news" {
    <html><head>

    <link rel="alternate" type="application/rss+xml"
          title="{@title}" href="{$SITE}/index.rss" />

    <title> !{@title} X:if "$YEAR" { X:text{: } !{$YEAR} } </title>

    !style ()

    </head>

    !body (lang="/news/@lang")

    </html>
}


X:template = "event" {

    X:var year = { !{substring(../event[position()=1]/@date, 1, 4)} }
    X:var y = { !{substring(@date, 1, 4)} }

    X:if "(not($YEAR) and ($year = $y or position() &lt; 11)) or $YEAR=$y" {
        <table width="100%">

        <tr>
        <td valign="top" align="right" width="15%">
            <a name="{@date}" /> !{@date} X:text {&#xA0;&#xA0;}
        </td>
        <td> !! "para"; </td>
        </tr>

        <tr><td colspan="2">
        X:text disable-output-escaping="yes" {&amp;nbsp;}
        </td></tr>

        </table>
    }
}


}