new_signon2.xts 24 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506
  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" requiredCapability="canUseAdministrationPortal">
  13. <xts:block id="formlogic_init" type="exec" mode="interpret" processor="XSLT" path="/logicsheets/formlogic_init.xslt" nodelist="env,credential,system,http"/>
  14. <!--
  15. ===============================================================================================
  16. callMorphlet - Calls the appropriate morphlet using the passed in params which will return
  17. markup to be displayed or the expected results
  18. ===============================================================================================
  19. -->
  20. <xts:block
  21. id="callMorphlet"
  22. nodelist="requestParams,env, http, session, credential, cookies, header, user"
  23. dependency="formlogic_init"
  24. processor="XSLT"
  25. type="exec"
  26. condition=".[ /root/env/param[@name='controller_state'] != '' ]"
  27. mandatory="false">
  28. <xts:logicsheet path="logicsheets/portal.xsl"/>
  29. <xts:logicsheet path="logicsheets/presentation/dialog/controller-templates.xsl"/>
  30. <xsl:stylesheet version="1.0"
  31. xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
  32. xmlns:dlgctrl="http://developer.cognos.com/schemas/xts/logicsheets/xslt/presentation/dialog/controller-templates/"
  33. xmlns:xtsext="xalan://com.cognos.xts.ext.XTSExt"
  34. xmlns:req-params="http://developer.cognos.com/schemas/request/params"
  35. exclude-result-prefixes="xsl dlgctrl xtsext req-params">
  36. <xsl:output method="xml" version="1.0" encoding="UTF-8" indent="no"/>
  37. <xsl:key name="env-param" match="/root/env/param" use="@name"/>
  38. <xsl:variable name="object-class">
  39. <xsl:choose>
  40. <xsl:when test="key('env-param','m_new_class') != ''">
  41. <xsl:value-of select="key('env-param','m_new_class')"/>
  42. </xsl:when>
  43. <xsl:otherwise>
  44. <xsl:value-of select="key('env-param','m_class')"/>
  45. </xsl:otherwise>
  46. </xsl:choose>
  47. </xsl:variable>
  48. <xsl:template match="/">
  49. <xts:sequence>
  50. <dlgctrl:XTS2Request>
  51. <dlgctrl:target>/portal/addEntries/add_entries.xts</dlgctrl:target>
  52. <dlgctrl:stackName>addEntriesStack</dlgctrl:stackName>
  53. <req-params:param name="defaultTarget">/portal/new_signon2.xts</req-params:param>
  54. <req-params:param name="titlePostfix"><xts:string id="IDS_ADDENTRIES_TITLE_NEW_SIGNON"/></req-params:param>
  55. <req-params:param name="defaultSearchPath">/directory</req-params:param>
  56. <req-params:param name="showUsers">true</req-params:param>
  57. <req-params:param name="typeDialog">true</req-params:param>
  58. <req-params:param name="addEntriesUI">members</req-params:param>
  59. <req-params:param name="allowDuplicates">false</req-params:param>
  60. <req-params:param name="returnProperties">
  61. <req-params:property name="userName"/>
  62. </req-params:param>
  63. </dlgctrl:XTS2Request>
  64. </xts:sequence>
  65. </xsl:template>
  66. </xsl:stylesheet>
  67. </xts:block>
  68. <!--
  69. ===============================================================================================
  70. processReponse - Process the response from the callMorphlet block and either displays
  71. the markup or processes the results
  72. ===============================================================================================
  73. -->
  74. <xts:block
  75. id="processResponse"
  76. nodelist="output,http,env,system,user,morphletResponse,credential,cookies"
  77. path="/portal/addEntries/logicsheets/process_added_entries.xslt"
  78. processor="XSLT"
  79. dependency="callMorphlet"
  80. type="exec"
  81. condition=".[ /root/env/param[@name='controller_state'] != '' ]"
  82. mandatory="false">
  83. <xts:logicsheet path="logicsheets/presentation/dialog/controller-templates.xsl"/>
  84. <xts:logicsheet path="logicsheets/portal.xsl"/>
  85. </xts:block>
  86. <!--
  87. ================================================================================
  88. encrypt_credentials
  89. Encrypts the credentials from the Specify the signon userid & password dialog.
  90. ================================================================================
  91. -->
  92. <xts:block id="encrypt_credentials" type="exec" mode="interpret" dependency="processResponse" processor="XSLT" mandatory="false" condition=".[not(/root/mode='addEntries') and (/root/env/param[@name='m_signon_password'] or /root/env/param[@name='m_cube_password'])]">
  93. <xts:logicsheet path="logicsheets/presentation/dialog/connections.xslt"/>
  94. <xsl:stylesheet version="1.0"
  95. xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
  96. xmlns:dcx="http://developer.cognos.com/schemas/xts/logicsheets/xslt/presentation/dialog/connections/1/"
  97. xmlns:xtsext="xalan://com.cognos.xts.ext.XTSExt">
  98. <xsl:output method="xml" version="1.0" encoding="UTF-8" indent="no"/>
  99. <xsl:key name="env-param" match="/root/env/param" use="@name"/>
  100. <xsl:template match="/">
  101. <xts:sequence>
  102. <!-- Delete any previously created credentials. -->
  103. <xts:delete select="/root/env/param[@name='m_p_credentials']"/>
  104. <!-- Generate the credentials with the user id and password. -->
  105. <xts:append select="/root/env">
  106. <param name="m_p_credentials">
  107. <xsl:call-template name="dcx:genCredentials">
  108. <xsl:with-param name="username" select="key('env-param','m_signon_userid')"/>
  109. <xsl:with-param name="password" select="key('env-param','m_signon_password')"/>
  110. <xsl:with-param name="passwordEncrypted" select="boolean(/root/env/param[@name='m_signon_password' and @format='encrypted'])"/>
  111. <xsl:with-param name="cubePassword" select="key('env-param','m_cube_password')"/>
  112. <xsl:with-param name="cubePasswordEncrypted" select="boolean(key('env-param', 'm_cube_password')[@format='encrypted'])"/>
  113. </xsl:call-template>
  114. </param>
  115. </xts:append>
  116. <!-- Delete the passwords. -->
  117. <xts:delete select="/root/env/param[@name='m_cube_password' or @name='m_cube_confirm_password' or @name='m_signon_password' or @name='m_signon_confirm_password']"/>
  118. </xts:sequence>
  119. </xsl:template>
  120. <dcx:genCredentialTemplate/>
  121. </xsl:stylesheet>
  122. </xts:block>
  123. <!--
  124. ================================================================================
  125. get_content
  126. ================================================================================
  127. -->
  128. <xts:block id="get_content" type="exec" mode="interpret" processor="XSLT" dependency="processResponse" condition=".[not(/root/mode='addEntries')]" mandatory="false">
  129. <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:xtsext="xalan://com.cognos.xts.ext.XTSExt">
  130. <xsl:output method="xml" version="1.0" encoding="UTF-8" indent="no"/>
  131. <xsl:variable name="query-values" select="/root/env/param"/>
  132. <xsl:template match="/">
  133. <xts:sequence>
  134. <xts:append>
  135. <xsl:choose>
  136. <xsl:when test="/root/env/param[@name='m_p_consumers']!=''">
  137. <xsl:value-of select="xtsext:web64decode(xtsext:cafaction('sign_unwrap',string($query-values[@name='m_p_consumers'])), true())" disable-output-escaping="yes"/>
  138. </xsl:when>
  139. <xsl:otherwise>
  140. <list/>
  141. </xsl:otherwise>
  142. </xsl:choose>
  143. </xts:append>
  144. <xts:delete select="/root/env/param[@name='pagerfromconsumers']"/>
  145. <xts:delete select="/root/env/param[@name='pagertoconsumers']"/>
  146. <xts:delete select="/root/env/param[@name='pagerfrom_dconsumers']"/>
  147. <xts:delete select="/root/env/param[@name='pagerto_dconsumers']"/>
  148. </xts:sequence>
  149. </xsl:template>
  150. </xsl:stylesheet>
  151. </xts:block>
  152. <!--
  153. ================================================================================
  154. execute_command
  155. Execute the operation: delete, additems_
  156. ================================================================================
  157. -->
  158. <xts:block id="execute_command" dependency="get_content" type="exec" mode="interpret" processor="XSLT" condition=".[not(/root/mode='addEntries')]" mandatory="false">
  159. <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:xtsext="xalan://com.cognos.xts.ext.XTSExt" xmlns:x="x">
  160. <xsl:output method="xml" version="1.0" encoding="UTF-8" indent="no"/>
  161. <xsl:variable name="query-values" select="/root/env/param"/>
  162. <xsl:variable name="op" select="$query-values[@name = 'listop']"/>
  163. <xsl:template match="/">
  164. <xsl:choose>
  165. <xsl:when test="$op = 'delete'">
  166. <xts:sequence>
  167. <!-- loop through selection params -->
  168. <xsl:for-each select="$query-values[starts-with(@name, 'pform_consumers_')]">
  169. <!-- lookup item in list -->
  170. <xsl:variable name="searchPath">
  171. <xsl:value-of select="."/>
  172. </xsl:variable>
  173. <xsl:choose>
  174. <xsl:when test="/root/list/*[*[local-name()='searchPath']=$searchPath][x:added]">
  175. <!-- Since this was a newly added entry, just remove from the list. -->
  176. <xts:delete select="/root/list/*[*[local-name()='searchPath']='{$searchPath}']"/>
  177. </xsl:when>
  178. <xsl:otherwise>
  179. <!-- For entries that were already in the list, simply append a deleted marker. -->
  180. <xts:append select="/root/list/*[*[local-name()='searchPath']='{$searchPath}']">
  181. <xsl:element name="x:deleted" namespace="x"/>
  182. </xts:append>
  183. </xsl:otherwise>
  184. </xsl:choose>
  185. </xsl:for-each>
  186. <xts:delete select="/root/env/param[starts-with(@name, 'pform_consumers_')]"/>
  187. </xts:sequence>
  188. </xsl:when>
  189. <xsl:when test="/root/newEntries">
  190. <xts:sequence>
  191. <xsl:variable name="appends">
  192. <xsl:for-each select="/root/newEntries/*">
  193. <xsl:variable name="searchPath" select="*[local-name()='searchPath']"/>
  194. <xsl:choose>
  195. <xsl:when test="not(*[local-name()='searchPath'] = /root/list/*/*[local-name()='searchPath'])">
  196. <xts:append select="/root/list">
  197. <xsl:element name="{local-name()}" namespace="http://developer.cognos.com/schemas/xts-cm/1/">
  198. <xsl:copy-of select="*"/>
  199. <x:added xmlns:x="x"/>
  200. </xsl:element>
  201. </xts:append>
  202. </xsl:when>
  203. <xsl:when test="/root/list/*[*[local-name()='searchPath'] = $searchPath]/x:deleted">
  204. <xts:delete select="/root/list/*[*[local-name()='searchPath']='{$searchPath}']/*[local-name() = 'deleted' and namespace-uri()='x']"/>
  205. </xsl:when>
  206. <xsl:otherwise>
  207. <xts:append select="/root">
  208. <duplicateEntry/>
  209. </xts:append>
  210. </xsl:otherwise>
  211. </xsl:choose>
  212. </xsl:for-each>
  213. </xsl:variable>
  214. <xsl:if test="$appends">
  215. <xts:sequence>
  216. <xsl:copy-of select="$appends"/>
  217. <xts:delete select="/root/additems"/>
  218. </xts:sequence>
  219. </xsl:if>
  220. </xts:sequence>
  221. </xsl:when>
  222. </xsl:choose>
  223. </xsl:template>
  224. </xsl:stylesheet>
  225. </xts:block>
  226. <!--
  227. ================================================================================
  228. encode_list
  229. Serialize the data (web64 encoded)
  230. ================================================================================
  231. -->
  232. <xts:block id="encode_list" dependency="execute_command" type="exec" mode="interpret" processor="XSLT" condition=".[not(/root/mode='addEntries')]" mandatory="false">
  233. <xts:logicsheet path="logicsheets/portal.xsl"/>
  234. <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:xtsext="xalan://com.cognos.xts.ext.XTSExt" xmlns:cm="http://developer.cognos.com/schemas/xts-cm/1/" xmlns:pf="http://developer.cognos.com/schemas/xts/pf">
  235. <xsl:output method="xml" version="1.0" encoding="UTF-8" indent="no"/>
  236. <xsl:variable name="in-wizard" select="/root/morphlet/variable[@name = 'in-wizard']"/>
  237. <pf:serialize-xml/>
  238. <pf:variables/>
  239. <xsl:template match="/">
  240. <xts:sequence>
  241. <xts:delete select="/root/env/param[@name = 'm_p_consumers']"/>
  242. <xsl:variable name="markup">
  243. <xsl:apply-templates mode="markup" select="/root/list"/>
  244. </xsl:variable>
  245. <xts:append select="/root/env">
  246. <param name="m_p_consumers">
  247. <xsl:value-of select="xtsext:cafaction( concat('sign_wrap_setpassportid_', $passport), xtsext:web64encode(string($markup), true()))"/>
  248. </param>
  249. </xts:append>
  250. </xts:sequence>
  251. </xsl:template>
  252. </xsl:stylesheet>
  253. </xts:block>
  254. <!--
  255. ================================================================================
  256. render_page
  257. Render the HTML page
  258. ===============================================================================================
  259. -->
  260. <xts:block id="render_page" dependency="formlogic_init encode_list encrypt_credentials" mode="output" processor="XSLT" type="exec" mimeType="text/html" condition=".[not(/root/mode='addEntries')]" mandatory="false">
  261. <!-- portal specific information -->
  262. <xts:logicsheet path="logicsheets/portal.xsl"/>
  263. <!-- Get the new theme framework. -->
  264. <xts:logicsheet path="logicsheets/presentation/dialog/framework.xsl"/>
  265. <xts:logicsheet path="logicsheets/presentation/layout.xsl"/>
  266. <xts:logicsheet path="logicsheets/presentation/dialog/presentation.xsl"/>
  267. <xts:logicsheet path="logicsheets/presentation/dialog/templates.xsl"/>
  268. <xts:logicsheet path="logicsheets/presentation/controls/framework.xsl"/>
  269. <xts:logicsheet path="logicsheets/presentation/controls/presentation.xsl"/>
  270. <xts:logicsheet path="logicsheets/presentation/dialog/confirm.xslt"/>
  271. <!-- apply the form logic -->
  272. <xts:logicsheet path="logicsheets/formlogic.xslt"/>
  273. <!-- Prevent the href from appearing in the status bar. -->
  274. <xts:logicsheet path="logicsheets/validation.xslt"/> <xts:logicsheet path="logicsheets/presentation/touch_up.xslt"/>
  275. <xsl:stylesheet version="1.0"
  276. xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
  277. xmlns:pf="http://developer.cognos.com/schemas/xts/pf"
  278. xmlns:lyt="http://developer.cognos.com/schemas/xts/logicsheets/xslt/presentation/layout/"
  279. xmlns:dp="http://developer.cognos.com/schemas/xts/logicsheets/xslt/presentation/dialog/presentation/"
  280. xmlns:df="http://developer.cognos.com/schemas/xts/logicsheets/xslt/presentation/dialog/framework/"
  281. xmlns:dt="http://developer.cognos.com/schemas/xts/logicsheets/xslt/presentation/dialog/templates/"
  282. xmlns:cp="http://developer.cognos.com/schemas/xts/logicsheets/xslt/presentation/controls/presentation/"
  283. xmlns:cf="http://developer.cognos.com/schemas/xts/logicsheets/xslt/presentation/controls/framework/"
  284. xmlns:dc="http://developer.cognos.com/schemas/xts/logicsheets/xslt/presentation/dialog/confirm/1/"
  285. xmlns:cm="http://developer.cognos.com/schemas/xts-cm/1/"
  286. xmlns:bus="http://developer.cognos.com/schemas/bibus/3/"
  287. xmlns:utml="http://developer.cognos.com/schemas/xts/logicsheet/xslt/formlogic/"
  288. xmlns:xtsext="xalan://com.cognos.xts.ext.XTSExt"
  289. xmlns:xts="http://developer.cognos.com/schemas/xts/"
  290. xmlns:x="x"
  291. exclude-result-prefixes="xsl lyt dp dc pf df cp cf cm utml xtsext x">
  292. <xsl:output method="html" version="1.0" encoding="UTF-8" indent="no"/>
  293. <!-- current file name -->
  294. <xsl:variable name="mname" select="'new_signon2.xts'"/>
  295. <xsl:variable name="m_class" select="/root/env/param[@name = 'm_new_class']"/>
  296. <!-- add any theme variables -->
  297. <pf:variables/>
  298. <!-- Need ability to display class names -->
  299. <pf:gen-icon/>
  300. <!-- start the output -->
  301. <xsl:template match="root">
  302. <xsl:variable name="backURL" select="key('env-param','backURL')"/>
  303. <xsl:variable name="wizardTitle">
  304. <xts:string id="IDS_NEW_DATA_SOURCE_SIGNON_TITLE"/>
  305. </xsl:variable>
  306. <xsl:variable name="browserTitle">
  307. <xts:string id="IDS_NEW_TITLE_CONSUMERS"><xts:param name="wizardTitle"><xsl:value-of select="$wizardTitle"/></xts:param></xts:string>
  308. </xsl:variable>
  309. <!-- Page and title -->
  310. <xsl:text disable-output-escaping='yes'>&lt;!DOCTYPE html></xsl:text><dp:page longTitle="$browserTitle">
  311. <dp:meta>
  312. <!-- Standard meta tags -->
  313. <pf:meta/>
  314. </dp:meta>
  315. <dp:script>
  316. <!-- Help system -->
  317. <pf:help context="HID_DATA_SOURCES"/>
  318. <!-- Define selectall and deselectall functions.-->
  319. <dt:selectDeselectAll/>
  320. <script language="javascript">
  321. function init()
  322. {
  323. if (document.pform.controller_state)
  324. {
  325. document.pform.controller_state.value = '';
  326. }
  327. }
  328. </script>
  329. </dp:script>
  330. <utml:form name="pform" action="{$gateway}" method="post">
  331. <utml:input type="hidden" name="listop" value="" utml:update="false"/>
  332. <utml:input type="hidden" name="controller_state" value="" utml:update="false"/>
  333. <!-- Dialog header -->
  334. <dp:header>
  335. <dp:title><xsl:value-of select="$browserTitle"/></dp:title>
  336. <dp:description>
  337. <xts:string id="IDS_NEW_INTRO_CONSUMERS"/>
  338. </dp:description>
  339. <dp:close>
  340. <a href="{$backURL}">
  341. <dp:closeMarker/>
  342. </a>
  343. </dp:close>
  344. </dp:header>
  345. <lyt:layout style="1" border="no">
  346. <lyt:section>
  347. <dp:list width="100%">
  348. <dp:section>
  349. <cf:main-pager-section name="consumers" form="pform" width="50%" genDelete="yes">
  350. <cf:param name="item-path">/root/list/*[not(x:deleted or cm:searchPath='')]</cf:param>
  351. <cf:param name="target">concat(concat($app,'/'),$mname)</cf:param>
  352. <cf:param name="lines-per-page">
  353. <xsl:choose>
  354. <xsl:when test="key('session-param','linesPerPage')!=''">
  355. <xsl:value-of select="key('session-param','linesPerPage')"/>
  356. </xsl:when>
  357. <xsl:otherwise>
  358. <xsl:value-of select="/root/system/param[@name='defaultPortalPreferences']/pref[@name='lines']"/>
  359. </xsl:otherwise>
  360. </xsl:choose>
  361. </cf:param>
  362. <cf:param name="actions">
  363. <cp:action>
  364. <utml:a utml:op="maintain" utml:formName="pform">
  365. <utml:href>document.pform.controller_state.value='addEntries|navigate';</utml:href>
  366. <utml:target>
  367. <xsl:value-of select="concat($app, '/', $mname)"/>
  368. </utml:target>
  369. <xsl:text/><xts:string id="IDS_COMMAND_ADD"/><xsl:text/>
  370. </utml:a>
  371. </cp:action>
  372. <cp:action>
  373. <utml:a href="javascript:document.pform.listop.value='delete';if(window.preDeleteconsumers)preDeleteconsumers('pform','pform_consumers_');">
  374. <utml:target>
  375. <xsl:value-of select="concat( $app, '/', $mname )"/>
  376. </utml:target>
  377. <xsl:text/><xts:string id="IDS_REMOVE"/><xsl:text/>
  378. </utml:a>
  379. </cp:action>
  380. </cf:param>
  381. <cf:param name="rows">
  382. <cp:tableHeader>
  383. <cp:columnHeader width="16" toggleName="pform_consumers_" utml="utml" noLabel="true"/>
  384. <cp:columnHeader width="16"/>
  385. <cp:columnHeader width="100%">
  386. <!-- All of this is to align the header (...> Name) with the contents of the table-->
  387. <img height="5" width="1" border="0"><xsl:attribute name="src"><xsl:value-of select="$webcontent"/>/images/space.gif</xsl:attribute></img>
  388. <xsl:text/><xts:string id="IDS_PATH_INDICATOR"/><xsl:text>&#160;</xsl:text>
  389. <img height="5" width="1" border="0"><xsl:attribute name="src"><xsl:value-of select="$webcontent"/>/images/space.gif</xsl:attribute></img>
  390. <xsl:text/><xts:string id="IDS_NAME"/><xsl:text/>
  391. </cp:columnHeader>
  392. </cp:tableHeader>
  393. <cp:tableContent>
  394. <xsl:variable name="entryLabel">
  395. <xsl:value-of select="cm:defaultName"/>
  396. <xsl:if test="cm:userName and not(cm:userName[@nil='true'])">
  397. <xsl:text> (</xsl:text>
  398. <xsl:value-of select="cm:userName"/>
  399. <xsl:text>)</xsl:text>
  400. </xsl:if>
  401. </xsl:variable>
  402. <cp:columnContent>
  403. <utml:input type="checkbox" utml:track="false">
  404. <xsl:attribute name="aria-label"><xts:string id="IDS_SELECTION_FOR_PAGER_ITEM" encode="html"><xts:param name="pagerItemName"><xsl:value-of select="$entryLabel"/></xts:param></xts:string></xsl:attribute>
  405. <utml:prefix>
  406. <xsl:text>pform_consumers_</xsl:text>
  407. </utml:prefix>
  408. <utml:name>
  409. <xsl:value-of select="position()"/>
  410. </utml:name>
  411. <utml:value>
  412. <xsl:value-of select="cm:searchPath"/>
  413. </utml:value>
  414. </utml:input>
  415. </cp:columnContent>
  416. <cp:columnContent>
  417. <xsl:call-template name="gen-icon">
  418. <xsl:with-param name="showAction" select="false()"/>
  419. </xsl:call-template>
  420. </cp:columnContent>
  421. <cp:columnContent>
  422. <img width="20" height="16" align="absmiddle">
  423. <xsl:attribute name="alt">
  424. <cf:do-the-path-link>
  425. <cf:param name="familytree">cm:ancestors</cf:param>
  426. <cf:param name="familymember">cm:defaultName</cf:param>
  427. <cf:param name="onlyAncestors">true</cf:param>
  428. </cf:do-the-path-link>
  429. </xsl:attribute>
  430. <xsl:attribute name="src"><xsl:value-of select="concat($skin_images,'path.gif')"/></xsl:attribute>
  431. </img>
  432. <xsl:text>&#160;</xsl:text>
  433. <xsl:value-of select="$entryLabel"/>
  434. </cp:columnContent>
  435. </cp:tableContent>
  436. </cf:param>
  437. </cf:main-pager-section>
  438. </dp:section>
  439. </dp:list>
  440. </lyt:section>
  441. </lyt:layout>
  442. <dp:footer>
  443. <df:button df:id="IDS_CANCEL" df:style="back-url" onclick="{$dc-confirm-cancel}"/>
  444. <df:button df:id="IDS_BACK" df:style="maintain">
  445. <df:target><xsl:value-of select="concat($app,'/new_signon.xts')"/></df:target>
  446. </df:button>
  447. <df:button df:id="IDS_NEXT"/>
  448. <df:button df:id="IDS_FINISH" df:style="submit"/>
  449. </dp:footer>
  450. <!-- if the user tried to add a duplicate entry -->
  451. <script language="javascript">
  452. <xsl:if test="/root/duplicateEntry">
  453. <xsl:variable name="msg">
  454. <xts:string id="IDS_DUPLICATE_ENTRY" encode="javascript"/>
  455. </xsl:variable>
  456. window.alert('<xsl:value-of select="normalize-space($msg)"/>');
  457. </xsl:if>
  458. </script>
  459. </utml:form>
  460. </dp:page>
  461. </xsl:template>
  462. </xsl:stylesheet>
  463. </xts:block>
  464. <!--
  465. ================================================================================
  466. debug
  467. ================================================================================
  468. -->
  469. <xts:block id="debug" type="exec" mode="output" processor="XSLT" condition=".[/root/session/param[@name = 'debug'] = '1']" mandatory="false" mimeType="text/html" dependency="processResponse render_page">
  470. <!-- Get the debug logic sheet -->
  471. <xts:logicsheet path="logicsheets/debuglogic.xslt"/>
  472. <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">
  473. <xsl:output method="html" version="1.0" encoding="UTF-8" indent="no"/>
  474. <xsl:template match="/">
  475. <dbg:dumpxml select="/root"/>
  476. </xsl:template>
  477. </xsl:stylesheet>
  478. </xts:block>
  479. </xts:morphlet>