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

    <xsl:variable name="clientID" select="/Root/User/ClientID" />
    <xsl:variable name="statusDescriptions">
        Waiting to Run:
        &lt;br&gt;
        In queue and ready to run
        &lt;br&gt;&lt;br&gt;
        Running:
        &lt;br&gt;
        In progress
        &lt;br&gt;&lt;br&gt;
        Complete:
        &lt;br&gt;
        Preliminary royalty run
        &lt;br&gt;&lt;br&gt;
        Invalid:
        &lt;br&gt;
        Royalty period invalidated, statements can be viewed but not committed
        &lt;br&gt;&lt;br&gt;
        Committed:
        &lt;br&gt;
        Royalty period closed, statements committed<xsl:if test="$area != 'uk_mech'">, payments open</xsl:if>
        &lt;br&gt;&lt;br&gt;
        Closed:
        &lt;br&gt;
        Royalty period closed, statements closed<xsl:if test="$area != 'uk_mech'">, payments closed</xsl:if>
    </xsl:variable>

    <xsl:template name="statementSuccessMessages">
        <xsl:call-template name="successMessageGeneral">
            <xsl:with-param name="successMessage">
                <xsl:if test="Messages/Message/Code = 'notification_text_saved'">Email custom notification message has been saved</xsl:if>
                <xsl:if test="Messages/Message/Code = 'form_submit_success'">Royalty run has been created successfully!</xsl:if>
                <xsl:if test="Messages/Message/Code = 'delete_success'">Royalty run has been queued for deletion!</xsl:if>
                <xsl:if test="Messages/Message/Code = 'commit_success'">Royalty run has been queued for committal!</xsl:if>
                <xsl:if test="Messages/Message/Code = 'invalidate_success'">Royalty run has been invalidated successfully!</xsl:if>
            </xsl:with-param>
        </xsl:call-template>
    </xsl:template>


    <xsl:template name="statusCodeToName">
        <xsl:param name="status" />
        <xsl:choose>
            <xsl:when test="$status = 0">Running</xsl:when>
            <xsl:when test="$status = 1">Complete</xsl:when>
            <xsl:when test="$status = 2">Committed</xsl:when>
            <xsl:when test="$status = 3">Aborted</xsl:when>
            <xsl:when test="$status = 4">Error</xsl:when>
            <xsl:when test="$status = 5">Closed</xsl:when>
            <xsl:when test="$status = 6">Waiting to Run</xsl:when>
            <xsl:when test="$status = 7">Committing</xsl:when>
            <xsl:when test="$status = 8">Deleting</xsl:when>
            <xsl:when test="$status = 9">Invalid</xsl:when>
        </xsl:choose>
    </xsl:template>

    <xsl:template name="runActions">
        <xsl:variable name="numStatements"><xsl:value-of select="translate(NumStatements, ',', '')" /><xsl:value-of select="translate(NumberOfStatements, ',', '')" /></xsl:variable>
        <xsl:variable name="runParam">
            <xsl:choose>
                <xsl:when test="$area = 'artist_royalty'">RoyaltyRunID=<xsl:value-of select="ArtistRoyaltyRunID" /></xsl:when>
                <xsl:when test="$area = 'label_royalty'">LabelRoyaltyRunID=<xsl:value-of select="LabelRoyaltyRunID" /></xsl:when>
                <xsl:when test="$area = 'uk_mech'">UKMechanicalRunID=<xsl:value-of select="UKMechanicalRunID" /></xsl:when>
                <xsl:otherwise>MechanicalRunID=<xsl:value-of select="MechanicalRunID" /></xsl:otherwise>
            </xsl:choose>
        </xsl:variable>
        <xsl:variable name="commitAccess">/Root/Access/rps/<xsl:value-of select="$area" />/commit</xsl:variable>
        <xsl:variable name="deleteAccess">/Root/Access/rps/<xsl:value-of select="$area" />/delete</xsl:variable>
        <xsl:variable name="invalidateAccess">/Root/Access/rps/<xsl:value-of select="$area" />/invalidate</xsl:variable>
        <xsl:variable name="editPayAccess">/Root/Access/rps/<xsl:value-of select="$area" />/editpay</xsl:variable>
        <xsl:variable name="distributeAccess">/Root/Access/rps/<xsl:value-of select="$area" />/distribute</xsl:variable>

        <xsl:if test="Status = 1">

            <xsl:if test="dyn:evaluate($commitAccess) = 1">
                <xsl:call-template name="commitRunLink">
                    <xsl:with-param name="runParam" select="$runParam" />
                </xsl:call-template>
            </xsl:if>

            <xsl:if test="$numStatements &gt; 0">
                <xsl:if test="dyn:evaluate($invalidateAccess) = 1">
                    <xsl:call-template name="invalidateRunLink">
                        <xsl:with-param name="runParam" select="$runParam" />
                    </xsl:call-template>
                </xsl:if>
            </xsl:if>

            <xsl:if test="dyn:evaluate($deleteAccess) = 1">
                <xsl:call-template name="deleteRunLink">
                    <xsl:with-param name="runParam" select="$runParam" />
                </xsl:call-template>
            </xsl:if>
        </xsl:if>

        <xsl:if test="dyn:evaluate($distributeAccess) = 1 and CanDistribute = 1 and $numStatements &gt; 0">
            <xsl:call-template name="distributeLink">
                <xsl:with-param name="runParam" select="$runParam" />
            </xsl:call-template>
        </xsl:if>

        <xsl:if test="Status = 2 and dyn:evaluate($editPayAccess) = 1 and $numStatements &gt; 0">
            <xsl:call-template name="editPaymentsLink">
                <xsl:with-param name="runParam" select="$runParam" />
            </xsl:call-template>
        </xsl:if>

        <xsl:if test="Status = 3 or Status = 9">
            <xsl:if test="dyn:evaluate($deleteAccess) = 1">
                <xsl:call-template name="deleteRunLink">
                    <xsl:with-param name="runParam" select="$runParam" />
                </xsl:call-template>
            </xsl:if>
        </xsl:if>
    </xsl:template>

    <xsl:template name="distributeLink">
        <xsl:param name="runParam" />
        <xsl:if test="$area = 'artist_royalty' or $area = 'mechanical'">
            <span class="Table-action-item Table-action-item-text">
                <a href="?c=distribute&amp;{$runParam}&amp;PayorID={PayorID}">Distribute Online</a>
            </span>
        </xsl:if>
    </xsl:template>

   <xsl:template name="editPaymentsLink">
       <xsl:param name="runParam" />
       <xsl:variable name="editink">
           <xsl:choose>
               <xsl:when test="$area = 'label_royalty'">
                   <xsl:text>?c=editpay&amp;</xsl:text>
                   <xsl:value-of select="$runParam" />
                   <xsl:text>&amp;Payments=1&amp;PayorID=</xsl:text>
                   <xsl:value-of select="PayorID" />
               </xsl:when>
               <xsl:otherwise>
                   <xsl:text>?c=payors&amp;</xsl:text>
                   <xsl:value-of select="$runParam" />
                   <xsl:text>&amp;Payments=1</xsl:text>
               </xsl:otherwise>
           </xsl:choose>
       </xsl:variable>
        <span class="Table-action-item Table-action-item-text">
            <a href="{$editink}">Edit Payments</a>
        </span>
   </xsl:template>

   <xsl:template name="commitRunLink">
       <xsl:param name="runParam" />

       <span class="Table-action-item Table-action-item-text">
           <xsl:choose>
               <xsl:when test="/Root/ClientTypes/ClientType[ClientTypeID = 11]/IsClientTypeFlag = 1 and ($area = 'artist_royalty' or $area = 'mechanical')">
                   <a href="javascript:confirmCommitRunWithOnlineDistribution('{$runParam}')">Commit</a>
               </xsl:when>
               <xsl:otherwise>
                   <a href="javascript:confirmCommitRun('{$runParam}')">Commit</a>
               </xsl:otherwise>
           </xsl:choose>
       </span>
   </xsl:template>

   <xsl:template name="deleteRunLink">
       <xsl:param name="runParam" />
       <span class="Table-action-item">
           <a title="Delete" class="js-tooltip" href="javascript:confirmDeleteRun('{$runParam}')">
               <xsl:call-template name="icon">
                   <xsl:with-param name="type" select="'delete'" />
                   <xsl:with-param name="role" select="'action'" />
               </xsl:call-template>
           </a>
       </span>
   </xsl:template>

   <xsl:template name="invalidateRunLink">
       <xsl:param name="runParam" />
       <span class="Table-action-item Table-action-item-text">
           <xsl:choose>
               <xsl:when test="RoyaltyRunStatus/InvalidatedRuns &gt; 7">
                   <a href="javascript:confirmInvalidateRun('{$runParam}', 'invalid')">Invalidate</a>
               </xsl:when>
               <xsl:otherwise>
                   <a href="javascript:confirmInvalidateRun('{$runParam}')">Invalidate</a>
               </xsl:otherwise>
           </xsl:choose>
       </span>
   </xsl:template>

   <xsl:template name="statementCount">
       <xsl:variable name="numStatements"><xsl:value-of select="NumStatements" /><xsl:value-of select="NumberOfStatements" /></xsl:variable>
       <xsl:variable name="runParam">
           <xsl:choose>
               <xsl:when test="$area = 'artist_royalty'">RoyaltyRunID=<xsl:value-of select="ArtistRoyaltyRunID" /></xsl:when>
               <xsl:when test="$area = 'label_royalty'">LabelRoyaltyRunID=<xsl:value-of select="LabelRoyaltyRunID" /></xsl:when>
               <xsl:when test="$area = 'uk_mech'">UKMechanicalRunID=<xsl:value-of select="UKMechanicalRunID" /></xsl:when>
               <xsl:otherwise>MechanicalRunID=<xsl:value-of select="MechanicalRunID" /></xsl:otherwise>
           </xsl:choose>
       </xsl:variable>
        <xsl:choose>
            <xsl:when test="$numStatements = 0">0</xsl:when>
            <xsl:when test="Status = 1 or Status = 2 or Status = 5 or Status = 9">
                <xsl:choose>
                    <xsl:when test="$area = 'label_royalty'">
                        <a href="?c=show&amp;{$runParam}&amp;PayorID={PayorID}">
                            <xsl:value-of select="$numStatements" />
                        </a>
                    </xsl:when>
                    <xsl:when test="$area = 'uk_mech'">
                        <a href="?c=show&amp;{$runParam}">
                            <xsl:value-of select="$numStatements" />
                        </a>
                    </xsl:when>
                    <xsl:otherwise>
                        <a href="?c=payors&amp;{$runParam}">
                            <xsl:value-of select="$numStatements" />
                        </a>
                    </xsl:otherwise>
                </xsl:choose>
            </xsl:when>
            <xsl:otherwise>
                <xsl:value-of select="$numStatements" />
            </xsl:otherwise>
        </xsl:choose>
    </xsl:template>


    <xsl:template name="runDate">
        <xsl:param name="runDate" select="substring(StartTime,1,10)" />
        <xsl:variable name="dateSeparator" select="/Root/Client/Locale/DateTimeFormat/DateSeparator" />
        <xsl:if test="translate($runDate, $dateSeparator, '') != 0">
            <xsl:value-of select="$runDate" />
        </xsl:if>
    </xsl:template>

    <xsl:template name="endingSalesDate">
        <xsl:param name="endingSaleDate" select="substring(StartTime,1,10)" />
        <xsl:variable name="dateSeparator" select="/Root/Client/Locale/DateTimeFormat/DateSeparator" />
        <xsl:if test="translate($endingSaleDate, $dateSeparator, '') != 0">
            <xsl:value-of select="$endingSaleDate" />
        </xsl:if>
    </xsl:template>


    <xsl:template name="payorName">
        <xsl:variable name="payorID" select="PayorID" />
        <xsl:choose>
            <xsl:when test="PayorID = 0">Various</xsl:when>
            <xsl:otherwise><xsl:value-of select="/Root/PayorList/Payor[PayorID = $payorID]/Name" /></xsl:otherwise>
        </xsl:choose>
    </xsl:template>


    <xsl:template name="createRunLink">
        <xsl:param name="disabled" select="'false'" />

        <xsl:variable name="createAccess">Access/rps/<xsl:value-of select="$area" />/create</xsl:variable>
        <xsl:if test="dyn:evaluate($createAccess) = 1">

            <xsl:call-template name="uiButton">
                <xsl:with-param name="content" select="'New Royalty Run'" />
                <xsl:with-param name="iconLeftType" select="'add'" />
                <xsl:with-param name="type" select="'default'" />
                <xsl:with-param name="url" select="'?c=create'" />
                <xsl:with-param name="disabled" select="$disabled" />
            </xsl:call-template>

        </xsl:if>
    </xsl:template>

    <xsl:template name="statementFill">
        <xsl:param name="disabled" />
        <xsl:variable name="runID">
            <xsl:value-of select="Params/MechanicalRunID" /><xsl:value-of select="Params/RoyaltyRunID" /><xsl:value-of select="Params/LabelRoyaltyRunID" />
        </xsl:variable>
        <div class="statementFill Statement-fill-controls">
            <div class="Form-group Form-group-horizontal">
                <div class="Form-item">
                    <xsl:call-template name="uiSelectAllDropdown">
                        <xsl:with-param name="id" select="'statements-royalty-edit-payment-select-all'" />
                        <xsl:with-param name="className" select="'TableQuickFill-dropdown'" />
                    </xsl:call-template>
                </div>
                <div class="Form-item">
                    <xsl:call-template name="uiButton">
                        <xsl:with-param name="content" select="'Fill Selected Payment'" />
                        <xsl:with-param name="id" select="'statements-royalty-edit-payment-fill-all'" />
                        <xsl:with-param name="disabled" select="'true'" />
                    </xsl:call-template>
                </div>
                <div class="Form-item">
                    <xsl:call-template name="uiButton">
                        <xsl:with-param name="content" select="'Clear Selected Payment'" />
                        <xsl:with-param name="id" select="'statements-royalty-edit-payment-clear-all'" />
                        <xsl:with-param name="disabled" select="'true'" />
                    </xsl:call-template>
                </div>
            </div>
            <div class="Statement-fill-indicators TableQuickFill-indicators">
                <span class="Statement-fill-help-text TableQuickFill-help-text">Select a payee to take action.</span>
            </div>
        </div>
    </xsl:template>

    <xsl:template name="notificationPopup">
        <script type="text/javascript" src="/production/javascript/portal.js?v=2"></script>
        <div id="viewNotification" title="Statement Notification" class="PortalPopupContent">
            <div style="text-align: left; padding: 20px;">
                Subject:  {Label Name} {Run Name} Statements Now Available - {Payee Name}}<br/><br/>
                Body:<br/><br/>
                Dear {First Name},<br/><br/>
                Statements are now available for {Label Name}'s {Run Name} royalty run.<br/><br/>
                Go here to view your new statements:  {link}<br/><br/>
                If you have questions about your statements, please contact {Payee Portal Label Contact}.<br/><br/>
                Thanks!<br/>
                The RoyaltyShare Support Team<br/><br/>
                <xsl:if test="contains('|1|3|4|', concat('|', /Root/User/AccessLevel, '|'))">
                    <fieldset style="border-top:1px solid #d9d2d0;padding-top:20px"></fieldset>
                    <form id="email_custom_notification_form11" action="/rps/portal/email_custom_text" method="post">
                    <input type="hidden" name="notification_flag" value="1"/>
                    <input type="hidden" name="PayorID" value="{Params/PayorID}" />
                    <input type="hidden" name="RoyaltyRunID" value="{Params/RoyaltyRunID}" />
                    <input type="hidden" name="MechanicalRunID" value="{Params/MechanicalRunID}" />

                    <label class="Form-label">
                        <span class="Form-label-caption">Below is a direct message sent on behalf of {Label Name}</span>
                    </label>
                    <div class="Form-input-wrapper">
                        <textarea style="height: 100px" name="form_custom_notification_text"
                           id="customNotificationText"
                           class="Input Form-input"
                           placeholder="Text entered here will be included on your behalf within the email body…"
                           oninput="email_custom_notification_validation(this);">
                           <xsl:value-of select="PortalEmailCustomText/NotificationText" />
                        </textarea>
                    </div>
                    <ul class="Form-error Form-error-inline" id="errorEmailNotificationText"></ul>
                        <fieldset class="Form-fieldset-buttons">
                        <xsl:call-template name="uiButton">
                            <xsl:with-param name="url">
                              <xsl:text>javascript:void(hideInlinePop())</xsl:text>
                            </xsl:with-param>
                            <xsl:with-param name="name" select="'Cancel'" />
                            <xsl:with-param name="content">Close</xsl:with-param>
                        </xsl:call-template>&#160;
                        <xsl:call-template name="uiButton">
                            <xsl:with-param name="type" select="'primary'" />
                            <xsl:with-param name="id" select="'emailNotificationSubmitButton'" />
                            <xsl:with-param name="name" select="'submitButton'" />
                            <xsl:with-param name="elemType" select="'submit'" />
                            <xsl:with-param name="className" select="'Form-button'" />
                            <xsl:with-param name="disabled" select="'true'"/>
                            <xsl:with-param name="content">Save</xsl:with-param>
                        </xsl:call-template>
                        </fieldset>
                    </form>
                </xsl:if>
            </div>
        </div>
    </xsl:template>

    <xsl:template name="statementFilter">
        <xsl:variable name="runID">
            <xsl:value-of select="Params/MechanicalRunID" /><xsl:value-of select="Params/RoyaltyRunID" /><xsl:value-of select="Params/LabelRoyaltyRunID" /><xsl:value-of select="Params/UKMechanicalRunID" />
        </xsl:variable>
            <xsl:if test="/Root/Form/EmailCustomNotificationText = 1">
                <xsl:call-template name="uiWarning">
                    <xsl:with-param name="id" select="'successGeneralMessageBox'" />
                    <xsl:with-param name="type" select="'info'" />
                    <xsl:with-param name="noIcon" select="'true'" />
                    <xsl:with-param name="description">
                                The statement notification email that will be sent to your payees contains a custom message. Click <a href="#" id="openNotification"><u>here</u></a> to view/edit message
                    </xsl:with-param>
                </xsl:call-template>
            </xsl:if>
        <div class="statementFilter StatementFilter">
            <div class="Form-group Form-group-horizontal">
                <div class="Form-item">
                    <label class="Form-label">
                        <span class="Form-label-caption">Now viewing</span>
                        <div class="Form-input-wrapper">
                            <xsl:variable name="filterByItems">
                                <map>
                                    <xsl:choose>
                                        <xsl:when test="/Root/Area = 'label_royalty'">
                                            <mapEntry><name>All Statements</name><value></value></mapEntry>
                                        </xsl:when>
                                        <xsl:otherwise>
                                            <mapEntry><name>All Statements With Activity</name><value></value></mapEntry>
                                        </xsl:otherwise>
                                    </xsl:choose>
                                    <xsl:if test="/Root/Area != 'label_royalty' and /Root/Cmd != 'distribute'">
                                        <mapEntry><name>All Statements</name><value>5</value></mapEntry>
                                    </xsl:if>
                                    <mapEntry><name>Ending Balance &lt;= 0</name><value>1</value></mapEntry>
                                    <mapEntry><name>Ending Balance &gt; 0</name><value>2</value></mapEntry>
                                    <mapEntry><name>Ending Balance &gt;= Min Payment</name><value>3</value></mapEntry>
                                    <mapEntry><name>On-hold</name><value>4</value></mapEntry>
                                </map>
                            </xsl:variable>
                            <xsl:call-template name="uiDropdown">
                                <xsl:with-param name="items" select="$filterByItems"/>
                                <xsl:with-param name="id" select="'filterBy'"/>
                                <xsl:with-param name="name" select="'filterBy'"/>
                                <xsl:with-param name="active" select="Params/filterBy"/>
                                <xsl:with-param name="className" select="'Tracker-now-view-select'"/>
                            </xsl:call-template>
                        </div>
                    </label>

                </div>

                <div class="Form-item">
                    <label class="Form-label">
                        <span class="Form-label-caption">Statements per page</span>
                        <div class="Form-input-wrapper">
                            <xsl:variable name="pageSizeItems">
                                <map>
                                    <mapEntry><name>100</name><value>100</value></mapEntry>
                                    <mapEntry><name>250</name><value>250</value></mapEntry>
                                    <mapEntry><name>500</name><value>500</value></mapEntry>
                                    <mapEntry><name>All</name><value>all</value></mapEntry>
                                </map>
                            </xsl:variable>
                            <xsl:variable name="pageSizeValue">
                                <xsl:choose>
                                    <xsl:when test="/Root/Area = 'label_royalty' and /Root/Cmd = 'show'">
                                        <xsl:value-of select="/Root/LabelRoyaltyRun/LabelRoyaltyStatementList/Pagination/PageSize"/>
                                    </xsl:when>
                                    <xsl:when test="/Root/Area = 'label_royalty' and /Root/Cmd = 'editpay'">
                                        <xsl:value-of select="/Root/Form/LabelRoyaltyStatementList/Pagination/PageSize"/>
                                    </xsl:when>
                                    <xsl:when test="/Root/Area = 'artist_royalty' and /Root/Cmd = 'show'">
                                        <xsl:value-of select="/Root/ArtistRoyaltyRun/ArtistRoyaltyStatementList/Pagination/PageSize"/>
                                    </xsl:when>
                                    <xsl:when test="/Root/Area = 'artist_royalty' and ( /Root/Cmd = 'editpay' or /Root/Cmd = 'distribute' )">
                                        <xsl:value-of select="/Root/Form/ArtistRoyaltyStatementList/Pagination/PageSize"/>
                                    </xsl:when>
                                    <xsl:when test="( /Root/Area = 'mechanical' or /Root/Area = 'ca_mechanical' ) and /Root/Cmd = 'show'">
                                        <xsl:value-of select="/Root/MechanicalRun/MechanicalStatementList/Pagination/PageSize"/>
                                    </xsl:when>
                                    <xsl:when test="( /Root/Area = 'mechanical' or /Root/Area = 'ca_mechanical' ) and /Root/Cmd = 'editpay'">
                                        <xsl:value-of select="/Root/Form/MechanicalStatementList/Pagination/PageSize"/>
                                    </xsl:when>
                                    <xsl:when test="( /Root/Area = 'mechanical' or /Root/Area = 'ca_mechanical' ) and /Root/Cmd = 'distribute'">
                                        <xsl:value-of select="/Root/Form/MechanicalStatementList/Pagination/PageSize"/>
                                    </xsl:when>
                                    <xsl:otherwise>
                                        100
                                    </xsl:otherwise>
                                </xsl:choose>
                            </xsl:variable>
                            <xsl:variable name="pageSize">
                                <xsl:choose>
                                    <xsl:when test="$pageSizeValue > 500">all</xsl:when>
                                    <xsl:otherwise><xsl:value-of select="$pageSizeValue" /></xsl:otherwise>
                                </xsl:choose>
                            </xsl:variable>
                            <xsl:call-template name="uiDropdown">
                                <xsl:with-param name="items" select="$pageSizeItems"/>
                                <xsl:with-param name="id" select="'pageSize'"/>
                                <xsl:with-param name="name" select="'pageSize'"/>
                                <xsl:with-param name="active" select="$pageSize"/>
                                <xsl:with-param name="className" select="'Tracker-files-count-select'"/>
                            </xsl:call-template>
                        </div>
                    </label>
                </div>

                <div class="Form-item">
                    <div class="Form-label">
                        <span class="Form-label-caption"> </span>
                        <div class="Form-input-wrapper">
                            <xsl:call-template name="uiButton">
                                <xsl:with-param name="content" select="'Update'" />
                                <xsl:with-param name="className" select="'Form-button'" />
                                <xsl:with-param name="onClick">
                                    <xsl:text>filterStatements('</xsl:text>
                                    <xsl:value-of select="$area" />
                                    <xsl:text>','</xsl:text>
                                    <xsl:value-of select="$cmd" />
                                    <xsl:text>',</xsl:text>
                                    <xsl:value-of select="$runID" />
                                    <xsl:text>,</xsl:text>
                                    <xsl:value-of select="Params/PayorID" />
                                    <xsl:text>)</xsl:text>
                                </xsl:with-param>
                            </xsl:call-template>
                        </div>
                    </div>
                </div>
            </div>
        </div>
    </xsl:template>

    <xsl:template name="paymentFields">
        <xsl:param name="disabled" />
        <xsl:param name="paymentCount" />
        <xsl:param name="paymentIndex" />
        <xsl:param name="paymentPrefix" />
        <xsl:param name="statementIndex" />

        <td class="Table-col Table-col-amount">
            <div class="Form-item">
                <xsl:attribute name="class">
                    <xsl:text>Form-item</xsl:text>
                    <xsl:if test="Amount[@e]">
                        <xsl:text> Form-item-error</xsl:text>
                    </xsl:if>

                </xsl:attribute>
                <label class="Form-label">
                    <div class="Form-input-wrapper">
                        <input type="hidden" name="{$paymentPrefix}{$paymentIndex}_TypeCode" value="4" />
                        <xsl:variable name="amount">
                            <xsl:if test="Amount != 0">
                                <xsl:value-of select="Amount"/>
                            </xsl:if>
                        </xsl:variable>
                        <input type="text" name="{$paymentPrefix}{$paymentIndex}_Amount" id="{$paymentPrefix}{$paymentIndex}_Amount" class="Input Form-input Statements-period-payment-input" value="{$amount}">
                            <xsl:if test="$disabled = 1">
                                <xsl:attribute name="disabled">disabled</xsl:attribute>
                            </xsl:if>
                        </input>
                    </div>
                </label>
                <div class="Form-error-wrapper">
                    <xsl:if test="Amount[@e = 'field_blank']"><span class="Form-error">Amount cannot be blank.</span></xsl:if>
                    <xsl:if test="Amount[@e = 'field_out_of_range']"><span class="Form-error">Amount must be a positive number.</span></xsl:if>
                </div>
            </div>
        </td>
        <td class="Table-col Table-col-shrink">
            <div class="Form-item">
                <xsl:attribute name="class">
                    <xsl:text>Form-item</xsl:text>
                    <xsl:if test="TransactionDate[@e]">
                        <xsl:text> Form-item-error</xsl:text>
                    </xsl:if>
                </xsl:attribute>
                <label class="Form-label">
                    <div class="Form-input-wrapper">
                        <xsl:call-template name="uiDatepicker">
                            <xsl:with-param name="name">
                                <xsl:value-of select="$paymentPrefix"/>
                                <xsl:value-of select="$paymentIndex"/>
                                <xsl:text>_TransactionDate</xsl:text>
                            </xsl:with-param>
                            <xsl:with-param name="id">
                                <xsl:value-of select="$paymentPrefix"/>
                                <xsl:value-of select="$paymentIndex"/>
                                <xsl:text>_TransactionDate</xsl:text>
                            </xsl:with-param>

                            <xsl:with-param name="value" select="TransactionDate" />
                            <xsl:with-param name="disabled">
                                <xsl:if test="$disabled = 1">
                                    <xsl:text>true</xsl:text>
                                </xsl:if>
                            </xsl:with-param>
                            <xsl:with-param name="iconId">
                                <xsl:text>calendarIcon</xsl:text>
                                <xsl:value-of select="$paymentIndex" />
                            </xsl:with-param>
                        </xsl:call-template>
                    </div>
                </label>
                <div class="Form-error-text-wrapper">
                    <p class="Form-error">Transaction Date is invalid</p>
                </div>
            </div>
        </td>
        <td class="Table-col">

            <div class="Form-item">
                <xsl:attribute name="class">
                    <xsl:text>Form-item</xsl:text>
                    <xsl:if test="//CheckNumber[@e]">
                        <xsl:text> Form-item-error</xsl:text>
                    </xsl:if>
                </xsl:attribute>
                <label class="Form-label">
                    <div class="Form-input-wrapper">
                        <input type="text" name="{$paymentPrefix}{$paymentIndex}_CheckNumber" id="{$paymentPrefix}{$paymentIndex}_CheckNumber" class="Input Form-input Statements-period-payment-input" value="{CheckNumber}">
                            <xsl:if test="$disabled = 1">
                                <xsl:attribute name="disabled">disabled</xsl:attribute>
                            </xsl:if>
                        </input>
                    </div>
                </label>
                <div class="Form-error-wrapper">
                    <xsl:if test="CheckNumber[@e]"><span class="Form-error">Check # is invalid.</span></xsl:if>
                </div>
            </div>

        </td>
        <td class="Table-col">
            <div class="Form-item">
                <label class="Form-label">
                    <div class="Form-input-wrapper">
                        <input type="text" name="{$paymentPrefix}{$paymentIndex}_Memo" id="{$paymentPrefix}{$paymentIndex}_Memo" class="Input Form-input Statements-period-payment-input" value="{Memo}">
                            <xsl:if test="$disabled = 1">
                                <xsl:attribute name="disabled">disabled</xsl:attribute>
                            </xsl:if>
                        </input>
                    </div>
                </label>
            </div>
        </td>

    </xsl:template>

    <xsl:template name="edidPaymentHeader">
        <tr class="Table-row Table-row-header">
            <th class="Table-col Table-col-select"></th>
            <th class="Table-col">
                <xsl:choose>
                    <xsl:when test="$area = 'label_royalty' or $area='artist_royalty'">
                        Payee
                    </xsl:when>
                    <xsl:otherwise>
                        <xsl:text>Publisher</xsl:text>
                    </xsl:otherwise>
                </xsl:choose>
            </th>
            <th class="Table-col">Client&#160;#</th>
            <th class="Table-col Table-col-amount">Ending Balance</th>
            <th class="Table-col Table-col-amount">Minimum Payment</th>
            <th class="Table-col Table-col-amount">Amount Payable</th>
            <th class="Table-col">
                <span class="Table-col-wrapper">Period Payment</span>
                <xsl:call-template name="helpIcon">
                    <xsl:with-param name="tip">Enter amount paid as a positive number</xsl:with-param>
                </xsl:call-template>
            </th>
            <th class="Table-col">Transaction date</th>
            <th class="Table-col">Check #</th>
            <th class="Table-col">Memo</th>
            <th class="Table-col Table-col-icon"></th>
        </tr>
    </xsl:template>

    <xsl:template name="edidPaymentRowCheckbox">
        <xsl:param name="prefix" />
        <xsl:param name="index" />
        <xsl:param name="disabled" />

        <xsl:variable name="id">
            <xsl:value-of select="$prefix" />
            <xsl:value-of select="$index" />
            <xsl:text>_Checked</xsl:text>
        </xsl:variable>

        <div class="StatementsEdit-payment-checkbox">
            <xsl:call-template name="uiCheckbox">

                <xsl:with-param name="disabled">
                    <xsl:if test="$disabled = 1">true</xsl:if>
                </xsl:with-param>
                <xsl:param name="value" select="1" />
            </xsl:call-template>
        </div>
    </xsl:template>

    <xsl:template name="edidPaymentBodyRow">
        <xsl:param name="pendingTransaction" />
        <xsl:param name="name" />
        <xsl:param name="accountId" />
        <xsl:param name="endingBalance" />
        <xsl:param name="paymentPrefix" />

        <xsl:variable name="disabled">
            <xsl:choose>
                <xsl:when test="OnHold = 1">1</xsl:when>
                <xsl:when test="$openRuns &gt; 0">1</xsl:when>
                <xsl:otherwise>0</xsl:otherwise>
            </xsl:choose>
        </xsl:variable>
        <xsl:variable name="statementIndex" select="@i" />
        <xsl:variable name="paymentCount" select="count($pendingTransaction[Delete = '' or Delete = 0])" />

        <tr class="Table-row Table-row-data Table-row-inputs" id="{$statementIndex}_0" data-prefix="{$paymentPrefix}0" data-on-hold="{OnHold = 1}">
            <xsl:call-template name="uiEvenOddTrClass">
                <xsl:with-param name="position" select="$statementIndex + 1" />
                <xsl:with-param name="className" select="'Table-row-inputs'" />
            </xsl:call-template>
            <td class="Table-col Table-col-select">
                <xsl:call-template name="edidPaymentRowCheckbox">
                    <xsl:with-param name="prefix" select="$paymentPrefix"/>
                    <xsl:with-param name="index" select="@i" />
                    <xsl:with-param name="disabled" select="$disabled" />
                </xsl:call-template>
            </td>
            <td class="Table-col">
                <xsl:value-of select="$name" />
            </td>
            <td class="Table-col"><xsl:value-of select="$accountId" /></td>
            <td class="Table-col Table-col-amount">
                <xsl:value-of select="$endingBalance" />
            </td>
            <td class="Table-col Table-col-amount">
                <xsl:value-of select="MinimumPayment" /><xsl:value-of select="MinPayment" />
            </td>
            <td class="Table-col Table-col-amount Statements-amount-payable-col">
                <xsl:choose>
                    <xsl:when test="OnHold = 1">ON-HOLD</xsl:when>
                    <xsl:otherwise>
                        <xsl:value-of select="AmountDue" />
                    </xsl:otherwise>
                </xsl:choose>
            </td>
            <xsl:choose>
                <xsl:when test="$paymentCount &gt; 0">
                    <xsl:for-each select="$pendingTransaction[Delete = '' or Delete = 0]">
                        <xsl:if test="position() = 1">
                            <xsl:call-template name="paymentFields">
                                <xsl:with-param name="disabled" select="$disabled" />
                                <xsl:with-param name="paymentPrefix" select="$paymentPrefix" />
                                <xsl:with-param name="paymentCount" select="$paymentCount" />
                                <xsl:with-param name="paymentIndex">0</xsl:with-param>
                                <xsl:with-param name="statementIndex" select="$statementIndex" />
                            </xsl:call-template>
                        </xsl:if>
                    </xsl:for-each>
                </xsl:when>
                <xsl:otherwise>
                    <xsl:call-template name="paymentFields">
                        <xsl:with-param name="disabled" select="$disabled" />
                        <xsl:with-param name="paymentPrefix" select="$paymentPrefix" />
                        <xsl:with-param name="paymentCount" select="$paymentCount" />
                        <xsl:with-param name="paymentIndex">0</xsl:with-param>
                        <xsl:with-param name="statementIndex" select="$statementIndex" />
                    </xsl:call-template>
                </xsl:otherwise>
            </xsl:choose>

            <xsl:variable name="paymentIndex">
                <xsl:choose>
                    <xsl:when test="$paymentCount > 1">
                        <xsl:value-of select="$paymentCount - 1"/>
                    </xsl:when>
                    <xsl:otherwise>0</xsl:otherwise>
                </xsl:choose>
            </xsl:variable>

            <td class="Table-col Table-col-icon Statements-add-col">
                <xsl:if test="$paymentCount > 1">
                    <xsl:attribute name="rowspan">
                        <xsl:value-of select="$paymentIndex + 1" />
                    </xsl:attribute>
                </xsl:if>
                <xsl:if test="$disabled != 1">
                    <span class="Table-action-item" data-area="{$area}">
                        <span onclick="addPayment(this, '{$area}', {$statementIndex}, {$paymentIndex})" title="Add Another Payment" id="{$statementIndex}_{$paymentIndex}_Add" class="js-tooltip ActionLink">
                            <xsl:call-template name="icon">
                                <xsl:with-param name="type" select="'add'" />
                            </xsl:call-template>
                        </span>
                    </span>
                </xsl:if>
            </td>

        </tr>
        <xsl:if test="$paymentCount &gt; 1">
            <xsl:for-each select="$pendingTransaction[Delete = '' or Delete = 0]">
                <xsl:if test="position() != 1">
                    <tr class="Table-row Table-row-data Table-row-inputs" id="{$statementIndex}_{@i}" data-prefix="{$paymentPrefix}{@i}">
                        <xsl:call-template name="uiEvenOddTrClass">
                            <xsl:with-param name="position" select="$statementIndex + 1" />
                            <xsl:with-param name="className" select="'Table-row-inputs'" />
                        </xsl:call-template>
                        <td class="Table-col" colspan="6"></td>
                        <xsl:call-template name="paymentFields">
                            <xsl:with-param name="disabled" select="$disabled" />
                            <xsl:with-param name="paymentPrefix" select="$paymentPrefix" />
                            <xsl:with-param name="paymentCount" select="$paymentCount" />
                            <xsl:with-param name="paymentIndex" select="@i" />
                            <xsl:with-param name="statementIndex" select="$statementIndex" />
                        </xsl:call-template>
                    </tr>
                </xsl:if>
            </xsl:for-each>
        </xsl:if>
    </xsl:template>

    <!-- we only want to allow royaltyshare folks to see this. -->
    <xsl:template name="logLevelRow">
        <xsl:if test="/Root/User/AccessLevel = 1 or /Root/User/AccessLevel = 2">

            <div class="Form-item">
                <xsl:attribute name="class">
                    <xsl:text>Form-item</xsl:text>
                    <xsl:if test="Form/LogLevel[@e]">
                        <xsl:text> Form-item-error</xsl:text>
                    </xsl:if>

                </xsl:attribute>
                <label class="Form-label">
                    <span class="Form-label-caption">
                        Log Level
                        <xsl:call-template name="helpIcon">
                            <xsl:with-param name="tip">Changing this value will affect the amount of logging that is done&lt;br&gt;for this run.  Please do not modify unless necessary.</xsl:with-param>
                        </xsl:call-template>
                    </span>
                    <div class="Form-input-wrapper">
                        <xsl:variable name="logLevelItems">
                            <map>
                                <mapEntry><name>1</name><value>1</value></mapEntry>
                                <mapEntry><name>2</name><value>2</value></mapEntry>
                                <mapEntry><name>3</name><value>3</value></mapEntry>
                                <mapEntry><name>4</name><value>4</value></mapEntry>
                            </map>
                        </xsl:variable>
                        <xsl:call-template name="uiDropdown">
                            <xsl:with-param name="items" select="$logLevelItems"/>
                            <xsl:with-param name="id" select="'Form_LogLevel'"/>
                            <xsl:with-param name="name" select="'Form_LogLevel'"/>
                            <xsl:with-param name="active" select="Form/LogLevel"/>
                            <xsl:with-param name="className" select="'MechanicalCreate-log-level-select'"/>
                        </xsl:call-template>
                    </div>
                </label>
                <xsl:call-template name="inlineError">
                    <xsl:with-param name="path">Form/LogLevel</xsl:with-param>
                    <xsl:with-param name="displayName">Log Level</xsl:with-param>
                </xsl:call-template>
            </div>
        </xsl:if>

    </xsl:template>

    <xsl:template name="auditReports">
        <xsl:param name="reportItems" />

        <xsl:variable name="reportLabelText">
            <xsl:choose>
                <xsl:when test="$area = 'ca_mechanical'">
                    <xsl:text>Canadian Mechanical </xsl:text>
                </xsl:when>
                <xsl:when test="$area = 'mechanical'">
                    <xsl:text>United States Mechanical </xsl:text>
                </xsl:when>
                <xsl:when test="$area = 'uk_mech'">
                    <xsl:text>United Kingdom Mechanical </xsl:text>
                </xsl:when>
                <xsl:when test="$area = 'label_royalty'">
                    <xsl:text>Label </xsl:text>
                </xsl:when>
                <xsl:when test="$area = 'artist_royalty'">
                    <xsl:text>Artist/Producer </xsl:text>
                </xsl:when>
            </xsl:choose>
            <xsl:text>Related Reports</xsl:text>
        </xsl:variable>

        <div class="ValuePair Statements-reports-list">
            <div class="ValuePair-item">
                <div class="ValuePair-label ValuePair-label-for-list ValuePair-label-one-line">
                    <xsl:value-of select="$reportLabelText" />
                </div>
                <div class="ValuePair-value">
                    <ul class="LinksList">
                        <xsl:attribute name="class">
                            <xsl:text>LinksList</xsl:text>
                            <xsl:if test="count(exslt:node-set($reportItems)//mapEntry) > 2">
                                <xsl:text> LinksList-distributed</xsl:text>
                            </xsl:if>
                        </xsl:attribute>
                        <xsl:for-each select="exslt:node-set($reportItems)//mapEntry">
                            <xsl:sort select="title" order="ascending" />
                            <li class="LinksList-item">
                                <a href="{url}">
                                    <xsl:value-of select="title" />
                                </a>
                            </li>
                        </xsl:for-each>
                    </ul>
                </div>
            </div>
        </div>
    </xsl:template>

    <xsl:template name="statementRunList">
        <xsl:param name="runs" />
        <xsl:param name="statusList" />
        <xsl:param name="payors" />
        <xsl:param name="reportItems" />

        <xsl:variable name="error" select="$statusList/Error" />

        <div class="MainBaseSection" id="runList">
            <xsl:call-template name="statementSuccessMessages" />
            <xsl:if test="$error &gt; 0">
                <xsl:call-template name="errorRunMessage" />
            </xsl:if>

            <h3>Audit Reports</h3>

            <div class="Statements-reports">
                <xsl:call-template name="auditReports">
                    <xsl:with-param name="reportItems" select="$reportItems" />
                </xsl:call-template>
            </div>

            <div class="Table-controls Table-controls-top">
                <xsl:if test="$payors and $statusList">
                    <div class="Table-controls-item">
                        <form action="{$area}" method="get" class="Form">
                            <div class="Form-group Form-group-horizontal">

                                <div class="Form-item">
                                    <label class="Form-label">
                                        <span class="Form-label-caption">View By</span>
                                        <div class="Form-input-wrapper">

                                            <xsl:variable name="statementsPayorListItems">
                                                <map>
                                                    <mapEntry><name>All Payors</name><value></value></mapEntry>
                                                    <xsl:for-each select="$payors/Payor">
                                                        <xsl:sort select="Name" />
                                                        <mapEntry>
                                                            <name><xsl:value-of select="Name" /></name>
                                                            <value><xsl:value-of select="PayorID" /></value>
                                                        </mapEntry>
                                                    </xsl:for-each>
                                                </map>
                                            </xsl:variable>
                                            <xsl:call-template name="uiDropdown">
                                                <xsl:with-param name="items" select="$statementsPayorListItems"/>
                                                <xsl:with-param name="name" select="'payor'"/>
                                                <xsl:with-param name="active" select="/Root/Params/payor"/>
                                                <xsl:with-param name="className" select="'CatalogMain-label-select-wider'" />
                                                <xsl:with-param name="autoSubmit" select="'true'" />
                                            </xsl:call-template>
                                        </div>
                                    </label>
                                </div>

                                <div class="Form-item">
                                    <label class="Form-label">
                                        <div class="Form-input-wrapper">

                                            <xsl:variable name="statementsStatusListItems">
                                                <map>
                                                    <mapEntry><name>All Statuses</name><value></value></mapEntry>
                                                    <xsl:for-each select="$statusList/*[@id and node() != 0]">
                                                        <xsl:sort select="@id" />
                                                        <mapEntry>
                                                            <name>
                                                                <xsl:call-template name="statusCodeToName">
                                                                    <xsl:with-param name="status" select="@id" />
                                                                </xsl:call-template>
                                                            </name>
                                                            <value><xsl:value-of select="@id" /></value>
                                                        </mapEntry>
                                                    </xsl:for-each>
                                                </map>
                                            </xsl:variable>
                                            <xsl:call-template name="uiDropdown">
                                                <xsl:with-param name="items" select="$statementsStatusListItems"/>
                                                <xsl:with-param name="name" select="'status'"/>
                                                <xsl:with-param name="active" select="/Root/Params/status"/>
                                                <xsl:with-param name="className" select="'CatalogMain-label-select'" />
                                                <xsl:with-param name="autoSubmit" select="'true'" />
                                            </xsl:call-template>
                                        </div>
                                    </label>
                                </div>
                            </div>
                        </form>
                    </div>
                </xsl:if>
                <div class="Table-controls-item Table-controls-item-additive">
                    <xsl:call-template name="createRunLink">
                        <xsl:with-param name="disabled">
                            <xsl:choose>
                                <xsl:when test="$error &gt; 0">
                                    <xsl:text>true</xsl:text>
                                </xsl:when>
                                <xsl:when test="$clientID = 51 and $area = 'artist_royalty'">
                                    <xsl:text>true</xsl:text>
                                </xsl:when>
                            </xsl:choose>
                        </xsl:with-param>
                    </xsl:call-template>
                </div>
            </div>

            <xsl:choose>
                <xsl:when test="$runs">
                    <xsl:call-template name="runTable">
                        <xsl:with-param name="runs" select="$runs" />
                    </xsl:call-template>
                </xsl:when>
                <xsl:otherwise>
                    <div class="Table-empty-results">
                        <xsl:choose>
                            <xsl:when test="$statusList">
                                <p>No royalty runs are available under this heading.</p>
                            </xsl:when>
                            <xsl:otherwise>
                                <p>No royalty runs have been created.</p>
                            </xsl:otherwise>
                        </xsl:choose>
                    </div>
                </xsl:otherwise>
            </xsl:choose>

            <xsl:if test="Pagination/TotalPages > 1">
                <div class="Table-controls Table-controls-bottom">
                    <div class="Table-controls-item Table-controls-item-pagination">
                        <xsl:call-template name="uiPagination">
                            <xsl:with-param name="lastPage" select="Pagination/TotalPages"/>
                            <xsl:with-param name="currentPage" select="Pagination/Current"/>
                            <xsl:with-param name="searchParams">
                                <xsl:if test="/Root/Params/payor">
                                    <xsl:text>&amp;payor=</xsl:text><xsl:value-of select="/Root/Params/payor" />
                                </xsl:if>
                                <xsl:if test="/Root/Params/status">
                                    <xsl:text>&amp;status=</xsl:text><xsl:value-of select="/Root/Params/status" />
                                </xsl:if>
                            </xsl:with-param>
                        </xsl:call-template>
                    </div>
                </div>
            </xsl:if>
        </div>
    </xsl:template>

    <xsl:template name="runTable">
        <xsl:param name="runs" />

        <table class="Table Table-with-highlight">
            <thead>
                <tr class="Table-row Table-row-header">
                    <th class="Table-col"># of Statements</th>
                    <th class="Table-col">
                        <xsl:choose>
                            <xsl:when test="$area = 'ca_mechanical' or $area = 'uk_mech'">Reporting Period</xsl:when>
                            <xsl:otherwise>Run Name</xsl:otherwise>
                        </xsl:choose>
                    </th>
                    <xsl:if test="/Root/ShowAbacusData = 1">
                        <th class="Table-col">Statement Period ID (Abacus)</th>
                    </xsl:if>
                    <th class="Table-col">Ending Sales Date</th>
                    <th class="Table-col">Payor</th>
                    <th class="Table-col">Run Date</th>
                    <th class="Table-col">
                        <span class="Table-col-wrapper">
                            Status
                        </span>
                        <xsl:call-template name="helpIcon">
                            <xsl:with-param name="tip" select="$statusDescriptions" />
                        </xsl:call-template>
                    </th>
                    <th class="Table-col Table-col-all-actions">Actions</th>
                </tr>
            </thead>

            <tbody>
                <xsl:for-each select="$runs">
                    <tr class="Table-row Table-row-data">
                        <td class="Table-col">
                            <xsl:call-template name="statementCount" />
                        </td>
                        <td class="Table-col">
                            <xsl:choose>
                                <xsl:when test="$area = 'uk_mech'">
                                    Q<xsl:value-of select="Quarter" /><xsl:text> </xsl:text><xsl:value-of select="Year" />
                                </xsl:when>
                                <xsl:otherwise>
                                    <xsl:value-of select="Label" />
                                </xsl:otherwise>
                            </xsl:choose>
                        </td>
                        <xsl:if test="/Root/ShowAbacusData = 1">
                            <td class="Table-col">
                                <xsl:value-of select="AbacusPeriodID" />
                            </td>
                        </xsl:if>
                        <td class="Table-col">
                            <xsl:call-template name="endingSalesDate" >
                                <xsl:with-param name="endingSaleDate"><xsl:value-of select="EndingSaleDate" /></xsl:with-param>
                            </xsl:call-template>
                        </td>
                        <td class="Table-col">
                            <xsl:call-template name="payorName" />
                        </td>
                        <td class="Table-col">
                            <xsl:call-template name="runDate" />
                        </td>
                        <td class="Table-col">
                            <xsl:call-template name="statusCodeToName">
                                <xsl:with-param name="status" select="Status" />
                            </xsl:call-template>
                        </td>
                        <td class="Table-col Table-col-all-actions">
                            <xsl:call-template name="runActions" />
                        </td>
                    </tr>
                </xsl:for-each>
            </tbody>
        </table>
    </xsl:template>

</xsl:stylesheet>
