Skip to content

Instantly share code, notes, and snippets.

@davidhund
Created December 6, 2011 14:31
Show Gist options
  • Save davidhund/1438381 to your computer and use it in GitHub Desktop.
Save davidhund/1438381 to your computer and use it in GitHub Desktop.
Time Ago (Friendly) Dutch (NL)
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:date="http://exslt.org/dates-and-times" xmlns:math="http://exslt.org/math" extension-element-prefixes="date math">
<!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Author: https://github.com/brendo
Modifications: I translated this to Dutch and created a Gist ;)
Description: See http://symphony-cms.com/download/xslt-utilities/view/25156/
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
<xsl:template name="time-ago">
<xsl:param name="date-and-time"/>
<xsl:variable name="now" select="concat($todag, 'T', $current-time, ':00')" />
<xsl:variable name="minutes" select="date:seconds(date:difference($date-and-time, $now)) div 60" />
<xsl:variable name="delta-minutes" select="math:abs($minutes)" />
<xsl:variable name="delta-in-words">
<xsl:choose>
<xsl:when test="$delta-minutes &lt; 1">
<xsl:text>minder dan een minuut</xsl:text>
</xsl:when>
<xsl:when test="$delta-minutes = 1">
<xsl:text>1 minuut</xsl:text>
</xsl:when>
<xsl:when test="$delta-minutes &lt; 45">
<xsl:value-of select="$minutes"/>
<xsl:text> minuten</xsl:text>
</xsl:when>
<xsl:when test="$delta-minutes &lt; 90">
<xsl:text>ongeveer een uur</xsl:text>
</xsl:when>
<xsl:when test="$delta-minutes &lt; 1440">
<xsl:value-of select="floor($delta-minutes div 60)"/>
<xsl:text> uren</xsl:text>
</xsl:when>
<xsl:when test="$delta-minutes &lt; 2880">
<xsl:text>een dag</xsl:text>
</xsl:when>
<xsl:when test="$delta-minutes &lt; 43200">
<xsl:value-of select="round($delta-minutes div 1440)"/>
<xsl:text> dagen</xsl:text>
</xsl:when>
<xsl:when test="$delta-minutes &lt; 86400">
<xsl:text> ongeveer een maand</xsl:text>
</xsl:when>
<xsl:when test="$delta-minutes &lt; 525600">
<xsl:value-of select="floor($delta-minutes div 43200)"/>
<xsl:text> maanden</xsl:text>
</xsl:when>
<xsl:when test="$delta-minutes &lt; 1051200">
<xsl:value-of select="floor($delta-minutes div 10080)"/>
<xsl:text> ongeveer een jaar</xsl:text>
</xsl:when>
<xsl:otherwise>
<xsl:value-of select="floor($delta-minutes div 525600)"/>
<xsl:text> jaren</xsl:text>
</xsl:otherwise>
</xsl:choose>
</xsl:variable>
<xsl:choose>
<xsl:when test='$minutes &lt; 0'>
<xsl:choose>
<xsl:when test='$delta-in-words = "een dag"'>
<xsl:text> morgen</xsl:text>
</xsl:when>
<xsl:when test='$delta-in-words = "ongeveer een maand"'>
<xsl:text> afgelopen maand</xsl:text>
</xsl:when>
<xsl:when test='$delta-in-words = "ongeveer een year"'>
<xsl:text> afgelopen year</xsl:text>
</xsl:when>
<xsl:otherwise>
<xsl:value-of select='$delta-in-words' />
<xsl:text> vanaf nu</xsl:text>
</xsl:otherwise>
</xsl:choose>
</xsl:when>
<xsl:otherwise>
<xsl:choose>
<xsl:when test='$delta-in-words = "een dag"'>
<xsl:text> gisteren</xsl:text>
</xsl:when>
<xsl:when test='$delta-in-words = "ongeveer een maand"'>
<xsl:text> volgende maand</xsl:text>
</xsl:when>
<xsl:when test='$delta-in-words = "ongeveer een year"'>
<xsl:text> volgend jaar</xsl:text>
</xsl:when>
<xsl:otherwise>
<xsl:value-of select='$delta-in-words' />
<xsl:text> geleden</xsl:text>
</xsl:otherwise>
</xsl:choose>
</xsl:otherwise>
</xsl:choose>
</xsl:template>
</xsl:stylesheet>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment