dialogIncludes.xsl 9.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <!--
  3. Licensed Materials - Property of IBM
  4. BI and PM: qs
  5. (C) Copyright IBM Corp. 2001, 2017
  6. US Government Users Restricted Rights - Use, duplication or disclosure restricted by GSA ADP Schedule Contract with IBM Corp.
  7. -->
  8. <!--
  9. Copyright (C) 2008 Cognos ULC, an IBM Company. All rights reserved.
  10. Cognos (R) is a trademark of Cognos ULC, (formerly Cognos Incorporated).
  11. -->
  12. <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
  13. xmlns:qsdialog="http://developer.cognos.com/schemas/xts/logicsheets/xslt/qs/dialog/"
  14. xmlns:df="http://developer.cognos.com/schemas/xts/logicsheets/xslt/presentation/dialog/framework/"
  15. xmlns:dp="http://developer.cognos.com/schemas/xts/logicsheets/xslt/presentation/dialog/presentation/"
  16. xmlns:pf="http://developer.cognos.com/schemas/xts/pf"
  17. xmlns:out="dummy-uri"
  18. xmlns:xtsext="xalan://com.cognos.xts.ext.XTSExt">
  19. <xsl:output method="xml" encoding="UTF-8" indent="no"/>
  20. <pf:variables/>
  21. <xsl:namespace-alias stylesheet-prefix="out" result-prefix="xsl"/>
  22. <xsl:template match="qsdialog:headerIncludes">
  23. <out:variable name="skin" select="concat($webRoot, '/skins/' , /root/user/param[@name='skin'])"/>
  24. <link type="text/css" rel="stylesheet">
  25. <out:attribute name="href"><out:value-of select="$skin"/>/qs/QSRVDialog.css</out:attribute>
  26. </link>
  27. <script type="text/javascript">
  28. <out:attribute name="src"><out:value-of select="$webRoot"/>/qs/classes/CDialogManager.js</out:attribute>
  29. <xsl:text/>//<xsl:text/>
  30. </script>
  31. <script type="text/javascript">
  32. <out:attribute name="src"><out:value-of select="$webRoot"/>/qs/classes/CFormManager.js</out:attribute>
  33. <xsl:text/>//<xsl:text/>
  34. </script>
  35. <script type="text/javascript">
  36. <out:attribute name="src"><out:value-of select="$webRoot"/>/qs/classes/CWindowManager.js</out:attribute>
  37. <xsl:text/>//<xsl:text/>
  38. </script>
  39. <script type="text/javascript">
  40. var goDialogManager = new CDialogManager("<xsl:value-of select="xtsext:javascriptencode(string(@featureName))"/>");
  41. <xsl:if test="@setupParameters='all' or contains(@setupParameters, 'http')">
  42. <out:for-each select="/root/http/param">
  43. <out:choose>
  44. <out:when test="count(*) &gt; 0">
  45. <out:variable name="markup"><out:apply-templates select="*" mode="markup"/></out:variable>
  46. goDialogManager.addHttpParam("<out:value-of select="xtsext:javascriptencode(string(@name))"/>", "<out:value-of select="xtsext:javascriptencode(string($markup))"/>");
  47. </out:when>
  48. <out:otherwise>
  49. goDialogManager.addHttpParam("<out:value-of select="xtsext:javascriptencode(string(@name))"/>", "<out:value-of select="xtsext:javascriptencode(string(.))"/>");
  50. </out:otherwise>
  51. </out:choose>
  52. </out:for-each>
  53. </xsl:if>
  54. <xsl:if test="@setupParameters='all' or contains(@setupParameters, 'env')">
  55. <out:for-each select="/root/env/param">
  56. <out:choose>
  57. <out:when test="count(*) &gt; 0">
  58. <out:variable name="markup"><out:apply-templates select="*" mode="markup"/></out:variable>
  59. goDialogManager.addEnvParam("<out:value-of select="xtsext:javascriptencode(string(@name))"/>", "<out:value-of select="xtsext:javascriptencode(string($markup))"/>");
  60. </out:when>
  61. <out:otherwise>
  62. goDialogManager.addEnvParam("<out:value-of select="xtsext:javascriptencode(string(@name))"/>", "<out:value-of select="xtsext:javascriptencode(string(.))"/>");
  63. </out:otherwise>
  64. </out:choose>
  65. </out:for-each>
  66. </xsl:if>
  67. <xsl:if test="@setupParameters='all' or contains(@setupParameters, 'user')">
  68. <out:for-each select="/root/user/param">
  69. <out:choose>
  70. <out:when test="count(*) &gt; 0">
  71. <out:variable name="markup"><out:apply-templates select="*" mode="markup"/></out:variable>
  72. goDialogManager.addUserParam("<out:value-of select="xtsext:javascriptencode(string(@name))"/>", "<out:value-of select="xtsext:javascriptencode(string($markup))"/>");
  73. </out:when>
  74. <out:otherwise>
  75. goDialogManager.addUserParam("<out:value-of select="xtsext:javascriptencode(string(@name))"/>", "<out:value-of select="xtsext:javascriptencode(string(.))"/>");
  76. </out:otherwise>
  77. </out:choose>
  78. </out:for-each>
  79. </xsl:if>
  80. <xsl:if test="@setupParameters='all' or contains(@setupParameters, 'system')">
  81. <out:for-each select="/root/system/param">
  82. <out:choose>
  83. <out:when test="count(*) &gt; 0">
  84. <out:variable name="markup"><out:apply-templates select="*" mode="markup"/></out:variable>
  85. goDialogManager.addSystemParam("<out:value-of select="xtsext:javascriptencode(string(@name))"/>", "<out:value-of select="xtsext:javascriptencode(string($markup))"/>");
  86. </out:when>
  87. <out:otherwise>
  88. goDialogManager.addSystemParam("<out:value-of select="xtsext:javascriptencode(string(@name))"/>", "<out:value-of select="xtsext:javascriptencode(string(.))"/>");
  89. </out:otherwise>
  90. </out:choose>
  91. </out:for-each>
  92. </xsl:if>
  93. <xsl:if test="@setupParameters='all' or contains(@setupParameters, 'session')">
  94. <out:for-each select="/root/session/param">
  95. <out:choose>
  96. <out:when test="count(*) &gt; 0">
  97. <out:variable name="markup"><out:apply-templates select="*" mode="markup"/></out:variable>
  98. goDialogManager.addSessionParam("<out:value-of select="xtsext:javascriptencode(string(@name))"/>", "<out:value-of select="xtsext:javascriptencode(string($markup))"/>");
  99. </out:when>
  100. <out:otherwise>
  101. goDialogManager.addSessionParam("<out:value-of select="xtsext:javascriptencode(string(@name))"/>", "<out:value-of select="xtsext:javascriptencode(string(.))"/>");
  102. </out:otherwise>
  103. </out:choose>
  104. </out:for-each>
  105. </xsl:if>
  106. <xsl:if test="@setupParameters='all' or contains(@setupParameters, 'cookies')">
  107. <out:for-each select="/root/cookies/cookie">
  108. <out:choose>
  109. <out:when test="count(*) &gt; 0">
  110. <out:variable name="markup"><out:apply-templates select="*" mode="markup"/></out:variable>
  111. goDialogManager.addCookie("<out:value-of select="xtsext:javascriptencode(string(@name))"/>", "<out:value-of select="xtsext:javascriptencode(string($markup))"/>");
  112. </out:when>
  113. <out:otherwise>
  114. goDialogManager.addCookie("<out:value-of select="xtsext:javascriptencode(string(@name))"/>", "<out:value-of select="xtsext:javascriptencode(string(.))"/>");
  115. </out:otherwise>
  116. </out:choose>
  117. </out:for-each>
  118. </xsl:if>
  119. <xsl:if test="@setupParameters='all' or contains(@setupParameters, 'credential')">
  120. <out:for-each select="/root/credential/param">
  121. <out:choose>
  122. <out:when test="count(*) &gt; 0">
  123. <out:variable name="markup"><out:apply-templates select="*" mode="markup"/></out:variable>
  124. goDialogManager.addCredentialParam("<out:value-of select="xtsext:javascriptencode(string(@name))"/>", "<out:value-of select="xtsext:javascriptencode(string($markup))"/>");
  125. </out:when>
  126. <out:otherwise>
  127. goDialogManager.addCredentialParam("<out:value-of select="xtsext:javascriptencode(string(@name))"/>", "<out:value-of select="xtsext:javascriptencode(string(.))"/>");
  128. </out:otherwise>
  129. </out:choose>
  130. </out:for-each>
  131. </xsl:if>
  132. function init()
  133. {
  134. goDialogManager.getWindowManager().attachMouseEventsToDialog();
  135. if (typeof setupDialog == "function")
  136. {
  137. setupDialog();
  138. }
  139. if (typeof drawDialog == "function")
  140. {
  141. drawDialog();
  142. }
  143. if (typeof finalSetupDialog == "function")
  144. {
  145. finalSetupDialog();
  146. }
  147. var dlgSize = "<xsl:value-of select="xtsext:javascriptencode(string(@dlgSize))"/>";
  148. if (dlgSize !== "")
  149. {
  150. goDialogManager.getWindowManager().showDialogFrame(dlgSize);
  151. }
  152. if (typeof postSetupDialog == "function")
  153. {
  154. postSetupDialog();
  155. }
  156. }
  157. </script>
  158. </xsl:template>
  159. <xsl:template match="qsdialog:dialogHeader">
  160. <tr>
  161. <td width="100%" height="0%">
  162. <!-- dialog header -->
  163. <dp:header help="false">
  164. <!-- header titles -->
  165. <dp:title>
  166. <xsl:copy-of select="./qsdialog:title/*"/>
  167. </dp:title>
  168. <!-- close link for the header -->
  169. <dp:close>
  170. <a href="javascript:goDialogManager.getWindowManager().hideDialogFrame()" onmouseover="window.status='';return true;">
  171. <dp:closeMarker/>
  172. </a>
  173. </dp:close>
  174. <!-- description (hint text) -->
  175. <dp:description>
  176. <xsl:copy-of select="./qsdialog:description/*"/>
  177. </dp:description>
  178. </dp:header>
  179. </td>
  180. </tr>
  181. </xsl:template>
  182. <xsl:template match="qsdialog:defaultButtons">
  183. <dp:footer>
  184. <df:button df:id="IDS_OK" df:style="href" id="executeButton" onkeypress="javascript:goDialogManager.executeOk(event)" df:href="javascript:goDialogManager.executeOk(null)" df:defaultKey="active"/>
  185. <df:button df:id="IDS_CANCEL" df:style="href" onkeypress="javascript:goDialogManager.executeCancel(event)" df:href="javascript:goDialogManager.executeCancel(null)"/>
  186. </dp:footer>
  187. </xsl:template>
  188. <xsl:template match="qsdialog:yesNoCancelButtons">
  189. <dp:footer>
  190. <df:button df:id="DIALOG_YES_BUTTON" df:style="href" onkeypress="javascript:goDialogManager.executeYes(event)" df:href="javascript:goDialogManager.executeYes(null)" df:defaultKey="active"/>
  191. <df:button df:id="DIALOG_NO_BUTTON" df:style="href" onkeypress="javascript:goDialogManager.executeNo(event)" df:href="javascript:goDialogManager.executeNo(null)"/>
  192. <df:button df:id="DIALOG_CANCEL_BUTTON" df:style="href" onkeypress="javascript:goDialogManager.executeCancel(event)" df:href="javascript:goDialogManager.executeCancel(null)"/>
  193. </dp:footer>
  194. </xsl:template>
  195. <xsl:template match="qsdialog:defaultOKButton">
  196. <dp:footer>
  197. <df:button df:id="IDS_OK" df:style="href" id="executeButton" onkeypress="javascript:goDialogManager.executeCancel(event)" df:href="javascript:goDialogManager.executeCancel(null)" df:defaultKey="active"/>
  198. </dp:footer>
  199. </xsl:template>
  200. <xsl:template match="*">
  201. <xsl:copy>
  202. <xsl:copy-of select="@*"/>
  203. <xsl:apply-templates/>
  204. </xsl:copy>
  205. </xsl:template>
  206. </xsl:stylesheet>