prompts.xts 6.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <!--
  3. Licensed Materials - Property of IBM
  4. IBM Cognos Products: Viewer
  5. (C) Copyright IBM Corp. 2001, 2011
  6. US Government Users Restricted Rights - Use, duplication or
  7. disclosure restricted by GSA ADP Schedule Contract with IBM Corp.
  8. -->
  9. <xts:morphlet xmlns:xts="http://developer.cognos.com/schemas/xts/" messageBase="messages/portal.xml, messages/portalRL.xml" includeConfig="true" requiredCapability="canUseCognosViewerRunWithOptions">
  10. <!--
  11. ===============================================================================================
  12. execute-method -
  13. ===============================================================================================
  14. -->
  15. <xts:block id="execute-method" processor="XSLT" type="exec" condition=".[not(/root/env/param[@name='method']) or (/root/env/param[@name='method'] and /root/env/param[@name='method']!='')]" mandatory="false">
  16. <xts:logicsheet path="logicsheets/buslogic.xslt"/>
  17. <xsl:stylesheet version="1.0"
  18. xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
  19. xmlns:prompt="http://developer.cognos.com/schemas/xts/portal/iPrompting/1/"
  20. xmlns:send="http://developer.cognos.com/schemas/xts/logic-sheet/xslt/brl/1/">
  21. <xsl:output method="xml" version="1.0" encoding="UTF-8" indent="no"/>
  22. <xsl:key name="env-param" match="/root/env/param" use="@name"/>
  23. <xsl:template match="/">
  24. <xts:sequence>
  25. <xsl:if test="not(/root/env/param[@name='method'])">
  26. <xts:append select="/root/env">
  27. <param name="method"><xsl:value-of select="'edit'"/></param>
  28. </xts:append>
  29. </xsl:if>
  30. <xts:append>
  31. <promptRequest>
  32. <send:request provider="xts" option="xml-multipart">
  33. <xsl:choose>
  34. <xsl:when test="not(key('env-param', 'method')) or (key('env-param', 'method') = 'edit')">
  35. <xsl:variable name="skipSummary" select="key('env-param', 'visited_schedule_properties') or key('env-param', 'showSummary')='n'"/>
  36. <prompt:collect>
  37. <redirect>
  38. <xsl:choose>
  39. <!-- don't come back to the summary page if we came from
  40. the schedule dialog or the user said he didn't want
  41. to see the summary page -->
  42. <xsl:when test="$skipSummary">portal/submit.xts</xsl:when>
  43. <xsl:otherwise>fragments/utilities/universal-viewer/prompt.xts</xsl:otherwise>
  44. </xsl:choose>
  45. </redirect>
  46. <runAsync>true</runAsync>
  47. <showNoPromptsWarning>false</showNoPromptsWarning>
  48. <getParameterRequest>true</getParameterRequest>
  49. <promptObject>storeID("<xsl:value-of select='/root/env/param[@name="uv_reportId"]'/>")</promptObject>
  50. </prompt:collect>
  51. </xsl:when>
  52. <xsl:otherwise>
  53. <xsl:element name="{key('env-param', 'method')}" namespace="http://developer.cognos.com/schemas/xts/portal/iPrompting/1/">
  54. <showNoPromptsWarning>true</showNoPromptsWarning>
  55. <getParameterRequest>true</getParameterRequest>
  56. <callFinish>true</callFinish>
  57. </xsl:element>
  58. </xsl:otherwise>
  59. </xsl:choose>
  60. </send:request>
  61. </promptRequest>
  62. </xts:append>
  63. </xts:sequence>
  64. </xsl:template>
  65. </xsl:stylesheet>
  66. </xts:block>
  67. <!--
  68. ===============================================================================================
  69. check-state -
  70. ===============================================================================================
  71. -->
  72. <xts:block id="check-state" path="/portal/iPrompting/logicsheets/check-state.xslt" processor="XSLT" type="exec" dependency="execute-method">
  73. <xts:logicsheet path="logicsheets/portal.xsl"/>
  74. <xts:logicsheet path="logicsheets/presentation/dialog/templates.xsl"/>
  75. </xts:block>
  76. <xts:block id="append_output" processor="XSLT" type="exec" dependency="execute-method check-state">
  77. <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
  78. xmlns:xts="http://developer.cognos.com/schemas/xts/"
  79. xmlns:xtsext="xalan://com.cognos.xts.ext.XTSExt"
  80. exclude-result-prefixes="xsl xts xtsext">
  81. <xsl:output method="xml" version="1.0" encoding="UTF-8" indent="no"/>
  82. <xsl:template match="/root">
  83. <xts:sequence>
  84. <xts:append select="/root/output">
  85. <uviewPrompts>
  86. <xsl:value-of select="xtsext:web64decode(xtsext:cafaction('sign_unwrap',string(/root/env/param[@name='m_rp_parameters'])), true())" disable-output-escaping="yes"/>
  87. </uviewPrompts>
  88. <encodedPrompts>
  89. <xsl:value-of select="xtsext:cafaction('sign_unwrap',string(/root/env/param[@name='m_rp_parameters']))" disable-output-escaping="yes"/>
  90. </encodedPrompts>
  91. </xts:append>
  92. </xts:sequence>
  93. </xsl:template>
  94. </xsl:stylesheet>
  95. </xts:block>
  96. <xts:block id="render_page" mode="output" processor="XSLT" type="exec" mimeType="text/html" condition=".[/root/*[local-name()='view']='properties' or /root/env/param[@name='promptRequest']!='']" dependency="append_output" mandatory="false">
  97. <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
  98. xmlns:xts="http://developer.cognos.com/schemas/xts/"
  99. xmlns:xtsext="xalan://com.cognos.xts.ext.XTSExt"
  100. exclude-result-prefixes="xsl xts xtsext">
  101. <xsl:output method="html" version="1.0" encoding="UTF-8" indent="no"/>
  102. <xsl:template match="/root">
  103. <xsl:variable name="uviewParams" select="/root/output/*[local-name() = 'uviewPrompts']/*[local-name() = 'parameters']"/>
  104. <xsl:variable name="displayParms">
  105. "<xsl:for-each select="$uviewParams/*"><xsl:value-of select="./*[local-name() = 'name']"/>=<xsl:variable name="simpleValueItems" select="./*[local-name() = 'simpleParmValueItem']"/><xsl:for-each select="$simpleValueItems">'<xsl:value-of select="./*[local-name() = 'display']"/>'<xsl:if test="position() != last()">,</xsl:if></xsl:for-each><xsl:if test="position() != last()">;</xsl:if></xsl:for-each>"
  106. </xsl:variable>
  107. <xsl:variable name="encodedParms" select="/root/output/*[local-name() = 'encodedPrompts']"/>
  108. <script>
  109. var promptObj = {'encodedParamString': '<xsl:value-of select="$encodedParms" disable-output-escaping="yes"/>', 'displayParamString': <xsl:value-of select="$displayParms"/>};
  110. parent.ccModalCallBack('ok', promptObj);
  111. </script>
  112. </xsl:template>
  113. </xsl:stylesheet>
  114. </xts:block>
  115. </xts:morphlet>