﻿<?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:import href="WorkoutProgram.xslt"></xsl:import>
    <xsl:import href="AddProgram.xslt"></xsl:import>

    <xsl:output method="xml" indent="yes"/>

    <xsl:template match="/">
        <xsl:variable name="GoalID" select="AjaxRequest/Params/GoalID"></xsl:variable>
        <xsl:variable name="ResponsibleID" select="AjaxRequest/Params/ResponsibleID"></xsl:variable>
        <xsl:variable name="TargetDiv" select="AjaxRequest/Params/TargetDiv"></xsl:variable>
        <xsl:variable name="SelDate" select="AjaxRequest/Params/SelectedDate"></xsl:variable>

        <xsl:call-template name="WorkOutPrograms">
            <xsl:with-param name="PortalItemID" select="AjaxRequest/FitnessPrograms/FitnessProgram/PortalItemID"></xsl:with-param>
            <xsl:with-param name="FitnessXML" select="AjaxRequest/FitnessPrograms/."></xsl:with-param>
            <xsl:with-param name="Mode" select="AjaxRequest/Params/Mode"></xsl:with-param>
            <xsl:with-param name="SelDate" select="$SelDate"></xsl:with-param>
            <xsl:with-param name="AccName" select="AjaxRequest/FitnessPrograms/FitnessProgram/DisplayName"></xsl:with-param>
            <xsl:with-param name="AccID" select="AjaxRequest/FitnessPrograms/FitnessProgram/AccountID"></xsl:with-param>
            <xsl:with-param name="UserID" select="AjaxRequest/FitnessPrograms/FitnessProgram/UserID"></xsl:with-param>
            <xsl:with-param name="GoalID" select="$GoalID"></xsl:with-param>
            <xsl:with-param name="ResponsibleID" select="$ResponsibleID"></xsl:with-param>
            <xsl:with-param name="TargetDiv" select="$TargetDiv"></xsl:with-param>
            <xsl:with-param name="Origin">
                <xsl:if test="AjaxRequest/Params/GoalID">
                    <xsl:text>Goal</xsl:text>
                </xsl:if>
            </xsl:with-param>
        </xsl:call-template>

    </xsl:template>

    <xsl:template name ="WorkOutPrograms">
        <xsl:param name ="PortalItemID" select ="'N/A'"></xsl:param>
        <xsl:param name ="FitnessXML" select ="'N/A'"></xsl:param>
        <xsl:param name ="Mode" select ="'N/A'"></xsl:param>
        <xsl:param name ="SelDate" select ="'N/A'"></xsl:param>
        <xsl:param name ="AccName" select ="'N/A'"></xsl:param>
        <xsl:param name ="AccID" select ="'N/A'"></xsl:param>
        <xsl:param name="Origin" select="'N/A'"></xsl:param>
        <xsl:param name="GoalID" select="'N/A'"></xsl:param>
      <xsl:param name="ResponsibleID">
        <xsl:number value ="-99"/>
      </xsl:param>
        <xsl:param name="TargetDiv" select="'N/A'"></xsl:param>

        <xsl:variable name="GoalPortalItemID" select="$FitnessXML/GoalPortalItemID"></xsl:variable>
        <xsl:variable name="GoalPortalTypeID" select="$FitnessXML/GoalPortalTypeID"></xsl:variable>
        <xsl:variable name="HasWorkModule" select="$FitnessXML/HasWorkModule"></xsl:variable>
        
        <table cellpadding ="0" cellspacing ="2" style="margin-left:10px;margin-right:10px;width:100%;">
            <tr>
                <td colspan="3">
                    <div id="div_ProgramList_{$PortalItemID}_Contente_Data_Client_Programs">
                        <div id="div_ProgramList_{$PortalItemID}_Contente_Data_Client_Programs_Header" class="seperatorLine link"
                             onClick="program_ExpandCollapse('div_ProgramList_{$PortalItemID}_Contente_Data_Client_Programs_Content');">
                            <xsl:choose>
                                <xsl:when test="$Origin = 'Goal'">
                                    <span class="labelBoldItalic" style="color:#003366;">
                                        Client Programs&#xa0;(<xsl:value-of select="count($FitnessXML/FitnessProgram[ClientAccountID &gt; -99 and ClientUserID &gt; -99 and IsPublic = 1])"/>)
                                    </span>
                                </xsl:when>
                                <xsl:otherwise>
                                    <span class="labelBoldItalic" style="color:#003366;">
                                        Client Programs&#xa0;(<xsl:value-of select="count($FitnessXML/FitnessProgram[ClientAccountID &gt; -99 and ClientUserID &gt; -99])"/>)
                                    </span>
                                </xsl:otherwise>
                            </xsl:choose>


                        </div>
                        <div id="div_ProgramList_{$PortalItemID}_Contente_Data_Client_Programs_Content" style="display:block;">
                            <table cellpadding ="0" cellspacing ="2" style="margin-left:10px;margin-right:10px;width:100%;">
                                <xsl:choose>
                                    <xsl:when test="$Origin = 'Goal'">
                                        <xsl:for-each select ="$FitnessXML/FitnessProgram[(ClientAccountID &gt; -99 and ClientUserID &gt; -99) and IsPublic = 1]">
                                            <xsl:call-template name="Workout_ProgramList">
                                                <xsl:with-param name="AccountName" select="DisplayName"></xsl:with-param>
                                                <xsl:with-param name="AccountID" select="AccountID"></xsl:with-param>
                                                <xsl:with-param name="PortalItemID" select="PortalItemID"></xsl:with-param>
                                                <xsl:with-param name="ProgramID" select="ProgramID"></xsl:with-param>
                                                <xsl:with-param name="ProgramName" select="ProgramName"></xsl:with-param>
                                                <xsl:with-param name="Description" select="Description"></xsl:with-param>
                                                <xsl:with-param name="DisplayName" select="DisplayName"></xsl:with-param>
                                                <xsl:with-param name="CustomType" select="CustomType"></xsl:with-param>
                                                <xsl:with-param name="ClientUserID" select="UserID"></xsl:with-param>
                                                <xsl:with-param name="Mode" select="$Mode"></xsl:with-param>
                                                <xsl:with-param name="SelDate" select="$SelDate"></xsl:with-param>
                                                <xsl:with-param name="Origin" select="$Origin"></xsl:with-param>
                                                <xsl:with-param name="GoalID" select="$GoalID"></xsl:with-param>
                                                <xsl:with-param name="ResponsibleID" select="$ResponsibleID"></xsl:with-param>
                                                <xsl:with-param name="TargetDiv" select="$TargetDiv"></xsl:with-param>
                                            </xsl:call-template>
                                        </xsl:for-each>
                                    </xsl:when>
                                    <xsl:otherwise>
                                        <xsl:for-each select ="$FitnessXML/FitnessProgram[ClientAccountID &gt; -99 and ClientUserID &gt; -99]">
                                            <xsl:call-template name="Workout_ProgramList">
                                                <xsl:with-param name="AccountName" select="DisplayName"></xsl:with-param>
                                                <xsl:with-param name="AccountID" select="AccountID"></xsl:with-param>
                                                <xsl:with-param name="PortalItemID" select="PortalItemID"></xsl:with-param>
                                                <xsl:with-param name="ProgramID" select="ProgramID"></xsl:with-param>
                                                <xsl:with-param name="ProgramName" select="ProgramName"></xsl:with-param>
                                                <xsl:with-param name="Description" select="Description"></xsl:with-param>
                                                <xsl:with-param name="DisplayName" select="DisplayName"></xsl:with-param>
                                                <xsl:with-param name="CustomType" select="CustomType"></xsl:with-param>
                                                <xsl:with-param name="ClientUserID" select="UserID"></xsl:with-param>
                                                <xsl:with-param name="Mode" select="$Mode"></xsl:with-param>
                                                <xsl:with-param name="SelDate" select="$SelDate"></xsl:with-param>
                                              <xsl:with-param name="ResponsibleID" select="$ResponsibleID"></xsl:with-param>
                                              <xsl:with-param name="Origin" select="$Origin"></xsl:with-param>
                                                <xsl:with-param name="TargetDiv" select="$TargetDiv"></xsl:with-param>
                                            </xsl:call-template>
                                        </xsl:for-each>
                                    </xsl:otherwise>
                                </xsl:choose>

                            </table>
                        </div>
                    </div>
                </td>
            </tr>
            <tr>
                <td colspan="3">
                    <div id="div_ProgramList_{$PortalItemID}_Contente_Data_Master_Programs">
                        <div id="div_ProgramList_{$PortalItemID}_Contente_Data_Master_Programs_Header" class="seperatorLine link"
                             onClick="program_ExpandCollapse('div_ProgramList_{$PortalItemID}_Contente_Data_Master_Programs_Content');">
                            <xsl:choose>
                                <xsl:when test="$Origin = 'Goal'">
                                    <span class="labelBoldItalic link" style="color:#003366;">
                                        Master Programs&#xa0;(<xsl:value-of select="count($FitnessXML/FitnessProgram[(ClientAccountID &lt;= 0 or ClientUserID &lt;= 0)])"/>)
                                    </span>
                                </xsl:when>
                                <xsl:otherwise>
                                    <span class="labelBoldItalic link" style="color:#003366;">
                                        Master Programs&#xa0;(<xsl:value-of select="count($FitnessXML/FitnessProgram[(ClientAccountID &lt;= 0 or ClientUserID &lt;= 0)])"/>)
                                    </span>
                                </xsl:otherwise>
                            </xsl:choose>

                        </div>
                        <div id="div_ProgramList_{$PortalItemID}_Contente_Data_Master_Programs_Content" style="display:block;">
                            <table cellpadding ="0" cellspacing ="2" style="margin-left:10px;margin-right:10px;width:100%;">
                                <xsl:choose>
                                    <xsl:when test="$Origin = 'Goal'">
                                        <xsl:for-each select ="$FitnessXML/FitnessProgram[(ClientAccountID &lt;= 0 or ClientUserID &lt;= 0)]">
                                            <xsl:call-template name="Workout_ProgramList">
                                                <xsl:with-param name="AccountName" select="DisplayName"></xsl:with-param>
                                                <xsl:with-param name="AccountID" select="AccountID"></xsl:with-param>
                                                <xsl:with-param name="PortalItemID" select="PortalItemID"></xsl:with-param>
                                                <xsl:with-param name="ProgramID" select="ProgramID"></xsl:with-param>
                                                <xsl:with-param name="ProgramName" select="ProgramName"></xsl:with-param>
                                                <xsl:with-param name="Description" select="Description"></xsl:with-param>
                                                <xsl:with-param name="DisplayName" select="DisplayName"></xsl:with-param>
                                                <xsl:with-param name="CustomType" select="CustomType"></xsl:with-param>
                                                <xsl:with-param name="ClientUserID" select="UserID"></xsl:with-param>
                                                <xsl:with-param name="Mode" select="$Mode"></xsl:with-param>
                                                <xsl:with-param name="SelDate" select="$SelDate"></xsl:with-param>
                                                <xsl:with-param name="GoalID" select="$GoalID"></xsl:with-param>
                                                <xsl:with-param name="Origin" select="$Origin"></xsl:with-param>
                                                <xsl:with-param name="ResponsibleID" select="$ResponsibleID"></xsl:with-param>
                                                <xsl:with-param name="TargetDiv" select="$TargetDiv"></xsl:with-param>
                                            </xsl:call-template>
                                        </xsl:for-each>
                                    </xsl:when>
                                    <xsl:otherwise>
                                        <xsl:for-each select ="$FitnessXML/FitnessProgram[ClientAccountID &lt;= 0 or ClientUserID &lt;= 0]">
                                            <xsl:call-template name="Workout_ProgramList">
                                                <xsl:with-param name="AccountName" select="$AccName"></xsl:with-param>
                                                <xsl:with-param name="AccountID" select="$AccID"></xsl:with-param>
                                                <xsl:with-param name="PortalItemID" select="PortalItemID"></xsl:with-param>
                                                <xsl:with-param name="ProgramID" select="ProgramID"></xsl:with-param>
                                                <xsl:with-param name="ProgramName" select="ProgramName"></xsl:with-param>
                                                <xsl:with-param name="Description" select="Description"></xsl:with-param>
                                                <xsl:with-param name="DisplayName" select="DisplayName"></xsl:with-param>
                                                <xsl:with-param name="CustomType" select="CustomType"></xsl:with-param>
                                                <xsl:with-param name="ClientUserID" select="UserID"></xsl:with-param>
                                                <xsl:with-param name="Mode" select="$Mode"></xsl:with-param>
                                                <xsl:with-param name="SelDate" select="$SelDate"></xsl:with-param>
                                              <xsl:with-param name="ResponsibleID" select="$ResponsibleID"></xsl:with-param>
                                              <xsl:with-param name="Origin" select="$Origin"></xsl:with-param>
                                                <xsl:with-param name="TargetDiv" select="$TargetDiv"></xsl:with-param>
                                            </xsl:call-template>
                                        </xsl:for-each>
                                    </xsl:otherwise>
                                </xsl:choose>
                            </table>
                        </div>                       
                    </div>
                </td>
            </tr>
            <xsl:if test ="$GoalPortalItemID &gt; 0 and ($GoalPortalTypeID =2 or $HasWorkModule = 1) and $Origin = 'Goal'">
                <tr>
                    <td colspan="3">
                        <div style="margin-top:10px;" id="div_AddCustomWorkout_{$PortalItemID}_Operations" targetDiv="div_{$PortalItemID}_AddWorkout_Operations">
                            <itemExpansionStatus id="div_AddCustomWorkout_{$PortalItemID}_Operations_expansionStatus" status="collapsed"></itemExpansionStatus>
                            <div id="div_{$PortalItemID}_AddWorkout_Operations"
                                 style="display:none;padding:10px;border:1px solid #385D8A;width:80%"  name="collapsed">

                            </div>
                        </div>
                    </td>
                </tr>
                <tr>
                    <td colspan="3">
                        <input type="button" value="Add Custom Workout" class="button" id="btnAddWorkout_Planner"
                                          style="margin-left:3px;"
                                          onClick="return program_displayAddCustomWorkout('{$PortalItemID}', 
                                                   '{$ResponsibleID}', 'div_{$PortalItemID}_AddWorkout_Operations', 
                                                    '{$Origin}', '{$Mode}', '{$SelDate}','{$GoalID}');"></input>
                    </td>
                </tr>
            </xsl:if>
        </table>
        <!--<div id="div_ProgramList_{$PortalItemID}_Operations" style="display:none">
        </div>-->
    </xsl:template>
</xsl:stylesheet>
