1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492 |
- <?xml version="1.0" encoding="UTF-8"?>
- <!--
- Licensed Materials - Property of IBM
- IBM Cognos Products: ps
- (C) Copyright IBM Corp. 2005, 2014
- 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). 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:cp="http://developer.cognos.com/schemas/xts/logicsheets/xslt/presentation/controls/presentation/" xmlns:dp="http://developer.cognos.com/schemas/xts/logicsheets/xslt/presentation/dialog/presentation/" xmlns:xts="http://developer.cognos.com/schemas/xts/" xmlns:cf="http://developer.cognos.com/schemas/xts/logicsheets/xslt/presentation/controls/framework/" xmlns:pg="http://developer.cognos.com/schemas/xts/pg" xmlns:xtsext="xalan://com.cognos.xts.ext.XTSExt" xmlns:cm="http://developer.cognos.com/schemas/xts-cm/1/" xmlns:pm="http://developer.cognos.com/schemas/xts/pm" xmlns:mf="http://developer.cognos.com/schemas/xts/logicsheets/presentation/main/mf" xmlns:cs="http://developer.cognos.com/schemas/cs" xmlns:out="dummy-uri" xmlns:bus="http://developer.cognos.com/schemas/bibus/3/" xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:string="java:java.lang.String" xmlns:nav="http://developer.cognos.com/schemas/cps/navigation/1/" exclude-result-prefixes="xts xsl cp dp cf cm cs pg pm mf">
- <xsl:output method="xml" encoding="UTF-8" indent="no"/>
- <xsl:namespace-alias stylesheet-prefix="out" result-prefix="xsl"/>
- <xsl:template match="pg:common-variables">
- <out:variable name="cs-ui-search-terms" select="{./pg:searchTerms}"/>
- <out:variable name="cs-ui-search-form" select="{./pg:searchForm}"/>
- <out:variable name="cs-ui-table-text-style" select="{./pg:tableTextStyle}"/>
- <out:variable name="cs-ui-table-header-style" select="{./pg:tableHeaderStyle}"/>
- <out:variable name="cs-ui-table-title-style" select="{./pg:tableTitleStyle}"/>
- <out:variable name="cs-ui-form-label-style" select="{./pg:formLabelStyle}"/>
- <out:variable name="cs-ui-image-root" select="{./pg:imageRoot}"/>
- <out:variable name="cs-ui-gateway" select="{./pg:gateway}"/>
- <out:variable name="cs-ui-callback-function" select="{./pg:callbackFunction}"/>
- <out:variable name="cs-ui-selected-category-style" select="{./pg:selectedCategoryStyle}"/>
- <out:variable name="cs-ui-selected-category-hover-style" select="{./pg:selectedCategoryHoverStyle}"/>
- <out:variable name="cs-ui-category-hover-style" select="{./pg:categoryHoverStyle}"/>
- <out:variable name="cs-ui-category-highlight-style" select="{./pg:categoryHighlightStyle}"/>
- <out:variable name="cs-ui-tooltip-style" select="{./pg:tooltipStyle}"/>
- <out:variable name="cs-ui-all-filters" select="{./pg:allFilters}"/>
- <out:variable name="cs-popup-menu" select="{./pg:popupMenu}"/>
- <out:variable name="cs-popup-menu-caption" select="{./pg:popupMenuCaption}"/>
- <out:variable name="cs-popup-menu-item" select="{./pg:popupMenuItem}"/>
- <out:variable name="cs-popup-menu-item-hover" select="{./pg:popupMenuItemHover}"/>
-
- <out:variable name="cs-browser">
- <xsl:choose>
- <xsl:when test="./pg:browser">
- <out:value-of select="{./pg:browser}"/>
- </xsl:when>
- <xsl:otherwise>
- <out:value-of select="''"/>
- </xsl:otherwise>
- </xsl:choose>
- </out:variable>
-
- <out:variable name="cs-ui-resize-function">
- <xsl:choose>
- <xsl:when test="./pg:resizeFunction">
- <out:value-of select="{./pg:resizeFunction}"/>
- </xsl:when>
- <xsl:otherwise>
- <out:value-of select="'wsrp_rewrite_resizeHandler(null)'"/>
- </xsl:otherwise>
- </xsl:choose>
- </out:variable>
- <out:variable name="cs-ui-skin-images">
- <xsl:attribute name="select"><xsl:choose><xsl:when test="./pg:skinImages"><xsl:value-of select="./pg:skinImages"/></xsl:when><xsl:otherwise><xsl:value-of select="./pg:imageRoot"/></xsl:otherwise></xsl:choose></xsl:attribute>
- </out:variable>
- <out:variable name="cs-ui-skin-shared-images">
- <xsl:attribute name="select">
- <xsl:choose>
- <xsl:when test="./pg:skinSharedImages"><xsl:value-of select="./pg:skinSharedImages"/></xsl:when>
- <xsl:otherwise><xsl:value-of select="./pg:imageRoot"/></xsl:otherwise>
- </xsl:choose>
- </xsl:attribute>
- </out:variable>
- <out:variable name="cs-ui-image-root-space">
- <xsl:attribute name="select"><xsl:choose><xsl:when test="./pg:imageRootSpace"><xsl:value-of select="./pg:imageRootSpace"/></xsl:when><xsl:otherwise><xsl:value-of select="./pg:imageRoot"/></xsl:otherwise></xsl:choose></xsl:attribute>
- </out:variable>
- <out:variable name="cs-passport">
- <out:choose>
- <!-- pull the passport out of the bus header from CC-->
- <out:when test="/root/credential/param[@name='CAM']/*[local-name() ='CAM']/*[local-name() = 'CAMPassport']/*[local-name() = 'id']">
- <out:value-of select="/root/credential/param[@name='CAM']/*[local-name() ='CAM']/*[local-name() = 'CAMPassport']/*[local-name() = 'id']"/>
- </out:when>
- <!-- pull the passport out of the bus header from CPS-->
- <out:when test="root/envelope/SOAP-ENV:Envelope/SOAP-ENV:Header/bus:biBusHeader/*[local-name() ='CAM']/*[local-name() = 'CAMPassport']/*[local-name() = 'id']">
- <out:value-of select="root/envelope/SOAP-ENV:Envelope/SOAP-ENV:Header/bus:biBusHeader/*[local-name() ='CAM']/*[local-name() = 'CAMPassport']/*[local-name() = 'id']"/>
- </out:when>
- <!-- if its not there and it's not being cleared, see if it is still in the cookie - this really only happens on the logoff page -->
- <out:otherwise>
- <out:variable name="CAMPassportCookie" select="/root/cookies/cookie[@name='cam_passport']"/>
- <out:value-of select="xtsext:camcookie_action('getPassportID', $CAMPassportCookie)"/>
- </out:otherwise>
- </out:choose>
- </out:variable>
- </xsl:template>
- <xsl:template match="pg:common-script">
- <script language="javascript">
- function wsrp_rewrite_getWindowHeight(){
- if( typeof( window.innerHeight ) == 'number' ) {
- return window.innerHeight;
- } else if( document.documentElement && document.documentElement.clientHeight ) {
- return document.documentElement.clientHeight;
- } else if( document.body && document.body.clientHeight ) {
- return document.body.clientHeight;
- }
- }
- function wsrp_rewrite_addEvent(obj, eventName, handler){
- if (obj.attachEvent){
- obj.attachEvent("on"+eventName,handler);
- }
- else if (obj.addEventListener){
- obj.addEventListener(eventName, handler, false);
- }
- }
- function wsrp_rewrite_removeEvent(obj, eventName, handler){
- if (obj.detachEvent){
- obj.detachEvent("on"+eventName,handler);
- }
- else if (obj.removeEventListener){
- obj.removeEventListener(eventName, handler, false);
- }
- }
- function wsrp_rewrite_getTop(obj) {
- var curtop = 0;
- try {
- while (obj.offsetParent) {
- curtop += obj.offsetTop;
- obj = obj.offsetParent;
- }
- } catch (e) {}
- return curtop;
- }
- function wsrp_rewrite_getCalculatedStyle(obj, style){
- var value;
- if (obj.currentStyle){
- value = obj.currentStyle[style];
- }
- else{
- value = document.defaultView.getComputedStyle(obj, null).getPropertyValue(style);
- }
- return value;
- }
-
- function wsrp_rewrite_checkPositionAndOverflow(obj) {
- var isIE = <out:value-of select="$cs-browser = 'ie' "/>;
- var stylePos = wsrp_rewrite_getCalculatedStyle(obj, "position");
- // check the overflow. IE, will position the object relative the the parent that has overflow set.
- var hasOverflow = wsrp_rewrite_getCalculatedStyle(obj, "overflow") != "visible" ||
- wsrp_rewrite_getCalculatedStyle(obj, "overflowX") != "visible" ||
- wsrp_rewrite_getCalculatedStyle(obj, "overflowY") != "visible";
- return stylePos == 'static' && !(hasOverflow && isIE);
- }
-
- function wsrp_rewrite_getTopForAbs(obj) {
-
- var curtop = 0;
- try {
- while (obj.offsetParent) {
- if (wsrp_rewrite_checkPositionAndOverflow(obj)) {
- curtop += obj.offsetTop;
- obj = obj.offsetParent;
- } else break;
- }
- } catch (e) {}
- return curtop;
- }
- function wsrp_rewrite_getLeft(obj) {
- var curleft = 0;
- try {
- while (obj.offsetParent) {
- curleft += obj.offsetLeft
- obj = obj.offsetParent;
- }
- } catch (e) {}
- return curleft;
- }
- function wsrp_rewrite_getLeftForAbs(obj) {
- var curleft = 0;
- try {
- while (obj.offsetParent) {
- if ( wsrp_rewrite_checkPositionAndOverflow(obj)) {
- curleft += obj.offsetLeft
- obj = obj.offsetParent;
- } else break;
- }
- } catch (e) {}
- return curleft;
- }
- var wsrp_rewrite_busyImg = new Image();
- wsrp_rewrite_busyImg.src="<out:value-of select="xtsext:javascriptencode($cs-ui-image-root)"/>progress.gif";
-
- function wsrp_rewrite_showSearchBusy(bShow) {
- var div_results_busy = document.getElementById("wsrp_rewrite_div_results_busy");
-
- if (div_results_busy != null) {
- var div_results = document.getElementById("wsrp_rewrite_div_results_content");
-
- if (div_results == null || div_results.style.display == "none") {
- if (document.getElementById("wsrp_rewrite_div_result_busy_container")){
- div_results = document.getElementById("wsrp_rewrite_div_result_busy_container");
- }
- }
- if (div_results) {
- div_results.style.display = "";
- if (div_results.id == "wsrp_rewrite_div_result_busy_container" && div_results.style.height == "0px") {
- var nNewHeight = document.body.clientHeight - wsrp_rewrite_getTop(div_results);
- div_results.style.height = nNewHeight;
- }
-
- if (bShow){
- div_results_busy.style.display= "";
- document.getElementById("wsrp_rewrite_div_results_busy_img").src = wsrp_rewrite_busyImg.src;
- }
- var newTop = wsrp_rewrite_getTop(div_results) + div_results.offsetHeight/2 - div_results_busy.offsetHeight/2;
- var newLeft = wsrp_rewrite_getLeft(div_results) + div_results .offsetWidth/2 - div_results_busy .offsetWidth/2
- div_results_busy.style.left = newLeft;
- div_results_busy.style.top = newTop;
- if (div_results.id == "wsrp_rewrite_div_result_busy_container") {
- div_results.style.display = "none";
- }
- }
- }
- }
- function wsrp_rewrite_hideSearchBusy() {
- var div_results_busy = document.getElementById("wsrp_rewrite_div_results_busy");
- if (div_results_busy != null) {
- div_results_busy.style.display = "none";
- }
- }
- function wsrp_rewrite_isNewSearchTerms(currentText, previousText) {
- if (previousText.length > 0) {
- var currentTextTerms = currentText.split(" ");
- var previousTextTerms = previousText.split(" ");
- for (var i = 0; i < currentTextTerms.length; i++) {
- var currentTerm = currentTextTerms[i];
- for (var j = 0; j < previousTextTerms.length; j++) {
- if (currentTerm == previousTextTerms[j]) {
- return false;
- }
- }
- }
- }
- return (true);
- }
- </script>
- </xsl:template>
- <xsl:template match="pg:common-popup-script" priority="1">
- <script>
- function wsrp_rewrite_findNextFocusableMenuItem(contentElement, event){
- var el = event.srcElement ? event.srcElement : event.target;
- var evtKey = event.keyCode;
- if (el.nodeName.toLowerCase() == "td"){
- switch (evtKey)
- {
- case 38:
- //up arrow
- var nextParent = el.parentNode.previousElementSibling;
- if (nextParent != null){
- return nextParent.firstChild;
- } else {
- return null;
- }
- case 40:
- //down arrow
- var nextParent = el.parentNode.nextSibling;
- if (nextParent != null){
- return nextParent.firstChild;
- } else {
- return null;
- }
- }
- } else {
- var tdEls = contentElement.getElementsByTagName("td");
- for (var i = 0;i < tdEls.length;i++) {
- var currentTd = tdEls[i];
- var imgEls = currentTd.getElementsByTagName("img");
- var currentImgEl = null;
- if ((imgEls != null)&&(imgEls.length > 0)){
- currentImgEl = imgEls[0];
- if (currentImgEl.src.indexOf() != -1){
- return currentTd;
- }
-
- }
- return tdEls[0];
- }
- }
-
- }
- function wsrp_rewrite_findMenuDiv(theEl){
- var currentChild = theEl;
-
- while (currentChild.nodeName.toLowerCase() != "div")
- {
- var nodeName = currentChild.nodeName.toLowerCase();
- if (nodeName == "body"){
- return true;
- } else {
- currentChild = currentChild.parentNode;
- }
- }
- return currentChild;
- }
- function wsrp_rewrite_menuItemKeyPress(evt, theEl){
- evt = evt != null ? evt : window.event;
- if (evt.keyCode == 13) {
- theEl.onclick(evt);
- var divEl = wsrp_rewrite_findMenuDiv(theEl);
- if (divEl != null){
- console.log(divEl.id);
- wsrp_rewrite_closeMenu(evt, divEl.id);
- }
- return false;
- } else if (evt.keyCode == 27 || evt.keyCode == 9) {
- // Esc Key: Close menu and halt
- // Tab Key: Close menu and continue
- var divEl = wsrp_rewrite_findMenuDiv(theEl);
- if (divEl != null){
- wsrp_rewrite_closeMenu(evt, divEl.id);
- }
- if (evt.keyCode == 9) {
- return true;
- }
- } else if ((evt.keyCode == 38) || (evt.keyCode == 40)) {
- var nextEl = wsrp_rewrite_findNextFocusableMenuItem(theEl, evt);
- if (nextEl != null){nextEl.focus();return true}
-
-
- }
- }
- function wsrp_rewrite_closeMenu(event, id){
- var content = document.getElementById(id);
- var iFrame = document.getElementById(id+"_frame");
- if ((content != null) &&(content.style.display == "")){
- content.style.display='none';
- var closeFoc = document.getElementById(id + "_caption_a");
- if (closeFoc != null){
- closeFoc.focus();
- }
- if (iFrame != null){
- iFrame.style.display='none';
- }
- return;
- }
- }
- function wsrp_rewrite_showMenu(event, id){
-
- var content = document.getElementById(id);
- var iFrame = document.getElementById(id+"_frame");
-
- if (content.style.display == "" || content.style.display == "block"){
- content.style.display='none';
- iFrame.style.display='none';
- return;
- }
-
- var caption = document.getElementById(id + "_caption");
- content.style.top = (wsrp_rewrite_getTopForAbs(caption) + caption.offsetHeight)+"px";
- content.style.left = wsrp_rewrite_getLeftForAbs(caption)+"px";
-
- if (!iFrame) {
- iFrame = document.createElement("iframe");
- iFrame.id = id + "_frame";
- iFrame.src="<out:value-of select="xtsext:javascriptencode($cs-ui-image-root-space)"/>space.gif";
- iFrame.style.borderWidth="0px";
- iFrame.style.position="absolute";
- iFrame.style.display = "none";
- iFrame.setAttribute("role","presentation");
- //Insert the iFrame at the same level as the content div so that positioning and z-order are compatable
- content.parentNode.appendChild(iFrame);
- }
- iFrame.style.top = content.style.top;
- iFrame.style.left = content.style.left;
- iFrame.style.height = content.offsetHeight+"px";
- iFrame.style.width = content.offsetWidth+"px";
- content.style.display = "block";
- iFrame.style.display = "";
- var removeFunction = function(event){
- var target = event.srcElement ? event.srcElement : event.target;
- if (target.id.indexOf(id +"_caption") != -1){
- return;
- }
- wsrp_rewrite_removeEvent(document,"click",removeFunction);
-
- document.getElementById(id).style.display='none';
- iFrame.style.display='none';
- }
- wsrp_rewrite_addEvent(document,"click",removeFunction);
- var focusEl = wsrp_rewrite_findNextFocusableMenuItem(content, event);
-
- if (focusEl != null){
- focusEl.focus();
- }
-
- }
- function wsrp_rewrite_selectMenu(id, value){
- var oldValue = document.getElementById(id+"_input").value;
- var eGif = document.getElementById(id+"_" + oldValue + "_img");
- if (eGif){
- eGif.src ="<out:value-of select="xtsext:javascriptencode($cs-ui-image-root-space)"/>space.gif";
- }
- document.getElementById(id+'_caption_text').innerHTML = document.getElementById(id +'_'+ value +'_a').innerHTML;
- document.getElementById(id+"_input").value = value;
-
- var eGif = document.getElementById(id+"_" + value + "_img");
- if (eGif){
- eGif.src ="<out:value-of select="xtsext:javascriptencode($cs-ui-image-root)"/>checkmark.gif";
- }
- }
-
- </script>
- </xsl:template>
- <xsl:template match="pg:common-tree-script">
- <script language="javascript">
- // Pop up support
- function wsrp_rewrite_table(parent, border, cellpadding, cellspacing,width, className){
- var table = document.createElement("table");
-
- if (className){
- table.className= className;
- }
- table.border= border;
- table.cellPadding = cellpadding;
- table.cellSpacing = cellspacing;
- if (width) {
- table.width = width;
- }
- parent.appendChild(table);
-
- var tbody = document.createElement("tbody");
- table.appendChild (tbody);
-
- return tbody;
- }
- function wsrp_rewrite_tr(parent, id, className){
- return wsrp_rewrite_createHtmlObj(parent, "tr", id, className);
- }
-
- function wsrp_rewrite_td(parent, id, className){
- return wsrp_rewrite_createHtmlObj(parent, "td", id, className);
- }
- function wsrp_rewrite_div(parent, id, className){
- return wsrp_rewrite_createHtmlObj(parent, "div", id, className);
- }
-
- function wsrp_rewrite_text(parent, content){
- var text = document.createTextNode(content);
- parent.appendChild(text);
- return text;
- }
-
- function wsrp_rewrite_createHtmlObj(parent, tag, id, className){
- var obj = document.createElement(tag);
- if (id){
- obj.setAttribute("id", id);
- }
- if (className){
- obj.setAttribute("class", className);
- obj.setAttribute("className", className);
- }
- parent.appendChild(obj);
- return obj;
- }
- // Search support
- var wsrp_rewrite_saFilterUID = new Array();
- var wsrp_rewrite_saFilterName = new Array();
- var wsrp_rewrite_saFilterType = new Array();
- var wsrp_rewrite_saFilterXML = new Array();
-
- var wsrp_rewrite_sCRLF = "\r\n";
- var wsrp_rewrite_ctrl= false;
- function wsrp_rewrite_doFilterSearch(event) {
- wsrp_rewrite_showCategoryList();
-
- // Update hidden input
- document.<out:value-of select="$cs-ui-search-form"/>.cs_filter.value = wsrp_rewrite_getFilterSpecificationXML();
-
- // Do not search when Ctrl key pressed - just change search icon to indicate modified filter
- if (event && event.ctrlKey) {
- if (!wsrp_rewrite_ctrl){
- addEvent(document,'keyup', wsrp_rewrite_keyUpHandler);
- }
- wsrp_rewrite_ctrl = true;
- }
- else {
- <out:value-of select="$cs-ui-callback-function"/>;
- }
- }
- function wsrp_rewrite_treeInit() {
- <out:for-each select="{./pg:filterContext}">
- wsrp_rewrite_saFilterName[wsrp_rewrite_saFilterName.length]="<out:value-of select="xtsext:javascriptencode(Name)"/>";
- wsrp_rewrite_saFilterType[wsrp_rewrite_saFilterType.length]="<out:value-of select="xtsext:javascriptencode(Type)"/>";
- wsrp_rewrite_saFilterXML[wsrp_rewrite_saFilterXML.length]=
- <out:for-each select="Filter">
- "<Filter><out:value-of select="xtsext:javascriptencode(.)"/></Filter>" +
- </out:for-each>
- "";
- wsrp_rewrite_saFilterUID[wsrp_rewrite_saFilterUID.length]="<out:value-of select="xtsext:javascriptencode(UID)"/>";
- wsrp_rewrite_highlightTreeItem("<out:value-of select="xtsext:javascriptencode(UID)"/>");
- </out:for-each>
-
- // Update hidden input
- document.<out:value-of select="$cs-ui-search-form"/>.cs_filter.value = wsrp_rewrite_getFilterSpecificationXML();
- }
-
- function wsrp_rewrite_XMLEncode(sInput) {
-
- if (sInput == null || sInput == false) {
- return "";
- }
- var sOutput = new String(sInput);
- //&
- sOutput = sOutput.replace(/&/g, "&amp;");
- //<
- sOutput = sOutput.replace(/</g, "&lt;");
- //>
- sOutput = sOutput.replace(/>/g, "&gt;");
- //"
- sOutput = sOutput.replace(/"/g, "&quot;");
- //'
- sOutput = sOutput.replace(/'/g, "&apos;");
- return sOutput;
- }
- function wsrp_rewrite_getFilterSpecificationXML() {
- var sFilterXML = "";
- if (wsrp_rewrite_saFilterName.length > 0) {
- sFilterXML = "<filterContext>";
- for (i=0; i < wsrp_rewrite_saFilterName.length; i++) {
- if (wsrp_rewrite_saFilterName[i]!="") {
- sFilterXML += "<FilterSpecification>";
- sFilterXML += "<Name>"+wsrp_rewrite_XMLEncode(wsrp_rewrite_saFilterName[i])+"</Name>";
- sFilterXML += "<Type>"+wsrp_rewrite_XMLEncode(wsrp_rewrite_saFilterType[i])+"</Type>";
- sFilterXML += "<UID>"+wsrp_rewrite_XMLEncode(wsrp_rewrite_saFilterUID[i])+"</UID>";
- if (wsrp_rewrite_saFilterXML[i]!="") {
- sFilterXML += wsrp_rewrite_saFilterXML[i];
- }
- sFilterXML += "</FilterSpecification>";
- }
- }
- sFilterXML += "</filterContext>";
- }
- return sFilterXML;
- }
- <!-- //////////// Manage Tree Selections ///////////////// -->
- function wsrp_rewrite_getTreeItemIndex(id) {
- for (var i=0; i < wsrp_rewrite_saFilterUID.length; i++) {
- if (id==wsrp_rewrite_saFilterUID[i]) {
- return i;
- }
- }
- return -1;
- }
- function wsrp_rewrite_highlightTreeItem(id) {
- var eDiv = document.getElementById("wsrp_rewrite_select_"+id);
- if (eDiv != null) {
- eDiv.className ="<out:value-of select="$cs-ui-selected-category-style"/>";
- wsrp_rewrite_openParentDiv(eDiv);
- }
- return true;
- }
-
- function wsrp_rewrite_unhighlightTreeItem(id) {
- var eDiv = document.getElementById("wsrp_rewrite_select_"+id);
- if (eDiv != null) {
- eDiv.className = "<out:value-of select="$cs-ui-table-text-style"/>";
- return true;
- }
- return false;
- }
- function wsrp_rewrite_openParentDiv(eDiv) {
- for (var eParent=eDiv.parentNode;eParent!=null;eParent=eParent.parentNode) {
- if (eParent.id != null && eParent.id.substr && eParent.id.substr(0,"wsrp_rewrite_show_".length) == "wsrp_rewrite_show_" ) {
- if (eParent.style != null && eParent.style.display == "none") {
- var uid = eParent.id.substr("wsrp_rewrite_show_".length) ;
- wsrp_rewrite_showTreeNode(uid);
- }
- }
- }
- }
-
- var wsrp_rewrite_msDelayFocus = 900;
- var wsrp_rewrite_eSelectedTreeItem = null;
- function wsrp_rewrite_focusTreeItem(id,bScroll) {
- var eDiv = document.getElementById("wsrp_rewrite_select_"+id);
- if (eDiv != null) {
- wsrp_rewrite_eSelectedTreeItem = eDiv;
- setTimeout("wsrp_rewrite_delayFocusTreeItem('"+id.replace(/'/g, "&#39;").replace(/"/g, "\\\"")+"',"+bScroll+")",wsrp_rewrite_msDelayFocus);
- }
- return true;
- }
-
- function wsrp_rewrite_delayFocusTreeItem(id,bScroll) {
- var eDiv = document.getElementById("wsrp_rewrite_select_"+id);
- if (eDiv != null && wsrp_rewrite_eSelectedTreeItem != null && eDiv == wsrp_rewrite_eSelectedTreeItem ) {
- wsrp_rewrite_eSelectedTreeItem = null;
- wsrp_rewrite_doFocusTreeItem(id,bScroll);
- }
- return true;
- }
-
- function wsrp_rewrite_doFocusTreeItem(id,bScroll) {
- var eDiv = document.getElementById("wsrp_rewrite_select_"+id);
- if (eDiv != null) {
- eDiv.className="<out:value-of select="$cs-ui-category-highlight-style"/>";
- }
- return true;
- }
-
- function wsrp_rewrite_unfocusTreeItem(id) {
- wsrp_rewrite_eSelectedTreeItem = null;
- var eDiv = document.getElementById("wsrp_rewrite_select_"+id);
- if (eDiv != null) {
- if (wsrp_rewrite_indexOf(wsrp_rewrite_saFilterUID, id) != -1) {
- eDiv.className="<out:value-of select="$cs-ui-selected-category-style"/>";
- }
- else {
- eDiv.className= "<out:value-of select="$cs-ui-table-text-style"/>";
- }
-
- eDiv.style.borderColor = "white";
- }
- return true;
- }
-
- var wsrp_rewrite_bSelectedAll = false;
- function wsrp_rewrite_focusAllTreeItems() {
- wsrp_rewrite_bSelectedAll = true;
- setTimeout("wsrp_rewrite_delayFocusAllTreeItems()",wsrp_rewrite_msDelayFocus);
- return true;
- }
-
- function wsrp_rewrite_delayFocusAllTreeItems() {
- if (wsrp_rewrite_bSelectedAll==true) {
- wsrp_rewrite_bSelectedAll = false;
- wsrp_rewrite_doFocusAllTreeItems();
- }
- return true;
- }
-
- function wsrp_rewrite_doFocusAllTreeItems() {
- for (i=0; i < wsrp_rewrite_saFilterUID.length; i++) {
- wsrp_rewrite_doFocusTreeItem(wsrp_rewrite_saFilterUID[i],false);
- }
- }
-
- function wsrp_rewrite_unfocusAllTreeItems() {
- wsrp_rewrite_bSelectedAll = false;
- for (i=0; i < wsrp_rewrite_saFilterUID.length; i++) {
- wsrp_rewrite_unfocusTreeItem(wsrp_rewrite_saFilterUID[i]);
- }
- }
-
- function wsrp_rewrite_focusImage(e) {
- e.style.borderColor="#7f7f7f";
- }
- function wsrp_rewrite_unfocusImage(e) {
- e.style.borderColor="white";
- }
-
-
- function wsrp_rewrite_itemOver(e, uid, event) {
- wsrp_rewrite_startToolTipTimer(uid,1000, event);
- if (wsrp_rewrite_indexOf(wsrp_rewrite_saFilterUID, uid) != -1) {
- e.className="<out:value-of select="$cs-ui-selected-category-hover-style"/>";
- }
- else {
- e.className="<out:value-of select="$cs-ui-category-hover-style"/>";
- }
- }
-
- function wsrp_rewrite_itemOut(e, uid) {
- wsrp_rewrite_hideToolTip(uid);
- if (wsrp_rewrite_indexOf(wsrp_rewrite_saFilterUID, uid) != -1) {
- e.className="<out:value-of select="$cs-ui-selected-category-style"/>";
- }
- else {
- e.className="<out:value-of select="$cs-ui-table-text-style"/>";
- }
- }
-
- var wsrp_rewrite_toolTipTimer;
- function wsrp_rewrite_startToolTipTimer(id, delay, event){
- var posx = event.clientX;
- var posy = event.clientY;
- if (wsrp_rewrite_toolTipTimer){
- clearTimeout(wsrp_rewrite_toolTipTimer);
- }
- var f = function(){
- wsrp_rewrite_showToolTip(id, posx, posy);
- }
- wsrp_rewrite_toolTipTimer = setTimeout(f, delay);
- }
-
- function wsrp_rewrite_showToolTip(id, posx,posy) {
- var item = document.getElementById("wsrp_rewrite_select_" + id);
- if (item) {
- var hintBox = document.getElementById("wsrp_rewrite_div_tooltip");
- if (!hintBox) {
- hintBox = wsrp_rewrite_div(document.getElementById("wsrp_rewrite_div_tree_panel") , "wsrp_rewrite_div_tooltip", "<out:value-of select="$cs-ui-tooltip-style"/>");
- hintBox.style.marginRight="10px";
- hintBox.style.marginLeft="10px";
- hintBox.style.display="none";
- hintBox.style.position="absolute";
- hintBox.style.padding="5px";
- hintBox.style.zIndex="9999";
- }
- if (hintBox.style.display == "none"){
- hintBox.innerHTML="";
- var table = wsrp_rewrite_table(hintBox,0,0,0,"100", "<out:value-of select="$cs-ui-table-text-style"/>");
-
- // Criteria - Needed so that tooltip is never empty
- var criteria = item.getAttribute("criteria");
- if (criteria && criteria.length > 0){
- var td = wsrp_rewrite_td(wsrp_rewrite_tr(table));
- td.style.width="400";
- td = wsrp_rewrite_td(wsrp_rewrite_tr(table));
- wsrp_rewrite_text(td, criteria.replace(/ /g," "));
- }
-
- // Description
- var description = item.getAttribute("description");
- if (description && description.length > 0){
- td = wsrp_rewrite_td(wsrp_rewrite_tr(table));
- td.style.paddingTop="5px";
- wsrp_rewrite_text(td,"<xts:string id="IDS_SEARCH_INDEXTREE_DESCRIPTION"/>");
- td = wsrp_rewrite_td(wsrp_rewrite_tr(table));
- wsrp_rewrite_text(td, description);
- }
-
- // Path
- var path = item.getAttribute("path");
- if (path && path.length > 0){
- td = wsrp_rewrite_td(wsrp_rewrite_tr(table));
- td.style.paddingTop="5px";
- wsrp_rewrite_text(td,"<xts:string id="IDS_SEARCH_INDEXTREE_PATH"/>");
- td = wsrp_rewrite_td(wsrp_rewrite_tr(table));
- wsrp_rewrite_text(td, path.replace(/ /g," "));
- }
-
- // Parameter value
- var myParameter = item.getAttribute("parameter");
- if (myParameter && myParameter.length > 0){
- td = wsrp_rewrite_td(wsrp_rewrite_tr(table));
- td.style.paddingTop="5px";
- wsrp_rewrite_text(td,"<xts:string id="IDS_SEARCH_INDEXTREE_PARAMETER"/>");
- td = wsrp_rewrite_td(wsrp_rewrite_tr(table));
- wsrp_rewrite_text(td, myParameter);
- }
- hintBox.style.left = posx + document.body.scrollLeft;
- hintBox.style.top = posy + document.body.scrollTop;
- hintBox.style.display="";
- if (posy + hintBox.offsetHeight > wsrp_rewrite_getWindowHeight()){
- hintBox.style.top = wsrp_rewrite_getWindowHeight() - hintBox.offsetHeight + document.body.scrollTop;
- }
-
- var iFrame = document.getElementById("wsrp_rewrite_div_tooltip_frame");
- if (!iFrame) {
- iFrame = document.createElement("iframe");
- iFrame.id ="wsrp_rewrite_div_tooltip_frame";
- iFrame.style.marginRight="10px";
- iFrame.style.marginLeft="10px";
- iFrame.src="<out:value-of select="xtsext:javascriptencode($cs-ui-image-root-space)"/>space.gif";
- iFrame.style.borderWidth="0px";
- iFrame.style.position="absolute";
- document.getElementById("wsrp_rewrite_div_tree_panel").appendChild(iFrame)
- }
-
- iFrame.style.display = "";
- iFrame.style.top = hintBox.style.top ;
- iFrame.style.left = hintBox.style.left;
- iFrame.style.height = hintBox.offsetHeight;
- iFrame.style.width = hintBox.offsetWidth;
-
- }
- }
- }
- function wsrp_rewrite_hideToolTip(id){
-
- if (wsrp_rewrite_toolTipTimer){
- clearTimeout(wsrp_rewrite_toolTipTimer);
- }
- var iFrame = document.getElementById("wsrp_rewrite_div_tooltip_frame");
- if (iFrame) {
- iFrame.style.display="none";
- }
- var hintBox = document.getElementById("wsrp_rewrite_div_tooltip");
- if (hintBox){
- hintBox.style.display="none";
- }
- }
-
- <!-- //////////// Manage Categories List ///////////////// -->
- function wsrp_rewrite_showCategoryList() {
- if (wsrp_rewrite_saFilterName.length > 0) {
- if (document.getElementById("wsrp_rewrite_search_filter_remove")){
- document.getElementById("wsrp_rewrite_search_filter_remove").style.display="";
- }
- if (document.getElementById("wsrp_rewrite_search_filter_text")){
- var sFilterText = "";
- for (i=0; i < wsrp_rewrite_saFilterName.length; i++) {
- sFilterText += "&#160;&#160;";
- sFilterText += "<span style='cursor:pointer;' ";
- var filterUID = wsrp_rewrite_saFilterUID[i]
- if (wsrp_rewrite_saFilterUID.length>=i) {
- sFilterText += " onmouseover='javascript:wsrp_rewrite_focusTreeItem(";
- sFilterText += '"';
- sFilterText += filterUID;
- sFilterText += '"';
- sFilterText +=",true);'";
-
- sFilterText += " onmouseout='javascript:wsrp_rewrite_unfocusTreeItem(";
- sFilterText += '"';
- sFilterText += filterUID;
- sFilterText += '"';
- sFilterText +=");'";
- } sFilterText += ">";
- sFilterText += wsrp_rewrite_saFilterName[i];
- sFilterText += "</span>";
-
- sFilterText += "<a href='#' title='<xts:string id="IDS_SEARCH_INDEXTREE_CRITERIA_TOOLTIP_REMOVE_CATEGORY"/>' ";
- if (wsrp_rewrite_saFilterUID.length>=i) {
- sFilterText += " onclick='javascript:wsrp_rewrite_removeCategory(";
- sFilterText += '"';
- sFilterText += filterUID;
- sFilterText += '"';
- sFilterText +=",event);'";
- }
- sFilterText += "><img src='<out:value-of select="$cs-ui-image-root"/>action_delete.gif' align='absmiddle' border='0' style='border:1px solid;border-color:white;' width='16' height='16'";
- sFilterText += " onmouseover='javascript:wsrp_rewrite_focusImage(this);'";
- sFilterText += " onmouseout='javascript:wsrp_rewrite_unfocusImage(this)'";
- sFilterText += "/></a>";
- sFilterText += "<br/>";
- }
- document.getElementById("wsrp_rewrite_search_filter_text").innerHTML = sFilterText;
- document.getElementById("wsrp_rewrite_div_search_filters").style.display="";
- }
- }
- else {
- if (document.getElementById("wsrp_rewrite_search_filter_remove")) {
- document.getElementById("wsrp_rewrite_search_filter_remove").style.display="none";
- document.getElementById("wsrp_rewrite_search_filter_text").innerHTML = "";
- document.<out:value-of select="$cs-ui-search-form"/>.cs_filter.value = "";
- document.getElementById("wsrp_rewrite_div_search_filters").style.display="none";
- }
- }
-
- <out:value-of select="$cs-ui-resize-function"/>;
- }
- function wsrp_rewrite_removeCategory(id, event) {
- wsrp_rewrite_unhighlightTreeItem(id);
- wsrp_rewrite_removeFilterByIndex(wsrp_rewrite_getTreeItemIndex(id));
- wsrp_rewrite_doFilterSearch(event);
- }
- function wsrp_rewrite_removeAllCategories(event) {
- for (var i=0; i < wsrp_rewrite_saFilterUID.length; i++) {
- wsrp_rewrite_unhighlightTreeItem(wsrp_rewrite_saFilterUID[i]);
- }
- wsrp_rewrite_saFilterUID.length = 0;
- wsrp_rewrite_saFilterName.length = 0;
- wsrp_rewrite_saFilterXML.length = 0;
- wsrp_rewrite_doFilterSearch(event);
- }
- function wsrp_rewrite_clearParentFilter(uid) {
- var eDiv = document.getElementById("wsrp_rewrite_select_"+uid);
- if (eDiv!=null) {
- for (var eParent=eDiv.parentNode;eParent!=null;eParent=eParent.parentNode) {
- if (eParent.id != null && eParent.id.substr && eParent.id.substr(0,"wsrp_rewrite_show_".length) == "wsrp_rewrite_show_" ) {
- var id = eParent.id.substr("wsrp_rewrite_show_".length) ;
- wsrp_rewrite_unhighlightTreeItem(id);
- wsrp_rewrite_removeFilterByIndex(wsrp_rewrite_getTreeItemIndex(id));
- break;
- }
- }
- }
- }
- function wsrp_rewrite_clearChilldFilters(uid) {
- var eDiv = document.getElementById("wsrp_rewrite_select_"+uid);
- if (eDiv != null) {
- for (var i=0;;i++) {
- id = uid+"_"+i;
- var eChild = document.getElementById("wsrp_rewrite_select_"+id);
- if (eChild==null) {
- break;
- }
- wsrp_rewrite_unhighlightTreeItem(id);
- wsrp_rewrite_removeFilterByIndex(wsrp_rewrite_getTreeItemIndex(id));
- }
- }
- }
-
- <!-- //////////// Add Filter ///////////////// -->
- function wsrp_rewrite_addCategoryFilter(id, name, sFilterXML,event) {
- wsrp_rewrite_addFilterEntry(id,name,"category",sFilterXML,event);
- }
- function wsrp_rewrite_addParameterFilter(id, name, sFilterXML,event) {
- wsrp_rewrite_addFilterEntry(id, name, "parameter",sFilterXML,event);
- }
- function wsrp_rewrite_keyUpHandler(event) {
- wsrp_rewrite_doFilterSearch();
- wsrp_rewrite_removeEvent(document, "keyup", wsrp_rewrite_keyUpHandler);
- }
- function wsrp_rewrite_addFilterEntry(id,sName,sType,sFilterXML,event) {
- wsrp_rewrite_hideToolTip(id);
- // DEBUG alt-click
- if (event && event.altKey) {
- sAlert = "=== DETAILS ==="+wsrp_rewrite_sCRLF;
- sAlert += sName+wsrp_rewrite_sCRLF;
- sAlert += "Type: "+sType+", Selection Id: "+id+wsrp_rewrite_sCRLF;
- sAlert += "Filters:"+wsrp_rewrite_sCRLF;
- nCount = 0;
- nStart = 0;
- sAlertFilters = "";
- nPos = sFilterXML.indexOf("<Filter>");
- while (nPos >= 0) {
- ++nCount;
- nPos += 8;
- nStart = sFilterXML.indexOf("</Filter>",nPos);
- if (nStart >= 0) {
- sAlertFilters += sFilterXML.substring(nPos,nStart)+wsrp_rewrite_sCRLF;
- nPos = sFilterXML.indexOf("<Filter>",nStart+9);
- }
- else {
- sAlertFilters += sFilterXML.substr(nPos);
- nPos = -1;
- }
- }
-
- if (sAlertFilters!="") {
- sAlert += sAlertFilters;
- }
-
- alert(sAlert);
- return false;
- }
- // Test for item already selected
- if (wsrp_rewrite_getTreeItemIndex(id)>=0) {
- if (event && event.ctrlKey){
- wsrp_rewrite_unhighlightTreeItem(id);
- wsrp_rewrite_removeFilterByIndex(wsrp_rewrite_getTreeItemIndex(id));
- wsrp_rewrite_doFilterSearch(event);
- }
- return false;
- }
- // Remove parent filter
- wsrp_rewrite_clearParentFilter(id);
- // Remove child filters
- wsrp_rewrite_clearChilldFilters(id);
-
- // Set filter arrays
- wsrp_rewrite_saFilterUID[wsrp_rewrite_saFilterUID.length]=id;
- wsrp_rewrite_saFilterName[wsrp_rewrite_saFilterName.length]=sName;
- wsrp_rewrite_saFilterType[wsrp_rewrite_saFilterType.length]=sType;
- wsrp_rewrite_saFilterXML[wsrp_rewrite_saFilterXML.length]=wsrp_rewrite_XMLEncode(sFilterXML);
-
- // Show in tree and do search again
- wsrp_rewrite_highlightTreeItem(id);
- wsrp_rewrite_doFilterSearch(event);
- }
- function wsrp_rewrite_removeFilterByIndex(n) {
- var nSize = wsrp_rewrite_saFilterUID.length;
- if (n < 0 || n >= nSize)
- return;
-
- for (var i=n; i < nSize-1; i++) {
- wsrp_rewrite_saFilterUID[i]=wsrp_rewrite_saFilterUID[i+1];
- wsrp_rewrite_saFilterName[i]=wsrp_rewrite_saFilterName[i+1];
- wsrp_rewrite_saFilterXML[i]=wsrp_rewrite_saFilterXML[i+1];
- }
- --nSize;
- wsrp_rewrite_saFilterUID.length = nSize;
- wsrp_rewrite_saFilterName.length = nSize;
- wsrp_rewrite_saFilterXML.length = nSize;
- }
- <!-- //////////// Open/close tree nodes ///////////////// -->
- function wsrp_rewrite_removeFromArrayByIndex(a, n) {
- var nSize = a.length;
- if (n < 0 || n >= nSize)
- return a;
-
- for (var i=n; i < nSize-1; i++) {
- a[i]=a[i+1];
- }
- --nSize;
- a.length = nSize;
-
- return a;
- }
-
- function wsrp_rewrite_indexOf(array, id) {
- for (var i=0; i < array.length; i++) {
- if (id==array[i]) {
- return i;
- }
- }
- return -1;
- }
-
- function wsrp_rewrite_showTreeNode(id) {
- // Show content
- var eDiv = document.getElementById("wsrp_rewrite_show_"+id);
- if (eDiv!=null) {
- eDiv.style.display = "";
- }
- }
-
- function wsrp_rewrite_scrollTreeItemIntoView(id) {
- var eDiv = document.getElementById("wsrp_rewrite_select_"+id);
- if (eDiv != null) {
- // Scroll into view only if not already in view
- var dt = document.getElementById("wsrp_rewrite_div_tree");
- // alert(dt.offsetHeight+", "+dt.scrollTop+", "+eDiv.offsetTop+", "+eDiv.offsetHeight+", "+(eDiv.offsetTop > dt.scrollTop+dt.offsetHeight || eDiv.offsetTop < dt.scrollTop ));
- if (eDiv.offsetTop > dt.scrollTop+dt.offsetHeight || eDiv.offsetTop < dt.scrollTop) {
- dt.scrollTop = eDiv.offsetTop;
- }
- }
- }
- function wsrp_rewrite_toggleTreePanel() {
- var eDiv = document.getElementById("wsrp_rewrite_div_tree_panel");
- if (eDiv!=null) {
- // Hide if node already visible
- if (eDiv.style.display==null || eDiv.style.display=="") {
- wsrp_rewrite_hideTreePanel(eDiv);
- }
- // Otherwise show the node
- else {
- wsrp_rewrite_showTreePanel(eDiv);
- }
- }
- <out:value-of select="$cs-ui-resize-function"/>;
- }
- function wsrp_rewrite_showTreePanel(eDiv) {
- eDiv.style.display = "";
- var eGif = document.getElementById("img_tree_hide_show");
- if (eGif!=null) {
- eGif.src = "<out:value-of select="xtsext:javascriptencode($cs-ui-image-root)"/>panel_hide.gif";
- }
- }
- function wsrp_rewrite_hideTreePanel(eDiv) {
- eDiv.style.display = "none";
- var eGif = document.getElementById("img_tree_hide_show");
- if (eGif!=null) {
- eGif.src = "<out:value-of select="xtsext:javascriptencode($cs-ui-image-root)"/>panel_show.gif";
- }
- }
- </script>
- <script language="javascript">
- <xsl:if test="@caller = 'cc'">
- function wsrp_rewrite_resizeHandler(evt) {
- <out:if test="{pg:isIndexSearch}">
- var div_results = document.getElementById("wsrp_rewrite_div_results");
- if (div_results != null) {
- var nBottomSpace = 10; <!-- TODO -->
- var isIE = <out:value-of select="$browser = 'ie'"/>;
- var eBody = document.body;
- var div_results_content = document.getElementById("wsrp_rewrite_div_results_content");
- var div_results_contentHeader = document.getElementById("wsrp_rewrite_div_results_contentHeader");
- var div_results_contentBody = document.getElementById("wsrp_rewrite_div_results_contentBody");
- var nNewHeight = eBody.clientHeight - wsrp_rewrite_getTop(div_results_content) -
- nBottomSpace;
- if (!div_results_content && !div_results_contentBody) {
- return;
- }
- <!-- adjust height of the results content div (right pane) -->
- if (nNewHeight > 0) {
- if (isIE)
- div_results_content.style.height = nNewHeight;
- else
- div_results_contentBody.style.height = nNewHeight - div_results_contentHeader.offsetHeight;
- }
- <!-- adjust height of the tree div (left pane) -->
- nNewHeight -= (isIE ? 2 : 0); <!-- TODO -->
- var div_tree = document.getElementById("wsrp_rewrite_div_tree");
- var div_tree_header = document.getElementById("wsrp_rewrite_div_tree_header");
- if (nNewHeight > div_tree_header.offsetHeight) {
- div_tree.style.height = nNewHeight - div_tree_header.offsetHeight;
- <!-- adjust heights of tree and filter sections -->
- if (document.getElementById("wsrp_rewrite_div_search_filters").style.display != "none") {
- var div_tree_panel_height = nNewHeight -
- div_tree_header.offsetHeight -
- document.getElementById("wsrp_rewrite_div_filter_header").offsetHeight -
- document.getElementById("wsrp_rewrite_div_filter_footer").offsetHeight;
- var tree_div_section = Math.ceil(div_tree_panel_height * 0.75);
- var filters_div_section = Math.floor(div_tree_panel_height * 0.25);
- tree_div_section = tree_div_section > 0 ? tree_div_section : 1; <!-- TODO -->
- filters_div_section = filters_div_section > 0 ? filters_div_section : 1; <!-- TODO -->
- document.getElementById("wsrp_rewrite_div_tree").style.height = tree_div_section;
- document.getElementById("wsrp_rewrite_div_search_filters_content").style.height = filters_div_section;
- }
- <!-- adjust the width of the selection criteria container -->
- var div_tree_width = document.getElementById("wsrp_rewrite_div_tree") ? document.getElementById("wsrp_rewrite_div_tree").offsetWidth : 0;
- if (div_tree_width > 0) {
- document.getElementById("wsrp_rewrite_div_selection_criteria_header").style.width = div_tree_width;
- }
- }
- }
- wsrp_rewrite_showSearchBusy(false); //force repositioning
- </out:if>
- }
- </xsl:if>
- </script>
- <script language="javascript">
- wsrp_rewrite_treeInit();
- <xsl:if test="@caller = 'cc'">
- <out:if test="{pg:isIndexSearch}">
- wsrp_rewrite_addEvent(window,'load', wsrp_rewrite_resizeHandler);
- wsrp_rewrite_addEvent(window,'resize', wsrp_rewrite_resizeHandler);
- wsrp_rewrite_resizeHandler();
- </out:if>
- </xsl:if>
- <!-- preload some images -->
- var wsrp_rewrite_img_action_delete = new Image();
- wsrp_rewrite_img_action_delete.src = "<out:value-of select="xtsext:javascriptencode($cs-ui-image-root)"/>action_delete.gif";
-
- wsrp_rewrite_showCategoryList();
- </script>
- </xsl:template>
- <xsl:template match="pg:commonSupportTemplates">
- <out:template name="init-open-list">
- <out:param name="open-list"/>
- <out:param name="function-name"/>
- <out:variable name="open-node">
- <out:choose>
- <out:when test="contains($open-list, '|')">
- <out:value-of select="substring-before($open-list,'|')"/>
- </out:when>
- <out:otherwise>
- <out:value-of select="$open-list"/>
- </out:otherwise>
- </out:choose>
- </out:variable>
- <out:value-of select="$function-name"/>(decodeURIComponent("<out:value-of select="xtsext:javascriptencode($open-node)"/>"));
- <out:if test="contains($open-list, '|')">
- <out:call-template name="init-open-list">
- <out:with-param name="open-list" select="substring-after($open-list,'|')"/>
- <out:with-param name="function-name" select="$function-name"/>
- </out:call-template>
- </out:if>
- </out:template>
- <out:template name="renderTreeItem">
- <out:variable name="uid" select="@UID"/>
- <out:variable name="name"><out:value-of disable-output-escaping="yes" select="@Name"/></out:variable>
- <out:variable name="path"><out:value-of disable-output-escaping="yes" select="@Path"/></out:variable>
- <out:variable name="filters"><out:for-each select="FilterSpecification/Filter"><Filter><out:value-of select="."/></Filter></out:for-each></out:variable>
- <out:variable name="description"><out:for-each select="FilterSpecification/Filter[@Description != '']"><out:value-of select="@Description"/> </out:for-each></out:variable>
- <tr>
- <td nowrap="nowrap" style="padding-left:3px;padding-top:1px;padding-bottom:1px">
- <a href="#" style="text-decoration:none;">
- <span class="{'{$cs-ui-table-text-style}'}" align="absmiddle" style="padding-top:2px;padding-bottom:2px;padding-left:2px;padding-right:2px;white-space:nowrap">
- <out:attribute name="id">wsrp_rewrite_select_<out:value-of select="$uid"/></out:attribute>
- <out:attribute name="criteria"><out:value-of select="$name"/></out:attribute>
- <out:attribute name="description"><out:value-of select="$description"/></out:attribute>
- <out:attribute name="path"><out:value-of select="$path"/></out:attribute>
- <out:attribute name="onmouseover">wsrp_rewrite_itemOver(this, <out:value-of select="$uid"/>, event);</out:attribute>
- <out:attribute name="onmouseout">wsrp_rewrite_itemOut(this, <out:value-of select="$uid"/>);</out:attribute>
- <out:choose>
- <out:when test="@Type='category'">
- <out:attribute name="onclick">wsrp_rewrite_addCategoryFilter(<out:value-of select="$uid"/>,"<out:value-of select="xtsext:javascriptencode($name)"/>","<out:value-of select="xtsext:javascriptencode($filters)"/>",event);</out:attribute>
- <img width="16" height="16" border="0" align="absmiddle"><out:attribute name="src"><out:value-of select="$cs-ui-image-root"/>icon_dataitem.gif</out:attribute></img>
- </out:when>
- <out:otherwise>
- <out:attribute name="onclick">wsrp_rewrite_addParameterFilter(<out:value-of select="$uid"/>,"<out:value-of select="xtsext:javascriptencode($name)"/>","<out:value-of select="xtsext:javascriptencode($filters)"/>",event);</out:attribute>
- <img width="16" height="16" border="0" align="absmiddle"><out:attribute name="src"><out:value-of select="$cs-ui-image-root"/>icon_member.gif</out:attribute></img>
- </out:otherwise>
- </out:choose>
- <img width="5" height="1" border="0" alt=""><out:attribute name="src"><out:value-of select="$cs-ui-image-root-space"/>space.gif</out:attribute></img>
- <out:value-of select="$name"/><br/>
- </span>
- </a>
- </td>
- </tr>
- </out:template>
- </xsl:template>
- <xsl:template match="pg:popup" priority="1">
- <out:if test="true()">
- <xsl:variable name="id" select="@id"/>
- <xsl:variable name="name" select="@name"/>
- <xsl:variable name="on-change" select="@onChange"/>
- <xsl:variable name="select" select="@select"/>
- <xsl:variable name="icon" select="@icon"/>
- <xsl:variable name="items" select="pg:item"/>
- <out:variable name="selected-value">
- <out:choose>
- <xsl:for-each select="$items">
- <xsl:variable name="condition">
- <xsl:choose>
- <xsl:when test="@condition">
- <xsl:value-of select="@condition"/>
- </xsl:when>
- <xsl:otherwise>true()</xsl:otherwise>
- </xsl:choose>
- </xsl:variable>
- <out:when test="{$select} = '{@value}' and {$condition}">
- <xsl:value-of select="@value"/>
- </out:when>
- </xsl:for-each>
- <xsl:for-each select="$items">
- <xsl:variable name="condition">
- <xsl:choose>
- <xsl:when test="@condition">
- <xsl:value-of select="@condition"/>
- </xsl:when>
- <xsl:otherwise>true()</xsl:otherwise>
- </xsl:choose>
- </xsl:variable>
- <out:when test="{$condition}">
- <xsl:value-of select="@value"/>
- </out:when>
- </xsl:for-each>
- </out:choose>
- </out:variable>
- <out:variable name="selected-text">
- <out:choose>
- <xsl:for-each select="$items">
- <out:when test="$selected-value = '{@value}'">
- <xsl:apply-templates select="*|text()"/>
- </out:when>
- </xsl:for-each>
- </out:choose>
- </out:variable>
- <xsl:if test="not(string(@caller) = 'cc')">
- <input id="{$id}_input" type="hidden" name="{$name}" value="{'{'}$selected-value{'}'}"/>
- </xsl:if>
- <nobr id="{$id}_caption" class="{'{$cs-popup-menu-caption}'}" style="border-width:0px">
- <a tabindex="0" role="button" style="text-decoration:underline;cursor:pointer" id="{$id}_caption_a" onclick="window.status='';wsrp_rewrite_showMenu(event, '{$id}')" onmouseover="window.status='';return true;" onmouseout="window.status='';return true;" aria-haspopup="true">
- <out:attribute name="onkeypress">javascript:if( event.keyCode==13 || event.keyCode==32 || event.charCode==32 )<xsl:text>{</xsl:text>this.onclick(event); return false;<xsl:text>}</xsl:text> return true;</out:attribute>
- <xsl:choose>
- <xsl:when test="@labelId">
- <label id="{$id}_caption_text" for="{@labelId}">
- <out:value-of select="$selected-text"/>
- </label>
- </xsl:when>
- <xsl:otherwise>
- <span id="{$id}_caption_text">
- <out:value-of select="$selected-text"/>
- </span>
- </xsl:otherwise>
- </xsl:choose>
- <xsl:if test="$icon">
- <img alt="" title="" id="{$id}_caption_img" src="{'{'}$cs-ui-skin-shared-images{'}'}{$icon}" align="absmiddle" border="0"/>
- </xsl:if>
- </a>
- </nobr>
- <div id="{$id}" class="{'{$cs-popup-menu}'}" style="position:absolute;display:none;width:auto;z-index:2;padding:2px" role="menu" onblur="javascript:wsrp_rewrite_closeMenu(event, '{$id}')">
- <out:attribute name="aria-label">
- <xts:string id="IDS_SEARCH_TYPE_MENU_NAME"/>
- </out:attribute>
- <table cellpadding="0" cellspacing="0" border="0" role="presentation" >
- <xsl:for-each select="$items">
- <xsl:variable name="condition">
- <xsl:choose>
- <xsl:when test="@condition">
- <xsl:value-of select="@condition"/>
- </xsl:when>
- <xsl:otherwise>true()</xsl:otherwise>
- </xsl:choose>
- </xsl:variable>
- <out:if test="{$condition}">
- <tr>
- <td tabindex="-1" role="menuitem" class="{'{$cs-popup-menu-item}'}" style="border-width:0px; padding:2px;cursor:pointer;width:100%" onclick="wsrp_rewrite_selectMenu('{$id}','{@value}');{$on-change} " onmouseover="this.className='{'{$cs-popup-menu-item-hover}'}'" onmouseout="this.className='{'{$cs-popup-menu-item}'}'" onkeypress="javascript:wsrp_rewrite_menuItemKeyPress(event, this)" >
- <nobr>
- <out:choose>
- <out:when test="$selected-value = '{@value}'">
- <img id="{$id}_{@value}_img" height="16" width="16" alt="" title="" src="{'{'}$cs-ui-image-root{'}'}checkmark.gif" align="absmiddle" border="0"/>
- </out:when>
- <out:otherwise>
- <img id="{$id}_{@value}_img" height="16" width="16" alt="" title="" src="{'{'}$cs-ui-image-root-space{'}'}space.gif" align="absmiddle" border="0"/>
- </out:otherwise>
- </out:choose>
- <a tabindex="-1" role="presentation" id="{$id}_{@value}_a" style="text-decoration:underline" onclick="window.status='';return true; " onmouseover="window.status='';return true;" onmouseout="window.status='';return true;">
- <xsl:apply-templates select="*|text()"/>
- </a>
- <xsl:if test="@descriptionID">
- <a tabindex="-1" role="presentation" id="{$id}_{@value}_a_desc" style="text-decoration:underline" onclick="window.status='';return true; " onmouseover="window.status='';return true;" onmouseout="window.status='';return true;">
-  <xts:string id="{@descriptionID}"/>
- </a>
- </xsl:if>
- </nobr>
- </td>
- </tr>
- </out:if>
- </xsl:for-each>
- </table>
- </div>
- </out:if>
- </xsl:template>
- <xsl:template match="pg:busyIndicator">
- <div id="wsrp_rewrite_div_results_busy" style="display:none;position:absolute;">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr>
- <td style="border:1px outset;background-color:#ffffff" nowrap="nowrap">
- <table border="0" cellpadding="10" cellspacing="0" role="presentation">
- <tr>
- <td class="{'{'}$cs-ui-table-text-style{'}'}" valign="top" nowrap="nowrap">
- <img width="48" height="48" border="0" alt="" id="wsrp_rewrite_div_results_busy_img">
- <out:attribute name="src">
- <out:value-of select="$cs-ui-image-root-space"/>space.gif</out:attribute>
- </img>
- </td>
- <td class="{'{'}$cs-ui-table-text-style{'}'}" valign="middle" nowrap="nowrap">
- <xts:string id="IDS_SEARCH_INDEXTREE_SEARCHING"/>   
- </td>
- </tr>
- </table>
- </td>
- </tr>
- </table>
- </div>
- </xsl:template>
- <xsl:template match="pg:treeResult">
- <out:variable name="cs-ui-tree" select="{./pg:treeContent}"/>
- <table border="0" cellpadding="0" cellspacing="0" height="100%" width="100%" style="-moz-user-select:none;" onselectstart="return false">
- <tr style="padding-top:0px">
- <td valign="top" height="100%">
- <div id="wsrp_rewrite_div_tree_panel" style="width:100%">
- <table cellpadding="0" cellspacing="0" border="0" style="border:1px solid;border-color:black;">
- <xsl:attribute name="width"><xsl:value-of select="@width"/></xsl:attribute>
- <!-- tree header section -->
- <tr id="wsrp_rewrite_div_tree_header" style="height:24px" class="{'{$cs-ui-table-header-style}'}">
- <td nowrap="nowrap" class="{'{$cs-ui-table-title-style}'}">
- <out:text/>  <xts:string id="IDS_SEARCH_INDEXTREE_CRITERIA_NARROWBY"/>
- <out:text/>
- </td>
- </tr>
- <!-- tree body section -->
- <tr>
- <td nowrap="nowrap">
- <div id="wsrp_rewrite_div_tree" style="overflow:auto;width:{@width}">
- <table cellpadding="0" cellspacing="0" border="0" width="100%">
- <tr>
- <td valign="top">
- <table cellpadding="0" cellspacing="0" border="0" width="100%">
- <!-- Show subject tree -->
- <tr>
- <td valign="top" style="padding-right:5px">
- <div id="wsrp_rewrite_show_" class="{'{$cs-ui-table-text-style}'}">
- <out:choose>
- <out:when test="count($cs-ui-tree/*)=0">
- <out:attribute name="style">text-align:center;padding-top:40px</out:attribute>
- <out:text/><xts:string id="IDS_SEARCH_INDEXTREE_NO_ENTRIES"/><out:text/>
- </out:when>
- <out:otherwise>
- <out:for-each select="$cs-ui-tree/*">
- <out:call-template name="renderTreeItem"/>
- </out:for-each>
- </out:otherwise>
- </out:choose>
- </div>
- </td>
- </tr>
- </table>
- </td>
- </tr>
- </table>
- </div>
- </td>
- </tr>
- <!-- criteria (category de/selection) section -->
- <tr id="wsrp_rewrite_div_search_filters" style="display:none">
- <td>
- <div width="100%">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr id="wsrp_rewrite_div_filter_header" style="height:20px" class="{'{$cs-ui-table-header-style}'}">
- <td id="wsrp_rewrite_div_selection_criteria_header" nowrap="nowrap">
- <span class="{'{$cs-ui-table-title-style}'}">
- <out:text/>  <xts:string id="IDS_SEARCH_INDEXTREE_CRITERIA_SELECTED"/>  <out:text/>
- </span>
- <xsl:variable name="menu">
- <pg:popup id="wsrp_rewrite_allFilters" name="all_filters" icon="dropdown_arrow.gif" select="$cs-ui-all-filters" caller="{@caller}" onChange="{'{$cs-ui-callback-function}'}">
- <pg:item value="true" descriptionID="IDS_SEARCH_INDEXTREE_FILTERS_ALL_DESC">
- <xts:string id="IDS_SEARCH_INDEXTREE_FILTERS_ALL"/>
- </pg:item>
- <pg:item value="false" descriptionID="IDS_SEARCH_INDEXTREE_FILTERS_ANY_DESC">
- <xts:string id="IDS_SEARCH_INDEXTREE_FILTERS_ANY"/>
- </pg:item>
- </pg:popup>
- </xsl:variable>
- <span style="font-weight:normal;">
- <xsl:apply-templates select="$menu/pg:popup"/>
- </span>
- </td>
- </tr>
- <tr>
- <td>
- <div id="wsrp_rewrite_div_search_filters_content" style="overflow:auto;height:45px;width:{@width}">
- <span class="{'{$cs-ui-table-text-style}'}" valign="top" id="wsrp_rewrite_search_filter_text" style="white-space:nowrap"/>
- </div>
- </td>
- </tr>
- <tr id="wsrp_rewrite_div_filter_footer" style="width:100%;height:18px" class="{'{$cs-ui-table-header-style}'}">
- <td class="{'{$cs-ui-table-text-style}'}" style="padding-right:2px;" valign="middle" align="right" nowrap="nowrap">
- <span id="wsrp_rewrite_search_filter_remove" style="display:none;font-weight:normal;" align="right">
- <a style="text-decoration:underline;" href="#" onclick="javascript:wsrp_rewrite_removeAllCategories(event)">
- <out:attribute name="title">
- <xts:string id="IDS_SEARCH_INDEXTREE_CRITERIA_TOOLTIP_REMOVE_ALL_CATEGORIES"/>
- </out:attribute>
- <xts:string id="IDS_SEARCH_INDEXTREE_CRITERIA_REMOVEALL"/>
- </a>
- </span>
- </td>
- </tr>
- </table>
- </div>
- </td>
- </tr>
- </table>
- </div>
- </td>
- <xsl:if test="not(@noSeparator='true')">
- <td valign="top" width="12" nowrap="nowrap">
- <img id="img_tree_hide_show" border="0" style="cursor:hand;" onclick="javascript:wsrp_rewrite_toggleTreePanel();">
- <out:attribute name="src">
- <out:value-of select="$cs-ui-image-root"/>panel_hide.gif</out:attribute>
- <out:attribute name="alt">
- <xts:string id="IDS_SEARCH_INDEXTREE_CRITERIA_TOOLTIP_HIDESHOW_TREE"/>
- </out:attribute>
- </img>
- </td>
- </xsl:if>
- </tr>
- </table>
- </xsl:template>
-
- <!-- The main engine -->
- <xsl:template match="*">
- <xsl:copy>
- <xsl:copy-of select="@*"/>
- <xsl:apply-templates/>
- </xsl:copy>
- </xsl:template>
- </xsl:stylesheet>
|