Changeset 15:cfb2fc0ca242

Show
Ignore:
Timestamp:
04/28/11 00:16:27 (9 years ago)
Author:
František Kučera <franta-hg@…>
Branch:
default
Message:

Volitelná podpora zaostalých prohlížečů (MSIE).

Files:
5 modified

Legend:

Unmodified
Added
Removed
  • build.xml

    r11 r15  
    88        <property name="funkce" value="${šablona}/funkce/build/classes"/> 
    99         
     10        <property name="vstupníPřípona" value=".xml"/> 
     11        <property name="výstupníPřípona" value=".xhtml"/> 
     12         
    1013        <target name="generuj" description="Vygeneruje kompletní web." depends="kompiluj-funkce,stránky,agregace"> 
    1114        </target> 
    1215         
    1316        <target name="stránky" description="Vygeneruje samotné XHTML webové stránky." depends="statický-obsah">          
    14                 <xslt basedir="${vstup}" destdir="${výstup}" includes="*.xml" extension=".xhtml" style="${šablona}/stránka.xsl"> 
    15                         <param name="konfigurák" expression="../${vstup}/"/> 
     17                <xslt basedir="${vstup}" destdir="${výstup}" includes="*${vstupníPřípona}" extension="${výstupníPřípona}" style="${šablona}/stránka.xsl"> 
     18                        <param name="konfigurák" expression="../${vstup}/"/>             
     19                        <param name="podporaZaostalýchProhlížečů" expression="false"/> 
     20                        <param name="vstupníPřípona" expression="${vstupníPřípona}"/> 
     21                        <param name="výstupníPřípona" expression="${výstupníPřípona}"/> 
    1622                        <classpath location="/usr/share/java/saxonb-9.0.jar"/> 
    1723                        <classpath location="${funkce}"/> 
     
    2733                <!-- Atom --> 
    2834                <xslt in="${vstup}/web.conf" out="${výstup}/atom.xml" style="${šablona}/atom.xsl"> 
     35                        <param name="vstupníPřípona" expression="${vstupníPřípona}"/> 
     36                        <param name="výstupníPřípona" expression="${výstupníPřípona}"/> 
    2937                        <classpath location="/usr/share/java/saxonb-9.0.jar"/> 
    3038                        <classpath location="${funkce}"/> 
     
    4351                </xslt> 
    4452                 
    45                 <!-- TODO: Sitemap.xml --> 
     53                <!-- Sitemap.xml --> 
    4654                <xslt in="${výstup}/atom.xml" out="${výstup}/sitemap.xml" style="${šablona}/sitemap.xsl">                        
    4755                        <classpath location="/usr/share/java/saxonb-9.0.jar"/> 
  • vstup/css/styl.css

    r12 r15  
    2121 
    2222#nabídka {       
    23         width: 160px; 
     23        width: 10.3em; 
    2424        position: relative; 
    2525        left: -20px; 
  • vstup/záhlaví.inc

    r3 r15  
    22        <text xmlns="http://www.w3.org/1999/xhtml"> 
    33                <p class="logo"> 
    4                         [tady bude časem naše logo] 
     4                        <img src="grafika/logo.png" alt="XML Web generátor"/> 
    55                </p> 
    66    </text>     
  • šablona/atom.xsl

    r7 r15  
    88        exclude-result-prefixes="fn g j"> 
    99        <xsl:output     method="xml" indent="yes" encoding="UTF-8"/> 
     10         
     11        <xsl:param name="vstupníPřípona" select="'.xml'"/> 
     12        <xsl:param name="výstupníPřípona" select="'.xhtml'"/> 
    1013         
    1114        <xsl:template match="/">                 
     
    2427                         
    2528                        <xsl:variable name="konfigurace" select="/"/> 
    26                         <xsl:for-each select="collection('../vstup/?select=*.xml')[empty(g:stránka/g:skrytá) or not(g:stránka/g:skrytá)]"> 
     29                        <xsl:for-each select="collection(concat('../vstup/?select=*', $vstupníPřípona))[empty(g:stránka/g:skrytá) or not(g:stránka/g:skrytá)]"> 
    2730                                <entry> 
    2831                                        <title><xsl:value-of select="g:stránka/g:nadpis"/></title> 
    29                                         <xsl:variable name="soubor" select="replace(tokenize(document-uri(.), '/')[last()], '.xml', '')"/> 
    30                                         <link href="{concat($konfigurace/g:web/g:url, encode-for-uri($soubor), '.xhtml')}" /> 
     32                                        <xsl:variable name="soubor" select="replace(tokenize(document-uri(.), '/')[last()], $vstupníPřípona, '')"/> 
     33                                        <link href="{concat($konfigurace/g:web/g:url, encode-for-uri($soubor), $výstupníPřípona)}" /> 
    3134                                        <id><xsl:value-of select="concat('urn:', $konfigurace/g:web/g:kod ,':strana:', encode-for-uri($soubor))"/></id> 
    3235                                        <!--2010-10-09T20:51:04Z--> 
  • šablona/stránka.xsl

    r12 r15  
    77        xmlns:fn="http://www.w3.org/2005/xpath-functions" 
    88        xmlns:svg="http://www.w3.org/2000/svg" 
    9         exclude-result-prefixes="fn h g"> 
     9        xmlns:xs="http://www.w3.org/2001/XMLSchema" 
     10        exclude-result-prefixes="fn h g xs"> 
    1011        <xsl:output  
    1112                method="xml"  
     
    1718        <!-- Vstupní adresář: --> 
    1819        <xsl:param name="vstup" select="'../vstup/'"/> 
     20        <xsl:param name="vstupníPřípona" select="'.xml'"/> 
     21        <xsl:param name="výstupníPřípona" select="'.xhtml'"/> 
     22        <xsl:param name="vsuvkováPřípona" select="'.inc'"/> 
     23        <xsl:param name="podporaZaostalýchProhlížečů" select="false()" as="xs:boolean"/> 
    1924         
    2025        <!-- Celý dokument: --> 
     
    3237                                <div id="tělo"> 
    3338                                        <div id="záhlaví"> 
    34                                                 <xsl:apply-templates select="document(fn:encode-for-uri(concat($vstup, 'záhlaví.inc')))/g:stránka/h:text/node()"/> 
     39                                                <xsl:apply-templates select="document(fn:encode-for-uri(concat($vstup, 'záhlaví', $vsuvkováPřípona)))/g:stránka/h:text/node()"/> 
    3540                                        </div> 
    3641                                        <div id="vnitřek"> 
    3742                                                <h1><xsl:value-of select="g:stránka/g:nadpis"/></h1> 
    3843                                                <ul id="nabídka"> 
    39                                                         <xsl:for-each select="collection('../vstup/?select=*.xml')[g:stránka/g:pořadí]"> 
     44                                                        <xsl:for-each select="collection(concat('../vstup/?select=*', $vstupníPřípona))[g:stránka/g:pořadí]"> 
    4045                                                                <xsl:sort select="empty(./g:stránka/g:pořadí)"/> 
    4146                                                                <xsl:sort select="./g:stránka/g:pořadí"/> 
    4247                                                                <li> 
    4348                                                                        <xsl:variable name="xmlSoubor" select="tokenize(document-uri(.), '/')[last()]"/> 
    44                                                                         <xsl:variable name="xhtmlSoubor" select="replace($xmlSoubor, '.xml', '.xhtml')"/> 
     49                                                                        <xsl:variable name="xhtmlSoubor" select="replace($xmlSoubor, $vstupníPřípona, $výstupníPřípona)"/> 
    4550                                                                        <a href="{fn:encode-for-uri($xhtmlSoubor)}"><xsl:value-of select="./g:stránka/g:nadpis"/></a> 
    4651                                                                </li> 
     
    5257                                        </div> 
    5358                                        <div id="zápatí"> 
    54                                                 <xsl:apply-templates select="document(fn:encode-for-uri(concat($vstup, 'zápatí.inc')))/g:stránka/h:text/node()"/> 
     59                                                <xsl:apply-templates select="document(fn:encode-for-uri(concat($vstup, 'zápatí', $vsuvkováPřípona)))/g:stránka/h:text/node()"/> 
    5560                                        </div> 
    5661                                </div> 
     
    6873     
    6974    <!-- Odkazy na JavaScript a kaskádové styly --> 
    70     <xsl:template match="g:web/g:js"> 
    71         <script src="{text()}" type="text/javascript" /> 
     75    <xsl:template name="varováníRetardace"> 
     76        <xsl:if test="$podporaZaostalýchProhlížečů"> 
     77                        <xsl:comment> 
     78                                Generátor byl spuštěn v režimu podpory zaostalých prohlížečů. 
     79                                Uživatelům doporučujeme upgrade na skutečný WWW prohlížeč, 
     80                                jako je např. Firefox nebo Chromium (případně Opera či Safari). 
     81                        </xsl:comment> 
     82        </xsl:if> 
     83    </xsl:template>     
     84    <xsl:template match="g:web/g:js">            
     85        <script src="{text()}" type="text/javascript"> 
     86                <xsl:call-template name="varováníRetardace"/> 
     87        </script> 
    7288    </xsl:template> 
    7389    <xsl:template match="g:web/g:css">