Mercurial > dive4elements > gnv-client
view gnv/src/main/webapp/WEB-INF/config/templates/describe-ui.xsl @ 414:59c6c7b62e43
Automatically select entry in multi select boxes if there is only one entry to avoid input failures.
gnv/trunk@636 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author | Ingo Weinzierl <ingo.weinzierl@intevation.de> |
---|---|
date | Wed, 27 Jan 2010 13:26:02 +0000 |
parents | 0ce07c6e132c |
children | 60caaa265e2b |
line wrap: on
line source
<?xml version="1.0" encoding="UTF-8"?> <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns="http://www.w3.org/2002/xforms" xmlns:xform="http://www.w3.org/2002/xforms" xmlns:art="http://www.intevation.de/2009/artifacts" exclude-result-prefixes="xform art"> <xsl:output method="html" version="1.0" encoding="UTF-8" omit-xml-declaration="no" /> <!-- single select --> <xsl:template match="xform:select1"> <xsl:variable name="selectName" select="@ref"/> <legend><xsl:value-of select="xform:label"/></legend> <select name="{$selectName}"> <xsl:apply-templates /> </select> </xsl:template> <!-- multi select --> <xsl:template match="xform:select"> <xsl:variable name="selectName" select="@ref"/> <xsl:variable name="items" select="count(//xform:item)"/> <legend><xsl:value-of select="xform:label"/></legend> <xsl:choose> <xsl:when test="$items = 1"> <select name="{$selectName}" multiple="multiple" size="{$items}"> <xsl:apply-templates mode="selected"/> </select> </xsl:when> <xsl:when test="$items < 5"> <select name="{$selectName}" multiple="multiple" size="{$items}"> <xsl:apply-templates/> </select> </xsl:when> <xsl:otherwise> <select name="{$selectName}" multiple="multiple" size="5"> <xsl:apply-templates /> </select> </xsl:otherwise> </xsl:choose> </xsl:template> <!-- options for select --> <xsl:template match="xform:item"> <xsl:variable name="optionValue" select="xform:value"/> <xsl:choose> <xsl:when test="@selected = 'true'"> <option value="{$optionValue}" selected="selected"> <xsl:value-of select="xform:label"/> </option> </xsl:when> <xsl:otherwise> <option value="{$optionValue}"> <xsl:value-of select="xform:label"/> </option> </xsl:otherwise> </xsl:choose> </xsl:template> <xsl:template match="xform:item" mode="selected"> <xsl:variable name="optionValue" select="xform:value"/> <option value="{$optionValue}" selected="selected"> <xsl:value-of select="xform:label"/> </option> </xsl:template> <xsl:template match="xform:group"> <legend> <xsl:value-of select="xform:label"/> </legend> <table class="dynamic"> <xsl:apply-templates/> </table> </xsl:template> <xsl:template match="xform:input"> <xsl:variable name="inputValue" select="xform:value"/> <xsl:variable name="inputName" select="@ref"/> <xsl:variable name="label" select="xform:label"/> <!-- TODO: Remove this when we have the GIS interface. (slt) --> <xsl:choose> <xsl:when test="$inputName = 'mesh_linestring'"> <a href="javascript:copy_demo_wkt_line();"><xsl:text>Beispiel WKT-Linestring einfügen:</xsl:text></a><br/> </xsl:when> <xsl:when test="$inputName = 'mesh_polygon'"> <a href="javascript:copy_demo_wkt_polygon();"><xsl:text>Beispiel WKT-Polygon einfügen:</xsl:text></a><br/> </xsl:when> </xsl:choose> <tr> <xsl:choose> <xsl:when test="$label != ''"> <td><xsl:value-of select="$label"/>:</td> </xsl:when> </xsl:choose> <td> <input type="text" id="{$inputName}" name="{$inputName}" value="{$inputValue}" /><br/> </td> </tr> </xsl:template> <xsl:template match="xform:label"> <!-- do nothing here --> </xsl:template> </xsl:stylesheet>