<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">

    <xsl:template name="trackerSuccessMessages">
        <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 = 'ftp_job_queued'">Delivery job has been added to the queue.</xsl:when>
                    <xsl:when test="Messages/Message/Code = 'form_submit_success'">License Income successfully updated!</xsl:when>
                    <xsl:when test="Messages/Message/Code = 'notes_edited'">Notes successfully updated!</xsl:when>
                    <xsl:when test="Messages/Message/Code = 'file_deleted'">File successfully deleted!</xsl:when>
                    <xsl:when test="Messages/Message/Code = 'period_edited'">Period name successfully updated!</xsl:when>
                    <xsl:when test="Messages/Message/Code = 'revenue_check_set'">Revenue status successfully updated!</xsl:when>
                    <xsl:when test="Messages/Message/Code = 'file_reopened'">File successfully reopened!</xsl:when>
                    <xsl:when test="Messages/Message/Code = 'qwikclose_succeeded'">Files successfully finished!</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="trackerErrorMessages">
        <xsl:call-template name="uiWarning">
            <xsl:with-param name="type" select="'error'" />
            <xsl:with-param name="description">
                <xsl:choose>
                    <xsl:when test="Messages/Message/Code = 'no_client_ftp'">
                        Delivery data is not stored for this client.
                    </xsl:when>
                    <xsl:when test="Messages/Message/Code = 'disabled_in_dev'">
                        This action is disabled in the QA/dev environments.
                    </xsl:when>
                    <xsl:when test="Messages/Message/Code = 'invalid_distributionfee'">
                        Distribution Fee must be entered as a whole number.
                    </xsl:when>
                    <xsl:when test="Messages/Message/Code = 'download_unavailable'">File cannot be downloaded at this time.</xsl:when>
                    <xsl:when test="Messages/Message/Code = 'file_not_deleted'">Unable to delete file.</xsl:when>
                    <xsl:when test="Messages/Message/Code = 'invalid_currency'">Invalid currency conversion rate.</xsl:when>
                    <xsl:when test="Messages/Message/Code = 'invalid_revenue_file_library_date'">Invalid Start Date or End Date. Please use the date picker format.</xsl:when>
                    <xsl:when test="Messages/Message/Code = 'finish_failed'">
                        <xsl:choose>
                            <xsl:when test="$cmd = 'qwikclose'">Some files could not be finished.</xsl:when>
                            <xsl:otherwise>This file cannot be finished.</xsl:otherwise>
                        </xsl:choose>
                    </xsl:when>
                    <xsl:when test="Messages/Message/Code = 'split_failed'">
                        <xsl:choose>
                            <xsl:when test="$cmd = 'qwikclose'">Some files could not be finished.</xsl:when>
                            <xsl:otherwise>This file cannot be split.</xsl:otherwise>
                        </xsl:choose>
                    </xsl:when>
                    <xsl:otherwise>
                        Error code: <xsl:value-of select="Messages/Message/Code" />
                    </xsl:otherwise>
                </xsl:choose>
            </xsl:with-param>
        </xsl:call-template>
    </xsl:template>

    <xsl:template name="rejectedFileMessages">
        <xsl:for-each select="RejectedFiles/RejectedFile">
            <xsl:call-template name="uiWarning">
                <xsl:with-param name="type" select="'error'" />
                <xsl:with-param name="description">
                    <xsl:choose>
                        <xsl:when test="Code = 'empty'"><xsl:value-of select="FileName" /> is empty.</xsl:when>
                        <xsl:when test="Code = 'duplicate'"><xsl:value-of select="FileName" /> has already been uploaded.</xsl:when>
                        <xsl:when test="Code = 'not_text_or_excel'"><xsl:value-of select="FileName" /> is not text or excel.</xsl:when>
                        <xsl:when test="Code = 'unreadable'"><xsl:value-of select="FileName" /> is unreadable.</xsl:when>
                        <xsl:when test="Code = 'unsupported_excel_format'"><xsl:value-of select="FileName" /> is in an unsupported excel format.</xsl:when>
                        <xsl:otherwise>
                            <xsl:value-of select="FileName" />: <xsl:value-of select="Code" />
                        </xsl:otherwise>
                    </xsl:choose>
                </xsl:with-param>
            </xsl:call-template>
        </xsl:for-each>
    </xsl:template>

    <xsl:template name="uploadErrors">
        <xsl:if test="Form/Errors = '1'">
            <div id="errorGeneral">
                <xsl:for-each select="Form/Fields/Field">
                    <xsl:call-template name="uiWarning">
                        <xsl:with-param name="type" select="'error'" />
                        <xsl:with-param name="description">
                            <xsl:if test="ErrorType = 'file_upload_unreadable'">
                                Unable to read file.
                            </xsl:if>
                            <xsl:if test="ErrorType = 'file_upload_duplicate'">
                                File has already been uploaded.
                            </xsl:if>
                            <xsl:if test="ErrorType = 'file_upload_invalidtext'">
                                Invalid file type (extension).
                            </xsl:if>
                            <xsl:if test="ErrorType = 'file_upload_servererror'">
                                A server error was encountered.  Please try again in a few minutes.
                            </xsl:if>
                            <xsl:if test="ErrorType = 'file_upload_saveerror'">
                                An error was encountered when saving this file.  Please contact your account representative.
                            </xsl:if>
                            <xsl:if test="ErrorType = 'file_upload_noservicematch'">
                                File does not match any known services.  Please contact your account representative.
                            </xsl:if>
                        </xsl:with-param>
                    </xsl:call-template>
                </xsl:for-each>
            </div>
        </xsl:if>
    </xsl:template>

</xsl:stylesheet>
