﻿<?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="yes"/>
	
	<xsl:template match="/">
		<xsl:variable name="MasterPortalItemID" select="AjaxRequest/Params/MasterPortalItemID"></xsl:variable>
		<xsl:variable name="Origin" select="AjaxRequest/Params/Origin"></xsl:variable>
		<xsl:variable name="UserID" select="AjaxRequest/Params/UserID"></xsl:variable>
		<xsl:variable name="Numbers" select="AjaxRequest/Numbers/Metrics"></xsl:variable>
		<xsl:variable name="DefaultMetric" select="AjaxRequest/Metrics"></xsl:variable>
		<xsl:variable name="GoalItemID" select="AjaxRequest/Params/GoalItemID"></xsl:variable>
		<xsl:variable name="GoalPortalItemID" select="AjaxRequest/GoalPortalItemID"></xsl:variable>
		<xsl:variable name="LoggedInUserID" select="AjaxRequest/LoggedInUserID"></xsl:variable>
		<xsl:variable name="GoalResponsible" select="AjaxRequest/GoalResponsible/."></xsl:variable>
		<xsl:variable name="IsGoalCoach">
			<xsl:choose>
				<xsl:when test="$GoalResponsible/Responsible[ID = $LoggedInUserID and Role='Coach']">
					<xsl:number value="1"/>
				</xsl:when>
				<xsl:otherwise>
					<xsl:number value="0"/>
				</xsl:otherwise>
			</xsl:choose>
		</xsl:variable>

		<div id="divMyNumberDBCompiledNumbers_Content">
			<xsl:variable name="Metric" select="$DefaultMetric/Metric[(InputType != 'Label' and InputType != 'None') or not(InputType)]"></xsl:variable>
			<xsl:for-each select="$Metric">
				<xsl:variable name="class">
					<xsl:choose>
						<xsl:when test="(position() mod 6)=1">
							text-blue
						</xsl:when>
						<xsl:when test="(position() mod 6)=2">
							medium-blue
						</xsl:when>
						<xsl:when test="(position() mod 6)=3">
							dark-blue
						</xsl:when>
						<xsl:when test="(position() mod 6)=4">
							border-blue
						</xsl:when>
						<xsl:when test="(position() mod 6)=5">
							text-blue
						</xsl:when>
						<xsl:when test="(position() mod 6)=0">
							medium-blue
						</xsl:when>
					</xsl:choose>
				</xsl:variable>
				<xsl:variable name="CallBack">
					<xsl:choose>
						<xsl:when test="$Origin = 'MyNumbersDashboard' and $IsGoalCoach = 1 
								  and count($GoalResponsible/Responsible[Role='Participant']) &gt; 1 and not($UserID[text()])">
							getReportingDashboardLeaderboard_3_0_Goal('optMyNumbersDBDateRange'
							, 'optMyNumbersDBUser', '<xsl:value-of select="MetricKey"/>', 'divNumbersLeaderBoard'
							, 'ReportingNumberGraph3_0', 0, 10, 1, <xsl:value-of select="$GoalPortalItemID"/>
							, <xsl:value-of select="$GoalItemID"/>)
						</xsl:when>
						<xsl:when test="$Origin = 'MyNumbersDashboard'">
							goalNumberDataEntryPanelForMetric('optMyNumberGoals','1','7','optMyNumbersDBUser','<xsl:value-of select="MetricKey"/>','divNumbersLeaderBoard','<xsl:value-of select="$MasterPortalItemID"></xsl:value-of>');
						</xsl:when>
						<xsl:when test="$Origin = 'ScoreCard'">
							getReportingDashboardLeaderboard_3_0('optMyNumbersDBTemplate','optMyNumbersDBDateRange'
							,'optMyNumbersDBPortal','optMyNumbersDBUser','<xsl:value-of select="MetricKey"/>'
							, 'divNumbersLeaderBoard', 'ReportingNumberGraph', 0, 5, 1);
						</xsl:when>
					</xsl:choose>
				</xsl:variable>

				<xsl:if test="(InputType !='Label' and InputType !='None') or not(InputType)">
					<div class="col-md-2 col-xs-12 col-sm-6 center onMouseOver"
						 onClick="document.getElementById('divNumbersGraph').innerHTML = '';
										 document.getElementById('divNumbersLeaderBoard').innerHTML = '';
										 LoadMyNumbersDashboardGraph_3_0({$MasterPortalItemID}
										 , 'optMyNumbersDBPortal', 'optMyNumberGoals', 'optMyNumbersDBUser'
										 , 'optMyNumbersDBTemplate', 'optMyNumbersDBDateRange', 'divNumbersGraph', '{MetricKey}');
										 {$CallBack}
										 document.getElementById('spanNumberGraphMetric').innerHTML='{MetricKeyDisplay}';
										$('#spanNumberGraphMetric').attr('defaultMetric', '{MetricKeyDisplay}');">

						<div class="stat-box {$class}">
							<span class="count">
								<span class="dec_font">
									<xsl:variable name="CurrentMetric" select="MetricKey"></xsl:variable>
									<xsl:variable name="Value" select="format-number(round($Numbers/Metric[Metric = $CurrentMetric]/Value), '###,###')"></xsl:variable>
									<xsl:choose>
										<xsl:when test="$Value = 'NaN'">
											<xsl:number value='0'/>
										</xsl:when>
										<xsl:otherwise>
											<xsl:value-of select="$Value"/>
										</xsl:otherwise>
									</xsl:choose>

								</span>
							</span>
							<span class="stat-text">
								<xsl:value-of select="MetricKeyDisplay"/>
							</span>
						</div>
					</div>
				</xsl:if>
			</xsl:for-each>
		</div>
	</xsl:template>
</xsl:stylesheet>
