Mercurial > hg > mpdl-group
view software/eXist/webapp/mpdl/presentation/functions-mpdl.xsl @ 13:469d927b9ca7
diverse Fehlerbehebungen
author | Josef Willenborg <jwillenborg@mpiwg-berlin.mpg.de> |
---|---|
date | Tue, 19 Apr 2011 16:51:59 +0200 |
parents | d6f528ad5d96 |
children |
line wrap: on
line source
<?xml version="1.0"?> <xsl:stylesheet version="2.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:mpdl="http://www.mpiwg-berlin.mpg.de/ns/mpdl"> <xsl:function name="mpdl:showFigure"> <xsl:param name="digilibAvailable"/> <xsl:param name="figureFileName"/> <xsl:param name="figureNumber"/> <xsl:param name="figureCaption"/> <xsl:param name="figureDescription"/> <xsl:param name="figureVariables"/> <xsl:param name="class"/> <xsl:variable name="fullFigureFileName"> <xsl:choose> <xsl:when test="$figureFileName != ''"><xsl:value-of select="concat($figuresImageDirectory, '/', $figureFileName)"/></xsl:when> <xsl:otherwise><xsl:value-of select="$figuresImageDirectory"/></xsl:otherwise> </xsl:choose> </xsl:variable> <xsl:variable name="nausikaaURLDlInfo" select="concat('http://nausikaa2.mpiwg-berlin.mpg.de/digitallibrary/dlInfo-xml.jsp?fn=', $fullFigureFileName)"/> <xsl:variable name="testFigureResult"> <xsl:choose> <xsl:when test="$digilibAvailable = 'true'"><xsl:value-of select="unparsed-text($nausikaaURLDlInfo)"/></xsl:when> <xsl:otherwise><xsl:value-of select="''"/></xsl:otherwise> </xsl:choose> </xsl:variable> <xsl:variable name="testFigureResultParamImgFn" select="substring-before(substring-after($testFigureResult, 'parameter name="img.fn" value="'), '"')"/> <xsl:variable name="figureIsAvailable"> <xsl:choose> <xsl:when test="$testFigureResultParamImgFn = ''"><xsl:value-of select="'false'"/></xsl:when> <xsl:otherwise><xsl:value-of select="'true'"/></xsl:otherwise> </xsl:choose> </xsl:variable> <xsl:variable name="figureWidth"> <xsl:choose> <xsl:when test="$collectionName = 'archimedes' or contains($class, 'float none')"><xsl:value-of select="'400'"/></xsl:when> <xsl:when test="$collectionName = 'echo'"><xsl:value-of select="'200'"/></xsl:when> <xsl:otherwise><xsl:value-of select="'200'"/></xsl:otherwise> </xsl:choose> </xsl:variable> <xsl:variable name="figureHeight"> <xsl:choose> <xsl:when test="$collectionName = 'archimedes' or contains($class, 'float none')"><xsl:value-of select="'400'"/></xsl:when> <xsl:when test="$collectionName = 'echo'"><xsl:value-of select="'200'"/></xsl:when> <xsl:otherwise><xsl:value-of select="'200'"/></xsl:otherwise> </xsl:choose> </xsl:variable> <xsl:variable name="figureBorder" select="'border:1px;'"/> <xsl:variable name="style"> <xsl:choose> <xsl:when test="$figureIsAvailable = 'true'"><xsl:value-of select="$figureBorder"/></xsl:when> <xsl:otherwise><xsl:value-of select="concat($figureBorder, 'width:', $figureWidth, ';')"/></xsl:otherwise> </xsl:choose> </xsl:variable> <xsl:if test="$collectionName = 'archimedes'"><br/></xsl:if> <xsl:variable name="figureContent"> <xsl:choose> <xsl:when test="$digilibAvailable = 'false'"> <img title="Could not fetch figure by nausikaa2.rz-berlin.mpg.de: please try again later" alt="Could not fetch figure by nausikaa2.rz-berlin.mpg.de: please try again later" src="images/camera.png" width="30" height="30" border="0"/> </xsl:when> <xsl:when test="$figureIsAvailable = 'true' and $figureFileName != ''"> <a href="http://echo.mpiwg-berlin.mpg.de/zogilib?fn={$fullFigureFileName}"><img alt="figure: {$figureNumber}" src="http://nausikaa2.rz-berlin.mpg.de/digitallibrary/servlet/Scaler?fn={$fullFigureFileName}&dh={$figureHeight}&dw={$figureWidth}"/></a> </xsl:when> <xsl:when test="$figureIsAvailable = 'true' and $figureFileName = ''"> <a href="http://echo.mpiwg-berlin.mpg.de/zogilib?fn={$fullFigureFileName}&pn={$figureNumber}"><img alt="figure: {$figureNumber}" src="http://nausikaa2.rz-berlin.mpg.de/digitallibrary/servlet/Scaler?fn={$fullFigureFileName}&pn={$figureNumber}&dh={$figureHeight}&dw={$figureWidth}"/></a> </xsl:when> <xsl:otherwise> <img title="Figure: {$fullFigureFileName} not scanned" alt="Figure: {$fullFigureFileName} not scanned" src="images/camera.png" width="30" height="30" border="0"/> </xsl:otherwise> </xsl:choose> </xsl:variable> <xsl:variable name="figureText" select="concat('[Figure ', $figureNumber, ']')"/> <div class="{$class}" style="{$style}"> <xsl:sequence select="$figureContent"/> <br/> <xsl:value-of select="$figureText"/> <xsl:if test="$figureCaption != ''"><xsl:value-of select="': '"/><xsl:sequence select="$figureCaption"/><br/></xsl:if> <xsl:if test="$figureDescription != ''"><xsl:sequence select="$figureDescription"/><br/></xsl:if> <xsl:if test="$figureVariables != ''"><xsl:sequence select="$figureVariables"/></xsl:if> </div> </xsl:function> <xsl:function name="mpdl:showHandwritten"> <xsl:param name="fileName"/> <xsl:param name="href"/> <xsl:variable name="handwrittenText" select="'[Handwritten]'"/> <div class="handwritten"> <img title="Handwritten: {$href} not scanned" alt="Handwritten: {$href} not scanned" src="images/camera.png" width="30" height="30" border="0"/> <br/> <xsl:value-of select="$handwrittenText"/> <br/> </div> </xsl:function> </xsl:stylesheet>