function isChrome() {
    return Boolean(window.chrome);
}

function rawPopUp(url, width, height, features, target) {

   var u = url;

   var t = target;

   var w = width;

   var h = height;

   var f = features;



  // return if there is no URL

  if (u == null) {

      return false;

  }

   // set up default values if none passed

   t = t ? t : "_blank";

   w = w ? w : 750;

   h = h ? h : 550;

   f = f ? f : "resizable=yes,scrollbars=yes,toolbar=no";

   // find middle x and y position of the screen

   var left = (window.screen.width - w)/2;

   var top  = (window.screen.height - h)/2;

   var newWin=null;

   var settings = 'width=' + w + ',height=' + h + ',top=' + top + ',left=' + left + ', ' + f;

   newWin = window.open(u, t, settings);

   //newWin.focus();
   
   

   return(newWin);

}

function openResult(href) {
  // appending referrer for webtrends
  // opens documents from anywhere on the site
  href = href + "&ref=g_SiteLink";
  return openResultHome(href);
}

function openResultHome(href) {
  // opens documents from homepage with no referrer (the referrer is hardcoded in hpg temp)
  rawPopUp(href,'798','569','resizable=no,scrollbars=yes,menubar=yes,resizable=yes,status=yes','_blank');
  return false;
}

function showConfirmationMessage(message) {

	var confirmationWindowUrl = "/gp/jsps/confirmation/confirmation.jsp?refreshParent=N&message=" + encodeURIComponent(message) + "&closeParentWindow=N";
	rawPopUp(confirmationWindowUrl, '600', '100', 'resizable=no,scrollbars=no,toolbar=no');
	return false;

}

//This method will be used by any action that needs to not only close the confirmation window
//but also the window that opened the confirmation window.
function showConfirmationMessageAndCloseCurrentWindow(message, refreshParent) {
	var confirmationWindowUrl = "";
	//alert("In showConfirmationMessageAndCloseCurrentWindow refreshParent = " + refreshParent);

	if(refreshParent)
	{
		confirmationWindowUrl = "/gp/jsps/confirmation/confirmation.jsp?closeParentWindow=Y&refreshParent=Y&message=" + encodeURIComponent(message);
	}
	else
	{
		confirmationWindowUrl = "/gp/jsps/confirmation/confirmation.jsp?closeParentWindow=Y&refreshParent=N&message=" + encodeURIComponent(message);

	}
	//alert("confirmationWindowUrl = " + confirmationWindowUrl );

	rawPopUp(confirmationWindowUrl, '600', '100', 'resizable=no,scrollbars=no,toolbar=no');
	return false;

}

function getCSSStyle(ruleName) {               // Return requested style obejct
   ruleName=ruleName.toLowerCase();                       // Convert test string to lower case.
   if (document.styleSheets) {                            // If browser can play with stylesheets
      for (var i=0; i<document.styleSheets.length; i++) { // For each stylesheet
         var styleSheet=document.styleSheets[i];          // Get the current Stylesheet
         var ii=0;                                        // Initialize subCounter.
         var cssRule=false;                               // Initialize cssRule.
         do {                                             // For each rule in stylesheet
            if (styleSheet.cssRules) {                    // Browser uses cssRules?
               cssRule = styleSheet.cssRules[ii];         // Yes --Mozilla Style
            } else {                                      // Browser usses rules?
               cssRule = styleSheet.rules[ii];            // Yes IE style.
            }                                             // End IE check.
            if (cssRule&&cssRule.selectorText)  {         // If we found a rule...
               if (cssRule.selectorText.toLowerCase()==ruleName) { //  match ruleName?
                  return cssRule;                         // return the style object.
               }                                          // End found rule name
            }                                             // end found cssRule
            ii++;                                         // Increment sub-counter
         } while (cssRule)                                // end While loop
      }                                                   // end For loop
   }                                                      // end styleSheet ability check
   return false;                                          // we found NOTHING!
}


var mouseXPositionOnMove = 0;
var mouseYPositionOnMove = 0;

document.onmouseup = getMousePositionOnMove;

var windowCenterLeft = 0;
var windowCenterTop = 0;

function getScreenCenterPosition(layerWidth, layerHeight) {
	var widthAfterScrollOffset = parseInt(f_clientWidth());
	var	heightAfterScrollOffset = parseInt(f_clientHeight());
 
	windowCenterLeft = parseInt(((widthAfterScrollOffset) / 2 +  f_scrollLeft()) - (layerWidth/2));
    windowCenterTop = parseInt(((heightAfterScrollOffset) / 2 +  f_scrollTop()) - (layerHeight/2));

}

function f_clientWidth() {
	return f_filterResults (
		window.innerWidth ? window.innerWidth : 0,
		document.documentElement ? document.documentElement.clientWidth : 0,
		document.body ? document.body.clientWidth : 0
	);
}
function f_clientHeight() {
	return f_filterResults (
		window.innerHeight ? window.innerHeight : 0,
		document.documentElement ? document.documentElement.clientHeight : 0,
		document.body ? document.body.clientHeight : 0
	);
}
function f_scrollLeft() {
	return f_filterResults (
		window.pageXOffset ? window.pageXOffset : 0,
		document.documentElement ? document.documentElement.scrollLeft : 0,
		document.body ? document.body.scrollLeft : 0
	);
}
function f_scrollTop() {
	return f_filterResults (
		window.pageYOffset ? window.pageYOffset : 0,
		document.documentElement ? document.documentElement.scrollTop : 0,
		document.body ? document.body.scrollTop : 0
	);
}

function f_filterResults(n_win, n_docel, n_body) {
	var n_result = n_win ? n_win : 0;
	if (n_docel && (!n_result || (n_result > n_docel)))
		n_result = n_docel;
	return n_body && (!n_result || (n_result > n_body)) ? n_body : n_result;
}


function getMousePositionOnMove(e) {

	if (navigator.appName.indexOf("Microsoft") >= 0) {
		mouseXPositionOnMove = e.clientX + document.body.scrollLeft;
		mouseYPositionOnMove = e.clientY + document.body.scrollTop;
	} else {
		mouseXPositionOnMove = e.pageX;
		mouseYPositionOnMove = e.pageY;
	}
}


//This function will be used to show a layer. It also takes in a javascript function call string
//that will be used to populate the html inside the layer and will also contain the logic to
//determine the size of the layer.
function showGlobalLayer(javascriptFunctionString, layerDivIdToBeShown, arrayOfFormNamesInLayer, layerWidth, layerHeight) {

	var pageWidth = 0;

	//Hardcoding this as automatic size determination is not working in IE 6.
	var pageHeight = 4000;

     pageWidth = document.body.offsetWidth;

     if (pageWidth == 0) {
    		pageWidth = document.body.scrollWidth;
     }

	var transparentDivLayerClassHandle = getCSSStyle(".transparentDivLayer");
	document.getElementById('transparentBackgroundDiv').className = "transparentDivLayer";
	if(isChrome()) {
		var tbd = document.getElementById('transparentBackgroundDiv');
		tbd.style.width = pageWidth;
		tbd.style.height = pageHeight;
	} else {
		transparentDivLayerClassHandle.style.width = pageWidth;
		transparentDivLayerClassHandle.style.height = pageHeight;
	}
	
	hideAllSelectBoxes();
	showSelectBoxesInLayerdForm(arrayOfFormNamesInLayer);

	//If the javascript function string is not empty then call the javascript function string.
	if (javascriptFunctionString != "") {
		eval(javascriptFunctionString);
	}

	var globallayerDivClassHandle = getCSSStyle(".globalLayerDiv");
	document.getElementById('globalLayerDiv').className = "globalLayerDiv";
	if(isChrome()) {
		var gdch = document.getElementById('globalLayerDiv');
		gdch.style.width = layerWidth;
		gdch.style.height = layerHeight;
		gdch.style.left = mouseXPositionOnMove;
		gdch.style.top = mouseYPositionOnMove;
	} else {
		globallayerDivClassHandle.style.width = layerWidth;
		globallayerDivClassHandle.style.height = layerHeight;
		globallayerDivClassHandle.style.left = mouseXPositionOnMove;
		globallayerDivClassHandle.style.top = mouseYPositionOnMove;
	}
	

}

//This function will be used to show a layer. It also takes in a javascript function call string
//that will be used to populate the html inside the layer and will also contain the logic to
//determine the size of the layer. This function takes the exta bollean paramaeter to black out/no blackout the backgroud screen
// blackOutBackgroundScreen is a parameter for making the background screen disable or enable. If this parameter is true then blackout the background screen and if it false then it will not balck out the background screen.
// layerPosition is a parameter used to position the layer. If the value is 1 then the layer will be positioned to the center of the screen. If value is 2 then laye will be positioned to the mouse click location.
//example: showGlobalLayerParam('getHtmlForGlobalLayerDiv("http://webhost.gartner.com/html/mypage/weeklyPicksLayer.html")', 'globalLayerDiv', formNamesWithSelectBoxesInLayer, 420, 200, 'true',1);

function showGlobalLayerParam(javascriptFunctionString, layerDivIdToBeShown, arrayOfFormNamesInLayer, layerWidth, layerHeight, blackOutBackgroundScreen, layerPosition) {

	var pageWidth = 0;

	//Hardcoding this as automatic size determination is not working in IE 6.
	var pageHeight = 5000;

     pageWidth = document.body.offsetWidth;

     if (pageWidth == 0) {
    		pageWidth = document.body.scrollWidth;
     }

	var transparentDivLayerClassHandle = getCSSStyle(".transparentDivLayer");
	if(blackOutBackgroundScreen == 'true')
	{
	  document.getElementById('transparentBackgroundDiv').className = "transparentDivLayer";
	}
	if(isChrome()) {
		// 11-Jan-2012
		// Commenting below lines, as it is not required for Chrome 
		// and to solve the Inbox accept/delcine layer on Chrome
		//var tbd = document.getElementById('transparentBackgroundDiv');
		//tbd.style.width = pageWidth;
		//tbd.style.height = pageHeight;
	} else {
		transparentDivLayerClassHandle.style.width = pageWidth;
		transparentDivLayerClassHandle.style.height = pageHeight;
	}
	hideAllSelectBoxes();
	

	showSelectBoxesInLayerdForm(arrayOfFormNamesInLayer);

	//If the javascript function string is not empty then call the javascript function string.
	if (javascriptFunctionString != "") {
		eval(javascriptFunctionString);
	}

	var globallayerDivClassHandle = getCSSStyle(".globalLayerDiv");
	document.getElementById('globalLayerDiv').className = "globalLayerDiv";
	if(isChrome()) {
		var gbd = document.getElementById('globalLayerDiv');
		gbd.style.width = layerWidth;
		gbd.style.height = layerHeight;
	} else {
		globallayerDivClassHandle.style.width = layerWidth;
		globallayerDivClassHandle.style.height = layerHeight;
	}
	
	if(layerPosition == 1)
	{
		getScreenCenterPosition(layerWidth, layerHeight);
		if(isChrome()) {
			var gbd = document.getElementById('globalLayerDiv');
			gbd.style.left = windowCenterLeft;
			gbd.style.top = windowCenterTop;
		} else {
			globallayerDivClassHandle.style.left = windowCenterLeft;
			globallayerDivClassHandle.style.top = windowCenterTop;
		}
	}
	if(layerPosition == 2)
	{
		if(isChrome()) {
			var gbd = document.getElementById('globalLayerDiv');
			gbd.style.left = mouseXPositionOnMove;
			gbd.style.top = mouseYPositionOnMove;
		} else {
			globallayerDivClassHandle.style.left = mouseXPositionOnMove;
			globallayerDivClassHandle.style.top = mouseYPositionOnMove;
		}
	}

}


//This function will be used to show a layer. It also takes in a javascript function call string
//that will be used to populate the html inside the layer and will also contain the logic to
//determine the size of the layer. This function takes the exta bollean paramaeter to black out/no blackout the backgroud screen
// blackOutBackgroundScreen is a parameter for making the background screen disable or enable. If this parameter is true then blackout the background screen and if it false then it will not balck out the background screen.
// layerPosition is a parameter used to position the layer. If the value is 1 then the layer will be positioned to the center of the screen. If value is 2 then laye will be positioned to the mouse click location.
//example: showPeerLayerParam('getHtmlForGlobalLayerDiv("http://webhost.gartner.com/html/mypage/weeklyPicksLayer.html")', 'globalLayerDiv', formNamesWithSelectBoxesInLayer, 420, 200, 'true',1);



//This function will be used to hide a layer. This function takes in a div id for the layer to be
//hidden. It also hides the transparent background div that gave the layer effect.
function hideGlobalLayer(layerDivIdToBeHidden, arrayOfFormNamesInLayer) {

	showAllSelectBoxes();
	hideSelectBoxesInLayerdForm(arrayOfFormNamesInLayer);

	//Hide the layer.
	if (layerDivIdToBeHidden == 'globalLayerDiv') {
		document.getElementById(layerDivIdToBeHidden).className = "emptyLayerClass";
		document.getElementById(layerDivIdToBeHidden).innerHTML = '';
	}

	//Remove the transparent background and reset the style classes.
	document.getElementById('transparentBackgroundDiv').className = "emptyLayerClass";

	formNamesWithSelectBoxesInLayer = [];
}

function checkIfBoxIsSelected(checkboxObject) {

	if (checkboxObject.checked) {
		return true;
	}

	return false;
}

// This function detects the browser type and version -- Specific to IE 6
function IE6browserCheck() {	
	//return ((navigator.appName == 'Microsoft Internet Explorer' && Math.floor(Number(/MSIE ([^;]*);/.exec(navigator.appVersion)[1])) == 6));
	//Same issue is happning in IE 7 so just checking the browser type for IE
	return (navigator.appName == 'Microsoft Internet Explorer');
}


function hideAllTextBoxes() {
	//Need to hide the text boxes for IE 6 as they are not embedded components.
	if(IE6browserCheck())
	{
		textLists = document.getElementsByTagName('input');
		for (var counter=0; counter<textLists.length; counter++) {
				if(textLists[counter].getAttribute('type')=='text' && !(textLists[counter].getAttribute('id') == 'txtSearch')){
					textLists[counter].style.visibility = 'hidden';
				}
			}
	}
	return false;
}
function showAllTextBoxes() {
	//Need to re-show all the text boxes that were hidden.
	if(IE6browserCheck())
	{
		textLists = document.getElementsByTagName('input');
		for (var counter=0; counter<textLists.length; counter++) {
				if(textLists[counter].getAttribute('type')=='text' && !(textLists[counter].getAttribute('id') == 'txtSearch')){
					textLists[counter].style.visibility = 'visible';
				}
			}
	}
	return false;
}

function hideAllSelectBoxes() {
	//Need to hide the select boxes for IE 6 as they are not embedded components.
	selectLists = document.getElementsByTagName('select');
	for (var counter=0; counter<selectLists.length; counter++) {
		if(!(selectLists[counter].getAttribute('id') == 'productChoiceSelectID'))
			{
    			selectLists[counter].style.visibility = 'hidden';
			}
			
    	}
	return false;
}

function showSelectBoxesInLayerdForm(arrayOfFormNamesInLayer) {
	//Show all the select boxes in the layer itself.
    	for (var i = 0; i<arrayOfFormNamesInLayer.length; i++) {
    		var formObject = eval('document.' + arrayOfFormNamesInLayer[i]);
    		var selectListsOnLayer = formObject.getElementsByTagName('select');
    		for (var j = 0; j<selectListsOnLayer.length; j++) {
    			selectListsOnLayer[j].style.visibility = 'visible';
    		}
    	}
	return false;
}


function showAllSelectBoxes() {
	//Need to re-show all the select boxes that were hidden.
	selectLists = document.getElementsByTagName('select');
	for (var counter=0; counter<selectLists.length; counter++) {
    			selectLists[counter].style.visibility = 'visible';
    	}
	return false;
}

function hideSelectBoxesInLayerdForm(arrayOfFormNamesInLayer) {

    	//Hide all the select boxes in the layer itself.
    	for (var i = 0; i<arrayOfFormNamesInLayer.length; i++) {
    		var formObject = eval('document.' + arrayOfFormNamesInLayer[i]);
    		var selectListsOnLayer = formObject.getElementsByTagName('select');
    		for (var j = 0; j<selectListsOnLayer.length; j++) {
    			selectListsOnLayer[j].style.visibility = 'hidden';
    		}
    	}
	return false;
}

function getProductChoiceDropDown(gcomHomepage) {
	var pageLocationDD = window.location.href;
	var isHttps=false;
	if(gcomHomepage.indexOf('http://') == -1) {
		gcomHomepage = "http://" + gcomHomepage;
	}
	if(pageLocationDD.indexOf('https://') != -1) {
	isHttps=true; 
	}
	function getProductChoiceDropDownAfterDelay() { 
		var productChoiceSelectObj = document.getElementById("productChoiceSelectID");
		var returnParam = "gcomHomepage=" + gcomHomepage;
		if(productChoiceSelectObj.options.length <= 1) {
			// Get options from ajax call..
			var productChoiceUrl = "chooseProduct.do?method=getProductChoiceDropDownOptionsAsJSON&gcomUserId=" + jsGcomUserId;
			var transformedURL = gatewayUrlForAddToLibrary + productChoiceUrl;
			var functionName = "processProductChoiceItems";
			if(isHttps) {
				transformedURL=transformedURL+"&sslenabled=y";
			}
			//GetDataWithReturnParams(transformedURL, functionName, '', returnParam);
			GetDataWithReturnParamsUsingGET(transformedURL, functionName, '', returnParam);
		}		
	}
	// trigger call after 500 milli seconds delay
	setTimeout(getProductChoiceDropDownAfterDelay,500);
}

function processProductChoiceItems(productChoiceJSONObject, returnParam) {
	// Null out existing options
	var productChoiceSelectObj = document.getElementById("productChoiceSelectID");
	while(productChoiceSelectObj.hasChildNodes()) {
		//productChoiceSelectObj.options[0] = null;
		productChoiceSelectObj.removeChild(productChoiceSelectObj.firstChild);
	}
	var optGroup  = "";
	var objOption = "";
	//Default gcomHomepage to www, just in case...
	var gcomHomepage = "http://www.gartner.com/?expHomePage=wcw";
	
	if(returnParam.indexOf('=') > -1) {
		var index = returnParam.indexOf('=') + 1;
		gcomHomepage = returnParam.substring(index, returnParam.length);
	}
	
	if(productChoiceJSONObject.productChoiceSelectItems.length > 0) {
		objOption = document.createElement("option");
		objOption.innerHTML = "Select a Gartner site";
		objOption.value = "";
		productChoiceSelectObj.appendChild(objOption);

		for(var i=0; i < productChoiceJSONObject.productChoiceSelectItems.length; i++) {
			var groupLabel = productChoiceJSONObject.productChoiceSelectItems[i].GROUP_LABEL;
			var groupPages = productChoiceJSONObject.productChoiceSelectItems[i].GROUP_PAGES;

			optGroup = document.createElement('optgroup');
			optGroup.label = groupLabel;
			productChoiceSelectObj.appendChild(optGroup);

			for(var j=0; j < groupPages.length; j++) {
				var page_hp_cd = groupPages[j].HP_CD;
				var page_desc  = groupPages[j].HP_DESC;

				objOption = document.createElement("option");
				objOption.innerHTML = "&nbsp;&nbsp;" + page_desc;
				objOption.value = page_hp_cd;
				productChoiceSelectObj.appendChild(objOption);
			}
		} // end for

		optGroup = document.createElement('optgroup');
		optGroup.label = "Classic gartner.com";
		productChoiceSelectObj.appendChild(optGroup);
		objOption = document.createElement("option");
		objOption.innerHTML = "&nbsp;&nbsp;Classic gartner.com";
		objOption.value = gcomHomepage;
		productChoiceSelectObj.appendChild(objOption);
	}

	productChoiceSelectObj.options[0].selected = true;
}


//Dojo related stuff
var djConfig = "parseOnLoad: true, isDebug: true, debugAtAllCosts: true, useXDomain: true, xdWaitSeconds: 10";

/*
	Copyright (c) 2004-2008, The Dojo Foundation
	All Rights Reserved.

	Licensed under the Academic Free License version 2.1 or above OR the
	modified BSD license. For more information on Dojo licensing, see:

		http://dojotoolkit.org/book/dojo-book-0-9/introduction/licensing
*/

/*
	This is a compiled version of Dojo, built for deployment and not for
	development. To get an editable version, please visit:

		http://dojotoolkit.org

	for documentation and information on getting the source.
*/

(function(){var _1=null;if((_1||(typeof djConfig!="undefined"&&djConfig.scopeMap))&&(typeof window!="undefined")){var _2="",_3="",_4="",_5={},_6={};_1=_1||djConfig.scopeMap;for(var i=0;i<_1.length;i++){var _8=_1[i];_2+="var "+_8[0]+" = {}; "+_8[1]+" = "+_8[0]+";"+_8[1]+"._scopeName = '"+_8[1]+"';";_3+=(i==0?"":",")+_8[0];_4+=(i==0?"":",")+_8[1];_5[_8[0]]=_8[1];_6[_8[1]]=_8[0];}eval(_2+"dojo._scopeArgs = ["+_4+"];");dojo._scopePrefixArgs=_3;dojo._scopePrefix="(function("+_3+"){";dojo._scopeSuffix="})("+_4+")";dojo._scopeMap=_5;dojo._scopeMapRev=_6;}(function(){if(!this["console"]){this.console={log:function(){}};}var cn=["assert","count","debug","dir","dirxml","error","group","groupEnd","info","profile","profileEnd","time","timeEnd","trace","warn","log"];var i=0,tn;while((tn=cn[i++])){if(!console[tn]){(function(){var _c=tn+"";console[_c]=function(){var a=Array.apply({},arguments);a.unshift(_c+":");console.log(a.join(" "));};})();}}if(typeof dojo=="undefined"){this.dojo={_scopeName:"dojo",_scopePrefix:"",_scopePrefixArgs:"",_scopeSuffix:"",_scopeMap:{},_scopeMapRev:{}};}var d=dojo;if(typeof dijit=="undefined"){this.dijit={_scopeName:"dijit"};}if(typeof dojox=="undefined"){this.dojox={_scopeName:"dojox"};}if(!d._scopeArgs){d._scopeArgs=[dojo,dijit,dojox];}d.global=this;d.config={isDebug:false,debugAtAllCosts:false};if(typeof djConfig!="undefined"){for(var _f in djConfig){d.config[_f]=djConfig[_f];}}var _10=["Browser","Rhino","Spidermonkey","Mobile"];var t;while((t=_10.shift())){d["is"+t]=false;}dojo.locale=d.config.locale;var rev="$Rev: 13707 $".match(/\d+/);dojo.version={major:1,minor:1,patch:1,flag:"",revision:rev?+rev[0]:999999,toString:function(){with(d.version){return major+"."+minor+"."+patch+flag+" ("+revision+")";}}};if(typeof OpenAjax!="undefined"){OpenAjax.hub.registerLibrary(dojo._scopeName,"http://dojotoolkit.org",d.version.toString());}dojo._mixin=function(obj,_14){var _15={};for(var x in _14){if(_15[x]===undefined||_15[x]!=_14[x]){obj[x]=_14[x];}}if(d["isIE"]&&_14){var p=_14.toString;if(typeof p=="function"&&p!=obj.toString&&p!=_15.toString&&p!="\nfunction toString() {\n    [native code]\n}\n"){obj.toString=_14.toString;}}return obj;};dojo.mixin=function(obj,_19){for(var i=1,l=arguments.length;i<l;i++){d._mixin(obj,arguments[i]);}return obj;};dojo._getProp=function(_1c,_1d,_1e){var obj=_1e||d.global;for(var i=0,p;obj&&(p=_1c[i]);i++){if(i==0&&this._scopeMap[p]){p=this._scopeMap[p];}obj=(p in obj?obj[p]:(_1d?obj[p]={}:undefined));}return obj;};dojo.setObject=function(_22,_23,_24){var _25=_22.split("."),p=_25.pop(),obj=d._getProp(_25,true,_24);return obj&&p?(obj[p]=_23):undefined;};dojo.getObject=function(_28,_29,_2a){return d._getProp(_28.split("."),_29,_2a);};dojo.exists=function(_2b,obj){return !!d.getObject(_2b,false,obj);};dojo["eval"]=function(_2d){return d.global.eval?d.global.eval(_2d):eval(_2d);};d.deprecated=d.experimental=function(){};})();(function(){var d=dojo;d.mixin(d,{_loadedModules:{},_inFlightCount:0,_hasResource:{},_modulePrefixes:{dojo:{name:"dojo",value:"."},doh:{name:"doh",value:"../util/doh"},tests:{name:"tests",value:"tests"}},_moduleHasPrefix:function(_2f){var mp=this._modulePrefixes;return !!(mp[_2f]&&mp[_2f].value);},_getModulePrefix:function(_31){var mp=this._modulePrefixes;if(this._moduleHasPrefix(_31)){return mp[_31].value;}return _31;},_loadedUrls:[],_postLoad:false,_loaders:[],_unloaders:[],_loadNotifying:false});dojo._loadUriAndCheck=function(uri,_34,cb){var ok=false;try{ok=this._loadUri(uri,cb);}catch(e){console.error("failed loading "+uri+" with error: "+e);}return !!(ok&&this._loadedModules[_34]);};dojo.loaded=function(){this._loadNotifying=true;this._postLoad=true;var mll=d._loaders;this._loaders=[];for(var x=0;x<mll.length;x++){try{mll[x]();}catch(e){throw e;console.error("dojo.addOnLoad callback failed: "+e,e);}}this._loadNotifying=false;if(d._postLoad&&d._inFlightCount==0&&mll.length){d._callLoaded();}};dojo.unloaded=function(){var mll=this._unloaders;while(mll.length){(mll.pop())();}};var _3a=function(arr,obj,fn){if(!fn){arr.push(obj);}else{if(fn){var _3e=(typeof fn=="string")?obj[fn]:fn;arr.push(function(){_3e.call(obj);});}}};dojo.addOnLoad=function(obj,_40){_3a(d._loaders,obj,_40);if(d._postLoad&&d._inFlightCount==0&&!d._loadNotifying){d._callLoaded();}};dojo.addOnUnload=function(obj,_42){_3a(d._unloaders,obj,_42);};dojo._modulesLoaded=function(){if(d._postLoad){return;}if(d._inFlightCount>0){console.warn("files still in flight!");return;}d._callLoaded();};dojo._callLoaded=function(){if(typeof setTimeout=="object"||(dojo.config.useXDomain&&d.isOpera)){if(dojo.isAIR){setTimeout(function(){dojo.loaded();},0);}else{setTimeout(dojo._scopeName+".loaded();",0);}}else{d.loaded();}};dojo._getModuleSymbols=function(_43){var _44=_43.split(".");for(var i=_44.length;i>0;i--){var _46=_44.slice(0,i).join(".");if((i==1)&&!this._moduleHasPrefix(_46)){_44[0]="../"+_44[0];}else{var _47=this._getModulePrefix(_46);if(_47!=_46){_44.splice(0,i,_47);break;}}}return _44;};dojo._global_omit_module_check=false;dojo._loadModule=dojo.require=function(_48,_49){_49=this._global_omit_module_check||_49;var _4a=this._loadedModules[_48];if(_4a){return _4a;}var _4b=this._getModuleSymbols(_48).join("/")+".js";var _4c=(!_49)?_48:null;var ok=this._loadPath(_4b,_4c);if(!ok&&!_49){throw new Error("Could not load '"+_48+"'; last tried '"+_4b+"'");}if(!_49&&!this._isXDomain){_4a=this._loadedModules[_48];if(!_4a){throw new Error("symbol '"+_48+"' is not defined after loading '"+_4b+"'");}}return _4a;};dojo.provide=function(_4e){_4e=_4e+"";return (d._loadedModules[_4e]=d.getObject(_4e,true));};dojo.platformRequire=function(_4f){var _50=_4f.common||[];var _51=_50.concat(_4f[d._name]||_4f["default"]||[]);for(var x=0;x<_51.length;x++){var _53=_51[x];if(_53.constructor==Array){d._loadModule.apply(d,_53);}else{d._loadModule(_53);}}};dojo.requireIf=function(_54,_55){if(_54===true){var _56=[];for(var i=1;i<arguments.length;i++){_56.push(arguments[i]);}d.require.apply(d,_56);}};dojo.requireAfterIf=d.requireIf;dojo.registerModulePath=function(_58,_59){d._modulePrefixes[_58]={name:_58,value:_59};};if(typeof dojo.config["useXDomain"]=="undefined"){dojo.config.useXDomain=true;}dojo.registerModulePath("dojo","http://o.aolcdn.com/dojo/1.1.1/dojo");dojo.registerModulePath("dijit","http://o.aolcdn.com/dojo/1.1.1/dijit");dojo.registerModulePath("dojox","http://o.aolcdn.com/dojo/1.1.1/dojox");dojo.requireLocalization=function(_5a,_5b,_5c,_5d){d.require("dojo.i18n");d.i18n._requireLocalization.apply(d.hostenv,arguments);};var ore=new RegExp("^(([^:/?#]+):)?(//([^/?#]*))?([^?#]*)(\\?([^#]*))?(#(.*))?$");var ire=new RegExp("^((([^:]+:)?([^@]+))@)?([^:]*)(:([0-9]+))?$");dojo._Url=function(){var n=null;var _a=arguments;var uri=[_a[0]];for(var i=1;i<_a.length;i++){if(!_a[i]){continue;}var _64=new d._Url(_a[i]+"");var _65=new d._Url(uri[0]+"");if(_64.path==""&&!_64.scheme&&!_64.authority&&!_64.query){if(_64.fragment!=n){_65.fragment=_64.fragment;}_64=_65;}else{if(!_64.scheme){_64.scheme=_65.scheme;if(!_64.authority){_64.authority=_65.authority;if(_64.path.charAt(0)!="/"){var _66=_65.path.substring(0,_65.path.lastIndexOf("/")+1)+_64.path;var _67=_66.split("/");for(var j=0;j<_67.length;j++){if(_67[j]=="."){if(j==_67.length-1){_67[j]="";}else{_67.splice(j,1);j--;}}else{if(j>0&&!(j==1&&_67[0]=="")&&_67[j]==".."&&_67[j-1]!=".."){if(j==(_67.length-1)){_67.splice(j,1);_67[j-1]="";}else{_67.splice(j-1,2);j-=2;}}}}_64.path=_67.join("/");}}}}uri=[];if(_64.scheme){uri.push(_64.scheme,":");}if(_64.authority){uri.push("//",_64.authority);}uri.push(_64.path);if(_64.query){uri.push("?",_64.query);}if(_64.fragment){uri.push("#",_64.fragment);}}this.uri=uri.join("");var r=this.uri.match(ore);this.scheme=r[2]||(r[1]?"":n);this.authority=r[4]||(r[3]?"":n);this.path=r[5];this.query=r[7]||(r[6]?"":n);this.fragment=r[9]||(r[8]?"":n);if(this.authority!=n){r=this.authority.match(ire);this.user=r[3]||n;this.password=r[4]||n;this.host=r[5];this.port=r[7]||n;}};dojo._Url.prototype.toString=function(){return this.uri;};dojo.moduleUrl=function(_6a,url){var loc=d._getModuleSymbols(_6a).join("/");if(!loc){return null;}if(loc.lastIndexOf("/")!=loc.length-1){loc+="/";}var _6d=loc.indexOf(":");if(loc.charAt(0)!="/"&&(_6d==-1||_6d>loc.indexOf("/"))){loc=d.baseUrl+loc;}return new d._Url(loc,url);};})();dojo.provide("dojo._base._loader.loader_xd");dojo._xdReset=function(){this._isXDomain=dojo.config.useXDomain||false;this._xdTimer=0;this._xdInFlight={};this._xdOrderedReqs=[];this._xdDepMap={};this._xdContents=[];this._xdDefList=[];};dojo._xdReset();dojo._xdCreateResource=function(_6e,_6f,_70){var _71=_6e.replace(/(\/\*([\s\S]*?)\*\/|\/\/(.*)$)/mg,"");var _72=[];var _73=/dojo.(require|requireIf|provide|requireAfterIf|platformRequire|requireLocalization)\(([\w\W]*?)\)/mg;var _74;while((_74=_73.exec(_71))!=null){if(_74[1]=="requireLocalization"){eval(_74[0]);}else{_72.push("\""+_74[1]+"\", "+_74[2]);}}var _75=[];_75.push(dojo._scopeName+"._xdResourceLoaded({\n");if(_72.length>0){_75.push("depends: [");for(var i=0;i<_72.length;i++){if(i>0){_75.push(",\n");}_75.push("["+_72[i]+"]");}_75.push("],");}_75.push("\ndefineResource: function("+dojo._scopePrefixArgs+"){");if(!dojo.config["debugAtAllCosts"]||_6f=="dojo._base._loader.loader_debug"){_75.push(_6e);}_75.push("\n}, resourceName: '"+_6f+"', resourcePath: '"+_70+"'});");return _75.join("");};dojo._xdIsXDomainPath=function(_77){var _78=_77.indexOf(":");var _79=_77.indexOf("/");if(_78>0&&_78<_79){return true;}else{var url=this.baseUrl;_78=url.indexOf(":");_79=url.indexOf("/");if(_78>0&&_78<_79&&(!location.host||url.indexOf("http://"+location.host)!=0)){return true;}}return false;};dojo._loadPath=function(_7b,_7c,cb){var _7e=this._xdIsXDomainPath(_7b);this._isXDomain|=_7e;var uri=((_7b.charAt(0)=="/"||_7b.match(/^\w+:/))?"":this.baseUrl)+_7b;try{return ((!_7c||this._isXDomain)?this._loadUri(uri,cb,_7e,_7c):this._loadUriAndCheck(uri,_7c,cb));}catch(e){console.debug(e);return false;}};dojo._loadUri=function(uri,cb,_82,_83){if(this._loadedUrls[uri]){return 1;}if(this._isXDomain&&_83&&_83!="dojo.i18n"){this._xdOrderedReqs.push(_83);if(_82||uri.indexOf("/nls/")==-1){this._xdInFlight[_83]=true;this._inFlightCount++;}if(!this._xdTimer){if(dojo.isAIR){this._xdTimer=setInterval(function(){dojo._xdWatchInFlight();},100);}else{this._xdTimer=setInterval(dojo._scopeName+"._xdWatchInFlight();",100);}}this._xdStartTime=(new Date()).getTime();}if(_82){var _84=uri.lastIndexOf(".");if(_84<=0){_84=uri.length-1;}var _85=uri.substring(0,_84)+".xd";if(_84!=uri.length-1){_85+=uri.substring(_84,uri.length);}if(dojo.isAIR){_85=_85.replace("app:/","/");}var _86=document.createElement("script");_86.type="text/javascript";_86.src=_85;if(!this.headElement){this._headElement=document.getElementsByTagName("head")[0];if(!this._headElement){this._headElement=document.getElementsByTagName("html")[0];}}this._headElement.appendChild(_86);}else{var _87=this._getText(uri,null,true);if(_87==null){return 0;}if(this._isXDomain&&uri.indexOf("/nls/")==-1&&_83!="dojo.i18n"){var res=this._xdCreateResource(_87,_83,uri);dojo.eval(res);}else{if(cb){_87="("+_87+")";}else{_87=this._scopePrefix+_87+this._scopeSuffix;}var _89=dojo["eval"](_87+"\r\n//@ sourceURL="+uri);if(cb){cb(_89);}}}this._loadedUrls[uri]=true;this._loadedUrls.push(uri);return true;};dojo._xdResourceLoaded=function(res){var _8b=res.depends;var _8c=null;var _8d=null;var _8e=[];if(_8b&&_8b.length>0){var dep=null;var _90=0;var _91=false;for(var i=0;i<_8b.length;i++){dep=_8b[i];if(dep[0]=="provide"){_8e.push(dep[1]);}else{if(!_8c){_8c=[];}if(!_8d){_8d=[];}var _93=this._xdUnpackDependency(dep);if(_93.requires){_8c=_8c.concat(_93.requires);}if(_93.requiresAfter){_8d=_8d.concat(_93.requiresAfter);}}var _94=dep[0];var _95=_94.split(".");if(_95.length==2){dojo[_95[0]][_95[1]].apply(dojo[_95[0]],dep.slice(1));}else{dojo[_94].apply(dojo,dep.slice(1));}}if(_8e.length==1&&_8e[0]=="dojo._base._loader.loader_debug"){res.defineResource(dojo);}else{var _96=this._xdContents.push({content:res.defineResource,resourceName:res["resourceName"],resourcePath:res["resourcePath"],isDefined:false})-1;for(var i=0;i<_8e.length;i++){this._xdDepMap[_8e[i]]={requires:_8c,requiresAfter:_8d,contentIndex:_96};}}for(var i=0;i<_8e.length;i++){this._xdInFlight[_8e[i]]=false;}}};dojo._xdLoadFlattenedBundle=function(_97,_98,_99,_9a){_99=_99||"root";var _9b=dojo.i18n.normalizeLocale(_99).replace("-","_");var _9c=[_97,"nls",_98].join(".");var _9d=dojo["provide"](_9c);_9d[_9b]=_9a;var _9e=[_97,_9b,_98].join(".");var _9f=dojo._xdBundleMap[_9e];if(_9f){for(var _a0 in _9f){_9d[_a0]=_9a;}}};dojo._xdInitExtraLocales=function(){var _a1=dojo.config.extraLocale;if(_a1){if(!_a1 instanceof Array){_a1=[_a1];}dojo._xdReqLoc=dojo.xdRequireLocalization;dojo.xdRequireLocalization=function(m,b,_a4,_a5){dojo._xdReqLoc(m,b,_a4,_a5);if(_a4){return;}for(var i=0;i<_a1.length;i++){dojo._xdReqLoc(m,b,_a1[i],_a5);}};}};dojo._xdBundleMap={};dojo.xdRequireLocalization=function(_a7,_a8,_a9,_aa){if(dojo._xdInitExtraLocales){dojo._xdInitExtraLocales();dojo._xdInitExtraLocales=null;dojo.xdRequireLocalization.apply(dojo,arguments);return;}var _ab=_aa.split(",");var _ac=dojo.i18n.normalizeLocale(_a9);var _ad="";for(var i=0;i<_ab.length;i++){if(_ac.indexOf(_ab[i])==0){if(_ab[i].length>_ad.length){_ad=_ab[i];}}}var _af=_ad.replace("-","_");var _b0=dojo.getObject([_a7,"nls",_a8].join("."));if(_b0&&_b0[_af]){bundle[_ac.replace("-","_")]=_b0[_af];}else{var _b1=[_a7,(_af||"root"),_a8].join(".");var _b2=dojo._xdBundleMap[_b1];if(!_b2){_b2=dojo._xdBundleMap[_b1]={};}_b2[_ac.replace("-","_")]=true;dojo.require(_a7+".nls"+(_ad?"."+_ad:"")+"."+_a8);}};dojo._xdRealRequireLocalization=dojo.requireLocalization;dojo.requireLocalization=function(_b3,_b4,_b5,_b6){var _b7=this.moduleUrl(_b3).toString();if(this._xdIsXDomainPath(_b7)){return dojo.xdRequireLocalization.apply(dojo,arguments);}else{return dojo._xdRealRequireLocalization.apply(dojo,arguments);}};dojo._xdUnpackDependency=function(dep){var _b9=null;var _ba=null;switch(dep[0]){case "requireIf":case "requireAfterIf":if(dep[1]===true){_b9=[{name:dep[2],content:null}];}break;case "platformRequire":var _bb=dep[1];var _bc=_bb["common"]||[];var _b9=(_bb[dojo.hostenv.name_])?_bc.concat(_bb[dojo.hostenv.name_]||[]):_bc.concat(_bb["default"]||[]);if(_b9){for(var i=0;i<_b9.length;i++){if(_b9[i] instanceof Array){_b9[i]={name:_b9[i][0],content:null};}else{_b9[i]={name:_b9[i],content:null};}}}break;case "require":_b9=[{name:dep[1],content:null}];break;case "i18n._preloadLocalizations":dojo.i18n._preloadLocalizations.apply(dojo.i18n._preloadLocalizations,dep.slice(1));break;}if(dep[0]=="requireAfterIf"||dep[0]=="requireIf"){_ba=_b9;_b9=null;}return {requires:_b9,requiresAfter:_ba};};dojo._xdWalkReqs=function(){var _be=null;var req;for(var i=0;i<this._xdOrderedReqs.length;i++){req=this._xdOrderedReqs[i];if(this._xdDepMap[req]){_be=[req];_be[req]=true;this._xdEvalReqs(_be);}}};dojo._xdEvalReqs=function(_c1){while(_c1.length>0){var req=_c1[_c1.length-1];var res=this._xdDepMap[req];if(res){var _c4=res.requires;if(_c4&&_c4.length>0){var _c5;for(var i=0;i<_c4.length;i++){_c5=_c4[i].name;if(_c5&&!_c1[_c5]){_c1.push(_c5);_c1[_c5]=true;this._xdEvalReqs(_c1);}}}var _c7=this._xdContents[res.contentIndex];if(!_c7.isDefined){var _c8=_c7.content;_c8["resourceName"]=_c7["resourceName"];_c8["resourcePath"]=_c7["resourcePath"];this._xdDefList.push(_c8);_c7.isDefined=true;}this._xdDepMap[req]=null;var _c4=res.requiresAfter;if(_c4&&_c4.length>0){var _c5;for(var i=0;i<_c4.length;i++){_c5=_c4[i].name;if(_c5&&!_c1[_c5]){_c1.push(_c5);_c1[_c5]=true;this._xdEvalReqs(_c1);}}}}_c1.pop();}};dojo._xdClearInterval=function(){clearInterval(this._xdTimer);this._xdTimer=0;};dojo._xdWatchInFlight=function(){var _c9="";var _ca=(dojo.config.xdWaitSeconds||15)*1000;var _cb=(this._xdStartTime+_ca)<(new Date()).getTime();for(var _cc in this._xdInFlight){if(this._xdInFlight[_cc]===true){if(_cb){_c9+=_cc+" ";}else{return;}}}this._xdClearInterval();if(_cb){throw "Could not load cross-domain resources: "+_c9;}this._xdWalkReqs();var _cd=this._xdDefList.length;for(var i=0;i<_cd;i++){var _cf=dojo._xdDefList[i];if(dojo.config["debugAtAllCosts"]&&_cf["resourceName"]){if(!this["_xdDebugQueue"]){this._xdDebugQueue=[];}this._xdDebugQueue.push({resourceName:_cf.resourceName,resourcePath:_cf.resourcePath});}else{_cf.apply(dojo.global,dojo._scopeArgs);}}for(var i=0;i<this._xdContents.length;i++){var _d0=this._xdContents[i];if(_d0.content&&!_d0.isDefined){_d0.content.apply(dojo.global,dojo._scopeArgs);}}this._xdReset();if(this["_xdDebugQueue"]&&this._xdDebugQueue.length>0){this._xdDebugFileLoaded();}else{this._xdNotifyLoaded();}};dojo._xdNotifyLoaded=function(){this._inFlightCount=0;if(this._initFired&&!this._loadNotifying){this._callLoaded();}};if(typeof window!="undefined"){dojo.isBrowser=true;dojo._name="browser";(function(){var d=dojo;if(document&&document.getElementsByTagName){var _d2=document.getElementsByTagName("script");var _d3=/dojo(\.xd)?\.js(\W|$)/i;for(var i=0;i<_d2.length;i++){var src=_d2[i].getAttribute("src");if(!src){continue;}var m=src.match(_d3);if(m){if(!d.config.baseUrl){d.config.baseUrl=src.substring(0,m.index);}var cfg=_d2[i].getAttribute("djConfig");if(cfg){var _d8=eval("({ "+cfg+" })");for(var x in _d8){dojo.config[x]=_d8[x];}}break;}}}d.baseUrl=d.config.baseUrl;var n=navigator;var dua=n.userAgent;var dav=n.appVersion;var tv=parseFloat(dav);d.isOpera=(dua.indexOf("Opera")>=0)?tv:0;var idx=Math.max(dav.indexOf("WebKit"),dav.indexOf("Safari"),0);if(idx){d.isSafari=parseFloat(dav.split("Version/")[1])||((parseFloat(dav.substr(idx+7))>=419.3)?3:2)||2;}d.isAIR=(dua.indexOf("AdobeAIR")>=0)?1:0;d.isKhtml=(dav.indexOf("Konqueror")>=0||d.isSafari)?tv:0;d.isMozilla=d.isMoz=(dua.indexOf("Gecko")>=0&&!d.isKhtml)?tv:0;d.isFF=d.isIE=0;if(d.isMoz){d.isFF=parseFloat(dua.split("Firefox/")[1])||0;}if(document.all&&!d.isOpera){d.isIE=parseFloat(dav.split("MSIE ")[1])||0;}if(dojo.isIE&&window.location.protocol==="file:"){dojo.config.ieForceActiveXXhr=true;}var cm=document.compatMode;d.isQuirks=cm=="BackCompat"||cm=="QuirksMode"||d.isIE<6;d.locale=dojo.config.locale||(d.isIE?n.userLanguage:n.language).toLowerCase();d._XMLHTTP_PROGIDS=["Msxml2.XMLHTTP","Microsoft.XMLHTTP","Msxml2.XMLHTTP.4.0"];d._xhrObj=function(){var _e0=null;var _e1=null;if(!dojo.isIE||!dojo.config.ieForceActiveXXhr){try{_e0=new XMLHttpRequest();}catch(e){}}if(!_e0){for(var i=0;i<3;++i){var _e3=d._XMLHTTP_PROGIDS[i];try{_e0=new ActiveXObject(_e3);}catch(e){_e1=e;}if(_e0){d._XMLHTTP_PROGIDS=[_e3];break;}}}if(!_e0){throw new Error("XMLHTTP not available: "+_e1);}return _e0;};d._isDocumentOk=function(_e4){var _e5=_e4.status||0;return (_e5>=200&&_e5<300)||_e5==304||_e5==1223||(!_e5&&(location.protocol=="file:"||location.protocol=="chrome:"));};var _e6=window.location+"";var _e7=document.getElementsByTagName("base");var _e8=(_e7&&_e7.length>0);d._getText=function(uri,_ea){var _eb=this._xhrObj();if(!_e8&&dojo._Url){uri=(new dojo._Url(_e6,uri)).toString();}if(d.config.cacheBust){uri+=(uri.indexOf("?")==-1?"?":"&")+String(d.config.cacheBust).replace(/\W+/g,"");}_eb.open("GET",uri,false);try{_eb.send(null);if(!d._isDocumentOk(_eb)){var err=Error("Unable to load "+uri+" status:"+_eb.status);err.status=_eb.status;err.responseText=_eb.responseText;throw err;}}catch(e){if(_ea){return null;}throw e;}return _eb.responseText;};})();dojo._initFired=false;dojo._loadInit=function(e){dojo._initFired=true;var _ee=(e&&e.type)?e.type.toLowerCase():"load";if(arguments.callee.initialized||(_ee!="domcontentloaded"&&_ee!="load")){return;}arguments.callee.initialized=true;if("_khtmlTimer" in dojo){clearInterval(dojo._khtmlTimer);delete dojo._khtmlTimer;}if(dojo._inFlightCount==0){dojo._modulesLoaded();}};dojo._fakeLoadInit=function(){dojo._loadInit({type:"load"});};if(!dojo.config.afterOnLoad){if(document.addEventListener){if(dojo.isOpera||dojo.isFF>=3||(dojo.isMoz&&dojo.config.enableMozDomContentLoaded===true)){document.addEventListener("DOMContentLoaded",dojo._loadInit,null);}window.addEventListener("load",dojo._loadInit,null);}if(dojo.isAIR){window.addEventListener("load",dojo._loadInit,null);}else{if(/(WebKit|khtml)/i.test(navigator.userAgent)){dojo._khtmlTimer=setInterval(function(){if(/loaded|complete/.test(document.readyState)){dojo._loadInit();}},10);}}}(function(){var _w=window;var _f0=function(_f1,fp){var _f3=_w[_f1]||function(){};_w[_f1]=function(){fp.apply(_w,arguments);_f3.apply(_w,arguments);};};if(dojo.isIE){if(!dojo.config.afterOnLoad){document.write("<scr"+"ipt defer src=\"//:\" "+"onreadystatechange=\"if(this.readyState=='complete'){"+dojo._scopeName+"._loadInit();}\">"+"</scr"+"ipt>");}var _f4=true;_f0("onbeforeunload",function(){_w.setTimeout(function(){_f4=false;},0);});_f0("onunload",function(){if(_f4){dojo.unloaded();}});try{document.namespaces.add("v","urn:schemas-microsoft-com:vml");document.createStyleSheet().addRule("v\\:*","behavior:url(#default#VML)");}catch(e){}}else{_f0("onbeforeunload",function(){dojo.unloaded();});}})();}(function(){var mp=dojo.config["modulePaths"];if(mp){for(var _f6 in mp){dojo.registerModulePath(_f6,mp[_f6]);}}})();if(dojo.config.isDebug){dojo.require("dojo._firebug.firebug");}if(dojo.config.debugAtAllCosts){dojo.config.useXDomain=true;dojo.require("dojo._base._loader.loader_xd");dojo.require("dojo._base._loader.loader_debug");}if(!dojo._hasResource["dojo._base.lang"]){dojo._hasResource["dojo._base.lang"]=true;dojo.provide("dojo._base.lang");dojo.isString=function(it){return !!arguments.length&&it!=null&&(typeof it=="string"||it instanceof String);};dojo.isArray=function(it){return it&&(it instanceof Array||typeof it=="array");};dojo.isFunction=(function(){var _f9=function(it){return it&&(typeof it=="function"||it instanceof Function);};return dojo.isSafari?function(it){if(typeof it=="function"&&it=="[object NodeList]"){return false;}return _f9(it);}:_f9;})();dojo.isObject=function(it){return it!==undefined&&(it===null||typeof it=="object"||dojo.isArray(it)||dojo.isFunction(it));};dojo.isArrayLike=function(it){var d=dojo;return it&&it!==undefined&&!d.isString(it)&&!d.isFunction(it)&&!(it.tagName&&it.tagName.toLowerCase()=="form")&&(d.isArray(it)||isFinite(it.length));};dojo.isAlien=function(it){return it&&!dojo.isFunction(it)&&/\{\s*\[native code\]\s*\}/.test(String(it));};dojo.extend=function(_100,_101){for(var i=1,l=arguments.length;i<l;i++){dojo._mixin(_100.prototype,arguments[i]);}return _100;};dojo._hitchArgs=function(_104,_105){var pre=dojo._toArray(arguments,2);var _107=dojo.isString(_105);return function(){var args=dojo._toArray(arguments);var f=_107?(_104||dojo.global)[_105]:_105;return f&&f.apply(_104||this,pre.concat(args));};};dojo.hitch=function(_10a,_10b){if(arguments.length>2){return dojo._hitchArgs.apply(dojo,arguments);}if(!_10b){_10b=_10a;_10a=null;}if(dojo.isString(_10b)){_10a=_10a||dojo.global;if(!_10a[_10b]){throw (["dojo.hitch: scope[\"",_10b,"\"] is null (scope=\"",_10a,"\")"].join(""));}return function(){return _10a[_10b].apply(_10a,arguments||[]);};}return !_10a?_10b:function(){return _10b.apply(_10a,arguments||[]);};};dojo.delegate=dojo._delegate=function(obj,_10d){function TMP(){};TMP.prototype=obj;var tmp=new TMP();if(_10d){dojo.mixin(tmp,_10d);}return tmp;};dojo.partial=function(_10f){var arr=[null];return dojo.hitch.apply(dojo,arr.concat(dojo._toArray(arguments)));};dojo._toArray=function(obj,_112,_113){var arr=_113||[];for(var x=_112||0;x<obj.length;x++){arr.push(obj[x]);}return arr;};dojo.clone=function(o){if(!o){return o;}if(dojo.isArray(o)){var r=[];for(var i=0;i<o.length;++i){r.push(dojo.clone(o[i]));}return r;}if(!dojo.isObject(o)){return o;}if(o.nodeType&&o.cloneNode){return o.cloneNode(true);}if(o instanceof Date){return new Date(o.getTime());}var r=new o.constructor();for(var i in o){if(!(i in r)||r[i]!=o[i]){r[i]=dojo.clone(o[i]);}}return r;};dojo.trim=function(str){return str.replace(/^\s\s*/,"").replace(/\s\s*$/,"");};}if(!dojo._hasResource["dojo._base.declare"]){dojo._hasResource["dojo._base.declare"]=true;dojo.provide("dojo._base.declare");dojo.declare=function(_11a,_11b,_11c){var dd=arguments.callee,_11e;if(dojo.isArray(_11b)){_11e=_11b;_11b=_11e.shift();}if(_11e){dojo.forEach(_11e,function(m){if(!m){throw (_11a+": mixin #"+i+" is null");}_11b=dd._delegate(_11b,m);});}var init=(_11c||0).constructor,ctor=dd._delegate(_11b),fn;for(var i in _11c){if(dojo.isFunction(fn=_11c[i])&&!0[i]){fn.nom=i;}}dojo.extend(ctor,{declaredClass:_11a,_constructor:init,preamble:null},_11c||0);ctor.prototype.constructor=ctor;return dojo.setObject(_11a,ctor);};dojo.mixin(dojo.declare,{_delegate:function(base,_125){var bp=(base||0).prototype,mp=(_125||0).prototype;var ctor=dojo.declare._makeCtor();dojo.mixin(ctor,{superclass:bp,mixin:mp,extend:dojo.declare._extend});if(base){ctor.prototype=dojo._delegate(bp);}dojo.extend(ctor,dojo.declare._core,mp||0,{_constructor:null,preamble:null});ctor.prototype.constructor=ctor;ctor.prototype.declaredClass=(bp||0).declaredClass+"_"+(mp||0).declaredClass;return ctor;},_extend:function(_129){for(var i in _129){if(dojo.isFunction(fn=_129[i])&&!0[i]){fn.nom=i;}}dojo.extend(this,_129);},_makeCtor:function(){return function(){this._construct(arguments);};},_core:{_construct:function(args){var c=args.callee,s=c.superclass,ct=s&&s.constructor,m=c.mixin,mct=m&&m.constructor,a=args,ii,fn;if(a[0]){if(((fn=a[0].preamble))){a=fn.apply(this,a)||a;}}if((fn=c.prototype.preamble)){a=fn.apply(this,a)||a;}if(ct&&ct.apply){ct.apply(this,a);}if(mct&&mct.apply){mct.apply(this,a);}if((ii=c.prototype._constructor)){ii.apply(this,args);}if(this.constructor.prototype==c.prototype&&(ct=this.postscript)){ct.apply(this,args);}},_findMixin:function(_134){var c=this.constructor,p,m;while(c){p=c.superclass;m=c.mixin;if(m==_134||(m instanceof _134.constructor)){return p;}if(m&&(m=m._findMixin(_134))){return m;}c=p&&p.constructor;}},_findMethod:function(name,_139,_13a,has){var p=_13a,c,m,f;do{c=p.constructor;m=c.mixin;if(m&&(m=this._findMethod(name,_139,m,has))){return m;}if((f=p[name])&&(has==(f==_139))){return p;}p=c.superclass;}while(p);return !has&&(p=this._findMixin(_13a))&&this._findMethod(name,_139,p,has);},inherited:function(name,args,_142){var a=arguments;if(!dojo.isString(a[0])){_142=args;args=name;name=args.callee.nom;}a=_142||args;var c=args.callee,p=this.constructor.prototype,fn,mp;if(this[name]!=c||p[name]==c){mp=this._findMethod(name,c,p,true);if(!mp){throw (this.declaredClass+": inherited method \""+name+"\" mismatch");}p=this._findMethod(name,c,mp,false);}fn=p&&p[name];if(!fn){throw (mp.declaredClass+": inherited method \""+name+"\" not found");}return fn.apply(this,a);}}});}if(!dojo._hasResource["dojo._base.connect"]){dojo._hasResource["dojo._base.connect"]=true;dojo.provide("dojo._base.connect");dojo._listener={getDispatcher:function(){return function(){var ap=Array.prototype,c=arguments.callee,ls=c._listeners,t=c.target;var r=t&&t.apply(this,arguments);for(var i in ls){if(!(i in ap)){ls[i].apply(this,arguments);}}return r;};},add:function(_14e,_14f,_150){_14e=_14e||dojo.global;var f=_14e[_14f];if(!f||!f._listeners){var d=dojo._listener.getDispatcher();d.target=f;d._listeners=[];f=_14e[_14f]=d;}return f._listeners.push(_150);},remove:function(_153,_154,_155){var f=(_153||dojo.global)[_154];if(f&&f._listeners&&_155--){delete f._listeners[_155];}}};dojo.connect=function(obj,_158,_159,_15a,_15b){var a=arguments,args=[],i=0;args.push(dojo.isString(a[0])?null:a[i++],a[i++]);var a1=a[i+1];args.push(dojo.isString(a1)||dojo.isFunction(a1)?a[i++]:null,a[i++]);for(var l=a.length;i<l;i++){args.push(a[i]);}return dojo._connect.apply(this,args);};dojo._connect=function(obj,_161,_162,_163){var l=dojo._listener,h=l.add(obj,_161,dojo.hitch(_162,_163));return [obj,_161,h,l];};dojo.disconnect=function(_166){if(_166&&_166[0]!==undefined){dojo._disconnect.apply(this,_166);delete _166[0];}};dojo._disconnect=function(obj,_168,_169,_16a){_16a.remove(obj,_168,_169);};dojo._topics={};dojo.subscribe=function(_16b,_16c,_16d){return [_16b,dojo._listener.add(dojo._topics,_16b,dojo.hitch(_16c,_16d))];};dojo.unsubscribe=function(_16e){if(_16e){dojo._listener.remove(dojo._topics,_16e[0],_16e[1]);}};dojo.publish=function(_16f,args){var f=dojo._topics[_16f];if(f){f.apply(this,args||[]);}};dojo.connectPublisher=function(_172,obj,_174){var pf=function(){dojo.publish(_172,arguments);};return (_174)?dojo.connect(obj,_174,pf):dojo.connect(obj,pf);};}if(!dojo._hasResource["dojo._base.Deferred"]){dojo._hasResource["dojo._base.Deferred"]=true;dojo.provide("dojo._base.Deferred");dojo.Deferred=function(_176){this.chain=[];this.id=this._nextId();this.fired=-1;this.paused=0;this.results=[null,null];this.canceller=_176;this.silentlyCancelled=false;};dojo.extend(dojo.Deferred,{_nextId:(function(){var n=1;return function(){return n++;};})(),cancel:function(){var err;if(this.fired==-1){if(this.canceller){err=this.canceller(this);}else{this.silentlyCancelled=true;}if(this.fired==-1){if(!(err instanceof Error)){var res=err;err=new Error("Deferred Cancelled");err.dojoType="cancel";err.cancelResult=res;}this.errback(err);}}else{if((this.fired==0)&&(this.results[0] instanceof dojo.Deferred)){this.results[0].cancel();}}},_resback:function(res){this.fired=((res instanceof Error)?1:0);this.results[this.fired]=res;this._fire();},_check:function(){if(this.fired!=-1){if(!this.silentlyCancelled){throw new Error("already called!");}this.silentlyCancelled=false;return;}},callback:function(res){this._check();this._resback(res);},errback:function(res){this._check();if(!(res instanceof Error)){res=new Error(res);}this._resback(res);},addBoth:function(cb,cbfn){var _17f=dojo.hitch.apply(dojo,arguments);return this.addCallbacks(_17f,_17f);},addCallback:function(cb,cbfn){return this.addCallbacks(dojo.hitch.apply(dojo,arguments));},addErrback:function(cb,cbfn){return this.addCallbacks(null,dojo.hitch.apply(dojo,arguments));},addCallbacks:function(cb,eb){this.chain.push([cb,eb]);if(this.fired>=0){this._fire();}return this;},_fire:function(){var _186=this.chain;var _187=this.fired;var res=this.results[_187];var self=this;var cb=null;while((_186.length>0)&&(this.paused==0)){var f=_186.shift()[_187];if(!f){continue;}try{res=f(res);_187=((res instanceof Error)?1:0);if(res instanceof dojo.Deferred){cb=function(res){self._resback(res);self.paused--;if((self.paused==0)&&(self.fired>=0)){self._fire();}};this.paused++;}}catch(err){console.debug(err);_187=1;res=err;}}this.fired=_187;this.results[_187]=res;if((cb)&&(this.paused)){res.addBoth(cb);}}});}if(!dojo._hasResource["dojo._base.json"]){dojo._hasResource["dojo._base.json"]=true;dojo.provide("dojo._base.json");dojo.fromJson=function(json){return eval("("+json+")");};dojo._escapeString=function(str){return ("\""+str.replace(/(["\\])/g,"\\$1")+"\"").replace(/[\f]/g,"\\f").replace(/[\b]/g,"\\b").replace(/[\n]/g,"\\n").replace(/[\t]/g,"\\t").replace(/[\r]/g,"\\r");};dojo.toJsonIndentStr="\t";dojo.toJson=function(it,_190,_191){if(it===undefined){return "undefined";}var _192=typeof it;if(_192=="number"||_192=="boolean"){return it+"";}if(it===null){return "null";}if(dojo.isString(it)){return dojo._escapeString(it);}if(it.nodeType&&it.cloneNode){return "";}var _193=arguments.callee;var _194;_191=_191||"";var _195=_190?_191+dojo.toJsonIndentStr:"";if(typeof it.__json__=="function"){_194=it.__json__();if(it!==_194){return _193(_194,_190,_195);}}if(typeof it.json=="function"){_194=it.json();if(it!==_194){return _193(_194,_190,_195);}}var sep=_190?" ":"";var _197=_190?"\n":"";if(dojo.isArray(it)){var res=dojo.map(it,function(obj){var val=_193(obj,_190,_195);if(typeof val!="string"){val="undefined";}return _197+_195+val;});return "["+res.join(","+sep)+_197+_191+"]";}if(_192=="function"){return null;}var _19b=[];for(var key in it){var _19d;if(typeof key=="number"){_19d="\""+key+"\"";}else{if(typeof key=="string"){_19d=dojo._escapeString(key);}else{continue;}}val=_193(it[key],_190,_195);if(typeof val!="string"){continue;}_19b.push(_197+_195+_19d+":"+sep+val);}return "{"+_19b.join(","+sep)+_197+_191+"}";};}if(!dojo._hasResource["dojo._base.array"]){dojo._hasResource["dojo._base.array"]=true;dojo.provide("dojo._base.array");(function(){var _19e=function(arr,obj,cb){return [dojo.isString(arr)?arr.split(""):arr,obj||dojo.global,dojo.isString(cb)?new Function("item","index","array",cb):cb];};dojo.mixin(dojo,{indexOf:function(_1a2,_1a3,_1a4,_1a5){var step=1,end=_1a2.length||0,i=0;if(_1a5){i=end-1;step=end=-1;}if(_1a4!=undefined){i=_1a4;}if((_1a5&&i>end)||i<end){for(;i!=end;i+=step){if(_1a2[i]==_1a3){return i;}}}return -1;},lastIndexOf:function(_1a8,_1a9,_1aa){return dojo.indexOf(_1a8,_1a9,_1aa,true);},forEach:function(arr,_1ac,_1ad){if(!arr||!arr.length){return;}var _p=_19e(arr,_1ad,_1ac);arr=_p[0];for(var i=0,l=_p[0].length;i<l;i++){_p[2].call(_p[1],arr[i],i,arr);}},_everyOrSome:function(_1b1,arr,_1b3,_1b4){var _p=_19e(arr,_1b4,_1b3);arr=_p[0];for(var i=0,l=arr.length;i<l;i++){var _1b8=!!_p[2].call(_p[1],arr[i],i,arr);if(_1b1^_1b8){return _1b8;}}return _1b1;},every:function(arr,_1ba,_1bb){return this._everyOrSome(true,arr,_1ba,_1bb);},some:function(arr,_1bd,_1be){return this._everyOrSome(false,arr,_1bd,_1be);},map:function(arr,_1c0,_1c1){var _p=_19e(arr,_1c1,_1c0);arr=_p[0];var _1c3=(arguments[3]?(new arguments[3]()):[]);for(var i=0;i<arr.length;++i){_1c3.push(_p[2].call(_p[1],arr[i],i,arr));}return _1c3;},filter:function(arr,_1c6,_1c7){var _p=_19e(arr,_1c7,_1c6);arr=_p[0];var _1c9=[];for(var i=0;i<arr.length;i++){if(_p[2].call(_p[1],arr[i],i,arr)){_1c9.push(arr[i]);}}return _1c9;}});})();}if(!dojo._hasResource["dojo._base.Color"]){dojo._hasResource["dojo._base.Color"]=true;dojo.provide("dojo._base.Color");dojo.Color=function(_1cb){if(_1cb){this.setColor(_1cb);}};dojo.Color.named={black:[0,0,0],silver:[192,192,192],gray:[128,128,128],white:[255,255,255],maroon:[128,0,0],red:[255,0,0],purple:[128,0,128],fuchsia:[255,0,255],green:[0,128,0],lime:[0,255,0],olive:[128,128,0],yellow:[255,255,0],navy:[0,0,128],blue:[0,0,255],teal:[0,128,128],aqua:[0,255,255]};dojo.extend(dojo.Color,{r:255,g:255,b:255,a:1,_set:function(r,g,b,a){var t=this;t.r=r;t.g=g;t.b=b;t.a=a;},setColor:function(_1d1){var d=dojo;if(d.isString(_1d1)){d.colorFromString(_1d1,this);}else{if(d.isArray(_1d1)){d.colorFromArray(_1d1,this);}else{this._set(_1d1.r,_1d1.g,_1d1.b,_1d1.a);if(!(_1d1 instanceof d.Color)){this.sanitize();}}}return this;},sanitize:function(){return this;},toRgb:function(){var t=this;return [t.r,t.g,t.b];},toRgba:function(){var t=this;return [t.r,t.g,t.b,t.a];},toHex:function(){var arr=dojo.map(["r","g","b"],function(x){var s=this[x].toString(16);return s.length<2?"0"+s:s;},this);return "#"+arr.join("");},toCss:function(_1d8){var t=this,rgb=t.r+", "+t.g+", "+t.b;return (_1d8?"rgba("+rgb+", "+t.a:"rgb("+rgb)+")";},toString:function(){return this.toCss(true);}});dojo.blendColors=function(_1db,end,_1dd,obj){var d=dojo,t=obj||new dojo.Color();d.forEach(["r","g","b","a"],function(x){t[x]=_1db[x]+(end[x]-_1db[x])*_1dd;if(x!="a"){t[x]=Math.round(t[x]);}});return t.sanitize();};dojo.colorFromRgb=function(_1e2,obj){var m=_1e2.toLowerCase().match(/^rgba?\(([\s\.,0-9]+)\)/);return m&&dojo.colorFromArray(m[1].split(/\s*,\s*/),obj);};dojo.colorFromHex=function(_1e5,obj){var d=dojo,t=obj||new d.Color(),bits=(_1e5.length==4)?4:8,mask=(1<<bits)-1;_1e5=Number("0x"+_1e5.substr(1));if(isNaN(_1e5)){return null;}d.forEach(["b","g","r"],function(x){var c=_1e5&mask;_1e5>>=bits;t[x]=bits==4?17*c:c;});t.a=1;return t;};dojo.colorFromArray=function(a,obj){var t=obj||new dojo.Color();t._set(Number(a[0]),Number(a[1]),Number(a[2]),Number(a[3]));if(isNaN(t.a)){t.a=1;}return t.sanitize();};dojo.colorFromString=function(str,obj){var a=dojo.Color.named[str];return a&&dojo.colorFromArray(a,obj)||dojo.colorFromRgb(str,obj)||dojo.colorFromHex(str,obj);};}if(!dojo._hasResource["dojo._base"]){dojo._hasResource["dojo._base"]=true;dojo.provide("dojo._base");}if(!dojo._hasResource["dojo._base.window"]){dojo._hasResource["dojo._base.window"]=true;dojo.provide("dojo._base.window");dojo._gearsObject=function(){var _1f3;var _1f4;var _1f5=dojo.getObject("google.gears");if(_1f5){return _1f5;}if(typeof GearsFactory!="undefined"){_1f3=new GearsFactory();}else{if(dojo.isIE){try{_1f3=new ActiveXObject("Gears.Factory");}catch(e){}}else{if(navigator.mimeTypes["application/x-googlegears"]){_1f3=document.createElement("object");_1f3.setAttribute("type","application/x-googlegears");_1f3.setAttribute("width",0);_1f3.setAttribute("height",0);_1f3.style.display="none";document.documentElement.appendChild(_1f3);}}}if(!_1f3){return null;}dojo.setObject("google.gears.factory",_1f3);return dojo.getObject("google.gears");};dojo.isGears=(!!dojo._gearsObject())||0;dojo.doc=window["document"]||null;dojo.body=function(){return dojo.doc.body||dojo.doc.getElementsByTagName("body")[0];};dojo.setContext=function(_1f6,_1f7){dojo.global=_1f6;dojo.doc=_1f7;};dojo._fireCallback=function(_1f8,_1f9,_1fa){if(_1f9&&dojo.isString(_1f8)){_1f8=_1f9[_1f8];}return _1f8.apply(_1f9,_1fa||[]);};dojo.withGlobal=function(_1fb,_1fc,_1fd,_1fe){var rval;var _200=dojo.global;var _201=dojo.doc;try{dojo.setContext(_1fb,_1fb.document);rval=dojo._fireCallback(_1fc,_1fd,_1fe);}finally{dojo.setContext(_200,_201);}return rval;};dojo.withDoc=function(_202,_203,_204,_205){var rval;var _207=dojo.doc;try{dojo.doc=_202;rval=dojo._fireCallback(_203,_204,_205);}finally{dojo.doc=_207;}return rval;};}if(!dojo._hasResource["dojo._base.event"]){dojo._hasResource["dojo._base.event"]=true;dojo.provide("dojo._base.event");(function(){var del=(dojo._event_listener={add:function(node,name,fp){if(!node){return;}name=del._normalizeEventName(name);fp=del._fixCallback(name,fp);var _20c=name;if(!dojo.isIE&&(name=="mouseenter"||name=="mouseleave")){var ofp=fp;name=(name=="mouseenter")?"mouseover":"mouseout";fp=function(e){if(!dojo.isDescendant(e.relatedTarget,node)){return ofp.call(this,e);}};}node.addEventListener(name,fp,false);return fp;},remove:function(node,_210,_211){if(node){node.removeEventListener(del._normalizeEventName(_210),_211,false);}},_normalizeEventName:function(name){return name.slice(0,2)=="on"?name.slice(2):name;},_fixCallback:function(name,fp){return name!="keypress"?fp:function(e){return fp.call(this,del._fixEvent(e,this));};},_fixEvent:function(evt,_217){switch(evt.type){case "keypress":del._setKeyChar(evt);break;}return evt;},_setKeyChar:function(evt){evt.keyChar=evt.charCode?String.fromCharCode(evt.charCode):"";}});dojo.fixEvent=function(evt,_21a){return del._fixEvent(evt,_21a);};dojo.stopEvent=function(evt){evt.preventDefault();evt.stopPropagation();};var _21c=dojo._listener;dojo._connect=function(obj,_21e,_21f,_220,_221){var _222=obj&&(obj.nodeType||obj.attachEvent||obj.addEventListener);var lid=!_222?0:(!_221?1:2),l=[dojo._listener,del,_21c][lid];var h=l.add(obj,_21e,dojo.hitch(_21f,_220));return [obj,_21e,h,lid];};dojo._disconnect=function(obj,_227,_228,_229){([dojo._listener,del,_21c][_229]).remove(obj,_227,_228);};dojo.keys={BACKSPACE:8,TAB:9,CLEAR:12,ENTER:13,SHIFT:16,CTRL:17,ALT:18,PAUSE:19,CAPS_LOCK:20,ESCAPE:27,SPACE:32,PAGE_UP:33,PAGE_DOWN:34,END:35,HOME:36,LEFT_ARROW:37,UP_ARROW:38,RIGHT_ARROW:39,DOWN_ARROW:40,INSERT:45,DELETE:46,HELP:47,LEFT_WINDOW:91,RIGHT_WINDOW:92,SELECT:93,NUMPAD_0:96,NUMPAD_1:97,NUMPAD_2:98,NUMPAD_3:99,NUMPAD_4:100,NUMPAD_5:101,NUMPAD_6:102,NUMPAD_7:103,NUMPAD_8:104,NUMPAD_9:105,NUMPAD_MULTIPLY:106,NUMPAD_PLUS:107,NUMPAD_ENTER:108,NUMPAD_MINUS:109,NUMPAD_PERIOD:110,NUMPAD_DIVIDE:111,F1:112,F2:113,F3:114,F4:115,F5:116,F6:117,F7:118,F8:119,F9:120,F10:121,F11:122,F12:123,F13:124,F14:125,F15:126,NUM_LOCK:144,SCROLL_LOCK:145};if(dojo.isIE){var _22a=function(e,code){try{return (e.keyCode=code);}catch(e){return 0;}};var iel=dojo._listener;if(!dojo.config._allow_leaks){_21c=iel=dojo._ie_listener={handlers:[],add:function(_22e,_22f,_230){_22e=_22e||dojo.global;var f=_22e[_22f];if(!f||!f._listeners){var d=dojo._getIeDispatcher();d.target=f&&(ieh.push(f)-1);d._listeners=[];f=_22e[_22f]=d;}return f._listeners.push(ieh.push(_230)-1);},remove:function(_234,_235,_236){var f=(_234||dojo.global)[_235],l=f&&f._listeners;if(f&&l&&_236--){delete ieh[l[_236]];delete l[_236];}}};var ieh=iel.handlers;}dojo.mixin(del,{add:function(node,_23a,fp){if(!node){return;}_23a=del._normalizeEventName(_23a);if(_23a=="onkeypress"){var kd=node.onkeydown;if(!kd||!kd._listeners||!kd._stealthKeydownHandle){var h=del.add(node,"onkeydown",del._stealthKeyDown);kd=node.onkeydown;kd._stealthKeydownHandle=h;kd._stealthKeydownRefs=1;}else{kd._stealthKeydownRefs++;}}return iel.add(node,_23a,del._fixCallback(fp));},remove:function(node,_23f,_240){_23f=del._normalizeEventName(_23f);iel.remove(node,_23f,_240);if(_23f=="onkeypress"){var kd=node.onkeydown;if(--kd._stealthKeydownRefs<=0){iel.remove(node,"onkeydown",kd._stealthKeydownHandle);delete kd._stealthKeydownHandle;}}},_normalizeEventName:function(_242){return _242.slice(0,2)!="on"?"on"+_242:_242;},_nop:function(){},_fixEvent:function(evt,_244){if(!evt){var w=_244&&(_244.ownerDocument||_244.document||_244).parentWindow||window;evt=w.event;}if(!evt){return (evt);}evt.target=evt.srcElement;evt.currentTarget=(_244||evt.srcElement);evt.layerX=evt.offsetX;evt.layerY=evt.offsetY;var se=evt.srcElement,doc=(se&&se.ownerDocument)||document;var _248=((dojo.isIE<6)||(doc["compatMode"]=="BackCompat"))?doc.body:doc.documentElement;var _249=dojo._getIeDocumentElementOffset();evt.pageX=evt.clientX+dojo._fixIeBiDiScrollLeft(_248.scrollLeft||0)-_249.x;evt.pageY=evt.clientY+(_248.scrollTop||0)-_249.y;if(evt.type=="mouseover"){evt.relatedTarget=evt.fromElement;}if(evt.type=="mouseout"){evt.relatedTarget=evt.toElement;}evt.stopPropagation=del._stopPropagation;evt.preventDefault=del._preventDefault;return del._fixKeys(evt);},_fixKeys:function(evt){switch(evt.type){case "keypress":var c=("charCode" in evt?evt.charCode:evt.keyCode);if(c==10){c=0;evt.keyCode=13;}else{if(c==13||c==27){c=0;}else{if(c==3){c=99;}}}evt.charCode=c;del._setKeyChar(evt);break;}return evt;},_punctMap:{106:42,111:47,186:59,187:43,188:44,189:45,190:46,191:47,192:96,219:91,220:92,221:93,222:39},_stealthKeyDown:function(evt){var kp=evt.currentTarget.onkeypress;if(!kp||!kp._listeners){return;}var k=evt.keyCode;var _24f=(k!=13)&&(k!=32)&&(k!=27)&&(k<48||k>90)&&(k<96||k>111)&&(k<186||k>192)&&(k<219||k>222);if(_24f||evt.ctrlKey){var c=_24f?0:k;if(evt.ctrlKey){if(k==3||k==13){return;}else{if(c>95&&c<106){c-=48;}else{if((!evt.shiftKey)&&(c>=65&&c<=90)){c+=32;}else{c=del._punctMap[c]||c;}}}}var faux=del._synthesizeEvent(evt,{type:"keypress",faux:true,charCode:c});kp.call(evt.currentTarget,faux);evt.cancelBubble=faux.cancelBubble;evt.returnValue=faux.returnValue;_22a(evt,faux.keyCode);}},_stopPropagation:function(){this.cancelBubble=true;},_preventDefault:function(){this.bubbledKeyCode=this.keyCode;if(this.ctrlKey){_22a(this,0);}this.returnValue=false;}});dojo.stopEvent=function(evt){evt=evt||window.event;del._stopPropagation.call(evt);del._preventDefault.call(evt);};}del._synthesizeEvent=function(evt,_254){var faux=dojo.mixin({},evt,_254);del._setKeyChar(faux);faux.preventDefault=function(){evt.preventDefault();};faux.stopPropagation=function(){evt.stopPropagation();};return faux;};if(dojo.isOpera){dojo.mixin(del,{_fixEvent:function(evt,_257){switch(evt.type){case "keypress":var c=evt.which;if(c==3){c=99;}c=((c<41)&&(!evt.shiftKey)?0:c);if((evt.ctrlKey)&&(!evt.shiftKey)&&(c>=65)&&(c<=90)){c+=32;}return del._synthesizeEvent(evt,{charCode:c});}return evt;}});}if(dojo.isSafari){dojo.mixin(del,{_fixEvent:function(evt,_25a){switch(evt.type){case "keypress":var c=evt.charCode,s=evt.shiftKey,k=evt.keyCode;k=k||_25e[evt.keyIdentifier]||0;if(evt.keyIdentifier=="Enter"){c=0;}else{if((evt.ctrlKey)&&(c>0)&&(c<27)){c+=96;}else{if(c==dojo.keys.SHIFT_TAB){c=dojo.keys.TAB;s=true;}else{c=(c>=32&&c<63232?c:0);}}}return del._synthesizeEvent(evt,{charCode:c,shiftKey:s,keyCode:k});}return evt;}});dojo.mixin(dojo.keys,{SHIFT_TAB:25,UP_ARROW:63232,DOWN_ARROW:63233,LEFT_ARROW:63234,RIGHT_ARROW:63235,F1:63236,F2:63237,F3:63238,F4:63239,F5:63240,F6:63241,F7:63242,F8:63243,F9:63244,F10:63245,F11:63246,F12:63247,PAUSE:63250,DELETE:63272,HOME:63273,END:63275,PAGE_UP:63276,PAGE_DOWN:63277,INSERT:63302,PRINT_SCREEN:63248,SCROLL_LOCK:63249,NUM_LOCK:63289});var dk=dojo.keys,_25e={"Up":dk.UP_ARROW,"Down":dk.DOWN_ARROW,"Left":dk.LEFT_ARROW,"Right":dk.RIGHT_ARROW,"PageUp":dk.PAGE_UP,"PageDown":dk.PAGE_DOWN};}})();if(dojo.isIE){dojo._ieDispatcher=function(args,_261){var ap=Array.prototype,h=dojo._ie_listener.handlers,c=args.callee,ls=c._listeners,t=h[c.target];var r=t&&t.apply(_261,args);for(var i in ls){if(!(i in ap)){h[ls[i]].apply(_261,args);}}return r;};dojo._getIeDispatcher=function(){return new Function(dojo._scopeName+"._ieDispatcher(arguments, this)");};dojo._event_listener._fixCallback=function(fp){var f=dojo._event_listener._fixEvent;return function(e){return fp.call(this,f(e,this));};};}}if(!dojo._hasResource["dojo._base.html"]){dojo._hasResource["dojo._base.html"]=true;dojo.provide("dojo._base.html");try{document.execCommand("BackgroundImageCache",false,true);}catch(e){}if(dojo.isIE||dojo.isOpera){dojo.byId=function(id,doc){if(dojo.isString(id)){var _d=doc||dojo.doc;var te=_d.getElementById(id);if(te&&te.attributes.id.value==id){return te;}else{var eles=_d.all[id];if(!eles||!eles.length){return eles;}var i=0;while((te=eles[i++])){if(te.attributes.id.value==id){return te;}}}}else{return id;}};}else{dojo.byId=function(id,doc){return dojo.isString(id)?(doc||dojo.doc).getElementById(id):id;};}(function(){var d=dojo;var _275=null;dojo.addOnUnload(function(){_275=null;});dojo._destroyElement=function(node){node=d.byId(node);try{if(!_275){_275=document.createElement("div");}_275.appendChild(node.parentNode?node.parentNode.removeChild(node):node);_275.innerHTML="";}catch(e){}};dojo.isDescendant=function(node,_278){try{node=d.byId(node);_278=d.byId(_278);while(node){if(node===_278){return true;}node=node.parentNode;}}catch(e){}return false;};dojo.setSelectable=function(node,_27a){node=d.byId(node);if(d.isMozilla){node.style.MozUserSelect=_27a?"":"none";}else{if(d.isKhtml){node.style.KhtmlUserSelect=_27a?"auto":"none";}else{if(d.isIE){node.unselectable=_27a?"":"on";d.query("*",node).forEach(function(_27b){_27b.unselectable=_27a?"":"on";});}}}};var _27c=function(node,ref){ref.parentNode.insertBefore(node,ref);return true;};var _27f=function(node,ref){var pn=ref.parentNode;if(ref==pn.lastChild){pn.appendChild(node);}else{return _27c(node,ref.nextSibling);}return true;};dojo.place=function(node,_284,_285){if(!node||!_284||_285===undefined){return false;}node=d.byId(node);_284=d.byId(_284);if(typeof _285=="number"){var cn=_284.childNodes;if((_285==0&&cn.length==0)||cn.length==_285){_284.appendChild(node);return true;}if(_285==0){return _27c(node,_284.firstChild);}return _27f(node,cn[_285-1]);}switch(_285.toLowerCase()){case "before":return _27c(node,_284);case "after":return _27f(node,_284);case "first":if(_284.firstChild){return _27c(node,_284.firstChild);}default:_284.appendChild(node);return true;}};dojo.boxModel="content-box";if(d.isIE){var _dcm=document.compatMode;d.boxModel=_dcm=="BackCompat"||_dcm=="QuirksMode"||d.isIE<6?"border-box":"content-box";}var gcs,dv=document.defaultView;if(d.isSafari){gcs=function(node){var s=dv.getComputedStyle(node,null);if(!s&&node.style){node.style.display="";s=dv.getComputedStyle(node,null);}return s||{};};}else{if(d.isIE){gcs=function(node){return node.currentStyle;};}else{gcs=function(node){return dv.getComputedStyle(node,null);};}}dojo.getComputedStyle=gcs;if(!d.isIE){dojo._toPixelValue=function(_28e,_28f){return parseFloat(_28f)||0;};}else{dojo._toPixelValue=function(_290,_291){if(!_291){return 0;}if(_291=="medium"){return 4;}if(_291.slice&&(_291.slice(-2)=="px")){return parseFloat(_291);}with(_290){var _292=style.left;var _293=runtimeStyle.left;runtimeStyle.left=currentStyle.left;try{style.left=_291;_291=style.pixelLeft;}catch(e){_291=0;}style.left=_292;runtimeStyle.left=_293;}return _291;};}var px=d._toPixelValue;dojo._getOpacity=d.isIE?function(node){try{return node.filters.alpha.opacity/100;}catch(e){return 1;}}:function(node){return gcs(node).opacity;};dojo._setOpacity=d.isIE?function(node,_298){if(_298==1){var _299=/FILTER:[^;]*;?/i;node.style.cssText=node.style.cssText.replace(_299,"");if(node.nodeName.toLowerCase()=="tr"){d.query("> td",node).forEach(function(i){i.style.cssText=i.style.cssText.replace(_299,"");});}}else{var o="Alpha(Opacity="+_298*100+")";node.style.filter=o;}if(node.nodeName.toLowerCase()=="tr"){d.query("> td",node).forEach(function(i){i.style.filter=o;});}return _298;}:function(node,_29e){return node.style.opacity=_29e;};var _29f={left:true,top:true};var _2a0=/margin|padding|width|height|max|min|offset/;var _2a1=function(node,type,_2a4){type=type.toLowerCase();if(d.isIE&&_2a4=="auto"){if(type=="height"){return node.offsetHeight;}if(type=="width"){return node.offsetWidth;}}if(!(type in _29f)){_29f[type]=_2a0.test(type);}return _29f[type]?px(node,_2a4):_2a4;};var _2a5=d.isIE?"styleFloat":"cssFloat";var _2a6={"cssFloat":_2a5,"styleFloat":_2a5,"float":_2a5};dojo.style=function(node,_2a8,_2a9){var n=d.byId(node),args=arguments.length,op=(_2a8=="opacity");_2a8=_2a6[_2a8]||_2a8;if(args==3){return op?d._setOpacity(n,_2a9):n.style[_2a8]=_2a9;}if(args==2&&op){return d._getOpacity(n);}var s=gcs(n);if(args==2&&!d.isString(_2a8)){for(var x in _2a8){d.style(node,x,_2a8[x]);}return s;}return (args==1)?s:_2a1(n,_2a8,s[_2a8]);};dojo._getPadExtents=function(n,_2b0){var s=_2b0||gcs(n),l=px(n,s.paddingLeft),t=px(n,s.paddingTop);return {l:l,t:t,w:l+px(n,s.paddingRight),h:t+px(n,s.paddingBottom)};};dojo._getBorderExtents=function(n,_2b5){var ne="none",s=_2b5||gcs(n),bl=(s.borderLeftStyle!=ne?px(n,s.borderLeftWidth):0),bt=(s.borderTopStyle!=ne?px(n,s.borderTopWidth):0);return {l:bl,t:bt,w:bl+(s.borderRightStyle!=ne?px(n,s.borderRightWidth):0),h:bt+(s.borderBottomStyle!=ne?px(n,s.borderBottomWidth):0)};};dojo._getPadBorderExtents=function(n,_2bb){var s=_2bb||gcs(n),p=d._getPadExtents(n,s),b=d._getBorderExtents(n,s);return {l:p.l+b.l,t:p.t+b.t,w:p.w+b.w,h:p.h+b.h};};dojo._getMarginExtents=function(n,_2c0){var s=_2c0||gcs(n),l=px(n,s.marginLeft),t=px(n,s.marginTop),r=px(n,s.marginRight),b=px(n,s.marginBottom);if(d.isSafari&&(s.position!="absolute")){r=l;}return {l:l,t:t,w:l+r,h:t+b};};dojo._getMarginBox=function(node,_2c7){var s=_2c7||gcs(node),me=d._getMarginExtents(node,s);var l=node.offsetLeft-me.l,t=node.offsetTop-me.t;if(d.isMoz){var sl=parseFloat(s.left),st=parseFloat(s.top);if(!isNaN(sl)&&!isNaN(st)){l=sl,t=st;}else{var p=node.parentNode;if(p&&p.style){var pcs=gcs(p);if(pcs.overflow!="visible"){var be=d._getBorderExtents(p,pcs);l+=be.l,t+=be.t;}}}}else{if(d.isOpera){var p=node.parentNode;if(p){var be=d._getBorderExtents(p);l-=be.l,t-=be.t;}}}return {l:l,t:t,w:node.offsetWidth+me.w,h:node.offsetHeight+me.h};};dojo._getContentBox=function(node,_2d2){var s=_2d2||gcs(node),pe=d._getPadExtents(node,s),be=d._getBorderExtents(node,s),w=node.clientWidth,h;if(!w){w=node.offsetWidth,h=node.offsetHeight;}else{h=node.clientHeight,be.w=be.h=0;}if(d.isOpera){pe.l+=be.l;pe.t+=be.t;}return {l:pe.l,t:pe.t,w:w-pe.w-be.w,h:h-pe.h-be.h};};dojo._getBorderBox=function(node,_2d9){var s=_2d9||gcs(node),pe=d._getPadExtents(node,s),cb=d._getContentBox(node,s);return {l:cb.l-pe.l,t:cb.t-pe.t,w:cb.w+pe.w,h:cb.h+pe.h};};dojo._setBox=function(node,l,t,w,h,u){u=u||"px";var s=node.style;if(!isNaN(l)){s.left=l+u;}if(!isNaN(t)){s.top=t+u;}if(w>=0){s.width=w+u;}if(h>=0){s.height=h+u;}};dojo._usesBorderBox=function(node){var n=node.tagName;return d.boxModel=="border-box"||n=="TABLE"||n=="BUTTON";};dojo._setContentSize=function(node,_2e7,_2e8,_2e9){if(d._usesBorderBox(node)){var pb=d._getPadBorderExtents(node,_2e9);if(_2e7>=0){_2e7+=pb.w;}if(_2e8>=0){_2e8+=pb.h;}}d._setBox(node,NaN,NaN,_2e7,_2e8);};dojo._setMarginBox=function(node,_2ec,_2ed,_2ee,_2ef,_2f0){var s=_2f0||gcs(node);var bb=d._usesBorderBox(node),pb=bb?_2f4:d._getPadBorderExtents(node,s),mb=d._getMarginExtents(node,s);if(_2ee>=0){_2ee=Math.max(_2ee-pb.w-mb.w,0);}if(_2ef>=0){_2ef=Math.max(_2ef-pb.h-mb.h,0);}d._setBox(node,_2ec,_2ed,_2ee,_2ef);};var _2f4={l:0,t:0,w:0,h:0};dojo.marginBox=function(node,box){var n=d.byId(node),s=gcs(n),b=box;return !b?d._getMarginBox(n,s):d._setMarginBox(n,b.l,b.t,b.w,b.h,s);};dojo.contentBox=function(node,box){var n=dojo.byId(node),s=gcs(n),b=box;return !b?d._getContentBox(n,s):d._setContentSize(n,b.w,b.h,s);};var _300=function(node,prop){if(!(node=(node||0).parentNode)){return 0;}var val,_304=0,_b=d.body();while(node&&node.style){if(gcs(node).position=="fixed"){return 0;}val=node[prop];if(val){_304+=val-0;if(node==_b){break;}}node=node.parentNode;}return _304;};dojo._docScroll=function(){var _b=d.body(),_w=d.global,de=d.doc.documentElement;return {y:(_w.pageYOffset||de.scrollTop||_b.scrollTop||0),x:(_w.pageXOffset||d._fixIeBiDiScrollLeft(de.scrollLeft)||_b.scrollLeft||0)};};dojo._isBodyLtr=function(){return !("_bodyLtr" in d)?d._bodyLtr=gcs(d.body()).direction=="ltr":d._bodyLtr;};dojo._getIeDocumentElementOffset=function(){var de=d.doc.documentElement;return (d.isIE>=7)?{x:de.getBoundingClientRect().left,y:de.getBoundingClientRect().top}:{x:d._isBodyLtr()||window.parent==window?de.clientLeft:de.offsetWidth-de.clientWidth-de.clientLeft,y:de.clientTop};};dojo._fixIeBiDiScrollLeft=function(_30a){var dd=d.doc;if(d.isIE&&!dojo._isBodyLtr()){var de=dd.compatMode=="BackCompat"?dd.body:dd.documentElement;return _30a+de.clientWidth-de.scrollWidth;}return _30a;};dojo._abs=function(node,_30e){var _30f=node.ownerDocument;var ret={x:0,y:0};var db=d.body();if(d.isIE||(d.isFF>=3)){var _312=node.getBoundingClientRect();var _313=(d.isIE)?d._getIeDocumentElementOffset():{x:0,y:0};ret.x=_312.left-_313.x;ret.y=_312.top-_313.y;}else{if(_30f["getBoxObjectFor"]){var bo=_30f.getBoxObjectFor(node),b=d._getBorderExtents(node);ret.x=bo.x-b.l-_300(node,"scrollLeft");ret.y=bo.y-b.t-_300(node,"scrollTop");}else{if(node["offsetParent"]){var _316;if(d.isSafari&&(gcs(node).position=="absolute")&&(node.parentNode==db)){_316=db;}else{_316=db.parentNode;}if(node.parentNode!=db){var nd=node;if(d.isOpera){nd=db;}ret.x-=_300(nd,"scrollLeft");ret.y-=_300(nd,"scrollTop");}var _318=node;do{var n=_318.offsetLeft;if(!d.isOpera||n>0){ret.x+=isNaN(n)?0:n;}var t=_318.offsetTop;ret.y+=isNaN(t)?0:t;if(d.isSafari&&_318!=node){var cs=gcs(_318);ret.x+=px(_318,cs.borderLeftWidth);ret.y+=px(_318,cs.borderTopWidth);}_318=_318.offsetParent;}while((_318!=_316)&&_318);}else{if(node.x&&node.y){ret.x+=isNaN(node.x)?0:node.x;ret.y+=isNaN(node.y)?0:node.y;}}}}if(_30e){var _31c=d._docScroll();ret.y+=_31c.y;ret.x+=_31c.x;}return ret;};dojo.coords=function(node,_31e){var n=d.byId(node),s=gcs(n),mb=d._getMarginBox(n,s);var abs=d._abs(n,_31e);mb.x=abs.x;mb.y=abs.y;return mb;};var _323=function(name){switch(name.toLowerCase()){case "tabindex":return (d.isIE&&d.isIE<8)?"tabIndex":"tabindex";default:return name;}};var _325={colspan:"colSpan",enctype:"enctype",frameborder:"frameborder",method:"method",rowspan:"rowSpan",scrolling:"scrolling",shape:"shape",span:"span",type:"type",valuetype:"valueType"};dojo.hasAttr=function(node,name){var attr=d.byId(node).getAttributeNode(_323(name));return attr?attr.specified:false;};var _329={};var _ctr=0;var _32b=dojo._scopeName+"attrid";dojo.attr=function(node,name,_32e){var args=arguments.length;if(args==2&&!d.isString(name)){for(var x in name){d.attr(node,x,name[x]);}return;}node=d.byId(node);name=_323(name);if(args==3){if(d.isFunction(_32e)){var _331=d.attr(node,_32b);if(!_331){_331=_ctr++;d.attr(node,_32b,_331);}if(!_329[_331]){_329[_331]={};}var h=_329[_331][name];if(h){d.disconnect(h);}else{try{delete node[name];}catch(e){}}_329[_331][name]=d.connect(node,name,_32e);}else{if(typeof _32e=="boolean"){node[name]=_32e;}else{node.setAttribute(name,_32e);}}return;}else{var prop=_325[name.toLowerCase()];if(prop){return node[prop];}else{var _32e=node[name];return (typeof _32e=="boolean"||typeof _32e=="function")?_32e:(d.hasAttr(node,name)?node.getAttribute(name):null);}}};dojo.removeAttr=function(node,name){d.byId(node).removeAttribute(_323(name));};})();dojo.hasClass=function(node,_337){return ((" "+dojo.byId(node).className+" ").indexOf(" "+_337+" ")>=0);};dojo.addClass=function(node,_339){node=dojo.byId(node);var cls=node.className;if((" "+cls+" ").indexOf(" "+_339+" ")<0){node.className=cls+(cls?" ":"")+_339;}};dojo.removeClass=function(node,_33c){node=dojo.byId(node);var t=dojo.trim((" "+node.className+" ").replace(" "+_33c+" "," "));if(node.className!=t){node.className=t;}};dojo.toggleClass=function(node,_33f,_340){if(_340===undefined){_340=!dojo.hasClass(node,_33f);}dojo[_340?"addClass":"removeClass"](node,_33f);};}if(!dojo._hasResource["dojo._base.NodeList"]){dojo._hasResource["dojo._base.NodeList"]=true;dojo.provide("dojo._base.NodeList");(function(){var d=dojo;var tnl=function(arr){arr.constructor=dojo.NodeList;dojo._mixin(arr,dojo.NodeList.prototype);return arr;};var _344=function(func,_346){return function(){var _a=arguments;var aa=d._toArray(_a,0,[null]);var s=this.map(function(i){aa[0]=i;return d[func].apply(d,aa);});return (_346||((_a.length>1)||!d.isString(_a[0])))?this:s;};};dojo.NodeList=function(){return tnl(Array.apply(null,arguments));};dojo.NodeList._wrap=tnl;dojo.extend(dojo.NodeList,{slice:function(){var a=dojo._toArray(arguments);return tnl(a.slice.apply(this,a));},splice:function(){var a=dojo._toArray(arguments);return tnl(a.splice.apply(this,a));},concat:function(){var a=dojo._toArray(arguments,0,[this]);return tnl(a.concat.apply([],a));},indexOf:function(_34e,_34f){return d.indexOf(this,_34e,_34f);},lastIndexOf:function(){return d.lastIndexOf.apply(d,d._toArray(arguments,0,[this]));},every:function(_350,_351){return d.every(this,_350,_351);},some:function(_352,_353){return d.some(this,_352,_353);},map:function(func,obj){return d.map(this,func,obj,d.NodeList);},forEach:function(_356,_357){d.forEach(this,_356,_357);return this;},coords:function(){return d.map(this,d.coords);},attr:_344("attr"),style:_344("style"),addClass:_344("addClass",true),removeClass:_344("removeClass",true),toggleClass:_344("toggleClass",true),connect:_344("connect",true),place:function(_358,_359){var item=d.query(_358)[0];return this.forEach(function(i){d.place(i,item,(_359||"last"));});},orphan:function(_35c){var _35d=_35c?d._filterQueryResult(this,_35c):this;_35d.forEach(function(item){if(item.parentNode){item.parentNode.removeChild(item);}});return _35d;},adopt:function(_35f,_360){var item=this[0];return d.query(_35f).forEach(function(ai){d.place(ai,item,_360||"last");});},query:function(_363){if(!_363){return this;}var ret=d.NodeList();this.forEach(function(item){d.query(_363,item).forEach(function(_366){if(_366!==undefined){ret.push(_366);}});});return ret;},filter:function(_367){var _368=this;var _a=arguments;var r=d.NodeList();var rp=function(t){if(t!==undefined){r.push(t);}};if(d.isString(_367)){_368=d._filterQueryResult(this,_a[0]);if(_a.length==1){return _368;}_a.shift();}d.forEach(d.filter(_368,_a[0],_a[1]),rp);return r;},addContent:function(_36d,_36e){var ta=d.doc.createElement("span");if(d.isString(_36d)){ta.innerHTML=_36d;}else{ta.appendChild(_36d);}if(_36e===undefined){_36e="last";}var ct=(_36e=="first"||_36e=="after")?"lastChild":"firstChild";this.forEach(function(item){var tn=ta.cloneNode(true);while(tn[ct]){d.place(tn[ct],item,_36e);}});return this;},empty:function(){return this.forEach("item.innerHTML='';");},instantiate:function(_373,_374){var c=d.isFunction(_373)?_373:d.getObject(_373);return this.forEach(function(i){new c(_374||{},i);});}});d.forEach(["blur","focus","click","keydown","keypress","keyup","mousedown","mouseenter","mouseleave","mousemove","mouseout","mouseover","mouseup"],function(evt){var _oe="on"+evt;dojo.NodeList.prototype[_oe]=function(a,b){return this.connect(_oe,a,b);};});})();}if(!dojo._hasResource["dojo._base.query"]){dojo._hasResource["dojo._base.query"]=true;dojo.provide("dojo._base.query");(function(){var d=dojo;var _37c=dojo.isIE?"children":"childNodes";var _37d=false;var _37e=function(_37f){if(">~+".indexOf(_37f.charAt(_37f.length-1))>=0){_37f+=" *";}_37f+=" ";var ts=function(s,e){return d.trim(_37f.slice(s,e));};var _383=[];var _384=-1;var _385=-1;var _386=-1;var _387=-1;var _388=-1;var inId=-1;var _38a=-1;var lc="";var cc="";var _38d;var x=0;var ql=_37f.length;var _390=null;var _cp=null;var _392=function(){if(_38a>=0){var tv=(_38a==x)?null:ts(_38a,x).toLowerCase();_390[(">~+".indexOf(tv)<0)?"tag":"oper"]=tv;_38a=-1;}};var _394=function(){if(inId>=0){_390.id=ts(inId,x).replace(/\\/g,"");inId=-1;}};var _395=function(){if(_388>=0){_390.classes.push(ts(_388+1,x).replace(/\\/g,""));_388=-1;}};var _396=function(){_394();_392();_395();};for(;lc=cc,cc=_37f.charAt(x),x<ql;x++){if(lc=="\\"){continue;}if(!_390){_38d=x;_390={query:null,pseudos:[],attrs:[],classes:[],tag:null,oper:null,id:null};_38a=x;}if(_384>=0){if(cc=="]"){if(!_cp.attr){_cp.attr=ts(_384+1,x);}else{_cp.matchFor=ts((_386||_384+1),x);}var cmf=_cp.matchFor;if(cmf){if((cmf.charAt(0)=="\"")||(cmf.charAt(0)=="'")){_cp.matchFor=cmf.substring(1,cmf.length-1);}}_390.attrs.push(_cp);_cp=null;_384=_386=-1;}else{if(cc=="="){var _398=("|~^$*".indexOf(lc)>=0)?lc:"";_cp.type=_398+cc;_cp.attr=ts(_384+1,x-_398.length);_386=x+1;}}}else{if(_385>=0){if(cc==")"){if(_387>=0){_cp.value=ts(_385+1,x);}_387=_385=-1;}}else{if(cc=="#"){_396();inId=x+1;}else{if(cc=="."){_396();_388=x;}else{if(cc==":"){_396();_387=x;}else{if(cc=="["){_396();_384=x;_cp={};}else{if(cc=="("){if(_387>=0){_cp={name:ts(_387+1,x),value:null};_390.pseudos.push(_cp);}_385=x;}else{if(cc==" "&&lc!=cc){_396();if(_387>=0){_390.pseudos.push({name:ts(_387+1,x)});}_390.hasLoops=(_390.pseudos.length||_390.attrs.length||_390.classes.length);_390.query=ts(_38d,x);_390.tag=(_390["oper"])?null:(_390.tag||"*");_383.push(_390);_390=null;}}}}}}}}}return _383;};var _399={"*=":function(attr,_39b){return "[contains(@"+attr+", '"+_39b+"')]";},"^=":function(attr,_39d){return "[starts-with(@"+attr+", '"+_39d+"')]";},"$=":function(attr,_39f){return "[substring(@"+attr+", string-length(@"+attr+")-"+(_39f.length-1)+")='"+_39f+"']";},"~=":function(attr,_3a1){return "[contains(concat(' ',@"+attr+",' '), ' "+_3a1+" ')]";},"|=":function(attr,_3a3){return "[contains(concat(' ',@"+attr+",' '), ' "+_3a3+"-')]";},"=":function(attr,_3a5){return "[@"+attr+"='"+_3a5+"']";}};var _3a6=function(_3a7,_3a8,_3a9,_3aa){d.forEach(_3a8.attrs,function(attr){var _3ac;if(attr.type&&_3a7[attr.type]){_3ac=_3a7[attr.type](attr.attr,attr.matchFor);}else{if(attr.attr.length){_3ac=_3a9(attr.attr);}}if(_3ac){_3aa(_3ac);}});};var _3ad=function(_3ae){var _3af=".";var _3b0=_37e(d.trim(_3ae));while(_3b0.length){var tqp=_3b0.shift();var _3b2;var _3b3="";if(tqp.oper==">"){_3b2="/";tqp=_3b0.shift();}else{if(tqp.oper=="~"){_3b2="/following-sibling::";tqp=_3b0.shift();}else{if(tqp.oper=="+"){_3b2="/following-sibling::";_3b3="[position()=1]";tqp=_3b0.shift();}else{_3b2="//";}}}_3af+=_3b2+tqp.tag+_3b3;if(tqp.id){_3af+="[@id='"+tqp.id+"'][1]";}d.forEach(tqp.classes,function(cn){var cnl=cn.length;var _3b6=" ";if(cn.charAt(cnl-1)=="*"){_3b6="";cn=cn.substr(0,cnl-1);}_3af+="[contains(concat(' ',@class,' '), ' "+cn+_3b6+"')]";});_3a6(_399,tqp,function(_3b7){return "[@"+_3b7+"]";},function(_3b8){_3af+=_3b8;});}return _3af;};var _3b9={};var _3ba=function(path){if(_3b9[path]){return _3b9[path];}var doc=d.doc;var _3bd=_3ad(path);var tf=function(_3bf){var ret=[];var _3c1;try{_3c1=doc.evaluate(_3bd,_3bf,null,XPathResult.ANY_TYPE,null);}catch(e){console.debug("failure in exprssion:",_3bd,"under:",_3bf);console.debug(e);}var _3c2=_3c1.iterateNext();while(_3c2){ret.push(_3c2);_3c2=_3c1.iterateNext();}return ret;};return _3b9[path]=tf;};var _3c3={};var _3c4={};var _3c5=function(_3c6,_3c7){if(!_3c6){return _3c7;}if(!_3c7){return _3c6;}return function(){return _3c6.apply(window,arguments)&&_3c7.apply(window,arguments);};};var _3c8=function(root){var ret=[];var te,x=0,tret=root[_37c];while(te=tret[x++]){if(te.nodeType==1){ret.push(te);}}return ret;};var _3ce=function(root,_3d0){var ret=[];var te=root;while(te=te.nextSibling){if(te.nodeType==1){ret.push(te);if(_3d0){break;}}}return ret;};var _3d3=function(_3d4,_3d5,_3d6,idx){var nidx=idx+1;var _3d9=(_3d5.length==nidx);var tqp=_3d5[idx];if(tqp.oper){var ecn=(tqp.oper==">")?_3c8(_3d4):_3ce(_3d4,(tqp.oper=="+"));if(!ecn||!ecn.length){return;}nidx++;_3d9=(_3d5.length==nidx);var tf=_3dd(_3d5[idx+1]);for(var x=0,ecnl=ecn.length,te;x<ecnl,te=ecn[x];x++){if(tf(te)){if(_3d9){_3d6.push(te);}else{_3d3(te,_3d5,_3d6,nidx);}}}}var _3e1=_3e2(tqp)(_3d4);if(_3d9){while(_3e1.length){_3d6.push(_3e1.shift());}}else{while(_3e1.length){_3d3(_3e1.shift(),_3d5,_3d6,nidx);}}};var _3e3=function(_3e4,_3e5){var ret=[];var x=_3e4.length-1,te;while(te=_3e4[x--]){_3d3(te,_3e5,ret,0);}return ret;};var _3dd=function(q){if(_3c3[q.query]){return _3c3[q.query];}var ff=null;if(q.tag){if(q.tag=="*"){ff=_3c5(ff,function(elem){return (elem.nodeType==1);});}else{ff=_3c5(ff,function(elem){return ((elem.nodeType==1)&&(q.tag==elem.tagName.toLowerCase()));});}}if(q.id){ff=_3c5(ff,function(elem){return ((elem.nodeType==1)&&(elem.id==q.id));});}if(q.hasLoops){ff=_3c5(ff,_3ee(q));}return _3c3[q.query]=ff;};var _3ef=function(node){var pn=node.parentNode;var pnc=pn.childNodes;var nidx=-1;var _3f4=pn.firstChild;if(!_3f4){return nidx;}var ci=node["__cachedIndex"];var cl=pn["__cachedLength"];if(((typeof cl=="number")&&(cl!=pnc.length))||(typeof ci!="number")){pn["__cachedLength"]=pnc.length;var idx=1;do{if(_3f4===node){nidx=idx;}if(_3f4.nodeType==1){_3f4["__cachedIndex"]=idx;idx++;}_3f4=_3f4.nextSibling;}while(_3f4);}else{nidx=ci;}return nidx;};var _3f8=0;var _3f9="";var _3fa=function(elem,attr){if(attr=="class"){return elem.className||_3f9;}if(attr=="for"){return elem.htmlFor||_3f9;}return elem.getAttribute(attr,2)||_3f9;};var _3fd={"*=":function(attr,_3ff){return function(elem){return (_3fa(elem,attr).indexOf(_3ff)>=0);};},"^=":function(attr,_402){return function(elem){return (_3fa(elem,attr).indexOf(_402)==0);};},"$=":function(attr,_405){var tval=" "+_405;return function(elem){var ea=" "+_3fa(elem,attr);return (ea.lastIndexOf(_405)==(ea.length-_405.length));};},"~=":function(attr,_40a){var tval=" "+_40a+" ";return function(elem){var ea=" "+_3fa(elem,attr)+" ";return (ea.indexOf(tval)>=0);};},"|=":function(attr,_40f){var _410=" "+_40f+"-";return function(elem){var ea=" "+(elem.getAttribute(attr,2)||"");return ((ea==_40f)||(ea.indexOf(_410)==0));};},"=":function(attr,_414){return function(elem){return (_3fa(elem,attr)==_414);};}};var _416={"first-child":function(name,_418){return function(elem){if(elem.nodeType!=1){return false;}var fc=elem.previousSibling;while(fc&&(fc.nodeType!=1)){fc=fc.previousSibling;}return (!fc);};},"last-child":function(name,_41c){return function(elem){if(elem.nodeType!=1){return false;}var nc=elem.nextSibling;while(nc&&(nc.nodeType!=1)){nc=nc.nextSibling;}return (!nc);};},"empty":function(name,_420){return function(elem){var cn=elem.childNodes;var cnl=elem.childNodes.length;for(var x=cnl-1;x>=0;x--){var nt=cn[x].nodeType;if((nt==1)||(nt==3)){return false;}}return true;};},"contains":function(name,_427){return function(elem){return (elem.innerHTML.indexOf(_427)>=0);};},"not":function(name,_42a){var ntf=_3dd(_37e(_42a)[0]);return function(elem){return (!ntf(elem));};},"nth-child":function(name,_42e){var pi=parseInt;if(_42e=="odd"){return function(elem){return (((_3ef(elem))%2)==1);};}else{if((_42e=="2n")||(_42e=="even")){return function(elem){return ((_3ef(elem)%2)==0);};}else{if(_42e.indexOf("0n+")==0){var _432=pi(_42e.substr(3));return function(elem){return (elem.parentNode[_37c][_432-1]===elem);};}else{if((_42e.indexOf("n+")>0)&&(_42e.length>3)){var _434=_42e.split("n+",2);var pred=pi(_434[0]);var idx=pi(_434[1]);return function(elem){return ((_3ef(elem)%pred)==idx);};}else{if(_42e.indexOf("n")==-1){var _432=pi(_42e);return function(elem){return (_3ef(elem)==_432);};}}}}}}};var _439=(d.isIE)?function(cond){var clc=cond.toLowerCase();return function(elem){return elem[cond]||elem[clc];};}:function(cond){return function(elem){return (elem&&elem.getAttribute&&elem.hasAttribute(cond));};};var _3ee=function(_43f){var _440=(_3c4[_43f.query]||_3c3[_43f.query]);if(_440){return _440;}var ff=null;if(_43f.id){if(_43f.tag!="*"){ff=_3c5(ff,function(elem){return (elem.tagName.toLowerCase()==_43f.tag);});}}d.forEach(_43f.classes,function(_443,idx,arr){var _446=_443.charAt(_443.length-1)=="*";if(_446){_443=_443.substr(0,_443.length-1);}var re=new RegExp("(?:^|\\s)"+_443+(_446?".*":"")+"(?:\\s|$)");ff=_3c5(ff,function(elem){return re.test(elem.className);});ff.count=idx;});d.forEach(_43f.pseudos,function(_449){if(_416[_449.name]){ff=_3c5(ff,_416[_449.name](_449.name,_449.value));}});_3a6(_3fd,_43f,_439,function(_44a){ff=_3c5(ff,_44a);});if(!ff){ff=function(){return true;};}return _3c4[_43f.query]=ff;};var _44b={};var _3e2=function(_44c,root){var fHit=_44b[_44c.query];if(fHit){return fHit;}if(_44c.id&&!_44c.hasLoops&&!_44c.tag){return _44b[_44c.query]=function(root){return [d.byId(_44c.id)];};}var _450=_3ee(_44c);var _451;if(_44c.tag&&_44c.id&&!_44c.hasLoops){_451=function(root){var te=d.byId(_44c.id);if(_450(te)){return [te];}};}else{var tret;if(!_44c.hasLoops){_451=function(root){var ret=[];var te,x=0,tret=root.getElementsByTagName(_44c.tag);while(te=tret[x++]){ret.push(te);}return ret;};}else{_451=function(root){var ret=[];var te,x=0,tret=root.getElementsByTagName(_44c.tag);while(te=tret[x++]){if(_450(te)){ret.push(te);}}return ret;};}}return _44b[_44c.query]=_451;};var _45d={};var _45e={"*":d.isIE?function(root){return root.all;}:function(root){return root.getElementsByTagName("*");},"~":_3ce,"+":function(root){return _3ce(root,true);},">":_3c8};var _462=function(_463){var _464=_37e(d.trim(_463));if(_464.length==1){var tt=_3e2(_464[0]);tt.nozip=true;return tt;}var sqf=function(root){var _468=_464.slice(0);var _469;if(_468[0].oper==">"){_469=[root];}else{_469=_3e2(_468.shift())(root);}return _3e3(_469,_468);};return sqf;};var _46a=((document["evaluate"]&&!d.isSafari)?function(_46b){var _46c=_46b.split(" ");if((document["evaluate"])&&(_46b.indexOf(":")==-1)&&(_46b.indexOf("+")==-1)){if(((_46c.length>2)&&(_46b.indexOf(">")==-1))||(_46c.length>3)||(_46b.indexOf("[")>=0)||((1==_46c.length)&&(0<=_46b.indexOf(".")))){return _3ba(_46b);}}return _462(_46b);}:_462);var _46d=function(_46e){var qcz=_46e.charAt(0);if(d.doc["querySelectorAll"]&&((!d.isSafari)||(d.isSafari>3.1))&&(">+~".indexOf(qcz)==-1)){return function(root){var r=root.querySelectorAll(_46e);r.nozip=true;return r;};}if(_45e[_46e]){return _45e[_46e];}if(0>_46e.indexOf(",")){return _45e[_46e]=_46a(_46e);}else{var _472=_46e.split(/\s*,\s*/);var tf=function(root){var _475=0;var ret=[];var tp;while(tp=_472[_475++]){ret=ret.concat(_46a(tp,tp.indexOf(" "))(root));}return ret;};return _45e[_46e]=tf;}};var _478=0;var _zip=function(arr){if(arr&&arr.nozip){return d.NodeList._wrap(arr);}var ret=new d.NodeList();if(!arr){return ret;}if(arr[0]){ret.push(arr[0]);}if(arr.length<2){return ret;}_478++;arr[0]["_zipIdx"]=_478;for(var x=1,te;te=arr[x];x++){if(arr[x]["_zipIdx"]!=_478){ret.push(te);}te["_zipIdx"]=_478;}return ret;};d.query=function(_47e,root){if(_47e.constructor==d.NodeList){return _47e;}if(!d.isString(_47e)){return new d.NodeList(_47e);}if(d.isString(root)){root=d.byId(root);}return _zip(_46d(_47e)(root||d.doc));};d.query.pseudos=_416;d._filterQueryResult=function(_480,_481){var tnl=new d.NodeList();var ff=(_481)?_3dd(_37e(_481)[0]):function(){return true;};for(var x=0,te;te=_480[x];x++){if(ff(te)){tnl.push(te);}}return tnl;};})();}if(!dojo._hasResource["dojo._base.xhr"]){dojo._hasResource["dojo._base.xhr"]=true;dojo.provide("dojo._base.xhr");(function(){var _d=dojo;function setValue(obj,name,_489){var val=obj[name];if(_d.isString(val)){obj[name]=[val,_489];}else{if(_d.isArray(val)){val.push(_489);}else{obj[name]=_489;}}};dojo.formToObject=function(_48b){var ret={};var iq="input:not([type=file]):not([type=submit]):not([type=image]):not([type=reset]):not([type=button]), select, textarea";_d.query(iq,_48b).filter(function(node){return !node.disabled&&node.name;}).forEach(function(item){var _in=item.name;var type=(item.type||"").toLowerCase();if(type=="radio"||type=="checkbox"){if(item.checked){setValue(ret,_in,item.value);}}else{if(item.multiple){ret[_in]=[];_d.query("option",item).forEach(function(opt){if(opt.selected){setValue(ret,_in,opt.value);}});}else{setValue(ret,_in,item.value);if(type=="image"){ret[_in+".x"]=ret[_in+".y"]=ret[_in].x=ret[_in].y=0;}}}});return ret;};dojo.objectToQuery=function(map){var enc=encodeURIComponent;var _495=[];var _496={};for(var name in map){var _498=map[name];if(_498!=_496[name]){var _499=enc(name)+"=";if(_d.isArray(_498)){for(var i=0;i<_498.length;i++){_495.push(_499+enc(_498[i]));}}else{_495.push(_499+enc(_498));}}}return _495.join("&");};dojo.formToQuery=function(_49b){return _d.objectToQuery(_d.formToObject(_49b));};dojo.formToJson=function(_49c,_49d){return _d.toJson(_d.formToObject(_49c),_49d);};dojo.queryToObject=function(str){var ret={};var qp=str.split("&");var dec=decodeURIComponent;_d.forEach(qp,function(item){if(item.length){var _4a3=item.split("=");var name=dec(_4a3.shift());var val=dec(_4a3.join("="));if(_d.isString(ret[name])){ret[name]=[ret[name]];}if(_d.isArray(ret[name])){ret[name].push(val);}else{ret[name]=val;}}});return ret;};dojo._blockAsync=false;dojo._contentHandlers={"text":function(xhr){return xhr.responseText;},"json":function(xhr){if(!dojo.config.usePlainJson){console.warn("Consider using mimetype:text/json-comment-filtered"+" to avoid potential security issues with JSON endpoints"+" (use djConfig.usePlainJson=true to turn off this message)");}return (xhr.status==204)?undefined:_d.fromJson(xhr.responseText);},"json-comment-filtered":function(xhr){var _4a9=xhr.responseText;var _4aa=_4a9.indexOf("/*");var _4ab=_4a9.lastIndexOf("*/");if(_4aa==-1||_4ab==-1){throw new Error("JSON was not comment filtered");}return (xhr.status==204)?undefined:_d.fromJson(_4a9.substring(_4aa+2,_4ab));},"javascript":function(xhr){return _d.eval(xhr.responseText);},"xml":function(xhr){var _4ae=xhr.responseXML;if(_d.isIE&&(!_4ae||window.location.protocol=="file:")){_d.forEach(["MSXML2","Microsoft","MSXML","MSXML3"],function(_4af){try{var dom=new ActiveXObject(_4af+".XMLDOM");dom.async=false;dom.loadXML(xhr.responseText);_4ae=dom;}catch(e){}});}return _4ae;}};dojo._contentHandlers["json-comment-optional"]=function(xhr){var _4b2=_d._contentHandlers;try{return _4b2["json-comment-filtered"](xhr);}catch(e){return _4b2["json"](xhr);}};dojo._ioSetArgs=function(args,_4b4,_4b5,_4b6){var _4b7={args:args,url:args.url};var _4b8=null;if(args.form){var form=_d.byId(args.form);var _4ba=form.getAttributeNode("action");_4b7.url=_4b7.url||(_4ba?_4ba.value:null);_4b8=_d.formToObject(form);}var _4bb=[{}];if(_4b8){_4bb.push(_4b8);}if(args.content){_4bb.push(args.content);}if(args.preventCache){_4bb.push({"dojo.preventCache":new Date().valueOf()});}_4b7.query=_d.objectToQuery(_d.mixin.apply(null,_4bb));_4b7.handleAs=args.handleAs||"text";var d=new _d.Deferred(_4b4);d.addCallbacks(_4b5,function(_4bd){return _4b6(_4bd,d);});var ld=args.load;if(ld&&_d.isFunction(ld)){d.addCallback(function(_4bf){return ld.call(args,_4bf,_4b7);});}var err=args.error;if(err&&_d.isFunction(err)){d.addErrback(function(_4c1){return err.call(args,_4c1,_4b7);});}var _4c2=args.handle;if(_4c2&&_d.isFunction(_4c2)){d.addBoth(function(_4c3){return _4c2.call(args,_4c3,_4b7);});}d.ioArgs=_4b7;return d;};var _4c4=function(dfd){dfd.canceled=true;var xhr=dfd.ioArgs.xhr;var _at=typeof xhr.abort;if(_at=="function"||_at=="unknown"){xhr.abort();}var err=new Error("xhr cancelled");err.dojoType="cancel";return err;};var _4c9=function(dfd){return _d._contentHandlers[dfd.ioArgs.handleAs](dfd.ioArgs.xhr);};var _4cb=function(_4cc,dfd){console.debug(_4cc);return _4cc;};var _4ce=function(args){var dfd=_d._ioSetArgs(args,_4c4,_4c9,_4cb);dfd.ioArgs.xhr=_d._xhrObj(dfd.ioArgs.args);return dfd;};var _4d1=null;var _4d2=[];var _4d3=function(){var now=(new Date()).getTime();if(!_d._blockAsync){for(var i=0,tif;i<_4d2.length&&(tif=_4d2[i]);i++){var dfd=tif.dfd;try{if(!dfd||dfd.canceled||!tif.validCheck(dfd)){_4d2.splice(i--,1);}else{if(tif.ioCheck(dfd)){_4d2.splice(i--,1);tif.resHandle(dfd);}else{if(dfd.startTime){if(dfd.startTime+(dfd.ioArgs.args.timeout||0)<now){_4d2.splice(i--,1);var err=new Error("timeout exceeded");err.dojoType="timeout";dfd.errback(err);dfd.cancel();}}}}}catch(e){console.debug(e);dfd.errback(new Error("_watchInFlightError!"));}}}if(!_4d2.length){clearInterval(_4d1);_4d1=null;return;}};dojo._ioCancelAll=function(){try{_d.forEach(_4d2,function(i){i.dfd.cancel();});}catch(e){}};if(_d.isIE){_d.addOnUnload(_d._ioCancelAll);}_d._ioWatch=function(dfd,_4db,_4dc,_4dd){if(dfd.ioArgs.args.timeout){dfd.startTime=(new Date()).getTime();}_4d2.push({dfd:dfd,validCheck:_4db,ioCheck:_4dc,resHandle:_4dd});if(!_4d1){_4d1=setInterval(_4d3,50);}_4d3();};var _4de="application/x-www-form-urlencoded";var _4df=function(dfd){return dfd.ioArgs.xhr.readyState;};var _4e1=function(dfd){return 4==dfd.ioArgs.xhr.readyState;};var _4e3=function(dfd){var xhr=dfd.ioArgs.xhr;if(_d._isDocumentOk(xhr)){dfd.callback(dfd);}else{var err=new Error("Unable to load "+dfd.ioArgs.url+" status:"+xhr.status);err.status=xhr.status;err.responseText=xhr.responseText;dfd.errback(err);}};var _4e7=function(type,dfd){var _4ea=dfd.ioArgs;var args=_4ea.args;var xhr=_4ea.xhr;xhr.open(type,_4ea.url,args.sync!==true,args.user||undefined,args.password||undefined);if(args.headers){for(var hdr in args.headers){if(hdr.toLowerCase()==="content-type"&&!args.contentType){args.contentType=args.headers[hdr];}else{xhr.setRequestHeader(hdr,args.headers[hdr]);}}}xhr.setRequestHeader("Content-Type",args.contentType||_4de);if(!args.headers||!args.headers["X-Requested-With"]){xhr.setRequestHeader("X-Requested-With","XMLHttpRequest");}try{xhr.send(_4ea.query);}catch(e){dfd.cancel();}_d._ioWatch(dfd,_4df,_4e1,_4e3);xhr=null;return dfd;};dojo._ioAddQueryToUrl=function(_4ee){if(_4ee.query.length){_4ee.url+=(_4ee.url.indexOf("?")==-1?"?":"&")+_4ee.query;_4ee.query=null;}};dojo.xhr=function(_4ef,args,_4f1){var dfd=_4ce(args);if(!_4f1){_d._ioAddQueryToUrl(dfd.ioArgs);}return _4e7(_4ef,dfd);};dojo.xhrGet=function(args){return _d.xhr("GET",args);};dojo.xhrPost=function(args){return _d.xhr("POST",args,true);};dojo.rawXhrPost=function(args){var dfd=_4ce(args);dfd.ioArgs.query=args.postData;return _4e7("POST",dfd);};dojo.xhrPut=function(args){return _d.xhr("PUT",args,true);};dojo.rawXhrPut=function(args){var dfd=_4ce(args);var _4fa=dfd.ioArgs;if(args.putData){_4fa.query=args.putData;args.putData=null;}return _4e7("PUT",dfd);};dojo.xhrDelete=function(args){return _d.xhr("DELETE",args);};})();}if(!dojo._hasResource["dojo._base.fx"]){dojo._hasResource["dojo._base.fx"]=true;dojo.provide("dojo._base.fx");(function(){var d=dojo;dojo._Line=function(_4fd,end){this.start=_4fd;this.end=end;this.getValue=function(n){return ((this.end-this.start)*n)+this.start;};};d.declare("dojo._Animation",null,{constructor:function(args){d.mixin(this,args);if(d.isArray(this.curve)){this.curve=new d._Line(this.curve[0],this.curve[1]);}},duration:350,repeat:0,rate:10,_percent:0,_startRepeatCount:0,_fire:function(evt,args){try{if(this[evt]){this[evt].apply(this,args||[]);}}catch(e){console.error("exception in animation handler for:",evt);console.error(e);}return this;},play:function(_503,_504){var _t=this;if(_504){_t._stopTimer();_t._active=_t._paused=false;_t._percent=0;}else{if(_t._active&&!_t._paused){return _t;}}_t._fire("beforeBegin");var de=_503||_t.delay;var _p=dojo.hitch(_t,"_play",_504);if(de>0){setTimeout(_p,de);return _t;}_p();return _t;},_play:function(_508){var _t=this;_t._startTime=new Date().valueOf();if(_t._paused){_t._startTime-=_t.duration*_t._percent;}_t._endTime=_t._startTime+_t.duration;_t._active=true;_t._paused=false;var _50a=_t.curve.getValue(_t._percent);if(!_t._percent){if(!_t._startRepeatCount){_t._startRepeatCount=_t.repeat;}_t._fire("onBegin",[_50a]);}_t._fire("onPlay",[_50a]);_t._cycle();return _t;},pause:function(){this._stopTimer();if(!this._active){return this;}this._paused=true;this._fire("onPause",[this.curve.getValue(this._percent)]);return this;},gotoPercent:function(_50b,_50c){this._stopTimer();this._active=this._paused=true;this._percent=_50b;if(_50c){this.play();}return this;},stop:function(_50d){if(!this._timer){return this;}this._stopTimer();if(_50d){this._percent=1;}this._fire("onStop",[this.curve.getValue(this._percent)]);this._active=this._paused=false;return this;},status:function(){if(this._active){return this._paused?"paused":"playing";}return "stopped";},_cycle:function(){var _t=this;if(_t._active){var curr=new Date().valueOf();var step=(curr-_t._startTime)/(_t._endTime-_t._startTime);if(step>=1){step=1;}_t._percent=step;if(_t.easing){step=_t.easing(step);}_t._fire("onAnimate",[_t.curve.getValue(step)]);if(_t._percent<1){_t._startTimer();}else{_t._active=false;if(_t.repeat>0){_t.repeat--;_t.play(null,true);}else{if(_t.repeat==-1){_t.play(null,true);}else{if(_t._startRepeatCount){_t.repeat=_t._startRepeatCount;_t._startRepeatCount=0;}}}_t._percent=0;_t._fire("onEnd");_t._stopTimer();}}return _t;}});var ctr=0;var _512=[];var _513={run:function(){}};var _514=null;dojo._Animation.prototype._startTimer=function(){if(!this._timer){this._timer=d.connect(_513,"run",this,"_cycle");ctr++;}if(!_514){_514=setInterval(d.hitch(_513,"run"),this.rate);}};dojo._Animation.prototype._stopTimer=function(){if(this._timer){d.disconnect(this._timer);this._timer=null;ctr--;}if(ctr<=0){clearInterval(_514);_514=null;ctr=0;}};var _515=(d.isIE)?function(node){var ns=node.style;if(!ns.zoom.length&&d.style(node,"zoom")=="normal"){ns.zoom="1";}if(!ns.width.length&&d.style(node,"width")=="auto"){ns.width="auto";}}:function(){};dojo._fade=function(args){args.node=d.byId(args.node);var _519=d.mixin({properties:{}},args);var _51a=(_519.properties.opacity={});_51a.start=!("start" in _519)?function(){return Number(d.style(_519.node,"opacity"));}:_519.start;_51a.end=_519.end;var anim=d.animateProperty(_519);d.connect(anim,"beforeBegin",d.partial(_515,_519.node));return anim;};dojo.fadeIn=function(args){return d._fade(d.mixin({end:1},args));};dojo.fadeOut=function(args){return d._fade(d.mixin({end:0},args));};dojo._defaultEasing=function(n){return 0.5+((Math.sin((n+1.5)*Math.PI))/2);};var _51f=function(_520){this._properties=_520;for(var p in _520){var prop=_520[p];if(prop.start instanceof d.Color){prop.tempColor=new d.Color();}}this.getValue=function(r){var ret={};for(var p in this._properties){var prop=this._properties[p];var _527=prop.start;if(_527 instanceof d.Color){ret[p]=d.blendColors(_527,prop.end,r,prop.tempColor).toCss();}else{if(!d.isArray(_527)){ret[p]=((prop.end-_527)*r)+_527+(p!="opacity"?prop.units||"px":"");}}}return ret;};};dojo.animateProperty=function(args){args.node=d.byId(args.node);if(!args.easing){args.easing=d._defaultEasing;}var anim=new d._Animation(args);d.connect(anim,"beforeBegin",anim,function(){var pm={};for(var p in this.properties){if(p=="width"||p=="height"){this.node.display="block";}var prop=this.properties[p];prop=pm[p]=d.mixin({},(d.isObject(prop)?prop:{end:prop}));if(d.isFunction(prop.start)){prop.start=prop.start();}if(d.isFunction(prop.end)){prop.end=prop.end();}var _52d=(p.toLowerCase().indexOf("color")>=0);function getStyle(node,p){var v=({height:node.offsetHeight,width:node.offsetWidth})[p];if(v!==undefined){return v;}v=d.style(node,p);return (p=="opacity")?Number(v):(_52d?v:parseFloat(v));};if(!("end" in prop)){prop.end=getStyle(this.node,p);}else{if(!("start" in prop)){prop.start=getStyle(this.node,p);}}if(_52d){prop.start=new d.Color(prop.start);prop.end=new d.Color(prop.end);}else{prop.start=(p=="opacity")?Number(prop.start):parseFloat(prop.start);}}this.curve=new _51f(pm);});d.connect(anim,"onAnimate",anim,function(_531){for(var s in _531){d.style(this.node,s,_531[s]);}});return anim;};dojo.anim=function(node,_534,_535,_536,_537,_538){return d.animateProperty({node:node,duration:_535||d._Animation.prototype.duration,properties:_534,easing:_536,onEnd:_537}).play(_538||0);};})();}if(!dojo._hasResource["dojo.i18n"]){dojo._hasResource["dojo.i18n"]=true;dojo.provide("dojo.i18n");dojo.i18n.getLocalization=function(_539,_53a,_53b){_53b=dojo.i18n.normalizeLocale(_53b);var _53c=_53b.split("-");var _53d=[_539,"nls",_53a].join(".");var _53e=dojo._loadedModules[_53d];if(_53e){var _53f;for(var i=_53c.length;i>0;i--){var loc=_53c.slice(0,i).join("_");if(_53e[loc]){_53f=_53e[loc];break;}}if(!_53f){_53f=_53e.ROOT;}if(_53f){var _542=function(){};_542.prototype=_53f;return new _542();}}throw new Error("Bundle not found: "+_53a+" in "+_539+" , locale="+_53b);};dojo.i18n.normalizeLocale=function(_543){var _544=_543?_543.toLowerCase():dojo.locale;if(_544=="root"){_544="ROOT";}return _544;};dojo.i18n._requireLocalization=function(_545,_546,_547,_548){var _549=dojo.i18n.normalizeLocale(_547);var _54a=[_545,"nls",_546].join(".");var _54b="";if(_548){var _54c=_548.split(",");for(var i=0;i<_54c.length;i++){if(_549.indexOf(_54c[i])==0){if(_54c[i].length>_54b.length){_54b=_54c[i];}}}if(!_54b){_54b="ROOT";}}var _54e=_548?_54b:_549;var _54f=dojo._loadedModules[_54a];var _550=null;if(_54f){if(dojo.config.localizationComplete&&_54f._built){return;}var _551=_54e.replace(/-/g,"_");var _552=_54a+"."+_551;_550=dojo._loadedModules[_552];}if(!_550){_54f=dojo["provide"](_54a);var syms=dojo._getModuleSymbols(_545);var _554=syms.concat("nls").join("/");var _555;dojo.i18n._searchLocalePath(_54e,_548,function(loc){var _557=loc.replace(/-/g,"_");var _558=_54a+"."+_557;var _559=false;if(!dojo._loadedModules[_558]){dojo["provide"](_558);var _55a=[_554];if(loc!="ROOT"){_55a.push(loc);}_55a.push(_546);var _55b=_55a.join("/")+".js";_559=dojo._loadPath(_55b,null,function(hash){var _55d=function(){};_55d.prototype=_555;_54f[_557]=new _55d();for(var j in hash){_54f[_557][j]=hash[j];}});}else{_559=true;}if(_559&&_54f[_557]){_555=_54f[_557];}else{_54f[_557]=_555;}if(_548){return true;}});}if(_548&&_549!=_54b){_54f[_549.replace(/-/g,"_")]=_54f[_54b.replace(/-/g,"_")];}};(function(){var _55f=dojo.config.extraLocale;if(_55f){if(!_55f instanceof Array){_55f=[_55f];}var req=dojo.i18n._requireLocalization;dojo.i18n._requireLocalization=function(m,b,_563,_564){req(m,b,_563,_564);if(_563){return;}for(var i=0;i<_55f.length;i++){req(m,b,_55f[i],_564);}};}})();dojo.i18n._searchLocalePath=function(_566,down,_568){_566=dojo.i18n.normalizeLocale(_566);var _569=_566.split("-");var _56a=[];for(var i=_569.length;i>0;i--){_56a.push(_569.slice(0,i).join("-"));}_56a.push(false);if(down){_56a.reverse();}for(var j=_56a.length-1;j>=0;j--){var loc=_56a[j]||"ROOT";var stop=_568(loc);if(stop){break;}}};dojo.i18n._preloadLocalizations=function(_56f,_570){function preload(_571){_571=dojo.i18n.normalizeLocale(_571);dojo.i18n._searchLocalePath(_571,true,function(loc){for(var i=0;i<_570.length;i++){if(_570[i]==loc){dojo["require"](_56f+"_"+loc);return true;}}return false;});};preload();var _574=dojo.config.extraLocale||[];for(var i=0;i<_574.length;i++){preload(_574[i]);}};}if(!dojo._hasResource["dojo._base.browser"]){dojo._hasResource["dojo._base.browser"]=true;dojo.provide("dojo._base.browser");if(dojo.config.require){dojo.forEach(dojo.config.require,"dojo['require'](item);");}}if(dojo.config.afterOnLoad&&dojo.isBrowser){window.setTimeout(dojo._fakeLoadInit,1000);}})();



var bindArgs = "";

// Call this function to make dojo calls.
// ajaxURL is the variable which takes the URL you are trying to invoke.
// loadFunctionName is the function that will be called after successful response. Make sure
// your local code has a function whose name matches the variable loadFunctionName
// The function signature should be

// Your local function will get a JSON object, which you can parse locally and display the HTML

function GetData(ajaxURL, loadFunctionName, formID) {
	if(formID != '') {
		bindArgs = 	{
			url: ajaxURL,
			mimetype:'text/html',
			preventCache: true,
			form: dojo.byId(eval("'" + formID + "'")),
		error: function(type, errObj){
			// handle error here
			},	
		load:   function(response, ioArgs) {
				var myJSONObject = eval('(' + response + ')');
				var fCall = loadFunctionName + "(myJSONObject);";
			  	eval(fCall);
				  return response;
		        }
		};
	} else {
		bindArgs = 	{
			url: ajaxURL,
			mimetype:'text/html',
			preventCache: true,
		error: function(type, errObj){
			// handle error here
			},	
		load:   function(response, ioArgs) {
				var myJSONObject = eval('(' + response + ')');
			  	var fCall = loadFunctionName + "(myJSONObject);";
			  	eval(fCall);
		          return response;
		        }
		};
	}
	dojoInit();

} // end GetJSONObject

function GetDataWithReturnParams(ajaxURL, loadFunctionName, formID, returnParams) {
	if(formID != '') {
		bindArgs = 	{
			url: ajaxURL,
			mimetype:'text/html',
			preventCache: true,
			form: dojo.byId(eval("'" + formID + "'")),
		error: function(type, errObj){
			// handle error here
			},	
		load:   function(response, ioArgs) {
			  	var myJSONObject = eval('(' + response + ')');
			  	var fCall = loadFunctionName + "(myJSONObject,'" + returnParams + "');";
			  	eval(fCall);
		          return response;
		        }
		};
	} else {
		bindArgs = 	{
			url: ajaxURL,
			mimetype:'text/html',
			preventCache: true,			
		error: function(type, errObj){
			// handle error here
			},	
		load:   function(response, ioArgs) {
			  	var myJSONObject = eval('(' + response + ')');
			  	var fCall = loadFunctionName + "(myJSONObject,'" + returnParams + "');";
			  	eval(fCall);
		          return response;
		        }
		};
	}
	dojoInit();

} // end GetJSONObject

function GetDataWithReturnParamsUsingGET(ajaxURL, loadFunctionName, formID, returnParams) {
	if(formID != '') {
		bindArgs = 	{
			url: ajaxURL,
			mimetype:'text/html',
			preventCache: false,
			form: dojo.byId(eval("'" + formID + "'")),
		error: function(type, errObj){
			// handle error here
			},	
		load:   function(response, ioArgs) {
			  	var myJSONObject = eval('(' + response + ')');
			  	var fCall = loadFunctionName + "(myJSONObject,'" + returnParams + "');";
			  	eval(fCall);
		          return response;
		        }
		};
	} else {
		bindArgs = 	{
			url: ajaxURL,
			mimetype:'text/html',
			preventCache: false,			
		error: function(type, errObj){
			// handle error here
			},	
		load:   function(response, ioArgs) {
			  	var myJSONObject = eval('(' + response + ')');
			  	var fCall = loadFunctionName + "(myJSONObject,'" + returnParams + "');";
			  	eval(fCall);
		          return response;
		        }
		};
	}
	dojoGetInit();

} // end GetJSONObject


function GetDataAsHTML(ajaxURL, loadFunctionName, formID) {
	if(formID != '') {
		bindArgs = 	{
			url: ajaxURL,
			mimetype:'text',
			preventCache: true,
			form: dojo.byId(eval("'" + formID + "'")),
		error: function(type, errObj){
			// handle error here
			},	
		load:   function(response, ioArgs) {
			  var fCall = loadFunctionName + "(" + response + ");";
			  eval(fCall);
		          return response;
		        }
		};
	} else {
		bindArgs = 	{
			url: ajaxURL,			
			mimetype:'text',
			preventCache: true,
		error: function(type, errObj){
			// handle error here
			},	
		load:   function(response, ioArgs) {
			  var fCall = loadFunctionName + "(" + response + ");";
			  eval(fCall);
		          return response;
		        }
		};
	}
	dojoInit();

} // end GetJSONObject


function GetDataAndReplaceHTML(ajaxURL, loadFunctionName, formID, divID) {
	if(formID != '') {
		bindArgs = 	{
			url: ajaxURL,
			form: dojo.byId(eval("'" + formID + "'")),
			mimetype:'text/html',
			preventCache: true,
		error: function(type, errObj){
			// handle error here
			},	
		load:   function(response, ioArgs) {
			if(divID != '') {
			  	var div = eval("document.getElementById('" + divID + "');");
			  	div.innerHTML = "";
			  	div.innerHTML = response;
			}	
			var fCall = loadFunctionName + "();";
			eval(fCall);	
		    return response;
		 }
		};
	} else {
		bindArgs = 	{
			url: ajaxURL,
			mimetype:'text/html',
			preventCache: true,
		error: function(type, errObj){
			// handle error here
			},	
		load:   function(response, ioArgs) {
			if(divID != '') {
			  	var div = eval("document.getElementById('" + divID + "');");
			  	div.innerHTML = "";
			  	div.innerHTML = response;
			}	
			var fCall = loadFunctionName + "();";
			eval(fCall);	
		    return response;
		 }
		};
	}
	dojoInit();

} // end GetJSONObject


function GetDataAndReplaceHTMLWithParams(ajaxURL, loadFunctionName, formID, divID, returnParams) {
	if(formID != '') {
		bindArgs = 	{
			url: ajaxURL,
			form: dojo.byId(eval("'" + formID + "'")),
			mimetype:'text/html',
			preventCache: true,
		error: function(type, errObj){
			// handle error here
			},	
		load:   function(response, ioArgs) {
			if(divID != '') {
			  	var div = eval("document.getElementById('" + divID + "');");
			  	div.innerHTML = "";
			  	div.innerHTML = response;
			}	
			var fCall = loadFunctionName + "('" + returnParams + "');";
			eval(fCall);	
		    return response;
		 }
		};
	} else {
		bindArgs = 	{
			url: ajaxURL,
			mimetype:'text/html',
			preventCache: true,
		error: function(type, errObj){
			// handle error here
			},	
		load:   function(response, ioArgs) {
			if(divID != '') {
			  	var div = eval("document.getElementById('" + divID + "');");
			  	div.innerHTML = "";
			  	div.innerHTML = response;
			}	
			var fCall = loadFunctionName + "('" + returnParams + "');";
			eval(fCall);	
		    return response;
		 }
		};
	}
	dojoInit();

} 




function dojoInit() {
	var requestObj = dojo.xhrPost(bindArgs);
}

function dojoGetInit(){
	var requestObj = dojo.xhrGet(bindArgs);
}

function getAuthorLatestResarchGsaRuleJS(authorId, divID, userId) {
	var targetDivID = divID;
	var targetDivObject = document.getElementById(targetDivID);
	// This hack is for IE
	var displayLoadingHTML = "";
	for(var i=0; i < 32; i++) {
		displayLoadingHTML += "&nbsp;" + " ";
	}
	displayLoadingHTML += "<strong>Loading...</strong><br/><br/>";
	targetDivObject.innerHTML = "";
	targetDivObject.innerHTML = displayLoadingHTML;

	var rule_name = "LatestResearchByAuthorId";
	var codeType = "&iAuthorId=";
	
	var forecastsUrl = "rule.do?m=json&rn=" + rule_name + "&iUSER_ID=" + userId + "&iNUMBER_OF_MATCHES=3" + codeType + authorId;
	var transformedURL = gatewayUrlForAddToLibrary + forecastsUrl;
	
	dojo.xhrPost( {
			// The following URL must match that used to test the server.
			url: transformedURL,
			mimetype:'text/html',
			preventCache: true,
			error: function(type, errObj){
					// handle error here
					// console.debug("HTTP status code: ", ioArgs.xhr.status);
					// console.debug("Error occured...");
					// return response;
				},
	
			load:   function(response, ioArgs) {
				  	var researchJSONObject = eval('(' + response + ')');
				  	targetDivObject.innerHTML = "";
					var displayHTML = "";
					var researchJSONObjectLength = researchJSONObject.researchItems.length;
					if(researchJSONObjectLength > 0) {
						for(var i=0; i < researchJSONObjectLength; i++) {
							var docDisplayURL = jsDocDisplayBaseUrl + "&ref=MyAnalysts&resId=" + researchJSONObject.researchItems[i].RES_ID;
							displayHTML += '<p class="p_spacer"><a href="' + docDisplayURL + '">';
							var titleName = researchJSONObject.researchItems[i].TITLE_NM;
							// Show title as is
							displayHTML += titleName;
							displayHTML += "</a>";
							displayHTML += "</p>";
						} // end for
					} // end if
					else{
						
						displayHTML += "No latest research published by this author";
					}
	
					targetDivObject.innerHTML = displayHTML;
			          	return response;
			        }
	});
}


function getNewsWireGsaRuleJS(divID) {
	var targetDivID = divID;
	var targetDivObject = document.getElementById(targetDivID);
	// This hack is for IE
	var displayLoadingHTML = "";
	for(var i=0; i < 32; i++) {
		displayLoadingHTML += "&nbsp;" + " ";
	}
	displayLoadingHTML += "<strong>Loading...</strong><br/><br/>";
	targetDivObject.innerHTML = "";
	targetDivObject.innerHTML = displayLoadingHTML;

	var rule_name = "MyNews-GartnerNews-2";
	var forecastsUrl = "rule.do?m=json&rn=" + rule_name + "&iNUMBER_OF_MATCHES=5" + "&getAdditionalInput=y";
	var transformedURL = gatewayUrlForAddToLibrary + forecastsUrl;
	
	dojo.xhrPost( {
			// The following URL must match that used to test the server.
			url: transformedURL,
			mimetype:'text/html',
			preventCache: true,
			error: function(type, errObj){
					// handle error here
					// console.debug("HTTP status code: ", ioArgs.xhr.status);
					// console.debug("Error occured...");
					// return response;
				},
	
			load:function(response, ioArgs) {
				  	var researchJSONObject = eval('(' + response + ')');
				  	targetDivObject.innerHTML = "";
					var displayHTML = "";
					var researchJSONObjectLength = researchJSONObject.researchItems.length;
					if(researchJSONObjectLength > 0) {
						for(var i=0; i < researchJSONObjectLength; i++) {
							var externalURL = researchJSONObject.researchItems[i].LINK;
							var pubDt = researchJSONObject.researchItems[i].DISPLAY_DT;
							var titleName = researchJSONObject.researchItems[i].TITLE_NM;
							displayHTML += '<p class="b_space">';
							displayHTML += '<a href="' + externalURL + '" target="_0">';
							displayHTML += titleName;
							displayHTML += "</a>";
							displayHTML += '<span class="tiny_arrow_rt">&nbsp;</span>';
							displayHTML += "<br />";
							displayHTML += pubDt; 
							displayHTML += "</p>";
						} // end for
					} // end if
					else{
						
						displayHTML += "Newswire results are not found";
					}
	
					targetDivObject.innerHTML = displayHTML;
			          	return response;
			        }
	});
}

// Utility function to get and display ITL Activity Cycle featured research using AJAX
function getITLFeaturedResearch(roleCodePrefSelected, phaseCodeSelected, actionCodeSelected, acFeatResDivId) {
	//alert(">>" + roleCodePrefSelected + "<>" + phaseCodeSelected + "<>" + actionCodeSelected + "<>" + acFeatResDivId + "<<");
	//var xmlFile = "/web/app/portal/docs/content_lists/it_leaders/role_phase_action";
	var xslFile = "rolePhaseActionFeaturedResearch.xsl";
	var featres = "jsps/itl/activityCycle/acRolePhaseActionXSLT.jsp?roleCode=" + roleCodePrefSelected + "&phaseCode=" + phaseCodeSelected + "&actionCode=" + actionCodeSelected + "&xslFile=" + xslFile;
	var featresUrl = gatewayUrlForAddToLibrary + featres;
	
	var div = eval("document.getElementById('" + acFeatResDivId + "');");
	div.style.display = '';
		  
		  
	GetDataAndReplaceHTML(featresUrl, 'getITLFeaturedResearchConfirm', '', acFeatResDivId);
}

function getITLFeaturedResearchConfirm() {
	//alert("Loaded featured res...");	
}

function showRSDLetter() {
	
	rawPopUp(gatewayUrlForAddToLibrary + 'jsps/itl/rsdLetter.jsp', '600', '600', 'resizable=yes,scrollbars=yes,toolbar=no');
}

function sendEmail(fromEmailAddress, toEmailAddress, subject, bodyContentLocation) {
	
	rawPopUp('/gp/email.do?method=sendEmail&fromEmailAddress=' + fromEmailAddress + 
				'&toEmailAddress=' + toEmailAddress + '&subject=' + subject + 
				'&bodyContentLocation=' + bodyContentLocation, '600', '100', 'resizable=no,scrollbars=no,toolbar=no');
}

function refreshParentWindow(url) {
	window.opener.location.href = url;	
}

//This is the  viewMore Submit Function.
function ViewMorePageResults(ruleName,inputMapValues,startResultIndexKeyName,pageTitle) {
	var form = document.ViewMorePageResultsForm;
	form.ruleName.value=ruleName;
	form.inputMapValues.value=inputMapValues;
	form.startResultIndexKeyName.value=startResultIndexKeyName;
	form.pageTitle.value=pageTitle;
	form.submit();
}

 

//This method makes the ajax call to get a user's workgroup usage information

function getWorkgroupStatusInfoForUser(gartnerComUserId) {

	var contentRequest = new PTHTTPGETRequest(gatewayUrlForAddToLibrary + 'workgroupInfo.do?methodName=getWorkgroupUsageInfoForUser&userId=' +  gartnerComUserId, document.getElementById('workgroupActivityContent'));
     contentRequest.invoke();
     return false;
}


function ajaxCallToGetMagicQuadrantVendorInformation(resId) {
		
		var ajaxUrl = gatewayUrlForAddToLibrary + 'myVendors.do?function=showVendorNames&resId=' + resId;
		var contentRequest = new PTHTTPGETRequest(ajaxUrl, document.getElementById('globalLayerDiv'));
		contentRequest.invoke();
		return false;
}

function getWhoIsInMyWorkgroupInfoForUser(gartnerComUserId) {
 	var contentRequest = new PTHTTPGETRequest(gatewayUrlForAddToLibrary + 'workgroupInfo.do?methodName=getWhoIsInMyWorkgroupInfoForUser&userId=' +  gartnerComUserId, document.getElementById('whoIsInMyWorkgroupActivityContent'));
 	contentRequest.invoke();
    	return false;
}

function ajaxCallToGetCoverageAreaTabInfo(authorId, facet) {
		var ajaxUrl = gatewayUrlForAddToLibrary + 'analystBio.do?methodName=showCoverageAreasTabs&authorId='+ authorId+'&facet='+facet;
		var contentRequest = new PTHTTPGETRequest(ajaxUrl, document.getElementById('globalLayerDiv'));
		contentRequest.invoke();
		return false;
}

function getARMyCompanyLatestResarch(divID) {
	var targetDivID = divID;
	var targetDivObject = document.getElementById(targetDivID);
	// This hack is for IE
	var displayLoadingHTML = "";
	for(var i=0; i < 32; i++) {
		displayLoadingHTML += "&nbsp;" + " ";
	}
	displayLoadingHTML += "<strong>Loading...</strong><br/><br/>";
	targetDivObject.innerHTML = "";
	targetDivObject.innerHTML = displayLoadingHTML;

	var rule_name = "InvestCompanyTearSheet-ContentCanvasRule";
	
	var forecastsUrl = "rule.do?m=json&rn=" + rule_name + "&getAdditionalInput=y";
	var transformedURL = gatewayUrlForAddToLibrary + forecastsUrl;
	
	dojo.xhrPost( {
		// The following URL must match that used to test the server.
		url: transformedURL,
		mimetype:'text/html',
		preventCache: true,
		error: function(type, errObj){
				// handle error here
				// console.debug("HTTP status code: ", ioArgs.xhr.status);
				// console.debug("Error occured...");
				// return response;
			},
		load:function(response, ioArgs) {
			  	var researchJSONObject = eval('(' + response + ')');
			  	targetDivObject.innerHTML = "";
				var displayHTML = "";
				var researchJSONObjectLength = researchJSONObject.researchItems.length;
				var maxResults = 3;
				if(researchJSONObjectLength<3){maxResults = researchJSONObjectLength}
				 
				if(researchJSONObjectLength > 0) {
					for(var i=0; i < maxResults; i++) {
						
						var docDisplayURL = jsDocDisplayBaseUrl + "&ref=MyCompanyHome&resId=" + researchJSONObject.researchItems[i].RES_ID;
						var titleName = researchJSONObject.researchItems[i].TITLE_NM;
						var pubDt = researchJSONObject.researchItems[i].DISPLAY_DT;
						
						displayHTML +="<ul>";
						displayHTML += '<li class="title"><a href="' + docDisplayURL + '">';
						displayHTML += titleName;
						displayHTML += "</a></li>";
						displayHTML += '<span xmlns:pt="http://www.plumtree.com/xmlschemas/ptui/">';
						displayHTML += '<li class="title">';
						displayHTML += generateAddToLibraryURL(researchJSONObject.researchItems[i].RES_ID);
						displayHTML += "</li>";
						displayHTML += "</span>";
						displayHTML += '<li class="none">';
						displayHTML += pubDt;
						displayHTML += "</li>";
						displayHTML += "</ul>";
					} // end for
				} // end if
				else{
					
					displayHTML += "No results found";
				}
	
				targetDivObject.innerHTML = displayHTML;
		          	return response;
		        }
	});
}


function hdrSearchBox_showSearchPreferencesCallback() {
	var ajaxUrl = gatewayUrlForSearch + 'gSearch.do?method=showPreferences';
	new PTHTTPGETRequest(ajaxUrl, document.getElementById('globalLayerDiv')).invoke();
	return false;
}

// div size can be specified as:  hdrSearchBox_showSearchPreferences({"width" : 500, "height" : 100});
function hdrSearchBox_showSearchPreferences(oArgs){
	oArgs = oArgs ? oArgs : {};
	var width = oArgs.width ? oArgs.width : 580;
	var height = oArgs.height ? oArgs.height : 300;
	showGlobalLayerParam('hdrSearchBox_showSearchPreferencesCallback()', 'globalLayerDiv', 
				formNamesWithSelectBoxesInLayer, width, height, 'true',1);
	return false;
}




// RADIO CONTROLS
function setCheckboxList(formName, groupName, checked) {
   rForm = eval('document.' + formName);
	group = eval('rForm.' + groupName);
	if (group) {
		if(group.length > 0) {
			for (i=0; i<group.length; i++) {
				group[i].checked = checked;
			}
		}
		else {
			group.checked = checked;
		}
	}
}

function groupIsChecked(formName, groupName) {
   rForm = eval('document.' + formName);
	group = eval('rForm.' + groupName);
	if (group) {
		if(group.length > 0) {
			for (i=0; i<group.length; i++) {
				if (group[i].checked) {
					return true;
				}
			}
		}
		else {
			if (group.checked) {
				return true;
			}
		}
	}
   return false;
}


function resetGroup(formName, groupName) {
   rForm = eval('document.' + formName);
   setCheckboxList(formName, groupName, false);
	group = eval('rForm.' + groupName + 'Head');
	if (group && group[0]) {
		group[0].checked = true;
	}
}


function getRadioGroupChecked(formName, groupName) {
   rForm = eval('document.' + formName);
	group = eval('rForm.' + groupName);
	if (group) {
		if(group.length > 0) {
			for (i=0; i<group.length; i++) {
				if (group[i].checked) {
					return group[i].value;
				}
			}
		}
		else {
			if (group.checked) {
				return group.value;
			}
		}
	}
   return null;
}


 /* Start of doc forwarding js script*/

	function docfwd_addToListFromThisList(fromObject, toObject) {
	if(toObject.options.length >= 20)
	{
		alert("You can forward the document to only 20 users at one time.");
		return false;
	}
	var isAnyElementSelected = "false";
	var numberOfElementsSelected = 0;
	for (var i=(fromObject.options.length - 1); i>=0; i=i-1) { 
		var o = fromObject.options[i]; 
		if (o.selected && fromObject.options[i].value != '-1') {
			isAnyElementSelected = "true";
			numberOfElementsSelected = numberOfElementsSelected + 1;
		}
	}
		
	if(numberOfElementsSelected == 0) {
		alert("Please select the email address to be added.");
		return false;
	}
	
	var objectExists = "false";
	if (isAnyElementSelected == "true") {
		//Run through the fromObj to determine the nodes selected
		var showAlertMsg = false;		
		for (var i=(fromObject.options.length - 1); i>=0; i--) { 
			var o = fromObject.options[i];
			objectExists = "false"; 
			if (o.selected) {
				if (docfwd_checkIfStringExistInList(toObject, new String(o.text))) {
					objectExists = "true";
				}	
									
				if (objectExists == "true") {
					continue;
				} else {
					if(!showAlertMsg) {
						showAlertMsg = true;
					}
					if(toObject.options[0].value == '-1')
	  					toObject.options[0] = null;
					if(toObject.options.length >= 20 )
					{
						alert("You can forward the document to only 20 users at one time.");
						return false;
					}
					toObject[toObject.options.length] = new Option(o.text, o.value, false);
					document.getElementById("right_wrapper").style.display = "";					
				}	
			}
		}
		if(!showAlertMsg) {
			alert("Selected email address already existed in your list.");
		}
			
	}
	docfwd_sortOptions(toObject);
	return false;
 }
	
	function docfwd_addToList(obj, option) {

		var name = option.text;
		var value = option.value;
		
		obj[obj.options.length] = new Option(name, value);
		return false;
	}
	
	function docfwd_removeSelectedOptions(obj, type) { 
		     if(deleteList != "")
					alert(deleteList);
			if (!docfwd_hasOptions(obj)) { 
				return false;
			}
			
			var elementsSelected = 0;
			for (var i=(obj.options.length - 1); i>=0; i--) { 
				var o = obj.options[i]; 
				if (o.selected) {
					elementsSelected++;
				}
			}
			
			if (elementsSelected == 0) {
			    alert("Please select the email address to delete");
				return false;
			}	
		
			var check;
			if( type == 1)
				 check = confirm("Do you want to remove the selected contacts from the list?");
			else
				check =  confirm("Do you want to remove the selected recipient(s) from the list?");

			if (!check) {
				return false;
			}
			
			if( type == 1)
			{
					for (var i=0; i<obj.options.length; i++) 
					{
						var o = obj.options[i]; 
						if (o.selected) 
						{ 
						 if(newMyContactsEmailList.indexOf(o.text) == 0)
							 newMyContactsEmailList = newMyContactsEmailList.replace(o.text + ';','').replace(';;',';');
						 else
							 newMyContactsEmailList = newMyContactsEmailList.replace(o.text,'').replace(';;',';');
						
						if (i == 0 || elementsSelected == 1) {
								deleteList = obj.options[i].text;
							} else {
								deleteList = deleteList + "," + obj.options[i].text;
							}	
						}
					}
				}
			if (obj.type=="select-one") {
					obj.options[obj.selectedIndex] = null;
				}
				else {
					for (var i=(obj.options.length - 1); i>=0; i--) { 
						var o = obj.options[i]; 
						if (o.selected) { 
							obj.options[i] = null; 
						} 
					}
				}
			   if(obj.options.length == 0)
			   {
			      if(type == 1)
			      {
			        obj.options[0] = new Option('No email address have been added', '-1');
			        document.getElementById("left_wrapper").style.display = "none";			        
				  }
				  else
				  {
				  	obj.options[0] = new Option('No email address have been added', '-1');
				  	document.getElementById("right_wrapper").style.display = "none";				  	
				  }
				  	
			   }
				obj.selectedIndex = -1;
			return false;
	}
	
	
	
	function docfwd_addToOptionsList(newOption , obj) {
	
		obj.options[obj.options.length] = new Option(newOption.text, newOption.value);
		return false;
	}
	
	
	function docfwd_validateEmailAddress(emailAddress)
	{
		var filter = /^([a-zA-Z0-9_\.\-\'])+\@(([a-zA-Z0-9\-\'])+\.)+([a-zA-Z0-9]{2,4})+$/;
		if (!filter.test(emailAddress)) 
		{
			alert("Please correct the email address : " + emailAddress);
			return false;
		}
		else
			return true;
	}
	
	String.prototype.trim = function() {
		a = this.replace(/^\s+/, '');
		return a.replace(/\s+$/, '');
		};
	
	
	String.prototype.replaceAll = function(pcFrom, pcTo){
	   var i = this.indexOf(pcFrom);
	   var c = this;
	   while (i > -1){
		 c = c.replace(pcFrom, pcTo);
		 i = c.indexOf(pcFrom);
		 }
	   return c;
	 }

	function docfwd_addToEmailList(newEmailsList, myContactList, recipientsList) 
	{	
				    
	    var emailAddr;
		var maxlimit = false;
		
		if( newEmailsList.value.indexOf(":") >= 0 )
		{
			alert("Please use comma (,) to separate multiple email addresses.");
		    return false;
		}
		
	    if(newEmailsList.value == "")
	      alert("Please Enter at least one email address.");
	    else
	    {     
		
		
		var emailAddrList = newEmailsList.value.replaceAll(",",";");
		emailAddr = emailAddrList.split(';');

		for(var i=0; i<emailAddr.length; i++) 
		{
			if(emailAddr[i].trim() != '')
			{
			if(docfwd_validateEmailAddress(emailAddr[i].trim()))
			{
				if(myContactList.options[0].value == '-1')
					myContactList.options[0] = null;
			  
				if(recipientsList.options[0].value == '-1')
					recipientsList.options[0] = null;

				var checkinMyContactsList = docfwd_checkIfStringExistInList(myContactList,new String(emailAddr[i].trim()));
				var chekinRecipientsList = docfwd_checkIfStringExistInList(recipientsList,new String(emailAddr[i].trim()));
				if ( checkinMyContactsList && chekinRecipientsList) 
				{ 
					alert(emailAddr[i] + " has already been added to the list.");				 
				}
				
				if(checkinMyContactsList == false )
				{
				 	var objOptionsLength = myContactList.options.length;
					var newOption = new Option(emailAddr[i], emailAddr[i]);
				    newMyContactsEmailList +=  emailAddr[i]+ ";";				     
					docfwd_addToOptionsList(newOption,myContactList);
					document.getElementById("left_wrapper").style.display = "";
					
				}

				if (chekinRecipientsList == false && maxlimit == false)
				{
					if(recipientsList.options.length >= 20)
					{
						alert("You can forward the document to only 20 users at one time.");
						maxlimit = true;
					}
					else
					{
						var objOptionsLength = recipientsList.options.length;
						var newOption = new Option(emailAddr[i], emailAddr[i]);
						docfwd_addToOptionsList(newOption, recipientsList);
						document.getElementById("right_wrapper").style.display = "";
					}
					
				}
			}
		  }
		 }
		}
		docfwd_sortOptions(myContactList);
		docfwd_sortOptions(recipientsList);
		document.docForwardingSelectForm.newMyContactsEmailList.value = "";
		document.docForwardingSelectForm.newMyContactsEmailList.value = newMyContactsEmailList;		
		return false;
	}
	
	function docfwd_stringCompare(a, b) 
	{
		 if (a.toLowerCase() == b.toLowerCase())
		 {
			return true;
		 } 
		 else 
		 {
			return false;
		 }
	}
	 
	function docfwd_checkIfStringExistInList(selectbox, emailaddr) 
	{
		 for (var i=0; i<selectbox.options.length; i++) 
		 {
			if (docfwd_stringCompare(new String(selectbox.options[i].text), emailaddr)) 
			{
			 return true;
			}
		 }
		 return false;
	}
	
	function docfwd_selectAllOptions(obj) {
			if (!docfwd_hasOptions(obj)) { 
				return false; 
			}
	
			for (var i=0; i<obj.options.length; i++) {
				if(!obj.options[i].disabled){
					obj.options[i].selected = true;
				}
			}
			
			return false;
		}
		
	function docfwd_deselectAllOptions(obj) {
			if (!docfwd_hasOptions(obj)) { 
				return false; 
			}
	
			for (var i=0; i<obj.options.length; i++) {
				obj.options[i].selected = false;
			}
			
			return false;
		}
	
	function docfwd_sortOptions(obj) {
			var o = new Array();
			if (!docfwd_hasOptions(obj)) { 
				return; 
			}
			
			for (var i=0; i<obj.options.length; i++) {
				o[o.length] = new Option( obj.options[i].text, obj.options[i].value, obj.options[i].defaultSelected, obj.options[i].selected) ;
			}
			if (o.length==0) { 
				return;
			}
			
			o = o.sort( 
				function(a,b) { 
					if ((a.text+"") < (b.text+"")) { 
						return -1;
					}
					if ((a.text+"") > (b.text+"")) { 
						return 1; 
					}
					return 0;
				} 
			);
	
			for (var i=0; i<o.length; i++) {
				obj.options[i] = new Option(o[i].text, o[i].value, o[i].defaultSelected, o[i].selected);
			}
		}
		
		function docfwd_hasOptions(obj) {
			
			if (obj!=null && obj.options!=null) {
				return true;
			}
			
			return false;
		}

	

	function docfwd_escapeVal(textarea,replaceWith)
	{
		var textareaVal = escape(textarea.value)
		for(i=0; i<textarea.value.length; i++)
		{
		 	if(textareaVal.indexOf("%0D%0A") > -1){
			textareaVal=textareaVal.replace("%0D%0A",replaceWith)
			}
			else if(textareaVal.indexOf("%0A") > -1){
			textareaVal=textareaVal.replace("%0A",replaceWith)
			}
			else if(textareaVal.indexOf("%0D") > -1){
			textareaVal = textareaVal.replace("%0D",replaceWith)
			}
		}
		textareaVal=unescape(textareaVal)
		return textareaVal;
	}
	
	
  function docfwd_setRecipientsEmailList(){
		var hiddenPropertyValue = new String("");	    
	    for (var i=0; i<document.docForwardingSelectForm.recipientsEmailsSelectBox.options.length; i++) {
				hiddenPropertyValue += document.docForwardingSelectForm.recipientsEmailsSelectBox.options[i].text + ";";
		}
		document.docForwardingSelectForm.recipientsEmailList.value = "";
		document.docForwardingSelectForm.recipientsEmailList.value = hiddenPropertyValue;
	
  }
	
 function docfwd_showSummary()
 {
   document.getElementById("view_summary").style.display = "";
   return false;
 }
 
 function docfwd_hideSummary()
 {
   document.getElementById("view_summary").style.display = "none";
   return false;
 }

 //Use this method to get streaming HTML content into the globalLayerDiv
 //input - is a HTML file URL
 //example: showGlobalLayerParam('getHtmlForGlobalLayerDiv("http://webhost.gartner.com/html/mypage/weeklyPicksLayer.html")', 'globalLayerDiv', formNamesWithSelectBoxesInLayer, 420, 200, 'true',1);
 function getHtmlForGlobalLayerDiv(htmlFileURL){	
	var ajaxUrl = gatewayUrlForAddToLibrary + 'htmlForward.do?methodName=staticHTMLProxy&filePath=' + encodeURIComponent(htmlFileURL);
	var contentRequest = new PTHTTPGETRequest(ajaxUrl, document.getElementById('globalLayerDiv'));
	contentRequest.setRequestHeader("Content-Type","text/html; charset=utf-8");
	contentRequest.invoke();	
	return false;
}       


 function getHtmlForGlobalLayerDiv1(htmlFileURL){
	var ajaxUrl = gatewayUrlForAddToLibrary + 'htmlForward.do?methodName=staticHTMLProxy&filePath=' + encodeURIComponent(htmlFileURL);
	if(window.location.protocol == 'https:') { ajaxUrl  = ajaxUrl  + "&sslenabled=y"; }
	var contentRequest = new PTHTTPGETRequest(ajaxUrl, document.getElementById('globalLayerDiv'));
	contentRequest.setRequestHeader("Content-Type","text/html; charset=utf-8");
	contentRequest.invoke();	
	return false;
}       


 /* End of doc forwarding js script*/
 // This method will set Portal User Pref for the links to Webinar Calendar page.
 
function openWebinarCalendar(filterPrefValue, urlToOpen)
{
	 location.href = urlToOpen + '&webinarAction=webinarSearch&webinarType=' + filterPrefValue;
}	

 /* Start of Gartner Analytics Scripts */

function ga_showGTermInfo()
{
	document.getElementById("GTermsInfo").style.display='block';
}

function ga_hideGTermInfo()
{
	document.getElementById("GTermsInfo").style.display='none';
}

function validateSAForm()
{
	var keyword = document.getElementById("searchTrendsKeyword").value.trim();

	document.getElementById("searchTrendsKeyword").value= keyword;
	
	if(keyword == '')
    {
       alert("Please enter the search term");
       return false;
    }
	 if(keyword.length >= 201 || keyword.length <= 1 )
	{
		 alert("You can enter a search term with minimum of 2 and maximum of 200 characters.");
		return false;
	}
	var filter = /^[\sa-zA-Z0-9\-\'\"\_]/;
	if(!keyword.match(filter))
	{
		alert("Keyword must start with a letter or number.");
        return false;
	}
	filter = /([+^#\*\%\@])/;
	if(filter.test(keyword))
	{
		alert("Special characters (+,%,*,@,#) are not allowed in the search term.");
        return false;
	}
    return true;
}

function ga_saveSearchTerm() 
{
    if(validateSAForm())
    {
		dojo.addOnLoad(ga_saveSearchTermAjax);
	}
	return false;	  		
}

function ga_analyze(analyzeURL)
{
	 if(validateSAForm())
	 {
		 var query = escape(document.getElementById("searchTrendsKeyword").value);
		 analyzeURL = analyzeURL + query + '&includeSynonyms=' + document.SearchTrendsSearch.IncludeSynonyms.checked;
		 location.href = analyzeURL;
	 }
	return false;	 
}
	
function ga_saveSearchTermAjax() {
	var functionName = "ga_saveSearchTermConfirmation";
	var returnParams = "";
	
	var saveSearchTermUrl = "searchTrends.do?function=saveSearchTerm&searchTerm=" + escape(document.getElementById("searchTrendsKeyword").value) ;
	var transformedURL = gatewayUrlForAddToLibrary + saveSearchTermUrl;
	GetDataWithReturnParams(transformedURL, functionName, '', returnParams);
}

function ga_saveSearchTermConfirmation(confirmationCodeJSONObject, returnParams) {
if(confirmationCodeJSONObject.SAVE.length > 0) {
		var conirmationCode = confirmationCodeJSONObject.SAVE[0].SAVESTATUS;
		if(conirmationCode == 0)
		    alert("Search term saved successfully.");
		else if(conirmationCode == 1)
			alert("Search term is already in saved list.");
		else
			alert("Search term save failed.");
	}
}	

var ga_removeSearchTerm = "";
function ga_removeSavedTerm(searchTermInline) 
{
	var check = confirm("Do you want to remove the saved term from your list?");
	if(check)
	{
		ga_removeSearchTerm = searchTermInline;
		dojo.addOnLoad(ga_removeSavedTermAjax);
	}
	return false;	  		
}


function ga_removeSavedTermAjax() {
	var functionName = "ga_removeSavedTermConfirmation";
	var returnParams = "";
	var removeSearchTermUrl = "searchTrends.do?function=removeSavedSearchTerm&searchTerm=" + escape(ga_removeSearchTerm) ;
	ga_removeSearchTerm = "";
	var transformedURL = gatewayUrlForAddToLibrary + removeSearchTermUrl;
	GetDataWithReturnParams(transformedURL, functionName, '', returnParams);
}

function ga_removeSavedTermConfirmation(confirmationCodeJSONObject, returnParams) {
if(confirmationCodeJSONObject.REMOVE.length > 0) {
		var conirmationCode = confirmationCodeJSONObject.REMOVE[0].REMOVESTATUS;
		if(conirmationCode == 0)
		{
		    alert("Search term removed successfully.");
		    ga_closeListLayer();
		    ga_getSavedTermsListInline();
		}
		else
			alert("Search term remove failed.");
	}
}	

function ga_getSavedTermsList()
{
	var ajaxUrl = gatewayUrlForAddToLibrary + 'searchTrends.do?function=getSavedTermsList';
	var contentRequest = new PTHTTPGETRequest(ajaxUrl, document.getElementById('globalLayerDiv'));
	contentRequest.invoke();
	return false;
}

function ga_getSavedTermsListInline()
{	
	showGlobalLayerParam('ga_getSavedTermsList()', 'globalLayerDiv', 
				formNamesWithSelectBoxesInLayer, 500, 250, 'true',1);
	var globallayerDivClassHandle = getCSSStyle(".globalLayerDiv");
	globallayerDivClassHandle.style.height = "auto";
	return false;
}

function ga_getSynonymsList()
{
	var ajaxUrl = gatewayUrlForAddToLibrary + 'searchTrends.do?function=getSynonymsList&searchTerm=' + escape(document.getElementById("searchTrendsKeyword").value);
	var contentRequest = new PTHTTPGETRequest(ajaxUrl, document.getElementById('globalLayerDiv'));
	contentRequest.invoke();
	return false;
}

function ga_getSynonymsListInline()
{	
	if(validateSAForm())
	{
		showGlobalLayerParam('ga_getSynonymsList()', 'globalLayerDiv', 
					formNamesWithSelectBoxesInLayer, 500, 250, 'true',2);
		var globallayerDivClassHandle = getCSSStyle(".globalLayerDiv");
		globallayerDivClassHandle.style.height = "auto";
	}			
	return false;
}

function ga_closeListLayer()
{
	hideGlobalLayer('globalLayerDiv', formNamesWithSelectBoxesInLayer);
	return false;
}

function checkEnter(e,analyzeURL){ //e is event object passed from function invocation
	var characterCode; //literal character code will be stored in this variable
	
	if(e && e.which){ //if which property of event object is supported (NN4)
		e = e
		characterCode = e.which //character code is contained in NN4's which property
	}
	else{
		e = event
		characterCode = e.keyCode //character code is contained in IE's keyCode property
	}
	
	if(characterCode == 13){ //if generated character code is equal to ascii 13 (if enter key)
		ga_analyze(analyzeURL);
		return false
	}
	else{
		return true
	}

}


function ga_showEmergningSrchHelp()
{
document.getElementById("emergingSrch").style.display='block';
}

function ga_hideEmergningSrchHelp()
{
document.getElementById("emergingSrch").style.display='none';
}

function ga_showVolumeInfo()
{
	document.getElementById("VolumeInfo").style.display='block';
}
function ga_hideVolumeInfo()
{
	document.getElementById("VolumeInfo").style.display='none';
}
function ga_showAnalystInfo()
{
	document.getElementById("AnalystInfo").style.display='block';
}
function ga_hideAnalystInfo()
{
	document.getElementById("AnalystInfo").style.display='none';
}
function ga_showHighGrowthSrchHelp()
{
document.getElementById("HighGrowthSrch").style.display='block';
}

function ga_hideHighGrowthSrchHelp()
{
document.getElementById("HighGrowthSrch").style.display='none';
}

function ga_showMostPopularSrchHelp()
{
document.getElementById("MostPopularSrch").style.display='block';
}

function ga_hideMostPopularSrchHelp()
{
document.getElementById("MostPopularSrch").style.display='none';
}
function ga_showRSearchesInfo()
{
	document.getElementById("RSearchesInfo").style.display='block';
}
function ga_hideRSearchesInfo()
{
	document.getElementById("RSearchesInfo").style.display='none';
}

function ga_showDemoGraphicsInfo()
{
	document.getElementById("DemoGraphicsInfo").style.display='block';
}
function ga_hideDemoGraphicsInfo()
{
	document.getElementById("DemoGraphicsInfo").style.display='none';
}

function ga_showRegion()
{
	document.getElementById("Region").style.display='block';
	document.getElementById("CompanySize").style.display='none';
	document.getElementById("Industry").style.display='none';
}

function ga_showEntSize()
{
	document.getElementById("CompanySize").style.display='block';
	document.getElementById("Industry").style.display='none';
	document.getElementById("Region").style.display='none';
}

function ga_showIndustry()
{
	document.getElementById("Industry").style.display='block';
	document.getElementById("CompanySize").style.display='none';
	document.getElementById("Region").style.display='none';
}


function limitText(limitField, limitNum) {
	if (limitField.value.length > limitNum) {
		limitField.value = limitField.value.substring(0, limitNum);
	} 
}

function addCommasInNumber(nStr)
{
	nStr += '';
	x = nStr.split('.');
	x1 = x[0];
	x2 = x.length > 1 ? '.' + x[1] : '';
	var rgx = /(\d+)(\d{3})/;
	while (rgx.test(x1)) {
		x1 = x1.replace(rgx, '$1' + ',' + '$2');
	}
	return x1 + x2;
}

/* Start of Gartner Market Statistics Scripts */
function gmsSetParameters(name, value){			
	var url = gatewayUrlForAddToLibrary + 'gms.do?function=setGMSParameter&' + name + '=' + value;	
	GetData(url, 'gmsParameterSelection');
}

function gmsSetMarketParameter(name, value){
	var text = document.getElementById(value).value ;
	
	var encodedText = encodeURIComponent(text);
	
	var url = gatewayUrlForAddToLibrary + 'gms.do?function=setGMSParameter&' + name + '=' + encodedText + '&id=' + value;
		
	GetData(url, 'gmsParameterSelection');
}

function gmsSetMeasureCurrencyParameters(name1, value1, name2, value2, formObj){
	var selectionObj1 = formObj.elements[name1];
	var index1 = selectionObj1.selectedIndex;
	var text1 = selectionObj1.options[index1].text;
	
	var encodedText1 = encodeURIComponent(text1);
	
	var selectionObj2 = formObj.elements[name2];
	var index2 = selectionObj2.selectedIndex;
	var text2 = selectionObj2.options[index2].text;
	
	var url = gatewayUrlForAddToLibrary + 'gms.do?function=setGMSParameter&' + name1 + '=' + encodedText1 + '&id=' + value1 + '&' + name2 + '=' + text2 + '&currencyId=' + value2;
	
	GetData(url, 'gmsParameterSelection');
}

function gmsSetParametersWithFormObject(name, value, formObj){
	var selectionObj = formObj.elements[name];
	var index = selectionObj.selectedIndex;
	var text = selectionObj.options[index].text;
	
	if(name=='currencyName'){
		var url = gatewayUrlForAddToLibrary + 'gms.do?function=setGMSParameter&' + name + '=' + text + '&currencyId=' + value;
	}else{
		var url = gatewayUrlForAddToLibrary + 'gms.do?function=setGMSParameter&' + name + '=' + text + '&id=' + value;
	}
	
	GetData(url, 'gmsParameterSelection');
}

function gmsSetDataTableOutputParameter(name, value, text){
	var encodedText = encodeURIComponent(text);
			
	var url = gatewayUrlForAddToLibrary + 'gms.do?function=setGMSParameter&' + name + '=' + encodedText + '&id=' + value;
		
	GetData(url, 'gmsParameterSelection');
}

function gmsSelectionResults(){
	var url = gatewayUrlForAddToLibrary + 'gms.do?function=viewDetails';
	
	GetData(url, 'gmsParameterSelection');
}
	
function gmsParameterSelection(json) {
	var html = "";
	
	html="<div class='bucket'><div class='bckt_info'><span xmlns:pt='http://www.plumtree.com/xmlschemas/ptui/'>";
	html += "<img src='/imageserver/gartner/images/loading_images/loading_small.gif' border='0' alt = 'Loading...'/>";
	html += "</div></div></span>";
	
	document.getElementById('viewDetails').innerHTML = html;
	showGMSRightRailDiv('viewDetails');
	
	if (json!=null) {
		html = "";
		var tempMarket = json.marketName;
		var tempMetricName = json.metricName;
		var tempCurrencyName  = json.currencyName;
		var tempFrequency = json.frequency;
		var tempFromYear  = json.fromYear;
		var tempToYear    = json.toYear;
		var tempDataTableOutput = json.dataTableOutput;
		var tempShowCurrency = json.showCurrency;
		
		if(tempMarket == ""){
			html += '<span class="fade">No Selection Made</span>';
		}
		
		if(tempMarket != ""){	
			html +=	'<p><strong>Market:</strong>&nbsp;' + tempMarket + '</p>';
		}
		
		if(tempMetricName != "" && tempMetricName != "D"){
			html += '<p><strong>Measure:</strong>&nbsp;' + tempMetricName + '</p>';
			if(tempShowCurrency!="" && tempShowCurrency=="Y"){
				showCurrency();
			}else{
				hideCurrency();
			}
			showFrequency(json.frequencyList,tempFrequency);
			showFromYear(json.startingPeriodList,tempFromYear);
			showToYear(json.endingPeriodList,tempToYear);
		}else if(tempMetricName != "" && tempMetricName == "D"){
			hideCurrency();
			hideFrequency();
			hideFromYear();
			hideToYear();
		}
		
		if(tempCurrencyName != "" && tempCurrencyName != "D"){
			html += '<p><strong>Currency:</strong>&nbsp;' + tempCurrencyName + '</p>';
		}
		
		if(tempFrequency != "" && tempFrequency != "D")
			html += '<p><strong>Frequency:</strong>&nbsp;' + tempFrequency + '</p>';
			
		if((tempFromYear != "" && tempFromYear != "D") || (tempToYear != "" && tempToYear != "D"))
			html += '<p><strong>Range:</strong>&nbsp;';
		
		if(tempFromYear != "" && tempFromYear != "D")
			html +=json.fromYear + '-';
		if(tempToYear != "" && tempToYear != "D")
			html += json.toYear;
		html += '</p>';
		
		if(tempDataTableOutput != ""){
			html += '<p><strong>Detail Level:</strong>&nbsp;';
			html += tempDataTableOutput + '</p>';
		}

		document.getElementById('viewDetails').innerHTML = html;
		showGMSRightRailDiv('viewDetails');
	}
}
	
function showGMSRightRailDiv(divId) {
	document.getElementById(divId).style.display = 'block';
}

function showCurrency() {
	if(document.getElementById('currencyDetails')!=null){
		document.getElementById('currencyDetails').style.display = 'block';
	}
	if(document.getElementById('currencyDetailsNone')!=null){
		document.getElementById('currencyDetailsNone').style.display = 'none';
	}
}

function hideCurrency() {
	if(document.getElementById('currencyDetails')!=null){
		document.getElementById('currencyDetails').style.display = 'none';
	}
	if(document.getElementById('currencyDetailsNone')!=null){
		document.getElementById('currencyDetailsNone').style.display = 'block';
	}
}

function showFrequency(tempFrequencyList,tempFrequency) {
	if(document.getElementById('frequencyDiv')!=null && tempFrequencyList!=""){
		var freqHTML = "<select name='frequency' onChange=javascript:gmsSetParametersWithFormObject(" + "'frequency'" + ",this.value,document.gmsForm);>";
		
		for(var i =0; i< tempFrequencyList._items.length ;i++){
			if(tempFrequency!=null && tempFrequency==tempFrequencyList._items[i]._value){
				freqHTML+="<option value='" + tempFrequencyList._items[i]._value + "' selected>" + tempFrequencyList._items[i]._value + "</option>";
			}else{
				freqHTML+="<option value='" + tempFrequencyList._items[i]._value + "'>" + tempFrequencyList._items[i]._value + "</option>";
			}
		}
		
		freqHTML+="</select>";
		document.getElementById('frequencyDiv').innerHTML = freqHTML;							
		document.getElementById('frequencyDiv').style.display = 'block';
		
		
		if(document.getElementById('frequencyNoneDiv')!=null){
			document.getElementById('frequencyNoneDiv').style.display = 'none';
		}
	}else if(document.getElementById('frequencyDiv')!=null && tempFrequencyList == ""){
		//Frequency should not be null once a metric is selected. If it is then it means an error occured.
		var freqHTML = "<select name='frequency' onChange=javascript:gmsSetParametersWithFormObject(" + "'frequency'" + ",this.value,document.gmsForm);>";
		
		freqHTML+="<option value='nofreq' selected>Frequency Unavailable</option>";
			
		freqHTML+="</select>";
		document.getElementById('frequencyDiv').innerHTML = freqHTML;							
		document.getElementById('frequencyDiv').style.display = 'block';
		
		
		if(document.getElementById('frequencyNoneDiv')!=null){
			document.getElementById('frequencyNoneDiv').style.display = 'none';
		}
	}
}

function hideFrequency() {
	if(document.getElementById('frequencyDiv')!=null){
		document.getElementById('frequencyDiv').style.display = 'none';
	}
	if(document.getElementById('frequencyNoneDiv')!=null){
		document.getElementById('frequencyNoneDiv').style.display = 'block';
	}

}

function showFromYear(tempStartingPeriodList,tempFromYear) {
		if(document.getElementById('fromYearDiv')!=null && tempStartingPeriodList!=""){
		
			var fromYearHTML = "<select name='fromYear' onChange=javascript:gmsSetParametersWithFormObject(" + "'fromYear'" +",this.value,document.gmsForm);>";
			
			for(var i=0;i< tempStartingPeriodList._items.length;i++){
				if(tempFromYear!=null && tempFromYear == tempStartingPeriodList._items[i]._value){
					fromYearHTML+= "<option value='" + tempStartingPeriodList._items[i]._value + "' selected>" + tempStartingPeriodList._items[i]._value + "</option>";
				}else{
					fromYearHTML+="<option value='" + tempStartingPeriodList._items[i]._value + "'>" + tempStartingPeriodList._items[i]._value + "</option>";
				}
			}
			
			fromYearHTML+="</select>";
			document.getElementById('fromYearDiv').innerHTML = fromYearHTML;							
			document.getElementById('fromYearDiv').style.display = 'block';
			
			if(document.getElementById('fromYearNoneDiv')!=null){
				document.getElementById('fromYearNoneDiv').style.display = 'none';
			}
		}else if(document.getElementById('fromYearDiv')!=null && tempStartingPeriodList==""){
			hideFromYear();
		}
}


function hideFromYear(){
	if(document.getElementById('fromYearDiv')!=null){
		document.getElementById('fromYearDiv').style.display = 'none';
	}
	if(document.getElementById('fromYearNoneDiv')!=null){
		document.getElementById('fromYearNoneDiv').style.display = 'block';
	}
}


function showToYear(tempEndingPeriodList,tempToYear) {
		if(document.getElementById('toYearDiv')!=null && tempEndingPeriodList!=""){
		
			var toYearHTML = "<select name='toYear' onChange=javascript:gmsSetParametersWithFormObject(" + "'toYear'" +",this.value,document.gmsForm);>";
			
			for(var i=0;i< tempEndingPeriodList._items.length;i++){
				if(tempToYear!=null && tempToYear == tempEndingPeriodList._items[i]._value){
					toYearHTML+= "<option value='" + tempEndingPeriodList._items[i]._value + "' selected>" + tempEndingPeriodList._items[i]._value + "</option>";
				}else{
					toYearHTML+="<option value='" + tempEndingPeriodList._items[i]._value + "'>" + tempEndingPeriodList._items[i]._value + "</option>";
				}
			}
			
			toYearHTML+="</select>";
			document.getElementById('toYearDiv').innerHTML = toYearHTML;							
			document.getElementById('toYearDiv').style.display = 'block';
			
			if(document.getElementById('toYearNoneDiv')!=null){
				document.getElementById('toYearNoneDiv').style.display = 'none';
			}
		}else if(document.getElementById('toYearDiv')!=null && tempEndingPeriodList==""){
			hideToYear();
		}
}


function hideToYear(){
	if(document.getElementById('toYearDiv')!=null){
		document.getElementById('toYearDiv').style.display = 'none';
	}
	if(document.getElementById('toYearNoneDiv')!=null){
		document.getElementById('toYearNoneDiv').style.display = 'block';
	}
}

function hideGMSDataTableCommentsDiv(divId) {
	document.getElementById(divId).style.display = 'none';
	
	return false;
}
	
function showGMSDataTableCommentsDiv(divId) {
	document.getElementById(divId).style.display = 'block';
	
	return false;
}

function gmsViewAllSelections(){
	var html="<div class='bucket'><div class='bckt_info'><span xmlns:pt='http://www.plumtree.com/xmlschemas/ptui/'>";
	html += "<img src='/imageserver/gartner/images/loading_images/loading_small.gif' border='0' alt = 'Loading...'/>";
	html += "</div></div></span>";
	showGlobalLayerParam('gmsRequestAllSelections()', 'globalLayerDiv',formNamesWithSelectBoxesInLayer, 500, 280, 'true',1);
	var globallayerDivClassHandle = getCSSStyle(".globalLayerDiv");
	globallayerDivClassHandle.style.border = 0;
	globallayerDivClassHandle.style.height = "auto";
				
	document.getElementById('globalLayerDiv').innerHTML=html;
	return false;
}
	
function gmsRequestAllSelections(){
	var url = gatewayUrlForAddToLibrary + 'gms.do?function=viewDetails';
	
	GetData(url, 'gmsPostAllSelections');
		
	return false;
}
	
function gmsPostAllSelections(json){
	var html = "";
		
	if (json!=null) {
		var tempMarket = json.marketName;
		var tempMetricName = json.metricName;
		var tempCurrencyName  = json.currencyName;
		var tempFrequency = json.frequency;
		var tempFromYear  = json.fromYear;
		var tempToYear    = json.toYear;
		var tempDataTableOutput = json.dataTableOutput;
		var tempShowCurrency = json.showCurrency;
			
		html += '<strong class="small">VIEW ALL SELECTIONS</strong><div class="lyr_overflow">';
			
		if(tempMarket != ""){	
			html +=	'<p><strong>Market:</strong>&nbsp;' + tempMarket + '</p>';
		}
			
		if(tempMetricName != "" && tempMetricName != "D"){
			html += '<p><strong>Measure:</strong>&nbsp;' + tempMetricName + '</p>';
		}
			
		if(tempCurrencyName != "" && tempCurrencyName != "D"){
			html += '<p><strong>Currency:</strong>&nbsp;' + tempCurrencyName + '</p>';
		}
			
		if(tempFrequency != "" && tempFrequency != "D")
			html += '<p><strong>Frequency:</strong>&nbsp;' + tempFrequency + '</p>';
			
		if((tempFromYear != "" && tempFromYear != "D") || (tempToYear != "" && tempToYear != "D"))
			html += '<p><strong>Range:</strong>&nbsp;';
			
		if(tempFromYear != "" && tempFromYear != "D")
			html +=json.fromYear + '-';
		if(tempToYear != "" && tempToYear != "D")
			html += json.toYear;
		html += '</p>';
			
		if(tempDataTableOutput != ""){
			html += '<p><strong>Detail Level:</strong>&nbsp;' + tempDataTableOutput + '</p>';
		}
			
		html += '</div><div class="clear">&nbsp;</div>';
		html += "<input type='image' name='close' onclick='hideGlobalLayer(\"globalLayerDiv\", formNamesWithSelectBoxesInLayer)' src='/imageserver/gartner/images/docdisplay/close_btn.GIF' value='Close'/>&nbsp;&nbsp;";
		html = "<input type='image' name='close'  class='right' onclick='hideGlobalLayer(\"globalLayerDiv\", formNamesWithSelectBoxesInLayer)' src='/imageserver/gartner/images/peerdir/btn_x.gif' value='Close'/>" + html;
		html = '<div class="center_layer"><div class="pad">' + html + '</div></div>';
		document.getElementById('globalLayerDiv').innerHTML=html;
	}
}

function gmsShowWaitMsg(){
	var html="";
	html+="<div class='center_layer2'><div class='pad'>";
	html+="<input type='image' value='Close' src='/imageserver/gartner/images/peerdir/btn_x.gif' onclick='closeCSVResults()' name='close' class='right'/><br/>";
	html+="The data download may take upto 3 minutes<br /><br />";
	html += "<a href='" +  gatewayUrlForAddToLibrary + "gms.do?function=showCSVResults'><img src='/imageserver/gartner/images/peerdir/btn_continue.gif'></a>";
	html+="</div></div>";
	
	showGlobalLayerParam('', 'globalLayerDiv',formNamesWithSelectBoxesInLayer, 350, 280, 'true',1);
	var globallayerDivClassHandle = getCSSStyle(".globalLayerDiv");
	globallayerDivClassHandle.style.border = 0;
	globallayerDivClassHandle.style.height = "auto";
	document.getElementById('globalLayerDiv').innerHTML=html;
	
	return false;
}
		
function gmsShowCSV(){
	var html="<div class='center_layer2'><div class='pad'><span xmlns:pt='http://www.plumtree.com/xmlschemas/ptui/'>";
	html += "<img src='/imageserver/gartner/images/loading_images/loading_small.gif' class='load' border='0' alt = 'Loading...'/>";
	html += "Please wait till the data is retrieved";
	html += "</span></div></div>";
	showGlobalLayerParam('gmsGetCSV()', 'globalLayerDiv',formNamesWithSelectBoxesInLayer, 350, 280, 'true',1);
	var globallayerDivClassHandle = getCSSStyle(".globalLayerDiv");
	globallayerDivClassHandle.style.border = 0;
	globallayerDivClassHandle.style.height = "auto";
				
	document.getElementById('globalLayerDiv').innerHTML=html;
	return false;
}
	
function gmsGetCSV(){
	var url = gatewayUrlForAddToLibrary + 'gms.do?function=showCSVResults';

	GetData(url, 'gmsAfterGetCSV');
		
	return false;
}

function gmsAfterGetCSV(json){	
		var html="";
		
		if(json!=null && json.message!=null && json.message=="success"){
			html+="<div class='center_layer2'><div class='pad'>";
			html+="<input type='image' value='Close' src='/imageserver/gartner/images/peerdir/btn_x.gif' onclick='closeCSVResults()' name='close' class='right'/><br/>";
			html+="The data has been retrieved<br /><br />";
			html += "<a href='" +  gatewayUrlForAddToLibrary + "gms.do?function=getCSVFile'><img src='/imageserver/gartner/images/btn_view_results.gif'></a>";
			html+="</div></div>";
		}else{
			html += "An unknown error occured while fetching data";
			html += "<br/>";
			html += "Please try again later";
				
			html += '<div class="clear">&nbsp;</div>';
			
			html += "<input type='image' name='close' onclick='closeCSVResults()' src='/imageserver/gartner/images/docdisplay/close_btn.GIF' value='Close'/>&nbsp;&nbsp;";
			html = '<div class="center_layer2"><div class="pad">' + html + '</div></div>';
			
		}
			
		document.getElementById('globalLayerDiv').innerHTML=html;
	}

	function closeCSVResults(){
	
		hideGlobalLayer("globalLayerDiv", formNamesWithSelectBoxesInLayer);
			
		return false;
			
	}
	
	function closeCSVResultsOld(){
	
		var url = gatewayUrlForAddToLibrary + 'gms.do?function=closeCSVResults';
	
		GetData(url, 'gmsAfterCloseCSVResults');
			
		return false;
			
	}
	
	function gmsAfterCloseCSVResults(){
		hideGlobalLayer("globalLayerDiv", formNamesWithSelectBoxesInLayer);
	}
	
function gmsAfterGetCSV_bk(json){	
	var html="";
	if(json!=null && json.message!=null && json.message=="success"){
		html += "<p><a href='" +  gatewayUrlForAddToLibrary + "gms.do?function=getCSVFile'>Click here to view results</a></p>";
		html += '<div class="clear">&nbsp;</div>';
		html += "<input type='image' name='close' onclick='hideGlobalLayer(\"globalLayerDiv\", formNamesWithSelectBoxesInLayer)' src='/imageserver/gartner/images/docdisplay/close_btn.GIF' value='Close'/>&nbsp;&nbsp;";
		html = '<div class="center_layer2"><div class="pad">' + html + '</div></div>';
	}else{
		html += "An unknown error occured while fetching data";
		html += "<br/>";
		html += "Please try again later";
			
		html += '<div class="clear">&nbsp;</div>';
		html += "<input type='image' name='close' onclick='hideGlobalLayer(\"globalLayerDiv\", formNamesWithSelectBoxesInLayer)' src='/imageserver/gartner/images/docdisplay/close_btn.GIF' value='Close'/>&nbsp;&nbsp;";
		html = '<div class="center_layer2"><div class="pad">' + html + '</div></div>';
	}
		
	document.getElementById('globalLayerDiv').innerHTML=html;
}

/* End of Gartner Market Statistics Scripts */


// Expand/Collapse Document functions for MyGartner AnalystPicks Widget and Industry Tear Sheet Analyst Picks Portlet

function expandMyPageItemDiv(expandDivId, collapseDivId) {
	var expandDivObject  = document.getElementById(expandDivId);
	var collapseDivObject = document.getElementById(collapseDivId);

	expandDivObject.style.display  = '';
	collapseDivObject.style.display = 'none';	
}

function collapseMyPageItemDiv(expandDivId, collapseDivId) {
	var expandDivObject  = document.getElementById(expandDivId);
	var collapseDivObject = document.getElementById(collapseDivId);

	expandDivObject.style.display  = 'none';
	collapseDivObject.style.display = '';
}

// End Expand/Collapse Document functions

function generateAddToLibraryURL(resId) {
	var addToLibraryURL = "<a href=\"javascript:void(0);\" onclick=\"addToLibrary('" + resId + "','resId',false,''); return false;\" title=\"Add This to My Library\">Save&nbsp;+</a>"
	return addToLibraryURL;
}


// End Catalog related functions

function showHomeTooltip(homeTipFlag)
{
	if(homeTipFlag == 1)
		{
			document.getElementById("home_tooltip").style.display  = 'block';    
		}
	else
		{
			document.getElementById("home_tooltip").style.display  = 'none';    	
		}	
}

function limitTextOnPaste(limitField, limitNum)
  {
  	// execute only for IE.
	  if (navigator.appName == 'Microsoft Internet Explorer'){
	  	   var intMaxLength, intCurrLength, strClip ;
		   var intClipLength, intAvailLength ;
		   var blnReturn ;
		
		   blnReturn = true ;
		   intMaxLength = limitNum ;
		   intCurrLength = limitField.value.length ;
		   strClip = window.clipboardData.getData("Text") ;
		   intClipLength = strClip.length ;
		   intAvailLength = intMaxLength - intCurrLength ;
		
		   if (intAvailLength > 0)
		   {
		    if (intAvailLength < intClipLength)
		    {
		     strClip = strClip.substr(0, intAvailLength) ;
		     window.clipboardData.setData("Text",strClip) ;
		    }
		   }
		   else
		   {
		    blnReturn = false ;
		   }
		   return blnReturn ;
	    }
  }


//Java script functions for Key Initiative Widget.

var maxNumberOfActiveInitiatives = 50;
	
function editInitiativesPrefs(){
	var detailsUrl = '<pt:logic.value pt:value="$detailsUrl.url"/>';
	
	detailsUrl += "&showSummary=Y";
	window.location = detailsUrl;
}
	
function goToInitiative(activelen, detailsUrl){
	    
	if(activelen >= maxNumberOfActiveInitiatives){
		alert("You already have 50 initiatives");
		return;
	}
		
	//var detailsUrl = '<pt:logic.value pt:value="$detailsUrl.url"/>';
		
	window.location = detailsUrl;
}
		
function gotoKILandingPage(prefName,prefValue){
	//Set the categoryId to be 1 for KI
	PTPortlet.setSessionPref("categoryId", '1');	
	
	//Set the phaseId to be empty for KI
	PTPortlet.setSessionPref("phaseId", '');
	
	//Set the activePhaseId to be empty for KI
	PTPortlet.setSessionPref("activePhaseId", '');
	
	if(prefName == 'kiId'){		
		PTPortlet.setSessionPref("wfucxId", '');
		setPortalUserSessionPreference("kiId",prefValue,jsWfKILandingPageURL); 
	} 
	
	if (prefName == 'wfucxId'){		
		PTPortlet.setSessionPref("kiId", '');		
		setPortalUserSessionPreference("wfucxId",prefValue,jsWfKILandingPageURL);		
	}
}


//functions related to KI Landing page
var contentHeight = 150;

//Loads the KI Research from API call
function loadWfKIResearch() { //alert('inside loadWfKIResearch');
	var functionName = "displayWfKILPResearchContent";
	var returnParams = new Array();
	returnParams[0]	= "wfKILPResearchContent";
	returnParams[1] = "wfKIResViewMoreDiv";
	returnParams[2] = "wfKILPReseachHideDiv";
	returnParams[3] = "OUR RECOMMENDATIONS";
	returnParams[4] = "wfKIResViewLessDiv";
	returnParams[5] = "wfKIResViewMoreLink";
	
	//Commented the below code as phaseId, wfucxId and categoryId are defined in wfKIContentCanvas.jsp
	//var phaseId = PTPortlet.getSessionPref("phaseId");
	//var wfucxId = PTPortlet.getSessionPref("wfucxId");
	//var categoryId = PTPortlet.getSessionPref("categoryId");
	//Added catch statements to handle emtpy conditions
	if(phaseId == null || phaseId == ''){
		phaseId = PTPortlet.getSessionPref("phaseId");
	}
	if(wfucxId == null || wfucxId == ''){
		wfucxId = PTPortlet.getSessionPref("wfucxId");
	}
	if(categoryId == null || categoryId == ''){
		categoryId = PTPortlet.getSessionPref("categoryId");
	}
	if(kiId == null || kiId == ''){
		kiId = PTPortlet.getSessionPref("kiId");
	}
	
	// If phaseId = 1, it means 'Research' tab was clicked on the UI. Hence, manually set the phaseId=-1 to pass to 
	// Recommendation Engine.
	if (phaseId == '1') {		
		phaseId = '-1';
	}
	
	var researchUrl ="workflowLandingPagesAction.do?methodName=getResearchFromAPI&wfucxId="+wfucxId+"&phaseId="+phaseId+"&category="+categoryId+"&kiId="+kiId;
	
	//alert('loadWfKIResearch : researchUrl = ' + researchUrl);
	
	document.getElementById(returnParams[0]).innerHTML = "<img src='/imageserver/gartner/images/loading_images/loading_small.gif' border='0' alt = 'Loading...'/>";
	
	var transformedURL = gatewayUrlForAddToLibrary + researchUrl;
	GetDataWithReturnParams(transformedURL, functionName, '', returnParams);
}

function displayWfLPResearchContent(jsonObject,returnParamsStr){
  	var displayHTML = '';
  	var cntToShow = 5;
	var returnParams = returnParamsStr.split(",");
  	var dHTML = '<div id="' + returnParams[2] + '" style="display:none">';
  	if(jsonObject.docInfo != null && jsonObject.docInfo.length > 0){
		displayHTML += '<div class="intvColumnOne">';		
		displayHTML += '<h3>' + returnParams[3] + '</h3>';
		displayHTML += '<div class="intv_research_wrapper">';
	
        var length = jsonObject.docInfo.length;
		for(var i=0; i < length ; i++) {
        	var divId = returnParams[0] + i;
        	var expandedDivId = 'expanded_' + divId;
        	var collapsedDivId = 'collapsed_' + divId;
			var docExpandContentId = 'docExpanded' + divId;
        	
          	displayHTML += '<div id=' + expandedDivId + ' style="display:none;" >';
          	displayHTML += '<a href="javascript:void(0);" onclick="javascript:collapseItemDiv(\'' + expandedDivId + '\',\'' + collapsedDivId + '\',' + contentHeight + ',\'' + docExpandContentId + '\');return false;" >';
	  		displayHTML += '<img src="/imageserver/gartner/images/invest/collapse_minus.gif" border="0" class="floatL buttonPad" /></a>';
	  		displayHTML += '</div>';
	  		
	  		displayHTML += '<div id=' + collapsedDivId + '>';
	  	   	displayHTML += '<a href="javascript:void(0);" onclick="javascript:expandItemDiv(\'' + expandedDivId + '\',\'' + collapsedDivId + '\',' + contentHeight + ',\'' + docExpandContentId + '\');return false;" >';
	  		displayHTML += '<img src="/imageserver/gartner/images/invest/collapse_plus.gif" border="0" class="floatL buttonPad" /></a>';
	  		displayHTML += '</div>';
	  			
	  		displayHTML += '<div class="info_item" >';
	  		displayHTML += '<div class="floatL">';
	  		displayHTML += '<div><a href="' + jsonObject.docInfo[i].DOCBASEURL + '&resId=' + jsonObject.docInfo[i].RES_ID + '"><strong>' + jsonObject.docInfo[i].TITLE_NM + '</strong></a>';
            displayHTML += '</div>';
            displayHTML += '<div class="item_pubdate">';
            displayHTML += generateAddToLibraryURL(jsonObject.docInfo[i].RES_ID) ;
            displayHTML += ' | Published: ' + jsonObject.docInfo[i].DISPLAY_DT;
		    displayHTML += '</div>';
           
            displayHTML += '<div id="' + docExpandContentId  + '" style="display:none;">';
            displayHTML += '<div class="item_analystInfo">' + jsonObject.docInfo[i].AUTHORS + '</div>';
		    displayHTML += '<div class="item_description">' + jsonObject.docInfo[i].SUMMARY_TXT + '</div>';
		    displayHTML += '</div></div>'; // End div for class='docExpandedContent'
            displayHTML += '</div>'; // End div for class='info_item'
            	
			displayHTML += '<div class="clear"></div>';
			
            if (i == (cntToShow -1)) {
				displayHTML += dHTML;
			}
            
       }
       if (length > cntToShow) {
       		displayHTML += '</div><div class="endTopic" id="' + returnParams[1] + '">';
       		displayHTML += '<p><a href="javascript:void(0);" onclick="javascript:wfKILPResearchViewMore(\'' +  returnParams[1] + '\',\''+ returnParams[2] + '\');">View More</a></p></div>';
       } else {
       		displayHTML += '<div class="endTopic"></div>';
       }
	   
		displayHTML += '</div>'; //end of div class=intv_research_wrapper		
		displayHTML += '</div>'; //end of div class= intvColumnOne
    }
    
    document.getElementById(returnParams[0]).innerHTML = displayHTML;  
}


function displayWfKILPResearchContent(jsonObject,returnParamsStr){
  	var displayitemHTML = '';
	var displayMoreHTML = '';
	var displayLessHTML = '';
	var displayHTML = '';
  	var cntToShow = 3;
	var returnParams = returnParamsStr.split(",");
	//alert('inside displayWfKILPResearchContent : result length = ' + jsonObject.docInfo.length + ' for buchet = ' +  returnParams[3]);
	
  	//var dHTML = '<div id="' + returnParams[2] + '" style="display:none">';
  	if(jsonObject.docInfo != null && jsonObject.docInfo.length > 0){
		displayHTML += '<div class="customappText"><div class="intvColumnOne">';		
		displayHTML += '<h3>' + returnParams[3] + '</h3>';
		displayHTML += '<div class="intv_expanding_research">';
		displayMoreHTML = '<div id="' + returnParams[4] + '" style="display:none"> <div class="intv_expanding_research">';
		displayLessHTML = '<div class="intv_research_wrapper_noof" id="' + returnParams[1] + '">';
	
        var length = jsonObject.docInfo.length;
		for(var i=0; i < length ; i++) {
        	var divId = returnParams[0] + i;
        	var expandedDivId = 'expanded_' + divId;
        	var collapsedDivId = 'collapsed_' + divId;
			var docExpandContentId = 'docExpanded' + divId;
        	
          	displayitemHTML = "";
			displayitemHTML += '<div id=' + expandedDivId + ' style="display:none;" >';
          	displayitemHTML += '<a href="javascript:void(0);" onclick="javascript:collapseItemDiv(\'' + expandedDivId + '\',\'' + collapsedDivId + '\',' + contentHeight + ',\'' + docExpandContentId + '\');return false;" >';
	  		displayitemHTML += '<img src="/imageserver/gartner/images/invest/collapse_minus.gif" border="0" class="floatL buttonPad" /></a>';
	  		displayitemHTML += '</div>';
	  		
	  		displayitemHTML += '<div id=' + collapsedDivId + '>';
	  	   	displayitemHTML += '<a href="javascript:void(0);" onclick="javascript:expandItemDiv(\'' + expandedDivId + '\',\'' + collapsedDivId + '\',' + contentHeight + ',\'' + docExpandContentId + '\');return false;" >';
	  		displayitemHTML += '<img src="/imageserver/gartner/images/invest/collapse_plus.gif" border="0" class="floatL buttonPad" /></a>';
	  		displayitemHTML += '</div>';
	  			
	  		displayitemHTML += '<div class="info_item" >';
	  		displayitemHTML += '<div class="floatL">';
	  		displayitemHTML += '<div><a href="' + jsonObject.docInfo[i].DOCBASEURL + '&resId=' + jsonObject.docInfo[i].RES_ID + '"><strong>' + jsonObject.docInfo[i].TITLE_NM + '</strong></a>';
            displayitemHTML += '</div>';
            displayitemHTML += '<div class="item_pubdate">';
            displayitemHTML += generateAddToLibraryURL(jsonObject.docInfo[i].RES_ID) ;
            displayitemHTML += ' | Published: ' + jsonObject.docInfo[i].DISPLAY_DT;
		    displayitemHTML += '</div>';
           
            displayitemHTML += '<div id="' + docExpandContentId  + '" style="display:none;">';
            displayitemHTML += '<div class="item_analystInfo">' + jsonObject.docInfo[i].AUTHORS + '</div>';
		    displayitemHTML += '<div class="item_description">' + jsonObject.docInfo[i].SUMMARY_TXT + '</div>';
		    displayitemHTML += '</div></div>'; // End div for class='docExpandedContent'
            displayitemHTML += '</div>'; // End div for class='info_item'
            	
			displayitemHTML += '<div class="clear"></div>';
			
             if (i < (cntToShow)) {
				displayLessHTML += displayitemHTML ;
			} else {	
				displayMoreHTML += displayitemHTML ;
			}
       }
       if (length > cntToShow) {
			displayLessHTML += '<div class="endTopic" id="' +returnParams[5]+ '">';
	       	displayLessHTML += '<p><a href="javascript:void(0);" onclick="javascript:wfKILPViewMoreLessControl(\'' +  returnParams[1] + '\',\''+ returnParams[4] + '\',\'' + returnParams[5] + '\', \'true\');">View More</a></p></div></div>';
				
       		displayMoreHTML += '<div class="endTopic">';
	       	displayMoreHTML += '<p><a href="javascript:void(0);" onclick="javascript:wfKILPViewMoreLessControl(\'' +  returnParams[1] + '\',\''+ returnParams[4] + '\', \'' + returnParams[5] + '\', \'false\');">View Less</a></p></div></div>';
	       		
	       	displayHTML += displayLessHTML + displayMoreHTML ;
       } else {
			displayHTML += displayLessHTML + '</div><div class="endTopic"></div>';
       }
	   
		displayHTML += '</div>'; //end of div class=intv_research_wrapper		
		displayHTML += '</div></div>'; //end of div class= intvColumnOne
    } 
    
    document.getElementById(returnParams[0]).innerHTML = displayHTML;  
}

//Loads the Burton KI Research from API call
function loadWfKIBurtonResearch() { //alert('inside loadWfKIBurtonResearch');
	
	var functionName = "displayWfLPBurtonResearchContent";
	var returnParams = new Array();
	returnParams[0]	= "wfKILPBurtonResearchContent";
	returnParams[1] = "wfKIBurtonResViewMoreDiv";
	returnParams[2] = "wfKILPBurtonReseachHideDiv";
	returnParams[3] = "IT1 IN-DEPTH RESEARCH";
	returnParams[4] = "wfKILPResearchContent";
	returnParams[5] = "wfKILPResearchContent";
	returnParams[6] = "wfKIBurtonResViewLessDiv";
	
	//Commented the below code as phaseId, wfucxId and categoryId are defined in wfKIContentCanvas.jsp
	//var wfucxId = PTPortlet.getSessionPref("wfucxId");
	//var categoryId = PTPortlet.getSessionPref("categoryId");
	//Added catch statements to handle emtpy conditions

	if(wfucxId == null || wfucxId == ''){
		wfucxId = PTPortlet.getSessionPref("wfucxId");
	}
	if(categoryId == null || categoryId == ''){
		categoryId = PTPortlet.getSessionPref("categoryId");
	}
	if(kiId == null || kiId == ''){
		kiId = PTPortlet.getSessionPref("kiId");
	}
	
	var researchUrl ="workflowLandingPagesAction.do?methodName=getBurtonResearchFromAPI&wfucxId="+wfucxId+"&category="+categoryId+"&kiId="+kiId;
	
	document.getElementById(returnParams[0]).innerHTML = "<img src='/imageserver/gartner/images/loading_images/loading_small.gif' border='0' alt = 'Loading...'/>";
	
	var transformedURL = gatewayUrlForAddToLibrary + researchUrl;
	GetDataWithReturnParams(transformedURL, functionName, '', returnParams);
}

function displayWfLPBurtonResearchContent(jsonObject,returnParamsStr){
	var displayitemHTML = '';
	var displayMoreHTML = '';
	var displayLessHTML = '';
  	var displayHTML = '';
  	var cntToShow = 3;
	var returnParams = returnParamsStr.split(",");
	
  	if(jsonObject.docInfo != null && jsonObject.docInfo.length > 0){
		displayHTML += '<div class="customappText"><div class="intvColumnOne">';		
		displayHTML += '<h3 class="burtonBGcolor">' + returnParams[3] + '<div class="clear"><span></span></div></h3>';
		displayHTML += '<div class="clear borderf5"><span></span></div>';
		displayHTML += '<div class="clear topPad4"><span></span></div>';
		displayHTML += '<div class="intv_nonexpanding_research">';
		displayHTML += '<div class="info_item">Research You Can Share With Your Team</div>';
		displayHTML += '<div class="itemUnderline">';
		displayHTML += '<div class="clear"><span></span></div></div></div>';

		displayHTML += '<div class="intv_expanding_research">';

		displayMoreHTML = '<div id="' + returnParams[6] + '" style="display:none"> <div class="intv_expanding_research">';
		displayLessHTML = '<div class="intv_research_wrapper_noof" id="' + returnParams[1] + '">';
	
        var length = jsonObject.docInfo.length;
		for(var i=0; i < length ; i++) {
        	var divId = returnParams[0] + i;
        	var expandedDivId = 'expanded_' + divId;
        	var collapsedDivId = 'collapsed_' + divId;
			var docExpandContentId = 'docExpanded' + divId;
        	
          	displayitemHTML = "";
			displayitemHTML += '<div id=' + expandedDivId + ' style="display:none;" >';
          	displayitemHTML += '<a href="javascript:void(0);" onclick="javascript:collapseItemDiv(\'' + expandedDivId + '\',\'' + collapsedDivId + '\',' + contentHeight + ',\'' + docExpandContentId + '\');return false;" >';
	  		displayitemHTML += '<img src="/imageserver/gartner/images/invest/collapse_minus.gif" border="0" class="floatL buttonPad" /></a>';
	  		displayitemHTML += '</div>';
	  		
	  		displayitemHTML += '<div id=' + collapsedDivId + '>';
	  	   	displayitemHTML += '<a href="javascript:void(0);" onclick="javascript:expandItemDiv(\'' + expandedDivId + '\',\'' + collapsedDivId + '\',' + contentHeight + ',\'' + docExpandContentId + '\');return false;" >';
	  		displayitemHTML += '<img src="/imageserver/gartner/images/invest/collapse_plus.gif" border="0" class="floatL buttonPad" /></a>';
	  		displayitemHTML += '</div>';
	  			
	  		displayitemHTML += '<div class="info_item" >';
	  		displayitemHTML += '<div class="floatL">';
	  		displayitemHTML += '<div><a href="' + jsonObject.docInfo[i].DOCBASEURL + '&resId=' + jsonObject.docInfo[i].RES_ID + '"><strong>' + jsonObject.docInfo[i].TITLE_NM + '</strong></a>';
            displayitemHTML += '</div>';
            displayitemHTML += '<div class="item_pubdate">';
            displayitemHTML += generateAddToLibraryURL(jsonObject.docInfo[i].RES_ID) ;
            displayitemHTML += ' | Published: ' + jsonObject.docInfo[i].DISPLAY_DT;
		    displayitemHTML += '</div>';
           
            displayitemHTML += '<div id="' + docExpandContentId  + '" style="display:none;">';
            displayitemHTML += '<div class="item_analystInfo">' + jsonObject.docInfo[i].AUTHORS + '</div>';
		    displayitemHTML += '<div class="item_description">' + jsonObject.docInfo[i].SUMMARY_TXT + '</div>';
		    displayitemHTML += '</div></div>'; // End div for class='docExpandedContent'
            displayitemHTML += '</div>'; // End div for class='info_item'
            	
			displayitemHTML += '<div class="clear"></div>';
			
            if (i < (cntToShow)) {
				displayLessHTML += displayitemHTML ;
			} else {
				displayMoreHTML += displayitemHTML; 
			}
       }
       if (length > cntToShow) {
			displayLessHTML += '<div class="endTopic burtonBGcolor" id="WfLPBurtonResearchViewMoreLink">';
	       	displayLessHTML += '<p><a href="javascript:void(0);" onclick="javascript:wfKILPViewMoreLessControl(\'' +  returnParams[1] + '\',\''+ returnParams[6] + '\', \'WfLPBurtonResearchViewMoreLink\', \'true\');">View More</a></p></div></div>';
				
       		displayMoreHTML += '<div class="endTopic">';
	       	displayMoreHTML += '<p><a href="javascript:void(0);" onclick="javascript:wfKILPViewMoreLessControl(\'' +  returnParams[1] + '\',\''+ returnParams[6] + '\', \'WfLPBurtonResearchViewMoreLink\', \'false\');">View Less</a></p></div></div></div>';
	       		
	       	displayHTML += displayLessHTML + displayMoreHTML ;
			
       } else {
       		displayHTML += displayLessHTML + '</div><div class="endTopic"></div>';
       }
	   
		displayHTML += '</div>'; //end of div class="intv_expanding_research"	
		displayHTML += '</div>'; //end of div class="intvColumnOne"		
		displayHTML += '</div>'; //end of div class="customappText"
    }
    document.getElementById(returnParams[0]).innerHTML = displayHTML;  
}

//Loads the Burton KI Research from API call
function loadWfKIGartnerIndex() {
	var functionName = "displayWfLPGartnerIndex";
	var returnParams = new Array();
	returnParams[0]	= "wfKILPGartnerIndexContent";
	returnParams[1] = "wfKIResearchIndexViewMoreDiv";
	returnParams[2] = "wfKILPResearchIndexHideDiv";
	returnParams[3] = "OTHER RESEARCH ON THIS INITIATIVE";
	

	
	//Commented the below code as phaseId, wfucxId and categoryId are defined in wfKIContentCanvas.jsp
	//var wfucxId = PTPortlet.getSessionPref("wfucxId");
	//var categoryId = PTPortlet.getSessionPref("categoryId");
	//Added catch statements to handle emtpy conditions

	if(wfucxId == null || wfucxId == ''){
		wfucxId = PTPortlet.getSessionPref("wfucxId");
	}
	if(categoryId == null || categoryId == ''){
		categoryId = PTPortlet.getSessionPref("categoryId");
	}
	if(kiId == null || kiId == ''){
		kiId = PTPortlet.getSessionPref("kiId");
	}
	
	var researchUrl ="workflowLandingPagesAction.do?methodName=getGartnerReferenceIndexContent&wfucxId="+wfucxId+"&category="+categoryId+"&kiId="+kiId;
	
	document.getElementById(returnParams[0]).innerHTML = "<img src='/imageserver/gartner/images/loading_images/loading_small.gif' border='0' alt = 'Loading...'/>";
	
	var transformedURL = gatewayUrlForAddToLibrary + researchUrl;
	GetDataWithReturnParams(transformedURL, functionName, '', returnParams);
}

function displayWfLPGartnerIndex(jsonObject,returnParamsStr){
  	var displayHTML = '';
  	var cntToShow = 5;
	var returnParams = returnParamsStr.split(",");
  	var dHTML = '<div id="' + returnParams[2] + '" style="display:none">';
  	if(jsonObject.docInfo != null && jsonObject.docInfo.length > 0){
		displayHTML += '<div class="intvColumnTwo">';		
		displayHTML += '<h3>' + returnParams[3] + '</h3>';		
		displayHTML += '<div class="intvColumnTwoPad">';
		displayHTML += '<div class="info_item">Contact Gartner to learn how to get access to this content</div>';
		displayHTML += '<div class="clear"><span></span></div>';
		displayHTML += '<div class="wfLPWebinarsBucket">';
	
        var length = jsonObject.docInfo.length;
		for(var i=0; i < length ; i++) {
        	var divId = returnParams[0] + i;
        	var expandedDivId = 'expanded_' + divId;
        	var collapsedDivId = 'collapsed_' + divId;
			var docExpandContentId = 'docExpanded' + divId;
        	
          	//displayHTML += '<div id=' + expandedDivId + ' style="display:none;" >';
          	//displayHTML += '<a href="javascript:void(0);" onclick="javascript:collapseItemDiv(\'' + expandedDivId + '\',\'' + collapsedDivId + '\',' + contentHeight + ',\'' + docExpandContentId + '\');return false;" >';
	  		//displayHTML += '<img src="/imageserver/gartner/images/invest/collapse_minus.gif" border="0" class="floatL buttonPad" /></a>';
	  		//displayHTML += '</div>';
	  		
	  		//displayHTML += '<div id=' + collapsedDivId + '>';
	  	   	//displayHTML += '<a href="javascript:void(0);" onclick="javascript:expandItemDiv(\'' + expandedDivId + '\',\'' + collapsedDivId + '\',' + contentHeight + ',\'' + docExpandContentId + '\');return false;" >';
	  		//displayHTML += '<img src="/imageserver/gartner/images/invest/collapse_plus.gif" border="0" class="floatL buttonPad" /></a>';
	  		//displayHTML += '</div>';
	  			
	  		displayHTML += '<div class="info_item" >';
	  		displayHTML += '<div class="floatL">';
	  		displayHTML += '<div><a href="' + jsonObject.docInfo[i].DOCBASEURL + '&resId=' + jsonObject.docInfo[i].RES_ID + '"><strong>' + jsonObject.docInfo[i].TITLE_NM + '</strong></a>';
            displayHTML += '</div>';
            displayHTML += '<div class="item_pubdate">';
          //  displayHTML += generateAddToLibraryURL(jsonObject.docInfo[i].RES_ID) ;
            displayHTML += ' Published: ' + jsonObject.docInfo[i].DISPLAY_DT;
		    displayHTML += '</div>';
           
            //displayHTML += '<div id="' + docExpandContentId  + '" style="display:none;">';
            //displayHTML += '<div class="item_analystInfo">' + jsonObject.docInfo[i].AUTHORS + '</div>';
		    //displayHTML += '<div class="item_description">' + jsonObject.docInfo[i].SUMMARY_TXT + '</div>';
		    //displayHTML += '</div></div>'; // End div for class='docExpandedContent'
           // displayHTML += '</div>'; // End div for class='info_item'
            	
			displayHTML += '<div class="clear"></div>';
			displayHTML += '<br/>';
			
            //if (i == (cntToShow -1)) {
			//	displayHTML += dHTML;
			//}
            
       }
      // if (length > cntToShow) {
     //  		displayHTML += '</div><div class="endTopic" id="' + returnParams[1] + '">';
     //  		displayHTML += '<p><a href="javascript:void(0);" onclick="javascript:wfKILPResearchViewMore(\'' +  returnParams[1] + '\',\''+ returnParams[2] + '\');">View More</a></p></div>';
     //  } else {
       		displayHTML += '<div class="endTopic"></div>';
     //  }
	   
		displayHTML += '</div>'; //end of div class=intv_research_wrapper		
		displayHTML += '</div>'; //end of div class= intvColumnTwoPad
		displayHTML += '</div>'; //end of div class= intvColumnOne
    }
    
    document.getElementById(returnParams[0]).innerHTML = displayHTML;  
	
}


//wfKILPReseachHideDiv, wfKIResViewMoreDiv
function wfKILPResearchViewMore(showDivId, hideDivId) {
	document.getElementById(hideDivId).style.display = "";
	document.getElementById(showDivId).style.display = "none";
}

function wfKILPViewMoreLessControl(showDivId, hideDivId, hideLinkId, isMore) {
	if(isMore == 'true'){
		document.getElementById(hideDivId).style.display = "";
		document.getElementById(showDivId).style.display = "";
		document.getElementById(hideLinkId).style.display = "none";
	} else {
		document.getElementById(hideDivId).style.display = "none";
		document.getElementById(showDivId).style.display = "";
		document.getElementById(hideLinkId).style.display = "";
	}
}

function loadWfKIToolsAndToolKits() {
	var functionName = "displayWfKILPResearchContent";
	var returnParams = new Array();
	returnParams[0]	= "wfKILPToolsContent";
	returnParams[1] = "wfKILPToolsViewMoreDiv";
	returnParams[2] = "wfKILPToolsHideDiv";
	returnParams[3] = "TOOLS AND TOOLKITS";
	returnParams[4] = "wfKILPToolsViewLessDiv";
	returnParams[5] = "wfKILPToolsViewMoreLink";
	
	//Commented the below code as variables are defined in wfKIContentCanvas.jsp
	//var phaseId = PTPortlet.getSessionPref("phaseId");
	//var wfucxId = PTPortlet.getSessionPref("wfucxId");
	//var categoryId = PTPortlet.getSessionPref("categoryId");
	//Added catch stmts to handle emtpy conditions
	if(phaseId == null || phaseId == ''){
		phaseId = PTPortlet.getSessionPref("phaseId");
	}
	if(wfucxId == null || wfucxId == ''){
		wfucxId = PTPortlet.getSessionPref("wfucxId");
	}
	if(categoryId == null || categoryId == ''){
		categoryId = PTPortlet.getSessionPref("categoryId");
	}
	if(kiId == null || kiId == ''){
		kiId = PTPortlet.getSessionPref("kiId");
	}
	
	// If phaseId = 1, it means 'Research' tab was clicked on the UI. Hence, manually set the phaseId=-1 to pass to 
	// Recommendation Engine.
	if (phaseId == '1') {		
		phaseId = '-1';
	}
	
	var researchUrl ="workflowLandingPagesAction.do?methodName=getToolkitsFromAPI&wfucxId="+wfucxId+"&phaseId="+phaseId+"&category="+categoryId+"&kiId="+kiId;
	document.getElementById(returnParams[0]).innerHTML = '';
	var transformedURL = gatewayUrlForAddToLibrary + researchUrl;
	GetDataWithReturnParams(transformedURL, functionName, '', returnParams);
}


function loadWfKIIndustryResearch() { 
	//alert('inside loadWfKIIndustryResearch');
	var functionName = "displayWfKILPResearchContent";
	var returnParams = new Array();
	returnParams[0]	= "wfKILPIndustryResearchContent";
	returnParams[1] = "wfKILPIndustryViewMoreDiv";
	returnParams[2] = "wfKILPIndustryHideDiv";
	returnParams[3] = "RELATED INDUSTRY RESEARCH";
	returnParams[4] = "wfKILPIndustryViewLessDiv";
	returnParams[5] = "wfKILPIndustryViewMoreLink";
	
	//Added catch stmts to handle emtpy conditions
	if(phaseId == null || phaseId == ''){
		phaseId = PTPortlet.getSessionPref("phaseId");
	}
	if(wfucxId == null || wfucxId == ''){
		wfucxId = PTPortlet.getSessionPref("wfucxId");
	}
	if(categoryId == null || categoryId == ''){
		categoryId = PTPortlet.getSessionPref("categoryId");
	}
	if(kiId == null || kiId == ''){
		kiId = PTPortlet.getSessionPref("kiId");
	}
	
	var researchUrl ="workflowLandingPagesAction.do?methodName=getIndustryResearch&wfucxId="+wfucxId+"&phaseId="+phaseId+"&category="+categoryId+"&kiId="+kiId;
	document.getElementById(returnParams[0]).innerHTML = '';
	var transformedURL = gatewayUrlForAddToLibrary + researchUrl;
	GetDataWithReturnParams(transformedURL, functionName, '', returnParams);
}


function loadKILandingPage() {
	//alert(" In loadKILandingPage activePhaseId = " + PTPortlet.getSessionPref("activePhaseId") + "::activeDivId = " + PTPortlet.getSessionPref("activeDivId"));
	
	
	// Need to hide the loading icon coming from wf Research buckets because the first tab is now 'Getting Started'			
	var hideResearch = document.getElementById('wfKILPResearchContent');	
	if (hideResearch) {	
		hideResearch.style.display = 'none';
	}
	var hideToolkits = document.getElementById('wfKILPToolsContent');	
	if (hideToolkits) {	
		hideToolkits.style.display = 'none';
	}
	var burtonResearch = document.getElementById('wfKILPBurtonResearchContent');	
	if (burtonResearch) {	
		burtonResearch.style.display = 'none';
	}
	
	// Need to hide Foundational Research buckets because the first tab is now 'Getting Started'
	var hideFoundationalResearch = document.getElementById('wfKILPFRContent');	
	if (hideFoundationalResearch) {	
		hideFoundationalResearch.style.display = 'none';
	}
	var hideBurtonFoundationalResearch = document.getElementById('wfKILPBurtonFRContent');	
	if (hideBurtonFoundationalResearch) {	
		hideBurtonFoundationalResearch.style.display = 'none';
	}
	
	// Do not load Research Bukets in the left rail for 'Getting Started' phase.	
	if (phaseId != null && phaseId > 0) {
		//alert('in loadKILandingPage : phaseId = ' + phaseId);
		if (hasEXPKIAccess == 'true' || hasEUPKIAccess == 'true' || hasRoleWGMemberAccess == 'true' || hasSCLKIAccess == 'true') {
			loadWfKIResearch();
			
			loadWfKIToolsAndToolKits();
			
			//Refresh Foundational Research Portlet
			var frportlet = PTPortlet.getPortletByID(frid);
			frportlet.refresh();
		}
		
		if (hasBURTONKIAccess == 'true') {
			loadWfKIBurtonResearch();			
		}

		//loadWfKIIndustryResearch();
	}	
	
	// Gartner Index bucket in right rail should be shown to pure Burton IT1 users ONLY
	if (isIT1MaxPriorityMarket == 'true') {
		//alert('isIT1MaxPriorityMarket = ' + isIT1MaxPriorityMarket);
		loadWfKIGartnerIndex();
	} 
	else { // Hide loading icon coming from Gartner Index JSP
		var gartnerIndex = document.getElementById('wfKILPGartnerIndexContent');	
		if (gartnerIndex) {	
			gartnerIndex.style.display = 'none';
		}
	}
}


function changeTabStyle(currentTabDivId, totalPhases) {				
	/* set all tabs styles */
	for (i=1; i<=totalPhases; i++) {
		var tabsDivId = 'tabsDivId' + i;					
		document.getElementById(tabsDivId).style.backgroundColor='#5c6970';
		document.getElementById(tabsDivId).style.color='#ffffff';
		document.getElementById(tabsDivId).style.textDecoration='none';		
		document.getElementById(tabsDivId).style.float='left';
		document.getElementById(tabsDivId).style.display='inline';
	}
							
	/* set the selected tab styles */
	document.getElementById(currentTabDivId).style.backgroundColor='#fff'; 
	document.getElementById(currentTabDivId).style.color='#D54400'; 
	document.getElementById(currentTabDivId).style.texDecoration='none'				
}

function hideShowKILPBucketsByDivId(phaseId) {
				//alert("activePhaseId = " + PTPortlet.getSessionPref("activePhaseId") + "::activeDivId = " + PTPortlet.getSessionPref("activeDivId"));
				// Below is the toggle logic to show/hide divs depending on which tab is clicked.
				if (phaseId > 0) { // Tab other than 'Getting Started' is clicked.
					// Hide Getting Started buckets is done below
					// Message Bucket
					var messageContent = document.getElementById('wfKILPMessageContent');	
					if (messageContent) {	
						messageContent.style.display = 'none';
					}
					
					// Video Bucket
					var videoBucket = document.getElementById('kiVideoShowHideDiv');
					if (videoBucket) {	
						videoBucket.style.display = 'none';
					}
					
					// Overview/Read First Bucket
					var overviewContent = document.getElementById('wfKILPOverviewContent');	
					if (overviewContent) {	
						overviewContent.style.display = 'none';
					}
					
					// Executive Picks
					var hideExecutivesPicks = document.getElementById('wfKILPEPContent');
					if (hideExecutivesPicks) {	
						hideExecutivesPicks.style.display = 'none';
					}
					
					// Top Read
					var topRead = document.getElementById('wfKILPTopRead');	
					if (topRead) {	
						topRead.style.display = 'none';
					}
					
					// Show Research buckets is done below
					// Research
					var showResearch = document.getElementById('wfKILPResearchContent');
	   				if (showResearch) {
	   				 	showResearch.style.display = '';
	                } 
	                // Tools and Toolkits 
	                var showToolsAndToolkits = document.getElementById('wfKILPToolsContent');
	   				if (showToolsAndToolkits) {
	   				 	showToolsAndToolkits.style.display = '';
	                } 
	                // EUP Foundational Research
	                var showFoundationalResearch = document.getElementById('wfKILPFRContent');
	   				if (showFoundationalResearch) {
	   				 	showFoundationalResearch.style.display = '';
	                } 
	                // Burton Research bucket
	                var showBurtonResearch = document.getElementById('wfKILPBurtonResearchContent');
	                if (showBurtonResearch) {
	   				 	showBurtonResearch.style.display = '';
	                }
	                // Burton Foundational Research               
	                var showBurtonFoundationalResearch = document.getElementById('wfKILPBurtonFRContent');
	   				if (showBurtonFoundationalResearch) {
	   				 	showBurtonFoundationalResearch.style.display = '';
	                }          
					
					// Load Research buckets						
					if (hasEXPKIAccess == 'true' || hasEUPKIAccess == 'true' || hasRoleWGMemberAccess == 'true' || hasSCLKIAccess == 'true') {						
				  		if (window.loadWfKIResearch) {
							loadWfKIResearch();
						}
						if (window.loadWfKIToolsAndToolKits) {
							loadWfKIToolsAndToolKits();
						}
					
						//Refresh Foundational Research Portlet
						var frportlet = PTPortlet.getPortletByID(frid);
						frportlet.refresh();
					}
					
					// Load Industry research Bucket
					if (window.loadWfKIIndustryResearch) {					
						loadWfKIIndustryResearch();
					}
				
					// Load Burton Research bucket only when user has access to Burton KI Market				
					if (hasBURTONKIAccess == 'true') {
						if (window.loadWfKIBurtonResearch) {
							loadWfKIBurtonResearch();
						}							
					}
				} 
				else { // Control would come here if 'Getting Started' Phase was clicked
					
					// Hide Research buckets for 'Getting Started' tab.					
					// Show these buckets:					
					// - Message
					// - Video
					// - Overview
					// - Read First
					// - Top Read
					// This will be handled via show/hide of div's
					// Thus, each bucket should have an outer surrounding div that can be used here to show/hide				
	                
	                // Show Message
					var showMessage = document.getElementById('wfKILPMessageContent');
	   				if (showMessage) {
	   				 	showMessage.style.display = '';
	                }
					
					// Show Video
					var showVideo = document.getElementById('kiVideoShowHideDiv');
	   				if (showVideo) {
	   				 	showVideo.style.display = '';
	                }
	                
	                // Show Overview Content bucket
					var showOverviewContent = document.getElementById('wfKILPOverviewContent');
	   				if (showOverviewContent) {
	   				 	showOverviewContent.style.display = '';
	                }
	                
	                // Show Executives Picks Content bucket
					var showExecutivesPicks = document.getElementById('wfKILPEPContent');
	   				if (showExecutivesPicks) {
	   				 	showExecutivesPicks.style.display = '';
	                }
					
					// Show Top Read Content bucket
					var showTopRead = document.getElementById('wfKILPTopRead');
	   				if (showTopRead) {
	   				 	showTopRead.style.display = '';
	                }
	                
					//******* Hide Research buckets is done below ***********//				
					var hideResearch = document.getElementById('wfKILPResearchContent');	
					if (hideResearch) {	
						hideResearch.style.display = 'none';
					}	
					var hideToolsAndToolkits = document.getElementById('wfKILPToolsContent');	
					if (hideToolsAndToolkits) {
						hideToolsAndToolkits.style.display = 'none';
					}
					var hideIndustryResearch = document.getElementById('wfKILPIndustryResearchContent');	
					if (hideIndustryResearch) {
						hideIndustryResearch.style.display = 'none';
					}					
					var hideBurtonResearch = document.getElementById('wfKILPBurtonResearchContent');	
					if (hideBurtonResearch) {	
						hideBurtonResearch.style.display = 'none';
					}	
					var hideFoundationalResearch = document.getElementById('wfKILPFRContent');			
					if (hideFoundationalResearch) {
						hideFoundationalResearch.style.display = 'none';
					}	
					var hideBurtonFoundationalResearch = document.getElementById('wfKILPBurtonFRContent');	
					if (hideBurtonFoundationalResearch) {		
						hideBurtonFoundationalResearch.style.display = 'none';
					}							
				}
}

			
function loadWFLPWebinars(){
	var functionName = "displayWfLPWebinars";
	var returnParam = "wfLPWebinarsBucket";
	
	//Commented the below code as variables are defined in content canvas jsp
	//var wfucxId = PTPortlet.getSessionPref("wfucxId");
	//var vendorTrackId = PTPortlet.getSessionPref("VendorTrackId"); 
	//var categoryId = PTPortlet.getSessionPref("categoryId");
	
	//Added catch stmts to handle emtpy conditions
	if((wfucxId == null || wfucxId == '') && (vendorTrackId == null || vendorTrackId == '')){
		wfucxId = PTPortlet.getSessionPref("wfucxId");
	}
	if(categoryId == null || categoryId == ''){
		categoryId = PTPortlet.getSessionPref("categoryId");
	}
	if(kiId == null || kiId == ''){
		kiId = PTPortlet.getSessionPref("kiId");
	}
	//Execute this block only for Vendors
	if(categoryId == "2"){
		if((vendorTrackId == null || vendorTrackId == '') && (wfucxId == null || wfucxId == '')){
			vendorTrackId = PTPortlet.getSessionPref("VendorTrackId");
		}
	}
	
	var researchUrl ="workflowLandingPagesAction.do?methodName=getWebinarsFromAPI&wfucxId="+wfucxId+"&category="+ categoryId + "&vendorId=" + vendorTrackId+"&kiId="+kiId;
	document.getElementById(returnParam).innerHTML = '';
	var transformedURL = gatewayUrlForAddToLibrary + researchUrl;
	GetDataWithReturnParams(transformedURL, functionName, '', returnParam);
}

function displayWfLPWebinars(jsonObject,returnParam){
	var displayHTML = '';
  	
  	if(jsonObject.docInfo != null && jsonObject.docInfo.length > 0){
		//displayHTML += '<div class="railSubhead">';
    		//displayHTML += '<h4>Webinars</h4>';
        	//displayHTML += '<p><a href="javascript:void(0);" onclick="javascript:openWebinarCalendar(\'upcoming\', \'' + webinarCalendarPageJS + '\'); return false;">View All</a></p>';
        	//displayHTML += '<div class="clear"><span></span></div>';
		//displayHTML += '</div>';
		var length = jsonObject.docInfo.length;
		
		for(var i=0; i < length ; i++) {
			if (i == 0) {
				displayHTML += '<div id="wfLPWBcontent' + i + '" >';
			} else {
				displayHTML += '<div id="wfLPWBcontent' + i + '" style="display:none;">';
			}
			
			displayHTML += '<div class="railSubheadButtons">';
			displayHTML += '<h4>Webinars</h4>';
			
			//show rotation icons	
			if(length > 1){
					displayHTML +='<div class="bulletbuttons">';
					if(i == 0){
						displayHTML +='<a href="javascript:void(\'0\');" onclick="javascript:wfLPShowNextWebinar(' + i + ',' + (length-1) +',' + length + ');" ><img src="/imageserver/gartner/images/mypage/initiatives/arrowDots/arrowdotleftgreen.gif" border="0"></a>';
						displayHTML += highlighImage(i, "wfLPWBcontent", length);
						displayHTML +='<a href="javascript:void(\'0\');" onclick="javascript:wfLPShowNextWebinar(' + i + ',' + (i+1) +',' + length + ');" >';
						displayHTML +='<img src="/imageserver/gartner/images/mypage/initiatives/arrowDots/arrowdotrightgreen.gif" border="0"></a>';
					} else if (i > 0 && i < (length - 1)){
						displayHTML +='<a href="javascript:void(\'0\');" onclick="javascript:wfLPShowNextWebinar(' + i + ',' + (i-1) + ',' + length + ');" >';
						displayHTML +='<img src="/imageserver/gartner/images/mypage/initiatives/arrowDots/arrowdotleftgreen.gif" border="0"></a>';
						displayHTML += highlighImage(i, "wfLPWBcontent", length);
						displayHTML +='<a href="javascript:void(\'0\');" onclick="javascript:wfLPShowNextWebinar(' + i + ',' + (i+1) +',' + length + ');" >';
						displayHTML +='<img src="/imageserver/gartner/images/mypage/initiatives/arrowDots/arrowdotrightgreen.gif" border="0"></a>';
					}else if(i == (length-1)){
						displayHTML +='<a href="javascript:void(\'0\');" onclick="javascript:wfLPShowNextWebinar(' + i + ',' + (i-1) + ',' + length + ');" >';
						displayHTML +='<img src="/imageserver/gartner/images/mypage/initiatives/arrowDots/arrowdotleftgreen.gif" border="0"></a>';
						displayHTML +=highlighImage(i, "wfLPWBcontent", length);
						displayHTML +='<a href="javascript:void(\'0\');" onclick="javascript:wfLPShowNextWebinar(' + i + ',0,' + length + ');" >';
						displayHTML +='<img src="/imageserver/gartner/images/mypage/initiatives/arrowDots/arrowdotrightgreen.gif" border="0"></a>';
					}
					
					displayHTML +='<div class="clear"><span></span></div></div>'; //End class="bulletbuttons"
			}
			
			displayHTML +='<div class="clear"><span></span></div></div>'; // End railSubheadButtons 
			displayHTML +='<div class="clear"><span></span></div>';
			
			displayHTML +='<div class="railGradBG">';
			displayHTML += '<ul class="kiRailWebinarList">';
			displayHTML += '<li><a href="' + jsonObject.docInfo[i].DOCBASEURL + '&resId=' + jsonObject.docInfo[i].RES_ID + '" class="item_title">' + jsonObject.docInfo[i].TITLE_NM + '</a>';
			displayHTML += '</li>';
			displayHTML += '<li class="item_pubdate" >';
			displayHTML += jsonObject.docInfo[i].DISPLAY_DT;
			displayHTML += '</li>';
			//displayHTML += '<li class="credentials" >';
			//displayHTML += '<strong>Host:</strong>';
			//displayHTML +=	jsonObject.docInfo[i].AUTHORS;
			//displayHTML +='</li>';
			displayHTML += '</ul><div class="clear"><span></span></div></div>';
			
			displayHTML += '<div class="clear"></div>';
			
			displayHTML += '<div class="railSubheadButtons">';
     		displayHTML += '<p class="arrowRtBold"><a href="javascript:void(0);" onclick="javascript:openWebinarCalendar(\'upcoming\', \'' + webinarCalendarPageJS + '\'); return false;">';
 			displayHTML += 'View All</a></p>';
      		displayHTML += '<div class="clear"><span></span></div>';
      		displayHTML += '</div>'; //class="railSubheadButtons"
      		
			displayHTML += '</div>'; 
            
       }
    }
    
    document.getElementById(returnParam).innerHTML = displayHTML;  
}

function loadWFLPPeers(){
	var functionName = "displayWfLPPeers";
	//var returnParam = "wfLPPeersBucket";
	var returnParams = new Array();
	returnParams[0]	= "wfLPPeersBucket";
	
	//Commented below code as the variables are declared in the content canvas jsps
	//var wfucxId = PTPortlet.getSessionPref("wfucxId");
	//var vendorTrackId = PTPortlet.getSessionPref("VendorTrackId"); 
	//var categoryId = PTPortlet.getSessionPref("categoryId");
	
	//Added catch stmts to handle emtpy conditions
	if((wfucxId == null || wfucxId == '') && (vendorTrackId == null || vendorTrackId == '')){
		wfucxId = PTPortlet.getSessionPref("wfucxId");
	}
	if(categoryId == null || categoryId == ''){
		categoryId = PTPortlet.getSessionPref("categoryId");
	}
	if(kiId == null || kiId == ''){
		kiId = PTPortlet.getSessionPref("kiId");
	}
	//Execute this block only for Vendors
	if(categoryId == "2"){
		if((vendorTrackId == null || vendorTrackId == '') && (wfucxId == null || wfucxId == '')){
			vendorTrackId = PTPortlet.getSessionPref("VendorTrackId");
		}
	}
	returnParams[1] = categoryId;
	
	var researchUrl ="workflowLandingPagesAction.do?methodName=getPeersFromAPI&wfucxId="+wfucxId+"&category="+ categoryId + "&vendorId=" + vendorTrackId+"&kiId="+kiId;
	document.getElementById(returnParams[0]).innerHTML = '';
	var transformedURL = gatewayUrlForAddToLibrary + researchUrl;
	GetDataWithReturnParams(transformedURL, functionName, '', returnParams);
}

function redirectToPF(categoryId){
	//Append the referrer  to pcHomeUrl before redirection
	if(categoryId=='1'){
		//Initiative
		pcHomeUrl = pcHomeUrl + "&referrer=wf_kilp";
	}else{
		//Vendor
		pcHomeUrl = pcHomeUrl + "&referrer=wf_vendorlp";
	}
	
	if(isComplete=='Y'){
		//Set a session pref to redirect to Peer Finder Page
		javascript:setPortalUserSessionPreference('pfp','Y',pcHomeUrl);
	}else{
		//Set the session preference and redirect to Peer Finder Page
		javascript:setPortalUserSessionPreference('pfp','N',pcHomeUrl);
	}
}

function showPCViewMoreLayerPage(categoryId, userId, entCd){

	if(categoryId=='1'){
		//Initiative
		PTPortlet.setSessionPref("referrer", "wf_kilp");
	}else{
		//Vendor
		PTPortlet.setSessionPref("referrer", "wf_vendorlp");
	}
	
	showViewMoreLayerPage(userId,entCd);

}
function loadjsfile(filename){
	var fileref=document.createElement('script');
	fileref.setAttribute("type","text/javascript");
	fileref.setAttribute("src", filename);
	if (typeof fileref!="undefined")
		document.getElementsByTagName("head")[0].appendChild(fileref);
}
	
function displayWfLPPeers(jsonObject,returnParamsStr){
	var displayHTML = '';
	var returnParams = returnParamsStr.split(","); 
	
  	if(jsonObject.peerInfo != null && jsonObject.peerInfo.length > 0){	
		var length = jsonObject.peerInfo.length;
		
		for(var i = 0; i < length ; i++) {
			if (i == 0) {
				displayHTML += '<div class="info_item" id="wfLPPCcontent' + i + '" >';
			} else {
				displayHTML += '<div class="info_item" id="wfLPPCcontent' + i + '" style="display:none;">';
			}
			
			displayHTML += '<div class="railSubheadButtons">';
			displayHTML += '<h4>Peers</h4>';
			
			//show rotation icons	
			if(length > 1){
					displayHTML +='<div class="bulletbuttons">';
					if(i == 0){
						displayHTML +='<a href="javascript:void(\'0\');" onclick="javascript:wfLPShowNextPeer(' + i + ',' + (length-1) +',' + length + ');" ><img src="/imageserver/gartner/images/mypage/initiatives/arrowDots/arrowdotleftgreen.gif" border="0"></a>';
						displayHTML += highlighImage(i, "wfLPPCcontent", length);
						displayHTML +='<a href="javascript:void(\'0\');" onclick="javascript:wfLPShowNextPeer(' + i + ',' + (i+1) +',' + length + ');" >';
						displayHTML +='<img src="/imageserver/gartner/images/mypage/initiatives/arrowDots/arrowdotrightgreen.gif" border="0"></a>';
					} else if (i > 0 && i < (length - 1)){
						displayHTML +='<a href="javascript:void(\'0\');" onclick="javascript:wfLPShowNextPeer(' + i + ',' + (i-1) + ',' + length + ');" >';
						displayHTML +='<img src="/imageserver/gartner/images/mypage/initiatives/arrowDots/arrowdotleftgreen.gif" border="0"></a>';
						displayHTML += highlighImage(i, "wfLPPCcontent", length);
						displayHTML +='<a href="javascript:void(\'0\');" onclick="javascript:wfLPShowNextPeer(' + i + ',' + (i+1) +',' + length + ');" >';
						displayHTML +='<img src="/imageserver/gartner/images/mypage/initiatives/arrowDots/arrowdotrightgreen.gif" border="0"></a>';
					}else if(i == (length-1)){
						displayHTML +='<a href="javascript:void(\'0\');" onclick="javascript:wfLPShowNextPeer(' + i + ',' + (i-1) + ',' + length + ');" >';
						displayHTML +='<img src="/imageserver/gartner/images/mypage/initiatives/arrowDots/arrowdotleftgreen.gif" border="0"></a>';
						displayHTML +=highlighImage(i, "wfLPPCcontent", length);
						displayHTML +='<a href="javascript:void(\'0\');" onclick="javascript:wfLPShowNextPeer(' + i + ',0,' + length + ');" >';
						displayHTML +='<img src="/imageserver/gartner/images/mypage/initiatives/arrowDots/arrowdotrightgreen.gif" border="0"></a>';
					}
					
					displayHTML +='<div class="clear"><span></span></div></div>'; //End class="bulletbuttons"
			}
			
			
			displayHTML +='<div class="clear"><span></span></div></div>'; // End railSubheadButtons 
			displayHTML +='<div class="clear"><span></span></div>';
			
			displayHTML +='<div class="railGradBG">';
			displayHTML +='<div class="floatL">';
			//displayHTML +='<img src="/imageserver/gartner/images/peerdir/head_shot.jpg" class="cast" alt="" border="0">';
			displayHTML +='<a href="' + jsonObject.peerInfo[i].userId + '" class="profileOverlayTrigger_g"><img src="' + gcomDomain + '/peerconnect/' + jsonObject.peerInfo[i].userId + '_profile.jpeg" onerror="this.src=\'' + gcomDomain + '/it/images/peerProfileDefault.jpg\';" alt="PEER IMAGE" /></a>';
			displayHTML +='</div>';
			displayHTML +='<ul class="railImgList250">'
			displayHTML +='<li class="credentials" >'
			displayHTML += jsonObject.peerInfo[i].SUMMARY_TXT;
			displayHTML +='<div class="topPad4"><span></span></div>';
						
			//displayHTML +='<a href="javascript:void(0);" onclick="javascript:showPCViewMoreLayerPage('
			//					+ returnParams[1] + ','
			//					+ jsonObject.peerInfo[i].userId + ',' 
			//					+ jsonObject.peerInfo[i].entCd + ');" class="arrowRtBold">View Profile</a>';
								
			displayHTML +='<a class="profileOverlayTrigger_g arrowRtBold" href="/' + jsonObject.peerInfo[i].userId + '">View Profile</a>';
								
			displayHTML +='&nbsp;';
			displayHTML +='<a class="profileOverlayTrigger_request" href="/' + jsonObject.peerInfo[i].userId + '" title="Gartner will contact this peer on your behalf" class="arrowRtBold">Introduce Me</a>';
			displayHTML +='</li>';
			displayHTML +='</ul>';
			displayHTML +='<div class="clear"></div>';
			displayHTML +='</div>';
				
         	displayHTML += '<div class="railSubheadButtons">';
     		displayHTML += '<p class="arrowRtBold"><a href="javascript:void(0);" onclick="javascript:goToFindAPeer();">';
 			displayHTML += 'Search Peer Connect</a></p>';
      		displayHTML += '<div class="clear"><span></span></div>';
      		displayHTML += '</div>';
         	
		 	displayHTML +='</div></div>';
        }
    }
    
    document.getElementById(returnParams[0]).innerHTML = displayHTML;  
	//document.write('<script type="text/javascript" src="/imageserver/gartner/js/jquery/connections.fn.js"></script>');
	loadjsfile("/imageserver/gartner/js/jquery/connections.fn.js") //dynamically load and add this .js file
}

function displayWfLPPeers_old(jsonObject,returnParamsStr){
	var displayHTML = '';
	var returnParams = returnParamsStr.split(","); 
	
  	if(jsonObject.peerInfo != null && jsonObject.peerInfo.length > 0){
		displayHTML += '<div class="railSubhead">';
		displayHTML += '<h4>Peers</h4>';
		//displayHTML += '<p><a href="javascript:void(0);" onclick="javascript:redirectToPF(' + returnParams[1] + ');">';
		//displayHTML += '<p><a href="/portal/server.pt?gr=cr&commName=127&referrer=wfKILandingPage">';
		//displayHTML +='<span xmlns:pt="http://www.plumtree.com/xmlschemas/ptui/"><pt:od.link pt:parentcommname="Peer Directory Community" pt:name="Peer Finder" pt:type="page" pt:cachevar="linkcache" pt:qs=""></span>'
		displayHTML += '<p><a href="'+ pfUrl + '">';
	 	displayHTML += 'Search Peer Connect</a></p>';
        displayHTML += '<div class="clear"><span></span></div>';
		displayHTML += '</div>';
	
		var length = jsonObject.peerInfo.length;
		
		for(var i = 0; i < length ; i++) {
			if (i == 0) {
				displayHTML += '<div class="info_item" id="wfLPPCcontent' + i + '" >';
			} else {
				displayHTML += '<div class="info_item" id="wfLPPCcontent' + i + '" style="display:none;">';
			}
				displayHTML +='<div class="floatL">';
					displayHTML +='<img src="/imageserver/gartner/images/peerdir/head_shot.jpg" class="cast" alt="" border="0">';
				displayHTML +='</div>';
					displayHTML +='<ul class="railImgList250">'
						displayHTML +='<li class="credentials" >'
							displayHTML += jsonObject.peerInfo[i].SUMMARY_TXT;
							displayHTML +='<div class="topPad4"><span></span></div>';
							
							displayHTML +='<a href="javascript:void(0);" onclick="javascript:showPCViewMoreLayerPage('
								+ returnParams[1] + ','
								+ jsonObject.peerInfo[i].userId + ',' 
								+ jsonObject.peerInfo[i].entCd + ');" class="arrowRtBold">View Profile</a>';
							displayHTML +='&nbsp;';
							displayHTML +='<a href="javascript:void(0);" onclick="javascript:showConnectWithPeerLayerPage('
								+ jsonObject.peerInfo[i].userId + ',' 
								+ jsonObject.peerInfo[i].entCd + ');" title="Gartner will contact this peer on your behalf" class="arrowRtBold">Introduce Me</a>';
						displayHTML +='</li>';
					displayHTML +='</ul>';
					
					if(length > 1){
						displayHTML +='<a href="javascript:void(\'0\');" onclick="javascript:wfLPShowNextPeer(' + i + ',' + length +');" > ';
						displayHTML +='<img src="/imageserver/gartner/images/orangeArrowBoxRt.gif" class="floatR " border="0">';
						displayHTML +='</a>';
					}
				
         displayHTML +='<div class="clear"></div>';
		 displayHTML +='</div>';
        }
    }
    
    document.getElementById(returnParams[0]).innerHTML = displayHTML;  
}


function loadWFLPAnalysts(){
	var functionName = "displayWfLPAnalysts";
	var returnParam = "wfLPAnalystsBucket";
	
	//Commented below code as the variables are declared in the content canvas jsps
	//var wfucxId = PTPortlet.getSessionPref("wfucxId");
	//var vendorTrackId = PTPortlet.getSessionPref("VendorTrackId"); 
	//var categoryId = PTPortlet.getSessionPref("categoryId");
	//Added catch stmts to handle emtpy conditions
	if((wfucxId == null || wfucxId == '') && (vendorTrackId == null || vendorTrackId == '')){
		wfucxId = PTPortlet.getSessionPref("wfucxId");
	}
	if(categoryId == null || categoryId == ''){
		categoryId = PTPortlet.getSessionPref("categoryId");
	}
	if(kiId == null || kiId == ''){
		kiId = PTPortlet.getSessionPref("kiId");
	}
	
	//Execute this block only for Vendors
	if(categoryId == "2"){
		if((vendorTrackId == null || vendorTrackId == '') && (wfucxId == null || wfucxId == '')){
			vendorTrackId = PTPortlet.getSessionPref("VendorTrackId");
		}
	}
	
	var researchUrl ="workflowLandingPagesAction.do?methodName=getAnalystsFromAPI&wfucxId="+wfucxId+"&category="+ categoryId + "&vendorId=" + vendorTrackId+"&kiId="+kiId;
	document.getElementById(returnParam).innerHTML = '';
	var transformedURL = gatewayUrlForAddToLibrary + researchUrl;
	GetDataWithReturnParams(transformedURL, functionName, '', returnParam);
}

function displayWfLPAnalysts(jsonObject,returnParam){
	var displayHTML = '';

  	if(jsonObject.analystInfo != null && jsonObject.analystInfo.length > 0){		
		var length = jsonObject.analystInfo.length;
		
		for(var i = 0; i < length ; i++) {
			if (i == 0) {
				displayHTML += '<div id="wfLPAnalystcontent' + i + '" >';
			} else {
				displayHTML += '<div id="wfLPAnalystcontent' + i + '" style="display:none;">';
			}
			
			displayHTML += '<div class="railSubheadButtons">';
			displayHTML += '<h4>Analysts</h4>';
			
			//show rotation icons	
			if(length > 1){
					displayHTML +='<div class="bulletbuttons">';
					if(i == 0){
						displayHTML +='<a href="javascript:void(\'0\');" onclick="javascript:wfLPShowNextAnalyst(' + i + ',' + (length-1) +',' + length + ');" ><img src="/imageserver/gartner/images/mypage/initiatives/arrowDots/arrowdotleftgreen.gif" border="0"></a>';
						displayHTML += highlighImage(i, "wfLPAnalystcontent", length);
						displayHTML +='<a href="javascript:void(\'0\');" onclick="javascript:wfLPShowNextAnalyst(' + i + ',' + (i+1) +',' + length + ');" >';
						displayHTML +='<img src="/imageserver/gartner/images/mypage/initiatives/arrowDots/arrowdotrightgreen.gif" border="0"></a>';
					} else if (i > 0 && i < (length - 1)){
						displayHTML +='<a href="javascript:void(\'0\');" onclick="javascript:wfLPShowNextAnalyst(' + i + ',' + (i-1) + ',' + length + ');" >';
						displayHTML +='<img src="/imageserver/gartner/images/mypage/initiatives/arrowDots/arrowdotleftgreen.gif" border="0"></a>';
						displayHTML += highlighImage(i, "wfLPAnalystcontent", length);
						displayHTML +='<a href="javascript:void(\'0\');" onclick="javascript:wfLPShowNextAnalyst(' + i + ',' + (i+1) +',' + length + ');" >';
						displayHTML +='<img src="/imageserver/gartner/images/mypage/initiatives/arrowDots/arrowdotrightgreen.gif" border="0"></a>';
					}else if(i == (length-1)){
						displayHTML +='<a href="javascript:void(\'0\');" onclick="javascript:wfLPShowNextAnalyst(' + i + ',' + (i-1) + ',' + length + ');" >';
						displayHTML +='<img src="/imageserver/gartner/images/mypage/initiatives/arrowDots/arrowdotleftgreen.gif" border="0"></a>';
						displayHTML +=highlighImage(i, "wfLPAnalystcontent", length);
						displayHTML +='<a href="javascript:void(\'0\');" onclick="javascript:wfLPShowNextAnalyst(' + i + ',0,' + length + ');" >';
						displayHTML +='<img src="/imageserver/gartner/images/mypage/initiatives/arrowDots/arrowdotrightgreen.gif" border="0"></a>';
					}
					
					displayHTML +='<div class="clear"><span></span></div></div>'; //End class="bulletbuttons"
			}
				
			displayHTML +='<div class="clear"><span></span></div></div>'; // End railSubheadButtons 
			displayHTML +='<div class="clear"><span></span></div>';
					
			displayHTML +='<div class="railGradBG">';
		    displayHTML += '<a href="'+ jsonObject.analystInfo[i].ANALYST_BIO_URL  + '">';
			displayHTML +='<img src="/imageserver/gcomImages/headshots/bw_62x62/' + jsonObject.analystInfo[i].ANALYST_PHOTO_URL + '" class="kiRailIcon" alt="" border="0">';
			displayHTML += '</a>';

			displayHTML +='<ul class="kiRailAnalystList">'
			displayHTML +='<li>'
			displayHTML += '<a href="' + jsonObject.analystInfo[i].ANALYST_BIO_URL + '" class="item_title">' +jsonObject.analystInfo[i].ANALYST_NAME + '</a></li>';
			displayHTML +='<li class="item_title">'
			displayHTML += jsonObject.analystInfo[i].ANALYST_TITLE;
			displayHTML +='<br/>';
			displayHTML += jsonObject.analystInfo[i].ANALYST_LOCATION;
			displayHTML +='<br/>';
			displayHTML +='Years at Gartner:' + jsonObject.analystInfo[i].ANALYST_TENURE;
			displayHTML +='</li>';
			 displayHTML +='<li class="item_pubdate">&nbsp;</li>';
			displayHTML +='<li class="" >';
			displayHTML +='<a href=' + jsonObject.analystInfo[i].ANALYST_ALERT_URL + '>Add to Alerts +</a> </li>';
			displayHTML +='</ul>';
					
    		displayHTML +='<div class="clear"><span></span></div>';
    		displayHTML +='</div>'; //End class="railGradBG"
     
     		displayHTML += '<div class="railSubheadButtons">';
     		displayHTML += '<p class="arrowRtBold"><a href="'+ analystFFURL + '">';
 			displayHTML += 'Find Analysts</a></p>';
      		displayHTML += '<div class="clear"><span></span></div>';
      		displayHTML += '</div>'; //class="railSubheadButtons"
       
 			displayHTML +='</div>';
        }
    }
    
    document.getElementById(returnParam).innerHTML = displayHTML;  
}

function highlighImage(index, componentName, length){
	var displayHTML = "";
	
	for(var i = 0; i < length ; i++) {
		if(i == index){
			displayHTML += '<img src="/imageserver/gartner/images/mypage/initiatives/arrowDots/arrowdotcentergreen.gif">';
		} else {
			displayHTML += '<a href="javascript:void(\'0\');" onclick="javascript:wfLPShowSuggestion(' + i + ',\'' + componentName + '\',' + length + ');" ><img src="/imageserver/gartner/images/mypage/initiatives/arrowDots/arrowdotcentergray.gif"></a>';
		}
	}
	
	return displayHTML;
}

function wfLPShowSuggestion(index,componentName, length) {
	for(var i = 0; i < length; i++){
		var divId = componentName + i;

		if(i == index){
			document.getElementById(divId).style.display = "block";
		}else{
			document.getElementById(divId).style.display = "none";
		}
	}
}

function loadWfKITopRead() {
	var functionName = "displayWfKILPResearchContent";
	var returnParams = new Array();
	returnParams[0] = "wfKILPTopRead";
	returnParams[1] = "wfLPTopReadViewMoreDiv";
	returnParams[2] = "wfKILPReseachHideDiv";
	returnParams[3] = "MOST READ";
	returnParams[4] = "wfLPTopReadViewLessDiv";
	returnParams[5] = "wfLPTopReadViewMoreLink";
	
	//Variable wfucxId is defined in content canvas
	if(wfucxId == null || wfucxId == ''){
		wfucxId = PTPortlet.getSessionPref("wfucxId");
	}
	
	if(kiId == null || kiId == ''){
		kiId = PTPortlet.getSessionPref("kiId");
	}

	var activityUrl ="workflowLandingPagesAction.do?methodName=loadKITopReadAsJson&wfucxId="+wfucxId+"&kiId="+kiId;
	document.getElementById(returnParams[0]).innerHTML = '';
	var transformedURL = gatewayUrlForAddToLibrary + activityUrl;
	GetDataWithReturnParams(transformedURL, functionName, '', returnParams);
}

function loadWfKIRecentActivity() {
	var functionName = "displayWfKILPRecentActivity";
	var returnParams = new Array();
	returnParams[0] = "wfKILPRecentActivity";
	returnParams[1] = "RECENT ACTIVITY FOR THIS INITIATIVE";
	returnParams[2] = "wfLPRecentActivityViewMoreDiv";
	//returnParams[3] = "wfLPRecentActivityHideDiv";
	returnParams[3] = "wfLPRecentActivityViewLessDiv";
	//returnParams[4] = "true";
	
	//Variable wfucxId is defined in content canvas
	if(wfucxId == null || wfucxId == ''){
		wfucxId = PTPortlet.getSessionPref("wfucxId");
	}
	
	if(kiId == null || kiId == ''){
		kiId = PTPortlet.getSessionPref("kiId");
	}

	var activityUrl ="workflowLandingPagesAction.do?methodName=loadKIRecentActivityAsJson&wfucxId="+wfucxId+"&kiId="+kiId;
	document.getElementById(returnParams[0]).innerHTML = '';
	var transformedURL = gatewayUrlForAddToLibrary + activityUrl;
	GetDataWithReturnParams(transformedURL, functionName, '', returnParams);
}

function displayWfKILPRecentActivity(json, returnParamsStr) {
	var displayitemHTML = '';
	var displayMoreHTML = '';
	var displayLessHTML = '';
	var displayHTML = '';
	var returnParams = returnParamsStr.split(",");
	var docsToShow = 3;
	//var dHTML = '<div id="' + returnParams[3] + '" style="display:none">';
	
	if(json.docInfo != null && json.docInfo.length > 0){
		var length = json.docInfo.length;
		
		displayHTML += '<div id="wfVendorLPManageAndTrackResearch"><div class="intvColumnOne">';
		displayHTML += '<h3>' + returnParams[1];
		displayHTML += '<a href="javascript:void(0);" onclick="javascript:getHelpHtml(\'/html/workflow/recentActivityHelp.html\', \'recentActivityHelpDiv\');">';
		displayHTML += ' <img src="/imageserver/gartner/images/mypage/initiatives/question_blue.gif"/></a>';
		displayHTML += '</h3>';
		displayHTML += '<div class="introArea_summary" id="recentActivityHelpDiv" style="display:none;"></div>';
		
		displayMoreHTML = '<div class="intv_nonexpanding_research" id="' + returnParams[3] + '" style="display:none">';
		displayLessHTML = '<div class="intv_nonexpanding_research" id="' + returnParams[2] + '">';
		
		//displayHTML += '<h5 class="listTitle"> READ RESEARCH </h5>';
				 
		for(var i=0; i < length ; i++) {
			//displayHTML += '<div class="bottomReadItem"><a href="' + json.docInfo[i].DOCBASEURL + '&resId=' + json.docInfo[i].RES_ID + '"><strong>' + json.docInfo[i].TITLE_NM + '</strong></a></div>';
			displayitemHTML = "";
	        displayitemHTML += '<div class="info_item"><div class="item_title"><a href="' + json.docInfo[i].DOCBASEURL + '&resId=' + json.docInfo[i].RES_ID + '"><strong>' + json.docInfo[i].TITLE_NM + '</strong></a></div></div>';
			
			//if (i == (docsToShow - 1)) {
			//	displayHTML += dHTML;
			//}
			
			if (i < (docsToShow)) {
				displayLessHTML += displayitemHTML ;
			}
	        	
			displayMoreHTML += displayitemHTML ;
		}
		
		if (length > docsToShow) {
	       	//displayHTML += '</div> <!-- end wfLPRecentActivityHideDiv -->';
	       	displayLessHTML += '<div class="endTopic">';
			displayLessHTML += '<p><a href="javascript:void(0);" onclick="javascript:wfKILPResearchViewMore(\'' +  returnParams[2] + '\',\''+ returnParams[3] + '\');">View More</a></p>';
			displayLessHTML += '</div>';
			displayLessHTML += '</div> <!--  end wfLPRecentActivityViewMoreDiv -->';
	       		
	       	displayMoreHTML += '<div class="endTopic">';
			displayMoreHTML += '<p><a href="javascript:void(0);" onclick="javascript:wfKILPResearchViewMore(\'' +  returnParams[3] + '\',\''+ returnParams[2] + '\');">View Less</a></p>';
			displayMoreHTML += '</div>';
			displayMoreHTML += '</div> <!--  end wfLPRecentActivityViewLessDiv -->';
	       		
	       	displayHTML += displayLessHTML + displayMoreHTML + '</div></div>';
	    } else {
	      	displayHTML += displayLessHTML + '</div></div>';
	    }
	     //  displayHTML += '</div>';
		
		//if (length > docsToShow) {
		//	displayHTML += '</div> <!-- end wfLPRecentActivityHideDiv -->';
		//	displayHTML += '<div class="bottomReadItem" id="' + returnParams[2] + '">';
		//	displayHTML += '<div class="org_arrow">';
		//	displayHTML += '<p><a href="javascript:void(0);" onclick="javascript:wfKILPResearchViewMore(\'' +  returnParams[2] + '\',\''+ returnParams[3] + '\');">View More</a></p>';
		//	displayHTML += '</div>';
		//	displayHTML += '</div> <!--  end wfLPRecentActivityViewMoreDiv -->';
		//}  	
		
		//displayHTML += '</div> <!-- end intv_research_wrapper bottomRead div -->';
	}
	
	document.getElementById(returnParams[0]).innerHTML = displayHTML;
}

// Java script functions for expand/collapse of item divs slowly.

var timeToSlide = 600.0;
var waitTime = 0;

function expandItemDiv(expandDivId, collapseDivId, contentHeight,  contentDivId) {
	//var contentDivId = "docExpanded" + index + "Content";
	document.getElementById(expandDivId).style.display = "";
    document.getElementById(collapseDivId).style.display = "none"; 
	setTimeout("expandAnimate(" + new Date().getTime() + "," + timeToSlide + ",'"
      + contentDivId + "'," + contentHeight + ")", waitTime);
}

function expandAnimate(lastTick, timeLeft, divId, contentHeight) {  
  var curTick = new Date().getTime();
  var elapsedTicks = curTick - lastTick;
  var div = document.getElementById(divId);
 
  if(timeLeft <= elapsedTicks) {
  	div.style.height = 'auto';//contentHeight + 'px';
  	return;
  }
 
  timeLeft -= elapsedTicks;
  var newClosedHeight = Math.round((timeLeft/timeToSlide) * contentHeight);

  if(div.style.display != 'block')
      div.style.display = 'block';
  div.style.height = (contentHeight - newClosedHeight) + 'px';
  div.style.overflow = 'hidden';
  
  setTimeout("expandAnimate(" + curTick + "," + timeLeft + ",'" + divId + "'," + contentHeight + ")", waitTime);
}

function collapseItemDiv(expandDivId, collapseDivId, contentHeight, contentDivId) {
	//var contentDivId = "docExpanded" + index + "Content";
	document.getElementById(expandDivId).style.display = "none";
    document.getElementById(collapseDivId).style.display = ""; 
    setTimeout("collapseAnimate(" + new Date().getTime() + "," + timeToSlide + ",'" + contentDivId + "'," + contentHeight + ")", waitTime);
}

function collapseExpandItemDiv(expandDivId, collapseDivId, contentHeight, contentDivId, isCollapsed) {
	//var contentDivId = "docExpanded" + index + "Content";
	//if(isCollpased == "true"){
	//	document.getElementById(expandDivId).style.display = "none";
	//	document.getElementById(collapseDivId).style.display = "";
	//} else {
		document.getElementById(expandDivId).style.display = "";
		document.getElementById(collapseDivId).style.display = "";
	//}
    setTimeout("collapseAnimate(" + new Date().getTime() + "," + timeToSlide + ",'" + contentDivId + "'," + contentHeight + ")", waitTime);
}

function collapseAnimate(lastTick, timeLeft, divId, contentHeight) {  
  var curTick = new Date().getTime();
  var elapsedTicks = curTick - lastTick;
  var div = document.getElementById(divId);
  
  if(timeLeft <= elapsedTicks) {
      div.style.display = 'none';
      return;
  }
 
  timeLeft -= elapsedTicks;
  var newClosedHeight = Math.round((timeLeft/timeToSlide) * contentHeight);
  div.style.height = newClosedHeight + 'px';
  div.style.overflow = 'hidden';
  
  setTimeout("collapseAnimate(" + curTick + "," + timeLeft + ",'" + divId + "'," + contentHeight + ")", waitTime);
}

// Java script functions for expand/collapse of item divs slowly.
var timeToSlideH = 600.0;
var waitTimeH = 0;
var contentWidth = 150;

function wfLPShowNextWebinar(index, nextIndex, length) {
	document.getElementById("wfLPWBcontent" + index).style.display = "none";
	var contentDivId = "wfLPWBcontent" + nextIndex;
	
	var div = document.getElementById(contentDivId);
	if(div.style.display != 'block')
      div.style.display = 'block';
}

function wfLPShowNextPeer(index,nextIndex, length) {
	document.getElementById("wfLPPCcontent" + index).style.display = "none";
	var contentDivId = "wfLPPCcontent" + nextIndex;
	
	//To be removed when expandAnimateH is used
	var div = document.getElementById(contentDivId);
	if(div.style.display != 'block')
      div.style.display = 'block';
}

function wfLPShowNextPeer_test(index,length) {
	document.getElementById("wfLPPCcontent" + index).style.display = "none";
	var contentDivId = "wfLPPCcontent" + ((index+1) % length);
	
	//To be removed when expandAnimateH is used
	var div = document.getElementById(contentDivId);
	if(div.style.display != 'block')
      div.style.display = 'block';
	  
	//setTimeout("expandAnimateH(" + new Date().getTime() + "," + timeToSlideH + ",'"
    //  + contentDivId + "'," + contentWidth + ")", waitTimeH);

}
function wfLPShowNextAnalyst(index,nextIndex, length) {
	document.getElementById("wfLPAnalystcontent" + index).style.display = "none";
	var contentDivId = "wfLPAnalystcontent" + nextIndex;

	//To be removed when expandAnimateH is used
	var div = document.getElementById(contentDivId);
	if(div.style.display != 'block')
      div.style.display = 'block';
}

function expandAnimateH(lastTick, timeLeft, divId, contentWidth) {
  var curTick = new Date().getTime();
  var elapsedTicks = curTick - lastTick;
  var div = document.getElementById(divId);
 
  if(timeLeft <= elapsedTicks) {
  	div.style.width = 'auto';
    return;
  }
 
  timeLeft -= elapsedTicks;
  var newClosedWidth = Math.round((timeLeft/timeToSlideH) * contentWidth);

  if(div.style.display != 'block')
      div.style.display = 'block';
  div.style.width = (contentWidth - newClosedWidth) + 'px';
  div.style.overflow = 'hidden';
  
  setTimeout("javascript:expandAnimateH(" + curTick + "," + timeLeft + ",'" + divId + "'," + contentWidth + ")", waitTimeH);
}

function getVideoHTML(urlValue) {
		var ajaxUrl = gatewayUrlForAddToLibrary + 'workflowLandingPagesAction.do?methodName=getVideoHTML&urlValue='+ urlValue;
		var contentRequest = new PTHTTPGETRequest(ajaxUrl, document.getElementById('globalLayerDiv'));
		contentRequest.invoke();
		return false;
}

function getHelpHtml(url, helpDivId) {
	GetDataAndReplaceHTMLWithParams(url, 'helpCallback', '', helpDivId, helpDivId);
}

// Callback method for the do help ajax call. 
function helpCallback(divId) {
	dojo.byId(divId).style.display = '';
}

function loadWfVendorLPRecentActivityResearch() {
	var functionName = "displayWfVendorLPRecentActivity";
	
	var returnParams = new Array();
	returnParams[0] = "wfKILPRecentActivity";
	returnParams[1] = "RECENTLY VIEWED DOCUMENTS FOR THIS VENDOR";
	returnParams[2] = "wfLPRecentActivityViewMoreDiv";
	returnParams[3] = "wfLPRecentActivityHideDiv";
	
	//Commented below code as the variables are declared in content canvas:wfVendorDetails.jsp
	//var wfucxId = PTPortlet.getSessionPref("wfucxId");
	//var vendorTrackId = PTPortlet.getSessionPref("VendorTrackId");
	
	//Added catch stmts to handle emtpy conditions
	if ((wfucxId == null || wfucxId == '') && (vendorTrackId == null || vendorTrackId == '')) {
		wfucxId = PTPortlet.getSessionPref("wfucxId");
	}
	
	if ((vendorTrackId == null || vendorTrackId == '') && (wfucxId == null || wfucxId == '')) {
		vendorTrackId = PTPortlet.getSessionPref("VendorTrackId");
	}
	
	var activityUrl = "workflowLandingPagesAction.do?methodName=loadWfVendorRecentActivityAsJson&wfucxId="+wfucxId+"&vendorId="+vendorTrackId;
			
	document.getElementById(returnParams[0]).innerHTML = '';
			
	var transformedURL = gatewayUrlForAddToLibrary + activityUrl;
			
	GetDataWithReturnParams(transformedURL, functionName, '', returnParams);
}

function displayWfVendorLPRecentActivity(json, returnParamsStr) {
	var displayHTML = '';
	var returnParams = returnParamsStr.split(",");
	var docsToShow = 5;
	var dHTML = '<div id="' + returnParams[3] + '" style="display:none">';
	
	if(json.docInfo != null && json.docInfo.length > 0){
		var length = json.docInfo.length;
		
		displayHTML += '<div class="intv_research_wrapper bottomRead">';
		displayHTML += '<h4 class="intro_1Title">' + returnParams[1];
		displayHTML += '<a href="javascript:void(0);" onclick="javascript:getHelpHtml(\'/html/workflow/recentActivityHelp.html\', \'recentActivityHelpDiv\');">';
		displayHTML += ' <img src="/imageserver/gartner/images/mypage/initiatives/question_blue.gif"/></a>';
		displayHTML += '</h4>';
		displayHTML += '<div class="introArea_summary" id="recentActivityHelpDiv" style="display:none;"></div>';
		//displayHTML += '<h5 class="listTitle"> READ RESEARCH </h5>';
				 
		for(var i=0; i < length ; i++) {
			displayHTML += '<div class="bottomReadItem"><a href="' + json.docInfo[i].DOCBASEURL + '&resId=' + json.docInfo[i].RES_ID + '"><strong>' + json.docInfo[i].TITLE_NM + '</strong></a></div>';
			
			if (i == (docsToShow - 1)) {
				displayHTML += dHTML;
			}
		}
		
		if (length > docsToShow) {
			displayHTML += '</div> <!-- end wfLPRecentActivityHideDiv -->';
			displayHTML += '<div class="bottomReadItem" id="' + returnParams[2] + '">';
			displayHTML += '<div class="org_arrow">';
			displayHTML += '<p><a href="javascript:void(0);" onclick="javascript:wfKILPResearchViewMore(\'' +  returnParams[2] + '\',\''+ returnParams[3] + '\');">View More</a></p>';
			displayHTML += '</div>';
			displayHTML += '</div> <!--  end wfLPRecentActivityViewMoreDiv -->';
		}  	
		
		displayHTML += '</div> <!-- end intv_research_wrapper bottomRead div -->';
	}
	
	document.getElementById(returnParams[0]).innerHTML = displayHTML;
}


//Message to prevent full document access during an impersonation session
function preventDocAccessForMeteredProducts(){
	alert("As a proxy user you are not permitted to access documents the user has not yet consumed.");
	return false;
}



//Message to prevent purchase of document during an impersonation session
function preventDocAccessForPurchase(){
	alert("As a proxy user you are not permitted to purchase documents.");
	return false;
}

//Workflow KI Comments
function hideWFKICommentsDiv(divId) {	
	document.getElementById(divId).style.display = 'none';
	
	return false;
}
	
function showWFKICommentsDiv(divId, numOfDiv) {
	alert("numOfDiv = " + numOfDiv);
	for(var i = numOfDiv; i > 0; i--){
		var id = "summary_" + i;
		document.getElementById(id).style.display = 'none';
	}
	
	document.getElementById(divId).style.display = 'block';
	
	return false;
}

//Workflow KI Comments
function hideWFKICommentsDiv(divId) {
	document.getElementById(divId).style.display = 'none';
	
	return false;
}
	
function showWFKICommentsDiv(divId, numOfDiv) {
	for(var i = numOfDiv; i > 0; i--){
		var tempId = "summary_" + i;
		document.getElementById(tempId).style.display = 'none';
	}
	document.getElementById(divId).style.display = 'block';
	
	return false;
}

//Checks for country selection on ContactInformation.jsp & RegistrationPage.jsp
function checkForCountrySelection(selectionValue, usStateDropDown, provinceOutsideUSBox, clearProvinceTextBox) {
	if (selectionValue == "US") {
		usStateDropDown.disabled = false;
		provinceOutsideUSBox.value = "---Not Applicable---";
		provinceOutsideUSBox.disabled = true;
	} else {
		usStateDropDown.value = "";
		usStateDropDown.disabled = true;
		provinceOutsideUSBox.disabled = false;
		if (clearProvinceTextBox) {
			provinceOutsideUSBox.value = "";
		}	
	}
	return false;
}

function getLevelList(functionCode, functionObject, levelObject, roleObject, adminLite) {	
	//This function is called when the 'job function' dropdown selection has changed.

	//Remove all the options in the role dropdown and disable the dropdown
	for (var i=(roleObject.options.length - 1); i>=0; i--) { 
		roleObject.options[i] = null; 
	}
	roleObject.options[0] = new Option("---Please select a Level---", "");
	//roleObject.disabled = true;
	//roleObject.readOnly = true;
	
	if (functionObject.options[functionObject.selectedIndex].value == "") {
		for (var i=(levelObject.options.length - 1); i>=0; i--) { 
			levelObject.options[i] = null; 
		}
		levelObject.options[0] = new Option("---Please select a Function---", "");
		//levelObject.disabled = true;
		//levelObject.readOnly = true;
		return false;
	}	
	
	//levelObject.disabled = true;
	//levelObject.readOnly = true;

	//var postUrl = "http://" + "<%=portalDomain%>" + 
	//					"/gp/ajaxCall/AjaxCallServlet?task=levelList&functionCode=" 
	//					+ functionCode;
	
	//use gatewayUrlForAddToLibrary for AJAX calls
	var postUrl = gatewayUrlForAddToLibrary 
				+ "ajaxCall/AjaxCallServlet?task=levelList&functionCode=" 
				+ functionCode ;
				
	if(adminLite != 'true')
	 postUrl += "&sslenabled=y"; 
	
	var levelListRequest = new PTHTTPGETRequest(postUrl, updateLevelList);
	levelListRequest.invoke();
}


function getRoleList(functionCode, levelCode, levelObject, roleObject, adminLite) {	
	//This function is called when the 'job level' dropdown selection has changed.
	
	//Check if the user has de-selected level. If yes then reset the role drop down.
	if (levelObject.options[levelObject.selectedIndex].value == "") {
		for (var i=(roleObject.options.length - 1); i>=0; i--) { 
			roleObject.options[i] = null; 
		}
		roleObject.options[0] = new Option("---Please select a Level---", "");
		//roleObject.disabled = true;
		//roleObject.readOnly = true;
		return false;
	}
	//roleObject.disabled = true;
	//roleObject.readOnly = true;
	
	//var postUrl = "http://" + "<%=portalDomain%>" + 
	//			"/gp/ajaxCall/AjaxCallServlet?task=roleList&functionCode=" 
	//					+ functionCode + "&levelCode=" + levelCode;
	
	//use gatewayUrlForAddToLibrary for AJAX calls
	var postUrl = gatewayUrlForAddToLibrary  
				+ "ajaxCall/AjaxCallServlet?task=roleList&functionCode=" 
				+ functionCode + "&levelCode=" + levelCode ;
	
	if(adminLite != 'true')
	 postUrl += "&sslenabled=y"; 
			//	+ "&sslenabled=y"; 		
	
	var levelListRequest = new PTHTTPGETRequest(postUrl, updateRoleList);
	levelListRequest.invoke();
}
	
function displayScTop25LPResearch(jsonObject,returnParamsStr){
  	var displayHTML = '';
  	var cntToShow = 5;
	var returnParams = returnParamsStr.split(",");
  	var dHTML = '<div id="' + returnParams[2] + '" style="display:none">';
  	
    if (jsonObject.results != null && jsonObject.results.length > 0){
		displayHTML += '<div class="intvColumnOne">';		
		displayHTML += '<h3>' + returnParams[3] + '</h3>';
		displayHTML += '<div class="intv_research_wrapper">';
		var length = jsonObject.results.length;
		
		for (var i=0; i < length ; i++) {
        	var divId = returnParams[0] + i;
        	var expandedDivId = 'expanded_' + divId;
        	var collapsedDivId = 'collapsed_' + divId;
			var docExpandContentId = 'docExpanded' + divId;
        	
          	displayHTML += '<div id=' + expandedDivId + ' style="display:none;" >';
          	displayHTML += '<a href="javascript:void(0);" onclick="javascript:collapseItemDiv(\'' + expandedDivId + '\',\'' + collapsedDivId + '\',' + contentHeight + ',\'' + docExpandContentId + '\');return false;" >';
	  		displayHTML += '<img src="/imageserver/gartner/images/invest/collapse_minus.gif" border="0" class="floatL buttonPad" /></a>';
	  		displayHTML += '</div>';
	  		
	  		displayHTML += '<div id=' + collapsedDivId + '>';
	  	   	displayHTML += '<a href="javascript:void(0);" onclick="javascript:expandItemDiv(\'' + expandedDivId + '\',\'' + collapsedDivId + '\',' + contentHeight + ',\'' + docExpandContentId + '\');return false;" >';
	  		displayHTML += '<img src="/imageserver/gartner/images/invest/collapse_plus.gif" border="0" class="floatL buttonPad" /></a>';
	  		displayHTML += '</div>';
	  			
	  		displayHTML += '<div class="info_item" >';
	  		displayHTML += '<div class="floatL">';
	  		
	  		displayHTML += '<div><a href="' + jsonObject.results[i].DOCBASEURL + '&resId=' + jsonObject.results[i].RES_ID + '"><strong>' + jsonObject.results[i].TITLE_NM + '</strong></a>';
            displayHTML += '</div>';
            displayHTML += '<div class="item_pubdate">';
            displayHTML += generateAddToLibraryURL(jsonObject.results[i].RES_ID) ;
            displayHTML += ' | Published: ' + jsonObject.results[i].DISPLAY_DT;
		    displayHTML += '</div>'; // End div for class='item_pubdate'
           
            displayHTML += '<div id="' + docExpandContentId  + '" style="display:none;">';
            displayHTML += '<div class="item_analystInfo">' + jsonObject.results[i].AUTHORS + '</div>';
		    displayHTML += '<div class="item_description">' + jsonObject.results[i].SUMMARY_TXT + '</div>';
		    displayHTML += '</div>'; // End div for class='docExpandedContent'
		    
		    displayHTML += '</div>'; // End div for class='floatL' 
            displayHTML += '</div>'; // End div for class='info_item'
            displayHTML += '<div class="clear"></div>';
			
			if (i == (cntToShow -1)) {
				displayHTML += dHTML;
			}
       }
       if (length > cntToShow) {
       		displayHTML += '</div><div class="endTopic" id="' + returnParams[1] + '">';
       		displayHTML += '<p><a href="javascript:void(0);" onclick="javascript:wfKILPResearchViewMore(\'' +  returnParams[1] + '\',\''+ returnParams[2] + '\');">View More</a></p></div>';
       } else {
       		displayHTML += '<div class="endTopic"></div>';
       }
		displayHTML += '</div>'; //end of div class=intv_research_wrapper		
		displayHTML += '</div>'; //end of div class= intvColumnOne
	}
    
    document.getElementById(returnParams[0]).innerHTML = displayHTML;  
}

function loadCompanyResearch() {
	var returnParams = new Array();
	returnParams[0]	= "scTop25LPCompanyResearch";
	returnParams[1] = "scTop25CompResViewMoreDiv";
	returnParams[2] = "scTop25CompResHideDiv";
	returnParams[3] = "TOP 25 COMPANY RESEARCH";
	
	var researchUrl ="amrLandingPagesAction.do?method=loadAMRTop25CompanyResearch";
	var transformedURL = gatewayUrlForAddToLibrary + researchUrl;
	GetDataWithReturnParams(transformedURL, 'displayScTop25LPResearch', '', returnParams);
}

function loadIndustryCuts() {
	var returnParams = new Array();
	returnParams[0]	= "scTop25LPIndustryCuts";
	returnParams[1] = "scTop25IndCutsViewMoreDiv";
	returnParams[2] = "scTop25IndCutsHideDiv";
	returnParams[3] = "TOP 25 PERSPECTIVES";
	
	var researchUrl ="amrLandingPagesAction.do?method=loadAMRTop25LPResearch&ruleName=AMRTop25IndustryCuts";
	var transformedURL = gatewayUrlForAddToLibrary + researchUrl;
	GetDataWithReturnParams(transformedURL, 'displayScTop25LPResearch', '', returnParams);
}


function loadResearchOfInterest() {
	var returnParams = new Array();
	returnParams[0]	= "scTop25LPResOfInterest";
	returnParams[1] = "scTop25ResOfIntViewMoreDiv";
	returnParams[2] = "scTop25ResOfIntHideDiv";
	returnParams[3] = "RESEARCH OF INTEREST";
	
	var researchUrl ="amrLandingPagesAction.do?method=loadAMRTop25ResearchOfInterest";
	var transformedURL = gatewayUrlForAddToLibrary + researchUrl;
	GetDataWithReturnParams(transformedURL, 'displayScTop25LPResearch', '', returnParams);
}

function hideCommentsDiv(divId) {
	document.getElementById(divId).style.display = 'none';
	return false;
}

function showCommentsDiv(divId) {
	document.getElementById(divId).style.display = 'block';
	return false;
}



//START --- JavaScript support funtions for HTTP MYPage Dashboard page

function loadFocusCompanyResearch(focusCompany) {


	var functionName = "displayFocusCompanyResearchContent";
	var focusCompanyLocal = "Recent Research About " + focusCompany;
	
	//alert(focusCompanyLocal);
	
	var returnParams = new Array();
	returnParams[0]	= "focusCompanyResearchContent";
	returnParams[1] = "FCRViewMoreDiv";
	returnParams[2] = "FCRHideDiv";
	returnParams[3] = focusCompanyLocal;

	
	var forecastsUrl = "showMyPageDashboardContent.do?method=getFocusCompanyResearchAsJson";
	

	var transformedURL = gatewayUrlForAddToLibrary + forecastsUrl;
	

	document.getElementById(returnParams[0]).innerHTML = "<img src='/imageserver/gartner/images/loading_images/loading_small.gif' border='0' alt = 'Loading...'/>";

	
	GetDataWithReturnParams(transformedURL, functionName, '', returnParams);

}


function loadPeersCompanyResearch() {

	var functionName = "displayFocusCompanyResearchContent";
	var returnParams = new Array();
	returnParams[0]	= "peerCompaniesResearchContent";
	returnParams[1] = "PRViewMoreDiv";
	returnParams[2] = "PRHideDiv";
	returnParams[3] = "Recent Research About Peers";

	
	var forecastsUrl = "showMyPageDashboardContent.do?method=getPeerCompaniesResearchAsJson";
	
	

	var transformedURL = gatewayUrlForAddToLibrary + forecastsUrl;
	

	document.getElementById(returnParams[0]).innerHTML = "<img src='/imageserver/gartner/images/loading_images/loading_small.gif' border='0' alt = 'Loading...'/>";

	
	GetDataWithReturnParams(transformedURL, functionName, '', returnParams);

}



function displayFocusCompanyResearchContent(jsonObject,returnParamsStr){


  	var displayHTML = '';

  	var cntToShow = 5;

	var returnParams = returnParamsStr.split(",");

  	var dHTML = '<div id="' + returnParams[2] + '" style="display:none">';

  	if(jsonObject.researchItems != null && jsonObject.researchItems.length > 0){


		displayHTML += '<strong>' + returnParams[3] + '</strong>';


	

        var length = jsonObject.researchItems.length;

		for(var i=0; i < length ; i++) {

        	var divId = returnParams[0] + i;

        	var expandedDivId = 'expanded_' + divId;

        	var collapsedDivId = 'collapsed_' + divId;

			var docExpandContentId = 'docExpanded' + divId;

        	
				displayHTML += '<div class="listwrap">';
          	displayHTML += '<div id=' + expandedDivId + ' style="display:none;" >';

          	displayHTML += '<a href="javascript:void(0);" onclick="javascript:collapseItemDiv(\'' + expandedDivId + '\',\'' + collapsedDivId + '\',' + contentHeight + ',\'' + docExpandContentId + '\');return false;" >';

	  				displayHTML += '<img src="/imageserver/gartner/images/invest/collapse_minus.gif" border="0" class="floatL buttonPad" /></a>';

	  				displayHTML += '</div>';

	  		

	  				displayHTML += '<div id=' + collapsedDivId + '>';

	  	   		displayHTML += '<a href="javascript:void(0);" onclick="javascript:expandItemDiv(\'' + expandedDivId + '\',\'' + collapsedDivId + '\',' + contentHeight + ',\'' + docExpandContentId + '\');return false;" >';

	  				displayHTML += '<img src="/imageserver/gartner/images/invest/collapse_plus.gif" border="0" class="floatL buttonPad" /></a>';

	  				displayHTML += '</div>';

	  			

	  		displayHTML += '<div class="info_item" >';

	  		displayHTML += '<div class="floatL">';

	  		displayHTML += '<div><a href="' + jsDocDisplayBaseUrl + '&resId=' + jsonObject.researchItems[i].RES_ID + '"><strong>' + jsonObject.researchItems[i].TITLE_NM + '</strong></a>';

            displayHTML += '</div>';

            displayHTML += '<div class="item_pubdate">';

            displayHTML += generateAddToLibraryURL(jsonObject.researchItems[i].RES_ID) ;

            displayHTML += ' | Published: ' + jsonObject.researchItems[i].DISPLAY_DT;

		    displayHTML += '</div>';

           

            displayHTML += '<div id="' + docExpandContentId  + '" style="display:none;">';

            displayHTML += '<div class="item_analystInfo">' + jsonObject.researchItems[i].AUTHORS + '</div>';

		    displayHTML += '<div class="item_description">' + jsonObject.researchItems[i].SUMMARY_TXT + '</div>';

		    displayHTML += '</div></div>'; // End div for class='docExpandedContent'

            displayHTML += '</div>'; // End div for class='info_item'

            	

			displayHTML += '<div class="clear"></div>';
			displayHTML += '</div>'; //End div for class="listwrap"

			

            if (i == (cntToShow -1)) {

				displayHTML += dHTML;

			}

            

       }

       if (length > cntToShow) {

       		displayHTML += '</div><div class="endTopic" id="' + returnParams[1] + '">';

       		displayHTML += '<p><span class="arrow"><a href="javascript:void(0);" onclick="javascript:myPageDashboardResearchViewMore(\'' +  returnParams[1] + '\',\''+ returnParams[2] + '\');">View More</a></span></p></div>';

       } else {

       		displayHTML += '<div class="endTopic"></div>';

       }
	

    }

    

    document.getElementById(returnParams[0]).innerHTML = displayHTML;  

}






function myPageDashboardResearchViewMore(showDivId, hideDivId) {

	document.getElementById(hideDivId).style.display = "";

	document.getElementById(showDivId).style.display = "none";

}

function saveARPeerGroupPrefsOptionsCopy() {

	//Main method to save values in AR Peer Group preference page.


	var saveUrl = "showMyPageDashboardContent.do?method=saveARPeerGroupPrefsOptions";

	var transformedURL = gatewayUrlForAddToLibrary + saveUrl;

	var formID = "myWatchListFormID";



	if(document.myWatchListForm.watchListTA.length == 0){

		alert("Please add at least one company");

		return false;

	}



	if(document.myWatchListForm.watchListTA.length > 10){

		alert("You can track only up to 10 companies");

		return false;

	}





	for(i=0;i < document.myWatchListForm.watchListTA.length; i++) {

		document.myWatchListForm.watchListTA.options[i].selected = true;

	}



	var selectedTechArea = "";

	if(document.myWatchListForm.primarytecharea.length){

		for(var cnt=0;cnt<document.myWatchListForm.primarytecharea.length;cnt++){

			if(document.myWatchListForm.primarytecharea[cnt].checked == true){

				if(selectedTechArea == "" || selectedTechArea == null){

					selectedTechArea = document.myWatchListForm.primarytecharea[cnt].value;

				}else{

					selectedTechArea = selectedTechArea + "|" + document.myWatchListForm.primarytecharea[cnt].value;

				}

			}

		}

	}else{

		if(document.myWatchListForm.primarytecharea.checked == true){

			if(selectedTechArea == "" || selectedTechArea == null){

				selectedTechArea = document.myWatchListForm.primarytecharea.value;

			}else{

				selectedTechArea = selectedTechArea + "|" + document.myWatchListForm.primarytecharea.value;

			}

		}

	}



	if(selectedTechArea == "" || selectedTechArea == null) {

		alert("You have not selected any Technology Area.");

		return false;

	}else{

		document.myWatchListForm.selectedTechArea.value = selectedTechArea;

	}

	if (document.myWatchListForm.compNm) {

		if (document.myWatchListForm.compNm.value=="") {

			alert("Please enter a non Empty Company Name");

			return false;

		}

		if (document.myWatchListForm.hiddenCompCd.value == "") {

			alert("Please enter a Valid Company Name");

			return false;

		}

	}



	GetDataAsHTML(transformedURL, 'saveARPeerGroupPrefsOptionsConfirmationCopy', formID);

}



function saveARPeerGroupPrefsOptionsConfirmationCopy(returnHTML) {

	var returnValNumeric = returnHTML;

	var returnVal = new String(returnValNumeric);





	// At this stage, make an AJAX call to update the result in underlying(main) layer

	var refreshURL = gatewayUrlForAddToLibrary + "showMyPageDashboardContent.do?method=initializeARDashboard&forward=showARDashboard";

	var functionName = "refreshARPeerGroupConfirmCopy";

	GetDataAndReplaceHTML(refreshURL, functionName, '', "fltLyrID");



	document.getElementById('fltLyrID').style.display  = '';

   	document.myWatchListForm.entNm.value = "";



	// Also clear the watchlist

	for(var i=document.myWatchListForm.watchListTA.length -1; i >= 0;i--) {

		document.myWatchListForm.watchListTA.options[i] = null;

	}



	for(var cnt=0;cnt<document.myWatchListForm.primarytecharea.length;cnt++){

	  document.myWatchListForm.primarytecharea[cnt].checked = false;

   	}



   	document.myWatchListForm.selectedTechArea.value = "";



	//hidePeerGroupEditDiv('editLayerDiv');
	hideGlobalLayer('globalLayerDiv', formNamesWithSelectBoxesInLayer);
	
	showAllSelectBoxes();

	showAllTextBoxes();


}



function refreshARPeerGroupConfirmCopy() {

var showSavedCompUrl = "showMyPageDashboardContent.do?method=getSavedCompanyDetails";
var transformedURL = gatewayUrlForAddToLibrary  + showSavedCompUrl;
var formID = "blank";
var functionName = "reloadResearchPortlets";



	GetData(transformedURL, functionName, formID);

}


function reloadResearchPortlets(compDetailsJSONObject) {


//alert('other portlet refreshing......');
loadFocusCompanyResearch(compDetailsJSONObject.companyDetails[0].enterprise_name);
loadPeersCompanyResearch();

}



function showSavedPeerGroupCompaniesCopy() {

	// Get the company list being watched in this portfolio

	var showSavedCompUrl = "showMyPageDashboardContent.do?method=getSavedPeerGroupCompanies";

	var transformedURL = gatewayUrlForAddToLibrary + showSavedCompUrl;

	var formID = "myWatchListFormID";

	var functionName = "generateSavedPeerGroupCompOptionsCopy";



	GetData(transformedURL, functionName, formID);

}



function generateSavedPeerGroupCompOptionsCopy(watchListJSONObject) {

	for(var i=document.myWatchListForm.watchListTA.length -1; i >= 0;i--) {

		document.myWatchListForm.watchListTA.options[i] = null;

	}

	for(var i=0; i < watchListJSONObject.watchList.length; i++) {

  		document.myWatchListForm.watchListTA.options[document.myWatchListForm.watchListTA.length] = new Option(watchListJSONObject.watchList[i].enterprise_nm,watchListJSONObject.watchList[i].pref_value);

  	}

  	document.getElementById("entNmID").value = "";

}





function showSavedTechAreaListCopy() {

	// Get the company list being watched in this portfolio

	var showSavedTechAreaUrl = "showMyPageDashboardContent.do?method=getSavedTechAreaList";

	var transformedURL = gatewayUrlForAddToLibrary + showSavedTechAreaUrl;

	var formID = "myWatchListFormID";

	var functionName = "generateSavedTechAreaOptionsCopy";



	GetData(transformedURL, functionName, formID);

}



function generateSavedTechAreaOptionsCopy(techAreasJSONObject) {

	for(var cnt=0;cnt<document.myWatchListForm.primarytecharea.length;cnt++){

	  document.myWatchListForm.primarytecharea[cnt].checked = false;

   	}





   	for(var cnt=0;cnt<document.myWatchListForm.primarytecharea.length;cnt++){

		var cbValue = document.myWatchListForm.primarytecharea[cnt].value;

		for(var i=0; i < techAreasJSONObject.techAreaList.length; i++){

			if(techAreasJSONObject.techAreaList[i].techAreaNodeId == cbValue) {

			    document.myWatchListForm.primarytecharea[cnt].checked = true;

			    break;

			}

		}

	}

}

function showSavedCompDetailsCopy() {

	var showSavedCompUrl = "showMyPageDashboardContent.do?method=getSavedCompanyDetails";

	var transformedURL = gatewayUrlForAddToLibrary  + showSavedCompUrl;

	var formID = "myWatchListFormID";

	var functionName = "showCompanyDetailsCopy";



	GetData(transformedURL, functionName, formID);

}



function showCompanyDetailsCopy(compDetailsJSONObject) {

	document.myWatchListForm.compNm.value = compDetailsJSONObject.companyDetails[0].enterprise_name;

	document.myWatchListForm.hiddenCompName.value = compDetailsJSONObject.companyDetails[0].enterprise_name;

	document.myWatchListForm.hiddenCompCd.value = compDetailsJSONObject.companyDetails[0].enterprise_cd;

}


function restoreToMyCompanyCopy() {



	document.getElementById('restoreButton').style.display = 'none';

	document.getElementById('processingImage').style.display = '';

	var restoreCompanyUrl = "showMyPageDashboardContent.do?method=restoreCompanyDetails";

	var transformedURL = gatewayUrlForAddToLibrary  + restoreCompanyUrl;

	var formID = "myWatchListFormID";

	var functionName = "processRestoreCompanyCopy";



	GetData(transformedURL, functionName, formID);

}



function processRestoreCompanyCopy(compDetailsJSONObject) {

	if (compDetailsJSONObject.companyDetails[0].error == null) {
	


		showCompanyDetailsCopy(compDetailsJSONObject);

	} else

		alert("This functionality is temporarily unavailable. Please try again later.");

	document.getElementById('restoreButton').style.display = '';

	document.getElementById('processingImage').style.display = 'none';

}

//END --- JavaScript support funtions for HTTP MYPage Dashboard page

//START --- JavaScript support funtions for HTTP MYGartner Product view pages

function loadGBLProductContent(tabId, prefViewId) {
	if(tabId == 1){	    
		document.getElementById('bucket1').innerHTML = "<img src='/imageserver/gartner/images/loading_images/loading_small.gif' border='0' alt ='Loading...'/>";
		document.getElementById('bucket2').innerHTML = "<img src='/imageserver/gartner/images/loading_images/loading_small.gif' border='0' alt ='Loading...'/>";
		document.getElementById('bucket3').innerHTML = "<img src='/imageserver/gartner/images/loading_images/loading_small.gif' border='0' alt ='Loading...'/>";
		document.getElementById('bucket4').innerHTML = "<img src='/imageserver/gartner/images/loading_images/loading_small.gif' border='0' alt ='Loading...'/>";

		loadGBLProductContentHelper(prefViewId, '1','9214', 'Understanding your Customers');
		loadGBLProductContentHelper(prefViewId, '2','9215','Monitor Customer Trends');
		loadGBLProductContentHelper(prefViewId, '3','9216','Understanding Customer Requirements');
		loadGBLProductContentHelper(prefViewId, '4','9217','Understanding How Customers Make Decisions');
	}
	if(tabId == 2){
		document.getElementById('bucket1').innerHTML = "<img src='/imageserver/gartner/images/loading_images/loading_small.gif' border='0' alt ='Loading...'/>";
		document.getElementById('bucket2').innerHTML = "<img src='/imageserver/gartner/images/loading_images/loading_small.gif' border='0' alt ='Loading...'/>";
		document.getElementById('bucket3').innerHTML = ''; 
		document.getElementById('bucket4').innerHTML = ''; 
		
		loadGBLProductContentHelper(prefViewId, '1','9213','Understanding the Competitive Landscape');
		loadGBLProductContentHelper(prefViewId, '2','9220','Monitor Current Market Performance'); 
	}
	if(tabId == 3){
		document.getElementById('bucket1').innerHTML = "<img src='/imageserver/gartner/images/loading_images/loading_small.gif' border='0' alt ='Loading...'/>";
		document.getElementById('bucket2').innerHTML = "<img src='/imageserver/gartner/images/loading_images/loading_small.gif' border='0' alt ='Loading...'/>";
		document.getElementById('bucket3').innerHTML = "<img src='/imageserver/gartner/images/loading_images/loading_small.gif' border='0' alt ='Loading...'/>";
		document.getElementById('bucket4').innerHTML = '';
		
		loadGBLProductContentHelper(prefViewId, '1','9218','Monitor your Market');
		loadGBLProductContentHelper(prefViewId, '2','9219','Explore Future Opportunities');
		loadGBLProductContentHelper(prefViewId, '3','9221','Monitor Market Dynamics');  
	}
	if(tabId == 4){
		document.getElementById('bucket1').innerHTML = "<img src='/imageserver/gartner/images/loading_images/loading_small.gif' border='0' alt ='Loading...'/>";
		document.getElementById('bucket2').innerHTML = "<img src='/imageserver/gartner/images/loading_images/loading_small.gif' border='0' alt ='Loading...'/>";
		document.getElementById('bucket3').innerHTML = "<img src='/imageserver/gartner/images/loading_images/loading_small.gif' border='0' alt ='Loading...'/>";
		document.getElementById('bucket4').innerHTML = ''; 

		loadGBLProductContentHelper(prefViewId, '1','9222','Keep current on your Technologies');
		loadGBLProductContentHelper(prefViewId, '2','9223','Monitor Emerging Technologies');
		loadGBLProductContentHelper(prefViewId, '3','9226','Understanding Core Technology Fundamentals');
	}	
}

function loadGBLProductContentHelper(prefViewId, bucketNumber, RSCCMTCD, titleToDisplay) {


	var functionName = "displayGBLProductRelatedResearchContent";
	
	var bucketName = "bucket";
	var viewMoreDivName = "LGPViewMoreDiv";
	var hideDivName = "LGPHideDiv";
		
	
	//alert(titleToDisplay);
	
	var returnParams = new Array();
	returnParams[0]	= bucketName.concat(bucketNumber);
	returnParams[1] = viewMoreDivName.concat(bucketNumber);
	returnParams[2] = hideDivName.concat(bucketNumber);
	returnParams[3] = titleToDisplay;

	
	var forecastsUrl = "viewGBLContent.do?methodName=populateContent&RSCCMTCD="+RSCCMTCD+"&prefViewId="+prefViewId;
	

	var transformedURL = gatewayUrlForAddToLibrary + forecastsUrl;
	
	GetDataWithReturnParams(transformedURL, functionName, '', returnParams);

}





function displayGBLProductRelatedResearchContent(jsonObject,returnParamsStr){


  	var displayHTML = '';

  	var cntToShow = 5;

	var returnParams = returnParamsStr.split(",");

  	var dHTML = '<div id="' + returnParams[2] + '" style="display:none">';

  	if(jsonObject.researchItems != null && jsonObject.researchItems.length > 0){


		displayHTML += '<h2 class="hdr_grad">' + returnParams[3] + '</h2>';


	

        var length = jsonObject.researchItems.length;
		
		displayHTML += '<div class="padresearch">';

		for(var i=0; i < length ; i++) {

        	var divId = returnParams[0] + i;

        	var expandedDivId = 'expanded_' + divId;

        	var collapsedDivId = 'collapsed_' + divId;

			var docExpandContentId = 'docExpanded' + divId;

        	
				displayHTML += '<div class="listwrap">';
          	displayHTML += '<div id=' + expandedDivId + ' style="display:none;" >';

          	displayHTML += '<a href="javascript:void(0);" onclick="javascript:collapseItemDiv(\'' + expandedDivId + '\',\'' + collapsedDivId + '\',' + contentHeight + ',\'' + docExpandContentId + '\');return false;" >';

	  				displayHTML += '<img src="/imageserver/gartner/images/invest/collapse_minus.gif" border="0" class="floatL buttonPad" /></a>';

	  				displayHTML += '</div>';

	  		

	  				displayHTML += '<div id=' + collapsedDivId + '>';

	  	   		displayHTML += '<a href="javascript:void(0);" onclick="javascript:expandItemDiv(\'' + expandedDivId + '\',\'' + collapsedDivId + '\',' + contentHeight + ',\'' + docExpandContentId + '\');return false;" >';

	  				displayHTML += '<img src="/imageserver/gartner/images/invest/collapse_plus.gif" border="0" class="floatL buttonPad" /></a>';

	  				displayHTML += '</div>';

	  			

	  		displayHTML += '<div class="info_item" >';

	  		displayHTML += '<div class="floatL">';

	  		displayHTML += '<div><a href="' + jsDocDisplayBaseUrl + '&resId=' + jsonObject.researchItems[i].RES_ID + '"><strong>' + jsonObject.researchItems[i].TITLE_NM + '</strong></a>';

            displayHTML += '</div>';

            displayHTML += '<div class="item_pubdate">';

            displayHTML += generateAddToLibraryURL(jsonObject.researchItems[i].RES_ID) ;

            displayHTML += ' | Published: ' + jsonObject.researchItems[i].DISPLAY_DT;

		    displayHTML += '</div>';

           

            displayHTML += '<div id="' + docExpandContentId  + '" style="display:none;">';

            displayHTML += '<div class="item_analystInfo">' + jsonObject.researchItems[i].AUTHORS + '</div>';

		    displayHTML += '<div class="item_description">' + jsonObject.researchItems[i].SUMMARY_TXT + '</div>';

		    displayHTML += '</div></div>'; // End div for class='docExpandedContent'

            displayHTML += '</div>'; // End div for class='info_item'

            	

			displayHTML += '<div class="clear"></div>';
			displayHTML += '</div>'; //End div for class="listwrap"

			

            if (i == (cntToShow -1)) {

				displayHTML += dHTML;

			}

            

       }
	   
	   displayHTML += '</div>';

       if (length > cntToShow) {

       		displayHTML += '</div><div class="endTopic" id="' + returnParams[1] + '">';

       		displayHTML += '<p><span class="arrow"><a href="javascript:void(0);" onclick="javascript:gblProductResearchViewMore(\'' +  returnParams[1] + '\',\''+ returnParams[2] + '\');">View More</a></span></p></div>';

       } else {

       		displayHTML += '<div class="endTopic"></div>';

       }
	

    }else{
    			displayHTML += '<h2 class="hdr_grad">' + returnParams[3] + '</h2>';
				displayHTML += '<div class="item_group left_8px"><h2>No results found.</h2></div>';
				displayHTML += dHTML;
    		}

    

    document.getElementById(returnParams[0]).innerHTML = displayHTML;  

}






function gblProductResearchViewMore(showDivId, hideDivId) {

	document.getElementById(hideDivId).style.display = "";

	document.getElementById(showDivId).style.display = "none";

}


function loadGBLProductEssentialsContent(tabId, prefViewId) {

	var functionName = "displayGBLProductRelatedResearchContent";
	var titleToDisplay = "Gartner Analytics";
	
	if(tabId == 2){titleToDisplay = "Magic Quadrants & MarketScopes";}
	if(tabId == 3){titleToDisplay = "Forecasts And Statistics";}
	if(tabId == 4){titleToDisplay = "Hype Cycles";}
	
	var returnParams = new Array();
	returnParams[0]	= "productEssentialsContentResearchContent";
	returnParams[1] = "LGEPViewMoreDiv";
	returnParams[2] = "LGEPHideDiv";
	returnParams[3] = titleToDisplay;

	
	var forecastsUrl = "viewGBLContent.do?methodName=populateEssentialsContent&contentTab="+tabId+"&prefViewId="+prefViewId;
	
	

	var transformedURL = gatewayUrlForAddToLibrary + forecastsUrl;
	

	document.getElementById(returnParams[0]).innerHTML = "<img src='/imageserver/gartner/images/loading_images/loading_small.gif' border='0' alt = 'Loading...'/>";

	
	GetDataWithReturnParams(transformedURL, functionName, '', returnParams);

}

function ajaxCallToGetPreferencesAreaTabInfo(prefViewId, facet) {

		var ajaxUrl = gatewayUrlForAddToLibrary + 'gblUserPrefs.do?function=showPreferencesAreasTabs&facet='+facet+'&prefViewId='+prefViewId;

		var contentRequest = new PTHTTPGETRequest(ajaxUrl, document.getElementById('globalLayerDiv'));

		contentRequest.invoke();

		return false;

}

function loadTaLPAnalysts(prefViewId){
	var functionName = "displayTaLPAnalysts";
	var returnParam = "taLPAnalystsBucket";
	
	var researchUrl ="viewGBLContent.do?methodName=getAnalystsFromAPI&prefViewId="+prefViewId;
	var transformedURL = gatewayUrlForAddToLibrary + researchUrl;
	
	GetDataWithReturnParams(transformedURL, functionName, '', returnParam);
}

function displayTaLPAnalysts(jsonObject,returnParam){
	var displayHTML = '';
	
  	if(jsonObject.analystInfo != null && jsonObject.analystInfo.length > 0){
		displayHTML += '<div class="rail">';
		displayHTML += '<div class="railpad">';		
		displayHTML += '<h2 class="hdr_grad">SUGGESTIONS</h2>';
		displayHTML += '<div class="railSubhead">';
		displayHTML += '<h4>Analysts</h4>';
        displayHTML += '<p><a href="'+ analystFFURL + '">';
	 	displayHTML += 'Find Analysts</a></p>';
        displayHTML += '<div class="clear"><span></span></div>';
		displayHTML += '</div>';
		var length = jsonObject.analystInfo.length;
		
		for(var i = 0; i < length ; i++) {
			if (i == 0) {
				displayHTML += '<div class="info_item" id="wfLPAnalystcontent' + i + '" >';
			} else {
				displayHTML += '<div class="info_item" id="wfLPAnalystcontent' + i + '" style="display:none;">';
			}
				displayHTML +='<div class="floatL">';
				    displayHTML += '<a href="'+ jsonObject.analystInfo[i].ANALYST_BIO_URL  + '">';
					displayHTML +='<img src="/imageserver/gcomImages/headshots/bw_62x62/' + jsonObject.analystInfo[i].ANALYST_PHOTO_URL + '" class="cast" alt="" border="0">';
					 displayHTML += '</a>';
				displayHTML +='</div>';
					displayHTML +='<ul class="railImgList ">'
						displayHTML +='<li>'
						displayHTML += '<a href="' + jsonObject.analystInfo[i].ANALYST_BIO_URL + '" class="item_title">' +jsonObject.analystInfo[i].ANALYST_NAME + '</a></li>';
						displayHTML +='<li class="credentials" >'
							displayHTML += jsonObject.analystInfo[i].ANALYST_TITLE;
							displayHTML +='<br/>';
							displayHTML += jsonObject.analystInfo[i].ANALYST_LOCATION;
							displayHTML +='<br/>';
							displayHTML +='Years at Gartner:' + jsonObject.analystInfo[i].ANALYST_TENURE;
						displayHTML +='</li>';
						displayHTML +='<li>';
						displayHTML +='<a href=' + jsonObject.analystInfo[i].ANALYST_ALERT_URL + ' class="small" >Add to Alerts +</a> </li>';
					displayHTML +='</ul>';
					
					if(length > 1){
						displayHTML +='<a href="javascript:void(\'0\');" onclick="javascript:wfLPShowNextAnalyst(' + i + ','+ length + ');" > ';
						displayHTML +='<img src="/imageserver/gartner/images/01Types/buttons/508boxedArrow.gif" class="floatR " border="0">';
						displayHTML +='</a>';
					}
         displayHTML +='<div class="clear"></div>';
		 displayHTML +='</div>';
        }
		displayHTML += '<div class="grayUnderline">&nbsp;</div>';
		displayHTML += '</div>';
		displayHTML += '</div>';
    }
    
    document.getElementById(returnParam).innerHTML = displayHTML;  
}


//END --- JavaScript support funtions for HTTP MYGartner Product view pages

function showStarterPackLayerForITE(response){	
	if (response.responseText.length > 0) {	
		showGlobalLayerParam('', 'globalLayerDiv', formNamesWithSelectBoxesInLayer, 420, 280, 'true',1);	
		document.getElementById('globalLayerDiv').innerHTML=response.responseText;
	}
	else {
	 var redirectURL = 'http://' + portalDomainURL + '/portal/server.pt/mypage/home_page/0' ;
	 window.location = redirectURL;
	}
}
function saveStartPackRoleForITE(rowCount, defaultMyPagePrefName){
	 var roleId;
	 var flag = 0;
	 for (var cnt=0;cnt<parseInt(rowCount);cnt++) {
		if(document.getElementById('role_'+cnt) && document.getElementById('role_'+cnt).checked == true )
		{
			roleId = document.getElementById('role_'+ cnt).value;
			roleName = document.getElementById('role_'+ cnt).title;
			flag = 1;
		}
	 }
	 if(flag == 0)
	 {
		alert('Please Select a Role');
	 }
	 else
	 {
       // roleName = roleName + '~' + roleId;
       	setPortalUserPreference(defaultMyPagePrefName, roleName, gatewayUrlForAddToLibrary  + 'http://' + portalDomainURL + '/portal/server.pt?gr=cr&commName=97');
		hideGlobalLayer('globalLayerDiv', formNamesWithSelectBoxesInLayer);
	 }	
	return false;
}

//Start --- javascript support functions for HTTP MyGartner High-Tech Initiative Widget and Gartner Analytics
	function hideHighTechInitiativesDetails(divname) {
		if (document.getElementById) { // DOM3 = IE5, NS6 
			document.getElementById(divname).style.display = 'none'; 
		} 
		else { 
			if (document.layers) { // Netscape 4 
				document.divname.style.display = 'none'; 
			} 
			else { // IE 4 
				document.all.divname.style.display = 'none'; 
			} 
		} 
	}
	
	function showHighTechInitiativesDetails(divname, kiId, docDisplayBaseUrl, analystProfileBaseUrl) {
		var functionName = "displayResearchContent";
		
		if (document.getElementById) { // DOM3 = IE5, NS6 
			document.getElementById(divname).style.display = 'block'; 
		} 
		else { 
			if (document.layers) { // Netscape 4 
				document.divname.style.display = 'block'; 
			} 
			else { // IE 4 
				document.all.divname.style.display = 'block'; 
			} 
		} 
		
		var returnParams = new Array();
		returnParams[0]	= 'kiItemResearch' + kiId;
		returnParams[1] = "kiResearchDiv" + kiId;
		returnParams[2] = analystProfileBaseUrl;
		returnParams[3] = docDisplayBaseUrl;
		returnParams[4] = "highTechViewMoreDiv";
		returnParams[5] = "highTechReseachHideDiv";
		returnParams[6] = kiId;
		
		var getKIDetailsURL = gatewayUrlForAddToLibrary + 'myPageWidgetsAction.do?method=loadHighTechInitiativesResearch&kiId='+kiId;		
			
		GetDataWithReturnParams(getKIDetailsURL, functionName, '', returnParams);
	}
	
	function showGartnerAnalyticsDetails(divname, segName, roleCode, docDisplayBaseUrl, analystProfileBaseUrl) {
		var functionName = "displayResearchContent";
		
		if (document.getElementById) { // DOM3 = IE5, NS6 
			document.getElementById(divname).style.display = 'block'; 
		} 
		else { 
			if (document.layers) { // Netscape 4 
				document.divname.style.display = 'block'; 
			} 
			else { // IE 4 
				document.all.divname.style.display = 'block'; 
			} 
		} 
		
		var returnParams = new Array();
		returnParams[0]	= 'gaItemResearch' + roleCode;
		returnParams[1] = "gaResearchDiv" + roleCode;
		returnParams[2] = analystProfileBaseUrl;
		returnParams[3] = docDisplayBaseUrl;
		returnParams[4] = "gaViewMoreDiv";
		returnParams[5] = "gaReseachHideDiv";
		returnParams[6] = roleCode;
		
		var getGADetailsURL = gatewayUrlForAddToLibrary + 'myPageWidgetsAction.do?method=loadGartnerAnalyticsResearch&segName='+segName;		
			
		GetDataWithReturnParams(getGADetailsURL, functionName, '', returnParams);
	}
	
	
	function displayResearchContent(jsonObject,returnParamsStr){
  		var displayHTML = '';
  		var cntToShow = 3;
		var returnParams = returnParamsStr.split(",");
  		var hideDiv = '';
  		
  		if(jsonObject.researchItems != null && jsonObject.researchItems.length > 0){
        	var length = jsonObject.researchItems.length;
			for(var i=0; i < length ; i++) {
        			var divId = returnParams[1] + "_" + i;
        			var expandedDivId = 'Expanded_' + divId;
        			var collapsedDivId = 'Collapsed_' + divId;
        			var viewMoreDiv = returnParams[4] + "_" + returnParams[6] + "_" + i;
        			var researchHideDiv = returnParams[5] + "_" + returnParams[6] + "_" + i;
        			
	  				displayHTML += '<div id=' + collapsedDivId + ' class="portlet_content">';
	  				displayHTML += '<div class="float_lflush_icon">';
	  	   			displayHTML += '<a href="javascript:void(0);" onclick="javascript:expandResearchContentDiv(\'' + expandedDivId + '\',\'' + collapsedDivId + '\');return false;" >';
	  				displayHTML += '<img src="/imageserver/gartner/images/invest/collapse_plus.gif" border="0" class="floatL buttonPad" /></a>';
	  				displayHTML += '</div><div class="item_group_expand"><span>';
	  				displayHTML += '<a href="' + returnParams[3] + jsonObject.researchItems[i].RES_ID + '"><h2>' + jsonObject.researchItems[i].TITLE_NM + '</h2></a>';
	  				displayHTML += '</span></div><div class="clear"><span></span></div></div>';
	  			
	  				displayHTML += '<div id=' + expandedDivId + ' style="display:none;" class="portlet_content">';
          			displayHTML += '<div class="float_lflush_icon">';
          			displayHTML += '<a href="javascript:void(0);" onclick="javascript:collapseResearchContentDiv(\'' + expandedDivId + '\',\'' + collapsedDivId + '\');return false;" >';
	  				displayHTML += '<img src="/imageserver/gartner/images/invest/collapse_minus.gif" border="0" class="floatL buttonPad" /></a>';
	  				displayHTML += '</div>';
	  				displayHTML += '<div class="item_group_expand"><span>';
	  				displayHTML += '<a href="' + returnParams[3] + jsonObject.researchItems[i].RES_ID + '"><h2>' + jsonObject.researchItems[i].TITLE_NM + '</h2></a>';
	  				displayHTML += '</span><div class="gray_subhead"><p>';
            		displayHTML += generateAddToLibraryURL(jsonObject.researchItems[i].RES_ID) ;
            		displayHTML += ' | Published: ' + jsonObject.researchItems[i].DISPLAY_DT;
		    		displayHTML += '</p></div>';
		    	
		    		var authorsList = jsonObject.researchItems[i].AUTHORS.split("|");
		    		var authorsIdList = jsonObject.researchItems[i].AUTHOR_IDS.split("|");
		    	
		    		if(jsonObject.researchItems[i].AUTHORS != null && authorsList.length > 0){
		    			displayHTML += '<p>';
		    			var numOfAuthors = authorsList.length;
		    			for(var j=0; j < numOfAuthors; j++){
		    				if(j == 0){
		    					displayHTML += '<a href="' + returnParams[2] + authorsIdList[j] + '">' + authorsList[j] + '</a>';
		    				}else{
		    					displayHTML += ' | <a href="' + returnParams[2] + authorsIdList[j] + '">' + authorsList[j] + '</a>';
		    				}
		    			}
		    			displayHTML += '</p>';
		    		}
		    	
		   			displayHTML += '<p>' + jsonObject.researchItems[i].SUMMARY_TXT + '</p>';		   			
		   			displayHTML += '</div><div class="clear"><span></span></div></div>';
		   			
		   			if (i == (cntToShow -1)) {
						displayHTML += '<div id="' + researchHideDiv + '" style="display:none">';
						hideDiv = researchHideDiv;
					}
       			}
       			
       			if (length > cntToShow) {
       				displayHTML += '</div><div class="endTopic" id="' + viewMoreDiv + '">';
       				displayHTML += '<p><a href="javascript:void(0);" onclick="javascript:wfKILPResearchViewMore(\'' +  viewMoreDiv + '\',\''+ hideDiv + '\');">View More</a><span class="tiny_arrow_rt">&nbsp;</span></p></div>';
       			} else {
       				displayHTML += '<div class="endTopic"></div>';
       			}	
    		}else{
    			displayHTML += '<div class="item_group left_8px">No results found.</div>';
    		}
    	
   	 	document.getElementById(returnParams[0]).innerHTML = displayHTML;		
	}
	
	function collapseResearchContentDiv(expandDivId, collapseDivId) {
		document.getElementById(expandDivId).style.display = "none";
    	document.getElementById(collapseDivId).style.display = "block"; 
	}
	
	function expandResearchContentDiv(expandDivId, collapseDivId) {
		document.getElementById(expandDivId).style.display = "block";
    		document.getElementById(collapseDivId).style.display = "none"; 
	}

//End --- javascript support functions for HTTP MyGartner High-Tech Initiative Widget and Gartner Analytics

//script functions related to analystPicks
function refreshPortletcontent(element) {
	var retVal = element.value;
	var selectedITERoleCode = dojo.byId('selectedITERoleCode').innerHTML;
	if(parseInt(retVal) == parseInt(selectedITERoleCode)){
		element.selectedIndex =0;
		return false;			
	}
	var url = "ITExecutivesHomePage.do?methodName=analystPicksContent&ContentType=AnalystPicks&xslFile=/xsl/analysts/analystPick.xsl&roleCode="+retVal;
			
	var transformedURL = gatewayUrlForAddToLibrary + url;
	GetDataAndReplaceHTML(transformedURL, 'refreshPortletcontentDone', '','analystsPickContent');
}
function refreshPortletcontentDone() {
	
}
//END - script functions related to analystPicks

//Start - script functions related to KI email notification preference edit
function showNotificationPrefEditLayer(fromSummary, wfucxId){
		var method="editNotificationPreference('"+fromSummary+"','" + wfucxId +"')";
		showGlobalLayerParam(method, 'globalLayerDiv', formNamesWithSelectBoxesInLayer, 660, 488, 'true', 1);
	
		var globallayerDivClassHandle = getCSSStyle(".globalLayerDiv");
		globallayerDivClassHandle.style.height = "auto";
		globallayerDivClassHandle.style.width = "auto";
		return ;
}
	
function editNotificationPreference(fromSummary, wfucxId){
	var transformedURL = gatewayUrlForAddToLibrary + 'wfKIWizard.do?function=showNotificationPrefLayer&fromSummary='+fromSummary+'&wfucxId='+wfucxId;
	
	var contentRequest = new PTHTTPGETRequest(transformedURL, document.getElementById('globalLayerDiv')); 

	contentRequest.invoke();
	return false;
}
//End - script functions related to KI email notification preference edit

//Start of Global variable for PeerConnect redirect logic
var peerConnectRedirect = 'N';
//End of global variable for PeerConnect redirect logic

function postEventQAForm(){
 document.qs.submit();
 return;
}

function postGetToEventForm(){
 document.ev.submit();
 return;
}

function loadBussinessEnablementHTML(isCFOResearch) {
	var returnParams = "bussinessEnablement";
	var researchDocUrl = "CFOHomePage.do?method=loadDocForBussinessEnablement&cfoResearch="+isCFOResearch;
	var transformedURL = gatewayUrlForAddToLibrary + researchDocUrl;
	GetDataWithReturnParams(transformedURL, 'displayCFOResearchDocs', '', 'bussiness');
	
}

function displayCFOResearchDocs(jsonObject,returnParamsStr){
    var displayHTML = '';
	var cntToShow = 5;
	
	var docLength = jsonObject.docInfo.length;
	var dHTML = '<div id="'+returnParamsStr+'EnableHideDiv" style="display:none;">';
 	if (jsonObject.docInfo != null && docLength > 0){
			 for(var i=0; i <jsonObject.docInfo.length; i++) {
			        var divId= i+1;
			        var docExpandContentId = 'docExpanded' +'bussiness_'+ divId;
			       
			       displayHTML += '<div class="listwrap" id="collapsed_'+returnParamsStr+'_'+divId+'">';
			       displayHTML += '<a href="javascript:void(0);" onclick="expandDiv('+divId+',\''+returnParamsStr+'\');" >';
			  	   displayHTML += '<img class="floatL" src="/imageserver/gartner/images/invest/collapse_plus.gif" border="0" />';
			  	   displayHTML += '</a>';
			  	    
			  	   displayHTML += '<div class="info_item">';
			  	   displayHTML += '<div class="item_title"><a href="' + jsonObject.docInfo[i].DOCBASEURL + '&resId=' + jsonObject.docInfo[i].RES_ID + '">';
			  	   displayHTML += '<strong>' + jsonObject.docInfo[i].TITLE_NM + '</strong></a></div>';
		  	       
		  	       displayHTML += '<div class="item_pubdate">';
			       displayHTML += generateAddToLibraryURL(jsonObject.docInfo[i].RES_ID) ;
			       displayHTML += '<span class="pipe">|</span> Published: ' + jsonObject.docInfo[i].DISPLAY_DT;
 			       displayHTML += '</div>';  
 			       displayHTML += '</div>';  
 			       
 			       displayHTML += '<div class="clear"><span></span></div>';	
			       displayHTML += '</div>';  
			       
			       displayHTML += '<div class="listwrap" id="expanded_'+returnParamsStr+'_'+divId+'" style="display:none;">';
			       displayHTML += '<a href="javascript:void(0);" onclick="collapseDiv('+divId+',\''+returnParamsStr+'\');" >';
			       displayHTML += '<img class="floatL" src="/imageserver/gartner/images/invest/collapse_minus.gif" border="0" /></a>';
  			       
  			       displayHTML += '<div class="info_item">';
			       displayHTML += '<div class="item_title">';
			       displayHTML += '<a href="' + jsonObject.docInfo[i].DOCBASEURL + '&resId=' + jsonObject.docInfo[i].RES_ID + '"><strong>' + jsonObject.docInfo[i].TITLE_NM + '</strong></a>';
			       displayHTML += '</div>';
				   displayHTML += '<div class="item_pubdate">';
				   displayHTML += generateAddToLibraryURL(jsonObject.docInfo[i].RES_ID) ;
			       displayHTML += '<span class="pipe">|</span> Published: ' + jsonObject.docInfo[i].DISPLAY_DT;
				   displayHTML += '</div>'; 
			           		
			       displayHTML += '<div id="'+ docExpandContentId+'">';
			       displayHTML += '<div class="item_analyst">' + jsonObject.docInfo[i].AUTHORS + '</div>';
				   displayHTML += '<div class="item_overview">' + jsonObject.docInfo[i].SUMMARY_TXT + '</div>';
				   displayHTML += '</div>';
	  		       displayHTML += '</div>'; 
	  		       
	  		       displayHTML += '<div class="clear"><span></span></div>';	
			       displayHTML += '</div>';  
					        
				  if (i == (cntToShow-1)) {
					     displayHTML += dHTML;
		          }
			           
			           }//for
			           
			          if (docLength > cntToShow ) {
			          	var viewMoreDivId = "docMoreDiv_"+returnParamsStr+divId;
			          	var viewLessDivId = "docViewLessDiv_"+returnParamsStr+divId;
			          	
			     		displayHTML += '</div><div class="moreless" id="'+viewMoreDivId+'">';
			     		displayHTML += '<p><a href="javascript:void(0);" onclick="javascript:viewMore(\'' +  viewMoreDivId + '\',\''+ viewLessDivId + '\',\''+returnParamsStr+'EnableHideDiv' + '\');">View More&nbsp;<img src="/imageserver/gartner/images/01Types/common/arrow_more.gif" border="0" />';
			     		displayHTML += '</a></p></div>';
			     		displayHTML += '<div class="moreless" id="'+viewLessDivId+'" style="display:none;">';
			     	    displayHTML += '<p><a href="javascript:void(0);" onclick="javascript:viewLess(\'' +  viewMoreDivId + '\',\''+ viewLessDivId + '\',\''+returnParamsStr+ 'EnableHideDiv' + '\');">View Less&nbsp;<img src="/imageserver/gartner/images/01Types/common/arrow_less.gif" border="0" />';
			     	    displayHTML += '</a></p></div>';
			   	  }else {
       					displayHTML += '<div class="endTopic"></div>';
       			  }
       			  
       			  displayHTML += '<div class="clear">&nbsp;</div>';
			 
			 }else{
			  	displayHTML += 'no documents found';
			 }
 
  if(""!=displayHTML){
	    document.getElementById(returnParamsStr).style.display = 'block';
		document.getElementById(returnParamsStr).innerHTML = displayHTML;
 }
 
}

function expandDiv(divId, returnParam){
var expandedDiv = 'expanded_'+returnParam+'_'+divId;
var collapsedDiv = 'collapsed_'+returnParam+'_'+divId;
 document.getElementById(collapsedDiv).style.display = 'none';
  document.getElementById(expandedDiv).style.display = 'block';
  
   if(returnParam == 'EssentialOverview'){
  	var summaryDiv = 'docEssentialExpandContent_'+divId;
  	document.getElementById(summaryDiv).style.display = 'block';
  }
}

function collapseDiv(divId, returnParam){
 var expandedDiv = 'expanded_'+returnParam+'_'+divId;
 var collapsedDiv = 'collapsed_'+returnParam+'_'+divId;

  document.getElementById(collapsedDiv).style.display = 'block';
  document.getElementById(expandedDiv).style.display = 'none';
  
  if(returnParam == 'EssentialOverview'){
  	var summaryDiv = 'docEssentialExpandContent_'+divId;
  	document.getElementById(summaryDiv).style.display = 'none';
  }	

}
function viewMore(viewMoreId,viewLessId, hideDivId) {
	document.getElementById(hideDivId).style.display = "";
	document.getElementById(viewLessId).style.display= "";
	document.getElementById(viewMoreId).style.display = "none";
}

function viewLess(viewMoreId,viewLessId, hideDivId) {
	document.getElementById(hideDivId).style.display = "none";
	document.getElementById(viewMoreId).style.display = "";
	document.getElementById(viewLessId).style.display= "none";
}

function essentialViewMore(showDivId, hideDivId) {
	document.getElementById(hideDivId).style.display = "";
	document.getElementById(showDivId).style.display = "none";
}


function loadFinanceAndEconomics(isCFOResearch) {
	var returnParams = "leadership";
	var researchDocUrl = "CFOHomePage.do?method=loadDocForFinanceAndEconomics&cfoResearch="+isCFOResearch;
	var transformedURL = gatewayUrlForAddToLibrary + researchDocUrl;
	GetDataWithReturnParams(transformedURL, 'displayCFOResearchDocs', '', 'finance');
}

function loadRiskMitigationResearch(isCFOResearch) {
	var returnParams = "riskMitigation";
	var researchDocUrl = "CFOHomePage.do?method=loadDocForRiskMitigation&cfoResearch="+isCFOResearch;
	var transformedURL = gatewayUrlForAddToLibrary + researchDocUrl;
	GetDataWithReturnParams(transformedURL, 'displayCFOResearchDocs', '', 'risk');
}

function loadLeadershipResearch(isCFOResearch) {
	var returnParams = "leadership";
	var researchDocUrl = "CFOHomePage.do?method=loadDocForLeadership&cfoResearch="+isCFOResearch;
	var transformedURL = gatewayUrlForAddToLibrary + researchDocUrl;
	GetDataWithReturnParams(transformedURL, 'displayCFOResearchDocs', '', 'leadership');
	
}

function loadExecutiveResearch(){
  document.getElementById("executiveRes").style.display = '';
  document.getElementById("executiveRes").innerHTML ='CFO & Business Insights';
  document.getElementById("executiveRes").className = "selected";
  document.getElementById("cfoRes").innerHTML = '';	
  document.getElementById("cfoRes").innerHTML ='CFO Advisory Research'; 
  document.getElementById("cfoRes").className = "notselected";
  loadExecutiveResearchTabs();
}

function loadCFOResearch(){
  document.getElementById("cfoRes").style.display = '';
  document.getElementById("cfoRes").innerHTML = 'CFO Advisory Research';
  document.getElementById("cfoRes").className = "selected";
  document.getElementById("executiveRes").innerHTML = '';
  document.getElementById("executiveRes").innerHTML = 'CFO & Business Insights';
  document.getElementById("executiveRes").className = "notselected";
  loadCFOResearchTabs();
}

function loadExecutiveResearchTabs(){
document.getElementById("leadershipRes").style.display = 'block';
document.getElementById("essentials").style.display = 'block';
document.getElementById("bussiness").innerHTML ='<img src="/imageserver/gartner/images/loading_images/loading_small.gif" border="0" alt = "Loading..."/>';
document.getElementById("finance").innerHTML ='<img src="/imageserver/gartner/images/loading_images/loading_small.gif" border="0" alt = "Loading..."/>';
document.getElementById("risk").innerHTML ='<img src="/imageserver/gartner/images/loading_images/loading_small.gif" border="0" alt = "Loading..."/>';

loadBussinessEnablementHTML('N');
loadRiskMitigationResearch('N')
loadFinanceAndEconomics('N');

}

function loadCFOResearchTabs(){
document.getElementById("bussiness").innerHTML ='<img src="/imageserver/gartner/images/loading_images/loading_small.gif" border="0" alt = "Loading..."/>';
document.getElementById("finance").innerHTML ='<img src="/imageserver/gartner/images/loading_images/loading_small.gif" border="0" alt = "Loading..."/>';
document.getElementById("risk").innerHTML ='<img src="/imageserver/gartner/images/loading_images/loading_small.gif" border="0" alt = "Loading..."/>';

loadBussinessEnablementHTML('Y');
loadRiskMitigationResearch('Y')
loadFinanceAndEconomics('Y');
document.getElementById("leadershipRes").style.display = 'none';
document.getElementById("essentials").style.display = 'none';
}

// Ite related js functions.
//function joinPeerConnectNow() {
//	var peerConnectUrl = portalDomain+"/portal/server.pt?gr=cr&commName=127&referrer=mygartner";
//	window.location = peerConnectUrl;
//}

// Starter-Pack Role Preference Layer related methods.
function getStarterPackLayerForITE(groupCd) {
	var ajaxUrl = gatewayUrlForAddToLibrary +'ITExecutivesHomePage.do?methodName=getStarterPackLayer&groupCd='+groupCd;
	var contentRequest = new PTHTTPGETRequest(ajaxUrl, showStarterPackLayerForITE);
	contentRequest.invoke();		
}

function showPCJoinLayerFromITEQL() {
hideQuickLinksDiv();
if (hasJoinedPeerConnect == "true")	{
	var pcInboxUrl = portalDomain+"/portal/server.pt?gr=cr&commName=127";
	window.location = pcInboxUrl;
} else if (isPCProfileStarted == "true") {	
	showPcCompleteFromITE();
} else { 
	showPCJoinNowFromITE();
}
} 

function showPCJoinNowFromITE() {
	PTPortlet.setSessionPref("referrer", "iteQuickLinks");
	// Reset the session preferences that are set previously as part of peer profile clicks for redirection.	
	PTPortlet.setSessionPref("userIdPC", '');
	PTPortlet.setSessionPref("entCdPC", '');
	showGlobalLayerParam('getHtmlForGlobalLayerDiv("http://webhost.gartner.com/html/peerdirectory/layerJoinNow.html")', 
					'globalLayerDiv', formNamesWithSelectBoxesInLayer, 600, 80, 'true', 1);
	var globallayerDivClassHandle = getCSSStyle(".globalLayerDiv");
	globallayerDivClassHandle.style.height = "auto"; 
}
function showPcCompleteFromITE() {
// Reset the session preferences that are set previously as part of peer profile clicks for redirection.	
	PTPortlet.setSessionPref("userIdPC", '');
	PTPortlet.setSessionPref("entCdPC", '');
	showGlobalLayerParam('getHtmlForGlobalLayerDiv("http://webhost.gartner.com/html/peerdirectory/layerCompleteProfile.html")', 
					'globalLayerDiv', formNamesWithSelectBoxesInLayer, 600, 80, 'true', 1);
	var globallayerDivClassHandle = getCSSStyle(".globalLayerDiv");
	globallayerDivClassHandle.style.height = "auto"; 
}
function showPCJoinNowFromITEPeersLayer() {
	PTPortlet.setSessionPref("referrer", "itePeersLayer");
	// Reset the session preferences that are set previously as part of peer profile clicks for redirection.	
	PTPortlet.setSessionPref("userIdPC", '');
	PTPortlet.setSessionPref("entCdPC", '');
	showGlobalLayerParam('getHtmlForGlobalLayerDiv("http://webhost.gartner.com/html/peerdirectory/layerJoinNow.html")', 
					'globalLayerDiv', formNamesWithSelectBoxesInLayer, 600, 80, 'true', 1);
	var globallayerDivClassHandle = getCSSStyle(".globalLayerDiv");
	globallayerDivClassHandle.style.height = "auto"; 
}

function clearSrchDefaultTxt() {
	if (srchDefTxtFlg == true) {
		document.getElementById('txtSearch').value = "";
		srchDefTxtFlg = false;
	}
}

//START --- JavaScript support funtions for Doc Display Latest Recommendations via recommendation algorithm

function loadDocDisplayRecommendations(resId) {

	var functionName = "displayDocDisplayRecommendations";	
	var returnParams = new Array();
	
	var forecastsUrl = "showGartnerRecommendsContent.do?method=showDocDisplayRecommends&resId="+resId;	

	var transformedURL = gatewayUrlForAddToLibrary + forecastsUrl;
	
	GetDataWithReturnParams(transformedURL, functionName, '', returnParams);

}


function displayDocDisplayRecommendations(jsonObject,returnParamsStr){

  	var displayHTML = '';

  	if(jsonObject.docDisplayRecommendations != null && jsonObject.docDisplayRecommendations.length > 0){

		displayHTML += '<h4 class="autorec">LATEST RECOMMENDATIONS</h4>';
		displayHTML += '<ul class="autoRecommend">';

        var length = jsonObject.docDisplayRecommendations.length;

		for(var i=0; i < length ; i++) {
		
			if(i == (length-1)) {displayHTML += '<li class="nodot">';}
			else {displayHTML += '<li>';}			
			displayHTML += '<a href="' + jsDocDisplayBaseUrl + '&ref=dd_rec&resId=' + jsonObject.docDisplayRecommendations[i].RES_ID + '">' + jsonObject.docDisplayRecommendations[i].TITLE_NM + '</a>';
			displayHTML += '</li>';

       }
	   displayHTML += '</ul>';
	   //displayHTML += '<img src="/imageserver/gartner/images/features/docdisplay/rail_bttm.gif" width="280" height="37" />';
	   
    document.getElementById('latestRecoAlg').innerHTML = displayHTML; 
	document.getElementById('latestRecoAlg').style.display = "";

    } 

}

//END --- JavaScript support funtions for Doc Display Latest Recommendations via recommendation algorithm

function loadDocDisplayDynamicSuggestions(resId){
  var functionName = "displayDocDisplayDynamicSuggestions";
  var returnParams = new Array();
  var forecastUrl = "docDisplay.do?function=loadDynamicSuggestions&resId="+resId;
  var transformedURL = gatewayUrlForAddToLibrary + forecastUrl;

  GetDataWithReturnParams(transformedURL, functionName, '', returnParams);
}

function displayDocDisplayDynamicSuggestions(jsonObject, returnParamStr){

  var displayHTML = '';

  if(jsonObject.researchItems != null && jsonObject.researchItems.length > 0){
    displayHTML += '<h4 class="autorec">Latest Recommendations - Vivisimo Search </h4>';
    displayHTML += '<ul class = "autoRecommend">';

    var length = jsonObject.researchItems.length;
  
     for(var i=0; i < length; i++) {
       displayHTML += '<li>';
       displayHTML += '<a href = "' + jsDocDisplayBaseUrl + '&ref=dd_rec&resId=' + jsonObject.researchItems[i].RES_ID +'">' + jsonObject.researchItems[i].TITLE_NM +'</a>';
       displayHTML += '</li>';
     }
       displayHTML += '</ul>';
       displayHTML += '<img src="/imageserver/gartner/images/features/docdisplay/rail_bttm.gif" width="280" height="37" />';

  document.getElementById('latestRecoViv').innerHTML = displayHTML;
  document.getElementById('latestRecoViv').style.display ="";
  }
}

function loadDocDisplayDocumentHistory(resId){
  var functionName = "displayDocDisplayDocumentHistory";
  // Add resId to returnParam
  var returnParams = "resId=" + resId ;
  var forecastUrl = "docDisplay.do?function=getDocumentHistory&resId="+resId;
  var transformedURL = gatewayUrlForAddToLibrary + forecastUrl;

  GetDataWithReturnParams(transformedURL, functionName, '', returnParams);
}

function displayDocDisplayDocumentHistory(jsonObject, returnParamStr){

  var displayHTML = '';
  var docHistDivId = 'docHistory';
  var resId = "";
   //Get the resId from the returnParams
	if(returnParamStr != null) {
		var index0 = returnParamStr.indexOf("=") + 1;
		resId = returnParamStr.substring(index0,returnParamStr.length);
	}
  if(jsonObject.docList != null &&     jsonObject.docList.length > 0){
    displayHTML += '<div id="docHistoryExpand" style="display:none">';
    displayHTML +=  '<div class="history">';
    displayHTML += '<div class="showhide" onclick="handleCollapsibility(\'' + docHistDivId + '\');"><h2 class="show">DOCUMENT HISTORY</h2></div>';
    displayHTML += '<div class="padme">';
    displayHTML += '<ul>';

    var length = jsonObject.docList.length;
    
    for(var i=0; i <length; i++) {
      displayHTML += '<li>';
      if(resId ==  jsonObject.docList[i].resId)
        displayHTML +=  jsonObject.docList[i].title + '<br/>' +  jsonObject.docList[i].lastRevDt  ;
      else
        displayHTML += '<a href = "' + jsDocDisplayBaseUrl + '&resId=' + jsonObject.docList[i].resId +'">' + jsonObject.docList[i].title +'</a>'  + '<br/>' +  jsonObject.docList[i].lastRevDt;
      displayHTML += '</li>';
    }
    displayHTML += '</ul>';
    displayHTML += '</div></div></div>';
       
    displayHTML += '<div id="docHistoryCollapse">';
    displayHTML += '<div class="entitle">';
    displayHTML += '<div class="showhide"  onclick="handleCollapsibility(\'' + docHistDivId + '\');"><h2 class="hide">DOCUMENT HISTORY</h2></div>';
    displayHTML += '</div>';
    displayHTML += '</div>';

    document.getElementById('docHistAjax').innerHTML = displayHTML;
    document.getElementById('docHistAjax').style.display ="";
   }
  }

function loadDocDisplayClusterNodes(resId){
  var functionName = "displayDocDispClusterNodes";
  var returnParams = new Array();
  var forecastUrl = "docDisplay.do?function=getClusters&resId="+resId;
  var transformedURL = gatewayUrlForAddToLibrary + forecastUrl;

  GetDataWithReturnParams(transformedURL, functionName, '', returnParams);
}

function displayDocDispClusterNodes(jsonObject, returnParamStr){

  var displayHTML = '';
  if(jsonObject.clusters != null && jsonObject.clusters.length > 0){
    displayHTML += '<div class="section browse">';
    displayHTML += '<h4>This document is published in the following Market Insights:</strong><br /></h4>';
    displayHTML += '<p>';
    
    var length = jsonObject.clusters.length;
    for(var i=0; i < length; i++) {     
      displayHTML +=  jsonObject.clusters[i].name;
      if(i < (length - 1))
		displayHTML += ",&nbsp";
    }
    displayHTML += '</p>';
    displayHTML += '<div class="tocup"><a href="#">Return To Top</a></div>';
    displayHTML += '</div>'

    document.getElementById('clusterNodes').innerHTML = displayHTML;
    document.getElementById('clusterNodes').style.display ="";
  }
}

//START --- JavaScript support functions for Image pop-up for doc display
                        
					   
function showDocDisplayImage(javascriptFunctionString, layerDivIdToBeShown, arrayOfFormNamesInLayer, layerWidth, layerHeight, startX, startY) {

//alert('In to showDocDisplayImage :: startx :: ' + startX + ' :: starty :: ' + startY);

	var pageWidth = 0;

	//Hardcoding this as automatic size determination is not working in IE 6.
	var pageHeight = 5000;

     pageWidth = document.body.offsetWidth;

     if (pageWidth == 0) {
    		pageWidth = document.body.scrollWidth;
     }

	var transparentDivLayerClassHandle = getCSSStyle(".transparentDivLayer");
	
	if(isChrome()) {
		var tbd = document.getElementById('transparentBackgroundDiv');
		tbd.style.width = pageWidth;
		tbd.style.height = pageHeight;
	} else {
		transparentDivLayerClassHandle.style.width = pageWidth;
		transparentDivLayerClassHandle.style.height = pageHeight;
	}
	hideAllSelectBoxes();
	

	showSelectBoxesInLayerdForm(arrayOfFormNamesInLayer);

	//If the javascript function string is not empty then call the javascript function string.
	if (javascriptFunctionString != "") {
		eval(javascriptFunctionString);
	}

	var globallayerDivClassHandle = getCSSStyle(".globalLayerDiv");
	document.getElementById('globalLayerDiv').className = "globalLayerDiv";
	if(isChrome()) {
		var gbd = document.getElementById('globalLayerDiv');
		gbd.style.width = layerWidth;
		gbd.style.height = layerHeight;
	} else {
		globallayerDivClassHandle.style.width = layerWidth;
		globallayerDivClassHandle.style.height = layerHeight;
	}

		if(isChrome()) {
			var gbd = document.getElementById('globalLayerDiv');
			gbd.style.left = startX;
			gbd.style.top = startY-layerHeight;
		} else {
			globallayerDivClassHandle.style.left = startX;
			globallayerDivClassHandle.style.top = startY-layerHeight;
		}

}


	function checkZoom(imgSrc)
	{
	var enlarge = imgSrc + 'Enlarge';
	var actualImgSrc = imgSrc + 'Img';
	var newImg = new Image();
	newImg.onload=function() {};
	newImg.src = document.getElementById(actualImgSrc).src;
			if(newImg.width > 650) {
				document.getElementById(enlarge).style.display = 'inline';
			}
	}
	

	function zoomImg(imgSrc){
	
		var enlarge = imgSrc + 'Enlarge';
		var close = imgSrc + 'Close';		
		var actualImgSrc = imgSrc + 'Img';
		document.getElementById(enlarge).style.display = "none";
		document.getElementById(close).style.display = "inline";
		
		var d = document.getElementById(enlarge);
		startX = mouseXPositionOnMove-15;
		startY = mouseYPositionOnMove-10;
		
		var newImg = new Image();
		newImg.onload=function() {};
		newImg.src = document.getElementById(actualImgSrc).src;
			
		showDocDisplayImage('showImageLayer("' + imgSrc + '")', 'globalLayerDiv', formNamesWithSelectBoxesInLayer, newImg.width, newImg.height, startX, startY);
		hideAllSelectBoxes();
	}

	function showImageLayer(imgSrc){
		var imgSrcModified = '"' + imgSrc + '"';
		document.getElementById('globalLayerDiv').innerHTML= "<img src='" + imgSrc + "' onclick='closeImageLayer(" + imgSrcModified + ");' />";
	}

	function closeImageLayer(imgSrc){
		var enlarge = imgSrc + 'Enlarge';
		var close = imgSrc + 'Close';
		document.getElementById(enlarge).style.display = "inline";
		document.getElementById(close).style.display = "none";
		
		hideGlobalLayer('globalLayerDiv', formNamesWithSelectBoxesInLayer);
		document.getElementById('globalLayerDiv').innerHTML= "";
		showAllSelectBoxes();
	}

	//Generic Function to expand or collapse the doc display components
	function handleXSLCollapsibility(divId)
	{
			
		var showHide = divId + 'ShowHide';
		
		if(divId == 'toc')
		{
			showHide = 'toc';
			divId = 'tocContent';
		}
		
		if(document.getElementById(divId).style.display == "none")
		{
			document.getElementById(divId).style.display = "block";
			document.getElementById(showHide).className = "show";
		} else {
			document.getElementById(divId).style.display = "none";
			document.getElementById(showHide).className = "hide";
		}
	}	
	
//END --- JavaScript support functions for Image pop-up for doc display

function showPCPHomeTooltip(pcpTipFlag) {
	if(pcpTipFlag == 1)	{
		document.getElementById("pcphome_tooltip").style.display  = 'block';    
	} else {
		document.getElementById("pcphome_tooltip").style.display  = 'none';    	
	}	
}

