<!--                                                                  -->
<!--  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="artist_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="ArtistContractID" 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>


