<xsl:template name="DynamicXSL">
<xsl:variable name="varDynamicITApplicationID">0</xsl:variable>
<table id="tblAppRoles" border = "1" bordercolor = "#5c9bcc" cellpadding="1" >
<xsl:variable name="varCntOfAppRoles" select="count(/ROOT/AllITApplicationRole/ITApplicationRole[@ITApplicationID=$varDynamicITApplicationID])"/>
<tr bgcolor="#5c9bcc">
<td width="20%"></td>
<td align ="center" colspan="{count(/ROOT/AllITApplicationRole/ITApplicationRole[@ITApplicationID=$varDynamicITApplicationID])}"><font color="white"><b>Application Roles</b></font>
</td>
</tr>
<tr>
<td width="20%" bgcolor="#5c9bcc">
<font color="white"><b>Organization Roles</b></font>
</td><!--this td is for the column of OrgRole names-->
<xsl:for-each select="/ROOT/AllITApplicationRole/ITApplicationRole[@ITApplicationID=$varDynamicITApplicationID]">
<td bgcolor="#dae3f2" class="tdListDataMinor" align="center" ><b><xsl:value-of select="@Name"/></b></td>
</xsl:for-each>
</tr>
<!--here's where each row for a OrgRole gets displayed-->
<xsl:for-each select="/ROOT/OrgRoleAppRole/Org_App_Role[@ITApplicationID=$varDynamicITApplicationID]">
<xsl:sort select="@OrgRoleName"/>
<xsl:variable name="varOrgRoleID" select="@OrgRoleID"/>
<xsl:variable name="varOrgTypeID" select="@OrgTypeID"/>
<tr>
<xsl:if test="(position() mod 2 = 1)">
<xsl:attribute name="bgcolor">#EFEFEF</xsl:attribute>
</xsl:if>
<td width="30%" class="tdListDataMinor" title="{@OrgDescription}">
<xsl:value-of select="@OrgRoleName"/>(<xsl:value-of select="@OrgTypeName"/>)</td>
<xsl:for-each select="/ROOT/AllITApplicationRole/ITApplicationRole[@ITApplicationID=$varDynamicITApplicationID]">
<xsl:variable name="varAppRoleID" select="@ITApplicationRoleID"/>
<xsl:variable name="varOrgAppRoleID" select="/ROOT/AllOrgAppRole/OrganizationRole_ITApplicationRole[@OrganizationRoleID = $varOrgRoleID]/@ITApplicationRoleID"/>
<td align="center">
<xsl:variable name="varIsMapped">
<xsl:choose>
<xsl:when test="count(/ROOT/OrgRoleAppRole/Org_App_Role[@OrgRoleID=$varOrgRoleID and $varOrgAppRoleID=$varAppRoleID]) > 0">true</xsl:when>
<xsl:otherwise>false</xsl:otherwise>
</xsl:choose>
</xsl:variable>
<xsl:if test="$varIsMapped='true'">
<b>X</b>
</xsl:if>
</td>
</xsl:for-each><!--ITApplicationRole-->
</tr>
</xsl:for-each>
</table>
</xsl:template><!--name="DynamicXSL"-->
<xsl:template name="DynamicXSLForAppTree">
<xsl:variable name="varDynamicOrgRoleTypeID">74-9</xsl:variable>
<!--Display a tree of Apps and AppRoles, that are assoc'd to OrgRoles that the user has-->
<!-- varDynamicOrgRoleTypeID -->
<xsl:variable name="varOrganizationRoleID" select="substring-before($varDynamicOrgRoleTypeID,'-')"/>
<xsl:variable name="varOrganizationTypeID" select="substring-after($varDynamicOrgRoleTypeID,'-')"/>
<xsl:variable name="varAppID" select="/ROOT/OrgRoleAppRole/Org_App_Role[@OrgRoleID=$varOrganizationRoleID and @OrgTypeID=$varOrganizationTypeID]/ITApplicationID"/>
<table id="tblTreeViewAppRoles">
<xsl:for-each select="/ROOT/OrgRoleAppRole/Org_App_Role[@OrgRoleID=$varOrganizationRoleID and @OrgTypeID=$varOrganizationTypeID]">
<xsl:sort select="@AppName"/>
<xsl:variable name="varITApplicationID" select="@ITApplicationID"/>
<xsl:variable name="varITApplicationName" select="@AppName"/>
<xsl:variable name="varTreeIcon">
<xsl:choose>
<xsl:when test="position()=1">images/Treeview/Treeplus.gif</xsl:when>
<xsl:when test="position()=last()">images/Treeview/TreeLastplus.gif</xsl:when>
<xsl:otherwise>images/Treeview/Treeplus.gif</xsl:otherwise>
</xsl:choose>
</xsl:variable>
<tr style="padding-left:10" id="rowITApplication" myITApplicationID="{$varITApplicationID}"><!--id this TR so it can be searched for, and include the AppID-->
<!--App Name expands/contracts contained approles-->
<td onclick="TreeViewExpand(event);" class="tdTreeViewRow" id="Tree{$varITApplicationID}">
<img src="{$varTreeIcon}" myTreeviewImage="1"/>
<xsl:value-of select="@AppName"/>
</td>
</tr>
<tr style="display:none;" id="ChildOfRowITApplication{varITApplicationID}" >
<td style="padding-left:25">
<table>
<xsl:for-each select="/ROOT/AllOrgAppRole/OrganizationRole_ITApplicationRole[@OrganizationRoleID=$varOrganizationRoleID]">
<xsl:variable name="varITApplicationRoleID" select="@ITApplicationRoleID"/>
<xsl:for-each select="/ROOT/AllITApplicationRole/ITApplicationRole[@ITApplicationRoleID=$varITApplicationRoleID]">
<xsl:choose>
<xsl:when test="@ITApplicationID=$varITApplicationID">
<!--<xsl:value-of select="$varITApplicationRoleID"/>
<xsl:variable name="varAppRoleID" select="@ITApplicationRoleID"/>-->
<tr id="rowITApplicationRole" myITApplicationRoleID="{$varITApplicationRoleID}" myITApplicationRoleName="{@Name}" myITApplicationID = "{$varITApplicationID}" >
<td>
<img src="images/arrow_right.gif" myTreeviewImage="1"/><img src="spacer.gif" width="3" myTreeviewImage="1"/><xsl:value-of select="@Name"/><xsl:if test="@Description != ''"> - <xsl:value-of select="@Description"/></xsl:if>
</td>
<xsl:text disable-output-escaping="yes">
</xsl:text>
</tr>
</xsl:when>
</xsl:choose>
</xsl:for-each>
</xsl:for-each>
</table>
</td>
</tr>
<!-- Suppress Portal User Role -->
</xsl:for-each>
</table>
</xsl:template><!--name="DynamicXSLForAppTree"-->
Close |