Volitelná hlavička User-Agent + obrázek v XSL (jako base64).
1.1 --- a/xml/prodlužovač.xml Sat Nov 12 00:44:35 2011 +0100
1.2 +++ b/xml/prodlužovač.xml Sat Nov 12 17:02:44 2011 +0100
1.3 @@ -6,10 +6,14 @@
1.4 xsi:schemaLocation="https://trac.frantovo.cz/prodluzovac-odkazu/wiki/xmlns/konfigurace prodlužovač.xsd">
1.5
1.6 <limitPřesměrování>10</limitPřesměrování>
1.7 + <tvářitSeJakoProhlížeč>Mozilla/5.0 (X11; Linux x86_64; rv:7.0.1) Gecko/20100101 Firefox/7.0.1</tvářitSeJakoProhlížeč>
1.8
1.9 <zkracovače>
1.10 - <url popis="Klasická zkracovací služba">http://tinyurl.com/.*</url>
1.11 - <url záležíNaVelikosti="true">(http|https)://tinyurl.com/.*</url>
1.12 + <url popis="Klasická zkracovací služba">http://tinyurl\.com/.*</url>
1.13 + <url záležíNaVelikosti="true">(http|https)://tinyurl\.com/.*</url>
1.14 + <url záležíNaVelikosti="false">(http|https)://jdem\.cz/.*</url>
1.15 + <url>(http|https)://.*\.jdem\.cz/.*</url>
1.16 </zkracovače>
1.17
1.18 +
1.19 </prodlužovač>
1.20 \ No newline at end of file
2.1 --- a/xml/prodlužovač.xsd Sat Nov 12 00:44:35 2011 +0100
2.2 +++ b/xml/prodlužovač.xsd Sat Nov 12 17:02:44 2011 +0100
2.3 @@ -19,6 +19,15 @@
2.4 <xs:documentation>Seznam podporovaných zkracovačů</xs:documentation>
2.5 </xs:annotation>
2.6 </xs:element>
2.7 + <xs:element name="tvářitSeJakoProhlížeč" type="xs:string" minOccurs="0">
2.8 + <xs:annotation>
2.9 + <xs:documentation>
2.10 + Pokud je tento element přístupný, budeme v HTTP požadavcích posílat
2.11 + hlavičku „User-Agent“ a tvářit se, že jsme daný prohlížeč.
2.12 + Příklad: „Mozilla/5.0 (X11; Linux x86_64; rv:7.0.1) Gecko/20100101 Firefox/7.0.1“
2.13 + </xs:documentation>
2.14 + </xs:annotation>
2.15 + </xs:element>
2.16 </xs:all>
2.17 </xs:complexType>
2.18
2.19 @@ -26,7 +35,11 @@
2.20 <xs:sequence minOccurs="1" maxOccurs="unbounded">
2.21 <xs:element name="url" type="url">
2.22 <xs:annotation>
2.23 - <xs:documentation>Regulární výraz definující URL daného zkracovače.</xs:documentation>
2.24 + <xs:documentation>
2.25 + Regulární výraz definující URL daného zkracovače.
2.26 + Slouží k tomu, abychom nemuseli testovat (což znamená DNS+HTTP požadavek)
2.27 + všechna URL, ale jen ta, u kterých lze očekávat přesměrování jinam.
2.28 + </xs:documentation>
2.29 </xs:annotation>
2.30 </xs:element>
2.31 </xs:sequence>
2.32 @@ -45,8 +58,8 @@
2.33 <xs:documentation>
2.34 Zda musí URL vyhovovat výrazu přesně – včetně velikosti písmen.
2.35 Při neuvedení tohoto atributu nemusí – takže bude vyhovovat např.
2.36 - jak "http://example.com/index.xhtml",
2.37 - tak i "http://EXAMPLE.COM/index.xhtml".
2.38 + jak „http://example.com/index.xhtml“,
2.39 + tak i „http://EXAMPLE.COM/index.xhtml“.
2.40 </xs:documentation>
2.41 </xs:annotation>
2.42 </xs:attribute>
3.1 --- a/xml/prodlužovač.xsl Sat Nov 12 00:44:35 2011 +0100
3.2 +++ b/xml/prodlužovač.xsl Sat Nov 12 17:02:44 2011 +0100
3.3 @@ -23,20 +23,63 @@
3.4 </head>
3.5 <body>
3.6 <p>
3.7 - Maximální počet přesměrování:
3.8 + Maximální počet přesměrování:
3.9 <xsl:value-of select="p:prodlužovač/p:limitPřesměrování/text()"/>
3.10 </p>
3.11
3.12 + <xsl:choose>
3.13 + <xsl:when test="p:prodlužovač/p:tvářitSeJakoProhlížeč">
3.14 + <p>V HTTP požadavcích budeme posílat hlavičku User-Agent s hodnotou:</p>
3.15 + <pre><xsl:value-of select="p:prodlužovač/p:tvářitSeJakoProhlížeč/text()"/></pre>
3.16 + <p>Server si tedy bude myslet, že jsme tento www prohlížeč.</p>
3.17 + </xsl:when>
3.18 + <xsl:otherwise>
3.19 + <p>V HTTP požadavcích nebudeme posílat žádnou hlavičku User-Agent.</p>
3.20 + </xsl:otherwise>
3.21 + </xsl:choose>
3.22 +
3.23 +
3.24 <p>Podporované zkracovače:</p>
3.25 <ul>
3.26 <xsl:for-each select="p:prodlužovač/p:zkracovače/p:url">
3.27 - <li>
3.28 - <xsl:value-of select="text()"/>
3.29 - </li>
3.30 + <xsl:element name="li">
3.31 + <xsl:if test="@popis">
3.32 + <xsl:attribute name="title"><xsl:value-of select="@popis"/></xsl:attribute>
3.33 + </xsl:if>
3.34 +
3.35 + <code><xsl:value-of select="text()"/></code>
3.36 +
3.37 + <xsl:if test="@záležíNaVelikosti = 'true'">
3.38 + <xsl:call-template name="ikonaZáležíNaVelikosti"/>
3.39 + </xsl:if>
3.40 + </xsl:element>
3.41 </xsl:for-each>
3.42 </ul>
3.43 </body>
3.44 </html>
3.45 </xsl:template>
3.46 +
3.47 +
3.48 + <xsl:template name="ikonaZáležíNaVelikosti">
3.49 + <img alt="záleží na velikosti písmen"
3.50 + title="Záleží na velikosti písmen"
3.51 + style="margin-left: 8px;"
3.52 + src="data:image/png;base64,
3.53 + iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACm0lEQVR42o3S3UuTURwH8EUXFaYG
3.54 + WimaK23zraJ/QWLiyA2jksl0jTZFzaQZqGAMUjS1MUMMi27CkNFFdrMGTmR24Zq0mCCSsGmytnRv
3.55 + zHTqdNq333MICZ8bLz485znnPN/nd14EAI7k2pPr5nxdMXIb8iHUiiCsFSPvQYH5yAGFj6/g/dJp
3.56 + WMLJmPidwmTdywMbHBwcPE6UxEYWSIC4yACRkyRRc6GV+0A1nH4QcvauEAKDwZBMnCaTCXNzc1he
3.57 + Xobf78fi4iIcDgfGxsbQ2d/pFz8sdt95cQ5vZpOgGDjDQtJu50DQ3d390mKxIBwOIxKJcFg7Go0y
3.58 + P34toaxfCtnzTDz9dAq3DOlILc9iyzmvuAiBXq/3+nw+NnlychJdXV2gvu3e3l7YbDZo392HtP8C
3.59 + 6l6fwM2+DGSrL3/PVF6ayKzORY5GZBa0t7d/IPjHRtIAcP2FHR0df1Rvq1FuFKKsLxtFrVcXRM1F
3.60 + Gf9v7kFDp9OJSR0ZJl/a2triZrMZK9EV1I5qIXl2AyX6EuHh0xE0NjYeI61U9p7VasX8/DxCoRDi
3.61 + 8TgSicSBlpYW0LyTvACtVvtoaGgIGxsb2N3dxdbWFtxuN7gwo9GIYDCI/f19NDU1gebyA2pqahyr
3.62 + q6vsL+Pj41Cr1THqM5EGMksnwoI1Gg3onR9QVVW1F4vFsL6+DoVCsV1ZWZnCDdBTrFKpdgKBANbW
3.63 + 1qBUKkF9/ICKiooglcxKpTWC3j+TjzQ5xt2Pzc1NFl5fX8/GeAFSqXSU2wMqlYVMT09jamoK3LK8
3.64 + Xi/sdju3P6wKuVwOXoBEIskoLS392dPTA6fTya6xy+XCyMgIZDLZDi0DMzMz8Hg8oJ8leAEAuJBU
3.65 + 0ke+kRBxklekgNSSr8THtQ8H/AW7B5q5mb/toAAAAABJRU5ErkJggg==
3.66 + "/>
3.67 + <!-- cat /usr/share/icons/oxygen/16x16/actions/format-font-size-more.png | base64 -->
3.68 + </xsl:template>
3.69
3.70 </xsl:stylesheet>
3.71 \ No newline at end of file