<xsl:text> </xsl:text>
</xsl:template>
+ <!-- Present images in a more convenient way -->
+ <xsl:template match="div[@data-image-url]">
+ <a>
+ <xsl:attribute name="href">
+ <xsl:value-of select="concat(@data-image-url, ':orig')"/>
+ </xsl:attribute>
+ <img>
+ <xsl:attribute name="src">
+ <xsl:value-of select="@data-image-url"/>
+ </xsl:attribute>
+ </img>
+ </a>
+ </xsl:template>
+
+ <!-- Don't repeat background in embedded media content -->
+ <xsl:template match="div[contains(@class, 'PlayableMedia-player')]">
+ <xsl:copy>
+ <xsl:apply-templates select="@*"/>
+ <xsl:attribute name="style">
+ <xsl:value-of select="concat(@style, '; background-repeat: no-repeat')"/>
+ </xsl:attribute>
+ <xsl:apply-templates select="node()"/>
+ </xsl:copy>
+ </xsl:template>
+
<xsl:template match="a[@data-expanded-url]" mode="enclosure">
- <xsl:copy-of select="php:function('Tweeper::generateEnclosure', string(./@data-expanded-url))"/>
+ <xsl:copy-of select="php:functionString('Tweeper::generateEnclosure', ./@data-expanded-url)"/>
+ </xsl:template>
+
+ <xsl:template match="div[@data-image-url]" mode="enclosure">
+ <xsl:copy-of select="php:functionString('Tweeper::generateEnclosure', concat(./@data-image-url, ':orig'))"/>
</xsl:template>
<xsl:variable name="screen-name" select="//div[@class='user-actions btn-group not-following ']/@data-screen-name"/>
<xsl:variable name="item-content" select=".//p[contains(@class, 'js-tweet-text')]"/>
<xsl:variable name="item-media" select=".//div[contains(@class, 'AdaptiveMedia-container')]"/>
<xsl:variable name="item-permalink" select="concat($BaseURL, .//div[@data-permalink-path]/@data-permalink-path)"/>
+
+ <xsl:variable name="item-has-video" select="$item-media//*[contains(@class, 'PlayableMedia--video')]"/>
<item>
<title>
<xsl:value-of select="concat($user-name, ': ')"/>
+ <xsl:if test="$item-has-video">
+ <xsl:text>(Video) </xsl:text>
+ </xsl:if>
<!--
Prepend a space in front of the URLs which are not
preceded by an open parenthesis, for aestethic reasons.
-->
<xsl:variable
name="processed-title"
- select="php:function('preg_replace', '@((?<!\()(?:http[s]?://|pic.twitter.com))@', ' \1', string($item-content))"/>
+ select="php:functionString('preg_replace', '@((?<!\()(?:http[s]?://|pic.twitter.com))@', ' \1', $item-content)"/>
<!-- Also strip and … -->
<xsl:value-of select="normalize-space(translate($processed-title, ' …', ''))"/>
</title>
<description>
<xsl:value-of select="concat($user-name, ': ')"/>
<xsl:text disable-output-escaping="yes"><![CDATA[</xsl:text>
+ <xsl:if test="$item-has-video">
+ <xsl:text>(Video) </xsl:text>
+ </xsl:if>
<xsl:apply-templates select="$item-content/node()"/>
<xsl:apply-templates select="$item-media/node()"/>
<xsl:text disable-output-escaping="yes">]]></xsl:text>
</description>
<xsl:if test="$generate-enclosure = 1">
<xsl:apply-templates select="$item-content//a[@data-expanded-url]" mode="enclosure"/>
+ <xsl:apply-templates select="$item-media//div[@data-image-url]" mode="enclosure"/>
</xsl:if>
</item>
</xsl:template>