source: main/trunk/ibisph-view/src/main/webapp/xslt/html/DialogWindow.xslt @ 22751

Last change on this file since 22751 was 22581, checked in by GarthBraithwaite_STG, 8 months ago

java, view - checked into the modified date modelmap code and updated comments. Reverted help css back to span until time to fix horz alignment. Reimplemented complete profile xslt based on summary to fix maps not showing. Changed qm page options to basic selections based in if result and options for the type of page. Added METADATA_PATH_AND_NAME element for QM's to link to the epht metadata page req (this is a temp fix).

File size: 6.6 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/DialogWindow</name>
12                <summary>Contains common kendo dialog window script to control dialog HTML.</summary>
13                <description>
14                        This code works with embedded HTML structs/blocks that form the
15                        dialog content.  Kendo js is then used to display the content
16                        within it's dialog js code.
17
18                        Dialogs consist mostly of modal windows.  The content is typically
19                        used for gathering input from a user or display an alert or something
20                        that the user must see and confirm.  Dialogs differ from Popups in
21                        that dialogs are for user input and opened and closed via some input.
22                        Popups are information/presentation only typically invoked via mouse over.
23
24                </description>
25        </ibis:doc>
26
27
28        <xsl:template name="DialogWindow.videoPlayer">
29
30                <dialog id="videoPlayerDialog" class="DialogWindow">
31                        <div class="Content"><div id="mediaPlayer"></div></div>
32                        <button type="button" title="Closes video window."
33                                onclick="window.videoPlayerDialog.close();" 
34                        >Close</button>
35                </dialog>
36
37                <script type="text/javascript">
38                        // <![CDATA[
39                        window.videoPlayerDialog = null;
40                        window.kendoMediaPlayer  = null;
41                        $(document).ready(function()
42                        {
43                                window.videoPlayerDialog = $("#videoPlayerDialog").kendoWindow(
44                                        {
45                                                "title": "Watch Video"
46                                                ,"visible": false
47                                                ,"width": "75%"
48                                                ,"resizable": true
49                                                ,"modal": true
50                                                ,close: function(e) { window.kendoMediaPlayer.stop(); }
51/* icons in upper right of the window
52,actions: ["Custom", "Minimize", "Maximize", "Close"]
53more actions are provided in the "dialog" kendo object.  This is a window and
54does not support these extended action buttons.
55*/
56                                        }
57                                ).data("kendoWindow");
58                        });
59
60                        // https://demos.telerik.com/kendo-ui/mediaplayer/playlist
61                        // https://docs.telerik.com/kendo-ui/api/javascript/ui/mediaplayer?_ga=2.5892464.272183754.1572845261-1689576755.1572632213
62                        function showVideoPlayerDialog(videoURL, videoTitle)
63                        {
64                                if(null == window.kendoMediaPlayer)
65                                {
66                                        window.kendoMediaPlayer = $("#mediaPlayer").kendoMediaPlayer(
67                                                {
68                                                        "autoPlay": false
69                                                        ,"navigatable": true
70                                                }
71                                        ).data("kendoMediaPlayer");
72                                }
73                                if(0 != videoURL.indexOf('http://')) videoURL = window.baseRequestPath + videoURL;
74                                var mediaOptions =
75                                        {
76                                                "source": videoURL
77                                        };
78                window.kendoMediaPlayer.media(mediaOptions);
79
80                                window.videoPlayerDialog.title(videoTitle);
81                                window.videoPlayerDialog.center().open();
82
83                                window.kendoMediaPlayer.play();
84                        }
85                        // <![CDATA[
86                        // ]]>
87                </script>
88        </xsl:template>
89
90
91        <xsl:template name="DialogWindow.reminderDialog">
92                <xsl:param name="dialogWindowID"                select="'reminderDialog'"/>
93                <xsl:param name="dialogTitle"                   select="'Reminder'"/>
94                <xsl:param name="dialogContent"                 select="NULL"/>
95                <xsl:param name="sessionStorageName"    select="'ibisph.reminder'"/>
96                <xsl:param name="closeButtonTitle"              select="'Close'"/>
97
98                <dialog id="{$dialogWindowID}" class="DialogWindow">
99                        <div class="Content">
100                                <xsl:copy-of select="$dialogContent"/>
101                        </div>
102                        <button type="button" onclick="window.{$dialogWindowID}.close()" title="Closes this window."><xsl:value-of select="$closeButtonTitle"/></button>
103                </dialog>
104
105                <script type="text/javascript">
106                        $(document).ready(function()
107                        {
108                                window.<xsl:value-of select="$dialogWindowID"/> =
109                                        $("#<xsl:value-of select="$dialogWindowID"/>").kendoWindow({
110                                                title: "<xsl:value-of select="$dialogTitle"/>"
111                                                ,visible: false
112                                                ,width: "600px"
113                                                ,resizable: true
114                                                ,modal: true
115                                        }).data('kendoWindow');
116
117                                var reminderShown = window.sessionStorage.getItem("<xsl:value-of select="$sessionStorageName"/>");
118                                if("shown" != reminderShown) window.<xsl:value-of select="$dialogWindowID"/>.center().open();
119                                window.sessionStorage.setItem("<xsl:value-of select="$sessionStorageName"/>", "shown");
120                        });
121                </script>
122        </xsl:template>
123
124
125        <xsl:template name="DialogWindow.simpleModalDialog">
126                <xsl:param name="dialogWindowID"                select="'modalDialog'"/>
127                <xsl:param name="dialogTitle"                   select="'Information'"/>
128                <xsl:param name="dialogContent"                 select="NULL"/>
129                <xsl:param name="closeButtonTitle"              select="'Close'"/>
130
131                <dialog id="{$dialogWindowID}" class="DialogWindow">
132                        <div class="Content">
133                                <xsl:copy-of select="$dialogContent"/>
134                        </div>
135                        <button type="button" onclick="window.{$dialogWindowID}.close()" title="Closes this window."><xsl:value-of select="$closeButtonTitle"/></button>
136                </dialog>
137
138                <script type="text/javascript">
139                        $(document).ready(function()
140                        {
141                                window.<xsl:value-of select="$dialogWindowID"/> =
142                                        $("#<xsl:value-of select="$dialogWindowID"/>").kendoWindow({
143                                                title: "<xsl:value-of select="$dialogTitle"/>"
144                                                ,visible: false
145                                                ,width: "600px"
146                                                ,resizable: true
147                                                ,modal: true
148                                        }).data('kendoWindow');
149                        });
150                </script>
151        </xsl:template>
152
153
154<!-- could be in the content container code ???
155-->
156        <xsl:template name="DialogWindow.popup">
157                <xsl:param name="id"/>
158                <xsl:param name="additionalClasses"/>
159                <xsl:param name="controlID"    />
160                <xsl:param name="controlName"  />
161                <xsl:param name="controlType"  />
162                <xsl:param name="controlClass" />
163                <xsl:param name="controlTitle" />
164                <xsl:param name="show"       select="false()"/>
165                <xsl:param name="toggleRadioOnClick" select="'radio' = $controlType"/>
166                <xsl:param name="headingLevel" select="3"/>
167                <xsl:param name="description"/>
168                <xsl:param name="content"/>
169
170                <div id="{$id}" class="Popup {$additionalClasses}"> 
171                        <xsl:call-template name="SelectionsList.inputControl">
172                                <xsl:with-param name="inputID"    select="$controlID"/>
173                                <xsl:with-param name="inputName"  select="$controlName"/>
174                                <xsl:with-param name="inputType"  select="$controlType"/>
175                                <xsl:with-param name="labelClass" select="$controlClass"/>
176                                <xsl:with-param name="title"      select="$controlTitle"/>
177                                <xsl:with-param name="show"       select="$show"/>
178                                <xsl:with-param name="toggleRadioOnClick" select="$toggleRadioOnClick"/>
179                                <xsl:with-param name="headingLevel" select="$headingLevel"/>
180                                <xsl:with-param name="description"  select="$description"/>
181                        </xsl:call-template>
182
183                        <div class="Container">
184                                <div class="Content">
185                                        <xsl:copy-of select="$content"/>
186                                </div>
187                        </div>
188                </div>
189        </xsl:template>
190
191</xsl:stylesheet>
192<!-- ============================= End of File ============================= -->
Note: See TracBrowser for help on using the repository browser.