source: main/adopters/hi/trunk/src/main/webapps/hhdw-view/xslt/html/SiteSpecific.xslt @ 25278

Last change on this file since 25278 was 25278, checked in by Paul Leo, 3 months ago

Hawaii Search, forcing it to use https://google...

File size: 14.3 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
10        <ibis:doc>
11                <name>html/SiteSpecific</name>
12                <summary>
13                        Main site specific template API definitions and core page API
14                        template overrides.
15                </summary>
16                <description>
17                        This XSLT provides the core, base site specific API related template
18                        definitions.  It should contain global, general definitions like menu
19                        code and general site specific APIs.  If specific definitions are
20                        implemented then the local SiteSpecific.xslt will need to make sure
21                        that the "correct" template definition is implemented.  Otherwise high
22                        level template overrides will take precedence over lower level page
23                        specific definitions as the SiteSpecific.xslt is the last template
24                        imported.
25                </description>
26        </ibis:doc>
27
28
29        <xsl:param name="Page.applicationTitle" select="'Hawai&#699;i IBIS'"
30                ibis:doc="Used for the page's title element prefix text"
31        />
32
33        <xsl:param name="ibis.adopterTitle" select="'Hawai&#699;i'"
34                ibis:doc="Value to be used when the XSLT code needs a title usage example
35                        is CP reports that compare community, state, and US.
36                "
37        />
38
39        <xsl:param name="SiteNavigationSelectionsPathAndName" 
40                select="ibis:getContentPath('xml/selection/navigation/SiteNavigationSelections.xml')"
41        />
42        <xsl:param name="SiteSpecific.siteNavigationSelections"
43                ibis:doc="Menu XML document/elements which contains all the applicable
44                        'xincluded' sub files.  There are several ways to do this xinclude
45                        functionality.  1) two step process involving a Java code, 2) use
46                        an XSL processor that supports xinclude, 3) create a variable that
47                        contains the entire document fully processed.  The latter approach
48                        is used in this situation because the menu files are quite small and
49                        this option does not involve any outside dependence.  For performance
50                        xincludes might not be a good way to go but for maint it is a good
51                        solution."
52        >
53                <xsl:apply-templates select="document($SiteNavigationSelectionsPathAndName)/SELECTIONS/*" mode="ibis.copy"/>
54        </xsl:param>
55
56        <xsl:param name="PathSegments" select="'about'" ibis:doc="injected via the commonModelMapListController which most controllers inherit."/>
57        <xsl:param name="SiteSpecific.siteNavigationSelectedSelectionName" select="concat($PathSegments[1], 'Menu')"
58                ibis:doc="Used to reference the the context menu items."
59        />
60        <xsl:param name="SiteSpecific.navigationPathSelections"
61                ibis:doc="Default path segments for bread crumb trails..."
62        >
63                <xsl:for-each select="$PathSegments[position() != last()]">
64                        <xsl:variable name="currentPathSegment" select="position()"/>
65                        <SELECTION>
66                                <CONTENT>
67                                        <xsl:value-of select="concat(upper-case(substring(.,1,1)), substring(., 2))"/>
68                                </CONTENT>
69                        </SELECTION>
70                        <SELECTION>
71                                <CONTENT>Current</CONTENT>
72                        </SELECTION>
73                </xsl:for-each>
74        </xsl:param>
75
76
77        <xsl:param name="SiteSpecific.siteAuthenticatedUserSelectionXMLFilePathAndName" 
78                select="ibis:getContentPath('xml/selection/navigation/AuthenticatedUserSelection.xml')"
79        />
80        <xsl:param name="SiteSpecific.siteNonAuthenticatedUserSelectionXMLFilePathAndName" 
81                select="ibis:getContentPath('xml/selection/navigation/UserSelection.xml')"
82        />
83        <xsl:param name="SiteSpecific.siteAuthenticatedUserSelections">
84                <xsl:apply-templates select="document($SiteSpecific.siteAuthenticatedUserSelectionXMLFilePathAndName)/SELECTION/SELECTIONS" mode="ibis.copy"/>
85        </xsl:param>
86        <xsl:param name="SiteSpecific.siteNonAuthenticatedUserSelections">
87                <xsl:apply-templates select="document($SiteSpecific.siteNonAuthenticatedUserSelectionXMLFilePathAndName)/SELECTION/SELECTIONS" mode="ibis.copy"/>
88        </xsl:param>
89
90
91        <xsl:param name="SiteSpecific.printPageFooter" 
92                ibis:doc="contents of the print footer to show if media=print"
93        >
94                The information provided above is from the Hawaii Health Data Warehouse
95                web site (http://hhdw.org/).  The information published  on this website
96                may be reproduced without permission. Please use the following citation:
97                &quot;
98                        Retrieved
99                        <xsl:value-of select="ibis:getFormattedDateTime(current-dateTime())"/>
100                        from Hawaii State Department of Health, Hawaii Health Data Warehouse
101                        Web site: http://hhdw.org/
102                &quot;.
103
104                <xsl:if test="string-length($Page.XMLModifedDate) != 0">
105                        <br/><br/>
106                        Content updated: <xsl:value-of select="$Page.XMLModifedDate"/>
107                </xsl:if>
108        </xsl:param>
109
110
111        <xsl:param name="SiteSpecific.logoutURL" select="concat($ibis.baseRequestPath, 'user/logout')"/>
112
113
114        <xsl:param name="Kendo.valueAttributeColumnTitle" select="'Statistical Stability'"/>
115
116
117        <xsl:template name="Page.banner"/>
118
119
120        <xsl:template name="Page.header" 
121                ibis:doc="State IBIS-PH specific implementation of the 'html.header'
122                        API template.  This template provides the State and DOH banners via
123                        a siteSpecific.headerBanner template call and the blue IBIS-PH
124                        graphic with site navigation menus via the siteSpecific.siteNavigation
125                        template.  To turn off the banners, simply override it with nothing."
126        >
127                <header id="header">
128                        <div id="siteNavigation">
129                                <nav>
130                                        <input id="siteMenuControl"  type="checkbox" name="siteMenuControl"/>
131                                        <label for="siteMenuControl" title="Show/hide the menu selections" class="FontIcon"></label>
132                                        <xsl:call-template name="SelectionsList.processSelections">
133                                                <xsl:with-param name="containerID"    select="'siteNavigationMenu'"/>
134                                                <xsl:with-param name="containerClass" select="'HorizontalMenu'"/>
135                                                <xsl:with-param name="selections"     select="$SiteSpecific.siteNavigationSelections"/>
136                                        </xsl:call-template>
137                                </nav>
138
139                                <div class="SiteSearchContainer">
140                                        <form id="siteSearch" name="siteSearch" class="Search"
141                                                method="get" 
142                                                action="https://www.google.com/search" 
143                                                contenteditable="contenteditable"
144                                        >
145                                                <label for="siteSearchInput" accesskey="s" class="OffPage">Search the site:</label>
146                                                <input id="siteSearchInput" name="q" 
147                                                        placeholder="Search"
148                                                        type="text" autocomplete="on"
149                                                        dir="ltr" spellcheck="false" 
150                                                />
151                                                <button type="submit" value="" alt="Search" title="Search" font-icon="&#xe13e;"></button>
152                                                <input type="hidden" name="sitesearch" value="hhdw.org" title="site URL to be searched"/>
153                                        </form>
154                                        <a id="mySelections" href="query/definition/index/MyDefinitions.html">
155                                                <img src="image/avatar.jpg" alt="Log in"/>
156                                        </a>
157                                </div>
158                        </div>
159                </header>
160                <div id="headerHero">
161                        <div class="LogoStack">
162                                <div class="LogoBox" onclick="location.href='/'" style="cursor: pointer">
163                                        <img src="image/logo.png"/>
164                                </div>
165                        </div>
166                </div>
167<!-- 20211219 URL for home may need to be changed need to speak with Garth -->
168                <div class="NavigationPathSocialMedia">
169                        <div id="navigationPath">
170                                <xsl:call-template name="SelectionsList.processSelections">
171                                        <xsl:with-param name="selections">
172                                                <SELECTION>
173                                                        <TITLE>Home</TITLE>
174                                                        <DESCRIPTION>HHDW home page</DESCRIPTION>
175                                                        <URL>/</URL>
176                                                </SELECTION>
177                                                <xsl:copy-of select="$SiteSpecific.navigationPathSelections"/>
178                                        </xsl:with-param>
179                                </xsl:call-template>
180                        </div>
181
182                        <div class="SocialMedia" title="options to easily share this page.">
183                                <ul>
184                                        <li>
185                                                <a href="javascript:location.href='mailto:?body=' + window.encodedPageRequestURI" 
186                                                        title="Email this page's URL" 
187                                                        class="FontIcon FontAwesome Email">
188                                                </a>
189                                        </li>
190                                        <li>
191                                                <a href="#" onclick="window.print();return false;"
192                                                        title="Print this page and share it (printer friendly version)" 
193                                                        rel="nofollow" target="_blank"
194                                                        class="FontIcon PrinterFriendly"
195                                                >
196                                                </a>
197                                        </li>
198
199                                        <li>
200                                                <a href="javascript:window.open('https://www.facebook.com/sharer.php?u=' + window.encodedPageRequestURI)"
201                                                        title="Share this page on Facebook" 
202                                                        class="FontIcon FontAwesome Facebook"
203                                                >
204                                                </a>
205                                        </li>
206                                        <li>
207                                                <a href="javascript:window.open('https://twitter.com/intent/tweet?url=' + window.encodedPageRequestURI)" 
208                                                        title="Share this page on Twitter" 
209                                                        class="FontIcon FontAwesome Twitter">
210                                                </a>
211                                        </li>
212                                        <li>
213                                                <a href="javascript:window.open('http://www.linkedin.com/shareArticle?mini=true&amp;url=' + window.encodedPageRequestURI)" 
214                                                        title="Share this page on LinkedIn" 
215                                                        class="FontIcon FontAwesome LinkedIn">
216                                                </a>
217                                        </li>
218                                </ul>
219                        </div>
220                </div>
221        </xsl:template>
222
223
224
225        <xsl:template name="Page.content" 
226                ibis:doc="Provides the adopter specific layout by overriding the standard
227                        content container. This layout consists of one main content column. 
228                "
229        >
230                <main id="content" cellpadding="0" cellspacing="0" border="0"
231                        summary="main content container"
232                        caption="main content container"
233                >
234<!--
235                        <div class="NavigationPathSocialMedia">
236                                <div id="navigationPath" title="Navigation path to get to this page.">
237                                        Path:
238                                        <xsl:call-template name="SelectionsList.processSelections">
239                                                <xsl:with-param name="selections">
240                                                        <SELECTION>
241                                                                <TITLE><xsl:value-of select="$Page.applicationTitle"/></TITLE>
242                                                                <URL><xsl:value-of select="$ibis.baseRequestPath"/></URL>
243                                                        </SELECTION>
244                                                        <xsl:copy-of select="$SiteSpecific.navigationPathSelections"/>
245                                                </xsl:with-param>
246                                        </xsl:call-template>
247                                </div>
248                                <xsl:call-template name="SiteSpecific.socialMediaLinks"/>
249                        </div>
250-->
251                        <xsl:call-template name="Page.contentHeader"/>
252                        <xsl:call-template name="Page.contentBody"/>
253                        <xsl:call-template name="Page.contentFooter"/>
254                </main>
255        </xsl:template>
256
257
258        <xsl:template name="Page.footer">
259                <footer id="footer">
260                        <div class="container" style="box-sizing: border-box; width: 100%; padding: 0 12px; margin: 0 auto;">
261                                <div class="Columns">
262                                        <div class="Column" onclick="location.href='https://health.hawaii.gov/'" style="flex-direction: initial; cursor: pointer;">
263                                                <img src="image/footer-logo.png" style="max-height: 165px;"/>
264                                        </div>
265
266                                        <div class="Column">
267                                                <div class="SocialMedia">
268                                                        <a href="https://www.facebook.com/HawaiiHealth" class="FontIcon FontAwesome Facebook"> </a>
269                                                        <a href="https://www.instagram.com/hawaiihealthdata/?hl=en" class="FontIcon FontAwesome Instagram"> </a>
270                                                        <a href="https://www.youtube.com/channel/UCWMe7qWfF3XZbq1AFyQFY6w/videos" class="FontIcon FontAwesome YouTube"> </a>
271                                                </div>
272
273                                                <ul>
274                                                        <li><a href="https://www.hawaiihealthmatters.org/">Hawai'i Health Matters</a></li>
275                                                        <li><a href="/sitemap.xml/">Sitemap</a></li>
276                                                        <li><a href="/feedback/">Feedback</a></li>
277                                                </ul>
278                                        </div>
279
280                                        <div class="Column">
281                                                <h6>Mailing Address</h6>
282                                                <address>
283                                                        Attn: Hawai'i Health Data Warehouse<br/>
284                                                        Office of Public Health Studies<br/>
285                                                        University of Hawai'i, Manoa<br/>
286                                                        1960 East-West Rd. Biomed D-104H<br/> 
287                                                        Honolulu, HI 96822
288                                                </address>
289                                        </div>
290
291                                        <div class="Column" style="">
292                                                <div style="margin-bottom: 25px;">
293                                                        <h6>Phone</h6>
294                                                        1-808-956-2862
295                                                </div>
296                                                <div class="footerEmail">
297                                                        <h6>Email</h6>
298                                                        <a href="mailto:profiles@hhdw.org">profiles@hhdw.org</a>
299                                                </div>
300                                        </div>
301                                </div>
302
303                                <div class="Bottom">
304                                        <div class="col text-center copyright">
305                                                Copyright © 2022 Hawai'i Health Data Warehouse. All rights reserved.
306                                        </div>
307                                </div>
308                        </div>
309                </footer>
310
311                <!-- NOTE: GA causes a doubleclick.net samesite cookie issue. -->
312                <script>
313                  (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
314                  (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
315                  m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
316                  })(window,document,'script','//www.google-analytics.com/analytics.js','ga');
317
318                  ga('create', 'UA-9727647-1', 'auto');
319                  ga('send', 'pageview');
320                </script>
321        </xsl:template>
322
323
324        <xsl:template name="SiteSpecific.socialMediaLinks">
325                <nav class="SocialMedia" title="options to easily share this page.  See: https://css-tricks.com/simple-social-sharing-links/">
326                        share
327                        <ul>
328                                <li>
329                                        <!-- this also works: a href="javascript:window.open('http://www.linkedin.com/shareArticle?mini=true&amp;url=' + encodeURI(location.href))"
330                                                Issues with target=_blank as the location.href is the
331                                                blank window.  Need to get a handle to the window.open
332                                                object so can pass vars but if doing that might as well
333                                                simply open with the URL!!!
334
335                                                http://www.sharelinkgenerator.com/:
336                                                https://www.facebook.com/sharer/sharer.php?u=msn.com
337                                                https://twitter.com/intent/tweet?text=msn.com
338
339                                                        <a href="https://www.facebook.com/HawaiiHealth"><i class="fab fa-facebook-f"></i></a>
340                                                        <a href="https://www.instagram.com/hawaiihealthdata/?hl=en"><i class="fab fa-instagram"></i></a>
341                                                        <a href="https://www.youtube.com/channel/UCWMe7qWfF3XZbq1AFyQFY6w/videos"><i class="fab fa-youtube"></i></a>
342
343                                        -->
344                                        <a href="javascript:window.open('http://www.linkedin.com/shareArticle?mini=true&amp;url=' + window.encodedPageRequestURI)"
345                                                title="Share this page on LinkedIn" 
346                                                class="FontIcon LinkedIn"
347                                        >
348                                        </a>
349                                </li>
350                                <li>
351                                        <a href="javascript:window.open('https://www.facebook.com/sharer.php?u=' + window.encodedPageRequestURI)"
352                                                title="Share this page on Facebook" 
353                                                class="FontIcon Facebook"
354                                        >
355                                        </a>
356                                </li>
357                                <li>
358                                        <a href="javascript:window.open('https://twitter.com/intent/tweet?url=' + window.encodedPageRequestURI)" 
359                                                title="Share this page on Twitter" 
360                                                class="FontIcon Twitter"
361                                        >
362                                        </a>
363                                </li>
364                                <li>
365                                        <a href="javascript:location.href='mailto:?body=' + window.encodedPageRequestURI" 
366                                                title="Email this page's URL" 
367                                                class="FontIcon Email"
368                                        >
369                                        </a>
370                                </li>
371                                <li>
372                                        <a href="#" onclick="window.print();return false;"
373                                                title="Print this page and share it (printer friendly version)" 
374                                                rel="nofollow" target="_blank"
375                                                class="FontIcon PrinterFriendly"
376                                        >
377                                        </a>
378                                </li>
379                        </ul>
380                </nav>
381        </xsl:template>
382
383</xsl:stylesheet>
384<!-- ============================= End of File ============================= -->
385
Note: See TracBrowser for help on using the repository browser.