﻿<?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:include href="Item.xslt"/>

    <xsl:key name="distinctSeqNum" match="AjaxRequest/ActionDoIt/DetailItems/DetailItem" use="./Title"></xsl:key>

    <xsl:template match="/">
        <xsl:variable name="TemplatePathURL" select="normalize-space(AjaxRequest/TemplateURL)"/>
        <xsl:variable name="OrderBy" select="AjaxRequest/Params/OrderBy"/>
        <xsl:variable name="ItemID" select="AjaxRequest/Params/ItemID"/>
        <xsl:variable name="HostName" select="normalize-space(AjaxRequest/HostName)"/>
        <xsl:variable name="RequestedDivID" select="AjaxRequest/Params/DivID"/>
        <xsl:variable name="Mode" select="AjaxRequest/Params/Mode"/>
        <xsl:variable name="PastDueCount" select="count(AjaxRequest/ActionDoIt/DetailItems/DetailItem[normalize-space(TotalDays) &lt; 0 and (LSItemID = $ItemID or $ItemID &lt;=1)])"/>


        <div id="DoIt_FilterContainer_{$Mode}" style="display: block">
            <input type="hidden" id="hiddenGoalID" value="{$ItemID}"></input>
            <table class="tableMaster">
                <tr>
                    <xsl:if test ="$OrderBy = 1">
                        <td width="20%">
                            <input id="rdbViewDay" type="radio" name="orderByNewDoIt" checked="true"
                                    class="label"
                                   onClick="GetDoITData('{$RequestedDivID}', '{$ItemID}', 'DashBoard', '1.1', '1');">
                                View By Day
                            </input>

                        </td>
                        <td width="20%">
                            <input id="rdbViewGoal" type="radio" name="orderByNewDoIt"
                                   class="label"
                                   onClick="GetDoITData('{$RequestedDivID}', '{$ItemID}', 'DashBoard', '1.1', '2');">View By Goal</input>
                        </td>
                    </xsl:if>
                    <xsl:if test ="$OrderBy = 2">
                        <td width="20%">
                            <input id="rdbViewDay" type="radio" name="orderByNewDoIt"
                                    class="label"
                                   onClick="GetDoITData('{$RequestedDivID}', '{$ItemID}', 'DashBoard', '1.1', '1');">
                                View By Day
                            </input>

                        </td>
                        <td width="20%">
                            <input id="rdbViewGoal" type="radio" name="orderByNewDoIt" checked="true"
                                   class="label"
                                   onClick="GetDoITData('{$RequestedDivID}', '{$ItemID}', 'DashBoard', '1.1', '2');">View By Goal</input>
                        </td>
                    </xsl:if>
                    <td width="60%"></td>
                </tr>
            </table>
        </div>
        <div id="{$RequestedDivID}_Items">
            <xsl:if test ="$PastDueCount &gt; 0 and $OrderBy = 1">
                <div id="div_doIt_PastDue">
                    <div id="div_PastDue_Header" class="seperatorLine link"
                         onclick="return DoIt_getDoItForSelectedOrder('div_PastDue_Content','0', 'PastDue', '1', '{$ItemID}');">
                        <table cellspacing="0" cellpadding="0">
                            <tr>
                                <td width="85%">
                                    <span class="labelBoldItalic" style="color:red">
                                        Past Due&#xa0;(<span id="div_doIt_PastDue_Header_Count">
                                            <xsl:value-of select ="$PastDueCount"/>
                                        </span>)
                                    </span>
                                </td>
                            </tr>
                        </table>
                    </div>
                    <div id="div_PastDue_Content" style="display: none;" class="seperatorLine">
                    </div>
                </div>
            </xsl:if>
            <xsl:choose>
                <xsl:when test="$OrderBy = 1">


                    <xsl:variable name="DetailItems">
                        <xsl:copy-of  select ="AjaxRequest/ActionDoIt/DetailItems/DetailItem[TotalDays &gt;=0 and TotalDays &lt; 7]"></xsl:copy-of>
                    </xsl:variable>

                    <xsl:for-each select="msxsl:node-set($DetailItems)/DetailItem[not(following::DetailItem/Title = Title)]">

                        <xsl:variable name="Title" select="Title"/>

                        <xsl:variable name="ActionCount" 
                                      select="count(../DetailItem[Title = $Title and TotalDays &gt;=0 and TotalDays &lt; 7 and (LSItemID = $ItemID or $ItemID &lt;=1)])" />

                        <div id="div_{KeyParameter}">
                            <xsl:choose>
                                <xsl:when test ="normalize-space($ActionCount) &gt; 0">

                                    <div id="div_{KeyParameter}_Header" class="seperatorLine link">
                                        <table cellspacing="0" cellpadding="0" width="100%">
                                            <tr>
                                                <td width="75%">
                                                    <span class="labelBoldItalic"
                                                          onclick="return DoIt_getDoItForSelectedOrder(
                                                                            'div_{KeyParameter}_Content'
                                                                            , '{KeyParameter}', 'Day/Goal'
                                                                            , '{$OrderBy}', '{$ItemID}');">
                                                        <xsl:value-of select ="Title"/>&#xa0;(<span id="div_{KeyParameter}_Header_Count">
                                                            <xsl:value-of select="$ActionCount"/>
                                                        </span>)
                                                    </span>
                                                </td>
                                                <td width="25%" text-align="right">
                                                    <div class="labelBoldItalic" style="text-align:right">
                                                        <xsl:value-of select="../../DetailItems/DetailItem[Title = $Title and TotalDays &gt;=0 and TotalDays &lt; 7]/ActionDueDate"/>
                                                    </div>
                                                </td>
                                            </tr>
                                        </table>
                                    </div>
                                    <xsl:variable name="KeyParameter" select ="normalize-space(KeyParameter)"/>

                                    <div id="div_{KeyParameter}_Content" style="display: block;" class="seperatorLine">
                                        <xsl:for-each
select="../DetailItem[Title = $Title and TotalDays &gt;=0 and TotalDays &lt; 7 and (LSItemID = $ItemID or $ItemID &lt;=1)]">
                                            <xsl:call-template name="Item">
                                                <xsl:with-param name="ItemDivPrefix">
                                                    <xsl:text>div_</xsl:text>
                                                    <xsl:value-of select="KeyParameter"/>
                                                    <xsl:text>_Content</xsl:text>
                                                </xsl:with-param>
                                                <xsl:with-param name="ItemID" select="ItemID"></xsl:with-param>
                                                <xsl:with-param name="ItemName" select="Item"></xsl:with-param>
                                                <xsl:with-param name="TemplatePathURL" select="$TemplatePathURL"></xsl:with-param>
                                                <xsl:with-param name="ItemSubID" select="ItemSubID"></xsl:with-param>
                                                <xsl:with-param name="ItemSubTitle" select="ItemSubTitle"></xsl:with-param>
                                                <xsl:with-param name="StatusID" select="StatusID"></xsl:with-param>
                                                <xsl:with-param name="HostName" select="$HostName"></xsl:with-param>
                                                <xsl:with-param name="OrderBy" select="$OrderBy"></xsl:with-param>
                                                <xsl:with-param name="PermissionID" select="PermissionID"></xsl:with-param>
                                                <xsl:with-param name="TotalDays" select="TotalDays"></xsl:with-param>
                                                <xsl:with-param name="KeyParameter" select="KeyParameter"></xsl:with-param>
                                                <xsl:with-param name="ItemType" select="ItemType"></xsl:with-param>
                                                <xsl:with-param name="TemplateSourceID" select="TemplateSourceID"></xsl:with-param>
                                                <xsl:with-param name="FirstName" select="ResponsibleName"></xsl:with-param>
                                                <xsl:with-param name="MineOrOther" select="MineOrOther"></xsl:with-param>
                                                <xsl:with-param name="Mode" select="$Mode"></xsl:with-param>
                                                <xsl:with-param name="OwnerPortalItemID" select="OwnerPortalItemID"></xsl:with-param>
                                                <xsl:with-param name="GoalID">
                                                    <xsl:choose>
                                                        <xsl:when test="GoalID">
                                                            <xsl:value-of select="GoalID"/>
                                                        </xsl:when>
                                                        <xsl:otherwise>
                                                            <xsl:number value ="-99"/>
                                                        </xsl:otherwise>
                                                    </xsl:choose>
                                                </xsl:with-param>
                                            </xsl:call-template>
                                        </xsl:for-each>
                                    </div>
                                </xsl:when>
                                <xsl:otherwise>
                                    <div id="div_{KeyParameter}_Content" style="display: none;" class="seperatorLine">
                                    </div>
                                </xsl:otherwise>
                            </xsl:choose>
                        </div>
                    </xsl:for-each>
                </xsl:when>
                <xsl:when test="$OrderBy = 2">
                    <xsl:for-each select="AjaxRequest/ActionDoIt/DetailItems/DetailItem[not(following::DetailItem/KeyParameter = KeyParameter)]">
                        <xsl:variable name="KeyParameter" select="KeyParameter"/>
                        <xsl:variable name="ActionCount" select="count(../../DetailItems/DetailItem[KeyParameter = $KeyParameter])" />
                        <xsl:variable name="SubTitleID" select="SubTitleID"/>
                        <div id="div_{KeyParameter}">
                            <div id="div_{KeyParameter}_Header" class="seperatorLine link">
                                <table cellspacing="0" cellpadding="0" width="100%">
                                    <tr>
                                        <td width="75%">
                                            <span class="labelBoldItalic"
                                                  onclick="return DoIt_getDoItForSelectedOrder(
                                                                            'div_{KeyParameter}_Content'
                                                                            , '{KeyParameter}', 'Day/Goal'
                                                                            , '{$OrderBy}', '{$ItemID}');">
                                                <xsl:value-of select ="Title"/>&#xa0;(<span id="div_{KeyParameter}_Header_Count">
                                                    <xsl:value-of select="$ActionCount"/>
                                                </span>)
                                            </span>
                                            <a href="http://{$HostName}/Goal.aspx?ID={KeyParameter}" class="link" target="_blank">(Open Goal)</a>
                                        </td>
                                        <td width="25%" text-align="right">
                                            <div class="labelBoldItalic"  style="text-align:right">
                                                <a href="http://{$HostName}/LifeSpace.aspx?ID={SubTitleID}" class="link" target="_blank">
                                                    <xsl:value-of select ="SubTitle"/>
                                                </a>
                                            </div>
                                        </td>
                                    </tr>
                                </table>
                            </div>
                            <xsl:choose>
                                <xsl:when test ="count(preceding-sibling::DetailItem[KeyParameter != $KeyParameter]) &lt; 10">
                                    <div id="div_{KeyParameter}_Content" style="display: block;" class="seperatorLine">
                                        <xsl:for-each select="../../DetailItems/DetailItem[normalize-space(KeyParameter)=$KeyParameter]">
                                            <xsl:call-template name="Item">
                                                <xsl:with-param name="ItemDivPrefix">
                                                    <xsl:text>div_</xsl:text>
                                                    <xsl:value-of select="KeyParameter"/>
                                                    <xsl:text>_Content</xsl:text>
                                                </xsl:with-param>
                                                <xsl:with-param name="ItemID" select="ItemID"></xsl:with-param>
                                                <xsl:with-param name="ItemName" select="Item"></xsl:with-param>
                                                <xsl:with-param name="TemplatePathURL" select="$TemplatePathURL"></xsl:with-param>
                                                <xsl:with-param name="ItemSubID" select="ItemSubID"></xsl:with-param>
                                                <xsl:with-param name="ItemSubTitle" select="ItemSubTitle"></xsl:with-param>
                                                <xsl:with-param name="StatusID" select="StatusID"></xsl:with-param>
                                                <xsl:with-param name="HostName" select="$HostName"></xsl:with-param>
                                                <xsl:with-param name="OrderBy" select="$OrderBy"></xsl:with-param>
                                                <xsl:with-param name="PermissionID" select="PermissionID"></xsl:with-param>
                                                <xsl:with-param name="TotalDays" select="TotalDays"></xsl:with-param>
                                                <xsl:with-param name="KeyParameter" select="KeyParameter"></xsl:with-param>
                                                <xsl:with-param name="ItemType" select="ItemType"></xsl:with-param>
                                                <xsl:with-param name="TemplateSourceID" select="TemplateSourceID"></xsl:with-param>
                                                <xsl:with-param name="OwnerPortalItemID" select="OwnerPortalItemID"></xsl:with-param>
                                                <xsl:with-param name="GoalID">
                                                    <xsl:choose>
                                                        <xsl:when test="GoalID">
                                                            <xsl:value-of select="GoalID"/>
                                                        </xsl:when>
                                                        <xsl:otherwise>
                                                            <xsl:number value ="-99"/>
                                                        </xsl:otherwise>
                                                    </xsl:choose>
                                                </xsl:with-param>
                                            </xsl:call-template>
                                        </xsl:for-each>
                                    </div>
                                </xsl:when>
                                <xsl:otherwise>
                                    <div id="div_{KeyParameter}_Content" style="display: none;" class="seperatorLine">
                                    </div>
                                </xsl:otherwise>
                            </xsl:choose>
                        </div>
                    </xsl:for-each>
                </xsl:when>
                <xsl:otherwise>

                </xsl:otherwise>
            </xsl:choose>
        </div>
    </xsl:template>
</xsl:stylesheet>
