43356172bacef0170467a717d32f4645b415baa1
[utils] / crawler / kiss / src / channel-right-now-graphic.xsl
1 <?xml version="1.0" encoding="UTF-8"?>
2 <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
3   xmlns:xhtml="http://www.w3.org/1999/xhtml"
4   version="1.0">
5   
6   <xsl:output method="xml"/>
7   <xsl:strip-space elements="xhtml:a"/>
8   
9   <xsl:include href="utilities.xsl"/>
10   
11   <!-- =====================================================
12     Copying template.
13     ===================================================== -->
14   <xsl:template match="@*|node()" mode="copy">
15     <xsl:copy>
16       <xsl:apply-templates select="@*|node()" mode="copy"/>
17     </xsl:copy>
18   </xsl:template>
19   
20   <xsl:template match="/">
21     <xsl:element name="channel-right-now">
22       <xsl:apply-templates select="//xhtml:table[3]//xhtml:tr[xhtml:td[not(contains(@class, 'listCell'))]]"/>
23     </xsl:element>
24   </xsl:template>
25   
26   <xsl:template match="xhtml:tr">
27      <xsl:element name="action">
28        <xsl:attribute name="name">
29          <xsl:call-template name="string-replace">
30            <xsl:with-param name="src" select="xhtml:td[3]//xhtml:a"/>
31            <xsl:with-param name="from" select="$newline"/>
32            <xsl:with-param name="to" select="''"/>
33          </xsl:call-template>
34        </xsl:attribute>
35        <xsl:attribute name="type">
36          <xsl:text>program-info</xsl:text>
37        </xsl:attribute>
38        <xsl:attribute name="reference">
39          <xsl:value-of select="xhtml:td[3]//xhtml:a/@href"/>
40        </xsl:attribute>
41        <xsl:element name="time">
42          <xsl:call-template name="string-replace">
43            <xsl:with-param name="src" select="xhtml:td[1]"/>
44            <xsl:with-param name="from" select="$newline"/>
45            <xsl:with-param name="to" select="''"/>
46          </xsl:call-template>
47        </xsl:element>
48        <xsl:apply-templates select=".//xhtml:script"/>
49      </xsl:element>
50     <xsl:text>
51       
52     </xsl:text>
53   </xsl:template>
54   
55   <xsl:template match="xhtml:script">
56     <xsl:variable name="script">
57       <xsl:value-of select="."/>   
58     </xsl:variable>
59     <xsl:variable name="description">
60       <xsl:value-of select="substring-before(substring-after($script, '&lt;br&gt;'), '&quot;]')"/> 
61     </xsl:variable>>
62     <xsl:if test="string-length($description) > 0 ">
63       <description>
64         <xsl:value-of select="$description"/>
65       </description>
66     </xsl:if>
67      
68   </xsl:template>
69   
70 </xsl:stylesheet>