edit_file_system_locations.xts 18 KB

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