edit_page_sizes.xts 18 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <!--
  3. Licensed Materials - Property of IBM
  4. IBM Cognos Products: ps
  5. (C) Copyright IBM Corp. 2005, 2014
  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. <xts:morphlet xmlns:xts="http://developer.cognos.com/schemas/xts/" messageBase="messages/portal.xml, messages/portalRL.xml" resolverBase="prompting" requiredCapability="canUseAdministrationPortal">
  13. <!-- form logic stuff ============================================================== -->
  14. <xts:block id="formlogic_init" type="exec" mode="interpret" processor="XSLT" path="/logicsheets/formlogic_init.xslt" nodelist="env,credential,system,http"/>
  15. <!--
  16. ===============================================================================================
  17. Load object actions map
  18. ===============================================================================================
  19. -->
  20. <xts:block id="getActions" type="exec" mode="input" processor="XML" path="/portal/uiExtensions.xml">
  21. <xts:logicsheet path="/logicsheets/uiobjects/uiobjects_actions.xslt"/>
  22. </xts:block>
  23. <!--
  24. ===============================================================================================
  25. getContent
  26. ===============================================================================================
  27. -->
  28. <xts:block id="getContent" type="exec" mode="interpret" processor="XSLT" dependency="formlogic_init" xmlns:send="http://developer.cognos.com/schemas/xts/logic-sheet/xslt/brl/1/" xmlns:pf="http://developer.cognos.com/schemas/xts/pf">
  29. <xts:logicsheet path="logicsheets/buslogic.xslt"/>
  30. <xts:logicsheet path="logicsheets/portal.xsl"/>
  31. <xts:logicsheet path="logicsheets/cm-logic.xsl"/>
  32. <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
  33. xmlns:cm="http://developer.cognos.com/schemas/xts-cm/1/"
  34. xmlns:cml="http://developer.cognos.com/schemas/xts/logic-sheet/xslt/cml/1/"
  35. xmlns:xtsext="xalan://com.cognos.xts.ext.XTSExt"
  36. exclude-result-prefixes="xsl cm xtsext cml">
  37. <xsl:output method="xml" version="1.0" encoding="UTF-8" indent="no"/>
  38. <pf:variables/>
  39. <cml:object-predicates/>
  40. <xsl:variable name="sort_order">
  41. <xsl:choose>
  42. <xsl:when test="key('env-param', 's_eps') = 'rd'">descending</xsl:when>
  43. <xsl:otherwise>ascending</xsl:otherwise>
  44. </xsl:choose>
  45. </xsl:variable>
  46. <xsl:variable name="userPrefs" select="/root/session/param"/>
  47. <xsl:variable name="userPrefsDefault" select="/root/system/param[@name='defaultPortalPreferences']"/>
  48. <xsl:variable name="maxObjects">
  49. <xsl:choose>
  50. <xsl:when test="string(/root/env/param[@name = 'm_pagertoeps_pager']) !='' and string(/root/env/param[@name = 'm_pagerfromeps_pager']) !=''">
  51. <xsl:value-of select="(/root/env/param[@name = 'm_pagertoeps_pager'] - root/env/param[@name = 'm_pagerfromeps_pager']) + 1"/>
  52. </xsl:when>
  53. <xsl:when test="$userPrefs[@name='linesPerPage']!=''">
  54. <xsl:value-of select="$userPrefs[@name='linesPerPage']"/>
  55. </xsl:when>
  56. <xsl:otherwise>
  57. <xsl:value-of select="$userPrefsDefault/pref[@name='lines']"/>
  58. </xsl:otherwise>
  59. </xsl:choose>
  60. </xsl:variable>
  61. <xsl:variable name="skipObjects">
  62. <xsl:choose>
  63. <xsl:when test="/root/env/param[@name = 'm_pagerfromeps_pager'] and /root/env/param[@name = 'm_pagerfromeps_pager']!=''">
  64. <xsl:value-of select="(/root/env/param[@name = 'm_pagerfromeps_pager'])-1"/>
  65. </xsl:when>
  66. <xsl:when test="key('env-param','m_eps_pagersection')!=''">
  67. <xsl:choose>
  68. <xsl:when test="key('env-param','m_eps_pagersection')!='-1'">
  69. <xsl:value-of select="((key('env-param','m_eps_pagersection')) -1)"/>
  70. </xsl:when>
  71. <xsl:otherwise>
  72. <xsl:value-of select="($maxObjects) * -1"/>
  73. </xsl:otherwise>
  74. </xsl:choose>
  75. </xsl:when>
  76. <xsl:otherwise>0</xsl:otherwise>
  77. </xsl:choose>
  78. </xsl:variable>
  79. <xsl:template match="/">
  80. <xts:sequence>
  81. <xts:append>
  82. <xts:transform src="transforms/CM/post-process.xslt" processor="XSLT">
  83. <send:request provider="cm">
  84. <xts:transform src="transforms/CM/pre-process.xslt" processor="XSLT">
  85. <query xmlns="http://developer.cognos.com/schemas/xts-cm/1/">
  86. <requests>
  87. <query>
  88. <search>
  89. <xsl:text>/configuration/pageDefinition[permission(&quot;read&quot;)]</xsl:text>
  90. <xsl:value-of select="$visibility-predicate"/>
  91. </search>
  92. <properties>
  93. <cml:prop-base/>
  94. <property name="height"/>
  95. <property name="width"/>
  96. <property name="unit"/>
  97. <property name="position"/>
  98. </properties>
  99. <sortBy>
  100. <sort name="displaySequence" order="descending"/>
  101. </sortBy>
  102. <options maxObjects="{(($maxObjects) + 1)}" skipObjects="{$skipObjects}"/>
  103. </query>
  104. <query>
  105. <search>/configuration</search>
  106. <properties>
  107. <property name="permissions"/>
  108. </properties>
  109. </query>
  110. </requests>
  111. </query>
  112. </xts:transform>
  113. </send:request>
  114. </xts:transform>
  115. </xts:append>
  116. <xts:delete select="/root/env/param[@name='pagerfromeps_pager']"/>
  117. <xts:delete select="/root/env/param[@name='pagertoeps_pager']"/>
  118. <xts:delete select="/root/env/param[@name='pagerfrom_deps_pager']"/>
  119. <xts:delete select="/root/env/param[@name='pagerto_deps_pager']"/>
  120. </xts:sequence>
  121. </xsl:template>
  122. </xsl:stylesheet>
  123. </xts:block>
  124. <!--
  125. ===============================================================================================
  126. format - Render the page. It's a dialog page with Close button.
  127. ===============================================================================================
  128. -->
  129. <xts:block id="format" mode="output" processor="XSLT" type="exec" dependency="getContent getActions " mimeType="text/html" xmlns:pf="http://developer.cognos.com/schemas/xts/pf" xmlns:lyt="http://developer.cognos.com/schemas/xts/logicsheets/xslt/presentation/layout/" xmlns:dp="http://developer.cognos.com/schemas/xts/logicsheets/xslt/presentation/dialog/presentation/" xmlns:df="http://developer.cognos.com/schemas/xts/logicsheets/xslt/presentation/dialog/framework/" xmlns:cf="http://developer.cognos.com/schemas/xts/logicsheets/xslt/presentation/controls/framework/" xmlns:utml="http://developer.cognos.com/schemas/xts/logicsheet/xslt/formlogic/" xmlns:mt="http://developer.cognos.com/schemas/xts/logicsheets/presentation/main/mt" xmlns:mf="http://developer.cognos.com/schemas/xts/logicsheets/presentation/main/mf" xmlns:cp="http://developer.cognos.com/schemas/xts/logicsheets/xslt/presentation/controls/presentation/" xmlns:dt="http://developer.cognos.com/schemas/xts/logicsheets/xslt/presentation/dialog/templates/">
  130. <!-- logicsheets -->
  131. <!-- portal specific information -->
  132. <xts:logicsheet path="logicsheets/portal.xsl"/>
  133. <xts:logicsheet path="logicsheets/permissions.xsl"/>
  134. <!-- Dialog specific logicsheets -->
  135. <xts:logicsheet path="logicsheets/presentation/dialog/templates.xsl"/>
  136. <xts:logicsheet path="logicsheets/presentation/main/framework.xsl"/>
  137. <xts:logicsheet path="logicsheets/presentation/main/presentation.xsl"/>
  138. <xts:logicsheet path="logicsheets/presentation/dialog/framework.xsl"/>
  139. <xts:logicsheet path="logicsheets/presentation/layout.xsl"/>
  140. <xts:logicsheet path="logicsheets/presentation/dialog/presentation.xsl"/>
  141. <!-- Generic logicsheets -->
  142. <xts:logicsheet path="logicsheets/presentation/controls/framework.xsl"/>
  143. <xts:logicsheet path="logicsheets/presentation/controls/presentation.xsl"/>
  144. <!-- apply the form logic -->
  145. <xts:logicsheet path="logicsheets/formlogic_lite.xslt"/>
  146. <xts:logicsheet path="logicsheets/validation.xslt"/>
  147. <xts:logicsheet path="logicsheets/presentation/touch_up.xslt"/>
  148. <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
  149. xmlns:bus="http://developer.cognos.com/schemas/bibus/3/"
  150. xmlns:xts="http://developer.cognos.com/schemas/xts/"
  151. xmlns:pf="http://developer.cognos.com/schemas/xts/pf"
  152. xmlns:pm="http://developer.cognos.com/schemas/xts/pm"
  153. xmlns:lyt="http://developer.cognos.com/schemas/xts/logicsheets/xslt/presentation/layout/"
  154. xmlns:dt="http://developer.cognos.com/schemas/xts/logicsheets/xslt/presentation/dialog/templates/"
  155. xmlns:dp="http://developer.cognos.com/schemas/xts/logicsheets/xslt/presentation/dialog/presentation/"
  156. xmlns:df="http://developer.cognos.com/schemas/xts/logicsheets/xslt/presentation/dialog/framework/"
  157. xmlns:cf="http://developer.cognos.com/schemas/xts/logicsheets/xslt/presentation/controls/framework/"
  158. xmlns:cp="http://developer.cognos.com/schemas/xts/logicsheets/xslt/presentation/controls/presentation/"
  159. xmlns:utml="http://developer.cognos.com/schemas/xts/logicsheet/xslt/formlogic/"
  160. xmlns:cm="http://developer.cognos.com/schemas/xts-cm/1/"
  161. xmlns:xtsext="xalan://com.cognos.xts.ext.XTSExt"
  162. exclude-result-prefixes="bus xts xsl pf pm xtsext lyt dt dp df cf cp bus utml">
  163. <xsl:output method="html" version="1.0" encoding="UTF-8" indent="no" omit-xml-declaration="yes"/>
  164. <!-- Global template variables -->
  165. <pf:variables/>
  166. <mf:variables stateParams="backURL m_eps_pagersection m_pagerfromeps_pager m_pagertoeps_pager"/>
  167. <xsl:variable name="mname" select="'edit_page_sizes.xts'"/>
  168. <xsl:variable name="cmd-form" select="'cform'"/>
  169. <!-- Required -->
  170. <xsl:variable name="edit-form" select="'pform'"/>
  171. <xsl:variable name="has_write_permission" select="contains(string(/root/cm:queryResponse/cm:queryReply[2]/cm:configuration/cm:permissions), 'write')"/>
  172. <xsl:template match="/root">
  173. <xsl:variable name="browserTitle">
  174. <xts:string id="IDS_EPS_TITLE"/>
  175. </xsl:variable>
  176. <xsl:text disable-output-escaping='yes'>&lt;!DOCTYPE html></xsl:text><dp:page longTitle="$browserTitle">
  177. <mf:head/>
  178. <dp:meta>
  179. <pf:meta/>
  180. <!-- Standard meta tags -->
  181. </dp:meta>
  182. <dp:script>
  183. <!-- Help system -->
  184. <pf:help context=""/>
  185. <!-- Define selectall and deselectall functions.-->
  186. <dt:selectDeselectAll/>
  187. <script language="javascript">
  188. function doNewPageSize()
  189. {
  190. document.cform.m.value = "<xsl:value-of select="$app"/>/new_general.xts";
  191. document.cform.m_new_class.value = 'pageDefinition';
  192. document.cform.m_path.value='/configuration';
  193. document.cform.backURL.value= "<xsl:value-of select="xtsext:javascriptencode(string($back-url))"/>";
  194. document.cform.submit();
  195. }
  196. function doDeletePageSizes()
  197. {
  198. var s1 = "<xts:string id="IDS_ERR_DELETE_NO_SELECTION" encode="javascript"/>";
  199. var s2 = "<xts:string id="IDS_CONF_DELETE_MULTI" encode="javascript"/>";
  200. if ( isEmptySelection("pform", "checkbox_"))
  201. {
  202. alert( s1 );
  203. return;
  204. }
  205. <!-- Perform the delete after confirmation -->
  206. if ( confirm( s2 ) )
  207. {
  208. document.pform.backURL.value = "<xsl:value-of select="xtsext:javascriptencode(string($back-url))"/>";
  209. document.pform.ifrmcmd.value = "delete"; <!--set the operation, and submit it. -->
  210. document.pform.m.value = "<xsl:value-of select="$app"/>/submit.xts";
  211. document.pform.submit();
  212. }
  213. }
  214. </script>
  215. </dp:script>
  216. <utml:form name="pform" method="post" action="{$gateway}">
  217. <utml:input type="hidden" name="ifrmcmd" utml:update="false"/>
  218. <!-- dialog header -->
  219. <dp:header>
  220. <!-- header titles-->
  221. <dp:title showName="false">
  222. <xsl:value-of select="$browserTitle"/>
  223. </dp:title>
  224. <dp:description>
  225. <xts:string id="IDS_EPS_DESCRIPTION"/>
  226. </dp:description>
  227. </dp:header>
  228. <lyt:layout style="1" border="no">
  229. <lyt:section>
  230. <!-- Results section -->
  231. <utml:input type="hidden" name="s_eps"/>
  232. <cf:main-pager-section name="eps_pager" virtualPage="true" width="100%">
  233. <cf:param name="item-path">/root/cm:queryResponse/cm:queryReply[1]/cm:pageDefinition</cf:param>
  234. <cf:param name="target">concat(concat($app,'/'),$mname)</cf:param>
  235. <cf:param name="lines-per-page">
  236. <xsl:value-of select="key('session-param', 'linesPerPage')"/>
  237. </cf:param>
  238. <cf:param name="rows">
  239. <cp:tableHeader session-name="s_eps" sort_track_type="page">
  240. <cp:columnHeader width="16" toggleName="checkbox_" utml="utml"/>
  241. <cp:columnHeader width="20"/>
  242. <!-- Path-Name Column -->
  243. <cp:columnHeader width="100%">
  244. <xsl:text/>
  245. <xts:string id="IDS_NAME"/>
  246. <xsl:text/>
  247. </cp:columnHeader>
  248. <cp:columnHeader width="100">
  249. <xts:string id="IDS_EPS_WIDTH"/>
  250. </cp:columnHeader>
  251. <cp:columnHeader width="100">
  252. <xts:string id="IDS_EPS_HEIGHT"/>
  253. </cp:columnHeader>
  254. <cp:columnHeader width="100">
  255. <xts:string id="IDS_EPS_UNIT"/>
  256. </cp:columnHeader>
  257. <!-- Actions Column -->
  258. <cp:columnHeader width="120">
  259. <xts:string id="IDS_HEADING_ACTIONS"/>
  260. </cp:columnHeader>
  261. </cp:tableHeader>
  262. <cp:tableContent>
  263. <cp:common-render-variables>
  264. <!-- Common variables used in rendering icons, actions .. etc. -->
  265. <pm:permissions/>
  266. <mf:common-entry-varaibles/>
  267. </cp:common-render-variables>
  268. <cp:columnContent>
  269. <xsl:choose>
  270. <xsl:when test="$has_write_permission='true'">
  271. <input type="checkbox" value="{xtsext:urlencode(string(cm:searchPath))}" name="checkbox_{position()}">
  272. <xsl:attribute name="aria-label"><xts:string id="IDS_SELECTION_FOR_PAGER_ITEM"><xts:param name="pagerItemName"><xsl:value-of select="cm:defaultName"/></xts:param></xts:string></xsl:attribute>
  273. </input>
  274. </xsl:when>
  275. <xsl:otherwise>
  276. <xsl:text>&#160;</xsl:text>
  277. </xsl:otherwise>
  278. </xsl:choose>
  279. </cp:columnContent>
  280. <cp:columnContent>
  281. <xsl:call-template name="gen-icon">
  282. <xsl:with-param name="class" select="$class"/>
  283. <xsl:with-param name="hiddenObject" select="$hiddenObject"/>
  284. </xsl:call-template>
  285. </cp:columnContent>
  286. <!-- Path-Name Column -->
  287. <cp:columnContent lang="{$contentLocale}">
  288. <xsl:value-of select="cm:defaultName"/>
  289. </cp:columnContent>
  290. <cp:columnContent lang="{$contentLocale}">
  291. <xsl:value-of select="xtsext:formatNumber(string(cm:width), string($contentLocale), number(1))"/>
  292. </cp:columnContent>
  293. <cp:columnContent lang="{$contentLocale}">
  294. <xsl:value-of select="xtsext:formatNumber(string(cm:height), string($contentLocale), number(1))"/>
  295. </cp:columnContent>
  296. <cp:columnContent>
  297. <xsl:choose>
  298. <xsl:when test="cm:unit='in'">
  299. <xts:string id="IDS_EPS_INCHES"/>
  300. </xsl:when>
  301. <xsl:when test="cm:unit='cm'">
  302. <xts:string id="IDS_EPS_CENTIMETERS"/>
  303. </xsl:when>
  304. <xsl:otherwise>--</xsl:otherwise>
  305. </xsl:choose>
  306. </cp:columnContent>
  307. <!-- Actions Column -->
  308. <cp:columnContent>
  309. <xsl:call-template name="action-properties">
  310. <xsl:with-param name="obj-name" select="cm:defaultName"/>
  311. <xsl:with-param name="obj-path" select="cm:searchPath"/>
  312. <xsl:with-param name="obj-class" select="cm:objectClass"/>
  313. <xsl:with-param name="class" select="cm:objectClass"/>
  314. <xsl:with-param name="supportPropertiesAction" select="true( )"/>
  315. <xsl:with-param name="supportAllActionsAction" select="true()"/>
  316. </xsl:call-template>
  317. </cp:columnContent>
  318. </cp:tableContent>
  319. </cf:param>
  320. <cf:param name="actions">
  321. <cp:action>
  322. <xsl:if test="$has_write_permission='true'">
  323. <a href="javascript:doNewPageSize();">
  324. <!-- Do not pretty-print the next line;by doing so, the links will look messy (see trakker # 534308) -->
  325. <xsl:text/><xts:string id="IDS_EPS_NEW_PAPER_SIZE"/><xsl:text/>
  326. </a>
  327. </xsl:if>
  328. </cp:action>
  329. <cp:action>
  330. <xsl:if test="$has_write_permission='true'">
  331. <a href="javascript:doDeletePageSizes()">
  332. <!-- Do not pretty-print the next line;by doing so, the links will look messy (see trakker # 534308) -->
  333. <xsl:text/><xts:string id="IDS_EPS_REMOVE"/><xsl:text/>
  334. </a>
  335. </xsl:if>
  336. </cp:action>
  337. </cf:param>
  338. </cf:main-pager-section>
  339. </lyt:section>
  340. </lyt:layout>
  341. <dp:footer>
  342. <df:button df:id="IDS_CLOSE" df:style="back-url"/>
  343. </dp:footer>
  344. </utml:form>
  345. <form name="cform" method="post" action="{$gateway}">
  346. <mf:cmd-vars/>
  347. </form>
  348. </dp:page>
  349. </xsl:template>
  350. <!-- Insert common templates -->
  351. <mt:actions mode="tools"/>
  352. <pf:gen-action/>
  353. <pf:gen-icon/>
  354. </xsl:stylesheet>
  355. </xts:block>
  356. <!--======================================================================
  357. Name: debug
  358. Comments: display the debug info.
  359. ======================================================================-->
  360. <xts:block id="debug" dependency="format" condition=".[/root/session/param[@name='debug']='1']" type="exec" mode="output" processor="XSLT" mandatory="false" mimeType="text/html">
  361. <!-- get the debug logic sheet -->
  362. <xts:logicsheet path="logicsheets/debuglogic.xslt"/>
  363. <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:dbg="http://developer.cognos.com/schemas/xts/logicsheets/xslt/debug/" exclude-result-prefixes="dbg">
  364. <xsl:output method="html" version="1.0" encoding="UTF-8" indent="no" omit-xml-declaration="yes"/>
  365. <xsl:template match="/">
  366. <dbg:dumpxml select="/root"/>
  367. </xsl:template>
  368. </xsl:stylesheet>
  369. </xts:block>
  370. </xts:morphlet>