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

    <xsl:template name="currencyConversionEntrySuccessMessages">

        <xsl:call-template name="uiWarning">
            <xsl:with-param name="type" select="'success'" />
            <xsl:with-param name="description">
                <xsl:choose>
                    <xsl:when test="Messages/Message/Code = 'rates_entered'">
                        <text>Conversion rates were successfully entered against </text>
                        <xsl:value-of select="/Root/Params/files_num" />
                        <xsl:choose>
                            <xsl:when test="/Root/Params/files_num > 1">
                                <text> files</text>
                            </xsl:when>
                            <xsl:otherwise>
                                <text> file</text>
                            </xsl:otherwise>
                        </xsl:choose>
                    </xsl:when>
                    <xsl:otherwise>
                        Success code: <xsl:value-of select="Messages/Message/Code" />
                    </xsl:otherwise>
                </xsl:choose>
            </xsl:with-param>
        </xsl:call-template>

    </xsl:template>


   <xsl:template name="currencyConversionEntry">
        <div class="Tracker-section">
            <xsl:if test="Messages/Message/Type = 'success'">
                <div class="section">
                    <xsl:call-template name="currencyConversionEntrySuccessMessages" />
                </div>
            </xsl:if>
            <xsl:call-template name="trackerOpenFilesCurrencyConversionEntry" />
        </div>
        <br />
    </xsl:template>

    <xsl:template name="trackerOpenFilesCurrencyConversionEntry">
        <xsl:variable name="openFilePref" select="OpenFileSettings/FileType" />
        <xsl:variable name="pageSize" select="CurrencyConversionSettings/PageSize" />
        <xsl:variable name="serviceSelected" select="OpenFileSettings/ServiceID" />

        <div class="Tracker-open-chart" id="openFileContainer">
            <h3 class="Tracker-sub-header">Open Files</h3>
            <div class="Table-controls Table-controls-top">
                <div class="Table-controls-item">
                    <form class="Form Form-horizontal" action="/app/tracker" id="openFilesSetting" method="get">
                        <input type="hidden" name="c" value="currency_conversion_entry" />

                        <div class="Form-item">
                            <label class="Form-label">
                                <span class="Form-label-caption">Conversion Rate</span>
                                <div class="Form-input-wrapper">
                                    <xsl:variable name="selectConversionRate">
                                        <map>
                                            <mapEntry><value>0</value><name>Not Entered</name></mapEntry>
                                            <mapEntry><value>1</value><name>All</name></mapEntry>
                                        </map>
                                    </xsl:variable>
                                    <xsl:call-template name="uiDropdown">
                                        <xsl:with-param name="items" select="$selectConversionRate"/>
                                        <xsl:with-param name="name" select="'conversionRate'" />
                                        <xsl:with-param name="id" select="'conversionRate'" />
                                        <xsl:with-param name="active" select="/Root/Params/conversionRate" />
                                        <xsl:with-param name="className" select="'Tracker-from-conversionRate-select'"/>
                                    </xsl:call-template>
                                </div>
                            </label>
                        </div>

                        <div class="Form-item">
                            <label class="Form-label">
                                <span class="Form-label-caption">Sales Period End Date</span>
                                <div class="Form-input-wrapper">
                                    <xsl:variable name="selectSalesPeriodEndDate">
                                        <map>
                                            <mapEntry>
                                                <value>0</value><name>Select</name>
                                            </mapEntry>
                                        </map>
                                    </xsl:variable>
                                    <xsl:call-template name="uiDropdown">
                                        <xsl:with-param name="items" select="$selectSalesPeriodEndDate"/>
                                        <xsl:with-param name="name" select="'salesPeriodEndDate'" />
                                        <xsl:with-param name="id" select="'salesPeriodEndDate'" />
                                        <xsl:with-param name="active" select="/Root/Params/salesPeriodEndDate" />
                                        <xsl:with-param name="className" select="'Tracker-from-salesPeriodEndDate-select'"/>
                                        <xsl:with-param name="custom" select="'true'" />
                                    </xsl:call-template>
                                </div>
                            </label>
                        </div>

                        <div class="Form-item">
                            <label class="Form-label">
                                <span class="Form-label-caption">From</span>
                                <div class="Form-input-wrapper">
                                    <xsl:variable name="selectServiceid">
                                        <map>
                                            <mapEntry><value>0</value><name>All Services</name></mapEntry>
                                            <xsl:for-each select="OpenFileSettings/ServiceList/Service">
                                                <mapEntry><value><xsl:value-of select="serviceID"/></value><name><xsl:value-of select="serviceName" /></name></mapEntry>
                                            </xsl:for-each>
                                        </map>
                                    </xsl:variable>

                                    <xsl:call-template name="uiDropdown">
                                        <xsl:with-param name="items" select="$selectServiceid"/>
                                        <xsl:with-param name="name" select="'serviceID'" />
                                        <xsl:with-param name="id" select="'serviceID'" />
                                        <xsl:with-param name="active" select="$serviceSelected" />
                                        <xsl:with-param name="className" select="'Tracker-from-service-select'"/>
                                    </xsl:call-template>
                                </div>
                            </label>
                        </div>

                        <div class="Form-item">
                            <label class="Form-label">
                                <span class="Form-label-caption">Currency</span>
                                <div class="Form-input-wrapper">
                                    <xsl:variable name="selectCurrency">
                                        <map>
                                            <mapEntry><value>0</value><name>All</name></mapEntry>
                                        </map>
                                    </xsl:variable>
                                    <xsl:call-template name="uiDropdown">
                                        <xsl:with-param name="items" select="$selectCurrency"/>
                                        <xsl:with-param name="name" select="'currencyCode'" />
                                        <xsl:with-param name="id" select="'currencyCode'" />
                                        <xsl:with-param name="active" select="/Root/Params/currencyCode" />
                                        <xsl:with-param name="className" select="'Tracker-from-currencyCode-select'"/>
                                    </xsl:call-template>
                                </div>
                            </label>
                        </div>

                        <div class="Form-item">
                            <label class="Form-label">
                                <span class="Form-label-caption">Files per page</span>
                                <div class="Form-input-wrapper">


                                    <xsl:variable name="pageSizeItems">
                                        <map>
                                            <mapEntry><name>25</name><value>25</value></mapEntry>
                                            <mapEntry><name>50</name><value>50</value></mapEntry>
                                            <mapEntry><name>100</name><value>100</value></mapEntry>
                                            <mapEntry><name>All</name><value>all</value></mapEntry>
                                        </map>
                                    </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">
                            <xsl:call-template name="uiButton">
                                <xsl:with-param name="content">Update</xsl:with-param>
                                <xsl:with-param name="id" select="'openFilesSubmitBtn'"/>
                                <xsl:with-param name="elemType" select="'submit'" />
                            </xsl:call-template>
                        </div>
                    </form>
                </div>
            </div>

            <form name="setConversionRate" id="setConversionRate" action="/app/tracker" method="post">
                <input type="hidden" name="salesPeriodEndDate" value="{Params/salesPeriodEndDate}" />
                <input type="hidden" name="serviceID" value="{Params/serviceID}" />
                <input type="hidden" name="conversionRate" value="{Params/conversionRate}" />
                <input type="hidden" name="currencyCode" value="{Params/currencyCode}" />
                <input type="hidden" name="pageSize" value="{Params/pageSize}" />
                <input type="hidden" name="page" value="{Params/page}" />
                <input type="hidden" name="multi_files" value="1" />

                <div class="Table-wrapper">
                    <table class="Table Table-with-highlight">
                        <thead>
                            <xsl:call-template name="setConversionRateOpenHeaderRow" />
                        </thead>
                        <tbody>
                            <xsl:if test="not(Files/OpenFiles)">
                                <tr class="Table-row Table-row-data">
                                    <td class="Table-col Table-col-select" colspan="12" align="center">
                                        <span><b>Files will appear here based on the filter options selected above</b></span>
                                    </td>
                                </tr>
                            </xsl:if>
                            <xsl:for-each select="Files/OpenFiles/OpenFile">
                                <xsl:call-template name="setConversionRateFileRow" />
                            </xsl:for-each>
                        </tbody>
                    </table>
                </div>

                <xsl:if test="Files/OpenFiles">
                    <div class="Tracker-table-controls Table-controls Table-controls-bottom">
                        <div class="Table-controls-item Table-controls-item-buttons">
                            <input type="hidden" name="c" value="currency"/>
                            <input type="hidden" name="multi_files" value="1"/>
                            <input type="hidden" name="formSubmit" value="1" />
                            <xsl:call-template name="uiButton">
                                <xsl:with-param name="content">Enter Conversion Rate</xsl:with-param>
                                <xsl:with-param name="type" select="'primary'" />
                                <xsl:with-param name="disabled" select="'true'" />
                                <xsl:with-param name="id" select="'setConversionRateBoxOpener'" />
                            </xsl:call-template>
                        </div>

                        <div class="Table-controls-item Table-controls-item-pagination">
                            <xsl:if test="Files/OpenFiles">
                                <xsl:call-template name="uiPagination">
                                    <xsl:with-param name="lastPage" select="Pagination/LastPage" />
                                    <xsl:with-param name="totalCount" select="Pagination/TotalCount" />
                                    <xsl:with-param name="currentPage" select="Pagination/CurrentPage" />
                                    <xsl:with-param name="searchPreffix" select="concat(
                                        'c=currency_conversion_entry&amp;salesPeriodEndDate=', Params/salesPeriodEndDate,
                                        '&amp;serviceID=', Params/serviceID,
                                        '&amp;conversionRate=', Params/conversionRate,
                                        '&amp;pageSize=', Params/pageSize,
                                        '&amp;multi_files=1&amp;')"
                                    />
                                </xsl:call-template>
                            </xsl:if>
                        </div>
                    </div>
                </xsl:if>
            </form>
        </div>

        <div style="text-align: right;">
            <br />
            <xsl:call-template name="uiButton">
                <xsl:with-param name="content" select="'Back to Summary'" />
                <xsl:with-param name="type" select="'default'"/>
                <xsl:with-param name="className" select="'Form-button'"/>
                <xsl:with-param name="elemType" select="'button'"/>
                <xsl:with-param name="url">
                    <xsl:text>/app/tracker</xsl:text>
                </xsl:with-param>
            </xsl:call-template>
        </div>

        <script src="/production/javascript/currencyConversionFilter.js?v=6" type="text/javascript"></script>
    </xsl:template>

    <xsl:template name="setConversionRateOpenHeaderRow">
        <tr class="Table-row Table-row-header">
            <th class="Table-col" colspan="8"></th>
            <th class="Table-col Table-col-common" colspan="2">Exceptions</th>
            <th class="Table-col" colspan="3"></th>
        </tr>
        <tr class="Table-row Table-row-header">
            <th class="Table-col Table-col-select">
            <xsl:call-template name="uiCheckbox">
                <xsl:with-param name="name" select="'select_all'"/>
                <xsl:with-param name="className" select="'setConversionRateCheckAll'"/>
            </xsl:call-template>
            </th>

            <th class="Table-col" nowrap="nowrap">
                <xsl:call-template name="trackerOpenFilesSort">
                    <xsl:with-param name="name" select="''"/>
                    <xsl:with-param name="caption" select="'Service'" />
                </xsl:call-template>
            </th>

            <th class="Table-col" nowrap="nowrap">
                <xsl:call-template name="trackerOpenFilesSort">
                    <xsl:with-param name="name" select="'orig_file_name'"/>
                    <xsl:with-param name="caption" select="'File Name'" />
                </xsl:call-template>
            </th>

            <th class="Table-col" nowrap="nowrap">
                <xsl:call-template name="trackerOpenFilesSort">
                    <xsl:with-param name="name" select="'date_created'"/>
                    <xsl:with-param name="caption" select="'Received'" />
                </xsl:call-template>
            </th>

            <th class="Table-col Table-col-amount" nowrap="nowrap">
                <xsl:call-template name="trackerOpenFilesSort">
                    <xsl:with-param name="name" select="'units'"/>
                    <xsl:with-param name="caption" select="'Units'" />
                </xsl:call-template>
            </th>

            <th class="Table-col">
                <xsl:call-template name="trackerOpenFilesSort">
                    <xsl:with-param name="name" select="'input_dist_fee_pct'"/>
                    <xsl:with-param name="caption" select="'Dist. Fee'" />
                </xsl:call-template>
            </th>

            <th class="Table-col Table-col-amount" nowrap="nowrap">
                <xsl:call-template name="trackerOpenFilesSort">
                    <xsl:with-param name="name" select="'revenue'"/>
                    <xsl:with-param name="caption" select="'Revenue'" />
                </xsl:call-template>
            </th>

            <th class="Table-col" nowrap="nowrap">
                <xsl:call-template name="trackerOpenFilesSort">
                    <xsl:with-param name="name" select="'records'"/>
                    <xsl:with-param name="caption" select="'Records'" />
                </xsl:call-template>
            </th>

            <th class="Table-col" nowrap="nowrap">
                <xsl:call-template name="trackerOpenFilesSort">
                    <xsl:with-param name="name" select="'total_exceptions'"/>
                    <xsl:with-param name="caption" select="'Initial'" />
                </xsl:call-template>
            </th>

            <th class="Table-col" nowrap="nowrap" colspan="2">
                <xsl:call-template name="trackerOpenFilesSort">
                    <xsl:with-param name="name" select="'remaining_exceptions'"/>
                    <xsl:with-param name="caption" select="'Left'" />
                </xsl:call-template>
            </th>
        </tr>
    </xsl:template>

   <xsl:template name="setConversionRateFileRow">
        <tr class="Table-row Table-row-data">
            <xsl:if test="FileID = /Root/Params/Highlight">
                <xsl:attribute name="class">hi</xsl:attribute>
            </xsl:if>

            <td class="Table-col Table-col-select">
                <xsl:call-template name="uiCheckbox">
                    <xsl:with-param name="name" select="'file'"/>
                    <xsl:with-param name="className" select="'setConversionRateBox'"/>
                    <xsl:with-param name="value">
                        <xsl:value-of select="FileID" />
                    </xsl:with-param>
                </xsl:call-template>
            </td>

            <td class="Table-col"><xsl:value-of select="ServiceName" /></td>
            <td class="Table-col">
                <a name="file{FileID}" />
                <xsl:choose>
                    <xsl:when test="/Root/Access/app/tracker/saveas">
                        <a class="js-tooltip" href="/app/tracker?c=saveas&amp;file={FileID}&amp;period={/Root/Report/Period/PeriodID}">
                            <xsl:if test="/Root/User/AccessLevel = 1">
                                <xsl:attribute name="title">Importer Version: <xsl:value-of select="VersionNum" /></xsl:attribute>
                            </xsl:if>
                            <xsl:value-of select="OrigFileNamePretty" />
                        </a>
                    </xsl:when>
                    <xsl:otherwise>
                        <xsl:value-of select="OrigFileNamePretty" />
                    </xsl:otherwise>
                </xsl:choose>
            </td>

            <td class="Table-col"><xsl:value-of select="DateCreatedPretty" /></td>

            <td class="Table-col Table-col-amount" nowrap="nowrap"><xsl:value-of select="UnitsPretty" /></td>

            <td class="Table-col">
                <xsl:if test="/Root/Access/app/tracker/distributionfee = 1 and normalize-space(ServiceID)">
                    <xsl:if test="ParentFileID != '' or HasChild = 1">
                        <xsl:call-template name="distFeeDisplay">
                            <xsl:with-param name="distFormats" select="DistributionFeeFormats" />
                            <xsl:with-param name="distFeePct" select="DistFeePct" />
                            <xsl:with-param name="adjustedRevenue" select="AdjustedRevenue" />
                            <xsl:with-param name="serviceID" select="ServiceID" />
                            <xsl:with-param name="version" select="VersionNum" />
                            <xsl:with-param name="physical" select="Physical" />
                            <xsl:with-param name="greyColor" select="1" />
                        </xsl:call-template>
                    </xsl:if>
                    <xsl:if test="ParentFileID = '' and HasChild = 0">
                        <xsl:call-template name="distFeeDisplay">
                            <xsl:with-param name="distFormats" select="DistributionFeeFormats" />
                            <xsl:with-param name="distFeePct" select="DistFeePct" />
                            <xsl:with-param name="adjustedRevenue" select="AdjustedRevenue" />
                            <xsl:with-param name="fileID" select="FileID" />
                            <xsl:with-param name="serviceID" select="ServiceID" />
                            <xsl:with-param name="version" select="VersionNum" />
                            <xsl:with-param name="physical" select="Physical" />
                            <xsl:with-param name="greyColor" select="1" />
                        </xsl:call-template>
                    </xsl:if>
                </xsl:if>
            </td>

            <td class="Table-col Table-col-amount RevenueConversion" nowrap="nowrap">
                <xsl:if test="CurrencyCode != /Root/Client/Locale/CurrencyFormat/CurrencyCode">
                    <xsl:choose>
                        <xsl:when test="/Root/Access/app/tracker/revenue = 1 and (ParentFileID != '' and (Revenue = '' or normalize-space(InputRevenuePretty/value)))">
                            (<xsl:value-of select="RevenuePretty/symbol" /><xsl:value-of select="translate(translate(RevenuePretty/value, '-', '&#8209;'), ' ', '&#160;')" />&#160;<xsl:value-of select="CurrencyCode" />)&#160;
                        </xsl:when>
                        <xsl:when test="/Root/Access/app/tracker/revenue = 1 and (Revenue = '' or normalize-space(InputRevenuePretty/value))">
                            (<xsl:value-of select="RevenuePretty/symbol" /><xsl:value-of select="translate(translate(RevenuePretty/value, '-', '&#8209;'), ' ', '&#160;')" />&#160;<xsl:value-of select="CurrencyCode" />)&#160;
                        </xsl:when>
                        <xsl:otherwise>
                            <xsl:if test="NeedsConversionRate != 0 or InputConversionRate != 0">
                                (<xsl:if test="CurrencyCode != 'MUL'"><xsl:value-of select="RevenuePretty/symbol" /></xsl:if><xsl:value-of select="translate(translate(RevenuePretty/value, '-', '&#8209;'), ' ', '&#160;')" />&#160;<xsl:value-of select="CurrencyCode" />)&#160;
                            </xsl:if>
                        </xsl:otherwise>
                    </xsl:choose>
                </xsl:if>
                <xsl:choose>
                    <xsl:when test="/Root/Access/app/tracker/revenue = 1 and ParentFileID = '' and HasChild = 0 and (translate(Revenue, translate(Revenue,'0123456789', ''), '') = 0 or Revenue = '' or normalize-space(InputRevenuePretty/value))">
                        <xsl:choose>
                            <xsl:when test="CurrencyCode = /Root/Client/Locale/CurrencyFormat/CurrencyCode">
                                <xsl:call-template name="revenueAmount" />
                            </xsl:when>
                            <xsl:when test="normalize-space(RevenuePretty/value) and (NeedsConversionRate != 0 or InputConversionRate != 0) and normalize-space(InputRevenuePretty/value) = ''">
                                <xsl:call-template name="revenueAmount" />
                            </xsl:when>
                            <xsl:when test="normalize-space(RevenuePretty/value) and (NeedsConversionRate != 0 or InputConversionRate != 0)">
                                <xsl:call-template name="revenueAmount" />
                            </xsl:when>

                        </xsl:choose>
                    </xsl:when>
                    <xsl:when test="/Root/Access/app/tracker/currency = 1 and ParentFileID = '' and HasChild = 0 and normalize-space(Revenue) and (ConversionInput != 0 or InputConversionRate != 0)">
                        <xsl:call-template name="revenueAmount" />
                    </xsl:when>
                    <xsl:otherwise>
                        <xsl:if test="not(File/MultipleRevenue)">
                            <xsl:choose>
                                <xsl:when test="(NeedsConversionRate = 1 or InputConversionRate != 0) and ParentFileID = '' and HasChild = 0">
                                    <xsl:call-template name="revenueAmount" />
                                </xsl:when>
                                <xsl:otherwise>
                                    <xsl:call-template name="revenueAmount" />
                                </xsl:otherwise>
                            </xsl:choose>
                        </xsl:if>
                        <xsl:if test="File/MultipleRevenue and ParentFileID = '' and HasChild = 0 and CurrencyCode != /Root/Client/Locale/CurrencyFormat/CurrencyCode">
                            <xsl:call-template name="revenueAmount" />
                        </xsl:if>
                        <xsl:if test="File/MultipleRevenue and ParentFileID = '' and HasChild = 0 and CurrencyCode = /Root/Client/Locale/CurrencyFormat/CurrencyCode">
                            <xsl:call-template name="revenueAmount" />
                        </xsl:if>
                        <xsl:if test="File/MultipleRevenue and (ParentFileID != '' or HasChild = 1)">
                            <xsl:call-template name="revenueAmount" />
                        </xsl:if>

                    </xsl:otherwise>
                </xsl:choose>
            </td>

            <td class="Table-col" nowrap="nowrap"><xsl:value-of select="RecordsPretty" /></td>

            <td class="Table-col" nowrap="nowrap"><xsl:value-of select="TotalExceptions" /></td>

            <td class="Table-col" nowrap="nowrap"><xsl:value-of select="RemainingExceptions" /></td>

            <td class="Table-col Table-col-icon">
                <xsl:if test="translate(RemainingExceptions, translate(RemainingExceptions,'0123456789', ''), '') != 0 and /Root/Access/app/tracker/exceptions = 1">
                    <a class="js-tooltip" href="/app/tracker?c=exceptions&amp;file={FileID}" title="Download Error File">
                        <xsl:call-template name="icon">
                            <xsl:with-param name="type" select="'download'" />
                            <xsl:with-param name="role" select="'action'" />
                        </xsl:call-template>
                    </a>
                </xsl:if>
            </td>
        </tr>
    </xsl:template>

</xsl:stylesheet>