Show
Ignore:
Timestamp:
07/05/12 20:13:56 (12 years ago)
Author:
František Kučera <franta-hg@…>
Branch:
default
Message:

#20 Skriptování: výstupní formáty: text (prostý), xhtml (fragment), xml (celý dokument, může mít XML deklaraci).

Files:
1 modified

Legend:

Unmodified
Added
Removed
  • šablona/makra/skriptování.xsl

    r107 r108  
    3333                * 
    3434                @jazyk programovací jazyk, např. bash, perl, php (nepovinné, pokud je vyplněn atribut src) 
    35                 @výstup formát výstupu skriptu: text (výchozí) | xml (musí být validním fragmentem XML) 
     35                @výstup formát výstupu skriptu: 
     36                        text – libovolný text, escapujeme (výchozí) 
     37                        xhtml – platný XML fragment, přidáme mu výchozí jmenný prostor XHTML a jmenný prostor pro makra 
     38                        xml – platný XML dokument – vhodné pro další zpracování v jiných makrech 
    3639                @src soubor se skriptem/programem (volitelný parametr – buď zadáme skript do těla elementu, nebo nastavíme tento atribut) 
    3740        --> 
     
    5154                                                                                                                                        //s:stránka/s:perex/text() 
    5255                                                                                                                                )"/> 
    53                                 <xsl:apply-templates select="$výstupSkriptu/h:html/h:body/node()"/> 
     56                                <xsl:choose> 
     57                                        <xsl:when test="@výstup = 'xml'"> 
     58                                                <!-- XML výstup zpracujeme, jak je: --> 
     59                                                <xsl:apply-templates select="$výstupSkriptu/*"/> 
     60                                        </xsl:when> 
     61                                        <xsl:otherwise> 
     62                                                <!-- Prostý text a XHTML fragmenty dostáváme zabalené v html/body --> 
     63                                                <xsl:apply-templates select="$výstupSkriptu/h:html/h:body/node()"/> 
     64                                        </xsl:otherwise> 
     65                                </xsl:choose> 
    5466                        </xsl:when> 
    5567 
     
    6072                                <xsl:message>Stránka obsahuje skripty, ale skripty jsou ignorovány – změnu lze provést ve web.conf.</xsl:message> 
    6173                        </xsl:when> 
    62                         <xsl:when test="$režim = 'vložit' and @výstup = 'xml'"> 
     74                        <xsl:when test="$režim = 'vložit' and (@výstup = 'xml' or @výstup = 'xhtml')"> 
    6375                                <xsl:message>Není možné jen tak vložit text, který měl mít výstup ve formátu XML – změnu lze provést ve web.conf</xsl:message> 
    6476                        </xsl:when> 
     
    7082                        <xsl:otherwise><!-- varovat = výchozí možnost --> 
    7183                                <xsl:choose> 
    72                                         <xsl:when test="@výstup = 'xml'"> 
     84                                        <xsl:when test="@výstup = 'xml' or @výstup = 'xhtml'"> 
    7385                                                <xsl:message>Není možné možné vložit varování na místo, kde měl být skript generující XML – změnu lze provést ve web.conf</xsl:message> 
    7486                                        </xsl:when>