﻿<?xml version="1.0" encoding="utf-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
    xmlns:msxsl="urn:schemas-microsoft-com:xslt" exclude-result-prefixes="msxsl">
  <xsl:output method="xml" indent="no" omit-xml-declaration="yes"/>

  <xsl:template match="/">

    <xsl:variable name="TemplateURL" select="AjaxRequest/TemplateURL"></xsl:variable>
    <xsl:variable name="HostName" select="AjaxRequest/HostName"></xsl:variable>
    <xsl:variable name="PortalItemID" select="AjaxRequest/Params/PortalItemID"></xsl:variable>
    <xsl:variable name="CurrentCol" select="AjaxRequest/Params/ColName"></xsl:variable>
    <xsl:variable name="CurrentColValue" select="AjaxRequest/Params/ColTextValue"></xsl:variable>
    <xsl:variable name="ColumnFormat" select="AjaxRequest/Params/ColumnFormat"></xsl:variable>
    <xsl:variable name="CRMOpportunityID" select="AjaxRequest/Params/CRMOpportunityID"></xsl:variable>

    <xsl:call-template name="TemplateDataColumnWidget_CSV">
      <xsl:with-param name="CurrentCol" select="$CurrentCol"></xsl:with-param>
      <xsl:with-param name="CurrentColValue" select="$CurrentColValue"></xsl:with-param>
      <xsl:with-param name="ColumnFormat" select="$ColumnFormat"></xsl:with-param>
      <xsl:with-param name="CRMOpportunityID" select="$CRMOpportunityID"></xsl:with-param>
    </xsl:call-template>

  </xsl:template>

  <xsl:template name="TemplateDataColumnWidget_CSV">
    <xsl:param name="CurrentCol" select="'N/A'"></xsl:param>
    <xsl:param name="CurrentColValue" select="'N/A'"></xsl:param>
    <xsl:param name="ColumnFormat" select="'N/A'"></xsl:param>
    <xsl:param name="CRMOpportunityID" select="'N/A'"></xsl:param>

    <xsl:variable name="ColFormattedValue">
      <xsl:choose>
        <xsl:when test="$ColumnFormat = 'Money' and string(format-number($CurrentColValue, '#')) != 'NaN'">
          <xsl:text>$</xsl:text>
          <xsl:value-of select="format-number($CurrentColValue, '#,###')"/>
        </xsl:when>
        <xsl:when test="$ColumnFormat = 'Percent'">
          <xsl:if test="string(number($CurrentColValue)) != 'NaN'">
            <xsl:value-of select="$CurrentColValue"/>
            <xsl:text>%</xsl:text>
          </xsl:if>
        </xsl:when>
        <xsl:otherwise>
          <xsl:value-of select="$CurrentColValue"/>
        </xsl:otherwise>
      </xsl:choose>
    </xsl:variable>

    <xsl:value-of select="$ColFormattedValue"/>

  </xsl:template>

</xsl:stylesheet>

