<!--                                                                  -->
<!--  Copyright (C) 2006 RoyaltyShare, Inc.   All Rights Reserved     -->
<!--  $Id$  -->
<!--                                                                  -->
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0" xmlns:dyn="http://exslt.org/dynamic" xmlns:set="http://exslt.org/sets" extension-element-prefixes="dyn set">

    <xsl:variable name="regionsExist">
        <xsl:choose>
            <xsl:when test="normalize-space(/Root/Form/ContractRegionList/Region/ArtistContractRegionID)">1</xsl:when>
            <xsl:otherwise>0</xsl:otherwise>
        </xsl:choose>
    </xsl:variable>

    <xsl:template name="regionLayout">
        <script type="text/javascript" src="/production/javascript/validateContractRegion.js?t={$now}" />
        <form name="regionEdit" id="regionEdit" method="post" action="contract">
            <xsl:call-template name="regionEdit" />
            <xsl:call-template name="buttons" />
        </form>
    </xsl:template>

    <xsl:template name="regionEdit">
        <div class="section">
            <xsl:if test="Params/_inline">
                <input type="hidden" name="_inline" value="1" />
            </xsl:if>
            <input type="hidden" name="formSubmit" value="1" />
            <input type="hidden" name="Mode" value="{Params/Mode}" />
            <input type="hidden" name="c" value="region" />
            <input type="hidden" name="ContractID" value="{Form/ArtistContract/ArtistContractID}" />
            <input type="hidden" name="regionsExist" id="regionsExist" value="{$regionsExist}" />
            <p class="formHeader">Enter regions below.</p>
            <hr />
            <xsl:if test="//*[@e]">
                <xsl:call-template name="errorMessageGeneral" />
                <xsl:call-template name="contractRegionErrors" />
            </xsl:if>
            <xsl:call-template name="regionSection" />
        </div>
    </xsl:template>

    <xsl:template name="regionSection">
        <xsl:variable name="regionCount" select="count(Form/ContractRegionList/Region)" />
        <table class="textChart withButtons" id="regionTable">
            <tbody>
                <tr>
                    <th class="rowLeft amountCol">Amount</th>
                    <th class="nameCol">Name</th>
                    <xsl:if test="$regionsExist = 1">
                        <th class="deleteCol">Delete?</th>
                    </xsl:if>
                </tr>
                <xsl:choose>
                    <xsl:when test="$regionCount &gt; 0">
                        <xsl:for-each select="Form/ContractRegionList/Region">
                            <xsl:call-template name="regionRow" />
                        </xsl:for-each>
                    </xsl:when>
                    <xsl:otherwise>
                        <xsl:call-template name="regionRow" />
                    </xsl:otherwise>
                </xsl:choose>
            </tbody>
        </table>
        <p class="addLink" id="addRegionLink">
            <a>
                <xsl:attribute name="href">
                    <xsl:choose>
                        <xsl:when test="$regionCount = 0">javascript:addRegion(1)</xsl:when>
                        <xsl:otherwise>javascript:addRegion(<xsl:value-of select="$regionCount" />)</xsl:otherwise>
                    </xsl:choose>
                </xsl:attribute>
                Add Another Region
            </a>
        </p>
    </xsl:template>

    <xsl:template name="regionRow">
        <xsl:variable name="regionPosition" select="position() - 1" />
        <tr class="row{position() mod 2}">
            <td class="rowLeft">
                <xsl:if test="Percent[@e]">
                    <xsl:attribute name="class">rowLeft errorInput</xsl:attribute>
                </xsl:if>
                <input type="text" class="percentField" name="Form_ContractRegionList_Region_{$regionPosition}_Percent" id="Form_ContractRegionList_Region_{$regionPosition}_Percent" value="{Percent}" />%
            </td>
            <td>
                <xsl:if test="RegionID[@e]">
                    <xsl:attribute name="class">errorInput</xsl:attribute>
                </xsl:if>
                <select name="Form_ContractRegionList_Region_{$regionPosition}_RegionID" id="Form_ContractRegionList_Region_{$regionPosition}_RegionID">
                    <option value="">Choose...</option>
                    <xsl:variable name="regionID" select="RegionID" />
                    <xsl:for-each select="/Root/Form/RegionList/Region">
                        <option value="{RegionID}">
                            <xsl:if test="RegionID = $regionID">
                                <xsl:attribute name="selected">selected</xsl:attribute>
                            </xsl:if>
                            <xsl:value-of select="Name" />
                        </option>
                    </xsl:for-each>
                </select>
            </td>
            <xsl:if test="$regionsExist = 1">
                <td>
                    <input type="checkbox" name="Form_ContractRegionList_Region_{$regionPosition}_Delete" id="Form_ContractRegionList_Region_{$regionPosition}_Delete">
                        <xsl:if test="Delete = 'on'">
                            <xsl:attribute name="checked">checked</xsl:attribute>
                        </xsl:if>
                    </input>
                </td>
            </xsl:if>
        </tr>
    </xsl:template>

    <xsl:template name="contractRegionErrors">
        <div class="error">
            <xsl:if test="//ContractRegionList[@e = 'field_duplicate']">Each region can only be used once.<br /></xsl:if>
            <xsl:if test="//Percent[@e = 'field_blank']">Amount cannot be blank.<br /></xsl:if>
            <xsl:if test="//Percent[@e = 'field_invalid']">Amount is invalid.<br /></xsl:if>
            <xsl:if test="//RegionID[@e = 'field_blank']">Region must be selected.<br /></xsl:if>
            <br />
        </div>
    </xsl:template>

</xsl:stylesheet>
