source: main/trunk/ibisph-view/src/main/webapp/xslt/html/ExpandableSectionSelectionsListPage.xslt @ 19781

Last change on this file since 19781 was 19781, checked in by GarthBraithwaite_STG, 3 years ago

view, content - updated all topic pages to html5. Removed context nav xmls. Unversioned all QMs. xslt and css sectionsContent to contentBody. Changed panel css back to megamenu. Moved all input control xslt code to the selectionlist.xslt. Removed Click css class and moved all to Popup. ip/page.xslt to include basic control. Changed chart container from div to figure. Updated error jsp.

File size: 5.2 KB
Line 
1<?xml version="1.0" encoding="ISO-8859-1"?>
2
3<xsl:stylesheet version="3.0" 
4        xmlns:xsl ="http://www.w3.org/1999/XSL/Transform" 
5        xmlns:ibis="http://www.ibisph.org"
6
7        exclude-result-prefixes="ibis"
8>
9        <xsl:import href="Page.xslt"/>
10
11        <ibis:doc>
12                <name>html/ExpandableSectionSelectionsListPage</name>
13                <summary>Core templates that produce a URL based Section Selection Tree page</summary>
14                <description>
15                        USED BY query/selection/Page.xslt and secure/selection/SelectionPage.xslt
16                </description>
17        </ibis:doc>
18
19
20        <!-- ~~~~~~~~~~~~~~~~~~~~~~~ PARAMS / VARIABLES ~~~~~~~~~~~~~~~~~~~~~~~~ -->
21        <xsl:param name="document"
22                ibis:doc="Selection XML document which contains all the applicable
23                        'ibis:include' files.  There are several ways to do this functionality.
24                        1) two step process involving a Java code,
25                        2) use an XSL translator that supports xinclude,
26                        3) use an XSLT variable that contains the fully processed document.
27                        The latter approach is used in this situation because most selection
28                        pages are quite small and this option does not involve any outside
29                        dependence plus, this file should/is typically artifacted.  The key
30                        to this solution is with the apply-templates and the match that acts
31                        on 'ibis:include' elements."
32        >
33                <xsl:apply-templates mode="ibis.copy" select="/*/*"/>
34        </xsl:param>
35
36
37        <xsl:param name="Page.pageTitle" select="$document/TITLE"
38                ibis:doc="Set to 'TITLE' element's text to be used for the page's title text."
39        />
40
41        <xsl:param name="Page.metaDescription" select="$document/DESCRIPTION"
42                ibis:doc="Page/XML specific HTML template API implementation that uses
43                        the 'DESCRIPTION' element for the text.
44                "
45        />
46
47        <xsl:param name="Page.metaKeywords" select="$document/KEYWORDS"
48                ibis:doc="Page/XML specific HTML template API implementation that uses
49                        the 'KEYWORDS' element for the text.
50                "
51        />
52
53        <xsl:param name="ExpandableSectionSelectionsListPage.expandableListControlType" select="'checkbox'"
54                ibis:doc="Default expandable content control type.  Valid values are '' (shows everything)
55                        'radio' (shows only 1 at a time - collapses all others) and 'checkbox' (shows what was
56                        clicked on until clicked again to collapse).  This parameter makes it easy for an adopter
57                        to set this value via ss.xslt or some other xslt code.
58                "
59        />
60
61
62        <!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ TEMPLATES ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
63        <xsl:template name="Page.contentBody"
64                ibis:doc="Main page content template that creates the overview
65                        section, quick selection, and advanced selection sections."
66        >
67
68                <!-- Setup each major section.  Typically the quick and advanced selection sections. -->
69                <xsl:choose>
70                        <xsl:when test="exists($document/SECTIONS/SECTION)">
71                                <xsl:call-template name="ContentContainer.contentBlockWithDelimitedTitleTextsNodesets">
72                                        <xsl:with-param name="title"      select="'Overview'"/>
73                                        <xsl:with-param name="contentBlockType" select="'expandable'"/>
74                                        <xsl:with-param name="expandableContentShow" select="true()"/>
75                                        <xsl:with-param name="addWikiAttribute"      select="true()"/>
76                                        <xsl:with-param name="titleAndTextsNodeset"  select="$document/OVERVIEWS/OVERVIEW"/>
77                                </xsl:call-template>
78
79                                <xsl:for-each select="$document/SECTIONS/SECTION">
80                                        <xsl:call-template name="ContentContainer.expandable">
81                                                <xsl:with-param name="controlID"   select="concat('expandableSection.', position())"/>
82                                                <xsl:with-param name="controlName" select="NAME"/>
83                                                <xsl:with-param name="title"       select="TITLE"/>
84                                                <xsl:with-param name="description" select="DESCRIPTION"/>
85                                                <xsl:with-param name="content">
86                                                        <xsl:call-template name="SelectionsList.processSelections">
87                                                                <xsl:with-param name="selections"     select="SELECTIONS"/>
88                                                                <xsl:with-param name="containerClass" select="'ExpandableList ExtraWhiteSpace'"/>
89                                                                <xsl:with-param name="controlType"    select="$ExpandableSectionSelectionsListPage.expandableListControlType"/>
90                                                        </xsl:call-template>
91                                                </xsl:with-param>
92                                                <xsl:with-param name="show"       
93                                                        select="
94                                                                exists(SHOW) or
95                                                                (count(current()//SELECTIONS)=1) or
96                                                                (position()=1)
97                                                        "
98                                                />
99                                        </xsl:call-template>
100                                </xsl:for-each>
101                        </xsl:when>
102
103                        <xsl:otherwise>
104                                <xsl:call-template name="ContentContainer.contentBlockWithDelimitedTitleTextsNodesets">
105                                        <xsl:with-param name="title"      select="'Overview'"/>
106                                        <xsl:with-param name="addWikiAttribute" select="true()"/>
107                                        <xsl:with-param name="titleAndTextsNodeset" select="$document/OVERVIEWS/OVERVIEW"/>
108                                        <xsl:with-param name="contentBlockType" select="'fixed'"/>
109                                </xsl:call-template>
110
111                                <xsl:call-template name="SelectionsList.processSelections">
112                                        <xsl:with-param name="selections"     select="$document/SELECTIONS"/>
113                                        <xsl:with-param name="containerClass" select="'ExpandableList ExtraWhiteSpace'"/>
114                                        <xsl:with-param name="controlType"    select="$ExpandableSectionSelectionsListPage.expandableListControlType"/>
115                                </xsl:call-template>
116                        </xsl:otherwise>
117                </xsl:choose>
118        </xsl:template>
119
120</xsl:stylesheet>
121<!-- ============================= End of File ============================= -->
122
Note: See TracBrowser for help on using the repository browser.