view xsls/body.xsls @ 1009:135920b5c61d

Marked strings with entities in japanese translation as literal. This allows to preserve information and produce correct output if the XML parser expands entities on input. The markup is similar to english and russian versions of the document.
author Vladimir Homutov <vl@nginx.com>
date Mon, 11 Nov 2013 11:54:16 +0400
parents f8ef590048e7
children d29658e75ebe
line wrap: on
line source

<!--
  Copyright (C) Igor Sysoev
  Copyright (C) Nginx, Inc.
  -->

X:stylesheet {

X:template body (lang) {

    X:variable MENU_ALIGN = {
        X:if "$lang = 'he'" { X:text {left} } else { X:text {right} }
    }

    X:variable INDEX_ALIGN = {
        X:if "$lang = 'he'" { X:text {right} } else { X:text {left} }
    }

    <body>
    <table width="100%">
    <tr>
        <td width="70%">
            <div id="banner">
                X:if "@lang = 'he'" { X:attribute "class" { X:text{ltr} } }
                <center>
                <table>
                    <tr>
                        <td align="center">
                            <a href="http://nginx.com/products/">
                                <strong>Make your web site fast and reliable.</strong>
                            </a>
                        </td>
                    </tr>
                    <tr>
                        <td align="center">
                            <i>NGINX Plus for mission critical environments.</i>
                        </td>
                    </tr>
                </table>
                </center>
            </div>
        </td>
        <td align="right">
            X:if "@lang = 'he'" { X:attribute "align" { X:text{left} } }
            <a href="http://nginx.org">
                <img src="http://nginx.org/nginx.gif" alt="nginx" border="0"/>
            </a>
        </td>
    </tr>

    <tr>
        <td width="70%"><center><h3>
            !{@name} X:if "$YEAR" { X:text{: } !{$YEAR} }
        </h3></center></td>

        <td rowspan="2" align="{$MENU_ALIGN}" valign="top">
            <br/>

            !! "document(concat($XML, '/menu.xml'))
                         /menus/menu[@lang = $lang]/item";
        </td>

    </tr>

    <tr><td valign="top">

        X:if "$ORIGIN and document(concat($XML, '/', $ORIGIN))/*/@rev and
              (not(@rev) or
              @rev != document(concat($XML, '/', $ORIGIN))/*/@rev)"
        {
            <span>

            X:if "@lang = 'he'" { X:attribute "class" { X:text{ltr} } }

            <blockquote class="note">

            X:if "document(concat($XML, '/i18n.xml'))
                           /i18n/text[@lang = $lang]/item[@id='outdated']" {
                !! "document(concat($XML, '/i18n.xml'))
                             /i18n/text[@lang = $lang]/item[@id='outdated']";
            } else {
                !! "document(concat($XML, '/i18n.xml'))
                             /i18n/text[@lang = 'en']/item[@id='outdated']";
            }

            </blockquote>
            </span>
        }

        X:if "@toc = 'yes' and section[@id and @name]" {
            <table width="100%"><tr><td align="{$INDEX_ALIGN}">
            X:for-each "section[@id and @name]" {
                <a href="#{@id}"> !{@name} </a><br/>
                X:for-each "section[@id and @name]" {
                    X:text{&#160;&#160;&#160;&#160;&#160;}
                    <a href="#{@id}"> !{@name} </a><br/>
                }
                X:if "@id = 'directives'" {
                    X:for-each "directive[@name]" {
                        X:text{&#160;&#160;&#160;&#160;&#160;}
                        <a href="#{@name}"> !{@name} </a><br/>
                    }
                }
            }
            </td></tr></table>
        }

        !!;

        X:if "@author or @editor or @translator" {
            <table width="100%"><tr><td align="right">

            X:if "@author" {
                !{document(concat($XML, '/i18n.xml'))
                           /i18n/text[@lang = $lang]/item[@id='author']}
                X:text { } !{@author} <br/>
            }

            X:if "@editor" {
                !{document(concat($XML, '/i18n.xml'))
                           /i18n/text[@lang = $lang]/item[@id='editor']}
                X:text { } !{@editor} <br/>
            }

            X:if "@translator" {
                !{document(concat($XML, '/i18n.xml'))
                           /i18n/text[@lang = $lang]/item[@id='translator']}
                X:text { } !{@translator} <br/>
            }

            </td></tr></table>
        }

    </td></tr>

    </table>
    </body>

}

}