<!--                                                                  -->
<!--  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="deductionsExist">
        <xsl:choose>
            <xsl:when test="normalize-space(/Root/Form/DeductionList/Deduction/ArtistContractDeductionID)">1</xsl:when>
            <xsl:otherwise>0</xsl:otherwise>
        </xsl:choose>
    </xsl:variable>

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

    <xsl:template name="deductionEdit">
        <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="deduction" />
            <input type="hidden" name="deductionsExist" id="deductionsExist" value="{$deductionsExist}" />
            <xsl:if test="normalize-space(Form/ArtistContract/ArtistContractID)">
                <input type="hidden" name="ContractID" value="{Form/ArtistContract/ArtistContractID}" />
            </xsl:if>
            <p class="formHeader">Enter deduction information here.</p>
            <hr />
            <xsl:if test="//*[@e]">
                <xsl:call-template name="errorMessageGeneral" />
                <xsl:call-template name="contractDeductionErrors" />
            </xsl:if>
            <xsl:call-template name="deductionSection" />
        </div>
    </xsl:template>

    <xsl:template name="deductionSection">
        <xsl:variable name="deductionCount" select="count(Form/DeductionList/Deduction)" />
        <table class="textChart withButtons" id="deductionTable">
            <tbody>
                <tr>
                    <th class="rowLeft amountCol">Amount</th>
                    <th class="typeCol">Type</th>
                    <xsl:if test="$deductionsExist = 1">
                        <th class="deleteCol">Delete?</th>
                    </xsl:if>
                </tr>
                <xsl:choose>
                    <xsl:when test="$deductionCount &gt; 0">
                        <xsl:for-each select="Form/DeductionList/Deduction">
                            <xsl:call-template name="deductionRow" />
                        </xsl:for-each>
                    </xsl:when>
                    <xsl:otherwise>
                        <xsl:call-template name="deductionRow" />
                    </xsl:otherwise>
                </xsl:choose>
            </tbody>
        </table>
        <p class="addLink" id="addDeductionLink">
            <a>
                <xsl:attribute name="href">
                    <xsl:choose>
                        <xsl:when test="$deductionCount = 0">javascript:addDeduction(1)</xsl:when>
                        <xsl:otherwise>javascript:addDeduction(<xsl:value-of select="$deductionCount" />)</xsl:otherwise>
                    </xsl:choose>
                </xsl:attribute>
                Add Another Deduction
            </a>
        </p>
    </xsl:template>

    <xsl:template name="deductionRow">
        <xsl:variable name="deductionPosition" 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_DeductionList_Deduction_{$deductionPosition}_Percent" id="Form_Term_DeductionList_Deduction_{$deductionPosition}_Percent" value="{Percent}" />%
            </td>
            <td>
                <xsl:if test="DeductionTypeID[@e]">
                    <xsl:attribute name="class">errorInput</xsl:attribute>
                </xsl:if>
                <select name="Form_DeductionList_Deduction_{$deductionPosition}_DeductionTypeID" id="Form_DeductionList_Deduction_{$deductionPosition}_DeductionTypeID">
                    <option value="">Choose...</option>
                    <xsl:variable name="deductionTypeID" select="DeductionTypeID" />
                    <xsl:for-each select="/Root/Form/DeductionTypeList/DeductionType">
                        <option value="{DeductionTypeID}">
                            <xsl:if test="DeductionTypeID = $deductionTypeID">
                                <xsl:attribute name="selected">selected</xsl:attribute>
                            </xsl:if>
                            <xsl:value-of select="Name" />
                        </option>
                    </xsl:for-each>
                </select>
            </td>
            <xsl:if test="$deductionsExist = 1">
                <td>
                    <input type="checkbox" name="Form_DeductionList_Deduction_{$deductionPosition}_Delete" id="Form_DeductionList_Deduction_{$deductionPosition}_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="contractDeductionErrors">
        <div class="error">
            <xsl:if test="//DeductionList[@e = 'field_duplicate']">Each deduction type 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="//DeductionTypeID[@e = 'field_blank']">Type must be selected.<br /></xsl:if>
            <br />
        </div>
    </xsl:template>

</xsl:stylesheet>


