1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825182618271828182918301831183218331834183518361837183818391840184118421843184418451846184718481849185018511852185318541855185618571858185918601861186218631864186518661867186818691870187118721873187418751876187718781879188018811882188318841885188618871888188918901891189218931894189518961897189818991900190119021903190419051906190719081909191019111912191319141915191619171918191919201921192219231924192519261927192819291930193119321933193419351936193719381939194019411942194319441945194619471948194919501951195219531954195519561957195819591960196119621963196419651966196719681969197019711972197319741975197619771978197919801981198219831984198519861987198819891990199119921993199419951996199719981999200020012002200320042005200620072008200920102011201220132014201520162017201820192020202120222023202420252026202720282029203020312032203320342035203620372038203920402041204220432044204520462047204820492050205120522053205420552056205720582059206020612062206320642065206620672068206920702071207220732074207520762077207820792080208120822083208420852086208720882089209020912092209320942095209620972098209921002101210221032104210521062107210821092110211121122113211421152116211721182119212021212122212321242125212621272128212921302131213221332134213521362137213821392140214121422143214421452146214721482149215021512152215321542155215621572158215921602161216221632164216521662167216821692170217121722173217421752176217721782179218021812182218321842185218621872188218921902191219221932194219521962197219821992200220122022203220422052206220722082209221022112212221322142215221622172218221922202221222222232224222522262227222822292230223122322233223422352236223722382239224022412242224322442245224622472248224922502251225222532254225522562257225822592260226122622263226422652266226722682269227022712272227322742275227622772278227922802281228222832284228522862287228822892290229122922293229422952296229722982299230023012302230323042305230623072308230923102311 |
- <?xml version="1.0" encoding="UTF-8"?>
- <!--
- Licensed Materials - Property of IBM
- IBM Cognos Products: ps
- (C) Copyright IBM Corp. 2005, 2016
- US Government Users Restricted Rights - Use, duplication or disclosure restricted by GSA ADP Schedule Contract with IBM Corp.
- -->
- <!--
- Copyright (C) 2008 Cognos ULC, an IBM Company. All rights reserved.
- Cognos (R) is a trademark of Cognos ULC, (formerly Cognos Incorporated).
- -->
- <xsl:stylesheet version="1.0"
- xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
- xmlns:cm="http://developer.cognos.com/schemas/xts-cm/1/"
- 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:cp="http://developer.cognos.com/schemas/xts/logicsheets/xslt/presentation/controls/presentation/"
- xmlns:adm="http://developer.cognos.com/schemas/xts/logicsheets/contentadmin/"
- xmlns:bus="http://developer.cognos.com/schemas/bibus/1/"
- xmlns:utml="http://developer.cognos.com/schemas/xts/logicsheet/xslt/formlogic/"
- xmlns:send="http://developer.cognos.com/schemas/xts/logic-sheet/xslt/brl/1/"
- xmlns:xts="http://developer.cognos.com/schemas/xts/"
- xmlns:xtsext="xalan://com.cognos.xts.ext.XTSExt"
- xmlns:pf="http://developer.cognos.com/schemas/xts/pf"
- xmlns:out="dummy-uri"
- xmlns:dpl="http://developer.cognos.com/schemas/xts/logicsheets/deployment/"
- xmlns:set="http://exslt.org/sets"
- exclude-result-prefixes="xsl cm lyt dp df cf cp adm bus utml xts xtsext pf send">
- <xsl:output method="xml" version="1.0" encoding="UTF-8" indent="no"/>
- <xsl:namespace-alias stylesheet-prefix="out" result-prefix="xsl"/>
- <!--
- ======================================================================
- Javascript needed for the content maintenance consistency scan UI
- ======================================================================
- -->
- <xsl:template match="adm:optionScripts">
- <script language="JavaScript">
- function initContentMaintenanceOptions()
- {
- if(document.pform.cto_consistency_check)
- {
- for (var i=0; document.pform.cto_consistency_check.length > i ; i++)
- {
- if (document.pform.cto_consistency_check[i].checked)
- {
- document.pform.cto_consistency_check[i].click();
- }
- }
- }
-
- if (document.pform.cto_externalnamespace)
- {
- for(var i=0; document.pform.cto_externalnamespace.length > i; i++)
- {
- if (document.pform.cto_externalnamespace[i].value=='all' && document.pform.cto_externalnamespace[i].checked)
- {
- disableDependentCheckBoxes();
- }
- }
- }
- }
-
- function disableDependentCheckBoxes()
- {
- for(var i=0; document.pform.length > i; i++)
- {
- if (document.pform.elements[i].name.substring( 0, 11) == 'm_namespace')
- document.pform.elements[i].disabled = true;
- }
- }
-
- function enableDependentCheckBoxes()
- {
- for(var i=0; document.pform.length > i; i++)
- {
- if (document.pform.elements[i].name.substring( 0, 11) == 'm_namespace')
- document.pform.elements[i].disabled = false;
- }
- }
- function disableNamespaceCheckBox()
- {
- if (document.pform.cto_externalnamespace)
- {
- for(var i=0; document.pform.cto_externalnamespace.length > i; i++)
- {
- document.pform.cto_externalnamespace[i].disabled=true;
- disableDependentCheckBoxes();
- }
- }
- }
-
- function enableNamespaceCheckBox()
- {
- if (document.pform.cto_externalnamespace)
- {
- for(var i=0; document.pform.cto_externalnamespace.length > i; i++)
- {
- document.pform.cto_externalnamespace[i].disabled=false;
- enableDependentCheckBoxes();
- }
- }
- }
- </script>
- </xsl:template>
- <!--
- =============================================================
- adm:parseContentTaskOptions
- create any queries that need to be sent to CM for the report upgrade options.
- Also create the params that should be copied into the env
- =============================================================
- -->
- <xsl:template match="adm:parseContentTaskOptions">
- <!-- create any queries that need to be sent to CM for the content task options.
- Also create the params that should be copied into the env -->
- <xts:append>
- <contentTaskQueries>
- <xts:transform src="transforms/portal/options/generateCMQueriesForContentTaskInfo.xslt" processor="XSLT">
- <root>
- <xts:queryNode select="{@optionsPath}"/>
- </root>
- </xts:transform>
- </contentTaskQueries>
- </xts:append>
-
- <xts:delete select="/root/env/param[@name='contentTaskType']"/>
- <xts:append select="/root/env">
- <xts:queryNode select="/root/contentTaskQueries/env/*[local-name()='param' and @name='contentTaskType']"/>
- </xts:append>
- </xsl:template>
- <!--
- =============================================================
- adm:parseIndexUpdateTaskOptions
- create any queries that need to be sent to CM for the indexUpdateTask options.
- Also create the params that should be copied into the env
- =============================================================
- -->
- <xsl:template match="adm:parseIndexUpdateTaskOptions">
- <xts:append>
- <indexUpdateTaskSearchPaths>
- <xts:transform src="transforms/portal/options/generateCMQueriesForIndexUpdateInfo.xslt" processor="XSLT">
- <root>
- <xts:queryNode select="{@optionsPath}"/>
- </root>
- </xts:transform>
- </indexUpdateTaskSearchPaths>
- </xts:append>
- <xts:delete select="/root/env/param[@name='indexUpdateTaskType']"/>
- <xts:append select="/root/env">
- <xts:queryNode select="/root/indexUpdateTaskSearchPaths/env/*[local-name()='param' and @name='indexUpdateTaskType']"/>
- </xts:append>
- </xsl:template>
- <!--
- =============================================================
- adm:queryContentTaskInfoForSummary
- Need to query CM for all the information needed to display
- the summary
- =============================================================
- -->
- <xsl:template match="adm:queryContentTaskInfoForSummary">
- <xts:append select="/root">
- <contentTaskContext>
- <xts:transform src="transforms/portal/options/swapSearchPaths.xslt" processor="XSLT">
- <root>
- <out:if test="/root/contentTaskQueries/*[local-name()='query']">
- <xts:transform src="transforms/CM/post-process.xslt" processor="XSLT">
- <send:request provider="cm">
- <xts:transform src="transforms/CM/pre-process.xslt" processor="XSLT">
- <cm:query xmlns:cm="http://developer.cognos.com/schemas/xts-cm/1/">
- <cm:requests>
- <out:copy-of select="/root/contentTaskQueries/*[local-name()='query']"/>
- </cm:requests>
- </cm:query>
- </xts:transform>
- </send:request>
- </xts:transform>
- <queryBuiltFromOptions>
- <out:copy-of select="/root/contentTaskQueries/*[local-name()='query']"/>
- </queryBuiltFromOptions>
- </out:if>
- </root>
- </xts:transform>
- </contentTaskContext>
- </xts:append>
-
- <xts:delete select="/root/contentTaskQueries"/>
- </xsl:template>
-
- <!--
- =============================================================
- Content Maintenance UI for selecting report upgrade options
- =============================================================
- -->
- <xsl:template match="adm:reportUpgradeOptions">
- <script language="JavaScript">
- function validateReportUpgradeOptions()
- {
- frm = document.pform;
-
- var hasEntries = false;
- for(var i=0; frm.length > i; i++)
- {
- if (frm.elements[i].name == 'ctro_checkbox_upgradeClassesContext')
- {
- //making sure the user has added something to the list, this just checks that the list contains something, the below logic checks that something is selected
- hasEntries = true;
- }
- <!-- if the reports located in checkbox isn't checked, then look for the reports bases on checkbox -->
- if (frm.elements[i].name == 'ctro_checkbox_upgradeClassesContext' && !frm.elements[i].checked)
- {
- searchPath = frm.elements[i].value;
-
- for(var ii=0; frm.length > ii; ii++)
- {
- if (frm.elements[i].value == frm.elements[ii].value && frm.elements[ii].name == 'ctro_checkbox_upgradeClassesReferenceContext' && !frm.elements[ii].checked)
- {
- alert("<xts:string id="IDS_CONTENT_TASK_REPORT_UPGRADE_NO_SELECTED" encode="javascript"/>");
- return false;
- }
- }
- }
- }
-
- return true;
- }
- </script>
- <dp:list>
- <dp:section>
- <dp:label>
- <xts:string id="IDS_CONTENT_TASK_REPORT_UPGRADE_TABLE_TITLE"/>
- </dp:label>
- </dp:section>
- <dp:section>
- <dp:hint>
- <xts:string id="IDS_CONTENT_TASK_REPORT_UPGRADE_TABLE_DESCRIPTION"/>
- </dp:hint>
- </dp:section>
- </dp:list>
-
- <!-- the possible classes to upgrade are hardcoded for Bering -->
- <utml:input type="hidden" name="ctro_upgradeClasses" value="report" utml:update="false"/>
- <utml:input type="hidden" name="ctro_upgradeClasses" value="query" utml:update="false"/>
- <utml:input type="hidden" name="ctro_upgradeClasses" value="interactiveReport" utml:update="false"/>
-
-
-
- <cp:table name="reportUpgrade" iterate="/root/contentTaskContext/*" width="100%" align="left" showEmptyMsg="true">
- <!-- possible actions -->
- <cp:action>
- <out:if test="$has_write_permission = true()">
- <utml:a utml:op="maintain">
- <utml:href>document.pform.controller_state.value = 'addEntries|navigate';</utml:href>
- <xsl:text/><xts:string id="IDS_CONTENT_TASK_REPORT_UPGRADE_ADD"/><xsl:text/>
- </utml:a>
- </out:if>
- </cp:action>
- <cp:action>
- <out:if test="$has_write_permission = true()">
- <script language="javascript">
- var selectionInfo = {checkboxName: "checkbox_location"};
- selectionInfo.noSelectionMsg = "<xts:string encode="javascript" id="IDS_CONTENT_TASK_REPORT_UPGRADE_REMOVE_WARNING"/>";
- </script>
- <utml:a utml:op="maintain">
- <xsl:attribute name="onclick">return com.ibm.cognos.ps.list.isEntrySelected(selectionInfo);</xsl:attribute>
- <utml:href>document.pform.listop.value = 'delete';</utml:href>
- <xsl:text/><xts:string id="IDS_CONTENT_TASK_REPORT_UPGRADE_REMOVE"/><xsl:text/>
- </utml:a>
- </out:if>
- </cp:action>
- <cp:tableHeader>
- <!-- checkbox -->
- <cp:columnHeader width="16" toggleName="checkbox_location" noLabel='true' utml="utml"/>
- <!-- icon -->
- <cp:columnHeader width="16"/>
- <!-- name -->
- <cp:columnHeader width="40%">
- <!-- All of this is to align the header (...> Name) with the contents of the table-->
- <img height="5" width="1" border="0"><out:attribute name="src"><out:value-of select="$webcontent"/>/images/space.gif</out:attribute></img>
- <out:text/><xts:string id="IDS_PATH_INDICATOR"/><out:text> </out:text>
- <img height="5" width="1" border="0"><out:attribute name="src"><out:value-of select="$webcontent"/>/images/space.gif</out:attribute></img>
- <xts:string id="IDS_CONTENT_TASK_REPORT_UPGRADE_NAME_COLUMN"/>
- </cp:columnHeader>
- <!-- reports located in -->
- <cp:columnHeader width="30%" toggleLabel="IDS_CONTENT_TASK_REPORT_UPGRADE_LOCATED_IN_COLUMN" toggleName="ctro_checkbox_upgradeClassesContext"/>
- <!-- reports based on -->
- <cp:columnHeader width="30%" toggleLabel="IDS_CONTENT_TASK_REPORT_UPGRADE_BASED_ON_COLUMN" toggleName="ctro_checkbox_upgradeClassesReferenceContext"/>
- </cp:tableHeader>
- <cp:tableContent>
- <!-- checkbox -->
- <cp:columnContent valign="top">
- <out:if test="$has_write_permission">
- <utml:input type="checkbox" name="checkbox_location">
- <out:attribute name="aria-label"><xts:string id="IDS_SELECTION_FOR_PAGER_ITEM" encode="html"><xts:param name="pagerItemName"><out:value-of select="cm:defaultName"/></xts:param></xts:string></out:attribute>
- <utml:value><out:value-of select="position()"/></utml:value>
- </utml:input>
- </out:if>
- </cp:columnContent>
- <!-- icon -->
- <cp:columnContent valign="top">
- <out:variable name="overrideObjectClass">
- <out:if test="cm:objectClass='namespace'">pfr</out:if>
- </out:variable>
- <out:call-template name="gen-icon">
- <out:with-param name="showAction" select="false()"/>
- <out:with-param name="class" select="$overrideObjectClass"/>
- <out:with-param name="userInterfaces" select="*[local-name()='userInterfaces']/*[local-name()='uiComponentEnum']"/>
- <out:with-param name="hiddenObject" select="cm:hidden"/>
- </out:call-template>
- </cp:columnContent>
- <!-- name -->
- <cp:columnContent scope="row">
- <img width="20" height="16" align="absmiddle" src="{'{$skin_images}'}path.gif">
- <out:attribute name="alt">
- <cf:do-the-path-link>
- <cf:param name="familytree">cm:ancestors</cf:param>
- <cf:param name="familymember">cm:defaultName</cf:param>
- <cf:param name="onlyAncestors">true</cf:param>
- </cf:do-the-path-link>
- </out:attribute>
- </img>
- <xsl:text> </xsl:text>
- <out:value-of select="cm:defaultName"/>
- </cp:columnContent>
- <!-- reports located in -->
- <cp:columnContent>
- <out:choose>
- <out:when test="cm:objectClass = 'package'">
- <utml:input type="checkbox" name="ctro_checkbox_upgradeClassesContext" utml:update="false">
- <utml:value>
- <out:value-of select="cm:searchPath"/>
- </utml:value>
- <out:if test="key('env-param','ctro_checkbox_upgradeClassesContext')=cm:searchPath">
- <out:attribute name="checked">checked</out:attribute>
- </out:if>
- <out:attribute name="aria-label"><xts:string id="IDS_CONTENT_TASK_REPORT_UPGRADE_LOCATED_IN_COLUMN_ARIA"><xts:param name="objName"><out:value-of select="cm:defaultName"/></xts:param></xts:string></out:attribute>
- </utml:input>
- </out:when>
- <out:otherwise>
- <img width="3" height="1" border="0">
- <xsl:attribute name="src"><xsl:value-of select="'{$webcontent}'"/>/images/space.gif</xsl:attribute>
- </img>
- <img border="0" role="checkbox" aria-checked="true" aria-disabled="true" alt="">
- <xsl:attribute name="src"><xsl:value-of select="'{$skin_images}'"/>checkmark.gif</xsl:attribute>
- <out:attribute name="aria-label"><xts:string id="IDS_CONTENT_TASK_REPORT_UPGRADE_LOCATED_IN_COLUMN_ARIA"><xts:param name="objName"><out:value-of select="cm:defaultName"/></xts:param></xts:string></out:attribute>
- </img>
- <utml:input type="hidden" name="ctro_checkbox_upgradeClassesContext" utml:update="false">
- <utml:value>
- <out:value-of select="cm:searchPath"/>
- </utml:value>
- </utml:input>
- </out:otherwise>
- </out:choose>
- </cp:columnContent>
- <!-- report based on -->
- <cp:columnContent>
- <out:if test="cm:objectClass = 'package'">
- <utml:input type="checkbox" name="ctro_checkbox_upgradeClassesReferenceContext" utml:update="false">
- <utml:value>
- <out:value-of select="cm:searchPath"/>
- </utml:value>
- <out:if test="key('env-param','ctro_checkbox_upgradeClassesReferenceContext')=cm:searchPath">
- <out:attribute name="checked">checked</out:attribute>
- </out:if>
- <out:attribute name="aria-label"><xts:string id="IDS_CONTENT_TASK_REPORT_UPGRADE_BASED_ON_COLUMN_ARIA"><xts:param name="objName"><out:value-of select="cm:defaultName"/></xts:param></xts:string></out:attribute>
- </utml:input>
- </out:if>
- </cp:columnContent>
- </cp:tableContent>
- </cp:table>
- </xsl:template>
-
- <!--
- ================================================================
- gets the name two out of xpath of type /one/two
- ================================================================
- -->
- <xsl:template name="getXPathBasename">
- <xsl:param name="xpath" />
- <xsl:variable name="newXpath" select="substring-after($xpath,'/')"/>
- <xsl:choose>
- <xsl:when test="$newXpath = ''">
- <xsl:value-of select="$xpath"/>
- </xsl:when>
- <xsl:otherwise>
- <xsl:call-template name="getXPathBasename">
- <xsl:with-param name="xpath" select="$newXpath"/>
- </xsl:call-template>
- </xsl:otherwise>
- </xsl:choose>
- </xsl:template>
-
- <!--
- ================================================================
- Handles deleting and adding the report upgrade options
- the path to the content can be specified using the xpathToContent attribute
- IMPORTANT CURRENT LIMITATION: only the last element of the xpath can have a specified
- namespace.
- Example:
- /path1/path2/cm:path3 is supported
- /path1/ns2:path2/ns3:path3 is not
- The format /*[local-name()='path1']/*[local-name()='path2']/*[local-name()='path3'] is not supported either
- ================================================================
- -->
- <xsl:template match="adm:executeCommand">
- <xts:sequence>
- <xsl:variable name="xpathToContent">
- <xsl:choose>
- <xsl:when test="@xpathToContent"><xsl:value-of select="@xpathToContent"/></xsl:when>
- <xsl:otherwise>/root/contentTaskContext</xsl:otherwise>
- </xsl:choose>
- </xsl:variable>
- <xsl:variable name="basename">
- <xsl:call-template name="getXPathBasename">
- <xsl:with-param name="xpath" select="$xpathToContent"/>
- </xsl:call-template>
- </xsl:variable>
- <xsl:variable name="localbasename" >
- <xsl:choose>
- <xsl:when test="substring-before($basename,':')=''">
- <xsl:value-of select="$basename"/>
- </xsl:when>
- <xsl:otherwise>
- <xsl:value-of select="substring-after($basename,':')"/>
- </xsl:otherwise>
- </xsl:choose>
- </xsl:variable>
- <xsl:variable name="xpathToContentRoot"><xsl:value-of select="substring-before($xpathToContent,concat('/',$basename))"/></xsl:variable>
- <out:choose>
- <out:when test="key('env-param','listop')='delete' and key('env-param','checkbox_location')!=''">
- <!-- build the appropriate xpath for the delete operation. We can't delete them one at a time
- since the positions will get all screwed up -->
- <out:variable name="deletePath">
- <xsl:value-of select="concat($xpathToContentRoot,'/*[local-name()="',$localbasename,'"]')"/>/*[
- <out:for-each select="key('env-param','checkbox_location')">
- <out:if test="position() != '1'">
- <out:value-of select="' or '"/>
- </out:if>
- position()='<out:value-of select="."/>'
- </out:for-each>
- ]
- </out:variable>
- <xts:delete select="{'{$deletePath}'}"/>
- <xts:delete select="/root/env/param[starts-with(@name, 'checkbox_location')]"/>
- </out:when>
- <out:when test="/root/newEntries">
- <out:variable name="currentContentTaskContext" select="{$xpathToContent}/*"/>
- <!-- Generate a temp list which contains the final merged list and a set
- of params to be appended to the env -->
- <xts:append select="/root">
- <tempList>
- <xts:transform src="portal/addEntries/transforms/mergeAddedEntriesLists.xslt" processor="XSLT">
- <root>
- <oldEntries>
- <xts:queryNode select="{$xpathToContentRoot}/*[local-name()='{$localbasename}']/*"/>
- </oldEntries>
- <newEntries>
- <xts:transform src="transforms/portal/options/renameNamespaceObjects.xslt" processor="XSLT">
- <xts:param name="messageBase">/messages/portal.xml</xts:param>
- <root>
- <xts:queryNode select="/root/newEntries/*"/>
- </root>
- </xts:transform>
- </newEntries>
- <allowDuplicates>false</allowDuplicates>
- <trackNewEntries paramName="ctro_checkbox_upgradeClassesContext" property="searchPath"/>
- </root>
- </xts:transform>
- </tempList>
- </xts:append>
- <xts:delete select="{$xpathToContentRoot}/*[local-name()='{$localbasename}']"/>
-
- <!-- Sort the list -->
- <xts:append select="{$xpathToContentRoot}">
- <xsl:element name="{$basename}">
- <xts:transform src="portal/addEntries/transforms/sortAddedEntriesList.xslt" processor="XSLT">
- <root>
- <addedEntriesList>
- <!-- replace the namespace defaultName with 'My folders of <defaultName>'
- before the sort happens -->
- <xts:queryNode select="/root/tempList/*[local-name()!='param' or @name!='ctro_checkbox_upgradeClassesContext']"/>
- </addedEntriesList>
- <contentLocale><out:value-of select="$contentLocale"/></contentLocale>
- </root>
- </xts:transform>
- </xsl:element>
- </xts:append>
-
- <out:if test="/root/env/param[@name='contentTaskType']='reportUpgrade'">
- <!--
- This should not be here: the generation of env variable is not
- the responsability of this template
- append the defaults for any new entries that were added
- -->
- <xts:append select="/root/env">
- <xts:queryNode select="/root/tempList/*[local-name()='param' and @name='ctro_checkbox_upgradeClassesContext']"/>
- </xts:append>
- </out:if>
-
- <!-- this should be the count if there weren't any duplicates. Use this later on when
- deciding if we should show the duplicate error message to the user -->
- <xts:append select="/root">
- <totalEntriesCount><out:value-of select="count($currentContentTaskContext) + count(/root/newEntries/*)"/></totalEntriesCount>
- </xts:append>
- <!-- Remove any nodes that are no longer needed -->
- <xts:delete select="/root/newEntries | /root/tempList"/>
- </out:when>
- </out:choose>
- </xts:sequence>
- </xsl:template>
- <!--
- ================================================================
- Handles deleting and adding the report upgrade options
- ================================================================
- -->
- <xsl:template match="adm:executeIndexUpdateCommand">
- <xts:sequence>
- <out:choose>
- <out:when test="key('env-param','listop')='delete' and /root/env/param[starts-with(@name, 'checkbox_location')]">
- <!-- build the appropriate xpath for the delete operation. We can't delete them one at a time
- since the positions will get all screwed up -->
- <out:variable name="deletePath">
- <out:text>/root/indexUpdates/</out:text>
- <out:value-of select="key('env-param','include_or_exclude')"/>
- <out:text>/*[</out:text>
- <out:for-each select="/root/env/param[starts-with(@name, 'checkbox_location')]">
- <out:if test="position() != '1'">
- <out:value-of select="' or '"/>
- </out:if>
- position()='<out:value-of select="."/>'
- </out:for-each>
- ]
- </out:variable>
- <xts:delete select="{'{$deletePath}'}"/>
- <xts:delete select="/root/env/param[starts-with(@name, 'checkbox_location')]"/>
- </out:when>
- <out:when test="key('env-param','listop')='removeUnavailableObjects'">
- <!-- In this case we need to delete all objects that are not available -->
- <out:variable name="deletePath">/root/indexUpdates/<out:value-of select="key('env-param','include_or_exclude')"/>/*[local-name()='unavailable']</out:variable>
- <xts:delete select="{'{$deletePath}'}"/>
- <!-- we can delete all checkboxes as they are going to be generated again -->
- <xts:delete select="/root/env/param[starts-with(@name, 'checkbox_location')]"/>
- </out:when>
- <out:when test="/root/newEntries">
- <xts:sequence>
- <out:variable name="currentIndexUpdateItems" select="/root/indexUpdates/*[local-name()=key('env-param','include_or_exclude')]/*"/>
-
- <!-- Delete the existing entry. -->
- <out:variable name="deletePath">/root/indexUpdates/<out:value-of select="key('env-param','include_or_exclude')"/></out:variable>
- <xts:delete select="{'{$deletePath}'}"/>
- <!-- Generate a temp list which contains the final merged list and a set
- of params to be appended to the env -->
- <xts:append select="/root">
- <tempList>
- <xts:transform src="portal/addEntries/transforms/mergeAddedEntriesLists.xslt" processor="XSLT">
- <root>
- <oldEntries>
- <out:copy-of select="$currentIndexUpdateItems"/>
- </oldEntries>
- <newEntries>
- <xts:transform src="transforms/portal/options/renameNamespaceObjects.xslt" processor="XSLT">
- <xts:param name="messageBase">/messages/portal.xml</xts:param>
- <root>
- <xts:queryNode select="/root/newEntries/*"/>
- </root>
- </xts:transform>
- </newEntries>
- <allowDuplicates>false</allowDuplicates>
- </root>
- </xts:transform>
- </tempList>
- </xts:append>
-
- <!-- Sort the list -->
- <out:if test="not(/root/indexUpdates)">
- <xts:append select="/root">
- <out:element name="indexUpdates"/>
- </xts:append>
- </out:if>
-
- <xts:append select="/root/indexUpdates">
- <out:variable name="includeOrExclude" select="key('env-param','include_or_exclude')"/>
- <out:element name="{'{ '}$includeOrExclude{' }'}">
- <xts:transform src="portal/addEntries/transforms/sortAddedEntriesList.xslt" processor="XSLT">
- <root>
- <addedEntriesList>
- <!-- replace the namespace defaultName with 'My folders of <defaultName>'
- before the sort happens -->
- <xts:queryNode select="/root/tempList/*[local-name()!='param' or @name!='checkbox_location']"/>
- </addedEntriesList>
- <contentLocale><out:value-of select="$contentLocale"/></contentLocale>
- </root>
- </xts:transform>
- </out:element>
- </xts:append>
-
- <!-- append the defaults for any new entries that were added -->
- <xts:append select="/root/env">
- <xts:queryNode select="/root/tempList/*[local-name()='param' and @name='ctro_checkbox_indexUpdateClassesContext']"/>
- </xts:append>
-
- <!-- this should be the count if there weren't any duplicates. Use this later on when
- deciding if we should show the duplicate error message to the user -->
- <xts:append select="/root">
- <totalEntriesCount><out:value-of select="count($currentIndexUpdateItems) + count(/root/newEntries/*)"/></totalEntriesCount>
- </xts:append>
- <!-- Remove any nodes that are no longer needed -->
- <xts:delete select="/root/newEntries | /root/tempList"/>
- </xts:sequence>
- </out:when>
- </out:choose>
- </xts:sequence>
- </xsl:template>
- <!--
- ================================================================
- Content Maintenance UI for selecting consistency scan options
- ================================================================
- -->
- <xsl:template match="adm:options">
- <xsl:variable name="track" select="@adm:track"/>
- <lyt:layout style="1" border="no">
- <lyt:section>
- <dp:list>
- <dp:section>
- <dp:label id="lbl_check_type">
- <xts:string id="IDS_CONTENT_TASK_CONSISTENCY_CHECK"/>
- </dp:label>
- </dp:section>
- <dp:section>
- <dp:hint>
- <xts:string id="IDS_CONTENT_ADMIN_EXTERNAL_NAMESPACES"/>
- </dp:hint>
- </dp:section>
- </dp:list>
- <dp:section1>
- <utml:radio-group name="cto_consistency_check" utml:default-value="externalRef">
- <xsl:if test="$track='true'">
- <xsl:attribute name="utml:track">true</xsl:attribute>
- </xsl:if>
- <dp:choice id="lbl_check_type">
- <dp:section1>
- <utml:input type="radio" name="cto_consistency_check" id="lbl_check_internalRef" value="internalRef" onClick="disableNamespaceCheckBox()"/>
- </dp:section1>
- <dp:section2 for="lbl_check_internalRef">
- <xts:string id="IDS_CONTENT_TASK_CONSISTENCY_INTERNAL_REFERENCES"/>
- </dp:section2>
- <dp:section1>
- <utml:input type="radio" name="cto_consistency_check" id="lbl_check_externalRef" value="externalRef" onClick="enableNamespaceCheckBox()"/>
- </dp:section1>
- <dp:section2 for="lbl_check_externalRef">
- <xts:string id="IDS_CONTENT_TASK_CONSISTENCY_EXTERNAL_NAMESPACES"/>
- </dp:section2>
- <dp:section3>
- <utml:radio-group name="cto_externalnamespace" utml:default-value="all">
- <xsl:if test="$track='true'">
- <xsl:attribute name="utml:track">true</xsl:attribute>
- </xsl:if>
- <dp:choice id="lbl_check_externalRef">
- <dp:section1>
- <utml:input type="radio" name="cto_externalnamespace" id="lbl_externalnamespaces_all" value="all" onClick="disableDependentCheckBoxes()"/>
- </dp:section1>
- <dp:section2 for="lbl_externalnamespaces_all">
- <out:text/><xts:string id="IDS_CONTENT_ADMIN_ALL_NAMESPACES"/><out:text/>
- </dp:section2>
- <dp:section1>
- <utml:input type="radio" name="cto_externalnamespace" id="lbl_externalnamespaces_select" value="select" onClick="enableDependentCheckBoxes()"/>
- </dp:section1>
- <dp:section2 for="lbl_externalnamespaces_select">
- <out:text/><xts:string id="IDS_CONTENT_ADMIN_SELECTED_NAMESPACES"/><out:text/>
- </dp:section2>
- <dp:section3>
- <out:for-each select="/root/namespaces/*/*[local-name()='namespace' and @inContentStore != 'false']">
- <dp:group>
- <dp:groupItem>
- <out:variable name="variable-name">
- <xsl:text/>m_namespace_<xsl:text/><out:value-of select="cm:defaultName"/>
- </out:variable>
- <out:variable name="aNamespace">
- <out:choose>
- <out:when test="cm:active='false'">
- <out:text/>
- <xts:string id="IDS_CONTENT_ADMIN_INACTIVE_NAMESPACES">
- <xts:param name="namespaceDefaultName"><out:value-of select="cm:defaultName"/></xts:param>
- </xts:string>
- <out:text/>
- </out:when>
- <out:otherwise>
- <out:text/>
- <xts:string id="IDS_CONTENT_ADMIN_ACTIVE_NAMESPACES">
- <xts:param name="namespaceDefaultName"><out:value-of select="cm:defaultName"/></xts:param>
- </xts:string>
- <out:text/>
- </out:otherwise>
- </out:choose>
- </out:variable>
- <dp:choice>
- <dp:section1>
- <utml:input type="checkbox" id="lbl_namespace_{'{cm:defaultName}'}">
- <utml:name>
- <out:choose>
- <!-- If a namespace does not exist in content store anymore, it will be deleted after hitting OK in properties page. -->
- <!-- Waiting for UI team to decide if this is the expected behaviour -->
- <out:when test="@inContentStore='false'"><xsl:text/>m_deleted_namespace</out:when>
- <out:otherwise><out:value-of select="$variable-name"/></out:otherwise>
- </out:choose>
- </utml:name>
- <utml:value><out:value-of select="cm:searchPath"/></utml:value>
- <out:if test="@inContentStore='false'">
- <out:attribute name="disabled">true</out:attribute>
- </out:if>
- </utml:input>
- </dp:section1>
- <dp:section2 for="lbl_namespace_{'{cm:defaultName}'}">
- <!-- Show the active namespaces using the '(Active)' label-->
- <!-- Use '(Inactive)' label for inactive namespaces -->
- <out:value-of select="$aNamespace"/>
- </dp:section2>
- </dp:choice>
- </dp:groupItem>
- </dp:group>
- </out:for-each>
- </dp:section3>
- </dp:choice>
- </utml:radio-group>
- </dp:section3>
- </dp:choice>
- </utml:radio-group>
- </dp:section1>
- </lyt:section>
- </lyt:layout>
- </xsl:template>
-
-
- <!--
- =====================================================================
- Content Maintenance UI for selecting consistency scan options in the Properties page
- =====================================================================
- -->
- <xsl:template match="adm:propInternalCheckOptions">
- <xsl:variable name="track" select="@adm:track"/>
- <lyt:layout style="1" border="no">
- <lyt:section>
- <dp:list>
- <dp:section>
- <dp:label>
- <xts:string id="IDS_CONTENT_TASK_CONSISTENCY_CHECK"/>
- </dp:label>
- </dp:section>
- </dp:list>
- <dp:choice>
- <dp:section1>
- <img role="checkbox" aria-checked="true" aria-disabled="true" alt="" id="ctrl_internal_references_check">
- <out:attribute name="src"><out:value-of select="$image_root"/>checkmark.gif</out:attribute>
- </img>
- </dp:section1>
- <dp:section2 for="ctrl_internal_references_check">
- <xts:string id="IDS_CONTENT_TASK_CONSISTENCY_INTERNAL_REFERENCES"/>
- </dp:section2>
- </dp:choice>
- </lyt:section>
- </lyt:layout>
- </xsl:template>
-
-
- <!--
- =====================================================================
- Content Maintenance UI for selecting consistency scan options in the Properties page
- =====================================================================
- -->
- <xsl:template match="adm:propExternalCheckOptions">
- <xsl:variable name="track" select="@adm:track"/>
- <lyt:layout style="1" border="no">
- <lyt:section>
- <dp:list>
- <dp:section>
- <dp:label>
- <xts:string id="IDS_CONTENT_TASK_CONSISTENCY_CHECK"/>
- </dp:label>
- </dp:section>
- </dp:list>
- <dp:choice>
- <dp:section1>
- <img role="checkbox" aria-checked="true" aria-disabled="true" alt="" id="ctrl_external_namespaces_check">
- <out:attribute name="src"><out:value-of select="$image_root"/>checkmark.gif</out:attribute>
- </img>
- </dp:section1>
- <dp:section2 for="ctrl_external_namespaces_check">
- <xts:string id="IDS_CONTENT_TASK_CONSISTENCY_EXTERNAL_NAMESPACES"/>
- </dp:section2>
- <dp:section3>
- <utml:radio-group name="cto_externalnamespace" utml:default-value="all">
- <xsl:if test="$track='true'">
- <xsl:attribute name="utml:track">true</xsl:attribute>
- </xsl:if>
- <dp:choice>
- <dp:section1>
- <utml:input type="radio" name="cto_externalnamespace" id="ctrl_cto_externalnamespace_all" value="all" onClick="disableDependentCheckBoxes()"/>
- </dp:section1>
- <dp:section2 for="ctrl_cto_externalnamespace_all">
- <out:text/><xts:string id="IDS_CONTENT_ADMIN_ALL_NAMESPACES"/><out:text/>
- </dp:section2>
- <dp:section1>
- <utml:input type="radio" name="cto_externalnamespace" id="ctrl_cto_externalnamespace_select" value="select" onClick="enableDependentCheckBoxes()"/>
- </dp:section1>
- <dp:section2 for="ctrl_cto_externalnamespace_select">
- <out:text/><xts:string id="IDS_CONTENT_ADMIN_SELECTED_NAMESPACES"/><out:text/>
- </dp:section2>
- <dp:section3>
- <out:for-each select="/root/namespaces/*/*[local-name()='namespace' and @inContentStore != 'false']">
- <dp:group>
- <dp:groupItem>
- <out:variable name="variable-name">
- <xsl:text/>m_namespace_<xsl:text/><out:value-of select="cm:defaultName"/>
- </out:variable>
- <out:variable name="aNamespace">
- <out:choose>
- <out:when test="cm:active='false'">
- <out:text/>
- <xts:string id="IDS_CONTENT_ADMIN_INACTIVE_NAMESPACES">
- <xts:param name="namespaceDefaultName"><out:value-of select="cm:defaultName"/></xts:param>
- </xts:string>
- <out:text/>
- </out:when>
- <out:otherwise>
- <out:text/>
- <xts:string id="IDS_CONTENT_ADMIN_ACTIVE_NAMESPACES">
- <xts:param name="namespaceDefaultName"><out:value-of select="cm:defaultName"/></xts:param>
- </xts:string>
- <out:text/>
- </out:otherwise>
- </out:choose>
- </out:variable>
- <dp:section1>
- <utml:input type="checkbox" id="ctrl_{'{$variable-name}'}">
- <utml:name>
- <out:choose>
- <!-- If a namespace does not exist in content store anymore, it will be deleted after hitting OK in properties page. -->
- <!-- Waiting for UI team to decide if this is the expected behaviour -->
- <out:when test="@inContentStore='false'"><xsl:text/>m_deleted_namespace</out:when>
- <out:otherwise><out:value-of select="$variable-name"/></out:otherwise>
- </out:choose>
- </utml:name>
- <utml:value><out:value-of select="cm:searchPath"/></utml:value>
- <out:if test="@inContentStore='false'">
- <out:attribute name="disabled">true</out:attribute>
- </out:if>
- </utml:input>
- </dp:section1>
- <dp:section2>
- <!-- Show the active namespaces using the '(Active)' label-->
- <!-- Use '(Inactive)' label for inactive namespaces -->
- <label for="ctrl_{'{$variable-name}'}"><out:value-of select="$aNamespace"/></label>
- </dp:section2>
- </dp:groupItem>
- </dp:group>
- </out:for-each>
- </dp:section3>
- </dp:choice>
- </utml:radio-group>
- </dp:section3>
- </dp:choice>
- </lyt:section>
- </lyt:layout>
- </xsl:template>
-
-
- <!--
- ====================================================================================
- Displays a package and folder section with a table listing them
- It looks for data to display in /root/packageAndFolderSection in the input document (this path can be
- eventually specified as an attribute of the template).
- under the packageAndFolderSection node, 2 are expected:
- content: returned element from cm, IMPORTANT NOTE: it must belong to the cm namespace
- uiInfo: customized info for the GUI.
- Currently supported element in uiInfo:
- - hiddenInput: name of the hidden input storing the searchPath of the listed folders/packages
- - sectionTitle: title of the section
- ====================================================================================
- -->
- <xsl:template match="adm:packageAndFolderSection">
- <out:variable name="title">
- <out:choose>
- <out:when test="/root/packageAndFolderSection/uiInfo/sectionTitle"><out:value-of select="string(/root/packageAndFolderSection/uiInfo/sectionTitle)"/></out:when>
- <out:otherwise><xts:string id="IDS_PACKAGE_AND_FOLDER_SECTION_TITLE"/></out:otherwise>
- </out:choose>
-
- </out:variable>
- <lyt:layout style="1" border="yes" longTitle="{'$title'}">
- <lyt:section>
- <out:choose>
- <out:when test="$has_write_permission">
- <xsl:call-template name="readWritePackageAndFolderTable"/>
- </out:when>
- <out:otherwise>
- <xsl:call-template name="readOnlyPackageAndFolderTable"/>
- </out:otherwise>
- </out:choose>
- </lyt:section>
- </lyt:layout>
- </xsl:template>
-
- <xsl:template match="adm:contentUtilization">
- <xsl:param name="form-read-only"/>
- <xsl:param name="utml-form-name"/>
- <dp:script>
- <pf:help context="HID_DPLOY"/>
- <script language="javascript" src="{'{$webRoot}'}/dojo16/dojo/dojo.js"/>
- <dpl:tenantSelectionScript/>
- <script language="javascript">
- function validate() {
- return verifyTenantSelection();
- }
-
- </script>
- </dp:script>
- <!-- select tenants body -->
- <dpl:selectTenantUI/>
-
- <!-- report options body -->
- <lyt:layout style="1" border="yes" title="IDS_DEPLOYMENT_PACKAGES_OPTIONS">
- <lyt:section>
- <dp:list>
- <dp:section>
- <dp:choice noSpace="true">
- <dp:section1>
- <utml:input type="checkbox" id="id_selectPublicTenant" name="selectPublicTenant" utml:update="true" value="true"/>
- </dp:section1>
- <dp:section2 for="id_selectPublicTenant">
- <xts:string id="IDS_DEPLOYMENT_METHOD_INCLUDE_PUBLIC_TENANT"/>
- </dp:section2>
- </dp:choice>
- </dp:section>
- <dp:section>
- <dp:label for="ctrl_cto_filePerTenant"><xts:string id="IDS_CONTENT_UTILIZATION_FILE_LABEL"/></dp:label>
- </dp:section>
- <dp:section>
- <dp:group>
- <dp:groupItem>
- <utml:select name="cto_filePerTenant" id="ctrl_cto_filePerTenant">
- <utml:default-value>false</utml:default-value>
- <utml:option value="false"><xts:string id="IDS_CONTENT_UTILIZATION_FILE_ONE"/></utml:option>
- <utml:option value="true"><xts:string id="IDS_CONTENT_UTILIZATION_FILE_ONE_PER_TENANT"/></utml:option>
- </utml:select>
- </dp:groupItem>
- </dp:group>
- </dp:section>
- <dp:section>
- <dp:label for="ctrl_cto_granularity"><xts:string id="IDS_CONTENT_UTILIZATION_GRANULARITY_LABEL"/></dp:label>
- </dp:section>
- <dp:section>
- <dp:group>
- <dp:groupItem>
- <utml:select name="cto_granularity" id="ctrl_cto_granularity">
- <utml:default-value>classesPerTenant</utml:default-value>
- <utml:option value="classesPerTenant"><xts:string id="IDS_CONTENT_UTILIZATION_GRANULARITY_BY_OBJTYPE_AND_TENANT"/></utml:option>
- <utml:option value="perObject"><xts:string id="IDS_CONTENT_UTILIZATION_GRANULARITY_EVERY_OBJECT"/></utml:option>
- </utml:select>
- </dp:groupItem>
- </dp:group>
- </dp:section>
- </dp:list>
- </lyt:section>
- </lyt:layout>
- </xsl:template>
- <!--
- Generates the package and folder table when user has write access on the object
- -->
- <xsl:template name="readWritePackageAndFolderTable">
- <cp:table name="packageAndFolderTable" iterate="/root/packageAndFolderSection/cm:content/*" width="100%" align="center" showEmptyMsg="true">
- <cp:action>
- <utml:a utml:op="maintain">
- <utml:href>document.pform.controller_state.value = 'addEntries|navigate';</utml:href>
- <xsl:text/><xts:string id="IDS_PACKAGE_AND_FOLDER_ADD"/><xsl:text/>
- </utml:a>
- </cp:action>
- <cp:action>
- <script language="javascript">
- var selectionInfo = {checkboxName: "checkbox_location"};
- selectionInfo.noSelectionMsg = "<xts:string encode="javascript" id="IDS_PACKAGE_AND_FOLDER_REMOVE_WARNING"/>";
- </script>
- <utml:a utml:op="maintain">
- <xsl:attribute name="onclick">return com.ibm.cognos.ps.list.isEntrySelected(selectionInfo);</xsl:attribute>
- <utml:href>document.pform.listop.value = 'delete';</utml:href>
- <xsl:text/><xts:string id="IDS_PACKAGE_AND_FOLDER_REMOVE"/><xsl:text/>
- </utml:a>
- </cp:action>
- <cp:tableHeader>
- <!-- checkbox -->
- <cp:columnHeader width="16" toggleName="checkbox_location" utml="utml" noLabel="true"/>
- <!-- icon -->
- <cp:columnHeader width="16"/>
- <!-- name -->
- <cp:columnHeader width="100%">
- <!-- All of this is to align the header (...> Name) with the contents of the table-->
- <img height="5" width="1" border="0"><out:attribute name="src"><out:value-of select="$webcontent"/>/images/space.gif</out:attribute></img>
- <out:text/><xts:string id="IDS_PATH_INDICATOR"/><out:text> </out:text>
- <img height="5" width="1" border="0"><out:attribute name="src"><out:value-of select="$webcontent"/>/images/space.gif</out:attribute></img>
- <xts:string id="IDS_PACKAGE_AND_FOLDER_SECTION_NAME_COLUMN"/>
- </cp:columnHeader>
- </cp:tableHeader>
- <cp:tableContent>
- <!-- checkbox -->
- <cp:columnContent valign="top">
- <utml:input type="checkbox" name="checkbox_location">
- <out:attribute name="aria-label"><xts:string id="IDS_SELECTION_FOR_PAGER_ITEM" encode="html"><xts:param name="pagerItemName"><out:value-of select="*[local-name()='defaultName']"/></xts:param></xts:string></out:attribute>
- <utml:value><out:value-of select="position()"/></utml:value>
- </utml:input>
- </cp:columnContent>
- <!-- icon -->
- <cp:columnContent valign="top">
- <out:call-template name="gen-icon">
- <out:with-param name="showAction" select="false()"/>
- </out:call-template>
- </cp:columnContent>
- <!-- name -->
- <cp:columnContent valign="top">
- <img width="20" height="16" align="absmiddle" src="{'{$skin_images}'}path.gif">
- <out:attribute name="alt">
- <cf:do-the-path-link>
- <cf:param name="familytree">cm:ancestors</cf:param>
- <cf:param name="familymember">cm:defaultName</cf:param>
- <cf:param name="onlyAncestors">true</cf:param>
- </cf:do-the-path-link>
- </out:attribute>
- </img>
- <xsl:text> </xsl:text>
- <out:value-of select="*[local-name()='defaultName']"/>
- <out:if test="/root/packageAndFolderSection/uiInfo/hiddenInput" >
- <out:variable name="hiddenInputName"><out:value-of select='/root/packageAndFolderSection/uiInfo/hiddenInput'/></out:variable>
- <out:variable name="hiddenInputValue"><out:value-of select="*[local-name()='searchPath']"/></out:variable>
- <utml:input type="hidden">
- <out:attribute name="name"><out:value-of select="{'$hiddenInputName'}"/></out:attribute>
- <out:attribute name="value"><out:value-of select="{'$hiddenInputValue'}"/></out:attribute>
- </utml:input>
- </out:if>
- </cp:columnContent>
- </cp:tableContent>
- </cp:table>
- </xsl:template>
-
- <!--
- Generates the package and folder table when user has read-only access on the object
- -->
- <xsl:template name="readOnlyPackageAndFolderTable">
- <cp:table name="packageAndFolderTable" iterate="/root/packageAndFolderSection/cm:content/*" width="100%" align="center" showEmptyMsg="true">
- <cp:tableHeader>
- <!-- icon -->
- <cp:columnHeader width="16"/>
- <!-- name -->
- <cp:columnHeader width="100%">
- <!-- All of this is to align the header (...> Name) with the contents of the table-->
- <img height="5" width="1" border="0"><out:attribute name="src"><out:value-of select="$webcontent"/>/images/space.gif</out:attribute></img>
- <out:text/><xts:string id="IDS_PATH_INDICATOR"/><out:text> </out:text>
- <img height="5" width="1" border="0"><out:attribute name="src"><out:value-of select="$webcontent"/>/images/space.gif</out:attribute></img>
- <xts:string id="IDS_PACKAGE_AND_FOLDER_SECTION_NAME_COLUMN"/>
- </cp:columnHeader>
- </cp:tableHeader>
- <cp:tableContent>
- <!-- icon -->
- <cp:columnContent valign="top">
- <out:call-template name="gen-icon">
- <out:with-param name="showAction" select="false()"/>
- </out:call-template>
- </cp:columnContent>
- <!-- name -->
- <cp:columnContent valign="top">
- <img width="20" height="16" align="absmiddle" src="{'{$skin_images}'}path.gif">
- <out:attribute name="alt">
- <cf:do-the-path-link>
- <cf:param name="familytree">cm:ancestors</cf:param>
- <cf:param name="familymember">cm:defaultName</cf:param>
- <cf:param name="onlyAncestors">true</cf:param>
- </cf:do-the-path-link>
- </out:attribute>
- </img>
- <xsl:text> </xsl:text>
- <out:value-of select="*[local-name()='defaultName']"/>
- </cp:columnContent>
- </cp:tableContent>
- </cp:table>
- </xsl:template>
-
- <!--
- ====================================================================================
- Content Maintenance UI for selecting Recording Level option.
- ====================================================================================
- -->
- <xsl:template match="adm:propRecordingLevel">
- <out:variable name="auditLevel">
- <out:choose>
- <out:when test="key('env-param','cto_auditLevel')">
- <out:value-of select="key('env-param','cto_auditLevel')"/>
- </out:when>
- <out:when test="{@optionsPath}/*[local-name()='value']/*[local-name()='item' and ./*[local-name()='name']='cleanupContentAuditLevel']/*[local-name()='value']!=''">
- <out:value-of select="string({@optionsPath}/*[local-name()='value']/*[local-name()='item' and ./*[local-name()='name']='cleanupContentAuditLevel']/*[local-name()='value'])"/>
- </out:when>
- <out:otherwise>
- <out:value-of select="'minimal'"/>
- </out:otherwise>
- </out:choose>
- </out:variable>
- <lyt:layout style="1" title="IDS_CONTENT_TASK_RECORDING_LEVEL_TITLE" border="yes">
- <lyt:section>
- <dp:list title="IDS_CONTENT_TASK_RECORDING_LEVEL_DROPDOWN_LABEL" for="lbl_cto_auditLevel">
- <out:choose>
- <out:when test="$has_write_permission">
- <dp:section>
- <dp:hint>
- <xts:string id="IDS_CONTENT_TASK_RECORDING_LEVEL_DESCRIPTION"/>
- </dp:hint>
- </dp:section>
- <dp:section>
- <select name="cto_auditLevel" size="1" id="lbl_cto_auditLevel">
- <option value="minimal">
- <out:if test="$auditLevel != 'basic' and $auditLevel !='full'">
- <out:attribute name="selected">selected</out:attribute>
- </out:if>
- <xts:string id="IDS_AUDIT_LEVEL_MINIMAL"/>
- </option>
- <option value="basic">
- <out:if test="$auditLevel = 'basic'">
- <out:attribute name="selected">selected</out:attribute>
- </out:if>
- <xts:string id="IDS_AUDIT_LEVEL_BASIC"/>
- </option>
- <option value="full">
- <out:if test="$auditLevel = 'full'">
- <out:attribute name="selected">selected</out:attribute>
- </out:if>
- <xts:string id="IDS_AUDIT_LEVEL_TRACE"/>
- </option>
- </select>
- </dp:section>
- </out:when>
- <out:otherwise>
- <dp:section>
- <out:choose>
- <out:when test="$auditLevel != 'basic' and $auditLevel !='full'">
- <xts:string id="IDS_AUDIT_LEVEL_MINIMAL"/>
- </out:when>
- <out:when test="$auditLevel = 'basic'">
- <xts:string id="IDS_AUDIT_LEVEL_BASIC"/>
- </out:when>
- <out:when test="$auditLevel = 'full'">
- <xts:string id="IDS_AUDIT_LEVEL_TRACE"/>
- </out:when>
- </out:choose>
- </dp:section>
- </out:otherwise>
- </out:choose>
- </dp:list>
- </lyt:section>
- </lyt:layout>
- </xsl:template>
-
- <!--
- ==========================================
- Checkbox for an option
- ==========================================
- -->
- <xsl:template match="adm:historyOptionsSummary">
- <lyt:layout style="1" border="yes" title="IDS_VRH_DETAILS_CONTENT_MAINTENANCE_TASK">
- <lyt:section>
- <dp:list>
- <dp:section>
- <dp:label>
- <xts:string id="IDS_VRH_DETAILS_OPTIONS"/>
- </dp:label>
- </dp:section>
- <dp:section>
- <xsl:call-template name="contentTaskOptionSummary">
- <xsl:with-param name="optionsPath" select="@optionsPath"/>
- </xsl:call-template>
- </dp:section>
- <out:if test="key('env-param','contentTaskType')='consistency'">
- <dp:section>
- <dp:text>
- <out:choose>
- <out:when test="($the-object/*[local-name()='options']/*[local-name()='value']/*[local-name()='item' and ./*[local-name()='name']='repairSecurityReferences']/*[local-name()='value'] = 'true') or ($the-object/*[local-name()='options']/*[local-name()='value']/*[local-name()='item' and ./*[local-name()='name']='repairInternalInconsistencies']/*[local-name()='value'] = 'true')"><out:text/><xts:string id="IDS_CONTENT_ADMIN_OPTIONS_FIX"/><out:text/></out:when>
- <out:when test="($the-object/*[local-name()='options']/*[local-name()='value']/*[local-name()='item' and ./*[local-name()='name']='repairSecurityReferences']/*[local-name()='value'] = 'false') or ($the-object/*[local-name()='options']/*[local-name()='value']/*[local-name()='item' and ./*[local-name()='name']='repairInternalInconsistencies']/*[local-name()='value'] = 'false')"><out:text/><xts:string id="IDS_CONTENT_ADMIN_OPTIONS_FIND"/><out:text/></out:when>
- </out:choose>
- </dp:text>
- </dp:section>
- </out:if>
- </dp:list>
- </lyt:section>
- </lyt:layout>
- </xsl:template>
-
- <!--
- ==========================================
- Checkbox for an option
- ==========================================
- -->
- <xsl:template match="adm:runOptions">
- <xsl:variable name="track" select="@adm:track"/>
- <out:variable name="isConsistencyCheck" select="key('env-param','contentTaskType') = 'consistency'"/>
-
- <xsl:if test="not(@showSummary) or @showSummary != 'false'">
- <lyt:layout style="1" border="no">
- <lyt:section>
- <dp:list>
- <xsl:call-template name="contentTaskOptionSummary">
- <xsl:with-param name="optionsPath" select="@optionsPath"/>
- </xsl:call-template>
- </dp:list>
- </lyt:section>
- </lyt:layout>
- </xsl:if>
-
- <out:if test="$isConsistencyCheck">
- <lyt:layout style="1" border="no">
- <lyt:section>
- <xsl:call-template name="adm:runOptionsRadioButtons"/>
- </lyt:section>
- </lyt:layout>
- </out:if>
- </xsl:template>
- <!--
- =================================================================
- Builds the summary of the options stored on the content task
- =================================================================
- -->
- <xsl:template name="contentTaskOptionSummary">
- <xsl:param name="optionsPath"/>
-
- <out:choose>
- <!-- consistency task option summary -->
- <out:when test="key('env-param', 'contentTaskType') = 'consistency'">
- <dp:section>
- <dp:label>
- <xts:string id="IDS_CONTENT_TASK_CONSISTENCY_CHECK"/>
- </dp:label>
- </dp:section>
- <dp:section>
- <out:choose>
- <out:when test="key('env-param','cto_consistency_check') = 'internalRef'">
- <dp:text><xts:string id="IDS_CONTENT_TASK_CONSISTENCY_INTERNAL_REFERENCES"/>
- </dp:text>
- </out:when>
- <out:otherwise>
- <dp:text><xts:string id="IDS_CONTENT_TASK_CONSISTENCY_EXTERNAL_NAMESPACES"/>
- <xsl:text/><out:value-of select="' '"/><xsl:text/>
- <out:choose>
- <out:when test="/root/env/param[starts-with(@name,'m_namespace') or /root/env/param[@name = 'deletedNamespace']]">
- <out:for-each select="/root/env/param[starts-with(@name,'m_namespace')]">
- <out:text/><out:value-of select="substring-after(string(./@name),'m_namespace_')"/><out:text/>
- <out:if test="position() != last() or /root/env/param[@name = 'deletedNamespace']"><xsl:text/>,<xsl:text/><out:value-of select="' '"/></out:if>
- </out:for-each>
- <out:for-each select="/root/env/param[@name = 'deletedNamespace']">
- <out:text/><out:value-of select="."/><out:text/>
- <out:if test="position() != last()"><xsl:text/><xts:string id="IDS_LIST_SEPARATOR"/><xsl:text/><out:value-of select="' '"/></out:if>
- </out:for-each><xsl:text/>
- </out:when>
- <out:otherwise>
- <xts:string id="IDS_CONTENT_ADMIN_ALL_NAMESPACES"/>
- </out:otherwise>
- </out:choose>
- </dp:text>
- </out:otherwise>
- </out:choose>
- </dp:section>
- </out:when>
- <!-- reportUpgrade task option summary -->
- <out:when test="key('env-param', 'contentTaskType') = 'reportUpgrade'">
- <dp:section>
- <dp:label>
- <xts:string id="IDS_CONTENT_TASK_REPORT_UPGRADE_TABLE_TITLE"/>
- </dp:label>
- </dp:section>
- <dp:section>
- <div>
- <out:if test="{$optionsPath}/*[local-name()='value']/*[local-name()='item' and ./*[local-name()='name']='upgradeClassesReferenceContext']/*[local-name()='value'] != ''">
- <xts:string id="IDS_CONTENT_TASK_REPORT_UPGRADE_BASE_ON_SUMMARY">
- <xts:param name="baseOnOptions">
- <out:for-each select="{$optionsPath}/*[local-name()='value']/*[local-name()='item' and ./*[local-name()='name']='upgradeClassesReferenceContext']/*[local-name()='value']/*">
- <out:if test="position()!='1'"><xsl:value-of select="', '"/></out:if>
- <out:variable name="searchPath" select="."/>
- <span lang="{'{$contentLocale}'}"><out:value-of select="/root/contentTaskContext/cm:queryResponse/cm:queryReply/*[./*[local-name()='searchPath']=$searchPath]/*[local-name()='defaultName']"/></span>
- </out:for-each>
- <xsl:text/>.<xsl:text/>
- </xts:param>
- </xts:string>
- <br/>
- </out:if>
- <out:if test="{$optionsPath}/*[local-name()='value']/*[local-name()='item' and ./*[local-name()='name']='upgradeClassesContext']/*[local-name()='value'] != ''">
- <!-- we have to create this variable since we can't have a xts:param inside an xts:param -->
- <out:variable name="upgradeClassesContextSummary">
- <out:for-each select="{$optionsPath}/*[local-name()='value']/*[local-name()='item' and ./*[local-name()='name']='upgradeClassesContext']/*[local-name()='value']/*">
- <out:if test="position()!='1'"><xsl:value-of select="', '"/></out:if>
- <out:variable name="searchPath" select="."/>
- <out:variable name="obj" select="/root/contentTaskContext/cm:queryResponse/cm:queryReply/*[./*[local-name()='searchPath']=$searchPath]"/>
- <out:choose>
- <out:when test="$obj/cm:objectClass = 'namespace'">
- <xts:string id="IDS_ADDENTRIES_PACKAGES_LOCATIONS_NAMESPACE_PREFIX"><xts:param name="namespaceName"><span lang="{'{$contentLocale}'}"><out:value-of select="$obj/cm:defaultName"/></span></xts:param></xts:string>
- </out:when>
- <out:otherwise>
- <span lang="{'{$contentLocale}'}"><out:value-of select="$obj/cm:defaultName"/></span>
- </out:otherwise>
- </out:choose>
- </out:for-each>
- <xsl:text/>.<xsl:text/>
- </out:variable>
- <xts:string id="IDS_CONTENT_TASK_REPORT_UPGRADE_LOCATED_IN_SUMMARY">
- <xts:param name="locatedInOptions"><out:copy-of select="$upgradeClassesContextSummary"/></xts:param>
- </xts:string>
- </out:if>
- </div>
- </dp:section>
- </out:when>
- <out:when test="key('env-param', 'contentTaskType') = 'retentionRuleUpdate' or key('env-param', 'contentTaskType') = 'contentRemoval'">
- <out:variable name="contextValues" select="{$optionsPath}/*[local-name()='value']/*[local-name()='item' and ./*[local-name()='name']='cleanupContentContext']/*[local-name()='value']/*"/>
- <out:if test="count($contextValues) > 0">
- <!-- Summary for cleanupContentContext -->
- <out:variable name="contextObjects" select="/root/contentTaskContext/*[local-name()='queryResponse']/*[local-name()='queryReply']/*"/>
- <dp:section>
- <dp:label><xts:string id="IDS_CONTENT_TASK_INCLUDED_CONTENT_SETTINGS"/></dp:label>
- </dp:section>
- <dp:section>
- <div>
- <!-- we have to create this variable since we can't have a xts:param inside an xts:param -->
- <out:variable name="contentContextSummary">
- <out:for-each select="$contextValues">
- <out:if test="position()!='1'"><xsl:value-of select="', '"/></out:if>
- <out:variable name="searchPath" select="."/>
- <out:variable name="obj" select="/root/contentTaskContext/cm:queryResponse/cm:queryReply/*[./*[local-name()='searchPath']=$searchPath]"/>
- <out:choose>
- <out:when test="$obj/cm:objectClass = 'namespace'">
- <xts:string id="IDS_ADDENTRIES_PACKAGES_LOCATIONS_NAMESPACE_PREFIX"><xts:param name="namespaceName"><span lang="{'{$contentLocale}'}"><out:value-of select="$obj/cm:defaultName"/></span></xts:param></xts:string>
- </out:when>
- <out:when test="$obj/cm:defaultName != ''">
- <span lang="{'{$contentLocale}'}"><out:value-of select="$obj/cm:defaultName"/></span>
- </out:when>
- <out:otherwise>
- <xts:string id="IDS_CONTENT_TASK_SUMMARY_UNAVAILABLE"/>
- </out:otherwise>
- </out:choose>
- </out:for-each>
- </out:variable>
- <xts:string id="IDS_CONTENT_TASK_INCLUDED_CONTENT_SUMMARY">
- <xts:param name="locatedInOptions"><out:copy-of select="$contentContextSummary"/></xts:param>
- </xts:string>
- </div>
- </dp:section>
- <dp:section>
- <br/>
- </dp:section>
- </out:if>
-
- <!-- Summary for cleanupContentRetentionRules -->
- <out:variable name="retentionSettings" select="{$optionsPath}/*[local-name()='value']/*[substring-after(@*[local-name()='type'],':')='contentTaskOptionRetentionRuleArray' and ./*[local-name()='name']='cleanupContentRetentionRules']/*[local-name()='value']/*[substring-after(@*[local-name()='type'],':')='retentionRule']"/>
- <out:if test="count($retentionSettings)>0">
- <dp:section>
- <dp:label><xts:string id="IDS_CONTENT_TASK_RETENTION_SETTINGS"/></dp:label>
- </dp:section>
- <dp:section>
- <out:for-each select="$retentionSettings">
- <out:variable name="retentionValue">
- <out:choose>
- <out:when test="*[local-name()='maxDuration']!=''">
- <out:choose>
- <out:when test="substring(*[local-name()='maxDuration'],string-length(*[local-name()='maxDuration']))='M'">
- <xts:string id="IDS_PROP_DURATION_MONTHS_SENTENCE_FORM">
- <xts:param name="maxMonths"><out:value-of select="substring-after(substring-before(*[local-name()='maxDuration'],'M'),'P')"/></xts:param>
- </xts:string>
- </out:when>
- <out:when test="substring(*[local-name()='maxDuration'],string-length(*[local-name()='maxDuration']))='D'">
- <xts:string id="IDS_PROP_DURATION_DAYS_SENTENCE_FORM">
- <xts:param name="maxDays"><out:value-of select="substring-after(substring-before(*[local-name()='maxDuration'],'D'),'P')"/></xts:param>
- </xts:string>
- </out:when>
- </out:choose>
- </out:when>
- <out:when test="*[local-name()='maxObjects']!=''">
- <xts:string id="IDS_PROP_NUMBER_VERSIONS_SENTENCE_FORM">
- <xts:param name="maxObjects"><out:value-of select="*[local-name()='maxObjects']"/></xts:param>
- </xts:string>
- </out:when>
- </out:choose>
- </out:variable>
- <div>
- <out:choose>
- <out:when test="*[local-name()='objectClass']='reportVersion'">
- <xts:string id="IDS_PROP_RETENTION_GENERIC_OUTPUTS_SUMMARY"><xts:param name="retentionValue"><out:value-of select="$retentionValue"/></xts:param></xts:string>
- </out:when>
- <out:when test="*[local-name()='objectClass']='history'">
- <xts:string id="IDS_PROP_RETENTION_EXECUTION_SUMMARY"><xts:param name="retentionValue"><out:value-of select="$retentionValue"/></xts:param></xts:string>
- </out:when>
- </out:choose>
- </div>
- </out:for-each>
- </dp:section>
- <dp:section>
- <br/>
- </dp:section>
- </out:if>
- <!-- Summary for cleanupContentAuditLevel -->
- <out:variable name="recordingLevel" select="string({$optionsPath}/*[local-name()='value']/*[local-name()='item' and ./*[local-name()='name']='cleanupContentAuditLevel']/*[local-name()='value'])"/>
- <out:if test="$recordingLevel != ''">
- <dp:section>
- <dp:label><xts:string id="IDS_CONTENT_TASK_RECORDING_LEVEL_SUMMARY_TITLE"/></dp:label>
- </dp:section>
- <dp:section>
- <div>
- <out:variable name="recordingLevelText">
- <out:choose>
- <out:when test=" $recordingLevel = 'basic'"><out:text/><xts:string id="IDS_AUDIT_LEVEL_BASIC"/><out:text/></out:when>
- <out:when test=" $recordingLevel = 'full'"><out:text/><xts:string id="IDS_AUDIT_LEVEL_FULL"/><out:text/></out:when>
- <out:when test=" $recordingLevel = 'minimal'"><out:text/><xts:string id="IDS_AUDIT_LEVEL_MINIMAL"/><out:text/></out:when>
- <out:when test=" $recordingLevel = 'request'"><out:text/><xts:string id="IDS_AUDIT_LEVEL_REQUEST"/><out:text/></out:when>
- <out:when test=" $recordingLevel = 'trace'"><out:text/><xts:string id="IDS_AUDIT_LEVEL_TRACE"/><out:text/></out:when>
- </out:choose>
- </out:variable>
- <xts:string id="IDS_CONTENT_TASK_RECORDING_LEVEL_SUMMARY">
- <xts:param name="recordingLevel"><out:copy-of select="$recordingLevelText"/></xts:param>
- </xts:string>
- </div>
- </dp:section>
- </out:if>
- </out:when>
- <out:when test="key('env-param', 'contentTaskType') = 'createContentUtilizationInfo'">
- <out:variable name="cmTenantObjects" select="/root//cm:queryResponse//*/cm:tenant"/>
- <out:variable name="taskTenantFilter" select="{$optionsPath}/*[local-name()='value']/*[local-name()='item']/*[local-name()='value']/*[local-name()='tenantFilter']"/>
- <out:variable name="taskCmTenantObjs" select="$cmTenantObjects[cm:tenantID=$taskTenantFilter/*]"/>
- <out:variable name="tenantIdsWithNoName" select="$taskTenantFilter/*[not(.=$taskCmTenantObjs/cm:tenantID)]"/>
- <out:variable name="tenantNames" select="set:distinct($taskCmTenantObjs/cm:defaultName | $tenantIdsWithNoName | /root/env/param[@name='selectedTenantNames'])"/>
- <out:variable name="includePublic" select="boolean($tenantNames[not(text())]) or key('env-param','selectPublicTenant')"/>
- <out:variable name="fileType" select="{$optionsPath}/*[local-name()='value']/*[local-name()='item']/*[local-name()='value']/*[local-name()='filePerTenant'] | key('env-param','cto_filePerTenant')"/>
- <out:variable name="granularity" select="{$optionsPath}/*[local-name()='value']/*[local-name()='item']/*[local-name()='value']/*[local-name()='granularity'] | key('env-param','cto_granularity')"/>
- <out:variable name="sortedTenantNames">
- <out:for-each select="$tenantNames">
- <out:sort select="text()"/>
- <name><out:value-of select="."/></name>
- </out:for-each>
- </out:variable>
- <dp:list>
- <dp:section>
- <dp:label>
- <xts:string id="IDS_CONTENT_UTILIZATION_TENANT_LABEL"/>
- </dp:label>
- </dp:section>
- <dp:section>
- <div style="max-height:200px;width:200px;float:left;overflow:auto">
- <cp:table name="contentUtilization" iterate="$sortedTenantNames/name" width="100%" align="left" showEmptyMsg="true">
- <cp:tableContent>
- <cp:columnContent>
- <out:value-of select="text()"/>
- </cp:columnContent>
- </cp:tableContent>
- </cp:table>
- </div>
- </dp:section>
- <dp:section>
- <dp:text>
- <out:choose>
- <out:when test="$includePublic='true'">
- <xts:string id="IDS_DEPLOYMENT_METHOD_INCLUDE_PUBLIC_TENANT"/>
- </out:when>
- <out:otherwise>
- <xts:string id="IDS_DEPLOYMENT_METHOD_DO_NOT_INCLUDE_PUBLIC_TENANT"/>
- </out:otherwise>
- </out:choose>
- </dp:text>
- </dp:section>
- <dp:section>
- <dp:label>
- <xts:string id="IDS_CONTENT_UTILIZATION_FILE_LABEL"/>
- </dp:label>
- </dp:section>
- <dp:section>
- <out:choose>
- <out:when test="$fileType = 'true'">
- <dp:text>
- <xts:string id="IDS_CONTENT_UTILIZATION_FILE_ONE_PER_TENANT"/>
- </dp:text>
- </out:when>
- <out:otherwise>
- <dp:text>
- <xts:string id="IDS_CONTENT_UTILIZATION_FILE_ONE"/>
- </dp:text>
- </out:otherwise>
- </out:choose>
- </dp:section>
- <dp:section>
- <dp:label>
- <xts:string id="IDS_CONTENT_UTILIZATION_GRANULARITY_LABEL"/>
- </dp:label>
- </dp:section>
- <dp:section>
- <out:choose>
- <out:when test="$granularity = 'perObject'">
- <dp:text>
- <xts:string id="IDS_CONTENT_UTILIZATION_GRANULARITY_EVERY_OBJECT"/>
- </dp:text>
- </out:when>
- <out:otherwise>
- <dp:text>
- <xts:string id="IDS_CONTENT_UTILIZATION_GRANULARITY_BY_OBJTYPE_AND_TENANT"/>
- </dp:text>
- </out:otherwise>
- </out:choose>
- </dp:section>
- </dp:list>
- </out:when>
- </out:choose>
- </xsl:template>
-
-
- <!--
- ====================================================================================
- UI for Retention Settings
- ====================================================================================
- -->
- <xsl:template match="adm:retentionSettings">
- <out:variable name="dt_class"><xsl:value-of select="@class"/></out:variable>
- <out:variable name="dt_edit"><xsl:value-of select="@edit"/></out:variable>
- <xsl:variable name="dt_rg_name" select="concat('cto_rg_retention_', @class)"/>
- <xsl:variable name="dt_cb_name" select="concat('cto_retentionRule_', @class)"/>
- <out:variable name="dt_cb_name" select="concat('cto_retentionRule_', @class)"/>
- <xsl:variable name="dt_revisit_name" select="concat('cto_revisit_', @class)"/>
- <out:variable name="dt_revisit_name" select="concat('cto_revisit_', @class)"/>
- <out:variable name="retentionRules" select="/root/cm:queryResponse/*[position()=1]/*[local-name()='options']/*[local-name()='value']/*[local-name()='item' and ./*[local-name()='name']='cleanupContentRetentionRules']/*[local-name()='value']/*[local-name()='item']"/>
- <out:variable name="permissions" select="/root/cm:queryResponse/*[position()=1]/*[local-name()='permissions']"/>
- <out:variable name="dt_maxObjects">
- <out:if test="$retentionRules">
- <out:for-each select="$retentionRules">
- <out:if test="*[local-name()='objectClass']=$dt_class">
- <out:value-of select="*[local-name()='maxObjects']"/>
- </out:if>
- </out:for-each>
- </out:if>
- </out:variable>
-
- <out:variable name="dt_maxDuration">
- <out:if test="$retentionRules">
- <out:for-each select="$retentionRules">
- <out:if test="*[local-name()='objectClass']=$dt_class">
- <out:value-of select="*[local-name()='maxDuration']"/>
- </out:if>
- </out:for-each>
- </out:if>
- </out:variable>
-
- <out:variable name="dt_option_exist" select="$dt_maxObjects!='' or $dt_maxDuration!=''"/>
- <out:variable name="dt_disabled" select="(not($dt_option_exist) and $dt_edit='true' and not(key('env-param', '{$dt_cb_name}'))) or (not(key('env-param', '{$dt_cb_name}')) and key('env-param', '{$dt_revisit_name}')='true')"/>
-
- <!-- maxDuration has form of P#M for months of P#D for days -->
- <out:variable name="days">
- <out:if test="not(key('env-param', '{$dt_rg_name}'))">
- <out:value-of select="substring-before(substring-after($dt_maxDuration,'P'),'D')"/>
- </out:if>
- </out:variable>
- <out:variable name="months">
- <out:if test="not(key('env-param', '{$dt_rg_name}'))">
- <out:value-of select="substring-before(substring-after($dt_maxDuration,'P'),'M')"/>
- </out:if>
- </out:variable>
- <out:variable name="occurrence_selected" select="(($dt_maxObjects > 0 and not(key('env-param', '{$dt_rg_name}'))) or (key('env-param', '{$dt_rg_name}')='maxNumber')) or ($days='' and $months='' and not(key('env-param','{concat('cto_durationSelect_', @class)}')))"/>
- <out:variable name="daysDisplay"><xts:string id="IDS_PROP_DAYS"/></out:variable>
- <out:variable name="monthsDisplay"><xts:string id="IDS_PROP_MONTHS"/></out:variable>
-
- <!-- A11y support need labels mapping with ids but keeping the ids unique -->
- <xsl:variable name="dur">dur<xsl:value-of select="@class"/></xsl:variable>
- <xsl:variable name="sel">sel<xsl:value-of select="@class"/></xsl:variable>
- <xsl:variable name="optD">optD<xsl:value-of select="@class"/></xsl:variable>
- <xsl:variable name="optM">optM<xsl:value-of select="@class"/></xsl:variable>
- <dp:list>
- <dp:section valign="top">
- <div>
- <xsl:if test="@class='documentVersion'">
- <xsl:attribute name="style">visibility:hidden;position:absolute;left:-1000px;top:-1000px;</xsl:attribute>
- </xsl:if>
- <dp:choice>
- <dp:section1>
- <out:if test="not($dt_edit) or contains($permissions, 'write')">
- <utml:input type="hidden" name="{$dt_revisit_name}" value="true"/>
- <utml:input type="checkbox" name="{$dt_cb_name}" value="true" id="{$dt_cb_name}" utml:update="true" aria-labelledby="lbl_{$dt_cb_name}">
- <out:attribute name="onclick">(new com.ibm.cognos.ps.retentionRule(document.pform, '<xsl:value-of select="@class"/>')).toggleContent(this);</out:attribute>
- <out:if test="not($dt_disabled)">
- <out:attribute name="checked">checked</out:attribute>
- </out:if>
- <utml:default-value>true</utml:default-value>
- </utml:input>
- </out:if>
- </dp:section1>
- <dp:section2>
- <out:attribute name="class">formLabel</out:attribute>
- <dp:label id="lbl_{$dt_cb_name}"><xts:string id="{@title}"/></dp:label>
- </dp:section2>
- </dp:choice>
- <xsl:choose>
- <xsl:when test="@ui='retention'">
- <div style="padding-left:2em" id="{concat('retentionContent_', @class)}" role="group">
- <xsl:if test="@title != ''">
- <out:attribute name="aria-label"><xts:string id="{@title}"/></out:attribute>
- </xsl:if>
- <dp:choice aria-labelledby="lbl_{$dt_cb_name}">
- <out:choose>
- <out:when test="not($dt_edit) or contains($permissions, 'write')">
- <utml:radio-group name="{$dt_rg_name}">
- <utml:default-value>
- <out:choose>
- <out:when test="$occurrence_selected">maxNumber</out:when>
- <out:otherwise>duration</out:otherwise>
- </out:choose>
- </utml:default-value>
- <dp:section1>
- <utml:input type="radio" name="{$dt_rg_name}" value="maxNumber" checked="true" tabindex="0" aria-labelledby="lbl_{$dt_rg_name}_maxNumber">
- <xsl:attribute name="onclick">(new com.ibm.cognos.ps.retentionRule(document.pform, '<xsl:value-of select="@class"/>')).rdToggler(false);</xsl:attribute>
- <out:attribute name="title"><xts:string id="{@label}"/></out:attribute>
- <out:if test="$dt_disabled">
- <out:attribute name="disabled">true</out:attribute>
- </out:if>
- </utml:input>
- </dp:section1>
- <dp:section2>
- <dp:group id="lbl_{$dt_rg_name}_maxNumber">
- <dp:groupItem><label for="ctrl_{concat('cto_maxNumber_', @class)}"><xts:string id="IDS_PROP_NUMBER_VERSIONS"/></label></dp:groupItem>
- <dp:groupItem><dp:text/></dp:groupItem>
- <dp:groupItem>
- <utml:input type="text" name="{concat('cto_maxNumber_', @class)}" size="3" maxlength="3" utml:track="true" validateobject="{concat('rg_retention_', @class)}" id="ctrl_{concat('cto_maxNumber_', @class)}">
- <out:attribute name="title"><xts:string id="IDS_PROP_NUMBER_VERSIONS"/></out:attribute>
- <out:attribute name="onchange">on_cto_maxNumber_<xsl:value-of select="@class"/>_changed();(new com.ibm.cognos.ps.retentionRule(document.pform, '<xsl:value-of select="@class"/>')).onContentChange()</out:attribute>
- <out:if test="$dt_disabled or not($occurrence_selected)">
- <out:attribute name="disabled">true</out:attribute>
- </out:if>
- <utml:value>
- <out:choose>
- <out:when test="$dt_maxObjects != '' and not(key('env-param', '{$dt_rg_name}'))">
- <out:value-of select="$dt_maxObjects"/>
- </out:when>
- <out:otherwise>
- <out:choose>
- <out:when test="$dt_class='history'">5</out:when>
- <out:otherwise>1</out:otherwise>
- </out:choose>
- </out:otherwise>
- </out:choose>
- </utml:value>
- </utml:input>
- </dp:groupItem>
- </dp:group>
- </dp:section2>
- <dp:section1>
- <utml:input type="radio" name="{$dt_rg_name}" value="duration" tabindex="0" aria-labelledby="grp_{$dt_rg_name}_duration">
- <xsl:attribute name="onclick">(new com.ibm.cognos.ps.retentionRule(document.pform, '<xsl:value-of select="@class"/>')).rdToggler(true);</xsl:attribute>
- <out:if test="$dt_disabled">
- <out:attribute name="disabled">true</out:attribute>
- </out:if>
- </utml:input>
- </dp:section1>
- <dp:section2>
- <span style="position: absolute;margin-left: -9999px; margin-top: -9999px; " id="lbl_{$sel}"><xts:string id="IDS_PROP_DURATION_UNITS"/></span>
- <dp:group id="grp_{$dt_rg_name}_duration"><dp:groupItem><label for="{$dur}"><xts:string id="IDS_PROP_DURATION"/></label>
- <xts:string id="IDS_PROP_DURATION_DUMMY"><xts:param name="duraTime">
- <dp:groupItem><dp:text/></dp:groupItem>
- <dp:groupItem>
- <utml:input type="text" name="{concat('cto_duration_', @class)}" size="3" maxlength="3" utml:track="true" validateobject="{concat('rg_retention_', @class)}" id="{$dur}">
- <out:attribute name="onchange">on_cto_duration_<xsl:value-of select="@class"/>_changed();(new com.ibm.cognos.ps.retentionRule(document.pform, '<xsl:value-of select="@class"/>')).onContentChange()</out:attribute>
- <out:if test="$dt_disabled or $occurrence_selected or ($days='' and $months='' and not(key('env-param', '{concat('cto_durationSelect_', @class)}')))">
- <out:attribute name="disabled">true</out:attribute>
- </out:if>
- <utml:value>
- <out:choose>
- <out:when test="$days!=''"><out:value-of select="$days"/></out:when>
- <out:when test="$months!=''"><out:value-of select="$months"/></out:when>
- </out:choose>
- </utml:value>
- </utml:input>
- </dp:groupItem>
- </xts:param>
- <xts:param name="duraSpacer">
- <dp:groupItem><dp:text/></dp:groupItem>
- </xts:param>
- <xts:param name="duraType">
- <dp:groupItem>
- <utml:select name="{concat('cto_durationSelect_', @class)}" id="{$sel}" aria-labelledby="lbl_{$sel}">
- <out:attribute name="onchange">(new com.ibm.cognos.ps.retentionRule(document.pform, '<xsl:value-of select="@class"/>')).onContentChange()</out:attribute>
- <out:if test="$dt_disabled or $occurrence_selected or ($days='' and $months='' and not(key('env-param', '{concat('cto_durationSelect_', @class)}')))">
- <out:attribute name="disabled">true</out:attribute>
- </out:if>
- <utml:option value="days" id="{$optD}">
- <out:if test="$days!='' or key('env-param','{concat('cto_durationSelect_',@class)}')='days' or not(key('env-param','{concat('cto_durationSelect_',@class)}'))">
- <out:attribute name="selected">selected</out:attribute>
- </out:if>
- <label for="{$optD}"><out:value-of select="$daysDisplay"/></label>
- </utml:option>
- <utml:option value="months" id="{$optM}">
- <out:if test="$months!='' or key('env-param','{concat('cto_durationSelect_',@class)}')='months'">
- <out:attribute name="selected">selected</out:attribute>
- </out:if>
- <label for="{$optM}"><out:value-of select="$monthsDisplay"/></label>
- </utml:option>
- </utml:select>
- </dp:groupItem>
- </xts:param>
- </xts:string>
- </dp:groupItem>
- </dp:group>
- </dp:section2>
- </utml:radio-group>
- </out:when>
- <out:otherwise>
- <out:if test="not($dt_disabled)">
- <out:choose>
- <out:when test="$occurrence_selected">
- <dp:section1>
- <xts:string id="IDS_PROP_NUMBER_VERSIONS_READONLY">
- <xts:param name="maxNumber">
- <out:value-of select="$dt_maxObjects"/>
- </xts:param>
- </xts:string>
- </dp:section1>
- </out:when>
- <out:otherwise>
- <dp:section1>
- <out:choose>
- <out:when test="$days != '' ">
- <xts:string id="IDS_PROP_DAYS_READONLY">
- <xts:param name="numDays">
- <out:value-of select="$days"/>
- </xts:param>
- </xts:string>
- </out:when>
- <out:otherwise>
- <xts:string id="IDS_PROP_MONTHS_READONLY">
- <xts:param name="numMonths">
- <out:value-of select="$months"/>
- </xts:param>
- </xts:string>
- </out:otherwise>
- </out:choose>
- </dp:section1>
- </out:otherwise>
- </out:choose>
- </out:if>
- </out:otherwise>
- </out:choose>
- </dp:choice>
- </div>
- </xsl:when>
- <xsl:when test="@ui='removal'">
- <div style="padding-left:2em" id="{concat('retentionContent_', @class)}">
- <dp:choice>
- <out:choose>
- <out:when test="not($dt_edit) or contains($permissions, 'write')">
- <dp:section1>
- <utml:radio-group name="{$dt_rg_name}">
- <utml:default-value>duration</utml:default-value>
- </utml:radio-group>
-
- <dp:group>
- <dp:groupItem><label for="{$dur}"><xts:string id="IDS_PROP_DURATION"/></label>
- <xts:string id="IDS_PROP_DURATION_DUMMY">
- <xts:param name="duraTime">
- <dp:groupItem><dp:text/></dp:groupItem>
- <dp:groupItem>
- <utml:input type="text" name="{concat('cto_duration_', @class)}" size="3" maxlength="3" utml:track="true" validateobject="{concat('rg_retention_', @class)}" id="{$dur}">
- <out:attribute name="onchange">on_cto_duration_<xsl:value-of select="@class"/>_changed();(new com.ibm.cognos.ps.retentionRule(document.pform, '<xsl:value-of select="@class"/>')).onContentChange()</out:attribute>
- <out:if test="$dt_disabled">
- <out:attribute name="disabled">true</out:attribute>
- </out:if>
- <utml:value>
- <out:choose>
- <out:when test="$days!=''"><out:value-of select="$days"/></out:when>
- <out:when test="$months!=''"><out:value-of select="$months"/></out:when>
- <!-- hard-coded default value -->
- <out:otherwise>6</out:otherwise>
- </out:choose>
- </utml:value>
- </utml:input>
- </dp:groupItem>
- </xts:param>
- <xts:param name="duraSpacer">
- <dp:groupItem><dp:text/></dp:groupItem>
- </xts:param>
- <xts:param name="duraType">
- <dp:groupItem>
- <label for="{$sel}"/>
- <utml:select name="{concat('cto_durationSelect_', @class)}" id="{$sel}">
- <out:attribute name="onchange">(new com.ibm.cognos.ps.retentionRule(document.pform, '<xsl:value-of select="@class"/>')).onContentChange()</out:attribute>
- <out:if test="$dt_disabled">
- <out:attribute name="disabled">true</out:attribute>
- </out:if>
- <utml:option value="days" id="{$optD}">
- <out:if test="$days!=''">
- <out:attribute name="selected">selected</out:attribute>
- </out:if>
- <label for="{$optD}"><out:value-of select="$daysDisplay"/></label>
- </utml:option>
- <utml:option value="months" id="{$optM}">
- <out:if test="$months!='' or not($dt_option_exist)">
- <out:attribute name="selected">selected</out:attribute>
- </out:if>
- <label for="{$optM}"><out:value-of select="$monthsDisplay"/></label>
- </utml:option>
- </utml:select>
- </dp:groupItem>
- </xts:param>
- </xts:string>
- </dp:groupItem>
- </dp:group>
- </dp:section1>
- </out:when>
- <out:otherwise>
- <out:if test="not($dt_disabled)">
- <dp:section1>
- <out:choose>
- <out:when test="$days != '' ">
- <xts:string id="IDS_PROP_DAYS_READONLY">
- <xts:param name="numDays">
- <out:value-of select="$days"/>
- </xts:param>
- </xts:string>
- </out:when>
- <out:otherwise>
- <xts:string id="IDS_PROP_MONTHS_READONLY">
- <xts:param name="numMonths">
- <out:value-of select="$months"/>
- </xts:param>
- </xts:string>
- </out:otherwise>
- </out:choose>
- </dp:section1>
- </out:if>
- </out:otherwise>
- </out:choose>
- </dp:choice>
- </div>
- </xsl:when>
- </xsl:choose>
- </div>
- </dp:section>
- </dp:list>
- </xsl:template>
-
- <!--
- ==========================================
- adm:runOptionsRadioButtons
- ==========================================
- -->
- <xsl:template match="adm:runOptionsRadioButtons" name="adm:runOptionsRadioButtons">
- <dp:list>
- <dp:section>
- <dp:label id="lbl_runoption_radioGroup">
- <xts:string id="IDS_CONTENT_ADMIN_OPTION"/>
- </dp:label>
- </dp:section>
- </dp:list>
- <utml:radio-group name="ctro_runoption" utml:default-value="find">
- <dp:choice aria-labelledby="lbl_runoption_radioGroup">
- <dp:section1>
- <utml:input type="radio" value="find" id="ctro_runoption_find"/>
- </dp:section1>
- <dp:section2 for="ctro_runoption_find">
- <out:text/><xts:string id="IDS_CONTENT_ADMIN_OPTIONS_FIND"/><out:text/>
- </dp:section2>
- <dp:section1>
- <utml:input type="radio" value="fix" id="ctro_runoption_fix"/>
- </dp:section1>
- <dp:section2 for="ctro_runoption_fix">
- <out:text/><xts:string id="IDS_CONTENT_ADMIN_OPTIONS_FIX"/><out:text/>
- </dp:section2>
- </dp:choice>
- </utml:radio-group>
- </xsl:template>
-
- <!--
- ==========================================
- $the-schedule must be defined in the calling morphlet
- ==========================================
- -->
- <xsl:template match="adm:createModeParams">
- <out:element name="param">
- <out:attribute name="name"><out:value-of select="'ctro_runoption'"/></out:attribute>
- <out:choose>
- <out:when test="$the-schedule/*[local-name()='options']/*[local-name()='value']/*[local-name()='item'][child::node() = 'repairSecurityReferences']/*[local-name()='value'] = 'true' or $the-schedule/*[local-name()='options']/*[local-name()='value']/*[local-name()='item'][child::node() = 'repairInternalInconsistencies']/*[local-name()='value'] = 'true'"><out:value-of select="'fix'"/></out:when>
- <out:otherwise><out:value-of select="'find'"/></out:otherwise>
- </out:choose>
- </out:element>
- </xsl:template>
-
- <!--
- ==========================================
- $the-schedule, $the-object, and $the-namespace must be defined in the calling morphlet
- ==========================================
- -->
- <xsl:template match="adm:createOptionsParams">
- <out:if test="$the-object/*[local-name()='options']/*[local-name()='value']/*[local-name()='item']/*[local-name()='value']/* and not(/root/env/param[@name = 'cto_externalnamespace'])">
- <out:element name="param">
- <out:attribute name="name"><out:text/>cto_externalnamespace<out:text/></out:attribute>
- <out:value-of select="'select'"/>
- </out:element>
- </out:if>
- <out:if test="not(/root/env/param[@name = 'cto_consistency_check'])">
- <out:element name="param">
- <out:attribute name="name"><out:text/>cto_consistency_check<out:text/></out:attribute>
- <out:choose>
- <out:when test="$the-object/*[local-name()='options']/*[local-name()='value']/*[local-name()='item' and ./*[local-name()='name']='repairSecurityReferences']/*[local-name()='value'] = 'true'"><out:value-of select="'externalRef'"/></out:when>
- <out:when test="$the-object/*[local-name()='options']/*[local-name()='value']/*[local-name()='item' and ./*[local-name()='name']='checkSecurityReferences']/*[local-name()='value'] = 'true'"><out:value-of select="'externalRef'"/></out:when>
- <out:otherwise><out:value-of select="'internalRef'"/></out:otherwise>
- </out:choose>
- </out:element>
- </out:if>
- <out:for-each select="$the-object/*[local-name()='options']/*[local-name()='value']/*[local-name()='item' and ./*[local-name()='name']='securityReferencesContext']/*[local-name()='value']/*">
- <out:variable name="currentNodeValue" select="."/>
- <out:choose>
- <out:when test="$the-namespaces/*/cm:searchPath = .">
- <out:variable name="paramName"><out:text/>m_namespace_<out:text/><out:value-of select="$the-namespaces/*[cm:searchPath = $currentNodeValue]/cm:defaultName"/></out:variable>
- <out:if test="not(/root/env/param[@name = $paramName])">
- <out:element name="param">
- <out:attribute name="name"><out:value-of select="$paramName"/></out:attribute>
- <out:value-of select="."/>
- </out:element>
- </out:if>
- </out:when>
- <out:otherwise>
- <xsl:element name="param">
- <xsl:attribute name="name"><xsl:value-of select="'deletedNamespace'"/></xsl:attribute>
- <xts:string id="IDS_CONTENT_TASK_UNAVAILABLE"/>
- </xsl:element>
- </out:otherwise>
- </out:choose>
- </out:for-each>
- </xsl:template>
-
- <!--
- ==========================================
- adm:forceOptionRadioButtons
- ==========================================
- -->
- <xsl:template match="adm:forceOptionRadioButtons">
- <out:variable name="force">
- <out:choose>
- <out:when test="/root/*[local-name()='queryResponse']/*/*[local-name()='options']/*[local-name()='value']/*[local-name()='item' and ./*[local-name()='name']='force']/*[local-name()='value']"><out:value-of select="/root/*[local-name()='queryResponse']/*/*[local-name()='options']/*[local-name()='value']/*[local-name()='item' and ./*[local-name()='name']='force']/*[local-name()='value']"/></out:when>
- <out:otherwise><xsl:value-of select="'false'"/></out:otherwise>
- </out:choose>
- </out:variable>
- <lyt:layout style="1" border="no">
- <lyt:section>
- <dp:list title="IDS_INDEX_UPDATE_FORCE_OPTION_TITLE">
- <dp:section>
- <dp:hint wrap="wrap"><xts:string id="IDS_INDEX_UPDATE_FORCE_OPTION_DESCRIPTION"/></dp:hint>
- </dp:section>
- </dp:list>
- <utml:radio-group name="m_io_force" utml:default-value="false">
- <span style="position: absolute;margin-left: -9999px; margin-top: -9999px; " id="lbl_m_io_force"><xts:string id="IDS_INDEX_UPDATE_FORCE_OPTION_TITLE"/></span>
- <dp:choice aria-labelledby="lbl_m_io_force">
- <dp:section1>
- <utml:input type="radio" value="false" id="ctrl_force_false"/>
- </dp:section1>
- <dp:section2 for="ctrl_force_false">
- <out:text/><xts:string id="IDS_INDEX_UPDATE_FORCE_OPTION_CHANGED_ENTRIES"/><out:text/>
- </dp:section2>
- <dp:section1>
- <utml:input type="radio" value="true" id="ctrl_force_true">
- <out:if test="$force='true'">
- <out:attribute name="checked">checked</out:attribute>
- </out:if>
- </utml:input>
- </dp:section1>
- <dp:section2 for="ctrl_force_true">
- <out:text/><xts:string id="IDS_INDEX_UPDATE_FORCE_OPTION_ALL_ENTRIES"/><out:text/>
- </dp:section2>
- </dp:choice>
- </utml:radio-group>
- </lyt:section>
- </lyt:layout>
- </xsl:template>
-
- <!--
- ==========================================
- adm:indexUpdateContentOptions
- ==========================================
- -->
- <xsl:template match="adm:indexUpdateContentOptions">
- <script language="javascript" src="{'{$webRoot}'}/dojo16/dojo/dojo.js"/>
- <script language="javascript" src="{'{$webcontent}'}/{'{$app}'}/js/indexUpdate.js"/>
-
- <out:variable name="indexObjectTypes"><out:value-of select="/root/env/param[@name='m_io_indexObjectTypes']"/></out:variable>
- <out:variable name="indexReferencedData"><out:value-of select="/root/env/param[@name='m_io_indexReferencedData']"/></out:variable>
- <out:variable name="indexModeledData"><out:value-of select="/root/env/param[@name='m_io_indexModeledData']"/></out:variable>
- <out:variable name="indexData" select="$indexReferencedData='true' or $indexModeledData='true'"/>
- <lyt:layout style="1" border="no">
- <lyt:section>
- <dp:list title="IDS_INDEX_UPDATE_CONTENT_OPTION_TITLE">
- <dp:section>
- <dp:hint wrap="wrap"><xts:string id="IDS_INDEX_UPDATE_CONTENT_OPTION_DESCRIPTION"/></dp:hint>
- </dp:section>
- </dp:list>
- <span style="position: absolute;margin-left: -9999px; margin-top: -9999px; " id="lbl_indexObjectTypes"><xts:string id="IDS_INDEX_UPDATE_CONTENT_OPTION_TITLE"/></span>
- <dp:choice aria-labelledby="lbl_indexObjectTypes">
- <dp:section1>
- <utml:input type="checkbox" value="true" name="m_io_indexObjectTypes" id="ctrl_indexObjectTypes" utml:update="false">
- <out:if test="$indexObjectTypes='true' or not($indexData)">
- <out:attribute name="checked">checked</out:attribute>
- </out:if>
- </utml:input>
- </dp:section1>
- <dp:section2 for="ctrl_indexObjectTypes">
- <out:text/><xts:string id="IDS_INDEX_UPDATE_CONTENT_OPTION_PROP_AND_METADATA"/><out:text/>
- </dp:section2>
- <dp:section1>
- <utml:input type="checkbox" name="dataIndexOptionToggle" id="ctrl_dataIndexOptionToggle" utml:update="false" onclick="ps.indexUpdate.toggleDataIndexOptions(document.pform)">
- <out:if test="$indexData">
- <out:attribute name="checked">checked</out:attribute>
- </out:if>
- </utml:input>
- </dp:section1>
- <dp:section2 for="ctrl_dataIndexOptionToggle">
- <out:text/><xts:string id="IDS_INDEX_UPDATE_CONTENT_OPTION_DATA_VALUES"/><out:text/>
- </dp:section2>
- <dp:section3>
- <dp:list>
- <dp:section>
- <utml:input type="hidden" name="m_io_indexReferencedData" utml:update="false" value="true">
- <out:if test="not($indexReferencedData='true')">
- <out:attribute name="disabled">true</out:attribute>
- </out:if>
- </utml:input>
- <utml:input type="hidden" disabled="true" name="m_io_indexModeledData" utml:update="false" value="true">
- <out:if test="not($indexModeledData='true')">
- <out:attribute name="disabled">true</out:attribute>
- </out:if>
- </utml:input>
- <utml:radio-group name="indexDataOption" utml:default-value="true">
- <dp:choice>
- <dp:section1>
- <utml:input type="radio" value="true" id="ctrl_indexDataOption_true" onclick="ps.indexUpdate.toggleDataIndexOptions(document.pform)">
- <out:choose>
- <out:when test="$indexReferencedData='true'">
- <out:attribute name="checked">checked</out:attribute>
- </out:when>
- <out:when test="not($indexData)">
- <out:attribute name="disabled">true</out:attribute>
- </out:when>
- </out:choose>
- </utml:input>
- </dp:section1>
- <dp:section2 for="ctrl_indexDataOption_true">
- <div>
- <out:text/><xts:string id="IDS_INDEX_UPDATE_CONTENT_OPTION_DATA_VALUES_REF_DATA"/><out:text/>
- </div>
- </dp:section2>
- <dp:section1>
- <utml:input type="radio" value="false" id="ctrl_indexDataOption_false" onclick="ps.indexUpdate.toggleDataIndexOptions (document.pform)">
- <out:choose>
- <out:when test="$indexModeledData='true'">
- <out:attribute name="checked">checked</out:attribute>
- </out:when>
- <out:when test="not($indexData)">
- <out:attribute name="disabled">true</out:attribute>
- </out:when>
- </out:choose>
- </utml:input>
- </dp:section1>
- <dp:section2 for="ctrl_indexDataOption_false">
- <out:text/>
- <div>
- <xts:string id="IDS_INDEX_UPDATE_CONTENT_OPTION_DATA_VALUES_ALL_DATA"/>
- </div><out:text/>
- </dp:section2>
- </dp:choice>
- </utml:radio-group>
- </dp:section>
- </dp:list>
- </dp:section3>
- </dp:choice>
- </lyt:section>
- </lyt:layout>
- </xsl:template>
-
- <xsl:template match="adm:createIndexUpdateParams">
- <out:variable name="item" select="$the-schedule/*[local-name()='options']/*[local-name()='value']/*[local-name()='item']"/>
- <out:element name="param">
- <out:attribute name="name"><out:value-of select="'m_io_force'"/></out:attribute>
- <out:choose>
- <out:when test="$item[child::node() = 'force']/*[local-name()='value'] = 'true'"><xsl:value-of select="'true'"/></out:when>
- <out:otherwise><xsl:value-of select="'false'"/></out:otherwise>
- </out:choose>
- </out:element>
- <out:element name="param">
- <out:attribute name="name"><out:value-of select="'m_io_indexObjectTypes'"/></out:attribute>
- <out:choose>
- <out:when test="$item[child::node() = 'indexObjectTypes']/*[local-name()='value'] = 'true'"><xsl:value-of select="'true'"/></out:when>
- <out:otherwise><xsl:value-of select="'false'"/></out:otherwise>
- </out:choose>
- </out:element>
- <out:element name="param">
- <out:attribute name="name"><out:value-of select="'m_io_indexReferencedData'"/></out:attribute>
- <out:choose>
- <out:when test="$item[child::node() = 'indexReferencedData']/*[local-name()='value'] = 'true'"><xsl:value-of select="'true'"/></out:when>
- <out:otherwise><xsl:value-of select="'false'"/></out:otherwise>
- </out:choose>
- </out:element>
- <out:element name="param">
- <out:attribute name="name"><out:value-of select="'m_io_indexModeledData'"/></out:attribute>
- <out:choose>
- <out:when test="$item[child::node() = 'indexModeledData']/*[local-name()='value'] = 'true'"><xsl:value-of select="'true'"/></out:when>
- <out:otherwise><xsl:value-of select="'false'"/></out:otherwise>
- </out:choose>
- </out:element>
- </xsl:template>
- <xsl:template match="adm:indexUpdateOptions">
- <!-- the possible classes to upgrade are hardcoded for Bering -->
- <cp:table name="indexUpdate_{@IncludeOrExclude}" id="tbl_indexUpdate_{@IncludeOrExclude}" iterate="/root/indexUpdates/{@IncludeOrExclude}/*" width="100%" align="center" showEmptyMsg="true">
- <cp:tableSummary>
- <xsl:choose>
- <xsl:when test="@IncludeOrExclude='include'"><xts:string id="IDS_INDEX_UPDATE_INCLUDED_CONTENT_TABLE_SUMMARY"/></xsl:when>
- <xsl:otherwise><xts:string id="IDS_INDEX_UPDATE_EXCLUDED_CONTENT_TABLE_SUMMARY"/></xsl:otherwise>
- </xsl:choose>
- </cp:tableSummary>
- <!-- possible actions -->
- <cp:action>
- <out:if test="$has_write_permission = true()">
- <utml:a utml:op="maintain">
- <out:attribute name="aria-label">
- <xsl:choose>
- <xsl:when test="@IncludeOrExclude='include'"><xts:string id="IDS_INDEX_UPDATE_ADD_INCLUDED_CONTENT"/></xsl:when>
- <xsl:otherwise><xts:string id="IDS_INDEX_UPDATE_ADD_EXCLUDED_CONTENT"/></xsl:otherwise>
- </xsl:choose>
- </out:attribute>
- <utml:href>clearSelections();</utml:href>
- <utml:href>document.pform.controller_state.value = 'addEntries|navigate';</utml:href>
- <utml:href>document.pform.include_or_exclude.value = '<xsl:value-of select="@IncludeOrExclude"/>';</utml:href>
- <xsl:text/><xts:string id="IDS_INDEX_UPDATE_TASK_ADD"/><xsl:text/>
- </utml:a>
- </out:if>
- </cp:action>
- <cp:action>
- <out:if test="$has_write_permission = true()">
- <utml:a utml:op="maintain">
- <out:attribute name="aria-label">
- <xsl:choose>
- <xsl:when test="@IncludeOrExclude='include'"><xts:string id="IDS_INDEX_UPDATE_REMOVE_INCLUDED_CONTENT"/></xsl:when>
- <xsl:otherwise><xts:string id="IDS_INDEX_UPDATE_REMOVE_EXCLUDED_CONTENT"/></xsl:otherwise>
- </xsl:choose>
- </out:attribute>
- <utml:href>document.pform.listop.value = 'delete';</utml:href>
- <utml:href>document.pform.include_or_exclude.value = '<xsl:value-of select="@IncludeOrExclude"/>';</utml:href>
- <xsl:text/><xts:string id="IDS_INDEX_UPDATE_TASK_REMOVE"/><xsl:text/>
- </utml:a>
- </out:if>
- </cp:action>
- <cp:tableHeader>
- <!-- checkbox -->
- <cp:columnHeader width="16" toggleName="checkbox_location_{@IncludeOrExclude}" noLabel="true" utml="utml"/>
- <!-- icon -->
- <cp:columnHeader width="16"/>
- <!-- name -->
- <cp:columnHeader width="100%">
- <!-- All of this is to align the header (...> Name) with the contents of the table-->
- <img height="5" width="1" border="0"><out:attribute name="src"><out:value-of select="$webcontent"/>/images/space.gif</out:attribute></img>
- <out:text/><xts:string id="IDS_PATH_INDICATOR"/><out:text> </out:text>
- <img height="5" width="1" border="0"><out:attribute name="src"><out:value-of select="$webcontent"/>/images/space.gif</out:attribute></img>
- <xts:string id="IDS_INDEX_UPDATE_TASK_NAME_COLUMN"/>
- </cp:columnHeader>
- </cp:tableHeader>
- <cp:tableContent>
- <out:variable name="entryName">
- <out:choose>
- <out:when test=".[local-name()='unavailable']"><xts:string id="IDS_PROP_ENTRY_NOT_FOUND"/></out:when>
- <out:otherwise><out:value-of select="cm:defaultName"/></out:otherwise>
- </out:choose>
- </out:variable>
- <!-- checkbox -->
- <cp:columnContent valign="top">
- <out:if test="$has_write_permission">
- <utml:input type="checkbox">
- <out:attribute name="aria-label"><xts:string id="IDS_SELECTION_FOR_PAGER_ITEM" encode="html"><xts:param name="pagerItemName"><out:value-of select="$entryName"/></xts:param></xts:string></out:attribute>
- <utml:name>checkbox_location_<xsl:value-of select="@IncludeOrExclude"/>_<out:value-of select="position()"/></utml:name>
- <utml:value><out:value-of select="position()"/></utml:value>
- </utml:input>
- </out:if>
- </cp:columnContent>
- <!-- icon -->
- <cp:columnContent valign="top">
- <out:variable name="overrideObjectClass">
- <out:if test="cm:objectClass='namespace'">pfr</out:if>
- </out:variable>
- <out:call-template name="gen-icon">
- <out:with-param name="showAction" select="false()"/>
- <out:with-param name="class" select="$overrideObjectClass"/>
- <out:with-param name="userInterfaces" select="*[local-name()='userInterfaces']/*[local-name()='uiComponentEnum']"/>
- <out:with-param name="hiddenObject" select="cm:hidden"/>
- </out:call-template>
- </cp:columnContent>
- <!-- name -->
- <cp:columnContent>
- <img width="20" height="16" align="absmiddle" src="{'{$skin_images}'}path.gif">
- <out:attribute name="alt">
- <cf:do-the-path-link>
- <cf:param name="familytree">cm:ancestors</cf:param>
- <cf:param name="familymember">cm:defaultName</cf:param>
- <cf:param name="onlyAncestors">true</cf:param>
- </cf:do-the-path-link>
- </out:attribute>
- </img>
- <xsl:text> </xsl:text>
- <out:value-of select="$entryName"/>
- </cp:columnContent>
- </cp:tableContent>
- </cp:table>
- </xsl:template>
- <xsl:template match="adm:indexUpdateOptionsSummary">
- <lyt:layout style="1" border="no">
- <lyt:section>
- <dp:list>
- <dp:section>
- <dp:label>
- <xts:string id="IDS_INDEX_UPDATE_TASK_TABLE_TITLE_INCLUDE"/>
- </dp:label>
- </dp:section>
- </dp:list>
- <cp:table name="indexUpdateOptionsSummaryInclude" id="tbl_indexUpdateOptionsSummaryInclude" iterate="/root/indexUpdates/include/*" width="20%">
- <cp:tableHeader>
- <cp:columnHeader>
- <out:text/><xts:string id="IDS_PATH_INDICATOR"/><out:text> </out:text>
- <img height="5" width="1" border="0"><out:attribute name="src"><out:value-of select="$webcontent"/>/images/space.gif</out:attribute></img>
- <xts:string id="IDS_INDEX_UPDATE_TASK_NAME_COLUMN"/>
- </cp:columnHeader>
- </cp:tableHeader>
- <cp:tableContent>
- <cp:columnContent>
- <img width="20" height="16" align="absmiddle" src="{'{$skin_images}'}path.gif">
- <out:attribute name="alt">
- <cf:do-the-path-link>
- <cf:param name="familytree">cm:ancestors</cf:param>
- <cf:param name="familymember">cm:defaultName</cf:param>
- <cf:param name="onlyAncestors">true</cf:param>
- </cf:do-the-path-link>
- </out:attribute>
- </img>
- <xsl:text> </xsl:text>
- <out:value-of select="cm:defaultName"/>
- </cp:columnContent>
- </cp:tableContent>
- </cp:table>
- <br />
- <dp:list>
- <dp:section>
- <dp:label>
- <xts:string id="IDS_INDEX_UPDATE_TASK_TABLE_TITLE_EXCLUDE"/>
- </dp:label>
- </dp:section>
- </dp:list>
- <cp:table name="indexUpdateOptionsSummaryExclude" id="tbl_indexUpdateOptionsSummaryExclude" iterate="/root/indexUpdates/exclude/*" width="20%">
- <cp:tableHeader>
- <cp:columnHeader>
- <out:text/><xts:string id="IDS_PATH_INDICATOR"/><out:text> </out:text>
- <img height="5" width="1" border="0"><out:attribute name="src"><out:value-of select="$webcontent"/>/images/space.gif</out:attribute></img>
- <xts:string id="IDS_INDEX_UPDATE_TASK_NAME_COLUMN"/>
- </cp:columnHeader>
- </cp:tableHeader>
- <cp:tableContent>
- <cp:columnContent>
- <img width="20" height="16" align="absmiddle" src="{'{$skin_images}'}path.gif">
- <out:attribute name="alt">
- <cf:do-the-path-link>
- <cf:param name="familytree">cm:ancestors</cf:param>
- <cf:param name="familymember">cm:defaultName</cf:param>
- <cf:param name="onlyAncestors">true</cf:param>
- </cf:do-the-path-link>
- </out:attribute>
- </img>
- <xsl:text> </xsl:text>
- <out:value-of select="cm:defaultName"/>
- </cp:columnContent>
- </cp:tableContent>
- </cp:table>
- </lyt:section>
- </lyt:layout>
- </xsl:template>
-
- <xsl:template match="*">
- <xsl:copy>
- <xsl:copy-of select="@*"/>
- <xsl:apply-templates/>
- </xsl:copy>
- </xsl:template>
- </xsl:stylesheet>
|