TemplateClass = function(){
	// constructor	
}
TemplateClass.prototype.templatesGetVersion = function(){
	return "1.0.0";	
}
TemplateClass.prototype.attachTemplates = function(oTemplateNode, oElementTarget, iContentArea){
	var sBgColor = "#"+window._oColors.colours.palette[window._sColorPaletteId].pods.background.hex_value;
	var sMainRollOverColor = "#"+window._oColors.colours.palette[window._sColorPaletteId].pods.main_rollover.hex_value;
	var sMainRollOutColor = "#"+window._oColors.colours.palette[window._sColorPaletteId].pods.main_rollout.hex_value;
	var sPodsTitleBarBackgroundColor = "#"+window._oColors.colours.palette[window._sColorPaletteId].pods.title_bar.background.hex_value;
	var sTemplateId;
	if(typeof iContentArea == "undefined"){
		iContentArea = 0;
	}
	//alert("attachTemplates called.");
	this._Pod_ExternalEmbed = function(oTemplateNode, oElementTarget, sPrevContentHeader, sPrevContent, sPrevContentFooter, oOriginalTemplateNode, bIsRelatedType, sFileGuid){
		var bNoTitleBar = false;
		if(typeof oElementTarget.getChildElementById("divTitleBar") == "undefined"){
			bNoTitleBar = true;
		}
		else{
			//oElementTarget.showExpandShrinkControls();
		}
		var oDivHtml = window.document.createElement("div");
		$(oDivHtml).setAttribute("id", "divHtml_0");
		if(Prototype.Browser.IE == true && parseInt(Prototype.Browser.Version) < 8){
			oDivHtml.setStyle({
				position: "absolute",
				marginLeft: "0px",
				paddingRight: "0px",
				left: "0px",
				top: "0px",
				height: "215px",
				width: "314px",
				overflow: "auto",
				wordWrap: "break-word",
				overflowX: "hidden"
			});
		}
		else{
			oDivHtml.setStyle({
				position: "relative",
				marginLeft: "0px",
				paddingRight: "0px",
				left: "0px",
				top: "0px",
				height: "100%",
				overflow: "auto",
				wordWrap: "break-word",
				overflowX: "hidden"
			});
		}
		oElementTarget.getChildElementById("divContent").appendChild(oDivHtml);
		if(bNoTitleBar == false){
			if(oTemplateNode.component[0].hidden){
				if(oTemplateNode.component[0].hidden != "true"){
					oElementTarget.getChildElementById("divTitleBar").getChildElementById("divTitleBarTitle").update(oTemplateNode.component[0].text.toUpperCase());
				}
			}
			else{
				oElementTarget.getChildElementById("divTitleBar").getChildElementById("divTitleBarTitle").update(oTemplateNode.component[0].text.toUpperCase());
			}
		}
		oElementTarget.fncExpanded = function(){
			oDivHtml.setStyle({overflow: "auto"});
			if(Prototype.Browser.IE == true && parseInt(Prototype.Browser.Version) < 8){
				oDivHtml.setStyle({
					height: "463px",
					width: "648px"
				});
			}
			oDivHtml.update(oTemplateNode.component[1].embed);
		};
		oElementTarget.fncShrunk = function(){
			oDivHtml.setStyle({overflow: "hidden"});
			if(Prototype.Browser.IE == true && parseInt(Prototype.Browser.Version) < 8){
				oDivHtml.setStyle({
					height: "215px",
					width: "314px"
				});
			}
			oDivHtml.update(oTemplateNode.component[1].embed);
		};
		oElementTarget.fncShrunk();
	}
	this._Pod_CustomizeLang = function(oTemplateNode, oElementTarget, sPrevContentHeader, sPrevContent, sPrevContentFooter, oOriginalTemplateNode, bIsRelatedType, sFileGuid){
		var bNoTitleBar = false;
		if(!oElementTarget.getChildElementById("divTitleBar")){
			bNoTitleBar = true;
		}
		else{
			//oElementTarget.showExpandShrinkControls();
		}
		var oDivHtml = new Element("div");
		oDivHtml.setAttribute("id", "divHtml_0");
		oDivHtml.addClassName("cssDivPod1x1");
		oDivHtml.setStyle({
			backgroundColor:"#8e8e8e"
		});
		oElementTarget.getChildElementById("divContent").appendChild(oDivHtml);
		oElementTarget.getChildElementById("divTitleBar").getChildElementById("divTitleBarTitle").update(oTemplateNode.component.text.toUpperCase());
		oElementTarget.fncExpanded = function(){
			//
		};
		window.onLangDropDownSelection = function(sSelection){
			$("divLeftNavArea").remove();
			createLeftNavArea("_xml\/"+sSelection+"_mainnav_areas.xml", $("divNavHolder"));
		}
		oElementTarget.fncShrunk = function(){
			if(!oDivHtml._bBeenHereOnce){
				oDivHtml.setStyle({overflow: "hidden"});
				if(Prototype.Browser.IE == true && parseInt(Prototype.Browser.Version) < 8){
					/*oDivHtml.setStyle({
						height: "214px",
						width: "312px"
					});*/
				}
				var sLangDropdown = '\<form class="langdropdown" name="langselectionform"\>\<select name="langselection" size="1" onchange="window.onLangDropDownSelection(this.value)" style="font-size:9px; font-family:verdana; height:18; border:1px solid #dddddd; width:90px;"\>\<option value="en"\>English\<option value="es"\>Espanol\<\/select\>\<\/form\>';
				oDivHtml.update(sLangDropdown);
				oDivHtml._bBeenHereOnce = true;
			}
		};
		oElementTarget.fncShrunk();
	}
	this._Pod_CustomizeColors = function(oTemplateNode, oElementTarget, sPrevContentHeader, sPrevContent, sPrevContentFooter, oOriginalTemplateNode, bIsRelatedType, sFileGuid){
		var bNoTitleBar = false;
		if(typeof oElementTarget.getChildElementById("divTitleBar") == "undefined"){
			bNoTitleBar = true;
		}
		else{
			//oElementTarget.showExpandShrinkControls();
		}
		var oDivHtml = new Element("div");
		oDivHtml.addClassName("cssDivPodSansScrollbar");
		oElementTarget.getChildElementById("divContent").appendChild(oDivHtml);
		if(bNoTitleBar == false){
			if(oTemplateNode.component.hidden){
				if(oTemplateNode.component.hidden != "true"){
					oElementTarget.getChildElementById("divTitleBar").getChildElementById("divTitleBarTitle").update(oTemplateNode.component.text.toUpperCase());
				}
			}
			else{
				oElementTarget.getChildElementById("divTitleBar").getChildElementById("divTitleBarTitle").update(oTemplateNode.component.text.toUpperCase());
			}
		}
		oElementTarget.fncExpanded = function(){
			//oDivHtml.setStyle({overflow: "auto"});
			/*if(Prototype.Browser.IE == true && parseInt(Prototype.Browser.Version) < 8){
				oDivHtml.setStyle({
					height: "461px",
					width: "644px"
				});
			}*/
			//oDivHtml.update("<p class='pods_p_header0'>"+oTemplateNode.component[1].text+"</p>");
		};
		oElementTarget.fncShrunk = function(){
			//oDivHtml.setStyle({overflow: "hidden"});
			/*if(Prototype.Browser.IE == true && parseInt(Prototype.Browser.Version) < 8){
				oDivHtml.setStyle({
					height: "214px",
					width: "312px"
				});
			}*/
			//oDivHtml.update("<p class='pods_p_header0'>"+oTemplateNode.component[1].text+"</p>");
			var n=0;
			var sH = "197px";
			if(Prototype.Browser.IE == true && parseInt(Prototype.Browser.Version) == 6){
				sH = "206px";
			}
			var sChipWidth = "28px";
			var iPaletteCount = 0;
			for(var p in window._oColors.colours.palette){
				iPaletteCount++;
			}
			if(iPaletteCount == 2){
				sChipWidth = "144px";
			}
			if(iPaletteCount == 11){
				sChipWidth = "25px";
			}
			for(var p in window._oColors.colours.palette){
				var sColor = "#"+window._oColors.colours.palette[p].config.chip_colors.color.hex_value;
				var oDiv = window.document.createElement("div");
				var sMarginRight = "1px";
				$(oDiv).setAttribute("id", "divSwatch_"+n);
				if(n == window._oColors.colours.palette.length-1){
					sMarginRight = "0px";
				}
				oDiv.setStyle({
					backgroundColor: sColor,
					position: "relative",
					cssFloat: "left",
					marginRight:sMarginRight,
					top:"0px",
					height: "179px",
					width: sChipWidth
				});
				oDivHtml.appendChild(oDiv);
				oDiv._sPaletteId = p;
				this.swatchOnMousedown = function(){
					setColorPalette(this._sPaletteId, true, true);
				}
				Event.observe(oDiv, "mousedown", this.swatchOnMousedown.bindAsEventListener(oDiv));
				n++;
			}
		};
		oElementTarget.fncShrunk();
		//oElementTarget.titleBarShadeExpand();
	}
	this._Pod_CustomizeText = function(oTemplateNode, oElementTarget, sPrevContentHeader, sPrevContent, sPrevContentFooter, oOriginalTemplateNode, bIsRelatedType, sFileGuid){
		var bNoTitleBar = false;
		if(!oElementTarget.getChildElementById("divTitleBar")){
			bNoTitleBar = true;
		}
		else{
			//oElementTarget.showExpandShrinkControls();
		}
		var oDivHtml = new Element("div");
		if(Prototype.Browser.IE == true && parseInt(Prototype.Browser.Version) == 6){
			oDivHtml.addClassName("cssDivPodWithScrollbarIE6");
		}
		else{
			oDivHtml.addClassName("cssDivPodWithScrollbar");
		}
		oElementTarget.getChildElementById("divContent").appendChild(oDivHtml);
		if(bNoTitleBar == false){
			if(oTemplateNode.component.hidden){
				if(oTemplateNode.component.hidden != "true"){
					oElementTarget.getChildElementById("divTitleBar").getChildElementById("divTitleBarTitle").update(oTemplateNode.component.text.toUpperCase());
				}
			}
			else{
				oElementTarget.getChildElementById("divTitleBar").getChildElementById("divTitleBarTitle").update(oTemplateNode.component.text.toUpperCase());
			}
		}
		oElementTarget.fncExpanded = function(){
			oDivHtml.setStyle({overflow: "auto"});
			if(Prototype.Browser.IE == true && parseInt(Prototype.Browser.Version) < 8){
				oDivHtml.setStyle({
					height: "463px",
					width: "648px"
				});
			}
			//oDivHtml.update("<p class='pods_p_header0'>"+oTemplateNode.component[1].text+"</p>");
		};
		oElementTarget.fncShrunk = function(){
			oDivHtml.setStyle({overflow: "hidden"});
			if(Prototype.Browser.IE == true && parseInt(Prototype.Browser.Version) < 8){
				oDivHtml.setStyle({
					height: "215px",
					width: "314px"
				});
			}
			//oDivHtml.update("<p class='pods_p_header0'>"+oTemplateNode.component[1].text+"</p>");
		};
		oElementTarget.fncShrunk();
	}
	this._Pod_CustomizeTheme = function(oTemplateNode, oElementTarget, sPrevContentHeader, sPrevContent, sPrevContentFooter, oOriginalTemplateNode, bIsRelatedType, sFileGuid){
		var bNoTitleBar = false;
		if(!oElementTarget.getChildElementById("divTitleBar")){
			bNoTitleBar = true;
		}
		else{
			//oElementTarget.showExpandShrinkControls();
		}
		var oDivHtml = new Element("div");
		if(Prototype.Browser.IE == true && parseInt(Prototype.Browser.Version) == 6){
			oDivHtml.addClassName("cssDivPodWithScrollbarIE6");
		}
		else{
			oDivHtml.addClassName("cssDivPodWithScrollbar");
		}
		oElementTarget.getChildElementById("divContent").appendChild(oDivHtml);
		if(bNoTitleBar == false){
			if(oTemplateNode.component.hidden){
				if(oTemplateNode.component.hidden != "true"){
					oElementTarget.getChildElementById("divTitleBar").getChildElementById("divTitleBarTitle").update(oTemplateNode.component.text.toUpperCase());
				}
			}
			else{
				oElementTarget.getChildElementById("divTitleBar").getChildElementById("divTitleBarTitle").update(oTemplateNode.component.text.toUpperCase());
			}
		}
		oElementTarget.fncExpanded = function(){
			
		};
		
		oElementTarget.fncShrunk = function(){
			//var sColor = "#"+window._oColors.colours.palette[window._sColorPaletteId].pods.main_rollover.hex_value;
			var sColor ="#ffffff";
			for(var i=0; i<window._oThemes.themes.theme.length; i++){
				var oDiv = new Element("div");
				var sMarginRight = "27px";
				if(i == window._oThemes.themes.theme.length-1){
					sMarginRight = "0px";
				}
				oDiv.setAttribute("id", "divThemeThumb_"+i);
				oDivHtml.appendChild(oDiv);
				oDiv.setStyle({
					backgroundColor:sColor,
					top:"9px",
					position:"relative",
					cssFloat:"left",
					marginRight:sMarginRight,
					height:"198px",
					width:"304px"
				});
				oDiv._iThemeId = i;
				oDiv.update("<img src='"+getPathPrefix()+"_assets/themes/"+window._oThemes.themes.theme[i].id+"/images/themethumbnail.jpg"+"' alt='"+window._oThemes.themes.theme[i].title+"' id='wraparound_left'/><span class='pods_p_text0_ffffff'>"+window._oThemes.themes.theme[i].title+"</span>");
				this.themeThumbOnMousedown = function(){
					var bThemeIdIsIndex = true;
					setTheme(this._iThemeId, bThemeIdIsIndex, true, true);
				}
				Event.observe(oDiv, "mousedown", this.themeThumbOnMousedown.bindAsEventListener(oDiv));
			}
		};
		oElementTarget.fncShrunk();
	}
	this._Pod_ProfileEditor = function(oTemplateNode, oElementTarget, sPrevContentHeader, sPrevContent, sPrevContentFooter, oOriginalTemplateNode, bIsRelatedType, sFileGuid){
		var bNoTitleBar = false;
		if(!oElementTarget.getChildElementById("divTitleBar")){
			bNoTitleBar = true;
		}
		else{
			//oElementTarget.showExpandShrinkControls();
		}
		var oDivHtml = window.document.createElement("div");
		$(oDivHtml).setAttribute("id", "divHtml_0");
		if(Prototype.Browser.IE == true && parseInt(Prototype.Browser.Version) < 8){
			oDivHtml.setStyle({
				position: "absolute",
				marginLeft: "8px",
				paddingRight: "15px",
				left: "0px",
				top: "0px",
				height: "214px",
				width: "312px",
				overflow: "auto",
				wordWrap: "break-word",
				overflowX: "hidden"
			});
			iElipsisAmount = 390;
		}
		else{
			oDivHtml.setStyle({
				position: "relative",
				marginLeft: "8px",
				paddingRight: "15px",
				left: "0px",
				top: "0px",
				height: "100%",
				overflow: "auto",
				wordWrap: "break-word",
				overflowX: "hidden"
			});
		}
		oElementTarget.getChildElementById("divContent").appendChild(oDivHtml);
		if(bNoTitleBar == false){
			if(oTemplateNode.component[0].hidden){
				if(oTemplateNode.component[0].hidden != "true"){
					oElementTarget.getChildElementById("divTitleBar").getChildElementById("divTitleBarTitle").update(oTemplateNode.component[0].text.toUpperCase());
				}
			}
			else{
				oElementTarget.getChildElementById("divTitleBar").getChildElementById("divTitleBarTitle").update(oTemplateNode.component[0].text.toUpperCase());
			}
		}
		oElementTarget.fncExpanded = function(){
			//;
		};
		oElementTarget.fncShrunk = function(){
			//
		};
		oDivHtml.setStyle({overflow: "auto"});
		if(Prototype.Browser.IE == true && parseInt(Prototype.Browser.Version) < 8){
			oDivHtml.setStyle({
				height: "461px",
				width: "644px"
			});
		}
		var sContent = "<p class='pods_p_header0'>"+oTemplateNode.component[1].text+"</p></p>";
		sContent = sContent + "<form name='profile_editor' onSubmit='return false;' class='pods_p_text0'>";
		for(var i=0; i<30; i++){
			sContent = sContent + "First Name<input type='text' name='first_name' id='first_name' title='first_name' style='width:250px;left:96px;position:relative;'><br/>";
		}
		sContent = sContent + "</form>";
		oDivHtml.update(sContent);
		function onValueChange(el){
  			alert(el.id);
		}
		// Observe changes of a form element
		new Form.Element.EventObserver('first_name', onValueChange);
		// Observer changes form-wide
		//new Form.EventObserver('myFormId', handleValueChange);
	}
	/*this._Pod_Wordpress = function(oTemplateNode, oElementTarget, sFileGuid){
		var iPodWidth = 322;
		var iPodHeight = 216;
		var iGutterVert = 10+21; // 21 for phantom title bar
		var iGutterHorz = 10;
		var defaultWidthFactor = oTemplateNode.defaultWidthFactor;
		var defaultHeightFactor = oTemplateNode.defaultHeightFactor;
		iPodWidth = (defaultWidthFactor*iPodWidth)+((defaultWidthFactor-1)*iGutterHorz);
		iPodHeight = (defaultHeightFactor*iPodHeight)+((defaultHeightFactor-1)*iGutterVert);
		var oDiv = oElementTarget;
		oDiv._iDefaultWidthFactor = parseInt(oTemplateNode.defaultWidthFactor);
		oDiv._iDefaultHeightFactor = parseInt(oTemplateNode.defaultHeightFactor);
		oDiv._iMinWidthFactor = parseInt(oTemplateNode.minWidthFactor);
		oDiv._iMinHeightFactor = parseInt(oTemplateNode.minHeightFactor);
		oDiv._iMaxWidthFactor = parseInt(oTemplateNode.maxWidthFactor);
		oDiv._iMaxHeightFactor = parseInt(oTemplateNode.maxHeightFactor);
		oDiv._bDisableExpandShrink = oTemplateNode.disableExpandShrink == "true" ? true : false;
		oDiv._bDisableFreeResize = oTemplateNode.disableFreeResize == "true" ? true : false;
		
		oDiv._iOrigWidth = iPodWidth;
		oDiv._iOrigHeight = iPodHeight;
		
		oDiv._width = iPodWidth;
		oDiv._height = iPodHeight;
		
		oElementTarget.getChildElementById("divTitleBar").getChildElementById("divTitleBarTitle").update(oTemplateNode.component[0].text);
		oElementTarget.setStyle({
			height: oTemplateNode.enableExpandToBottom == "true" ? "100%" : iPodHeight,
			width: iPodWidth
		});
		var oIframe = window.document.createElement("IFRAME");
		oIframe.setAttribute("src", oTemplateNode.component[1].wpUrl);
		oIframe.setAttribute("name", "iframe_0");
		oIframe.setAttribute("width", "100%");
		oIframe.setAttribute("height", "100%");
		oIframe.setAttribute("align", "top");
		oIframe.setAttribute("frameBorder", 0);
		oIframe.setAttribute("scrolling", "no");
		oElementTarget.appendChild(oIframe);
		oElementTarget.parentNode._PodsBroadcaster.broadcastMessage("onReorderPodsBroadcasted", {iWidth:getBrowserWidth(), iHeight:0, bNoAnim:true});
	}*/
	this._Pod_Combiner = function(oTemplateNode, oElementTarget, sPrevContentHeader, sPrevContent, sPrevContentFooter, oOriginalTemplateNode, bIsRelatedType, sFileGuid){
		var oDivHtml = window.document.createElement("div");
		var iPodWidth = 324;
		var iPodHeight = 217;
		var iGutterVert = 10+21; // 21 for phantom title bar
		var iGutterHorz = 10;
		var iRow = 0;
		var iCol = 0;
		var iGutterVertOffset = 0;
		var iGutterHorzOffset = 0;
		var iLayoutGridVacancies = (parseInt(oTemplateNode.defaultWidthFactor)) * (parseInt(oTemplateNode.defaultHeightFactor));
		var iItemsToCreate = 0;
		var aryRequestFunc = new Array();
		$(oDivHtml).setAttribute("id", "divHtml_0");
		oElementTarget.getChildElementById("divContent").appendChild(oDivHtml);
		oElementTarget.getChildElementById("divTitleBar").getChildElementById("divTitleBarTitle").update(oTemplateNode.component[0].text.toUpperCase());
		//oDivHtml.update("<p class='pods_rss_desc'>Loading layout...</p>");
		new Ajax.Request(getJsonViaGetProxyUrl(oTemplateNode.component[1].requestAreaXml), {method:'get',
			onSuccess: function(transport){
				var oJson = eval('('+transport.responseText+')');
				createTemplateLayout(oJson);
			},
			onFailure: function(){
				alert('Sorry, the server seems to be down. Please try again later.');
			}
		});
		var createTemplateLayout = function(oJson){	
			oDivHtml.update();
			if(!oJson.xml.area[0]){
				oJson.xml.area = [oJson.xml.area];
			}
			iItemsToCreate = oJson.xml.area.length;
			if(iItemsToCreate > iLayoutGridVacancies){
				iItemsToCreate = iLayoutGridVacancies; // if there's more data than space allows
			}
			if(oTemplateNode.createBackdropInColumns && oTemplateNode.createBackdropInColumns != "empty"){
				var aryBackdrops = oTemplateNode.createBackdropInColumns.split(",");
				
				for(var i=0; i<aryBackdrops.length; i++){
					var oDivBg = window.document.createElement("div");
					$(oDivBg).setAttribute("id", "divBg_"+i);
					oDivBg.setStyle({
						position: "absolute",
						backgroundColor: "#f3f3f3",
						left: parseInt(aryBackdrops[i])*(iPodWidth+10),
						width: iPodWidth,
						height: ((iPodHeight+31)*(parseInt(oTemplateNode.defaultHeightFactor)))-iGutterVert
					});
					oDivHtml.appendChild(oDivBg);
				}
			}
			for(var i=0; i<iItemsToCreate; i++){
				var oDivElement = window.document.createElement("div");
				if(iCol == 0){
					iGutterHorzOffset = 0;
				}
				else{
					iGutterHorzOffset = iGutterHorz;
				}
				if(iRow == 0){
					iGutterVertOffset = 0;
				}
				else{
					iGutterVertOffset = iGutterVert;
				}
				var iPodWidthFactor = 1;
				if(oJson.xml.area[i].podWidthFactor){
					iPodWidthFactor = oJson.xml.area[i].podWidthFactor;
				}
				$(oDivElement).setAttribute("id", "oDivElement_"+i);
				oDivElement.setStyle({
					position: "absolute",
					top: (iPodHeight+iGutterVertOffset)*iRow,
					left: ((iPodWidth+iGutterHorzOffset)*iPodWidthFactor)*iCol,
					width: iPodWidth,
					height: iPodHeight
				});
				if(iPodWidth*iCol >= iPodWidth*(parseInt(oTemplateNode.defaultWidthFactor)-1)){
					iRow++;
					iCol = 0;
				}
				else{
					iCol++;
				}
				oDivHtml.appendChild(oDivElement);
				var oDivContent = window.document.createElement("div");
				$(oDivContent).setAttribute("id", "divContent");
				oDivContent.setStyle({
					width: (iPodWidth*iPodWidthFactor)+(iGutterHorzOffset*(iPodWidthFactor-1)),
					height: iPodHeight
				});
				oDivElement.appendChild(oDivContent);
				aryRequestFunc[i] = function(oJson, oDivElement, i){
					new Ajax.Request(getJsonViaGetProxyUrl(oJson.xml.area[i].requestXml), {method:'get',
						onSuccess: function(transport){
							var oJson = eval('('+transport.responseText+')');
							window.oTemplates[oJson.xml.template.attachId](oJson.xml.template, oDivElement);
						},
						onFailure: function(){
							alert('Sorry, the server seems to be down. Please try again later.');
						}
					});
				}
				if(oJson.xml.area[i].template){
					window.oTemplates[oJson.xml.area[i].template.attachId](oJson.xml.area[i].template, oDivElement);
				}
				else{
					aryRequestFunc[i](oJson, oDivElement, i);
				}
				//alert($H(oAjaxRequest.onSuccess).inspect());
			}
		}
		//oElementTarget.parentNode._PodsBroadcaster.broadcastMessage("onReorderPodsBroadcasted", {iWidth:getBrowserWidth(), iHeight:0, bNoAnim:true});
	}
	
	
	this._Beakerbeat_Pod_Test = function(oTemplateNode, oElementTarget, sPrevContentHeader, sPrevContent, sPrevContentFooter, oOriginalTemplateNode, bIsRelatedType, sFileGuid){
		var bNoTitleBar = false;
		if(!oElementTarget.getChildElementById("divTitleBar")){
			bNoTitleBar = true;
		}
		else{
			//oElementTarget.showExpandShrinkControls();
		}
		var sMainRollOverColor = "#"+window._oColors.colours.palette[window._sColorPaletteId].pods.main_rollover.hex_value;
		var oDivHtml = new Element("div");
		var sNestId = "";
		if(oElementTarget.ancestors()[1].id.substr(0,10) == "divPodArea"){
			sNestId = "_0";
		}
		
		if(Prototype.Browser.IE == true && parseInt(Prototype.Browser.Version) == 6){
			oDivHtml.addClassName("cssDivPodWithScrollbarIE6");
		}
		else{
			oDivHtml.addClassName("cssDivPodWithScrollbar");
		}
		oDivHtml.setAttribute("id", "divHtml_0"+sNestId);
		oElementTarget.getChildElementById("divContent").appendChild(oDivHtml);
		if(bNoTitleBar == false){
			if(typeof oTemplateNode.component[0].hidden != "undefined"){
				if(oTemplateNode.component[0].hidden != "true"){
					oElementTarget.getChildElementById("divTitleBar").getChildElementById("divTitleBarTitle").update(oTemplateNode.component[0].text.toUpperCase());
				}
			}
			else{
				oElementTarget.getChildElementById("divTitleBar").getChildElementById("divTitleBarTitle").update(oTemplateNode.component[0].text.toUpperCase());
			}
		}
		oElementTarget.fncExpanded = function(){
			/*oDivHtml.setStyle({overflow: "auto"});
			if(Prototype.Browser.IE == true && parseInt(Prototype.Browser.Version) < 8){
				oDivHtml.setStyle({
					height: 461,
					width: 644
				});
			}
			oDivHtml.update("<p class='pods_p_header0'>"+oTemplateNode.component[1].text+"</p>"+"<p class='pods_p_header1'>"+oTemplateNode.component[2].text+"</p>"+"<p class='pods_p_text0'>"+oTemplateNode.component[3].text+"</p>");
			oDivHtml.setStyle({overflow: "auto"});*/
		};
		oElementTarget.fncShrunk = function(){
			/*oDivHtml.setStyle({overflow: "hidden"});
			if(Prototype.Browser.IE == true && parseInt(Prototype.Browser.Version) < 8){
				oDivHtml.setStyle({
					height: 214,
					width: 312
				});
			}
			oDivHtml.update("<p class='pods_p_header0'>"+oTemplateNode.component[1].text+"</p>"+"<p class='pods_p_header1'>"+oTemplateNode.component[2].text+"</p>"+"<p class='pods_p_text0'>"+oTemplateNode.component[3].text.substring(0, iElipsisAmount)+" <a href='javascript:window.oCurrentlyFocusedObject.titleBarExpandShrink()'><font color='"+sMainRollOverColor+"'>"+sEllipsis+"</font></a>"+"</p>");
			oDivHtml.setStyle({overflow: "auto"});*/
		};
		
		this.onMouseUp = function(){
			window.socketOutSend("hello world");
		}
		Event.observe(oDivHtml, "mouseup", this.onMouseUp.bindAsEventListener(this));
	
		oElementTarget.onSocketConnectSystem = function(o){
			oDivHtml.update("Connected.");
		}
		oElementTarget.onSocketDisconnectSystem = function(o){
			oDivHtml.update("This service has disconnected.");
		}
		oElementTarget.onSocketDataBeakerbeat = function(o){
			oDivHtml.update(o.client.id+" - "+o.message.obj.text);
			/*message = function(obj){
        		var sMessage = "";
        		if("announcement" in obj){
        			sMessage = obj.announcement;
        		}
        		else{
        			sMessage = unescape(obj.message[0])+" | "+unescape(obj.message[1]);
					var sNote = sMessage.substr(8,2);
					if(sNote==oTemplateNode.component[2].value){
						this.fade({ duration: 300/1000, from: .5, to: 1 });
					}
				}
        		oDivHtml.update(sMessage);
        	}
			if ('buffer' in o.obj){ // history
          		//for(var i in o.obj.buffer){
          		//	message(o.obj.buffer[i]);
          		//}
        	}
        	else{
        		message(o.obj);
        	}*/
		}
      	window.addSocketInListener(oElementTarget, oTemplateNode.component[1].text);	
		
		
		//oDivHtml.update("<p class='pods_p_header0'>"+oTemplateNode.component[1].text+"</p>"+"<p class='pods_p_header1'>"+oTemplateNode.component[2].text+"</p>"+"<p class='pods_p_text0'>"+oTemplateNode.component[3].text.substring(0, iElipsisAmount)+" <a href='javascript:window.oCurrentlyFocusedObject.titleBarExpandShrink()'><font color='"+sMainRollOverColor+"'>"+sEllipsis+"</font></a>"+"</p>");
		oDivHtml.setStyle({overflow: "auto"});
		oElementTarget.fncShrunk();
		//alert(oTemplateNode);
		oElementTarget.titleBarShadeExpand();
	}
	
	this._Pod_Twitter__ = function(){
		var socket = io.connect("http://jalcide.local", {port:8080}); // TIP: .connect with no args does auto-discovery
  		socket.on('connect', function () {
    		socket.emit('set nickname', confirm('What is your nickname?'));
    		socket.on('ready', function () {
      			console.log('Connected !');
      			socket.emit('msg', confirm('What is your message?'));
    		});
  		});
	}
	
	
	this._Pod_Twitter = function(oTemplateNode, oElementTarget, sPrevContentHeader, sPrevContent, sPrevContentFooter, oOriginalTemplateNode, bIsRelatedType, sFileGuid){
		console.log("core_templates.js -> _Pod_Twitter Template Invoked.");
		var bNoTitleBar = false;
		if(!oElementTarget.getChildElementById("divTitleBar")){
			bNoTitleBar = true;
		}
		else{
			//oElementTarget.showExpandShrinkControls();
		}
		
		var sBgColor = "#"+window._oColors.colours.palette[window._sColorPaletteId].pods.background.hex_value;
		var sMainRollOverColor = "#"+window._oColors.colours.palette[window._sColorPaletteId].pods.main_rollover.hex_value;
		var sMainRollOutColor = "#"+window._oColors.colours.palette[window._sColorPaletteId].pods.main_rollout.hex_value;
		var sOutlineColor = "#"+window._oColors.colours.palette[window._sColorPaletteId].pods.main_rollout.hex_value;
		var sPodsTitleBarBackgroundColor = "#"+window._oColors.colours.palette[window._sColorPaletteId].pods.title_bar.background.hex_value;
		var sPodsTitleBarTitleColor = "#"+window._oColors.colours.palette[window._sColorPaletteId].pods.title_bar.title.hex_value;
		if(window._oColors.colours.palette[window._sColorPaletteId].pods.title_bar.title.hex_value.substr(0,4) == "tone"){
		sPodsTitleBarTitleColor = "#"+ window._oColors.colours.palette[window._sColorPaletteId].tones[window._oColors.colours.palette[window._sColorPaletteId].pods.title_bar.title.hex_value].hex_value;
	}
		var sMainForegroundColor = "#"+window._oColors.colours.palette[window._sColorPaletteId].main.foreground.hex_value;
		
		var oDivHtml = new Element("div");
		var sNestId = "";
		var iTweetElementHeight = 107;
		var iHistoryAtLoadAnimSpeedMultiplier = 1;
		if(typeof oTemplateNode.component[19].text != undefined){
			iHistoryAtLoadAnimSpeedMultiplier = Number(oTemplateNode.component[19].text);
		}
		var iGlobalAnimSpeedMultiplier = 1;
		if(oElementTarget.ancestors()[1].id.substr(0,10) == "divPodArea"){
			sNestId = "_0";
		}

		//oDivHtml.addClassName("cssDivPodSansScrollbar");
		
		oDivHtml.setStyle({
			marginLeft:"10px",
			marginRight:"10px",
			overflow:"hidden",
			overflowX:"hidden",
			overflowY:"hidden"
		});
		//var sH = (oElementTarget.getHeight()-40).toString()+"px";
		var sH = (Number(oTemplateNode.component[4].text)*iTweetElementHeight).toString()+"px";
		oDivHtml.makeClipping().setStyle({height:sH});
		oDivHtml.setAttribute("id", "divHtml_0"+sNestId);
		oElementTarget.getChildElementById("divContent").appendChild(oDivHtml);
		if(bNoTitleBar == false){
			if(typeof oTemplateNode.component[0].hidden != "undefined"){
				if(oTemplateNode.component[0].hidden != "true"){
					oElementTarget.getChildElementById("divTitleBar").getChildElementById("divTitleBarTitle").update(oTemplateNode.component[0].text.toUpperCase());
				}
			}
			else{
				oElementTarget.getChildElementById("divTitleBar").getChildElementById("divTitleBarTitle").update(oTemplateNode.component[0].text.toUpperCase());
			}
		}
		oElementTarget.fncExpanded = function(){
			//
		};
		oElementTarget.fncShrunk = function(){
			//
		};
		oElementTarget.onSocketConnectSystem = function(o){
			if(oElementTarget._bStartCollapsedExpandOnContentLoad == true){
				oElementTarget.titleBarShadeExpand();
			}
			oElementTarget.getChildElementById("divTitleBar").getChildElementById("divTitleBarTitle").update(oTemplateNode.component[0].text.toUpperCase());
			oElementTarget.initTwitterPart2();
			//oDivHtml.update("Connected.");
		}
		oElementTarget.onSocketDisconnectSystem = function(o){
			oElementTarget.getChildElementById("divTitleBar").getChildElementById("divTitleBarTitle").update("SERVER JUST WENT DOWN FOR MAINTENANCE");
			oElementTarget.titleBarShadeShrink();
			oElementTarget.titleBarDisableShadeExpandShrink();
			if(typeof window.destroySocket != "undefined" && typeof window.destroySocket != "unknown" && typeof window.destroySocket != "null"){
				window.destroySocket();
			}
			window.retryServer(oElementTarget, oTemplateNode.component[1].text, 5000);
		}
		oElementTarget.postSlide = function(oArgs){
			var bIsForHistory = false;
			if(typeof oArgs.bIsForHistory != "undefined"){
				bIsForHistory = oArgs.bIsForHistory;
			}
			var iRateMultiplier = 1;
			if(bIsForHistory == true){
				iRateMultiplier = iHistoryAtLoadAnimSpeedMultiplier;
			}
			//setTimeout(oElementTarget.doFade, Number(oTemplateNode.component[7].text)*iRateMultiplier, oArgs); // postFadeInPause
			setTimeout(function(){oElementTarget.doFade(oArgs); oArgs = null},Number(oTemplateNode.component[7].text)*iRateMultiplier); // "closure" technique to get around ie not supporting the settimeout 3rd argurment - the "= null" thing avoids a possible memory leak
		}
		oElementTarget.doFade = function(oArgs){
			var bIsForHistory = false;
			if(typeof oArgs.bIsForHistory != "undefined"){
				bIsForHistory = oArgs.bIsForHistory;
			}
			var iRateMultiplier = 1;
			var oDiv = oArgs.oDiv;
			if(bIsForHistory == true){
				iRateMultiplier = iHistoryAtLoadAnimSpeedMultiplier;
			}
			oDiv.fade({ duration: .2, from: 0, to: 1 });
			//setTimeout(oElementTarget.postFade, 500*iRateMultiplier, oArgs); // hardcoded to be lengh of fade, will remove this when tween is working for opacity (it will trigger postFade)
			setTimeout(function(){oElementTarget.postFade(oArgs); oArgs = null},500*iRateMultiplier);
		}
		oElementTarget.postFade = function(oArgs){
			var bIsForHistory = false;
			if(typeof oArgs.bIsForHistory != "undefined"){
				bIsForHistory = oArgs.bIsForHistory;
			}
			var iRateMultiplier = 1;
			if(bIsForHistory == true){
				iRateMultiplier = iHistoryAtLoadAnimSpeedMultiplier;
			}
			//setTimeout(oElementTarget.lastPauseBeforePop, Number(oTemplateNode.component[8].text)*iRateMultiplier, oArgs); // more to pop
			setTimeout(function(){oElementTarget.lastPauseBeforePop(oArgs); oArgs = null},Number(oTemplateNode.component[8].text)*iRateMultiplier);
		}
		oElementTarget.lastPauseBeforePop = function(oArgs){
			var bIsForHistory = false;
			if(typeof oArgs.bIsForHistory != "undefined"){
				bIsForHistory = oArgs.bIsForHistory;
			}
			oElementTarget._bTweetPausesComplete = true;
			if(oElementTarget._aryTweetsStack.length > 0){
				oElementTarget.popTweetStack(oArgs); // more to pop
			}
		}
		oElementTarget.popTweetStack = function(oArgs){
			var bIsForHistory = false;
			if(typeof oArgs.bIsForHistory != "undefined"){
				bIsForHistory = oArgs.bIsForHistory;
			}
			var iRateMultiplier = 1;
			if(bIsForHistory == true){
				iRateMultiplier = iHistoryAtLoadAnimSpeedMultiplier;
			}
			if(typeof oElementTarget._aryTweetsStack != "undefined"){
				if(oElementTarget._aryTweetsStack.length > 0){
					oElementTarget._bTweetPausesComplete = false;
					if(typeof oElementTarget._iTweetPopCount == "undefined"){
						oElementTarget._iTweetPopCount = 0;
						oElementTarget._bTweetDisplayFilled = false;
						oElementTarget._bTweetPausesComplete = true;
						
						oDivHtml.update();
					}
					else{
						oElementTarget._iTweetPopCount++;
					}
					var oTweet = oElementTarget._aryTweetsStack.pop();
					if(oElementTarget._bTweetDisplayFilled == true){
						oDivHtml.getChildElementById("divTweet_"+(oElementTarget._iTweetPopCount-(Number(oTemplateNode.component[4].text)+1)).toString()).remove();
					}
					var oDivTweet = new Element("div");
					//alert(styleStrToNum($("divContentArea_0").getStyle("width")));
					oDivTweet.setAttribute("id", "divTweet_"+oElementTarget._iTweetPopCount); 
					oDivTweet.setStyle({
						background:sBgColor,
						overflow:"hidden",
						overflowX:"hidden",
						overflowY:"hidden",
						marginTop:"0px",
						marginBottom:"0px",
						width:"100%",
						opacity:"0",
						height:"0px"
					});
					var oDivTweetInsideContainer = new Element("div");
					//alert(styleStrToNum($("divContentArea_0").getStyle("width")));
					oDivTweetInsideContainer.setAttribute("id", "divTweetInsideContainer"); 
					oDivTweetInsideContainer.setStyle({
						fontFamily:"verdana",
						fontSize:"13px",
						fontWeight:"normal",
						color:sMainRollOverColor,
						lineHeight:"normal",
						textAlign:"left",
						verticalAlign:"text-top",
						overflow:"hidden",
						overflowX:"hidden",
						overflowY:"hidden",
						marginTop:"0px",
						marginBottom:"0px",
						width:"100%",
						height:"100%"
					});
					if(oElementTarget._iTweetPopCount > 0){
						oDivHtml.insertBefore(oDivTweet, oDivHtml.getChildElementById("divTweet_"+(oElementTarget._iTweetPopCount-1)));
						oDivTweet.appendChild(oDivTweetInsideContainer);
						oDivTweet.tween("height", iTweetElementHeight, Number(oTemplateNode.component[10].text)*iRateMultiplier, "easeInOutCirc", "postSlide", oElementTarget, 100, {"oDiv":oDivTweet,"bIsForHistory":bIsForHistory});
					}
					else{
						oDivHtml.appendChild(oDivTweet);
						oDivTweet.setStyle({height:(iTweetElementHeight.toString()+"px")});
						oDivTweet.appendChild(oDivTweetInsideContainer);
						oElementTarget.postSlide({"oDiv":oDivTweet,"bIsForHistory":bIsForHistory});
					}
					if(oElementTarget._iTweetPopCount > Number(oTemplateNode.component[4].text)-0 && oElementTarget._bTweetDisplayFilled == false){
						oDivHtml.getChildElementById("divTweet_"+((oElementTarget._iTweetPopCount-1)-Number(oTemplateNode.component[4].text))).remove();
						oElementTarget._bTweetDisplayFilled = true;
						
					}
					var sUser = "twitter user unknown";
					if(typeof oTweet.from_user != "undefined"){
						sUser = oTweet.from_user.toLowerCase();
					}
					if(typeof oTweet.user != "undefined"){
						sUser = oTweet.user.screen_name.toLowerCase();
					}
					//href\s*=\s*['"]?)?((?:http://|ftp://|mailto:)?[^.,<>"'\s\r\n\t]+(?:\.(?![.<>"'\s\r\n])[^.,!<>"'\s\r\n\t]+)+)
					
					//finding urls in full text: \b(https?|ftp|file)://\S+
					
					// replacement text: <a href="$&">$&</a>
					
					oDivTweetInsideContainer.update("<a href='http://twitter.com/#!/"+sUser+"' target='_blank'>"+"@"+sUser+"</a>"+"<br/>"+"<span class='pods_general_copy_color'>"+replaceTwitterHashtagsWithLinks(replaceURLWithHTMLLinks(oTweet.text))+"</span>");
				}
			}
		}
		oElementTarget.onSocketDataTwitterHistory = function(o){
			if(typeof oElementTarget._aryTweetsStack == "undefined"){
				oElementTarget._aryTweetsStack = new Array();
			}
			if(typeof oElementTarget._aryTweetTextHistory == "undefined"){
				oElementTarget._aryTweetTextHistory = new Array();
			}
			var bRemoveDuplicatesInHistory = oTemplateNode.component[16].text;
			for(var i in o.message.obj.tweets){
				if(typeof o.message.obj.tweets[i].text != "undefined"){
					if(bRemoveDuplicatesInHistory == "false"){
						oElementTarget._aryTweetsStack.push(o.message.obj.tweets[i]);
					}
					else{
						if(oElementTarget._aryTweetTextHistory.length > 0){
							var bFoundDup = false;
							for(var j=0; j < oElementTarget._aryTweetTextHistory.length; j++){
								if(o.message.obj.tweets[i].text == oElementTarget._aryTweetTextHistory[j]){
									bFoundDup = true;
								}
							}
							if(bFoundDup == false){
								oElementTarget._aryTweetsStack.push(o.message.obj.tweets[i]);
							}
						}
						else{
							oElementTarget._aryTweetsStack.push(o.message.obj.tweets[i]);
						}
						oElementTarget._aryTweetTextHistory.push(o.message.obj.tweets[i].text);
					}
				}
			}
			oElementTarget.popTweetStack({"bIsForHistory":true});
		}
		oElementTarget.onSocketDataTwitter = function(o){
			if(typeof oElementTarget._aryTweetsStack == "undefined"){
				oElementTarget._aryTweetsStack = new Array();
			}
			if(typeof oElementTarget._aryTweetTextHistory == "undefined"){
				oElementTarget._aryTweetTextHistory = new Array();
			}
			if(typeof o.message.obj.tweet.text != "undefined"){
				var bRemovalFilterTextFound = false;
				//for(oTemplateNode.component[26].text){
				//
				//}
				if(bRemovalFilterTextFound == false){
					if(oElementTarget._aryTweetsStack.length == 0){ // if tweets all caught up
						oElementTarget._aryTweetsStack.push(o.message.obj.tweet);
						if(oElementTarget._bTweetPausesComplete == true){
							oElementTarget.popTweetStack({"bIsForHistory":false});
						}
					}
					else{
						oElementTarget._aryTweetsStack.unshift(o.message.obj.tweet);	
					}
				}
			}
			//oDivHtml.update("<span class='pods_rss_desc'/>"+o.message.obj.tweet.text+"</span><br/><span class='pods_rss_title'>- <a href='http://twitter.com/"+o.message.obj.tweet.user.screen_name.toUpperCase()+"' target='_blank'><font color='"+sMainRollOverColor+"'>"+o.message.obj.tweet.user.screen_name.toUpperCase()+" &#8594;</font></a><br/><br/></span>");
		}
		oElementTarget.onSocketDataTwitterCallback = function(o){
			//alert("onCallback -- okay to unhide now");
		}
		oElementTarget.initTwitterPart2 = function(){
			if(oTemplateNode.component[13].text == "true"){
					var oPayload = new Object();
					oPayload.rpc = new Object();
					oPayload.rpc.params = new Object();
					oPayload.source = new Object();
					oPayload.source.name = "Twitter";
					oPayload.source.classification = "Twitter";
					oPayload.source.type = "payload";
					oPayload.source.callbackTarget = oElementTarget.id;
					oPayload.source.callbackMethod = "TwitterCallback";
					oPayload.rpc.method = "SetTrack";
					var ary = ["#labbpartner"];
					if(typeof oTemplateNode.component[14] != "undefined"){
						ary = oTemplateNode.component[14].text.split(",");
					}
					oPayload.rpc.params.trackitems = ary;
					if(typeof oTemplateNode.component[15] != "undefined"){
						oPayload.rpc.params.trackModeNumberOfHistoryToFetchAtLoad = oTemplateNode.component[15].text;
					}
					oPayload.message = new Object();
					oPayload.message.obj = new Object();
					var sJsonPayload = JSON.stringify(oPayload);
					window.socketOutSend(sJsonPayload);
				}
				if(oTemplateNode.component[15].text == "true"){
					var oPayload = new Object();
					oPayload.rpc = new Object();
					oPayload.rpc.params = new Object();
					oPayload.source = new Object();
					oPayload.source.name = "Twitter";
					oPayload.source.classification = "Twitter";
					oPayload.source.type = "payload";
					oPayload.source.callbackTarget = oElementTarget.id;
					oPayload.source.callbackMethod = "TwitterCallback";
					oPayload.rpc.method = "SetFollow";
					var ary = ["labbpartner"];
					if(typeof oTemplateNode.component[16] != "undefined"){
						ary = oTemplateNode.component[16].text.split(",");
					}
					oPayload.rpc.params.followitems = ary;
					if(typeof oTemplateNode.component[18] != "undefined"){
						oPayload.rpc.params.followModeNumberOfHistoryToFetchAtLoad = oTemplateNode.component[18].text;
					}
					oPayload.message = new Object();
					oPayload.message.obj = new Object();
					var sJsonPayload = JSON.stringify(oPayload);
					window.socketOutSend(sJsonPayload);
				}
		}
		oElementTarget.initTwitter = function(){
			if(oTemplateNode.component[13].text == "true" || oTemplateNode.component[15].text == "true"){
				//var oCb = {"oDiv":oElementTarget, "oFnc":oElementTarget.initTwitterPart2, "oArgs":{}};
				window.addSocketInListener(oElementTarget, oTemplateNode.component[1].text);
			}
		}
		oElementTarget.initTwitter();
		//oElementTarget.fncShrunk();
		//oElementTarget.titleBarShadeExpand();
		
	}
	
	this._Pod_BasicChat = function(oTemplateNode, oElementTarget, sPrevContentHeader, sPrevContent, sPrevContentFooter, oOriginalTemplateNode, bIsRelatedType, sFileGuid){
		var bNoTitleBar = false;
		if(!oElementTarget.getChildElementById("divTitleBar")){
			bNoTitleBar = true;
		}
		else{
			//oElementTarget.showExpandShrinkControls();
		}
		var sMainRollOverColor = "#"+window._oColors.colours.palette[window._sColorPaletteId].pods.main_rollover.hex_value;
		var oDivHtml = new Element("div");
		var sNestId = "";
		if(oElementTarget.ancestors()[1].id.substr(0,10) == "divPodArea"){
			sNestId = "_0";
		}
		
		if(Prototype.Browser.IE == true && parseInt(Prototype.Browser.Version) == 6){
			oDivHtml.addClassName("cssDivPodWithScrollbarIE6");
		}
		else{
			oDivHtml.addClassName("cssDivPodWithScrollbar");
		}
		oDivHtml.setAttribute("id", "divHtml_0"+sNestId);
		oElementTarget.getChildElementById("divContent").appendChild(oDivHtml);
		if(bNoTitleBar == false){
			if(typeof oTemplateNode.component[0].hidden != "undefined"){
				if(oTemplateNode.component[0].hidden != "true"){
					oElementTarget.getChildElementById("divTitleBar").getChildElementById("divTitleBarTitle").update(oTemplateNode.component[0].text.toUpperCase());
				}
			}
			else{
				oElementTarget.getChildElementById("divTitleBar").getChildElementById("divTitleBarTitle").update(oTemplateNode.component[0].text.toUpperCase());
			}
		}
		oElementTarget.fncExpanded = function(){
			/*oDivHtml.setStyle({overflow: "auto"});
			if(Prototype.Browser.IE == true && parseInt(Prototype.Browser.Version) < 8){
				oDivHtml.setStyle({
					height: 461,
					width: 644
				});
			}
			oDivHtml.update("<p class='pods_p_header0'>"+oTemplateNode.component[1].text+"</p>"+"<p class='pods_p_header1'>"+oTemplateNode.component[2].text+"</p>"+"<p class='pods_p_text0'>"+oTemplateNode.component[3].text+"</p>");
			oDivHtml.setStyle({overflow: "auto"});*/
		};
		oElementTarget.fncShrunk = function(){
			/*oDivHtml.setStyle({overflow: "hidden"});
			if(Prototype.Browser.IE == true && parseInt(Prototype.Browser.Version) < 8){
				oDivHtml.setStyle({
					height: 214,
					width: 312
				});
			}
			oDivHtml.update("<p class='pods_p_header0'>"+oTemplateNode.component[1].text+"</p>"+"<p class='pods_p_header1'>"+oTemplateNode.component[2].text+"</p>"+"<p class='pods_p_text0'>"+oTemplateNode.component[3].text.substring(0, iElipsisAmount)+" <a href='javascript:window.oCurrentlyFocusedObject.titleBarExpandShrink()'><font color='"+sMainRollOverColor+"'>"+sEllipsis+"</font></a>"+"</p>");
			oDivHtml.setStyle({overflow: "auto"});*/
		};
		
		this.onMouseUp = function(){
			window.socketOutSend("hello world");
		}
		Event.observe(oDivHtml, "mouseup", this.onMouseUp.bindAsEventListener(this));
	
		oElementTarget.onSocketConnectSystem = function(o){
			oDivHtml.update("Connected.");
		}
		oElementTarget.onSocketDisconnectSystem = function(o){
			oDivHtml.update("This service has disconnected.");
		}
		oElementTarget.onSocketDataTwitter = function(o){
			oDivHtml.update("<span class='pods_rss_desc'/>"+o.message.obj.tweet.text+"</span><br/><span class='pods_rss_title'>- <a href='http://twitter.com/"+o.message.obj.tweet.user.screen_name.toUpperCase()+"' target='_blank'><font color='"+sMainRollOverColor+"'>"+o.message.obj.tweet.user.screen_name.toUpperCase()+" &#8594;</font></a><br/><br/></span>");
			/*message = function(obj){
        		var sMessage = "";
        		if("announcement" in obj){
        			sMessage = obj.announcement;
        		}
        		else{
        			sMessage = unescape(obj.message[0])+" | "+unescape(obj.message[1]);
					var sNote = sMessage.substr(8,2);
					if(sNote==oTemplateNode.component[2].value){
						this.fade({ duration: 300/1000, from: .5, to: 1 });
					}
				}
        		oDivHtml.update(sMessage);
        	}
			if ('buffer' in o.obj){ // history
          		//for(var i in o.obj.buffer){
          		//	message(o.obj.buffer[i]);
          		//}
        	}
        	else{
        		message(o.obj);
        	}*/
		}
		oElementTarget.onSocketDataTwitterCallback = function(o){
			//alert("onCallback");
		}
      	var oPayload = new Object();
		oPayload.source = new Object();
		oPayload.source.name = "Twitter";
		oPayload.source.classification = "Twitter";
		oPayload.source.type = "payload";
		oPayload.source.callbackTarget = oElementTarget.id;
		oPayload.source.callbackMethod = "TwitterCallback";
		oPayload.rpc = new Object();
		oPayload.rpc.method = "SetTrack";
		var aryTrack = ["#labbpartner"];
		if(typeof oTemplateNode.component[13] != "undefined"){
			aryTrack = oTemplateNode.component[13].text.split(",");
		}
		oPayload.rpc.params = aryTrack;
		oPayload.message = new Object();
		oPayload.message.obj = new Object();
		var sJsonPayload = JSON.stringify(oPayload);
      	window.socketOutSend(sJsonPayload);
      	window.addSocketInListener(oElementTarget, oTemplateNode.component[1].text);
		oDivHtml.setStyle({overflow: "auto"});
		oElementTarget.fncShrunk();
		oElementTarget.titleBarShadeExpand();
		
	}
	
	this._Pod_P = function(oTemplateNode, oElementTarget, sPrevContentHeader, sPrevContent, sPrevContentFooter, oOriginalTemplateNode, bIsRelatedType, sFileGuid){
		var bNoTitleBar = false;
		if(!oElementTarget.getChildElementById("divTitleBar")){
			bNoTitleBar = true;
		}
		else{
			//oElementTarget.showExpandShrinkControls();
		}
		var sMainRollOverColor = "#"+window._oColors.colours.palette[window._sColorPaletteId].pods.main_rollover.hex_value;
		var oDivHtml = new Element("div");
		var sNestId = "";
		if(oElementTarget.ancestors()[1].id.substr(0,10) == "divPodArea"){
			sNestId = "_0";
		}
		var iElipsisAmount = 460;
		if(oTemplateNode.component[3].charsUntilEllipsis){
			iElipsisAmount = oTemplateNode.component[3].charsUntilEllipsis
		}
		var sEllipsis = "[...]";
		var bDisableEllipsis = false;
		if(oTemplateNode.component[3].disableEllipsis){
			if(oTemplateNode.component[3].disableEllipsis.toLowerCase() == "true"){
				bDisableEllipsis = true;
				sEllipsis = "";
			}
		}
		if(Prototype.Browser.IE == true && parseInt(Prototype.Browser.Version) == 6){
			oDivHtml.addClassName("cssDivPodWithScrollbarIE6");
		}
		else{
			oDivHtml.addClassName("cssDivPodWithScrollbar");
		}
		oDivHtml.setAttribute("id", "divHtml_0"+sNestId);
		oElementTarget.getChildElementById("divContent").appendChild(oDivHtml);
		if(bNoTitleBar == false){
			if(oTemplateNode.component[0].hidden){
				if(oTemplateNode.component[0].hidden != "true"){
					oElementTarget.getChildElementById("divTitleBar").getChildElementById("divTitleBarTitle").update(oTemplateNode.component[0].text.toUpperCase());
				}
			}
			else{
				oElementTarget.getChildElementById("divTitleBar").getChildElementById("divTitleBarTitle").update(oTemplateNode.component[0].text.toUpperCase());
			}
		}
		oElementTarget.fncExpanded = function(){
			/*oDivHtml.setStyle({overflow: "auto"});
			if(Prototype.Browser.IE == true && parseInt(Prototype.Browser.Version) < 8){
				oDivHtml.setStyle({
					height: 461,
					width: 644
				});
			}
			oDivHtml.update("<p class='pods_p_header0'>"+oTemplateNode.component[1].text+"</p>"+"<p class='pods_p_header1'>"+oTemplateNode.component[2].text+"</p>"+"<p class='pods_p_text0'>"+oTemplateNode.component[3].text+"</p>");
			oDivHtml.setStyle({overflow: "auto"});*/
		};
		oElementTarget.fncShrunk = function(){
			/*oDivHtml.setStyle({overflow: "hidden"});
			if(Prototype.Browser.IE == true && parseInt(Prototype.Browser.Version) < 8){
				oDivHtml.setStyle({
					height: 214,
					width: 312
				});
			}
			oDivHtml.update("<p class='pods_p_header0'>"+oTemplateNode.component[1].text+"</p>"+"<p class='pods_p_header1'>"+oTemplateNode.component[2].text+"</p>"+"<p class='pods_p_text0'>"+oTemplateNode.component[3].text.substring(0, iElipsisAmount)+" <a href='javascript:window.oCurrentlyFocusedObject.titleBarExpandShrink()'><font color='"+sMainRollOverColor+"'>"+sEllipsis+"</font></a>"+"</p>");
			oDivHtml.setStyle({overflow: "auto"});*/
		};
		oDivHtml.update("<p class='pods_p_header0'>"+oTemplateNode.component[1].text+"</p>"+"<p class='pods_p_header1'>"+oTemplateNode.component[2].text+"</p>"+"<p class='pods_p_text0'>"+oTemplateNode.component[3].text.substring(0, iElipsisAmount)+" <a href='javascript:window.oCurrentlyFocusedObject.titleBarExpandShrink()'><font color='"+sMainRollOverColor+"'>"+sEllipsis+"</font></a>"+"</p>");
		oDivHtml.setStyle({overflow: "auto"});
		oElementTarget.fncShrunk();
		//alert(oTemplateNode);
	}
	this._Pod_IP = function(oTemplateNode, oElementTarget, sPrevContentHeader, sPrevContent, sPrevContentFooter, oOriginalTemplateNode, bIsRelatedType, sFileGuid){
		var bNoTitleBar = false;
		if(!oElementTarget.getChildElementById("divTitleBar")){
			bNoTitleBar = true;
		}
		else{
			//oElementTarget.showExpandShrinkControls();
		}
		var sMainRollOverColor = "#"+window._oColors.colours.palette[window._sColorPaletteId].pods.main_rollover.hex_value;
		var oDivHtml = new Element("div");
		if(Prototype.Browser.IE == true && parseInt(Prototype.Browser.Version) == 6){
			oDivHtml.addClassName("cssDivPodWithScrollbarIE6");
		}
		else{
			oDivHtml.addClassName("cssDivPodWithScrollbar");
		}
		var sNestId = "";
		if(oElementTarget.ancestors()[1].id.substr(0,10) == "divPodArea"){
			sNestId = "_0";
		}
		var iElipsisAmount = 135;
		if(oTemplateNode.component[2].charsUntilEllipsis){
			iElipsisAmount = oTemplateNode.component[2].charsUntilEllipsis
		}
		var sEllipsis = "[...]";
		var bDisableEllipsis = false;
		if(oTemplateNode.component[2].disableEllipsis){
			if(oTemplateNode.component[2].disableEllipsis.toLowerCase() == "true"){
				bDisableEllipsis = true;
				sEllipsis = "";
			}
		}
		$(oDivHtml).setAttribute("id", "divHtml_0"+sNestId);
		oElementTarget.getChildElementById("divContent").appendChild(oDivHtml);
		if(bNoTitleBar == false){
			if(oTemplateNode.component[0].hidden){
				if(oTemplateNode.component[0].hidden != "true"){
					oElementTarget.getChildElementById("divTitleBar").getChildElementById("divTitleBarTitle").update(oTemplateNode.component[0].text.toUpperCase());
				}
			}
			else{
				oElementTarget.getChildElementById("divTitleBar").getChildElementById("divTitleBarTitle").update(oTemplateNode.component[0].text.toUpperCase());
			}
		}
		oElementTarget.fncExpanded = function(){
			/*oDivHtml.setStyle({overflow: "auto"});
			if(Prototype.Browser.IE == true && parseInt(Prototype.Browser.Version) < 8){
				oDivHtml.setStyle({
					height: 461,
					width: 644
				});
			}
			oDivHtml.update("<img src='"+oTemplateNode.component[1].assetUrl+"' alt='"+oTemplateNode.component[1].assetHoverText+"' id='wraparound_left'/><p class='pods_p_text0'>"+oTemplateNode.component[2].text+"</p>");*/
		};
		oElementTarget.fncShrunk = function(){
			/*oDivHtml.setStyle({overflow: "hidden"});
			if(Prototype.Browser.IE == true && parseInt(Prototype.Browser.Version) < 8){
				oDivHtml.setStyle({
					height: 214,
					width: 312
				});
			}
			oDivHtml.update("<img src='"+oTemplateNode.component[1].assetUrl+"' alt='"+oTemplateNode.component[2].assetHoverText+"' id='wraparound_left'/><p class='pods_p_text0'>"+oTemplateNode.component[2].text.substring(0, iElipsisAmount)+" <a href='javascript:window.oCurrentlyFocusedObject.titleBarExpandShrink()'><font color='"+sMainRollOverColor+"'>"+sEllipsis+"</font></a>"+"</p>");
			oDivHtml.setStyle({overflow: "auto"});*/
		};
		oDivHtml.update("<img src='"+getPathPrefix()+oTemplateNode.component[1].assetUrl+"' alt='"+oTemplateNode.component[2].assetHoverText+"' id='wraparound_left'/><p class='pods_p_text0'>"+oTemplateNode.component[2].text.substring(0, iElipsisAmount)+" <a href='javascript:window.oCurrentlyFocusedObject.titleBarExpandShrink()'><font color='"+sMainRollOverColor+"'>"+sEllipsis+"</font></a>"+"</p>");
			oDivHtml.setStyle({overflow: "auto"});
		oElementTarget.fncShrunk();
	}
	this._Pod_PI = function(oTemplateNode, oElementTarget, sPrevContentHeader, sPrevContent, sPrevContentFooter, oOriginalTemplateNode, bIsRelatedType, sFileGuid){
		var bNoTitleBar = false;
		if(!oElementTarget.getChildElementById("divTitleBar")){
			bNoTitleBar = true;
		}
		else{
			//oElementTarget.showExpandShrinkControls();
		}
		var sMainRollOverColor = "#"+window._oColors.colours.palette[window._sColorPaletteId].pods.main_rollover.hex_value;
		var oDivHtml = new Element("div");
		var sNestId = "";
		if(oElementTarget.ancestors()[1].id.substr(0,10) == "divPodArea"){
			sNestId = "_0";
		}
		var iElipsisAmount = 300;
		if(oTemplateNode.component[4].charsUntilEllipsis){
			iElipsisAmount = oTemplateNode.component[4].charsUntilEllipsis
		}
		var sEllipsis = "[...]";
		var bDisableEllipsis = false;
		if(oTemplateNode.component[4].disableEllipsis){
			if(oTemplateNode.component[4].disableEllipsis.toLowerCase() == "true"){
				bDisableEllipsis = true;
				sEllipsis = "";
			}
		}
		oDivHtml.setAttribute("id", "divHtml_0"+sNestId);
		if(Prototype.Browser.IE == true && parseInt(Prototype.Browser.Version) == 6){
			oDivHtml.addClassName("cssDivPodWithScrollbarIE6");
		}
		else{
			oDivHtml.addClassName("cssDivPodWithScrollbar");
		}
		oElementTarget.getChildElementById("divContent").appendChild(oDivHtml);
		if(bNoTitleBar == false){
			if(oTemplateNode.component[0].hidden){
				if(oTemplateNode.component[0].hidden != "true"){
					oElementTarget.getChildElementById("divTitleBar").getChildElementById("divTitleBarTitle").update(oTemplateNode.component[0].text.toUpperCase());
				}
			}
			else{
				oElementTarget.getChildElementById("divTitleBar").getChildElementById("divTitleBarTitle").update(oTemplateNode.component[0].text.toUpperCase());
			}
		}
		oElementTarget.fncExpanded = function(){
			/*oDivHtml.setStyle({overflow: "auto"});
			if(Prototype.Browser.IE == true && parseInt(Prototype.Browser.Version) < 8){
				oDivHtml.setStyle({
					height: 461,
					width: 644
				});
			}*/
		};
		oElementTarget.fncShrunk = function(){
			/*oDivHtml.setStyle({overflow: "hidden"});
			if(Prototype.Browser.IE == true && parseInt(Prototype.Browser.Version) < 8){
				oDivHtml.setStyle({
					height: 214,
					width: 312
				});
			}*/
		};
		oDivHtml.update("<p class='pods_p_header0'>"+oTemplateNode.component[1].text+"</p>"+"<p class='pods_p_header1'>"+oTemplateNode.component[2].text+"</p>"+"<img src='"+getPathPrefix()+oTemplateNode.component[3].assetUrl+"' alt='"+oTemplateNode.component[3].assetHoverText+"' id='wraparound_left'/><p class='pods_p_text0'>"+oTemplateNode.component[4].text.substring(0, iElipsisAmount)+" <a href='javascript:window.oCurrentlyFocusedObject.titleBarExpandShrink()'><font color='"+sMainRollOverColor+"'>"+sEllipsis+"</font></a>"+"</p>");
		//oElementTarget.fncShrunk();
	}
	this._Pod_I = function(oTemplateNode, oElementTarget, sPrevContentHeader, sPrevContent, sPrevContentFooter, oOriginalTemplateNode, bIsRelatedType, sFileGuid){

		var bNoTitleBar = false;
		if(!oElementTarget.getChildElementById("divTitleBar")){
			bNoTitleBar = true;
		}
		else{
			//oElementTarget.showExpandShrinkControls();
		}
		var oDivHtml = new Element("div");
		var sNestId = "";
		if(oElementTarget.ancestors()[1].id.substr(0,10) == "divPodArea"){
			sNestId = "_0";
		}
		oDivHtml.addClassName("cssDivPodSansScrollbar");
		oDivHtml.setAttribute("id", "divHtml_0"+sNestId);
		oElementTarget.getChildElementById("divContent").appendChild(oDivHtml);
		if(bNoTitleBar == false){
			if(oTemplateNode.component[0].hidden){
				if(oTemplateNode.component[0].hidden != "true"){
					oElementTarget.getChildElementById("divTitleBar").getChildElementById("divTitleBarTitle").update(oTemplateNode.component[0].text.toUpperCase());
				}
			}
			else{
				oElementTarget.getChildElementById("divTitleBar").getChildElementById("divTitleBarTitle").update(oTemplateNode.component[0].text.toUpperCase());
			}
		}
		oElementTarget.fncExpanded = function(){
			/*if(Prototype.Browser.IE == true && parseInt(Prototype.Browser.Version) < 8){
				oDivHtml.setStyle({
					height: 461,
					width: 644
				});
			}*/
			oDivHtml.update("<img src='"+getPathPrefix()+oTemplateNode.component[1].expandedAssetUrl+"' alt='"+oTemplateNode.component[1].assetHoverText+"'/>");
		};
		oElementTarget.fncShrunk = function(){
			/*if(Prototype.Browser.IE == true && parseInt(Prototype.Browser.Version) < 8){
				oDivHtml.setStyle({
					height: 214,
					width: 312
				});
			}*/
			oDivHtml.update("<img src='"+getPathPrefix()+oTemplateNode.component[1].assetUrl+"' alt='"+oTemplateNode.component[1].assetHoverText+"'/>");
		};
		oElementTarget.fncShrunk();
	}
	this._Pod_IL = function(oTemplateNode, oElementTarget, sPrevContentHeader, sPrevContent, sPrevContentFooter, oOriginalTemplateNode, bIsRelatedType, sFileGuid){
		var bNoTitleBar = false;
		if(!oElementTarget.getChildElementById("divTitleBar")){
			bNoTitleBar = true;
		}
		else{
			//oElementTarget.showExpandShrinkControls();
		}
		var oDivHtml = new Element("div");
		var sNestId = "";
		if(oElementTarget.ancestors()[1].id.substr(0,10) == "divPodArea"){
			sNestId = "_0";
		}
		oDivHtml.addClassName("cssDivPodSansScrollbar");
		oDivHtml.setAttribute("id", "divHtml_0"+sNestId);
		oElementTarget.getChildElementById("divContent").appendChild(oDivHtml);
		if(bNoTitleBar == false){
			if(oTemplateNode.component[0].hidden){
				if(oTemplateNode.component[0].hidden != "true"){
					oElementTarget.getChildElementById("divTitleBar").getChildElementById("divTitleBarTitle").update(oTemplateNode.component[0].text.toUpperCase());
				}
			}
			else{
				oElementTarget.getChildElementById("divTitleBar").getChildElementById("divTitleBarTitle").update(oTemplateNode.component[0].text.toUpperCase());
			}
		}
		oDivHtml.update("<img src='"+getPathPrefix()+oTemplateNode.component[1].assetUrl+"' alt='"+oTemplateNode.component[1].assetHoverText+"'/>");
		oDivHtml.oDivHtmlRollOver = function(){
			this.setStyle({
				cursor: "pointer"
			});
		}
		oDivHtml.oDivHtmlRollOut = function(){
			this.setStyle({
				cursor: "default"
			});
		}
		oDivHtml.oDivHtmlMouseUp = function(){
			//alert("Work in progress, this feature currently being developed. It will soon load this file: '"+this._sRequestXml+"' via AJAX and display the article in this pod. There will be 'next/prev' arrows as well as a 'back' button to return to the article navigation. Also are plans to have an optional thumbnail here.");
			/*if(this._sRequestXml){
				oDivHtml.update("<p class='pods_rss_desc'>Loading article...</p>");
				new Ajax.Request(getJsonViaGetProxyUrl(this._sRequestXml), {method:'get',
					onSuccess: function(transport){
						var oJson = eval('('+transport.responseText+')');
						//alert(oElementTarget.id);
						oDivHtml.remove();
						window.oTemplates[oJson.xml.template.attachId](oJson.xml.template, oElementTarget); // recurse...
						oElementTarget.showBack(window.oTemplates._Pod_MultipartNav, {oTemplateNode:oTemplateNode, oElementTarget:oElementTarget, sPrevContentHeader:"", sPrevContent:"", sPrevContentFooter:"", oOriginalTemplateNode:oOriginalTemplateNode});
					},
					onFailure: function(){
						alert('Sorry, the server seems to be down. Please try again later.');
					}
				});
			}
			else{ // must be from an rss feed that had multiple items and not admin tool driven
				//alert("2: "+bIsRelatedType);
				oDivHtml.remove();
				var oNewTemplateNode = new Object();
				oNewTemplateNode.attachId = "_Pod_Feed";
				oNewTemplateNode.component = new Array();
				oNewTemplateNode.component[0] = {attachId:oOriginalTemplateNode.component[0].attachId};
				oNewTemplateNode.component[0].text = oJson.xml.area[this._iOrdinalId].title.toUpperCase().substr(0, 37)+(oJson.xml.area[this._iOrdinalId].title.length<=37 ? "" : "...");
				oNewTemplateNode.component[1] = {attachId:oOriginalTemplateNode.component[1].attachId};
				oNewTemplateNode.component[1].assetUrl = {attachId:oOriginalTemplateNode.component[1].assetUrl};
				oNewTemplateNode.component[2] = {attachId:oOriginalTemplateNode.component[2].attachId};
				oNewTemplateNode.component[2].feedUrl = oTemplateNode.component[1].area[this._iOrdinalId].link+"&withoutcomments=1&feed=rss2";
				window.oTemplates._Pod_Feed(oNewTemplateNode, oElementTarget, sPrevContentHeader, sPrevContent, sPrevContentFooter, oOriginalTemplateNode);
				oElementTarget.showBack(window.oTemplates._Pod_Feed, {oTemplateNode:oOriginalTemplateNode, oElementTarget:oElementTarget, sPrevContentHeader:"", sPrevContent: "", sPrevContentFooter:"", oOriginalTemplateNode:oOriginalTemplateNode, bIsRelatedType:bIsRelatedType});
			}*/
			this.setStyle({
				cursor: "default"
			});
			if(this._oTemplateNode.component[1].openLinkInNewWindow == "true"){
				window.open(this._oTemplateNode.component[1].linkUrl);
			}
			else{
				window.location = this._oTemplateNode.component[1].linkUrl;
				//requestXml(this._oTemplateNode.component[1].linkUrl.substr(23,40));
			}
		}
		oDivHtml._oTemplateNode = oTemplateNode;
		Event.observe(oDivHtml, "mouseenter", oDivHtml.oDivHtmlRollOver);
		Event.observe(oDivHtml, "mouseleave", oDivHtml.oDivHtmlRollOut);
		Event.observe(oDivHtml, "mouseup", oDivHtml.oDivHtmlMouseUp);
	}
	this._Pod_Video = function(oTemplateNode, oElementTarget, sPrevContentHeader, sPrevContent, sPrevContentFooter, oOriginalTemplateNode, bIsRelatedType, sFileGuid){
		var oDiv = oElementTarget;
		oDiv._bDisableExpandShrink = oTemplateNode.disableExpandShrink == "true" ? true : false;
		oDiv._bDisableFreeResize = oTemplateNode.disableFreeResize == "true" ? true : false;	
		var bNoTitleBar = false;
		if(!oElementTarget.getChildElementById("divTitleBar")){
			bNoTitleBar = true;
		}
		else{
			//oElementTarget.showExpandShrinkControls();
		}
		var oDivHtml = window.document.createElement("div");
		var sNestId = "";
		if(oElementTarget.ancestors()[1].id.substr(0,10) == "divPodArea"){
			sNestId = "_0";
		}
		$(oDivHtml).setAttribute("id", "divHtml_0"+sNestId);
		if(Prototype.Browser.IE == true && parseInt(Prototype.Browser.Version) < 8){
			oDivHtml.setStyle({
				position: "absolute",
				marginLeft: "10px",
				paddingRight: "15px",
				left: "0px",
				top: "0px",
				height: "100%",
				width: "290px",
				clear:"both",
				overflow: "hidden"
			});
		}
		else{
			oDivHtml.setStyle({
				position: "absolute",
				marginLeft: "10px",
				paddingRight: "15px",
				left: "0px",
				top: "0px",
				height: "100%",
				width: "290px",
				clear:"both",
				overflow: "hidden"
			});
		}
		oElementTarget.getChildElementById("divContent").appendChild(oDivHtml);
		if(bNoTitleBar == false){
			if(oTemplateNode.component[0].hidden){
				if(oTemplateNode.component[0].hidden != "true"){
					oElementTarget.getChildElementById("divTitleBar").getChildElementById("divTitleBarTitle").update(oTemplateNode.component[0].text.toUpperCase());
				}
			}
			else{
				oElementTarget.getChildElementById("divTitleBar").getChildElementById("divTitleBarTitle").update(oTemplateNode.component[0].text.toUpperCase());
			}
		}
		writeFlashEmbedToElement(oDivHtml, "assetUrl="+oTemplateNode.component[1].assetUrl+"&thumbnailAssetUrl="+oTemplateNode.component[2].assetUrl+"&colorForeground="+window._oColors.colours.palette[window._sColorPaletteId].top_area.foreground.hex_value, "v_pod.swf", "304", "198", "000000", "best", "8", "");
	}
	this._Pod_HotspotOverlay = function(oTemplateNode, oElementTarget, sPrevContentHeader, sPrevContent, sPrevContentFooter, oOriginalTemplateNode, bIsRelatedType, sFileGuid){
		var oDiv = oElementTarget;
		oDiv._bDisableExpandShrink = oTemplateNode.disableExpandShrink == "true" ? true : false;
		oDiv._bDisableFreeResize = oTemplateNode.disableFreeResize == "true" ? true : false;	
		var bNoTitleBar = false;
		if(!oElementTarget.getChildElementById("divTitleBar")){
			bNoTitleBar = true;
		}
		else{
			//oElementTarget.showExpandShrinkControls();
		}
		var oDivHtml = new Element("div");
		var sNestId = "";
		if(oElementTarget.ancestors()[1].id.substr(0,10) == "divPodArea"){
			sNestId = "_0";
		}
		oDivHtml.addClassName("cssDivPodSansScrollbar");
		oDivHtml.setAttribute("id", "divHtml_0"+sNestId);
		oElementTarget.getChildElementById("divContent").appendChild(oDivHtml);
		if(bNoTitleBar == false){
			if(oTemplateNode.component[0].hidden){
				if(oTemplateNode.component[0].hidden != "true"){
					oElementTarget.getChildElementById("divTitleBar").getChildElementById("divTitleBarTitle").update(oTemplateNode.component[0].text.toUpperCase());
				}
			}
			else{
				oElementTarget.getChildElementById("divTitleBar").getChildElementById("divTitleBarTitle").update(oTemplateNode.component[0].text.toUpperCase());
			}
		}
		//sParams = "bAdminIsOpen="+window.getIsAdminOpen().toString()+"&assetUrl="+oTemplateNode.component[1].assetUrl+"&linkUrl="+oTemplateNode.component[1].linkUrl+"&linkEnabled="+oTemplateNode.component[1].linkEnabled+"&linkCtaText="+oTemplateNode.component[1].linkCtaText+"&linkCtaPosX="+oTemplateNode.component[1].linkCtaPosX+"&linkCtaPosY="+oTemplateNode.component[1].linkCtaPosY+"&hotspotLinkUrl_0="+oTemplateNode.component[2].linkUrl+"&hotspotLinkUrl_1="+oTemplateNode.component[3].linkUrl+"&hotspotLinkUrl_2="+oTemplateNode.component[4].linkUrl+"&hotspotLinkUrl_3="+oTemplateNode.component[5].linkUrl+"&hotspotLinkUrl_4="+oTemplateNode.component[6].linkUrl+"&hotspotHidden_0="+oTemplateNode.component[2].hidden+"&hotspotHidden_1="+oTemplateNode.component[3].hidden+"&hotspotHidden_2="+oTemplateNode.component[4].hidden+"&hotspotHidden_3="+oTemplateNode.component[5].hidden+"&hotspotHidden_4="+oTemplateNode.component[6].hidden+"&hotspotHeader_0="+oTemplateNode.component[2].header+"&hotspotHeader_1="+oTemplateNode.component[3].header+"&hotspotHeader_2="+oTemplateNode.component[4].header+"&hotspotHeader_3="+oTemplateNode.component[5].header+"&hotspotHeader_4="+oTemplateNode.component[6].header+"&hotspotLinkText_0="+oTemplateNode.component[2].linkText+"&hotspotLinkText_1="+oTemplateNode.component[3].linkText+"&hotspotLinkText_2="+oTemplateNode.component[4].linkText+"&hotspotLinkText_3="+oTemplateNode.component[5].linkText+"&hotspotLinkText_4="+oTemplateNode.component[6].linkText+"&hotspotRolloverText_0="+oTemplateNode.component[2].rolloverText+"&hotspotRolloverText_1="+oTemplateNode.component[3].rolloverText+"&hotspotRolloverText_2="+oTemplateNode.component[4].rolloverText+"&hotspotRolloverText_3="+oTemplateNode.component[5].rolloverText+"&hotspotRolloverText_4="+oTemplateNode.component[6].rolloverText+"&hotspotAssetUrl_0="+oTemplateNode.component[2].assetUrl+"&hotspotAssetUrl_1="+oTemplateNode.component[3].assetUrl+"&hotspotAssetUrl_2="+oTemplateNode.component[4].assetUrl+"&hotspotAssetUrl_3="+oTemplateNode.component[5].assetUrl+"&hotspotAssetUrl_4="+oTemplateNode.component[6].assetUrl+"&colorForeground="+window._oColors.colours.palette[window._sColorPaletteId].top_area.foreground.hex_value;
		sParams = "bAdminIsOpen="+window.getIsAdminOpen().toString()+"&assetUrl="+getPathPrefix()+oTemplateNode.component[1].assetUrl+"&linkUrl="+oTemplateNode.component[1].linkUrl+"&linkEnabled="+oTemplateNode.component[1].linkEnabled+"&linkCtaText="+oTemplateNode.component[1].linkCtaText+"&linkCtaPosX="+oTemplateNode.component[1].linkCtaPosX+"&linkCtaPosY="+oTemplateNode.component[1].linkCtaPosY+"&hotspotLinkUrl_0="+oTemplateNode.component[2].linkUrl+"&hotspotLinkUrl_1="+oTemplateNode.component[3].linkUrl+"&hotspotLinkUrl_2="+oTemplateNode.component[4].linkUrl+"&hotspotLinkUrl_3="+oTemplateNode.component[5].linkUrl+"&hotspotLinkUrl_4="+oTemplateNode.component[6].linkUrl+"&hotspotHidden_0="+oTemplateNode.component[2].hidden+"&hotspotHidden_1="+oTemplateNode.component[3].hidden+"&hotspotHidden_2="+oTemplateNode.component[4].hidden+"&hotspotHidden_3="+oTemplateNode.component[5].hidden+"&hotspotHidden_4="+oTemplateNode.component[6].hidden+"&hotspotHeader_0="+oTemplateNode.component[2].header+"&hotspotHeader_1="+oTemplateNode.component[3].header+"&hotspotHeader_2="+oTemplateNode.component[4].header+"&hotspotHeader_3="+oTemplateNode.component[5].header+"&hotspotHeader_4="+oTemplateNode.component[6].header+"&hotspotLinkText_0="+oTemplateNode.component[2].linkText+"&hotspotLinkText_1="+oTemplateNode.component[3].linkText+"&hotspotLinkText_2="+oTemplateNode.component[4].linkText+"&hotspotLinkText_3="+oTemplateNode.component[5].linkText+"&hotspotLinkText_4="+oTemplateNode.component[6].linkText+"&hotspotAssetUrl_0="+getPathPrefix()+oTemplateNode.component[2].assetUrl+"&hotspotAssetUrl_1="+getPathPrefix()+oTemplateNode.component[3].assetUrl+"&hotspotAssetUrl_2="+getPathPrefix()+oTemplateNode.component[4].assetUrl+"&hotspotAssetUrl_3="+getPathPrefix()+oTemplateNode.component[5].assetUrl+"&hotspotAssetUrl_4="+getPathPrefix()+oTemplateNode.component[6].assetUrl+"&colorForeground="+window._oColors.colours.palette[window._sColorPaletteId].top_area.foreground.hex_value+"&requestXml="+getPathPrefix()+"_xml/"+sFileGuid+"_templates.xml";
		if(Prototype.Browser.IE == true && parseInt(Prototype.Browser.Version) == 6){
			sParams = "bAdminIsOpen="+window.getIsAdminOpen().toString()+"&assetUrl="+getPathPrefix()+oTemplateNode.component[1].assetUrl
		}
		writeFlashEmbedToElement(oDivHtml, sParams, getPathPrefix()+"_Pod_HotspotOverlay.swf", "968", "445", "ffffff", "best", "8", "");
	}
	this._Pod_GenericEmbedding = function(oTemplateNode, oElementTarget, sPrevContentHeader, sPrevContent, sPrevContentFooter, oOriginalTemplateNode, bIsRelatedType, sFileGuid){
		var oDiv = oElementTarget;
		oDiv._bDisableExpandShrink = oTemplateNode.disableExpandShrink == "true" ? true : false;
		oDiv._bDisableFreeResize = oTemplateNode.disableFreeResize == "true" ? true : false;	
		var bNoTitleBar = false;
		if(!oElementTarget.getChildElementById("divTitleBar")){
			bNoTitleBar = true;
		}
		else{
			//oElementTarget.showExpandShrinkControls();
		}
		var oDivHtml = window.document.createElement("script");
		var sNestId = "";
		if(oElementTarget.ancestors()[1].id.substr(0,10) == "divPodArea"){
			sNestId = "_0";
		}
		$(oDivHtml).setAttribute("id", "divHtml_0"+sNestId, 0);
		oElementTarget.getChildElementById("divContent").appendChild(oDivHtml);
		if(bNoTitleBar == false){
			if(oTemplateNode.component[0].hidden){
				if(oTemplateNode.component[0].hidden != "true"){
					oElementTarget.getChildElementById("divTitleBar").getChildElementById("divTitleBarTitle").update(oTemplateNode.component[0].text.toUpperCase());
				}
			}
			else{
				oElementTarget.getChildElementById("divTitleBar").getChildElementById("divTitleBarTitle").update(oTemplateNode.component[0].text.toUpperCase());
			}
		}

		//alert(oTemplateNode.component[1].html);
		$(oDivHtml).setAttribute("type", "text/javascript", 0);
		$(oDivHtml).setAttribute("src", "http://www.gmodules.com/ig/ifr?url=http://todoist.com/static/todoist_gadget/index_large.xml&amp;synd=open&amp;w=304&amp;h=443&amp;title=Todoist+(large)&amp;border=%23ffffff%7C3px%2C1px+solid+%23999999&amp;output=js", 0);
		//oTemplateNode.component[1].html);
		//document.write(oTemplateNode.component[1].html);

	}
	this._Pod_GenericIframe = function(oTemplateNode, oElementTarget, sPrevContentHeader, sPrevContent, sPrevContentFooter, oOriginalTemplateNode, bIsRelatedType, sFileGuid){
		var oDiv = oElementTarget;
		oDiv._bDisableExpandShrink = oTemplateNode.disableExpandShrink == "true" ? true : false;
		oDiv._bDisableFreeResize = oTemplateNode.disableFreeResize == "true" ? true : false;	
		var bNoTitleBar = false;
		if(!oElementTarget.getChildElementById("divTitleBar")){
			bNoTitleBar = true;
		}
		else{
			//oElementTarget.showExpandShrinkControls();
		}
		var oDivHtml = window.document.createElement("div");
		var sNestId = "";
		if(oElementTarget.ancestors()[1].id.substr(0,10) == "divPodArea"){
			sNestId = "_0";
		}
		$(oDivHtml).setAttribute("id", "divHtml_0"+sNestId);
		if(Prototype.Browser.IE == true && parseInt(Prototype.Browser.Version) < 8){
			oDivHtml.setStyle({
				position: "absolute",
				marginLeft: "0px",
				paddingRight: "0px",
				left: "0px",
				top: "0px",
				overflow: "auto",
				wordWrap: "break-word",
				overflowX: "hidden"
			});
		}
		else{
			oDivHtml.setStyle({
				position: "relative",
				marginLeft: "0px",
				paddingRight: "0px",
				left: "0px",
				top: "0px",
				overflow: "auto",
				wordWrap: "break-word",
				overflowX: "hidden"
			});
		}
		oElementTarget.getChildElementById("divContent").appendChild(oDivHtml);
		oDivHtml.makeClipping().setStyle({width: "322px", height: "5000px"});
		
		var oDivFinalHolder = window.document.createElement("div");
		$(oDivFinalHolder).setAttribute("id", "divFinalHolder_0"+sNestId);
		if(Prototype.Browser.IE == true && parseInt(Prototype.Browser.Version) < 8){
			oDivFinalHolder.setStyle({
				marginLeft: parseInt(oTemplateNode.component[2].contentLeftOffset),
				marginTop: parseInt(oTemplateNode.component[2].contentTopOffset)
			});
		}
		else{
			oDivFinalHolder.setStyle({
				marginLeft: parseInt(oTemplateNode.component[2].contentLeftOffset),
				marginTop: parseInt(oTemplateNode.component[2].contentTopOffset)
			});
		}
		oDivHtml.appendChild(oDivFinalHolder);
		
		if(bNoTitleBar == false){
			if(oTemplateNode.component[0].hidden){
				if(oTemplateNode.component[0].hidden != "true"){
					oElementTarget.getChildElementById("divTitleBar").getChildElementById("divTitleBarTitle").update(oTemplateNode.component[0].text.toUpperCase());
				}
			}
			else{
				oElementTarget.getChildElementById("divTitleBar").getChildElementById("divTitleBarTitle").update(oTemplateNode.component[0].text.toUpperCase());
			}
		}
		createIframeArea(oDivFinalHolder, oTemplateNode.component[1].url, parseInt(oTemplateNode.component[2].contentWidth), parseInt(oTemplateNode.component[2].contentHeight));
	}
	this._Pod_GoogleAdsenseIframe = function(oTemplateNode, oElementTarget, sPrevContentHeader, sPrevContent, sPrevContentFooter, oOriginalTemplateNode, bIsRelatedType, sFileGuid){
		var oDiv = oElementTarget;
		oDiv._bDisableExpandShrink = oTemplateNode.disableExpandShrink == "true" ? true : false;
		oDiv._bDisableFreeResize = oTemplateNode.disableFreeResize == "true" ? true : false;	
		var bNoTitleBar = false;
		if(!oElementTarget.getChildElementById("divTitleBar")){
			bNoTitleBar = true;
		}
		else{
			//oElementTarget.showExpandShrinkControls();
		}
		var oDivHtml = window.document.createElement("div");
		var sNestId = "";
		if(oElementTarget.ancestors()[1].id.substr(0,10) == "divPodArea"){
			sNestId = "_0";
		}
		$(oDivHtml).setAttribute("id", "divHtml_0"+sNestId);
		if(Prototype.Browser.IE == true && parseInt(Prototype.Browser.Version) < 8){
			oDivHtml.setStyle({
				position: "absolute",
				marginLeft: "0px",
				paddingRight: "0px",
				left: "0px",
				top: "0px",
				overflow: "auto",
				wordWrap: "break-word",
				overflowX: "hidden"
			});
		}
		else{
			oDivHtml.setStyle({
				position: "relative",
				marginLeft: "0px",
				paddingRight: "0px",
				left: "0px",
				top: "0px",
				overflow: "auto",
				wordWrap: "break-word",
				overflowX: "hidden"
			});
		}
		oElementTarget.getChildElementById("divContent").appendChild(oDivHtml);
		oDivHtml.makeClipping().setStyle({width: "322px", height: "5000px"});
		
		var oDivFinalHolder = window.document.createElement("div");
		$(oDivFinalHolder).setAttribute("id", "divFinalHolder_0"+sNestId);
		if(Prototype.Browser.IE == true && parseInt(Prototype.Browser.Version) < 8){
			oDivFinalHolder.setStyle({
				marginLeft: parseInt(oTemplateNode.component[2].contentLeftOffset),
				marginTop: parseInt(oTemplateNode.component[2].contentTopOffset)
			});
		}
		else{
			oDivFinalHolder.setStyle({
				marginLeft: parseInt(oTemplateNode.component[2].contentLeftOffset),
				marginTop: parseInt(oTemplateNode.component[2].contentTopOffset)
			});
		}
		oDivHtml.appendChild(oDivFinalHolder);
		
		if(bNoTitleBar == false){
			if(oTemplateNode.component[0].hidden){
				if(oTemplateNode.component[0].hidden != "true"){
					oElementTarget.getChildElementById("divTitleBar").getChildElementById("divTitleBarTitle").update(oTemplateNode.component[0].text.toUpperCase());
				}
			}
			else{
				oElementTarget.getChildElementById("divTitleBar").getChildElementById("divTitleBarTitle").update(oTemplateNode.component[0].text.toUpperCase());
			}
		}
		createIframeArea(oDivFinalHolder, oTemplateNode.component[1].url, parseInt(oTemplateNode.component[2].contentWidth), parseInt(oTemplateNode.component[2].contentHeight));
	}
	this._Pod_Rss = function(oTemplateNode, oElementTarget, sPrevContentHeader, sPrevContent, sPrevContentFooter, oOriginalTemplateNode, bIsRelatedType, sFileGuid){
		var bNoTitleBar = false;
		if(!oElementTarget.getChildElementById("divTitleBar")){
			bNoTitleBar = true;
		}
		else{
			//oElementTarget.showExpandShrinkControls();
		}
		var sMainRollOverColor = "#"+window._oColors.colours.palette[window._sColorPaletteId].pods.main_rollover.hex_value;
		if(window._oColors.colours.palette[window._sColorPaletteId].pods.title_bar.title.hex_value.substr(0,4) == "tone"){
		sMainRollOverColor = "#"+window._oColors.colours.palette[window._sColorPaletteId].tones[window._oColors.colours.palette[window._sColorPaletteId].pods.title_bar.title.hex_value].hex_value;
	}
		var oDivHtml = window.document.createElement("div");
		var sNestId = "";
		if(oElementTarget.ancestors()[1].id.substr(0,10) == "divPodArea"){
			sNestId = "_0";
		}
		
		$(oDivHtml).setAttribute("id", "divHtml_0"+sNestId);

			oDivHtml.setStyle({
				position: "relative",
				marginLeft: "10px",
				paddingTop:"0px",
				marginTop:"0px",
				marginBottom:"0px",
				paddingRight: "15px",
				left: "0px",
				top: "0px",
				height: "100%",
				overflow: "auto",
				wordWrap: "break-word",
				lineHeight:"normal",
				fontFamily:"Verdana, sans-serif",
				fontSize:"10px",
				fontStyle:"normal",
				fontVariant:"normal",
				fontWeight:"normal",
				overflowX: "hidden"
			});

		oElementTarget.getChildElementById("divContent").appendChild(oDivHtml);
		if(bNoTitleBar == false){
			if(oTemplateNode.component[0].hidden){
				if(oTemplateNode.component[0].hidden != "true"){
					oElementTarget.getChildElementById("divTitleBar").getChildElementById("divTitleBarTitle").update(oTemplateNode.component[0].text.toUpperCase());
				}
			}
			else{
				oElementTarget.getChildElementById("divTitleBar").getChildElementById("divTitleBarTitle").update(oTemplateNode.component[0].text.toUpperCase());
			}
		}
		oElementTarget.fncExpanded = function(){
			if(Prototype.Browser.IE == true && parseInt(Prototype.Browser.Version) < 8){
				oDivHtml.setStyle({
					height: "461px",
					width: "644px"
				});
			}
			oDivHtml.setStyle({overflow: "auto"});
		};
		oElementTarget.fncShrunk = function(){
			if(Prototype.Browser.IE == true && parseInt(Prototype.Browser.Version) < 8){
				oDivHtml.setStyle({
					height: "214px",
					width: "312px"
				});
			}
			oDivHtml.setStyle({overflow: "hidden"});
		};
		
		//oElementTarget.fncShrunk();
		//oDivHtml.update("<p class='pods_rss_desc'>Loading...</p><br/>");
		//oElementTarget.titleBarShadeShrink();
		//alert(oTemplateNode.component[1].feedUrl);
		//alert(getJsonViaGetProxyUrl(oTemplateNode.component[1].feedUrl));
		new Ajax.Request(getExternalJsonViaGetProxyUrl(oTemplateNode.component[1].feedUrl), {method:'get',
			onSuccess: function(transport){
				var oJson = eval('('+transport.responseText+')');
				init(oJson);
				//alert(transport.responseText);
			},
			onFailure: function(){
				alert('Sorry, the server seems to be down. Please try again later.');
			}
		});
		var init = function(oJson){			
			var sContent ="";
			var sDesc = "";
			var sMainTitle = "";
			var sMainSubTitle = "";
			var sTitle = "";
			var sLink = "";
			var sTarget = "_blank";
			var iNumberOfItemsToShow;
			if(oTemplateNode.component[3].openInCurrentWindow == "true"){
				sTarget = "_self";
			}
			if(oJson.rss){ // if rss 1.0 or 2.0
				iNumberOfItemsToShow = oJson.rss.channel.item.length;
				//attachId="Limit_0" -- numOfItemsToShow
     		    //attachId="Target_0" -- openInCurrentWindow
     		    if(parseInt(oTemplateNode.component[2].numOfItemsToShow) > 0){
     		    	iNumberOfItemsToShow = parseInt(oTemplateNode.component[2].numOfItemsToShow);
     		    }
				for(var i=0; i<iNumberOfItemsToShow; i++){
					sDesc = oJson.rss.channel.item[i].description;
					if(oJson.rss.channel.item[i].description.indexOf("&#8594;", 0) != -1){
						sDesc = oJson.rss.channel.item[i].description.substr(0, oJson.rss.channel.item[i].description.indexOf("&#8594;", 0));
					}
					sContent = sContent + "<span class='pods_rss_title'><a href='"+oJson.rss.channel.item[i].link+"' target='"+sTarget+"'>"+oJson.rss.channel.item[i].title.toUpperCase()+"<br/></a></span><span class='pods_rss_desc'/>"+sDesc+" <a href='"+oJson.rss.channel.item[i].link+"' target='"+sTarget+"'><font color='"+sMainRollOverColor+"'>&#8594;</font></a><br/><br/></span>"; //&#9002; or &#8594;
				}
			}
			else{
				if(oJson.feed){ // if atom
					if(oJson.feed.title){
						sMainTitle = oJson.feed.title;
					}
					if(oJson.feed.subtitle){
						sMainSubTitle = oJson.feed.subtitle;
					}
					sContent = "<p class='pods_p_header0'/>"+sMainTitle+"</p><p class='pods_rss_title'>"+sMainSubTitle+"</p>";
					for(var i=0; i<oJson.feed.entry.length; i++){
						sDesc = oJson.feed.entry[i].content;
						if(oJson.feed.entry[i].title){
							sTitle = oJson.feed.entry[i].title;
						}
						if(oJson.feed.link[1]){
							sLink = oJson.feed.link[1].href;
						}
						else{
							if(oJson.feed.link[0]){
								sLink = oJson.feed.link[0].href;
							}
							else{
								if(oJson.feed.link){
									sLink = oJson.feed.link.href;
								}
							}
						}
						//if(oJson.rss.channel.item[i].description.indexOf("[...]", 0) != -1){
						//	sDesc = oJson.rss.channel.item[i].description.substr(0, oJson.rss.channel.item[i].description.indexOf("[...]", 0));
						//}
						sContent = sContent + "<p class='pods_rss_title'>"+sTitle+"</p><p class='pods_rss_desc'/>"+sDesc+" <a href='"+sLink+"' target='_blank'><font color='"+sMainRollOverColor+"'>[read more in new window]</font></a>";
					}
				}
				else{
					//alert("Hmmm, it looks like this feed is not in rss 1.0, 2.0 or Atom and I don't support it yet.");
				}
			}
			oDivHtml.update(sContent);
			oElementTarget.setHeight(oElementTarget.getHeight());
			//alert(oElementTarget.ancestors()[0]._PodsBroadcaster);
			oElementTarget.titleBarShadeExpand();
			//oElementTarget.ancestors()[0]._PodsBroadcaster.broadcastMessage("onDragReorderPodsBroadcasted", {iWidth:iCanvasWidth, iHeight:0, bNoAnim:false});
			//$("divContentArea_"+iContentArea)._PodsBroadcaster.broadcastMessage("onReorderPodsBroadcasted", {iWidth:iCanvasWidth, iHeight:0, bNoAnim:false});
		}
		
	}
	this._Pod_WP_GetAuthors = function(oTemplateNode, oElementTarget, sPrevContentHeader, sPrevContent, sPrevContentFooter, oOriginalTemplateNode, bIsRelatedType, sFileGuid){
		var bNoTitleBar = false;
		if(!oElementTarget.getChildElementById("divTitleBar")){
			bNoTitleBar = true;
		}
		else{
			//oElementTarget.showExpandShrinkControls();
		}
		var sMainRollOverColor = "#"+window._oColors.colours.palette[window._sColorPaletteId].pods.main_rollover.hex_value;
		var oDivHtml = window.document.createElement("div");
		var sNestId = "";
		if(oElementTarget.ancestors()[1].id.substr(0,10) == "divPodArea"){
			sNestId = "_0";
		}
		$(oDivHtml).setAttribute("id", "divHtml_0"+sNestId);
		if(Prototype.Browser.IE == true && parseInt(Prototype.Browser.Version) < 8){
			oDivHtml.setStyle({
				position: "absolute",
				marginLeft: "10px",
				paddingRight: "15px",
				left: "0px",
				top: "0px",
				height: "214px",
				width: "312px",
				overflow: "auto",
				wordWrap: "break-word",
				overflowX: "hidden"
			});
		}
		else{
			oDivHtml.setStyle({
				position: "relative",
				marginLeft: "10px",
				paddingRight: "15px",
				left: "0px",
				top: "0px",
				height: "100%",
				overflow: "auto",
				wordWrap: "break-word",
				overflowX: "hidden"
			});
		}
		oElementTarget.getChildElementById("divContent").appendChild(oDivHtml);
		if(bNoTitleBar == false){
			if(oTemplateNode.component[0].hidden){
				if(oTemplateNode.component[0].hidden != "true"){
					oElementTarget.getChildElementById("divTitleBar").getChildElementById("divTitleBarTitle").update(oTemplateNode.component[0].text.toUpperCase());
				}
			}
			else{
				oElementTarget.getChildElementById("divTitleBar").getChildElementById("divTitleBarTitle").update(oTemplateNode.component[0].text.toUpperCase());
			}
		}
		oElementTarget.fncExpanded = function(){
			if(Prototype.Browser.IE == true && parseInt(Prototype.Browser.Version) < 8){
				oDivHtml.setStyle({
					height: "461px",
					width: "644px"
				});
			}
			oDivHtml.setStyle({overflow: "auto"});
		};
		oElementTarget.fncShrunk = function(){
			if(Prototype.Browser.IE == true && parseInt(Prototype.Browser.Version) < 8){
				oDivHtml.setStyle({
					height: "214px",
					width: "312px"
				});
			}
			oDivHtml.setStyle({overflow: "hidden"});
		};
		oElementTarget.fncShrunk();
		oDivHtml.update("<p class='pods_rss_desc'>Loading...</p>");
		//alert(oTemplateNode.component[1].feedUrl);
		//alert(getJsonViaGetProxyUrl(oTemplateNode.component[1].feedUrl));
		var sXmlPost = '%3C%3Fxml%20version%3D%221.0%22%3F%3E%3CmethodCall%3E%3CmethodName%3Ewp.newComment%3C/methodName%3E%3Cparams%3E%3Cparam%3E%3Cvalue%3E%3Cstring%3E0%3C/string%3E%3C/value%3E%3C/param%3E%3Cparam%3E%3Cvalue%3E%3Cstring%3E%3C/string%3E%3C/value%3E%3C/param%3E%3Cparam%3E%3Cvalue%3E%3Cstring%3E%3C/string%3E%3C/value%3E%3C/param%3E%3Cparam%3E%3Cvalue%3E%3Cint%3E'+'test'+'%3C/int%3E%3C/value%3E%3C/param%3E%3Cparam%3E%3Cvalue%3E%3Cstruct%3E%3Cmember%3E%3Cname%3Econtent%3C/name%3E%3Cvalue%3E%3Cstring%3E'+'test'+'%3C/string%3E%3C/value%3E%3C/member%3E%3Cmember%3E%3Cname%3Eauthor%3C/name%3E%3Cvalue%3E%3Cstring%3E'+'test'+'%3C/string%3E%3C/value%3E%3C/member%3E%3Cmember%3E%3Cname%3Eauthor_email%3C/name%3E%3Cvalue%3E%3Cstring%3E'+'test'+'%3C/string%3E%3C/value%3E%3C/member%3E%3C/struct%3E%3C/value%3E%3C/param%3E%3C/params%3E%3C/methodCall%3E'; // wp.getComments
		
	
		new Ajax.Request(getJsonViaPostProxyUrl(), {method:'post', postBody:'url='+getProxyUrl(oTemplateNode.component[1].baseUrl+'/xmlrpc.php')+'&post='+sXmlPost,
			onSuccess: function(transport){
				//var oJson = eval('('+transport.responseText+')');
				//init(oJson);
				//alert(transport.responseText);
			},
			onFailure: function(){
				alert('Sorry, the server seems to be down. Please try again later.');
			}
		});
		var init = function(oJson){			
			var sContent ="";
			var sDesc = "";
			var sMainTitle = "";
			var sMainSubTitle = "";
			var sTitle = "";
			var sLink = "";
			var sTarget = "_blank";
			var iNumberOfItemsToShow;
			if(oTemplateNode.component[3].openInCurrentWindow == "true"){
				sTarget = "_self";
			}
			if(oJson.rss){ // if rss 1.0 or 2.0
				iNumberOfItemsToShow = oJson.rss.channel.item.length;
				sContent = "<br/>";
				//attachId="Limit_0" -- numOfItemsToShow
     		    //attachId="Target_0" -- openInCurrentWindow
     		    if(parseInt(oTemplateNode.component[2].numOfItemsToShow) > 0){
     		    	iNumberOfItemsToShow = parseInt(oTemplateNode.component[2].numOfItemsToShow);
     		    }
				for(var i=0; i<iNumberOfItemsToShow; i++){
					sDesc = oJson.rss.channel.item[i].description;
					if(oJson.rss.channel.item[i].description.indexOf("&#8594;", 0) != -1){
						sDesc = oJson.rss.channel.item[i].description.substr(0, oJson.rss.channel.item[i].description.indexOf("&#8594;", 0));
					}
					sContent = sContent + "<span class='pods_rss_title'><a href='"+oJson.rss.channel.item[i].link+"' target='"+sTarget+"'>"+oJson.rss.channel.item[i].title.toUpperCase()+"<br/></a></span><span class='pods_rss_desc'/>"+sDesc+" <a href='"+oJson.rss.channel.item[i].link+"' target='"+sTarget+"'><font color='"+sMainRollOverColor+"'>&#8594;</font></a><br/><br/></span>"; //&#9002; or &#8594;
				}
			}
		}
	}
	this._Pod_Feed = function(oTemplateNode, oElementTarget, sPrevContentHeader, sPrevContent, sPrevContentFooter, oOriginalTemplateNode, bIsRelatedType, sFileGuid){
		//if(!oOriginalTemplateNode){
		//	alert("pod feed has an undefined oOriginalTemplateNode!");
		//}
		var bNoTitleBar = false;
		if(!oElementTarget.getChildElementById("divTitleBar")){
			bNoTitleBar = true;
		}
		else{
			//oElementTarget.showExpandShrinkControls();
		}
		if(!sPrevContentHeader){
			sPrevContentHeader = "";
		}
		if(!sPrevContentFooter){
			sPrevContentFooter = "";
		}
		if(!sPrevContent){
			sPrevContent = "";
		}
		var sMainRollOverColor = "#"+window._oColors.colours.palette[window._sColorPaletteId].pods.main_rollover.hex_value;
		if(window._oColors.colours.palette[window._sColorPaletteId].pods.title_bar.title.hex_value.substr(0,4) == "tone"){
		sMainRollOverColor = "#"+window._oColors.colours.palette[window._sColorPaletteId].tones[window._oColors.colours.palette[window._sColorPaletteId].pods.title_bar.title.hex_value].hex_value;
	}
		var oDivHtml = new Element("div");
		var sNestId = "";
		if(oElementTarget.ancestors()[1].id.substr(0,10) == "divPodArea"){
			sNestId = "_0";
		}
		if(Prototype.Browser.IE == true && parseInt(Prototype.Browser.Version) == 6){
			oDivHtml.addClassName("cssDivPodWithScrollbarIE6");
		}
		else{
			oDivHtml.addClassName("cssDivPodWithScrollbar");
		}
		oDivHtml.setAttribute("id", "divHtml_0"+sNestId);
		oElementTarget.getChildElementById("divContent").appendChild(oDivHtml);
		if(bNoTitleBar == false){
			if(oTemplateNode.component[0].hidden){
				if(oTemplateNode.component[0].hidden != "true"){
					oElementTarget.getChildElementById("divTitleBar").getChildElementById("divTitleBarTitle").update(oTemplateNode.component[0].text.toUpperCase());
				}
			}
			else{
				oElementTarget.getChildElementById("divTitleBar").getChildElementById("divTitleBarTitle").update(oTemplateNode.component[0].text.toUpperCase());
			}
		}
		oElementTarget.fncExpanded = function(){
			/*if(Prototype.Browser.IE == true && parseInt(Prototype.Browser.Version) < 8){
				oDivHtml.setStyle({
					height: "461px",
					width: "644px"
				});
			}
			oDivHtml.setStyle({overflow: "auto"});*/
		};
		oElementTarget.fncShrunk = function(){
			/*if(Prototype.Browser.IE == true && parseInt(Prototype.Browser.Version) < 8){
				oDivHtml.setStyle({
					height: "214px",
					width: "312px"
				});
			}
			oDivHtml.setStyle({overflow: "auto"});*/
		};
		oElementTarget.fncShrunk();
		oDivHtml.update("<p class='pods_rss_desc'>Loading...</p>");
		//alert(oTemplateNode.component[1].feedUrl);
		//alert(oOriginalTemplateNode.component[5].wpUrl);
		
		var getComments = function(sHtml){
			var sPostId = parseArgs(oTemplateNode.component[2].feedUrl.substr(oTemplateNode.component[2].feedUrl.indexOf("?")+1, oTemplateNode.component[2].feedUrl.length)).p;
			var displayComments = function(oJson){
				var sDate, sUserId, sCommentId, sParentId, sStatus, sContent, sLink, sPostIdFromApi, sTitle, sAuthor, sAuthorUrl, sAuthorEmail;
				var sCommentsHtml = "";
				var postComment = function(){
					//alert(this[3].value);
					var oForm = this;
					var bFormValidated = false;
					oForm[3].disabled = "disabled";
					var sCommentId;
					var sXmlPost = '%3C%3Fxml%20version%3D%221.0%22%3F%3E%3CmethodCall%3E%3CmethodName%3Ewp.newComment%3C/methodName%3E%3Cparams%3E%3Cparam%3E%3Cvalue%3E%3Cstring%3E0%3C/string%3E%3C/value%3E%3C/param%3E%3Cparam%3E%3Cvalue%3E%3Cstring%3E%3C/string%3E%3C/value%3E%3C/param%3E%3Cparam%3E%3Cvalue%3E%3Cstring%3E%3C/string%3E%3C/value%3E%3C/param%3E%3Cparam%3E%3Cvalue%3E%3Cint%3E'+sPostId+'%3C/int%3E%3C/value%3E%3C/param%3E%3Cparam%3E%3Cvalue%3E%3Cstruct%3E%3Cmember%3E%3Cname%3Econtent%3C/name%3E%3Cvalue%3E%3Cstring%3E'+(encodeApostrophe(oForm[2].value))+'%3C/string%3E%3C/value%3E%3C/member%3E%3Cmember%3E%3Cname%3Eauthor%3C/name%3E%3Cvalue%3E%3Cstring%3E'+encodeURI(oForm[0].value)+'%3C/string%3E%3C/value%3E%3C/member%3E%3Cmember%3E%3Cname%3Eauthor_email%3C/name%3E%3Cvalue%3E%3Cstring%3E'+encodeURI(oForm[1].value)+'%3C/string%3E%3C/value%3E%3C/member%3E%3C/struct%3E%3C/value%3E%3C/param%3E%3C/params%3E%3C/methodCall%3E'; // wp.getComments
					//alert(encodeApostrophe(oForm[2].value)); //"test" and ÒtestÓ and 'test' and ÔtestÕ it's a test.
					if(oForm[0].value){
						if(oForm[0].value != ""){ // name ok
							if(oForm[1].value){
								if(validateEmail(oForm[1].value) == true){ // email ok
									if(oForm[2].value){
										if(oForm[2].value != ""){ // comment ok
											bFormValidated = true;
										}
										else{
											oForm[2].focus();
											alert("Please enter your comment.");
										}
									}
									else{
										oForm[2].focus();
										alert("Please enter your comment.");
									}
								}
								else{
									oForm[1].focus();
									alert("Please enter a valid email.");
								}
							}
							else{
								oForm[1].focus();
								alert("Please enter a valid email.");
							}
						}
						else{
							oForm[0].focus();
							alert("Please enter your name.");
						}
					}
					else{
						oForm[0].focus();
						alert("Please enter your name.");
					}
					if(bFormValidated == true){
						new Ajax.Request(getJsonViaPostProxyUrl(), {method:'post', postBody:'url='+getProxyUrl('http://blog.ajobnearhome.com/xmlrpc.php')+'&post='+sXmlPost,
							onSuccess: function(transport){
								//alert(transport.responseText);
								// visit this article to address properly, for now hacked it by editing line 1246 of the xmlrpc.php file and setting "false" to "true" (http://wordpress.org/support/topic/304306)
								var oJson = eval('('+transport.responseText+')');
								if(oJson.html){ // if error returned
									if(oJson.html.body.p == "Duplicate comment detected; it looks as though you've already said that!"){
										alert("Duplicate comment detected; it looks as though you've already said that!");
									}
								}
								if(oJson.methodResponse){// sucessfull
									if(oJson.methodResponse.params.param.value){
										sCommentId = oJson.methodResponse.params.param.value.int;
										oForm[0].value = "";
										oForm[1].value = "";
										oForm[2].value = "";
										//oForm[3].value = "";
										getComments(sHtml);
									}
								}
								oForm[3].disabled = "";
							},
							onFailure: function(){
								alert('Sorry, the server seems to be down. Please try again later.');
								oForm[3].disabled = "";
							}
						});
					}
					else{
						oForm[3].disabled = ""; // re-enabled submit button so they can try again
					}
				}
				//var sForm = "<form action='javascript:' name='commentform' id='commentform'><p><input type='text' class='textbox' name='author' id='author' value='' size='22' tabindex='1'/><label for='author'><small> Name (Required)</small></label></p><p><input type='text' class='textbox' name='email' id='email' value='' size='22' tabindex='2'/><label for='email'><small> E-mail (Required)</small></label></p><p><input type='text' class='textbox' name='url' id='url' value='' size='22' tabindex='3'/><label for='url'><small> Website</small></label></p><p><textarea name='comment' id='comment' tabindex='4'></textarea></p><p><input name='submit' type='submit' id='submit' tabindex='5' value='Submit Comment'/></p></form><br>"; //<input type='button' name='button' value='GET test.html' onclick='javascript:alert();'>
				var sFormId = "commentForm_"+oElementTarget.id;
				var sForm = "<form action='javascript:' name='"+sFormId+"' id='"+sFormId+"'><p><input type='text' class='textbox' name='author' id='author' value='' size='22'/><label for='author'><small> Name (Required)</small></label></p><p><input type='text' class='textbox' name='email' id='email' value='' size='22'/><label for='email'><small> E-mail (Required)</small></label></p><p><textarea name='comment' id='comment'></textarea></p><p><input name='submit' type='submit' id='submit' value='Submit Comment'/></p></form><br/>";
				if(oJson.methodResponse.params.param.value.array.data){ // if comments found
					if(oJson.methodResponse.params.param.value.array.data.value[0]){// if more than one comment
						for(var i=0; i < oJson.methodResponse.params.param.value.array.data.value.length; i++){			
							sDate = decodeURI(oJson.methodResponse.params.param.value.array.data.value[i].struct.member[0].value["dateTime.iso8601"]);
							sDate = sDate.substr(0,4)+" "+sDate.substr(4,2)+" "+sDate.substr(6,2)+" "+sDate.substr(8,9);
							sDate = Date.parse(sDate).toString("dddd, MMMM d, yyyy");
							sUserId = decodeURI(oJson.methodResponse.params.param.value.array.data.value[i].struct.member[1].value["string"]);
							sCommentId = decodeURI(oJson.methodResponse.params.param.value.array.data.value[i].struct.member[2].value["string"]);
							sParentId = decodeURI(oJson.methodResponse.params.param.value.array.data.value[i].struct.member[3].value["string"]);
							sStatus = decodeURI(oJson.methodResponse.params.param.value.array.data.value[i].struct.member[4].value["string"]);
							sContent = decodeURI(oJson.methodResponse.params.param.value.array.data.value[i].struct.member[5].value["string"]);
							sLink = decodeURI(oJson.methodResponse.params.param.value.array.data.value[i].struct.member[6].value["string"]);
							sPostIdFromApi = decodeURI(oJson.methodResponse.params.param.value.array.data.value[i].struct.member[7].value["string"]);
							sTitle = decodeURI(oJson.methodResponse.params.param.value.array.data.value[i].struct.member[8].value["string"]);
							sAuthor = decodeURI(oJson.methodResponse.params.param.value.array.data.value[i].struct.member[9].value["string"]);
							sAuthorUrl = decodeURI(oJson.methodResponse.params.param.value.array.data.value[i].struct.member[10].value["string"]);
							sAuthorEmail = decodeURI(oJson.methodResponse.params.param.value.array.data.value[i].struct.member[11].value["string"]);
							sCommentsHtml = sCommentsHtml + "<p class='pods_p_header1'>"+sAuthor+"<br/><p class='pods_p_text0'>"+sDate+"</p>"+"<p class='pods_p_text0'>"+sContent+"</p><br/>";
						}
					}
					else{ // only one comment
						sDate = decodeURI(oJson.methodResponse.params.param.value.array.data.value.struct.member[0].value["dateTime.iso8601"]);
						sDate = sDate.substr(0,4)+" "+sDate.substr(4,2)+" "+sDate.substr(6,2)+" "+sDate.substr(8,9);
						sDate = Date.parse(sDate).toString("dddd, MMMM d, yyyy");
						sUserId = decodeURI(oJson.methodResponse.params.param.value.array.data.value.struct.member[1].value["string"]);
						sCommentId = decodeURI(oJson.methodResponse.params.param.value.array.data.value.struct.member[2].value["string"]);
						sParentId = decodeURI(oJson.methodResponse.params.param.value.array.data.value.struct.member[3].value["string"]);
						sStatus = decodeURI(oJson.methodResponse.params.param.value.array.data.value.struct.member[4].value["string"]);
						sContent = decodeURI(oJson.methodResponse.params.param.value.array.data.value.struct.member[5].value["string"]);
						sLink = decodeURI(oJson.methodResponse.params.param.value.array.data.value.struct.member[6].value["string"]);
						sPostIdFromApi = decodeURI(oJson.methodResponse.params.param.value.array.data.value.struct.member[7].value["string"]);
						sTitle = decodeURI(oJson.methodResponse.params.param.value.array.data.value.struct.member[8].value["string"]);
						sAuthor = decodeURI(oJson.methodResponse.params.param.value.array.data.value.struct.member[9].value["string"]);
						sAuthorUrl = decodeURI(oJson.methodResponse.params.param.value.array.data.value.struct.member[10].value["string"]);
						sAuthorEmail = decodeURI(oJson.methodResponse.params.param.value.array.data.value.struct.member[11].value["string"]);
						sCommentsHtml = sCommentsHtml + "<p class='pods_p_header1'>"+sAuthor+"<br/><p class='pods_p_text0'>"+sDate+"</p>"+"<p class='pods_p_text0'>"+sContent+"</p><br/>";
					}
					oDivHtml.update(sHtml+"<br/><p class='pods_p_header0'>"+"Comments"+sCommentsHtml+"</p><br/><p class='pods_p_header0'>"+"Leave a comment"+sForm+"</p>");
					Event.observe(sFormId, 'submit', postComment);
				}
				else{ // not comments found
					oDivHtml.update(sHtml+"<br><p class='pods_p_header0'>"+"Leave a comment"+sForm+"</p>");
					Event.observe(sFormId, 'submit', postComment);
				}
				oDivHtml.scrollTop = 0;
			}
			//alert(oTemplateNode.component[2].feedUrl.substr(oTemplateNode.component[2].feedUrl.indexOf("?")+1, oTemplateNode.component[2].feedUrl.length)+" - "+parseArgs(oTemplateNode.component[2].feedUrl.substr(oTemplateNode.component[2].feedUrl.indexOf("?")+1, oTemplateNode.component[2].feedUrl.length)).p);
			var sCommentsHeader = "Comments";
			var sXmlPost = '%3C%3Fxml%20version%3D%221.0%22%3F%3E%3CmethodCall%3E%3CmethodName%3Ewp.getComments%3C/methodName%3E%3Cparams%3E%3Cparam%3E%3Cvalue%3E%3Cstring%3E0%3C/string%3E%3C/value%3E%3C/param%3E%3Cparam%3E%3Cvalue%3E%3Cstring%3Exmlrpc-account%3C/string%3E%3C/value%3E%3C/param%3E%3Cparam%3E%3Cvalue%3E%3Cstring%3Exmlrpc-account%3C/string%3E%3C/value%3E%3C/param%3E%3Cparam%3E%3Cvalue%3E%3Cstruct%3E%3Cmember%3E%3Cname%3Epost_id%3C/name%3E%3Cvalue%3E%3Cint%3E'+sPostId+'%3C/int%3E%3C/value%3E%3C/member%3E%3C/struct%3E%3C/value%3E%3C/param%3E%3C/params%3E%3C/methodCall%3E'; // wp.getComments
			if(sPostId){
				new Ajax.Request(getJsonViaPostProxyUrl(), {method:'post', postBody:'url='+getProxyUrl('http://blog.ajobnearhome.com/xmlrpc.php')+'&post='+sXmlPost,
					onSuccess: function(transport){
						//alert(transport.responseText);
						var oJson = eval('('+transport.responseText+')');
						displayComments(oJson);
					},
					onFailure: function(){
						alert('Sorry, the server seems to be down. Please try again later.');
					}
				});
			}
		}
		//alert(oTemplateNode.component[2].feedUrl);
		new Ajax.Request(getJsonViaGetProxyUrl(oTemplateNode.component[2].feedUrl), {method:'get',
			onSuccess: function(transport){
				var oJson = eval('('+transport.responseText+')');
				init(oJson);
				//alert(transport.responseText);
			},
			onFailure: function(){
				alert('Sorry, the server seems to be down. Please try again later.');
			}
		});
		var init = function(oJson){
			var oNewTemplateNode = new Object();
			var sDate;
			var sAuthor;
			var sProcessedContent;
			var sGoogleAd;
			var sLinkAndEmailLink = "<p class='pods_p_text0'>"+"<a href='"+oJson.rss.channel.item.link+"' target='_blank'>Article Link</a></p>";
			if(oJson.rss.channel.item){
				if(oJson.rss.channel.item[0]){ // multiple rss items
					oNewTemplateNode.attachId = "_Pod_MultipartNav";
					oNewTemplateNode.component = new Array();
					oNewTemplateNode.component[0] = {attachId:oTemplateNode.component[0].attachId};
					oNewTemplateNode.component[0].text = oTemplateNode.component[0].text;
					oNewTemplateNode.component[1] = {attachId:"MultipartNav"};
					oNewTemplateNode.component[1].area = new Array();
					for(var i=0; i<oJson.rss.channel.item.length; i++){
						oNewTemplateNode.component[1].area[i] = {title:oJson.rss.channel.item[i].title, link:oJson.rss.channel.item[i].link};
					}
					oDivHtml.remove();
					//sPrevContentHeader = "";
					if(oTemplateNode.component[1].hidden == "false"){
						sPrevContentHeader = "<p class='pods_p_header0'>"+oTemplateNode.component[1].header+"</p>"+"<img src='"+getPathPrefix()+oTemplateNode.component[1].assetUrl+"' alt='"+oTemplateNode.component[1].assetUrl+"' id='wraparound_left'/><p class='pods_article_text'>"+oTemplateNode.component[1].text+"</p>";
					}
					window.oTemplates._Pod_MultipartNav(oNewTemplateNode, oElementTarget, sPrevContentHeader, sPrevContent, sPrevContentFooter, oOriginalTemplateNode, bIsRelatedType);
				}
				else{ // only one rss item (a single article)
					sDate = Date.parse(oJson.rss.channel.item.pubDate).toString("dddd, MMMM d, yyyy");
					if(!sDate){
						sDate = oJson.rss.channel.item.pubDate;
					}
					for(i=0; i< oJson.rss.channel.item.category.length; i++){
						if(oJson.rss.channel.item.category[i].substr(0, 7) == "Author:"){
							sAuthor = oJson.rss.channel.item.category[i].substr(8, oJson.rss.channel.item.category[i].length);
						}
					}
					if(!sAuthor){
						sAuthor = "TGW";
					}
					var iFoundIndex = oJson.rss.channel.item.content.indexOf("<script");
					if(iFoundIndex!=-1){
						sProcessedContent = oJson.rss.channel.item.content.substr(0,iFoundIndex);
						sGoogleAd = oJson.rss.channel.item.content.substr(iFoundIndex, oJson.rss.channel.item.content.length-4);
					}
					else{
						sProcessedContent = oJson.rss.channel.item.content;
					}
					var sContent = "<p class='pods_p_header0'>"+oJson.rss.channel.item.title+"</p><p class='pods_p_header1'>"+"By "+sAuthor+"<br/>"+sDate+"</p><div class='pods_article_text'>"+sProcessedContent+"</div>";
					if(oOriginalTemplateNode){
						if(oOriginalTemplateNode.component[4].hidden != "true"){ // if component "RelatedTitle" is enabled in admin tool, then proceed...
							sPrevContentFooter = "<br/>" + "<p class='pods_p_header0'>"+oOriginalTemplateNode.component[4].text+"</p><br/>";
							var sParams = "";
							oNewTemplateNode.attachId = "_Pod_Feed";
							oNewTemplateNode.component = new Array();
							oNewTemplateNode.component[0] = {attachId:oOriginalTemplateNode.component[0].attachId};
							oNewTemplateNode.component[0].text = oOriginalTemplateNode.component[0].text;
							oNewTemplateNode.component[1] = {attachId:oOriginalTemplateNode.component[1].attachId};
							oNewTemplateNode.component[1].assetUrl = {attachId:oOriginalTemplateNode.component[1].assetUrl};
							oNewTemplateNode.component[2] = {attachId:oOriginalTemplateNode.component[5].attachId};
							oNewTemplateNode.component[2].feedUrl = oOriginalTemplateNode.component[5].feedUrl;
							oDivHtml.remove();
							
							window.oTemplates._Pod_Feed(oNewTemplateNode, oElementTarget, sPrevContentHeader, sContent, sPrevContentFooter, oOriginalTemplateNode, true);
							
							//oDivHtml.update(sPrevContentHeader+sContent);
						}
						else{
							if(oOriginalTemplateNode.component[7].hidden == "false"){ // if comments are enabled
								getComments(sPrevContentHeader+sContent+sPrevContentFooter+sLinkAndEmailLink); //sPrevContentHeader+sContent+sPrevContentFooter+sCommentsHeader
							}
							else{
								oDivHtml.update(sPrevContentHeader+sContent+sPrevContentFooter+sLinkAndEmailLink);
							}
						}
					}
					else{
						oDivHtml.update(sPrevContentHeader+sContent+sPrevContentFooter+sLinkAndEmailLink);
					}
				}
			}
			else{
				alert("this feeds format it not supported yet or the article id isn't correct (article doesn't exist) or the article isn't set to published status.");
			}
		}
		/*var init = function(oJson){			
			var sContent = "<p class='pods_p_header0'/>"+oJson.rss.channel.title+"</p>";
			for(var i=0; i<oJson.rss.channel.item.length; i++){
				var sDesc = oJson.rss.channel.item[i].description;
				if(oJson.rss.channel.item[i].description.indexOf("[...]", 0) != -1){
					sDesc = oJson.rss.channel.item[i].description.substr(0, oJson.rss.channel.item[i].description.indexOf("[...]", 0));
				}
				sContent = sContent + "<p class='pods_rss_title'>"+oJson.rss.channel.item[i].title+"</p><p class='pods_rss_desc'/>"+sDesc+" <a href='"+oJson.rss.channel.item[i].link+"' target='_blank'><font color='"+sMainRollOverColor+"'>[read more in new window]</font></a>";
			}
			oDivHtml.update(sContent);
		}*/
	}
	this._Pod_MultipartNav = function(oTemplateNode, oElementTarget, sPrevContentHeader, sPrevContent, sPrevContentFooter, oOriginalTemplateNode, bIsRelatedType, sFileGuid){
		var bNoTitleBar = false;
		if(!oElementTarget.getChildElementById("divTitleBar")){
			bNoTitleBar = true;
		}
		else{
			//oElementTarget.showExpandShrinkControls();
		}
		if(!sPrevContentHeader){
			sPrevContentHeader = "";
		}
		if(!sPrevContentFooter){
			sPrevContentFooter = "";
		}
		if(!sPrevContent){
			sPrevContent = "";
		}
		var sRolloutColor = "#"+window._oColors.colours.palette[window._sColorPaletteId].top_area.main_nav_area.rollout.hex_value;
		var sRolloverColor = "#"+window._oColors.colours.palette[window._sColorPaletteId].top_area.main_nav_area.rollover.hex_value;
		var iCurrentShrunkWidth = 320;
		var iCurrentExpandedWidth = 652;

		var oDivHtml = new Element("div");
		oDivHtml.setAttribute("id", "divHtml_0");
		oDivHtml.addClassName("cssDivMultipartPod");
		oElementTarget.getChildElementById("divContent").appendChild(oDivHtml);
		
		if(bNoTitleBar == false){
			if(oTemplateNode.component[0].hidden){
				if(oTemplateNode.component[0].hidden != "true"){
					oElementTarget.getChildElementById("divTitleBar").getChildElementById("divTitleBarTitle").update(oTemplateNode.component[0].text.toUpperCase());
				}
			}
			else{
				oElementTarget.getChildElementById("divTitleBar").getChildElementById("divTitleBarTitle").update(oTemplateNode.component[0].text.toUpperCase());
			}
		}
		oElementTarget.fncExpanded = function(){
			/*if(Prototype.Browser.IE == true && parseInt(Prototype.Browser.Version) < 8){
				oDivHtml.setStyle({
					height: 461,
					width: iCurrentExpandedWidth
				});
			}
			oDivHtml.setStyle({overflow: "auto"});*/
		};
		oElementTarget.fncShrunk = function(){
			/*if(Prototype.Browser.IE == true && parseInt(Prototype.Browser.Version) < 8){
				oDivHtml.setStyle({
					height: 214,
					width: iCurrentShrunkWidth
				});
			}
			oDivHtml.setStyle({overflow: "auto"});*/
		};
		oElementTarget.fncShrunk();
		oDivHtml.update("<p class='pods_rss_desc'>Loading articles...</p>");
		var createArticleNav = function(oJson, sPrevContentHeader, sPrevContent, sPrevContentFooter){
			oDivHtml.update(sPrevContentHeader+sPrevContent+sPrevContentFooter);
			//alert("1: "+bIsRelatedType);
			for(var i=0; i<oJson.xml.area.length; i++){
				var oDivElement = new Element("div");
				oDivElement.setAttribute("id", "oDivElement_"+i);
				if(Prototype.Browser.IE == true && parseInt(Prototype.Browser.Version) == 6){
					oDivElement.addClassName("cssDivMultipartPodNavElementIE6");
				}
				else{
					oDivElement.addClassName("cssDivMultipartPodNavElement");
				}
				/*oDivElement.setStyle({
					position: "relative",
					backgroundColor: "#ffffff",
					borderBottomStyle: "solid",
					borderBottomWidth: "1px",
					borderBottomColor: "#dddddd",
					color: "#444444",
					fontFamily: "Verdana",
					fontSize: "9px",
					fontWeight: "Bold",
					textIndent: "0px",
					width: "100%"
				});
				if(Prototype.Browser.IE == true && parseInt(Prototype.Browser.Version) < 8){
					oDivElement.setStyle({
						height: "51px",
						paddingTop: "19px"
					});
				}
				else{
					oDivElement.setStyle({
						height: "31px",
						paddingTop: "19px"
					});
				}*/
				oDivElement.oDivElementRollOver = function(){
					this.setStyle({
						color: sRolloverColor
					});
				}
				oDivElement.oDivElementRollOut = function(){
					this.setStyle({
						color: "#444444"
					});
				}
				oDivElement.oDivElementMouseUp = function(){
					//alert("Work in progress, this feature currently being developed. It will soon load this file: '"+this._sRequestXml+"' via AJAX and display the article in this pod. There will be 'next/prev' arrows as well as a 'back' button to return to the article navigation. Also are plans to have an optional thumbnail here.");
					if(this._sRequestXml){
						oDivHtml.update("<p class='pods_rss_desc'>Loading article...</p>");
						new Ajax.Request(getJsonViaGetProxyUrl(this._sRequestXml), {method:'get',
							onSuccess: function(transport){
								var oJson = eval('('+transport.responseText+')');
								//alert(oElementTarget.id);
								oDivHtml.remove();
								window.oTemplates[oJson.xml.template.attachId](oJson.xml.template, oElementTarget); // recurse...
								oElementTarget.showBack(window.oTemplates._Pod_MultipartNav, {oTemplateNode:oTemplateNode, oElementTarget:oElementTarget, sPrevContentHeader:"", sPrevContent:"", sPrevContentFooter:"", oOriginalTemplateNode:oOriginalTemplateNode});
							},
							onFailure: function(){
								alert('Sorry, the server seems to be down. Please try again later.');
							}
						});
					}
					else{ // must be from an rss feed that had multiple items and not admin tool driven
						//alert("2: "+bIsRelatedType);
						oDivHtml.remove();
						var oNewTemplateNode = new Object();
						oNewTemplateNode.attachId = "_Pod_Feed";
						oNewTemplateNode.component = new Array();
						oNewTemplateNode.component[0] = {attachId:oOriginalTemplateNode.component[0].attachId};
						oNewTemplateNode.component[0].text = oJson.xml.area[this._iOrdinalId].title.toUpperCase().substr(0, 37)+(oJson.xml.area[this._iOrdinalId].title.length<=37 ? "" : "...");
						oNewTemplateNode.component[1] = {attachId:oOriginalTemplateNode.component[1].attachId};
						oNewTemplateNode.component[1].assetUrl = {attachId:oOriginalTemplateNode.component[1].assetUrl};
						oNewTemplateNode.component[2] = {attachId:oOriginalTemplateNode.component[2].attachId};
						oNewTemplateNode.component[2].feedUrl = oTemplateNode.component[1].area[this._iOrdinalId].link+"&withoutcomments=1&feed=rss2";
						window.oTemplates._Pod_Feed(oNewTemplateNode, oElementTarget, sPrevContentHeader, sPrevContent, sPrevContentFooter, oOriginalTemplateNode);
						oElementTarget.showBack(window.oTemplates._Pod_Feed, {oTemplateNode:oOriginalTemplateNode, oElementTarget:oElementTarget, sPrevContentHeader:"", sPrevContent: "", sPrevContentFooter:"", oOriginalTemplateNode:oOriginalTemplateNode, bIsRelatedType:bIsRelatedType});
					}
				}
				Event.observe(oDivElement, "mouseenter", oDivElement.oDivElementRollOver);
				Event.observe(oDivElement, "mouseleave", oDivElement.oDivElementRollOut);
				Event.observe(oDivElement, "mouseup", oDivElement.oDivElementMouseUp);
				oDivElement.update(oJson.xml.area[i].title.toUpperCase());
				if(oJson.xml.area[i].requestXml){
					oDivElement._sRequestXml = oJson.xml.area[i].requestXml;
				}
				oDivElement._iOrdinalId = i;
				oDivHtml.appendChild(oDivElement);
			}
		}
		if(!oTemplateNode.component[1].area){
			new Ajax.Request(getJsonViaGetProxyUrl(oTemplateNode.component[1].requestAreaXml), {method:'get',
				onSuccess: function(transport){
					var oJson = eval('('+transport.responseText+')');
					createArticleNav(oJson, sPrevContentHeader, sPrevContent, sPrevContentFooter);
				},
				onFailure: function(){
					alert('Sorry, the server seems to be down. Please try again later.');
				}
			});
		}
		else{
			var oAreaNode = Object();
			oAreaNode.xml = Object();
			oAreaNode.xml.area = oTemplateNode.component[1].area;
			createArticleNav(oAreaNode, sPrevContentHeader, sPrevContent, sPrevContentFooter);
		}
	}
	this._Pod_MultipartNavHorz = function(oTemplateNode, oElementTarget, sPrevContentHeader, sPrevContent, sPrevContentFooter, oOriginalTemplateNode, bIsRelatedType, sFileGuid){
		var bNoTitleBar = false;
		if(!oElementTarget.getChildElementById("divTitleBar")){
			bNoTitleBar = true;
		}
		else{
			//oElementTarget.showExpandShrinkControls();
		}
		if(!sPrevContentHeader){
			sPrevContentHeader = "";
		}
		if(!sPrevContentFooter){
			sPrevContentFooter = "";
		}
		if(!sPrevContent){
			sPrevContent = "";
		}
		var sRolloutColor = "#"+window._oColors.colours.palette[window._sColorPaletteId].top_area.main_nav_area.rollout.hex_value;
		var sRolloverColor = "#"+window._oColors.colours.palette[window._sColorPaletteId].top_area.main_nav_area.rollover.hex_value;
		var iCurrentShrunkWidth = 320;
		var iCurrentExpandedWidth = 652;

		var oDivHtml = new Element("div");
		oDivHtml.setAttribute("id", "divHtml_0");
		oDivHtml.addClassName("cssDivMultipartHorzPod");
		oElementTarget.getChildElementById("divContent").appendChild(oDivHtml);
		
		if(bNoTitleBar == false){
			if(oTemplateNode.component[0].hidden){
				if(oTemplateNode.component[0].hidden != "true"){
					oElementTarget.getChildElementById("divTitleBar").getChildElementById("divTitleBarTitle").update(oTemplateNode.component[0].text.toUpperCase());
				}
			}
			else{
				oElementTarget.getChildElementById("divTitleBar").getChildElementById("divTitleBarTitle").update(oTemplateNode.component[0].text.toUpperCase());
			}
		}
		oElementTarget.fncExpanded = function(){
			/*if(Prototype.Browser.IE == true && parseInt(Prototype.Browser.Version) < 8){
				oDivHtml.setStyle({
					height: 461,
					width: iCurrentExpandedWidth
				});
			}
			oDivHtml.setStyle({overflow: "auto"});*/
		};
		oElementTarget.fncShrunk = function(){
			/*if(Prototype.Browser.IE == true && parseInt(Prototype.Browser.Version) < 8){
				oDivHtml.setStyle({
					height: 214,
					width: iCurrentShrunkWidth
				});
			}
			oDivHtml.setStyle({overflow: "auto"});*/
		};
		oElementTarget.fncShrunk();
		oDivHtml.update("<p class='pods_rss_desc'>Loading articles...</p>");
		var createArticleNav = function(oJson, sPrevContentHeader, sPrevContent, sPrevContentFooter){
			oDivHtml.update(sPrevContentHeader+sPrevContent+sPrevContentFooter);
			//alert("1: "+bIsRelatedType);
			for(var i=0; i<oJson.xml.area.length; i++){
				var oDivElement = new Element("div");
				oDivElement.setAttribute("id", "oDivElement_"+i);
				if(Prototype.Browser.IE == true && parseInt(Prototype.Browser.Version) == 6){
					oDivElement.addClassName("cssDivMultipartPodNavElementIE6");
				}
				else{
					oDivElement.addClassName("cssDivMultipartHorzPodNavElement");
				}
				/*oDivElement.setStyle({
					position: "relative",
					backgroundColor: "#ffffff",
					borderBottomStyle: "solid",
					borderBottomWidth: "1px",
					borderBottomColor: "#dddddd",
					color: "#444444",
					fontFamily: "Verdana",
					fontSize: "9px",
					fontWeight: "Bold",
					textIndent: "0px",
					width: "100%"
				});
				if(Prototype.Browser.IE == true && parseInt(Prototype.Browser.Version) < 8){
					oDivElement.setStyle({
						height: "51px",
						paddingTop: "19px"
					});
				}
				else{
					oDivElement.setStyle({
						height: "31px",
						paddingTop: "19px"
					});
				}*/
				oDivElement.oDivElementRollOver = function(){
					this.setStyle({
						color: sRolloverColor
					});
				}
				oDivElement.oDivElementRollOut = function(){
					this.setStyle({
						color: "#444444"
					});
				}
				oDivElement.oDivElementMouseUp = function(){
					//alert("Work in progress, this feature currently being developed. It will soon load this file: '"+this._sRequestXml+"' via AJAX and display the article in this pod. There will be 'next/prev' arrows as well as a 'back' button to return to the article navigation. Also are plans to have an optional thumbnail here.");
					if(this._sRequestXml){
						oDivHtml.update("<p class='pods_rss_desc'>Loading article...</p>");
						new Ajax.Request(getJsonViaGetProxyUrl(this._sRequestXml), {method:'get',
							onSuccess: function(transport){
								var oJson = eval('('+transport.responseText+')');
								//alert(oElementTarget.id);
								oDivHtml.remove();
								window.oTemplates[oJson.xml.template.attachId](oJson.xml.template, oElementTarget); // recurse...
								oElementTarget.showBack(window.oTemplates._Pod_MultipartNav, {oTemplateNode:oTemplateNode, oElementTarget:oElementTarget, sPrevContentHeader:"", sPrevContent:"", sPrevContentFooter:"", oOriginalTemplateNode:oOriginalTemplateNode});
							},
							onFailure: function(){
								alert('Sorry, the server seems to be down. Please try again later.');
							}
						});
					}
					else{ // must be from an rss feed that had multiple items and not admin tool driven
						//alert("2: "+bIsRelatedType);
						oDivHtml.remove();
						var oNewTemplateNode = new Object();
						oNewTemplateNode.attachId = "_Pod_Feed";
						oNewTemplateNode.component = new Array();
						oNewTemplateNode.component[0] = {attachId:oOriginalTemplateNode.component[0].attachId};
						oNewTemplateNode.component[0].text = oJson.xml.area[this._iOrdinalId].title.toUpperCase().substr(0, 37)+(oJson.xml.area[this._iOrdinalId].title.length<=37 ? "" : "...");
						oNewTemplateNode.component[1] = {attachId:oOriginalTemplateNode.component[1].attachId};
						oNewTemplateNode.component[1].assetUrl = {attachId:oOriginalTemplateNode.component[1].assetUrl};
						oNewTemplateNode.component[2] = {attachId:oOriginalTemplateNode.component[2].attachId};
						oNewTemplateNode.component[2].feedUrl = oTemplateNode.component[1].area[this._iOrdinalId].link+"&withoutcomments=1&feed=rss2";
						window.oTemplates._Pod_Feed(oNewTemplateNode, oElementTarget, sPrevContentHeader, sPrevContent, sPrevContentFooter, oOriginalTemplateNode);
						oElementTarget.showBack(window.oTemplates._Pod_Feed, {oTemplateNode:oOriginalTemplateNode, oElementTarget:oElementTarget, sPrevContentHeader:"", sPrevContent: "", sPrevContentFooter:"", oOriginalTemplateNode:oOriginalTemplateNode, bIsRelatedType:bIsRelatedType});
					}
				}
				Event.observe(oDivElement, "mouseenter", oDivElement.oDivElementRollOver);
				Event.observe(oDivElement, "mouseleave", oDivElement.oDivElementRollOut);
				Event.observe(oDivElement, "mouseup", oDivElement.oDivElementMouseUp);
				var sHtml = "<img src='"+getPathPrefix()+oJson.xml.area[i].areaLevelAssetUrl+"' alt='"+oJson.xml.area[i].areaLevelAssetRollOverText+"' id='wraparound_left'/>";
				//oDivElement.update(oJson.xml.area[i].title.toUpperCase());
				oDivElement.update(sHtml);
				
				if(oJson.xml.area[i].requestXml){
					oDivElement._sRequestXml = oJson.xml.area[i].requestXml;
				}
				oDivElement._iOrdinalId = i;
				oDivHtml.appendChild(oDivElement);
			}
		}
		if(!oTemplateNode.component[1].area){
			new Ajax.Request(getJsonViaGetProxyUrl(oTemplateNode.component[1].requestAreaXml), {method:'get',
				onSuccess: function(transport){
					var oJson = eval('('+transport.responseText+')');
					createArticleNav(oJson, sPrevContentHeader, sPrevContent, sPrevContentFooter);
				},
				onFailure: function(){
					alert('Sorry, the server seems to be down. Please try again later.');
				}
			});
		}
		else{
			var oAreaNode = Object();
			oAreaNode.xml = Object();
			oAreaNode.xml.area = oTemplateNode.component[1].area;
			createArticleNav(oAreaNode, sPrevContentHeader, sPrevContent, sPrevContentFooter);
		}
	}
	this._Pod_NavHorz = function(oTemplateNode, oElementTarget, sPrevContentHeader, sPrevContent, sPrevContentFooter, oOriginalTemplateNode, bIsRelatedType, sFileGuid){
		var bNoTitleBar = false;
		if(!oElementTarget.getChildElementById("divTitleBar")){
			bNoTitleBar = true;
		}
		else{
			//oElementTarget.showExpandShrinkControls();
		}
		if(!sPrevContentHeader){
			sPrevContentHeader = "";
		}
		if(!sPrevContentFooter){
			sPrevContentFooter = "";
		}
		if(!sPrevContent){
			sPrevContent = "";
		}
		var sRolloutColor = "#"+window._oColors.colours.palette[window._sColorPaletteId].top_area.main_nav_area.rollout.hex_value;
		var sRolloverColor = "#"+window._oColors.colours.palette[window._sColorPaletteId].top_area.main_nav_area.rollover.hex_value;
		var iCurrentShrunkWidth = 320;
		var iCurrentExpandedWidth = 652;

		var oDivHtml = new Element("div");
		oDivHtml.setAttribute("id", "divHtml_0");
		oDivHtml.addClassName("cssDivMultipartHorzPod");
		oElementTarget.getChildElementById("divContent").appendChild(oDivHtml);
		
		var oDivText0 = new Element("div");
		oDivText0.setAttribute("id", "divText_0");
		oDivText0.addClassName("cssDivMultipartHorzPodText0");
		oElementTarget.getChildElementById("divContent").appendChild(oDivText0);
		
		if(bNoTitleBar == false){
			if(oTemplateNode.component[0].hidden){
				if(oTemplateNode.component[0].hidden != "true"){
					oElementTarget.getChildElementById("divTitleBar").getChildElementById("divTitleBarTitle").update(oTemplateNode.component[0].text.toUpperCase());
				}
			}
			else{
				oElementTarget.getChildElementById("divTitleBar").getChildElementById("divTitleBarTitle").update(oTemplateNode.component[0].text.toUpperCase());
			}
		}
		oElementTarget.fncExpanded = function(){
			/*if(Prototype.Browser.IE == true && parseInt(Prototype.Browser.Version) < 8){
				oDivHtml.setStyle({
					height: 461,
					width: iCurrentExpandedWidth
				});
			}
			oDivHtml.setStyle({overflow: "auto"});*/
		};
		oElementTarget.fncShrunk = function(){
			/*if(Prototype.Browser.IE == true && parseInt(Prototype.Browser.Version) < 8){
				oDivHtml.setStyle({
					height: 214,
					width: iCurrentShrunkWidth
				});
			}
			oDivHtml.setStyle({overflow: "auto"});*/
		};
		oElementTarget.fncShrunk();
		oDivHtml.update("<p class='pods_rss_desc'>Loading...</p>");
		var createArticleNav = function(oJson, sPrevContentHeader, sPrevContent, sPrevContentFooter){
			oDivHtml.update(sPrevContentHeader+sPrevContent+sPrevContentFooter);
			//alert("1: "+bIsRelatedType);
			for(var i=0; i<oJson.xml.area.length; i++){
				var oDivElement = new Element("div");
				oDivElement.setAttribute("id", "oDivElement_"+i);
				if(Prototype.Browser.IE == true && parseInt(Prototype.Browser.Version) == 6){
					oDivElement.addClassName("cssDivMultipartPodNavElementIE6");
				}
				else{
					oDivElement.addClassName("cssDivMultipartHorzPodNavElement");
				}
				/*oDivElement.setStyle({
					position: "relative",
					backgroundColor: "#ffffff",
					borderBottomStyle: "solid",
					borderBottomWidth: "1px",
					borderBottomColor: "#dddddd",
					color: "#444444",
					fontFamily: "Verdana",
					fontSize: "9px",
					fontWeight: "Bold",
					textIndent: "0px",
					width: "100%"
				});
				if(Prototype.Browser.IE == true && parseInt(Prototype.Browser.Version) < 8){
					oDivElement.setStyle({
						height: "51px",
						paddingTop: "19px"
					});
				}
				else{
					oDivElement.setStyle({
						height: "31px",
						paddingTop: "19px"
					});
				}*/
				oDivElement.oDivElementRollOver = function(){
					this.setStyle({
						color: sRolloverColor,
						cursor: "pointer"
					});
					this._oDivText0.update(this._sText);
				}
				oDivElement.oDivElementRollOut = function(){
					this.setStyle({
						color: "#444444",
						cursor: "default"
					});
				}
				oDivElement.oDivElementMouseUp = function(){
					//alert("Work in progress, this feature currently being developed. It will soon load this file: '"+this._sRequestXml+"' via AJAX and display the article in this pod. There will be 'next/prev' arrows as well as a 'back' button to return to the article navigation. Also are plans to have an optional thumbnail here.");
					/*if(this._sRequestXml){
						oDivHtml.update("<p class='pods_rss_desc'>Loading article...</p>");
						new Ajax.Request(getJsonViaGetProxyUrl(this._sRequestXml), {method:'get',
							onSuccess: function(transport){
								var oJson = eval('('+transport.responseText+')');
								//alert(oElementTarget.id);
								oDivHtml.remove();
								window.oTemplates[oJson.xml.template.attachId](oJson.xml.template, oElementTarget); // recurse...
								oElementTarget.showBack(window.oTemplates._Pod_MultipartNav, {oTemplateNode:oTemplateNode, oElementTarget:oElementTarget, sPrevContentHeader:"", sPrevContent:"", sPrevContentFooter:"", oOriginalTemplateNode:oOriginalTemplateNode});
							},
							onFailure: function(){
								alert('Sorry, the server seems to be down. Please try again later.');
							}
						});
					}
					else{ // must be from an rss feed that had multiple items and not admin tool driven
						//alert("2: "+bIsRelatedType);
						oDivHtml.remove();
						var oNewTemplateNode = new Object();
						oNewTemplateNode.attachId = "_Pod_Feed";
						oNewTemplateNode.component = new Array();
						oNewTemplateNode.component[0] = {attachId:oOriginalTemplateNode.component[0].attachId};
						oNewTemplateNode.component[0].text = oJson.xml.area[this._iOrdinalId].title.toUpperCase().substr(0, 37)+(oJson.xml.area[this._iOrdinalId].title.length<=37 ? "" : "...");
						oNewTemplateNode.component[1] = {attachId:oOriginalTemplateNode.component[1].attachId};
						oNewTemplateNode.component[1].assetUrl = {attachId:oOriginalTemplateNode.component[1].assetUrl};
						oNewTemplateNode.component[2] = {attachId:oOriginalTemplateNode.component[2].attachId};
						oNewTemplateNode.component[2].feedUrl = oTemplateNode.component[1].area[this._iOrdinalId].link+"&withoutcomments=1&feed=rss2";
						window.oTemplates._Pod_Feed(oNewTemplateNode, oElementTarget, sPrevContentHeader, sPrevContent, sPrevContentFooter, oOriginalTemplateNode);
						oElementTarget.showBack(window.oTemplates._Pod_Feed, {oTemplateNode:oOriginalTemplateNode, oElementTarget:oElementTarget, sPrevContentHeader:"", sPrevContent: "", sPrevContentFooter:"", oOriginalTemplateNode:oOriginalTemplateNode, bIsRelatedType:bIsRelatedType});
					}*/
					//window.open(this._sLinkUrl);
					window.location = this._sLinkUrl;
				}
				Event.observe(oDivElement, "mouseenter", oDivElement.oDivElementRollOver);
				Event.observe(oDivElement, "mouseleave", oDivElement.oDivElementRollOut);
				Event.observe(oDivElement, "mouseup", oDivElement.oDivElementMouseUp);
				var sHtml = "<img src='"+getPathPrefix()+oJson.xml.area[i].areaLevelAssetUrl+"' alt='"+oJson.xml.area[i].areaLevelAssetRollOverText+"' id='wraparound_left'/>";
				//oDivElement.update(oJson.xml.area[i].title.toUpperCase());
				oDivElement._sText = oJson.xml.area[i].areaLevelText1;
				oDivElement._oDivText0 = oDivText0;
				oDivElement._sLinkUrl = oJson.xml.area[i].areaLevelLinkUrl;
				oDivElement.update(sHtml);
				if(i == 0){
					oDivText0.update(oJson.xml.area[i].areaLevelText1);
				}
				if(oJson.xml.area[i].requestXml){
					oDivElement._sRequestXml = oJson.xml.area[i].requestXml;
				}
				oDivElement._iOrdinalId = i;
				oDivHtml.appendChild(oDivElement);
			}
		}
		if(!oTemplateNode.component[1].area){
			new Ajax.Request(getJsonViaGetProxyUrl(oTemplateNode.component[1].requestAreaXml), {method:'get',
				onSuccess: function(transport){
					var oJson = eval('('+transport.responseText+')');
					createArticleNav(oJson, sPrevContentHeader, sPrevContent, sPrevContentFooter);
				},
				onFailure: function(){
					alert('Sorry, the server seems to be down. Please try again later.');
				}
			});
		}
		else{
			var oAreaNode = Object();
			oAreaNode.xml = Object();
			oAreaNode.xml.area = oTemplateNode.component[1].area;
			createArticleNav(oAreaNode, sPrevContentHeader, sPrevContent, sPrevContentFooter);
		}
	}
	this._Pod_Wordpress = function(oTemplateNode, oElementTarget, sPrevContentHeader, sPrevContent, sPrevContentFooter, oOriginalTemplateNode, bIsRelatedType, sFileGuid){
		var sParams = "";
		var sParams2 = "";
		var oNewTemplateNode = new Object();
		oNewTemplateNode.attachId = "_Pod_Feed";
		oNewTemplateNode.component = new Array();
		oNewTemplateNode.component[0] = {attachId:oTemplateNode.component[0].attachId};
		oNewTemplateNode.component[0].text = oTemplateNode.component[0].text;
		oNewTemplateNode.component[1] = {attachId:oTemplateNode.component[1].attachId};
		if(oTemplateNode.component[1].hidden){
			oNewTemplateNode.component[1].hidden = oTemplateNode.component[1].hidden;
		}
		else{
			oNewTemplateNode.component[1].hidden = "false";
		}
		oNewTemplateNode.component[1].header = oTemplateNode.component[1].header;
		oNewTemplateNode.component[1].text = oTemplateNode.component[1].text;
		oNewTemplateNode.component[1].assetUrl = oTemplateNode.component[1].assetUrl;
		oNewTemplateNode.component[2] = {attachId:oTemplateNode.component[2].attachId};
		oNewTemplateNode.component[2].hidden = oTemplateNode.component[2].hidden;
		for(var p in oTemplateNode.component[3]){
			if(p != "attachId" && oTemplateNode.component[3][p] != "empty"){
				sParams = sParams + p+"="+oTemplateNode.component[3][p]+"&";
			}
		}
		if(sParams.substr(sParams.length-1,sParams.length-1) == "&"){
			sParams = sParams.substr(0,sParams.length-1);
		}
		oNewTemplateNode.component[2].feedUrl = oTemplateNode.component[2].wpUrl+"?"+sParams;
		oNewTemplateNode.component[4] = {attachId:oTemplateNode.component[4].attachId};
		oNewTemplateNode.component[4].text = oTemplateNode.component[4].text;
		oNewTemplateNode.component[4].hidden = oTemplateNode.component[4].hidden;
		for(var p in oTemplateNode.component[6]){
			if(p != "attachId" && oTemplateNode.component[6][p] != "empty"){
				sParams2 = sParams2 + p+"="+oTemplateNode.component[6][p]+"&";
			}
		}
		if(sParams2.substr(sParams2.length-1,sParams2.length-1) == "&"){
			sParams2 = sParams2.substr(0,sParams2.length-1);
		}
		oNewTemplateNode.component[5] = {attachId:oTemplateNode.component[5].attachId};
		oNewTemplateNode.component[5].feedUrl = oTemplateNode.component[5].wpUrl+"?"+sParams2;
		oNewTemplateNode.component[7] = oTemplateNode.component[7];
		var oOriginalTemplateNode = oNewTemplateNode;
		if(oTemplateNode.component[1].hidden == "false"){
			var sPrevContentHeader = "<p class='pods_p_header0'>"+oTemplateNode.component[1].header+"</p>"+"<img src='"+getPathPrefix()+oTemplateNode.component[1].assetUrl+"' alt='"+oTemplateNode.component[1].assetUrl+"' id='wraparound_left'/><p class='pods_article_text'>"+oTemplateNode.component[1].text+"</p>";
		}
		window.oTemplates._Pod_Feed(oNewTemplateNode, oElementTarget, sPrevContentHeader, "", "", oOriginalTemplateNode);
	}
	this._Pod_WordpressAutoHeight = function(oTemplateNode, oElementTarget, sPrevContentHeader, sPrevContent, sPrevContentFooter, oOriginalTemplateNode, bIsRelatedType, sFileGuid){
		var sParams = "";
		var sParams2 = "";
		var oNewTemplateNode = new Object();
		oNewTemplateNode.attachId = "_Pod_Feed";
		oNewTemplateNode.component = new Array();
		oNewTemplateNode.component[0] = {attachId:oTemplateNode.component[0].attachId};
		oNewTemplateNode.component[0].text = oTemplateNode.component[0].text;
		oNewTemplateNode.component[1] = {attachId:oTemplateNode.component[1].attachId};
		if(oTemplateNode.component[1].hidden){
			oNewTemplateNode.component[1].hidden = oTemplateNode.component[1].hidden;
		}
		else{
			oNewTemplateNode.component[1].hidden = "false";
		}
		oNewTemplateNode.component[1].header = oTemplateNode.component[1].header;
		oNewTemplateNode.component[1].text = oTemplateNode.component[1].text;
		oNewTemplateNode.component[1].assetUrl = oTemplateNode.component[1].assetUrl;
		oNewTemplateNode.component[2] = {attachId:oTemplateNode.component[2].attachId};
		oNewTemplateNode.component[2].hidden = oTemplateNode.component[2].hidden;
		for(var p in oTemplateNode.component[3]){
			if(p != "attachId" && oTemplateNode.component[3][p] != "empty"){
				sParams = sParams + p+"="+oTemplateNode.component[3][p]+"&";
			}
		}
		if(sParams.substr(sParams.length-1,sParams.length-1) == "&"){
			sParams = sParams.substr(0,sParams.length-1);
		}
		oNewTemplateNode.component[2].feedUrl = oTemplateNode.component[2].wpUrl+"?"+sParams;
		oNewTemplateNode.component[4] = {attachId:oTemplateNode.component[4].attachId};
		oNewTemplateNode.component[4].text = oTemplateNode.component[4].text;
		oNewTemplateNode.component[4].hidden = oTemplateNode.component[4].hidden;
		for(var p in oTemplateNode.component[6]){
			if(p != "attachId" && oTemplateNode.component[6][p] != "empty"){
				sParams2 = sParams2 + p+"="+oTemplateNode.component[6][p]+"&";
			}
		}
		if(sParams2.substr(sParams2.length-1,sParams2.length-1) == "&"){
			sParams2 = sParams2.substr(0,sParams2.length-1);
		}
		oNewTemplateNode.component[5] = {attachId:oTemplateNode.component[5].attachId};
		oNewTemplateNode.component[5].feedUrl = oTemplateNode.component[5].wpUrl+"?"+sParams2;
		oNewTemplateNode.component[7] = oTemplateNode.component[7];
		var oOriginalTemplateNode = oNewTemplateNode;
		if(oTemplateNode.component[1].hidden == "false"){
			var sPrevContentHeader = "<p class='pods_p_header0'>"+oTemplateNode.component[1].header+"</p>"+"<img src='"+getPathPrefix()+oTemplateNode.component[1].assetUrl+"' alt='"+oTemplateNode.component[1].assetUrl+"' id='wraparound_left'/><p class='pods_article_text'>"+oTemplateNode.component[1].text+"</p>";
		}
		window.oTemplates._Pod_Feed(oNewTemplateNode, oElementTarget, sPrevContentHeader, "", "", oOriginalTemplateNode);
	}
	this._Pod_SlideshowNav = function(oTemplateNode, oElementTarget, sPrevContentHeader, sPrevContent, sPrevContentFooter, oOriginalTemplateNode, bIsRelatedType, sFileGuid){
		var iPodWidth = 308;
		var iPodHeight = 207;
		var iGutterVert = 10+21; // 21 for phantom title bar
		var iGutterHorz = 10;
		var bNoTitleBar = false;
		if(typeof window._aryPodSetTimeoutReferences == "undefined"){
			window._aryPodSetTimeoutReferences = new Array;
		}
		if(typeof window._iPodSetTimeoutRefsIndex == "undefined"){
			window._iPodSetTimeoutRefsIndex = 0;
		}
		else{
			window._iPodSetTimeoutRefsIndex++;
		}
		var iInstanceId = window._iPodSetTimeoutRefsIndex;
		if(typeof oElementTarget.getChildElementById("divTitleBar") == "undefined"){
			bNoTitleBar = true;
		}
		else{
			//oElementTarget.showExpandShrinkControls();
		}
		var sRolloutColor = "#"+window._oColors.colours.palette[window._sColorPaletteId].top_area.main_nav_area.rollout.hex_value;
		var sRolloverColor = "#"+window._oColors.colours.palette[window._sColorPaletteId].top_area.main_nav_area.rollover.hex_value;
		var oDivHtml = window.document.createElement("div");
		$(oDivHtml).setAttribute("id", "divHtml_0");

			oDivHtml.setStyle({
				position: "absolute",
				marginLeft: "10px",
				paddingRight: "0px",
				marginTop: "0px",
				height: "189px",
				width: "290px",
				overflow: "hidden"
			});// width is hardcoded for 2x wide. this should look up a level in the area attribute of a pod combiner area called podWidthFactor
		
		oElementTarget.getChildElementById("divContent").appendChild(oDivHtml);
		if(bNoTitleBar == false){
			if(oTemplateNode.component[0].hidden){
				if(oTemplateNode.component[0].hidden != "true"){
					oElementTarget.getChildElementById("divTitleBar").getChildElementById("divTitleBarTitle").update(oTemplateNode.component[0].text.toUpperCase());
				}
			}
			else{
				oElementTarget.getChildElementById("divTitleBar").getChildElementById("divTitleBarTitle").update(oTemplateNode.component[0].text.toUpperCase());
			}
		}
		oDivHtml.update("<p class='pods_rss_desc'>Loading image paths data...</p>");
		new Ajax.Request(getJsonViaGetProxyUrl(oTemplateNode.component[1].requestAreaXml), {method:'get',
			onSuccess: function(transport){
				var oJson = eval('('+transport.responseText+')');
				//alert(transport.responseText);
				createSlideshowNav(oJson);
			},
			onFailure: function(){
				alert('Sorry, the server seems to be down. Please try again later.');
			}
		});
		var createSlideshowNav = function(oJson){
			oDivHtml.update("");
			var oDivHolder = window.document.createElement("div");
			$(oDivHolder).setAttribute("id", "oDivHolder");
			oDivHolder.setStyle({
				position: "absolute",
				width:"100%",
				height:"100%",
				left: "0px",
				visibility:"hidden",
				top: "0px"
			});
			oDivHtml.appendChild(oDivHolder);
			
			for(var i=0; i<oJson.xml.area.length; i++){
				var sVisibility = "hidden";
				if(i==0){
					sVisibility = "visible";
				}
				var oDivElement = window.document.createElement("div");
				$(oDivElement).setAttribute("id", "oDivElement_"+i);
				oDivElement.setStyle({
					position: "absolute",
					left: "0px",
					top: "0px",
					visibility: sVisibility
				});
				var sAssetUrl;
				var sLinkUrl
				if(oJson.xml.area[i].areaLevelAssetUrl){
					sAssetUrl = oJson.xml.area[i].areaLevelAssetUrl;
				}
				else{
					sAssetUrl = oJson.xml.area[i].assetUrl;
				}
				if(oJson.xml.area[i].areaLevelLinkUrl){
					sLinkUrl = oJson.xml.area[i].areaLevelLinkUrl;
				}
				else{
					sLinkUrl = oJson.xml.area[i].linkUrl;
				}
				//alert("<a href='"+oJson.xml.area[i].linkUrl+"'><img src='"+getPathPrefix()+oJson.xml.area[i].assetUrl+"' alt='"+oJson.xml.area[i].assetHoverText+"'/></a>");
				oDivElement.update("<a href='"+sLinkUrl+"'><img src='"+getPathPrefix()+sAssetUrl+"' alt='"+oJson.xml.area[i].assetHoverText+"'/></a>");
				oDivHolder.appendChild(oDivElement);
			}
			var iPrevImageShown = 0;
			var iImageToShow = 0;
			var showImage = function(){
				var oDiv;
				iPrevImageShown = iImageToShow;
				iImageToShow++;
				if(iImageToShow >= oJson.xml.area.length){
					iImageToShow = 0;
				}
				var iOffset = 0; //iInstanceId
				var zIndexBack = ((iOffset+1)*10)+100;
				var zIndexMiddle = zIndexBack + 1;
				var zIndexFront = zIndexBack + 2;
				//alert(oElementTarget.id);
				for(var i=0; i<oJson.xml.area.length; i++){
					oDiv = oElementTarget.getChildElementById("divContent").getChildElementById("divHtml_0").getChildElementById("oDivHolder").getChildElementById("oDivElement_"+i);
					//alert(oTemplateNode.crossfadeInterval);
					if(i == iImageToShow){
						oDiv.setStyle({
							opacity: 0,
							visibility: "visible",
							zIndex: zIndexFront				
						});
						oDiv.fade({ duration: parseInt(oTemplateNode.crossfadeInterval)/1000, from: 0, to: 1 });
					}
					else{
						if(i == iPrevImageShown){
							oDiv.setStyle({
								opacity: 1,
								visibility: "visible",
								zIndex: zIndexMiddle			
							});
						}
						else{
							oDiv.setStyle({
								opacity: 1,
								visibility: "hidden",
								zIndex: zIndexBack			
							});
						}
					}
					//oElementTarget.getChildElementById("divContent").getChildElementById("divHtml_0").getChildElementById("oDivElement_"+i).tween("opacity", 1, 1000, "linearTween");
				}
				triggerShow();
			}
			var triggerShow = function(){
				window._aryPodSetTimeoutReferences[iInstanceId] = setTimeout(showImage, parseInt(oTemplateNode.delayInterval));
			}
			triggerShow();
		}
		oElementTarget.titleBarShadeExpand();
	}
	this._Pod_FmaNav = function(oTemplateNode, oElementTarget, sPrevContentHeader, sPrevContent, sPrevContentFooter, oOriginalTemplateNode, bIsRelatedType, sFileGuid){
		var iPodWidth = 308;
		var iPodHeight = 207;
		var iGutterVert = 10+21; // 21 for phantom title bar
		var iGutterHorz = 10;
		var bNoTitleBar = false;
		var bAntiColorClashMode = false;
		if(typeof oTemplateNode.displaySourceHidden != "undefined"){
			if(oTemplateNode.displaySourceHidden == "true"){
				oElementTarget.hide();
			}
		}
		if(typeof oTemplateNode.displayTarget != "undefined"){
			if(oTemplateNode.displayTarget != "empty"){
				oElementTarget = $(oTemplateNode.displayTarget);
				$(oTemplateNode.displayTarget).setStyle({height:'350px'});
				var oDivContent = window.document.createElement("div");
				$(oDivContent).setAttribute("id", "divContent");			
				oElementTarget.appendChild(oDivContent);
			}
		}
		if(typeof window._aryPodSetTimeoutReferences == "undefined"){
			window._aryPodSetTimeoutReferences = new Array;
		}
		if(typeof window._iPodSetTimeoutRefsIndex == "undefined"){
			window._iPodSetTimeoutRefsIndex = 0;
		}
		else{
			window._iPodSetTimeoutRefsIndex++;
		}
		var iInstanceId = window._iPodSetTimeoutRefsIndex;
		if(typeof oElementTarget.getChildElementById("divTitleBar") == "undefined"){
			bNoTitleBar = true;
		}
		else{
			//oElementTarget.showExpandShrinkControls();
		}
		var sRolloutColor = "#"+window._oColors.colours.palette[window._sColorPaletteId].top_area.main_nav_area.rollout.hex_value;
		var sRolloverColor = "#"+window._oColors.colours.palette[window._sColorPaletteId].top_area.main_nav_area.rollover.hex_value;
		var oDivHtml = window.document.createElement("div");
		$(oDivHtml).setAttribute("id", "divHtml_0");

			oDivHtml.setStyle({
				position: "absolute",
				marginLeft: "0px",
				marginRight: "0px",
				paddingLeft: "0px",
				paddingRight: "0px",
				marginTop: "10px",
				height: "330px",
				width: "100%",
				overflow: "hidden"
			});// width is hardcoded for 2x wide. this should look up a level in the area attribute of a pod combiner area called podWidthFactor
		
		oElementTarget.getChildElementById("divContent").appendChild(oDivHtml);
		
		var oDivFmaHolder = window.document.createElement("div");
		$(oDivFmaHolder).setAttribute("id", "divFmaHolder");

			oDivFmaHolder.setStyle({
				position:"absolute",
				marginLeft: "0px",
				marginRight: "0px",
				paddingLeft: "0px",
				paddingRight: "0px",
				marginTop: "0px",
				height: "330px",
				width: "100%",
				overflow: "hidden"
			});// width is hardcoded for 2x wide. this should look up a level in the area attribute of a pod combiner area called podWidthFactor
		
		oDivHtml.appendChild(oDivFmaHolder);
		oDivFmaHolder.makeClipping();
		
		if(bNoTitleBar == false){
			if(oTemplateNode.component[0].hidden){
				if(oTemplateNode.component[0].hidden != "true"){
					oElementTarget.getChildElementById("divTitleBar").getChildElementById("divTitleBarTitle").update(oTemplateNode.component[0].text.toUpperCase());
				}
			}
			else{
				oElementTarget.getChildElementById("divTitleBar").getChildElementById("divTitleBarTitle").update(oTemplateNode.component[0].text.toUpperCase());
			}
		}
		oDivFmaHolder.update("<p class='pods_rss_desc'> </p>"); // loading image paths data message...
		new Ajax.Request(getJsonViaGetProxyUrl(oTemplateNode.component[1].requestAreaXml), {method:'get',
			onSuccess: function(transport){
				var oJson = eval('('+transport.responseText+')');
				//alert(transport.responseText);
				createSlideshowNav(oJson);
			},
			onFailure: function(){
				alert('Sorry, the server seems to be down. Please try again later.');
			}
		});
		var createAdaptiveGrid = function(oDivTarget, oAreaNode){
			var oDivAdaptiveGridInnerContainer = window.document.createElement("div");
			$(oDivAdaptiveGridInnerContainer).setAttribute("id", "divAdaptiveGridInnerContainer");
			oDivAdaptiveGridInnerContainer.setStyle({
				position:"relative",
				float:"left",
				width:"95%",
				height:"330px",
				margin:"0px",
				padding:"0px"
			});
			oDivTarget.appendChild(oDivAdaptiveGridInnerContainer);	
			var oTblAdaptiveGridLayout = window.document.createElement("table");
			$(oTblAdaptiveGridLayout).setAttribute("id", "tblAdaptiveGridLayout");
			oTblAdaptiveGridLayout.setStyle({
				tableLayout:"auto",
				border:"0px",
				borderCollapse:"collapse",
				borderSpacing:"0px",
				cellpadding:"0px",
				cellspacing:"0px",
				width:"100%",
				margin:"0px",
				padding:"0px"
			});
			oDivAdaptiveGridInnerContainer.appendChild(oTblAdaptiveGridLayout);
			var oTblBody = window.document.createElement("tbody");
			$(oTblBody).setAttribute("id", "tblBody");
			oTblAdaptiveGridLayout.appendChild(oTblBody);
			var oTblTr = window.document.createElement("tr");
			$(oTblTr).setAttribute("id", "tblTr");
			oTblBody.appendChild(oTblTr);
			for(var i=0; i<oAreaNode.length; i++){
				//var sGridElementId = "fma_0_"+oDivTarget.getOffsetParent().getOffsetParent().getOffsetParent().getOffsetParent().id+"_"+"tblColumn_"+i; //// fma_0_divElement_0_tblColumn_0
				var sGridElementId = "tblColumn_"+i;
				var oTblTd = window.document.createElement("td");
				$(oTblTd).setAttribute("id", sGridElementId);
				oTblTr.appendChild(oTblTd);
				var oDivAdaptiveGridInnerSubContainer = window.document.createElement("div");
				$(oDivAdaptiveGridInnerSubContainer).setAttribute("id", "divAdaptiveGridInnerSubContainer");
				oDivAdaptiveGridInnerSubContainer.setStyle({
					position:"relative",
					height:"330px",
					clear:"both",
					float:"left",
					margin:"0px",
					padding:"0px",
					width:"100%"
				});
				oTblTd.appendChild(oDivAdaptiveGridInnerSubContainer);
				oTblTd._sLinkUrl = oAreaNode[i].template.component[2].linkUrl;
				
				oTblTd.myOnMouseUp = function(){
					window.location.href = unescape(this._sLinkUrl);
				}
				Event.observe(oTblTd, "mouseup", oTblTd.myOnMouseUp.bindAsEventListener(oTblTd));
				oTblTd.myOnMouseOver = function(){
					this.setStyle({cursor:"pointer"});
				}
				Event.observe(oTblTd, "mouseover", oTblTd.myOnMouseOver.bindAsEventListener(oTblTd));
				oTblTd.myOnMouseOut = function(){
					this.setStyle({cursor:"default"});
				}
				Event.observe(oTblTd, "mouseout", oTblTd.myOnMouseOut.bindAsEventListener(oTblTd));
				var oDivAdaptiveGridRow = window.document.createElement("div");
				$(oDivAdaptiveGridRow).setAttribute("id", "divAdaptiveGridRow");
				oDivAdaptiveGridRow.setStyle({
					position:"relative",
					float:"left",
					width:"100%",
					clear:"both",
					padding:"0px",
					margin:"0px"
				});
				oDivAdaptiveGridInnerSubContainer.appendChild(oDivAdaptiveGridRow);
				var oDivAdaptiveGridImage = window.document.createElement("div");
				$(oDivAdaptiveGridImage).setAttribute("id", "divAdaptiveGridImage");
				oDivAdaptiveGridImage.setStyle({
					position:"relative",
					float:"left",
					clear:"both",
					margin:"19px 0px 0px 9px",
					padding:"10px 0px 0px 10px",
					width:"150px",
					height:"150px",
					background:"#ffffff"
				});
				oDivAdaptiveGridRow.appendChild(oDivAdaptiveGridImage);
				oDivAdaptiveGridImage.update('<img src="'+oAreaNode[i].template.component[0].assetUrl+'" alt="">');
				var oDivAdaptiveGridTitle = window.document.createElement("div");
				$(oDivAdaptiveGridTitle).setAttribute("id", "divAdaptiveGridTitle");
				oDivAdaptiveGridTitle.setStyle({
					position:"relative",
					float:"left",
					margin:"10px 0px 0px 10px",
					padding:"0px",
					width:"160px",
					height:"80px",
					clear:"both",
					fontFamily:"Arial,Sans-Serif",
					fontSize:"16px",
					color:"#ffffff"
				});
				oDivAdaptiveGridRow.appendChild(oDivAdaptiveGridTitle);
				oDivAdaptiveGridTitle.update(oAreaNode[i].template.component[1].text);
				
				oDivTarget.onWindowResizedBroadcasted = function(oParams){
					var oDivGridElementContainer = this.getChildElementById("divAdaptiveGridInnerContainer").getChildElementById("tblAdaptiveGridLayout").getChildElementById("tblBody").getChildElementById("tblTr");
					var iNumThatCanFit = Math.round((oParams.iWidth-665-21-100)/172);
					var iMinItems = 0;
					if(typeof this._iItemsShowing == "undefined"){
						this._iMaxItems = oParams.iNumOfElements;
						this._iItemsShowing = oParams.iNumOfElements;
						//alert(iNumThatCanFit+" - "+this._iItemsShowing+" - "+(oParams.iWidth-665));
					}
					if(iNumThatCanFit > this._iMaxItems){
						iNumThatCanFit = this._iMaxItems;
					}
					if(iNumThatCanFit < iMinItems){
						iNumThatCanFit = iMinItems;
					}
					//window.status = iNumThatCanFit+" - "+this._iItemsShowing+" - "+(oParams.iWidth-665);
					if(iNumThatCanFit > this._iItemsShowing){
						var iItemsToAdd = iNumThatCanFit - this._iItemsShowing;
						for(var i=0; i<iItemsToAdd; i++){
							//alert(oDivGridElementContainer.getChildElementById("tblColumn_0"));
							if(typeof oDivGridElementContainer.getChildElementById("tblColumn_"+(this._iItemsShowing-1)) != "undefined"){
								oDivGridElementContainer.getChildElementById("tblColumn_"+(this._iItemsShowing-1)).show();
								this._iItemsShowing++;
							}
						}
					}
					else{
						if(iNumThatCanFit < this._iItemsShowing){
							var iItemsToRemove = this._iItemsShowing - iNumThatCanFit;
							for(var i=0; i<iItemsToRemove; i++){
								//alert(oDivGridElementContainer.getChildElementById("tblColumn_"+(this._iItemsShowing-2)).id);
								oDivGridElementContainer.getChildElementById("tblColumn_"+(this._iItemsShowing-2)).hide();
								this._iItemsShowing--;
							}
						}
					}
				}
			}
			window._oWindowBroadcaster._WindowBroadcaster.addListener(oDivTarget);
			oDivTarget.onWindowResizedBroadcasted({iWidth:window.getBrowserWidth(), iHeight:0, iNumOfElements:oAreaNode.length});
		}
		var createSlideshowNav = function(oJson){
			oDivFmaHolder.update("");
			var oDivHolder = window.document.createElement("div");
			$(oDivHolder).setAttribute("id", "divHolder");
			oDivHolder.setStyle({
				position:"absolute",
				left:"0px",
				width:"100%",
				height:"330px",
				visibility:"hidden"
			});
			oDivFmaHolder.appendChild(oDivHolder);
			for(var i=0; i<oJson.xml.area.length; i++){
				var sVisibility = "hidden";
				if(i==0){
					sVisibility = "visible";
				}
				var sHex;
				if(typeof window._oColors.colours.palette[window._sColorPaletteId].brand_tones_proper[oJson.xml.area[i].template.component.colorBg] == "undefined"){
				sHex = oJson.xml.area[i].template.component.colorBg;
				}
				else{
					sHex = window._oColors.colours.palette[window._sColorPaletteId].brand_tones_proper[oJson.xml.area[i].template.component.colorBg].hex_value;
					if(window._sColorPaletteId != "inkjet_graphite"){
						sHex = window._oColors.colours.palette[window._sColorPaletteId].tones.tone10.hex_value;
						bAntiColorClashMode = true;
					}
				}
				var oDivElement = window.document.createElement("div");
				$(oDivElement).setAttribute("id", "divElement_"+i);
				oDivElement.setStyle({
					background:"#"+sHex,
					position: "absolute",
					left:"0px",
					width:"100%",
					height:"330px",
					visibility: sVisibility
				});
				oDivHolder.appendChild(oDivElement);
				
				var oDivElementInner = window.document.createElement("div");
				$(oDivElementInner).setAttribute("id", "divElementInner");
				oDivElementInner.setStyle({
					position: "absolute",
					left:"20px",
					width:"100%",
					height:"330px"
				});
				oDivElement.appendChild(oDivElementInner);
				
				var oDivContentWrapper = window.document.createElement("div");
				$(oDivContentWrapper).setAttribute("id", "divContentWrapper");
				oDivContentWrapper.setStyle({
					position: "relative",
					float:"left",
					height:"330px",
					width:"100%"
				});
				oDivElementInner.appendChild(oDivContentWrapper);
				
				var oDivCtaArea = window.document.createElement("div");
				$(oDivCtaArea).setAttribute("id", "divCtaArea");
				oDivCtaArea.setStyle({
					position: "relative",
					marginLeft:"630px",
					height:"330px"
				});
				oDivContentWrapper.appendChild(oDivCtaArea);
				
				var oDivCtaInner = window.document.createElement("div");
				$(oDivCtaInner).setAttribute("id", "divCtaInner");
				oDivCtaInner.setStyle({
					position: "relative",
					marginLeft:"10px",
					height:"330px"
				});
				oDivCtaArea.appendChild(oDivCtaInner);
				createAdaptiveGrid(oDivCtaInner, oJson.xml.area[i].template.component.area);
				
				var oDivImage = window.document.createElement("div");
				$(oDivImage).setAttribute("id", "divImage");		
				oDivImage.setStyle({
					position: "relative",
					float:"left",
					width:"630px",
					height:"330px",
					marginLeft:"-100%"
				});
				oDivElementInner.appendChild(oDivImage);
								
				var sAssetUrl;
				var sLinkUrl
				if(oJson.xml.area[i].areaLevelAssetUrl){
					sAssetUrl = oJson.xml.area[i].areaLevelAssetUrl;
				}
				else{
					sAssetUrl = oJson.xml.area[i].assetUrl;
				}
				if(oJson.xml.area[i].areaLevelLinkUrl){
					sLinkUrl = oJson.xml.area[i].areaLevelLinkUrl;
				}
				else{
					sLinkUrl = oJson.xml.area[i].linkUrl;
				}
				if(bAntiColorClashMode == true){
					var sFileType = sAssetUrl.substr(sAssetUrl.length-4, sAssetUrl.length);
					sAssetUrl = sAssetUrl.substr(0, sAssetUrl.length-4)+"_antiColorClashMode_"+sHex+sFileType;
				}
				//alert("<a href='"+oJson.xml.area[i].linkUrl+"'><img src='"+getPathPrefix()+oJson.xml.area[i].assetUrl+"' alt='"+oJson.xml.area[i].assetHoverText+"'/></a>");
				oDivImage.update("<a href='"+sLinkUrl+"'><img src='"+getPathPrefix()+sAssetUrl+"' alt='"+oJson.xml.area[i].assetHoverText+"'/></a>");
			}
			var iPrevImageShown = 0;
			var iImageToShow = 0;
			var showImage = function(){
				var oDiv;
				iPrevImageShown = iImageToShow;
				iImageToShow++;
				if(iImageToShow >= oJson.xml.area.length){
					iImageToShow = 0;
				}
				var iOffset = 0; //iInstanceId
				var zIndexBack = ((iOffset+1)*10)+100;
				var zIndexMiddle = zIndexBack + 1;
				var zIndexFront = zIndexBack + 2;
				//alert(oElementTarget.id);
				for(var i=0; i<oJson.xml.area.length; i++){
					oDiv = oElementTarget.getChildElementById("divContent").getChildElementById("divHtml_0").getChildElementById("divFmaHolder").getChildElementById("divHolder").getChildElementById("divElement_"+i);
					//alert(oTemplateNode.crossfadeInterval);
					if(i == iImageToShow){
						oDiv.setStyle({
							opacity: 0,
							visibility: "visible",
							zIndex: zIndexFront				
						});
						oDiv.fade({ duration: parseInt(oTemplateNode.crossfadeInterval)/1000, from: 0, to: 1 });
					}
					else{
						if(i == iPrevImageShown){
							oDiv.setStyle({
								opacity: 1,
								visibility: "visible",
								zIndex: zIndexMiddle			
							});
						}
						else{
							oDiv.setStyle({
								opacity: 1,
								visibility: "hidden",
								zIndex: zIndexBack			
							});
						}
					}
					//oElementTarget.getChildElementById("divContent").getChildElementById("divHtml_0").getChildElementById("oDivElement_"+i).tween("opacity", 1, 1000, "linearTween");
				}
				triggerShow();
			}
			var triggerShow = function(){
				window._aryPodSetTimeoutReferences[iInstanceId] = setTimeout(showImage, parseInt(oTemplateNode.delayInterval));
			}
			triggerShow();
		}
		//oElementTarget.titleBarShadeExpand();
		this._Pod_FmaNav.onWindowResizedBroadcasted = function(){
			//alert("resize!");
		}
		window._oWindowBroadcaster._WindowBroadcaster.addListener(this._Pod_FmaNav);
		this._Pod_FmaNav.onWindowResizedBroadcasted({iWidth:window.getBrowserWidth(), iHeight:0});
	}
	this._Pod_FmaNav2 = function(oTemplateNode, oElementTarget, sPrevContentHeader, sPrevContent, sPrevContentFooter, oOriginalTemplateNode, bIsRelatedType, sFileGuid){
		var iPodWidth = 308;
		var iPodHeight = 120;
		var iGutterVert = 10+21; // 21 for phantom title bar
		var iGutterHorz = 10;
		var bNoTitleBar = false;
		var bAntiColorClashMode = false;
		if(typeof oTemplateNode.displaySourceHidden != "undefined"){
			if(oTemplateNode.displaySourceHidden == "true"){
				oElementTarget.hide();
			}
		}
		if(typeof oTemplateNode.displayTarget != "undefined"){
			if(oTemplateNode.displayTarget != "empty"){
				oElementTarget = $(oTemplateNode.displayTarget);
				$(oTemplateNode.displayTarget).setStyle({height:'120px'});
				var oDivContent = window.document.createElement("div");
				$(oDivContent).setAttribute("id", "divContent");			
				oElementTarget.appendChild(oDivContent);
			}
		}
		if(typeof window._aryPodSetTimeoutReferences == "undefined"){
			window._aryPodSetTimeoutReferences = new Array;
		}
		if(typeof window._iPodSetTimeoutRefsIndex == "undefined"){
			window._iPodSetTimeoutRefsIndex = 0;
		}
		else{
			window._iPodSetTimeoutRefsIndex++;
		}
		var iInstanceId = window._iPodSetTimeoutRefsIndex;
		if(typeof oElementTarget.getChildElementById("divTitleBar") == "undefined"){
			bNoTitleBar = true;
		}
		else{
			//oElementTarget.showExpandShrinkControls();
		}
		var sRolloutColor = "#"+window._oColors.colours.palette[window._sColorPaletteId].top_area.main_nav_area.rollout.hex_value;
		var sRolloverColor = "#"+window._oColors.colours.palette[window._sColorPaletteId].top_area.main_nav_area.rollover.hex_value;
		var oDivHtml = window.document.createElement("div");
		$(oDivHtml).setAttribute("id", "divHtml_0");

			oDivHtml.setStyle({
				position: "absolute",
				marginLeft: "0px",
				marginRight: "0px",
				paddingLeft: "0px",
				paddingRight: "0px",
				marginTop: "0px",
				height: "120px",
				width: "100%",
				overflow: "hidden"
			});// width is hardcoded for 2x wide. this should look up a level in the area attribute of a pod combiner area called podWidthFactor
		
		oElementTarget.getChildElementById("divContent").appendChild(oDivHtml);
		
		var oDivFmaHolder = window.document.createElement("div");
		$(oDivFmaHolder).setAttribute("id", "divFmaHolder");

			oDivFmaHolder.setStyle({
				position:"absolute",
				marginLeft: "0px",
				marginRight: "0px",
				paddingLeft: "0px",
				paddingRight: "0px",
				marginTop: "0px",
				height: "120px",
				width: "100%",
				overflow: "hidden"
			});// width is hardcoded for 2x wide. this should look up a level in the area attribute of a pod combiner area called podWidthFactor
		
		oDivHtml.appendChild(oDivFmaHolder);
		oDivFmaHolder.makeClipping();
		
		if(bNoTitleBar == false){
			if(oTemplateNode.component[0].hidden){
				if(oTemplateNode.component[0].hidden != "true"){
					oElementTarget.getChildElementById("divTitleBar").getChildElementById("divTitleBarTitle").update(oTemplateNode.component[0].text.toUpperCase());
				}
			}
			else{
				oElementTarget.getChildElementById("divTitleBar").getChildElementById("divTitleBarTitle").update(oTemplateNode.component[0].text.toUpperCase());
			}
		}
		oDivFmaHolder.update("<p class='pods_rss_desc'> </p>"); // loading image paths data message...
		new Ajax.Request(getJsonViaGetProxyUrl(oTemplateNode.component[1].requestAreaXml), {method:'get',
			onSuccess: function(transport){
				var oJson = eval('('+transport.responseText+')');
				//alert(transport.responseText);
				createSlideshowNav(oJson);
			},
			onFailure: function(){
				alert('Sorry, the server seems to be down. Please try again later.');
			}
		});
		var createAdaptiveGrid = function(oDivTarget, oAreaNode){
			//console.log("createAdaptiveGrid");
			var oDivAdaptiveGridInnerContainer = window.document.createElement("div");
			$(oDivAdaptiveGridInnerContainer).setAttribute("id", "divAdaptiveGridInnerContainer");
			oDivAdaptiveGridInnerContainer.setStyle({
				position:"relative",
				float:"left",
				width:"95%",
				height:"120px",
				margin:"0px",
				padding:"0px"
			});
			oDivTarget.appendChild(oDivAdaptiveGridInnerContainer);	
			var oTblAdaptiveGridLayout = window.document.createElement("table");
			$(oTblAdaptiveGridLayout).setAttribute("id", "tblAdaptiveGridLayout");
			oTblAdaptiveGridLayout.setStyle({
				tableLayout:"auto",
				border:"0px",
				borderCollapse:"collapse",
				borderSpacing:"0px",
				cellpadding:"0px",
				cellspacing:"0px",
				width:"100%",
				margin:"0px",
				padding:"0px"
			});
			oDivAdaptiveGridInnerContainer.appendChild(oTblAdaptiveGridLayout);
			var oTblBody = window.document.createElement("tbody");
			$(oTblBody).setAttribute("id", "tblBody");
			oTblAdaptiveGridLayout.appendChild(oTblBody);
			var oTblTr = window.document.createElement("tr");
			$(oTblTr).setAttribute("id", "tblTr");
			oTblBody.appendChild(oTblTr);
			for(var i=0; i<oAreaNode.length; i++){
				//var sGridElementId = "fma_0_"+oDivTarget.getOffsetParent().getOffsetParent().getOffsetParent().getOffsetParent().id+"_"+"tblColumn_"+i; //// fma_0_divElement_0_tblColumn_0
				var sGridElementId = "tblColumn_"+i;
				var oTblTd = window.document.createElement("td");
				$(oTblTd).setAttribute("id", sGridElementId);
				oTblTr.appendChild(oTblTd);
				var oDivAdaptiveGridInnerSubContainer = window.document.createElement("div");
				$(oDivAdaptiveGridInnerSubContainer).setAttribute("id", "divAdaptiveGridInnerSubContainer");
				oDivAdaptiveGridInnerSubContainer.setStyle({
					position:"relative",
					height:"120px",
					clear:"both",
					float:"left",
					margin:"0px",
					padding:"0px",
					width:"100%"
				});
				oTblTd.appendChild(oDivAdaptiveGridInnerSubContainer);
				oTblTd._sLinkUrl = oAreaNode[i].template.component[4].linkUrl;
				
				oTblTd.myOnMouseUp = function(){
					window.location.href = unescape(this._sLinkUrl);
				}
				Event.observe(oTblTd, "mouseup", oTblTd.myOnMouseUp.bindAsEventListener(oTblTd));

				var oDivAdaptiveGridRow = window.document.createElement("div");
				$(oDivAdaptiveGridRow).setAttribute("id", "divAdaptiveGridRow");
				oDivAdaptiveGridRow.setStyle({
					position:"relative",
					float:"left",
					width:"100%",
					clear:"both",
					padding:"0px",
					margin:"0px"
				});
				oDivAdaptiveGridInnerSubContainer.appendChild(oDivAdaptiveGridRow);
				
				var oDivAdaptiveGridImageHolder = window.document.createElement("div");
				$(oDivAdaptiveGridImageHolder).setAttribute("id", "divAdaptiveGridImageHolder");
				oDivAdaptiveGridRow.appendChild(oDivAdaptiveGridImageHolder);
				
				var oDivAdaptiveGridImage = window.document.createElement("div");
				$(oDivAdaptiveGridImage).setAttribute("id", "divAdaptiveGridImage");
				var sBgHex = window._oColors.colours.palette[window._sColorPaletteId].tones.tone70.hex_value;
				var sFgHex = window._oColors.colours.palette[window._sColorPaletteId].tones.tone1030.hex_value;
				oDivAdaptiveGridImage.setStyle({
					position:"relative",
					float:"left",
					clear:"both",
					margin:"9px 0px 0px 9px",
					padding:"0px 0px 0px 0px",
					borderRadius:"6px 6px 6px 6px",
					webkitBorderTopLeftRadius:"6px",
					webkitBorderTopRightRadius:"6px",
					webkitBorderBottomLeftRadius:"6px",
					webkitBorderBottomRightRadius:"6px",
					mozBorderRadius:"6px 6px 6px 6px",
					khtmlBorderRadius:"6px 6px 6px 6px",
					width:"100px",
					height:"100px",
					background:"#"+sBgHex
				});
				oDivAdaptiveGridImageHolder.appendChild(oDivAdaptiveGridImage);
				oDivAdaptiveGridImage.update('<img src="'+oAreaNode[i].template.component[0].assetUrl+'" alt="">');
				
				var oDivAdaptiveGridImage2 = window.document.createElement("div");
				$(oDivAdaptiveGridImage2).setAttribute("id", "divAdaptiveGridImage2");
				oDivAdaptiveGridImage2.setStyle({
					display:"none",
					position:"relative",
					float:"left",
					clear:"both",
					margin:"9px 0px 0px 9px",
					padding:"0px 0px 0px 0px",
					borderRadius:"6px 6px 6px 6px",
					webkitBorderTopLeftRadius:"6px",
					webkitBorderTopRightRadius:"6px",
					webkitBorderBottomLeftRadius:"6px",
					webkitBorderBottomRightRadius:"6px",
					mozBorderRadius:"6px 6px 6px 6px",
					khtmlBorderRadius:"6px 6px 6px 6px",
					width:"100px",
					height:"100px",
					background:"#"+sFgHex
				});
				oDivAdaptiveGridImageHolder.appendChild(oDivAdaptiveGridImage2);
				oDivAdaptiveGridImage2.update('<img src="'+oAreaNode[i].template.component[1].assetUrl+'" alt="">');
				//oDivAdaptiveGridImage.update('<span>'+oAreaNode[i].template.component[1].text+'</span>');
				
				/*var oDivAdaptiveGridText = window.document.createElement("div");
				$(oDivAdaptiveGridText).setAttribute("id", "divAdaptiveGridText");
				oDivAdaptiveGridText.setStyle({
					position:"relative",
					float:"left",
					width:"100%",
					marginTop:"30px",
					textAlign:"center",
					lineHeight:"1.5em",
					fontFamily:"Verdana, Sans-Serif",
					fontSize:"1.2em",
					fontWeight:"normal",
					color:"#"+sFgHex
				});
				oDivAdaptiveGridImage.appendChild(oDivAdaptiveGridText);
				oDivAdaptiveGridText.update(oAreaNode[i].template.component[1].text+"<br/>"+oAreaNode[i].template.component[2].text);*/
				
				
				oDivAdaptiveGridImageHolder.oDivHtmlRollOver = function(){
					this.setStyle({
						cursor:"pointer"
					});
					this.getChildElementById("divAdaptiveGridImage").setStyle({
						display:"none"
					});
					this.getChildElementById("divAdaptiveGridImage2").setStyle({
						display:"inline"
					});
					//this.getChildElementById("divAdaptiveGridImage").getChildElementById("divAdaptiveGridText").setStyle({
					//	color:"#"+window._oColors.colours.palette[window._sColorPaletteId].tones.tone90.hex_value
					//});
				}
				oDivAdaptiveGridImageHolder.oDivHtmlRollOut = function(){
					this.setStyle({
						cursor:"default"
					});
					this.getChildElementById("divAdaptiveGridImage").setStyle({
						display:"inline"
					});
					this.getChildElementById("divAdaptiveGridImage2").setStyle({
						display:"none"
					});
					//this.getChildElementById("divAdaptiveGridImage").getChildElementById("divAdaptiveGridText").setStyle({
					//	color:"#"+window._oColors.colours.palette[window._sColorPaletteId].tones.tone1030.hex_value
					//});
				}
				Event.observe(oDivAdaptiveGridImageHolder, "mouseenter", oDivAdaptiveGridImageHolder.oDivHtmlRollOver);
				Event.observe(oDivAdaptiveGridImageHolder, "mouseleave", oDivAdaptiveGridImageHolder.oDivHtmlRollOut);
				
				oDivTarget.onWindowResizedBroadcasted = function(oParams){
					var oDivGridElementContainer = this.getChildElementById("divAdaptiveGridInnerContainer").getChildElementById("tblAdaptiveGridLayout").getChildElementById("tblBody").getChildElementById("tblTr");
					var iNumThatCanFit = Math.round((oParams.iWidth-665-21-100)/90);
					var iMinItems = 0;
					if(typeof this._iItemsShowing == "undefined"){
						this._iMaxItems = oParams.iNumOfElements;
						this._iItemsShowing = oParams.iNumOfElements;
						//alert(iNumThatCanFit+" - "+this._iItemsShowing+" - "+(oParams.iWidth-665));
					}
					if(iNumThatCanFit > this._iMaxItems){
						iNumThatCanFit = this._iMaxItems;
					}
					if(iNumThatCanFit < iMinItems){
						iNumThatCanFit = iMinItems;
					}
					//window.status = iNumThatCanFit+" - "+this._iItemsShowing+" - "+(oParams.iWidth-665);
					if(iNumThatCanFit > this._iItemsShowing){
						var iItemsToAdd = iNumThatCanFit - this._iItemsShowing;
						for(var i=0; i<iItemsToAdd; i++){
							//alert(oDivGridElementContainer.getChildElementById("tblColumn_0"));
							if(typeof oDivGridElementContainer.getChildElementById("tblColumn_"+(this._iItemsShowing-1)) != "undefined"){
								oDivGridElementContainer.getChildElementById("tblColumn_"+(this._iItemsShowing-1)).show();
								this._iItemsShowing++;
							}
						}
					}
					else{
						if(iNumThatCanFit < this._iItemsShowing){
							var iItemsToRemove = this._iItemsShowing - iNumThatCanFit;
							for(var i=0; i<iItemsToRemove; i++){
								//alert(oDivGridElementContainer.getChildElementById("tblColumn_"+(this._iItemsShowing-2)).id);
								oDivGridElementContainer.getChildElementById("tblColumn_"+(this._iItemsShowing-2)).hide();
								this._iItemsShowing--;
							}
						}
					}
				}
			}
			window._oWindowBroadcaster._WindowBroadcaster.addListener(oDivTarget);
			oDivTarget.onWindowResizedBroadcasted({iWidth:window.getBrowserWidth(), iHeight:0, iNumOfElements:oAreaNode.length});
		}
		var createSlideshowNav = function(oJson){
			oDivFmaHolder.update("");
			var oDivHolder = window.document.createElement("div");
			$(oDivHolder).setAttribute("id", "divHolder");
			oDivHolder.setStyle({
				position:"absolute",
				left:"0px",
				width:"100%",
				height:"120px",
				visibility:"hidden"
			});
			oDivFmaHolder.appendChild(oDivHolder);
			for(var i=0; i<1; i++){
				var sVisibility = "hidden";
				if(i==0){
					sVisibility = "visible";
				}
				var sHex;
				if(typeof window._oColors.colours.palette[window._sColorPaletteId].brand_tones_proper[oJson.xml.area.template.component.colorBg] == "undefined"){
				sHex = oJson.xml.area.template.component.colorBg;
				}
				else{
					sHex = window._oColors.colours.palette[window._sColorPaletteId].brand_tones_proper[oJson.xml.area.template.component.colorBg].hex_value;
					if(window._sColorPaletteId != "inkjet_graphite"){
						sHex = window._oColors.colours.palette[window._sColorPaletteId].tones.tone10.hex_value;
						bAntiColorClashMode = true;
					}
				}
				sHex = window._oColors.colours.palette[window._sColorPaletteId].tones.tone90.hex_value;
				var oDivElement = window.document.createElement("div");
				$(oDivElement).setAttribute("id", "divElement_"+i);
				oDivElement.setStyle({
					background:"#"+sHex,
					position: "absolute",
					left:"0px",
					width:"100%",
					height:"120px",
					visibility: sVisibility
				});
				oDivHolder.appendChild(oDivElement);
				
				var oDivElementInner = window.document.createElement("div");
				$(oDivElementInner).setAttribute("id", "divElementInner");
				oDivElementInner.setStyle({
					position: "absolute",
					left:"20px",
					width:"100%",
					height:"120px"
				});
				oDivElement.appendChild(oDivElementInner);
				
				var oDivContentWrapper = window.document.createElement("div");
				$(oDivContentWrapper).setAttribute("id", "divContentWrapper");
				oDivContentWrapper.setStyle({
					position: "relative",
					float:"left",
					height:"120px",
					width:"100%"
				});
				oDivElementInner.appendChild(oDivContentWrapper);
				
				var oDivCtaArea = window.document.createElement("div");
				$(oDivCtaArea).setAttribute("id", "divCtaArea");
				oDivCtaArea.setStyle({
					position: "relative",
					marginLeft:"630px",
					height:"120px"
				});
				oDivContentWrapper.appendChild(oDivCtaArea);
				
				var oDivCtaInner = window.document.createElement("div");
				$(oDivCtaInner).setAttribute("id", "divCtaInner");
				oDivCtaInner.setStyle({
					position: "relative",
					marginLeft:"10px",
					height:"120px"
				});
				oDivCtaArea.appendChild(oDivCtaInner);
				createAdaptiveGrid(oDivCtaInner, oJson.xml.area.template.component.area);
				
				var oDivImage = window.document.createElement("div");
				$(oDivImage).setAttribute("id", "divImage");		
				oDivImage.setStyle({
					position: "relative",
					float:"left",
					width:"630px",
					height:"120px",
					
					lineHeight:"1.6em",
					paddingTop:"8px",
					paddingLeft:"0px",
					paddingRight:"0px",
					fontFamily:"Verdana, Sans-Serif",
					fontSize:"16px",
					fontWeight:"normal",
					
					
					marginLeft:"-100%"
				});
				oDivElementInner.appendChild(oDivImage);
								
				var sAssetUrl;
				var sLinkUrl
				if(oJson.xml.area.areaLevelAssetUrl){
					sAssetUrl = oJson.xml.area.areaLevelAssetUrl;
				}
				else{
					sAssetUrl = oJson.xml.area.assetUrl;
				}
				if(oJson.xml.area.areaLevelLinkUrl){
					sLinkUrl = oJson.xml.area.areaLevelLinkUrl;
				}
				else{
					sLinkUrl = oJson.xml.area.linkUrl;
				}
				if(bAntiColorClashMode == true){
					//var sFileType = sAssetUrl.substr(sAssetUrl.length-4, sAssetUrl.length);
					//sAssetUrl = sAssetUrl.substr(0, sAssetUrl.length-4)+"_antiColorClashMode_"+sHex+sFileType;
				}
				//alert("<a href='"+oJson.xml.area.linkUrl+"'><img src='"+getPathPrefix()+oJson.xml.area.assetUrl+"' alt='"+oJson.xml.area.assetHoverText+"'/></a>");
				//oDivImage.update("<a href='"+sLinkUrl+"'><img src='"+getPathPrefix()+sAssetUrl+"' alt='"+oJson.xml.area.assetHoverText+"'/></a>");
				oDivImage.update(oJson.xml.area.prose);
			}

			var iPrevImageShown = 0;
			var iImageToShow = 0;
			var showImage = function(){
				var oDiv;
				iPrevImageShown = iImageToShow;
				iImageToShow++;
				if(iImageToShow >= oJson.xml.area.length){
					iImageToShow = 0;
				}
				var iOffset = 0; //iInstanceId
				var zIndexBack = ((iOffset+1)*10)+100;
				var zIndexMiddle = zIndexBack + 1;
				var zIndexFront = zIndexBack + 2;
				//alert(oElementTarget.id);
				for(var i=0; i<oJson.xml.area.length; i++){
					oDiv = oElementTarget.getChildElementById("divContent").getChildElementById("divHtml_0").getChildElementById("divFmaHolder").getChildElementById("divHolder").getChildElementById("divElement_"+i);
					//alert(oTemplateNode.crossfadeInterval);
					if(i == iImageToShow){
						oDiv.setStyle({
							opacity: 0,
							visibility: "visible",
							zIndex: zIndexFront				
						});
						oDiv.fade({ duration: parseInt(oTemplateNode.crossfadeInterval)/1000, from: 0, to: 1 });
					}
					else{
						if(i == iPrevImageShown){
							oDiv.setStyle({
								opacity: 1,
								visibility: "visible",
								zIndex: zIndexMiddle			
							});
						}
						else{
							oDiv.setStyle({
								opacity: 1,
								visibility: "hidden",
								zIndex: zIndexBack			
							});
						}
					}
					//oElementTarget.getChildElementById("divContent").getChildElementById("divHtml_0").getChildElementById("oDivElement_"+i).tween("opacity", 1, 1000, "linearTween");
				}
				//triggerShow();
			}
			var triggerShow = function(){
				window._aryPodSetTimeoutReferences[iInstanceId] = setTimeout(showImage, parseInt(oTemplateNode.delayInterval));
			}
			//triggerShow();
		}
		//oElementTarget.titleBarShadeExpand();
		this._Pod_FmaNav2.onWindowResizedBroadcasted = function(){
			//alert("resize!");
		}
		window._oWindowBroadcaster._WindowBroadcaster.addListener(this._Pod_FmaNav2);
		this._Pod_FmaNav2.onWindowResizedBroadcasted({iWidth:window.getBrowserWidth(), iHeight:0});
	}
	this._Pod_SwlLogin = function(oTemplateNode, oElementTarget, sPrevContentHeader, sPrevContent, sPrevContentFooter, oOriginalTemplateNode, bIsRelatedType, sFileGuid){
		var bNoTitleBar = false;
		if(typeof oElementTarget.getChildElementById("divTitleBar") == "undefined"){
			bNoTitleBar = true;
		}
		else{
			//oElementTarget.showExpandShrinkControls();
		}
		var oDivHtml = window.document.createElement("div");
		var aryPodOrdinalPositions;
		var sPodOrdinalPositionsArray;
		$(oDivHtml).setAttribute("id", "divHtml_0");
		if(Prototype.Browser.IE == true && parseInt(Prototype.Browser.Version) < 8){
			oDivHtml.setStyle({
				position: "absolute",
				marginLeft: "8px",
				paddingRight: "15px",
				left: 0,
				top: 0,
				height: 214,
				width: 312,
				overflow: "auto",
				wordWrap: "break-word",
				overflowX: "hidden"
			});
		}
		else{
			oDivHtml.setStyle({
				position: "relative",
				marginLeft: "8px",
				paddingRight: "15px",
				left: 0,
				top: 0,
				height: "100%",
				overflow: "auto",
				wordWrap: "break-word",
				overflowX: "hidden"
			});
		}
		oElementTarget.getChildElementById("divContent").appendChild(oDivHtml);
		oElementTarget.getChildElementById("divTitleBar").getChildElementById("divTitleBarTitle").update(oTemplateNode.component[0].text.toUpperCase());
		oElementTarget.fncExpanded = function(){
			if(Prototype.Browser.IE == true && parseInt(Prototype.Browser.Version) < 8){
				oDivHtml.setStyle({
					height: 461,
					width: 644
				});
			}
			oDivHtml.setStyle({overflow: "auto"});
		};
		oElementTarget.fncShrunk = function(){
			if(Prototype.Browser.IE == true && parseInt(Prototype.Browser.Version) < 8){
				oDivHtml.setStyle({
					height: 214,
					width: 312
				});
			}
			oDivHtml.setStyle({overflow: "auto"});
		};
		oElementTarget.fncShrunk();
		oDivHtml.update("<p class='pods_rss_desc'>STEP 1 (AJNH -> SWL): Connecting to the SWL API server. METHOD: auth.getRequestToken...</p>");
		var getOauthRequestToken = function(){
			//var sBaseUrl = "http://nearhome.smallworldlabs.com/services/1.0/";
			var sBaseUrl = "http://swl.ajobnearhome.com/services/1.0/";
			var sOauth_consumer_key = "04d4e52859ec97e72be50d7fa18f324f";
			//var sOauth_consumer_key = "de790c273be107240b5cca67e5d86b62";
			var sOauth_consumer_secret = "93f2d04b7d41abb2047b47aa31f1baed";
			//var sOauth_consumer_secret = "a57272275a05682bd4bb806a226cd423";
			var sOauth_signature_method = "HMAC-SHA1";
			var sMethodName = "auth.getRequestToken";
			//var sBaseUrl = "http://term.ie/oauth/example/";
			//var sOauth_consumer_key = "key";
			//var sOauth_consumer_secret = "secret";
			//var sOauth_signature_method = "HMAC-SHA1";
			//var sMethodName = "request_token.php";
			
			var d = new Date();
			var sOauth_timestamp = d.getTime();
			var sOauth_nonce = d.getTime();
			var sOauth_signature_base_string = "GET&"+URLEncode(sBaseUrl+sMethodName)+"&"+URLEncode("oauth_consumer_key="+sOauth_consumer_key+"&oauth_nonce="+sOauth_nonce+"&oauth_signature_method="+sOauth_signature_method+"&oauth_timestamp="+sOauth_timestamp+"&oauth_version=1.0");
			
			var sOauth_signature = URLEncode(sOauth_signature_base_string.hmac_sha1(sOauth_consumer_secret+"&", "base64"));			
			new Ajax.Request(getNamepairsViaGetProxyUrl(sBaseUrl+sMethodName+"?"+"oauth_consumer_key="+sOauth_consumer_key+"&oauth_nonce="+sOauth_nonce+"&oauth_signature_method="+sOauth_signature_method+"&oauth_timestamp="+sOauth_timestamp+"&oauth_version=1.0"+"&oauth_signature="+sOauth_signature), {method:'get',
				onSuccess: function(transport){
					//alert(transport.responseText);
					//var oJson = eval('('+transport.responseText+')');
					//init(oJson);
					//oDivHtml.update("<p class='pods_rss_desc'>"+transport.statusText);
					if(transport.responseText == ""){
						oDivHtml.update('<p class="pods_rss_desc">'+'test seemed to fail, no namepairs returned. http status: '+transport.statusText+'</br></br>'+transport.responseText);
					}
					else{
						oDivHtml.update(oDivHtml.innerHTML+"<p class='pods_rss_desc'>STEP 2 (SWL -> AJNH): Successfully received Request Token/Secret from SWL! (Token: "+parseArgs(transport.responseText).oauth_token+"   Secret: "+parseArgs(transport.responseText).oauth_token_secret+")"+"</p>");
						oDivHtml.update(oDivHtml.innerHTML+"<p class='pods_rss_desc'>STEP 3 (AJNH -> SWL): Now using signed SWL Token and Secret to get SWL User Authorization. Connecting to the SWL API server. METHOD: auth.getUserAuthorization...</p>");
						articlesGetCategories(transport.responseText);
						//getOauthAccessToken(transport.responseText);
						//getOauthGetUserAuthorization(transport.responseText);
						//return transport.responseText;
					}
				},
				onFailure: function(){
					alert('Sorry, the SWL server seems to be down. Please try again later.');
				}
			});
		}
		var articlesGetList = function(){
			//var sBaseUrl = "http://nearhome.smallworldlabs.com/services/1.0/";
			var sBaseUrl = "http://swl.ajobnearhome.com/services/1.0/";
			var sOauth_consumer_key = "04d4e52859ec97e72be50d7fa18f324f";
			//var sOauth_consumer_key = "de790c273be107240b5cca67e5d86b62";
			var sOauth_consumer_secret = "93f2d04b7d41abb2047b47aa31f1baed";
			//var sOauth_consumer_secret = "a57272275a05682bd4bb806a226cd423";
			var sOauth_signature_method = "HMAC-SHA1";
			var sMethodName = "articles.getList";
			//var sBaseUrl = "http://term.ie/oauth/example/";
			//var sOauth_consumer_key = "key";
			//var sOauth_consumer_secret = "secret";
			//var sOauth_signature_method = "HMAC-SHA1";
			//var sMethodName = "request_token.php";
			
			var d = new Date();
			var sOauth_timestamp = d.getTime();
			var sOauth_nonce = d.getTime();
			var sOauth_signature_base_string = "GET&"+URLEncode(sBaseUrl+sMethodName)+"&"+URLEncode("oauth_consumer_key="+sOauth_consumer_key+"&oauth_nonce="+sOauth_nonce+"&oauth_signature_method="+sOauth_signature_method+"&oauth_timestamp="+sOauth_timestamp+"&oauth_version=1.0"+"&category_id=9");
			
			var sOauth_signature = URLEncode(sOauth_signature_base_string.hmac_sha1(sOauth_consumer_secret+"&", "base64"));
			
			//oDivHtml.update(oDivHtml.innerHTML+"<p class='pods_rss_desc'>"+sOauth_signature+"</p>"); // should be returning: nnlSmpNH0cgxXQUmw7ahq8GcPhM%3D

			new Ajax.Request(getNamepairsViaGetProxyUrl(sBaseUrl+sMethodName+"?"+"oauth_consumer_key="+sOauth_consumer_key+"&oauth_nonce="+sOauth_nonce+"&oauth_signature_method="+sOauth_signature_method+"&oauth_timestamp="+sOauth_timestamp+"&oauth_version=1.0"+"&oauth_signature="+sOauth_signature+"&category_id=9"), {method:'get',
				onSuccess: function(transport){
					//var oJson = eval('('+transport.responseText+')');
					//init(oJson);
					//oDivHtml.update("<p class='pods_rss_desc'>"+transport.statusText);
					if(transport.responseText == ""){
						oDivHtml.update('<p class="pods_rss_desc">'+'test seemed to fail, no namepairs returned. http status: '+transport.statusText+'</br></br>'+transport.responseText);
					}
					else{
						//getOauthAccessToken();
						//oDivHtml.update("<p class='pods_rss_desc'>Connecting to SWL server.....</p>");
						oDivHtml.update(oDivHtml.innerHTML+"<p class='pods_rss_desc'>STEP 2 (SWL -> AJNH): Response from the SWL API server: "+transport.responseText+"</p>");
						alert(transport.responseText);
						//return transport.responseText;
					}
				},
				onFailure: function(){
					alert('Sorry, the SWL server seems to be down. Please try again later.');
				}
			});
		}
		var articlesGetCategories = function(){
			//var sBaseUrl = "http://nearhome.smallworldlabs.com/services/1.0/";
			var sBaseUrl = "http://swl.ajobnearhome.com/services/1.0/";
			var sOauth_consumer_key = "04d4e52859ec97e72be50d7fa18f324f";
			//var sOauth_consumer_key = "de790c273be107240b5cca67e5d86b62";
			var sOauth_consumer_secret = "93f2d04b7d41abb2047b47aa31f1baed";
			//var sOauth_consumer_secret = "a57272275a05682bd4bb806a226cd423";
			var sOauth_signature_method = "HMAC-SHA1";
			var sMethodName = "articles.getCategories";
			//var sBaseUrl = "http://term.ie/oauth/example/";
			//var sOauth_consumer_key = "key";
			//var sOauth_consumer_secret = "secret";
			//var sOauth_signature_method = "HMAC-SHA1";
			//var sMethodName = "request_token.php";
			
			var d = new Date();
			var sOauth_timestamp = d.getTime();
			var sOauth_nonce = d.getTime();
			var sOauth_signature_base_string = "GET&"+URLEncode(sBaseUrl+sMethodName)+"&"+URLEncode("oauth_consumer_key="+sOauth_consumer_key+"&oauth_nonce="+sOauth_nonce+"&oauth_signature_method="+sOauth_signature_method+"&oauth_timestamp="+sOauth_timestamp+"&oauth_version=1.0");
			
			var sOauth_signature = URLEncode(sOauth_signature_base_string.hmac_sha1(sOauth_consumer_secret+"&", "base64"));
			
			//oDivHtml.update(oDivHtml.innerHTML+"<p class='pods_rss_desc'>"+sOauth_signature+"</p>"); // should be returning: nnlSmpNH0cgxXQUmw7ahq8GcPhM%3D

			new Ajax.Request(getNamepairsViaGetProxyUrl(sBaseUrl+sMethodName+"?"+"oauth_consumer_key="+sOauth_consumer_key+"&oauth_nonce="+sOauth_nonce+"&oauth_signature_method="+sOauth_signature_method+"&oauth_timestamp="+sOauth_timestamp+"&oauth_version=1.0"+"&oauth_signature="+sOauth_signature), {method:'get',
				onSuccess: function(transport){
					//var oJson = eval('('+transport.responseText+')');
					//init(oJson);
					//oDivHtml.update("<p class='pods_rss_desc'>"+transport.statusText);
					if(transport.responseText == ""){
						oDivHtml.update('<p class="pods_rss_desc">'+'test seemed to fail, no namepairs returned. http status: '+transport.statusText+'</br></br>'+transport.responseText);
					}
					else{
						//getOauthAccessToken();
						//oDivHtml.update("<p class='pods_rss_desc'>Connecting to SWL server.....</p>");
						oDivHtml.update(oDivHtml.innerHTML+"<p class='pods_rss_desc'>STEP 4 (SWL -> AJNH): Response from the SWL API server: "+transport.responseText+"</p>");
						alert(transport.responseText);
						//return transport.responseText;
					}
				},
				onFailure: function(){
					alert('Sorry, the SWL server seems to be down. Please try again later.');
				}
			});
		}
		var getOauthGetUserAuthorization = function(sReturnedTokenAndSecretNamepairs){
			var sOauth_token = parseArgs(sReturnedTokenAndSecretNamepairs).oauth_token;
			var sOauth_token_secret = parseArgs(sReturnedTokenAndSecretNamepairs).oauth_token_secret;
			//var sBaseUrl = "http://nearhome.smallworldlabs.com/services/1.0/";
			var sBaseUrl = "http://swl.ajobnearhome.com/services/1.0/";
			//var sOauth_consumer_key = "04d4e52859ec97e72be50d7fa18f324f";
			var sOauth_consumer_key = "de790c273be107240b5cca67e5d86b62";
			//var sOauth_consumer_secret = "93f2d04b7d41abb2047b47aa31f1baed";
			var sOauth_consumer_secret = "a57272275a05682bd4bb806a226cd423";
			var sOauth_signature_method = "HMAC-SHA1";
			var sMethodName = "auth.getUserAuthorization";
			//var sBaseUrl = "http://term.ie/oauth/example/";
			//var sOauth_consumer_key = "key";
			//var sOauth_consumer_secret = "secret";
			//var sOauth_signature_method = "HMAC-SHA1";
			//var sMethodName = "request_token.php";
			
			var d = new Date();
			var sOauth_timestamp = d.getTime();
			var sOauth_nonce = d.getTime();
			
			var sOauth_signature_base_string = "GET&"+URLEncode(sBaseUrl+sMethodName)+"&"+URLEncode("oauth_consumer_key="+sOauth_consumer_key+"&oauth_nonce="+sOauth_nonce+"&oauth_signature_method="+sOauth_signature_method+"&oauth_timestamp="+sOauth_timestamp+"&oauth_token="+sOauth_token+"&oauth_version=1.0");
			
			var sOauth_signature = URLEncode(sOauth_signature_base_string.hmac_sha1(sOauth_consumer_secret+"&"+sOauth_token_secret, "base64"));
			
			//oDivHtml.update(oDivHtml.innerHTML+"<p class='pods_rss_desc'>"+sOauth_signature+"</p>"); // should be returning: nnlSmpNH0cgxXQUmw7ahq8GcPhM%3D

			new Ajax.Request(getNamepairsViaGetProxyUrl(sBaseUrl+sMethodName+"?"+"oauth_consumer_key="+sOauth_consumer_key+"&oauth_token="+sOauth_token+"&oauth_signature_method="+sOauth_signature_method+"&oauth_signature="+sOauth_signature+"&oauth_timestamp="+sOauth_timestamp+"&oauth_nonce="+sOauth_nonce+"&oauth_version=1.0"), {method:'get',
				onSuccess: function(transport){
					//var oJson = eval('('+transport.responseText+')');
					//init(oJson);
					//oDivHtml.update("<p class='pods_rss_desc'>"+transport.statusText);
					if(transport.responseText == ""){
						oDivHtml.update('<p class="pods_rss_desc">'+'test seemed to fail, no namepairs returned. http status: '+transport.statusText+'</br></br>'+transport.responseText);
					}
					else{
						//getOauthAccessToken();
						//oDivHtml.update("<p class='pods_rss_desc'>Connecting to SWL server.....</p>");
						oDivHtml.update(oDivHtml.innerHTML+"<p class='pods_rss_desc'>STEP 4 (SWL -> AJNH): Response from the SWL API server: "+transport.responseText+"</p>");
						//alert(transport.responseText);
						//return transport.responseText;
					}
				},
				onFailure: function(){
					alert('Sorry, the SWL server seems to be down. Please try again later.');
				}
			});
		}
		
		var getOauthAccessToken = function(sReturnedTokenAndSecretNamepairs){
			var sOauth_token = parseArgs(sReturnedTokenAndSecretNamepairs).oauth_token;
			var sOauth_token_secret = parseArgs(sReturnedTokenAndSecretNamepairs).oauth_token_secret;
			//alert(sOauth_token_secret);
			//return;
			//var sBaseUrl = "http://nearhome.smallworldlabs.com/services/1.0/";
			var sBaseUrl = "http://swl.ajobnearhome.com/services/1.0/";
			//var sOauth_consumer_key = "04d4e52859ec97e72be50d7fa18f324f";
			var sOauth_consumer_key = "de790c273be107240b5cca67e5d86b62";
			//var sOauth_consumer_secret = "93f2d04b7d41abb2047b47aa31f1baed";
			var sOauth_consumer_secret = "a57272275a05682bd4bb806a226cd423";
			var sOauth_signature_method = "HMAC-SHA1";
			var sMethodName = "auth.getAccessToken";
			//var sBaseUrl = "http://term.ie/oauth/example/";
			//var sOauth_consumer_key = "key";
			//var sOauth_consumer_secret = "secret";
			//var sOauth_signature_method = "HMAC-SHA1";
			//var sMethodName = "access_token.php";
			
			var d = new Date();
			var sOauth_timestamp = d.getTime();
			var sOauth_nonce = d.getTime();
			
			var sOauth_signature_base_string = "GET&"+URLEncode(sBaseUrl+sMethodName)+"&"+URLEncode("oauth_consumer_key="+sOauth_consumer_key+"&oauth_nonce="+sOauth_nonce+"&oauth_signature_method="+sOauth_signature_method+"&oauth_timestamp="+sOauth_timestamp+"&oauth_token="+sOauth_token+"&oauth_version=1.0");
			
			var sOauth_signature = URLEncode(sOauth_signature_base_string.hmac_sha1(sOauth_consumer_secret+"&"+sOauth_token_secret, "base64"));
			
			//oDivHtml.update(oDivHtml.innerHTML+"<p class='pods_rss_desc'>"+sOauth_signature+"</p>"); // should be returning: nnlSmpNH0cgxXQUmw7ahq8GcPhM%3D

			new Ajax.Request(getNamepairsViaGetProxyUrl(sBaseUrl+sMethodName+"?"+"oauth_consumer_key="+sOauth_consumer_key+"&oauth_token="+sOauth_token+"&oauth_signature_method="+sOauth_signature_method+"&oauth_signature="+sOauth_signature+"&oauth_timestamp="+sOauth_timestamp+"&oauth_nonce="+sOauth_nonce+"&oauth_version=1.0"), {method:'get',
				onSuccess: function(transport){
					//var oJson = eval('('+transport.responseText+')');
					//init(oJson);
					//oDivHtml.update("<p class='pods_rss_desc'>"+transport.statusText);
					if(transport.responseText == ""){
						oDivHtml.update('<p class="pods_rss_desc">'+'test seemed to fail, no namepairs returned. http status: '+transport.statusText+'</br></br>'+transport.responseText);
					}
					else{
						//getOauthAccessToken();
						//oDivHtml.update("<p class='pods_rss_desc'>Connecting to SWL server.....</p>");
						oDivHtml.update(oDivHtml.innerHTML+"<p class='pods_rss_desc'>STEP 4 (SWL -> AJNH): Response from the SWL API server: "+transport.responseText+"</p>");
						//alert(transport.responseText);
						//return transport.responseText;
					}
				},
				onFailure: function(){
					alert('Sorry, the SWL server seems to be down. Please try again later.');
				}
			});
		}
		//getOauthRequestToken();
		//articlesGetCategories();
		articlesGetList();
	}
	this._Pod_TermIeLogin = function(oTemplateNode, oElementTarget, sPrevContentHeader, sPrevContent, sPrevContentFooter, oOriginalTemplateNode, bIsRelatedType, sFileGuid){
		var bNoTitleBar = false;
		if(!oElementTarget.getChildElementById("divTitleBar")){
			bNoTitleBar = true;
		}
		else{
			//oElementTarget.showExpandShrinkControls();
		}
		var oDivHtml = window.document.createElement("div");
		var aryPodOrdinalPositions;
		var sPodOrdinalPositionsArray;
		$(oDivHtml).setAttribute("id", "divHtml_0");
		if(Prototype.Browser.IE == true && parseInt(Prototype.Browser.Version) < 8){
			oDivHtml.setStyle({
				position: "absolute",
				marginLeft: "8px",
				paddingRight: "15px",
				left: 0,
				top: 0,
				height: 214,
				width: 312,
				overflow: "auto",
				wordWrap: "break-word",
				overflowX: "hidden"
			});
		}
		else{
			oDivHtml.setStyle({
				position: "relative",
				marginLeft: "8px",
				paddingRight: "15px",
				left: 0,
				top: 0,
				height: "100%",
				overflow: "auto",
				wordWrap: "break-word",
				overflowX: "hidden"
			});
		}
		oElementTarget.getChildElementById("divContent").appendChild(oDivHtml);
		oElementTarget.getChildElementById("divTitleBar").getChildElementById("divTitleBarTitle").update(oTemplateNode.component[0].text.toUpperCase());
		oElementTarget.fncExpanded = function(){
			if(Prototype.Browser.IE == true && parseInt(Prototype.Browser.Version) < 8){
				oDivHtml.setStyle({
					height: 461,
					width: 644
				});
			}
			oDivHtml.setStyle({overflow: "auto"});
		};
		oElementTarget.fncShrunk = function(){
			if(Prototype.Browser.IE == true && parseInt(Prototype.Browser.Version) < 8){
				oDivHtml.setStyle({
					height: 214,
					width: 312
				});
			}
			oDivHtml.setStyle({overflow: "auto"});
		};
		oElementTarget.fncShrunk();
		oDivHtml.update("<p class='pods_rss_desc'>STEP 1 (AJNH -> TERM.IE): Connecting to the TERM.IE API server. METHOD: request_token.php...</p>");
		 var getOauthRequestToken = function(){
			//var sBaseUrl = "http://nearhome.smallworldlabs.com/services/1.0/";
			//var sBaseUrl = "http://swl.ajobnearhome.com/services/1.0/";
			//var sOauth_consumer_key = "04d4e52859ec97e72be50d7fa18f324f";
			//var sOauth_consumer_secret = "93f2d04b7d41abb2047b47aa31f1baed";
			//var sOauth_signature_method = "HMAC-SHA1";
			//var sMethodName = "auth.getRequestToken";
			var sBaseUrl = "http://term.ie/oauth/example/";
			var sOauth_consumer_key = "key";
			var sOauth_consumer_secret = "secret";
			var sOauth_signature_method = "HMAC-SHA1";
			var sMethodName = "request_token.php";
			
			var d = new Date();
			var sOauth_timestamp = d.getTime();
			var sOauth_nonce = d.getTime();
			var sOauth_signature_base_string = "GET&"+URLEncode(sBaseUrl+sMethodName)+"&"+URLEncode("oauth_consumer_key="+sOauth_consumer_key+"&oauth_nonce="+sOauth_nonce+"&oauth_signature_method="+sOauth_signature_method+"&oauth_timestamp="+sOauth_timestamp+"&oauth_version=1.0");
			
			var sOauth_signature = URLEncode(sOauth_signature_base_string.hmac_sha1(sOauth_consumer_secret+"&", "base64"));			
			new Ajax.Request(getNamepairsViaGetProxyUrl(sBaseUrl+sMethodName+"?"+"oauth_consumer_key="+sOauth_consumer_key+"&oauth_nonce="+sOauth_nonce+"&oauth_signature_method="+sOauth_signature_method+"&oauth_timestamp="+sOauth_timestamp+"&oauth_version=1.0"+"&oauth_signature="+sOauth_signature), {method:'get',
				onSuccess: function(transport){
					//alert(transport.responseText);
					//var oJson = eval('('+transport.responseText+')');
					//init(oJson);
					//oDivHtml.update("<p class='pods_rss_desc'>"+transport.statusText);
					if(transport.responseText == ""){
						oDivHtml.update('<p class="pods_rss_desc">'+'test seemed to fail, no namepairs returned. http status: '+transport.statusText+'</br></br>'+transport.responseText);
					}
					else{
						oDivHtml.update(oDivHtml.innerHTML+"<p class='pods_rss_desc'>STEP 2 (TERM.IE -> AJNH): Successfully received Request Token/Secret from TERM.IE! (Token: "+parseArgs(transport.responseText).oauth_token+"   Secret: "+parseArgs(transport.responseText).oauth_token_secret+")"+"</p>");
						oDivHtml.update(oDivHtml.innerHTML+"<p class='pods_rss_desc'>STEP 3 (AJNH -> TERM.IE): Now using signed TERM.IE Token and Secret to get TERM.IE Access Token. Connecting to the TERM.IE API server. METHOD: access_token.php...</p>");
						getOauthAccessToken(transport.responseText);
						//return transport.responseText;
					}
				},
				onFailure: function(){
					alert('Sorry, the SWL server seems to be down. Please try again later.');
				}
			});
		}
		var getOauthAccessToken = function(sReturnedTokenAndSecretNamepairs){
			var sOauth_token = parseArgs(sReturnedTokenAndSecretNamepairs).oauth_token;
			var sOauth_token_secret = parseArgs(sReturnedTokenAndSecretNamepairs).oauth_token_secret;
			//alert(sOauth_token_secret);
			//return;
			//var sBaseUrl = "http://nearhome.smallworldlabs.com/services/1.0/";
			//var sBaseUrl = "http://swl.ajobnearhome.com/services/1.0/";
			//var sOauth_consumer_key = "04d4e52859ec97e72be50d7fa18f324f";
			//var sOauth_consumer_secret = "93f2d04b7d41abb2047b47aa31f1baed";
			//var sOauth_signature_method = "HMAC-SHA1";
			//var sMethodName = "auth.getAccessToken";
			var sBaseUrl = "http://term.ie/oauth/example/";
			var sOauth_consumer_key = "key";
			var sOauth_consumer_secret = "secret";
			var sOauth_signature_method = "HMAC-SHA1";
			var sMethodName = "access_token.php";
			
			var d = new Date();
			var sOauth_timestamp = d.getTime();
			var sOauth_nonce = d.getTime();
			
			var sOauth_signature_base_string = "GET&"+URLEncode(sBaseUrl+sMethodName)+"&"+URLEncode("oauth_consumer_key="+sOauth_consumer_key+"&oauth_nonce="+sOauth_nonce+"&oauth_signature_method="+sOauth_signature_method+"&oauth_timestamp="+sOauth_timestamp+"&oauth_token="+sOauth_token+"&oauth_version=1.0");
			
			var sOauth_signature = URLEncode(sOauth_signature_base_string.hmac_sha1(sOauth_consumer_secret+"&"+sOauth_token_secret, "base64"));
			
			//oDivHtml.update(oDivHtml.innerHTML+"<p class='pods_rss_desc'>"+sOauth_signature+"</p>"); // should be returning: nnlSmpNH0cgxXQUmw7ahq8GcPhM%3D

			new Ajax.Request(getNamepairsViaGetProxyUrl(sBaseUrl+sMethodName+"?"+"oauth_consumer_key="+sOauth_consumer_key+"&oauth_token="+sOauth_token+"&oauth_signature_method="+sOauth_signature_method+"&oauth_signature="+sOauth_signature+"&oauth_timestamp="+sOauth_timestamp+"&oauth_nonce="+sOauth_nonce+"&oauth_version=1.0"), {method:'get',
				onSuccess: function(transport){
					//var oJson = eval('('+transport.responseText+')');
					//init(oJson);
					//oDivHtml.update("<p class='pods_rss_desc'>"+transport.statusText);
					if(transport.responseText == ""){
						oDivHtml.update('<p class="pods_rss_desc">'+'test seemed to fail, no namepairs returned. http status: '+transport.statusText+'</br></br>'+transport.responseText);
					}
					else{
						//getOauthAccessToken();
						//oDivHtml.update("<p class='pods_rss_desc'>Connecting to SWL server.....</p>");
						oDivHtml.update(oDivHtml.innerHTML+"<p class='pods_rss_desc'>STEP 4 (TERM.IE -> AJNH): Response from the TERM.IE API server: "+transport.responseText+"</p>");
						//alert(transport.responseText);
						//return transport.responseText;
					}
				},
				onFailure: function(){
					alert('Sorry, the SWL server seems to be down. Please try again later.');
				}
			});
		}
		getOauthRequestToken();
	}
	this._Pod_OnesiteRpcGetVersion = function(oTemplateNode, oElementTarget, sPrevContentHeader, sPrevContent, sPrevContentFooter, oOriginalTemplateNode, bIsRelatedType, sFileGuid){
		var bNoTitleBar = false;
		if(!oElementTarget.getChildElementById("divTitleBar")){
			bNoTitleBar = true;
		}
		else{
			//oElementTarget.showExpandShrinkControls();
		}
		var oDivHtml = window.document.createElement("div");
		var aryPodOrdinalPositions;
		var sPodOrdinalPositionsArray;
		$(oDivHtml).setAttribute("id", "divHtml_0");
		if(Prototype.Browser.IE == true && parseInt(Prototype.Browser.Version) < 8){
			oDivHtml.setStyle({
				position: "absolute",
				marginLeft: "8px",
				paddingRight: "15px",
				left: 0,
				top: 0,
				height: 214,
				width: 312,
				overflow: "auto",
				wordWrap: "break-word",
				overflowX: "hidden"
			});
		}
		else{
			oDivHtml.setStyle({
				position: "relative",
				marginLeft: "8px",
				paddingRight: "15px",
				left: 0,
				top: 0,
				height: "100%",
				overflow: "auto",
				wordWrap: "break-word",
				overflowX: "hidden"
			});
		}
		oElementTarget.getChildElementById("divContent").appendChild(oDivHtml);
		oElementTarget.getChildElementById("divTitleBar").getChildElementById("divTitleBarTitle").update(oTemplateNode.component[0].text.toUpperCase());
		oElementTarget.fncExpanded = function(){
			if(Prototype.Browser.IE == true && parseInt(Prototype.Browser.Version) < 8){
				oDivHtml.setStyle({
					height: 461,
					width: 644
				});
			}
			oDivHtml.setStyle({overflow: "auto"});
		};
		oElementTarget.fncShrunk = function(){
			if(Prototype.Browser.IE == true && parseInt(Prototype.Browser.Version) < 8){
				oDivHtml.setStyle({
					height: 214,
					width: 312
				});
			}
			oDivHtml.setStyle({overflow: "hidden"});
		};
		oElementTarget.fncShrunk();
		oDivHtml.update("<p class='pods_rss_desc'>Connecting to Onesite server...</p>");
		// onesite.version
		var sXmlPost = '%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22UTF-8%22%3F%3E%3CmethodCall%3E%3CmethodName%3Eonesite.version%3C/methodName%3E%3Cparams%3E%3Cparam%3E%3Cvalue%3E%3Cstring%3Ee322792fc878c60f598e6b2965536c7a-ajnh%3C/string%3E%3C/value%3E%3C/param%3E%3C/params%3E%3C/methodCall%3E';		
		new Ajax.Request(getJsonViaPostProxyUrl(), {method:'post', postBody:'url='+getProxyUrl('http://oteservices.onesite.com/RPC2')+'&post='+sXmlPost,
			onSuccess: function(transport){
				if(transport.responseText == ""){
					oDivHtml.update('<p class="pods_rss_desc">'+'test seemed to fail, no JSON returned. http status: '+transport.statusText+'</br></br>'+transport.responseText);
				}
				else{
					oDivHtml.update('<p class="pods_rss_desc">'+transport.responseJSON.methodResponse.params.param.value.array.data.value[1].string+"</br>Compiled on: "+transport.responseJSON.methodResponse.params.param.value.array.data.value[3].string);
				}
			},
			onFailure: function(){
				alert('Sorry, the Onesite server seems to be down. Please try again later.');
			}
		});
	}
	this._Pod_OnesiteRpcDisplayUser = function(oTemplateNode, oElementTarget, sPrevContentHeader, sPrevContent, sPrevContentFooter, oOriginalTemplateNode, bIsRelatedType, sFileGuid){
		var bNoTitleBar = false;
		if(!oElementTarget.getChildElementById("divTitleBar")){
			bNoTitleBar = true;
		}
		else{
			//oElementTarget.showExpandShrinkControls();
		}
		var oDivHtml = window.document.createElement("div");
		var aryPodOrdinalPositions;
		var sPodOrdinalPositionsArray;
		$(oDivHtml).setAttribute("id", "divHtml_0");
		if(Prototype.Browser.IE == true && parseInt(Prototype.Browser.Version) < 8){
			oDivHtml.setStyle({
				position: "absolute",
				marginLeft: "8px",
				paddingRight: "15px",
				left: 0,
				top: 0,
				height: 214,
				width: 312,
				overflow: "auto",
				wordWrap: "break-word",
				overflowX: "hidden"
			});
		}
		else{
			oDivHtml.setStyle({
				position: "relative",
				marginLeft: "8px",
				paddingRight: "15px",
				left: 0,
				top: 0,
				height: "100%",
				overflow: "auto",
				wordWrap: "break-word",
				overflowX: "hidden"
			});
		}
		oElementTarget.getChildElementById("divContent").appendChild(oDivHtml);
		oElementTarget.getChildElementById("divTitleBar").getChildElementById("divTitleBarTitle").update(oTemplateNode.component[0].text.toUpperCase());
		oElementTarget.fncExpanded = function(){
			if(Prototype.Browser.IE == true && parseInt(Prototype.Browser.Version) < 8){
				oDivHtml.setStyle({
					height: 461,
					width: 644
				});
			}
			oDivHtml.setStyle({overflow: "auto"});
		};
		oElementTarget.fncShrunk = function(){
			if(Prototype.Browser.IE == true && parseInt(Prototype.Browser.Version) < 8){
				oDivHtml.setStyle({
					height: 214,
					width: 312
				});
			}
			oDivHtml.setStyle({overflow: "auto"});
		};
		oElementTarget.fncShrunk();
		oDivHtml.update("<p class='pods_rss_desc'>Connecting to Onesite server...</p>");
		var sUsername = "jpark";
		// onesite.display_user (on ote)
		var sXmlPost = '%3C%3Fxml%20version%3D%221.0%22%20%3F%3E%3CmethodCall%3E%3CmethodName%3Eonesite.display_user%3C/methodName%3E%3Cparams%3E%3Cparam%3E%3Cvalue%3E%3Cstruct%3E%3Cmember%3E%3Cname%3Eusername%3C/name%3E%3Cvalue%3E%3Cstring%3E'+sUsername+'%3C/string%3E%3C/value%3E%3C/member%3E%3Cmember%3E%3Cname%3Edomain%3C/name%3E%3Cvalue%3E%3Cstring%3Enetwork.ajobnearhome.com%3C/string%3E%3C/value%3E%3C/member%3E%3Cmember%3E%3Cname%3Eauthkey%3C/name%3E%3Cvalue%3E%3Cstring%3Ee322792fc878c60f598e6b2965536c7a-ajnh%3C/string%3E%3C/value%3E%3C/member%3E%3C/struct%3E%3C/value%3E%3C/param%3E%3C/params%3E%3C/methodCall%3E';
		new Ajax.Request(getJsonViaPostProxyUrl(), {method:'post', postBody:'url='+getProxyUrl('http://oteservices.onesite.com/RPC2')+'&post='+sXmlPost,
			onSuccess: function(transport){
				if(transport.responseText == ""){
					oDivHtml.update('<p class="pods_rss_desc">'+'test seemed to fail, no JSON returned. http status: '+transport.statusText+'</br></br>'+transport.responseText);
				}
				else{
					var s = '';
					if(transport.responseJSON.methodResponse.params.param.value.struct.member[1].name == "ERROR"){
						s = '<p class="pods_rss_desc">'+'Username: '+transport.responseJSON.methodResponse.params.param.value.struct.member[0].value.string+'</br>';
						s = s + 'Error: '+transport.responseJSON.methodResponse.params.param.value.struct.member[1].value.string;
					}
					else{
						s = '<p class="pods_rss_desc">';
						for(var i=0; i<transport.responseJSON.methodResponse.params.param.value.struct.member.length; i++){
							var sValue = '';
							var oMember = transport.responseJSON.methodResponse.params.param.value.struct.member[i];
							if(!oMember.value.string){
								if(!oMember.value.i4){
									sValue = oMember.value.array;
								}
								else{
									sValue = oMember.value.i4;
								}
							}
							else{
								sValue = oMember.value.string;
							}
							s = s + oMember.name+":</br>"+sValue+"</br>";
							s = s + '</br>';
						}
					}
					oDivHtml.update(s);
				}
			},
			onFailure: function(){
				alert('Sorry, the Onesite server seems to be down. Please try again later.');
			}
		});
	}
	this._Pod_OnesiteRpcListMethods = function(oTemplateNode, oElementTarget, sPrevContentHeader, sPrevContent, sPrevContentFooter, oOriginalTemplateNode, bIsRelatedType, sFileGuid){
		var bNoTitleBar = false;
		if(!oElementTarget.getChildElementById("divTitleBar")){
			bNoTitleBar = true;
		}
		else{
			//oElementTarget.showExpandShrinkControls();
		}
		var oDivHtml = window.document.createElement("div");
		var aryPodOrdinalPositions;
		var sPodOrdinalPositionsArray;
		$(oDivHtml).setAttribute("id", "divHtml_0");
		if(Prototype.Browser.IE == true && parseInt(Prototype.Browser.Version) < 8){
			oDivHtml.setStyle({
				position: "absolute",
				marginLeft: "8px",
				paddingRight: "15px",
				left: 0,
				top: 0,
				height: 214,
				width: 312,
				overflow: "auto",
				wordWrap: "break-word",
				overflowX: "hidden"
			});
		}
		else{
			oDivHtml.setStyle({
				position: "relative",
				marginLeft: "8px",
				paddingRight: "15px",
				left: 0,
				top: 0,
				height: "100%",
				overflow: "auto",
				wordWrap: "break-word",
				overflowX: "hidden"
			});
		}
		oElementTarget.getChildElementById("divContent").appendChild(oDivHtml);
		oElementTarget.getChildElementById("divTitleBar").getChildElementById("divTitleBarTitle").update(oTemplateNode.component[0].text.toUpperCase());
		oElementTarget.fncExpanded = function(){
			if(Prototype.Browser.IE == true && parseInt(Prototype.Browser.Version) < 8){
				oDivHtml.setStyle({
					height: 461,
					width: 644
				});
			}
			oDivHtml.setStyle({overflow: "auto"});
		};
		oElementTarget.fncShrunk = function(){
			if(Prototype.Browser.IE == true && parseInt(Prototype.Browser.Version) < 8){
				oDivHtml.setStyle({
					height: 214,
					width: 312
				});
			}
			oDivHtml.setStyle({overflow: "auto"});
		};
		oElementTarget.fncShrunk();
		oDivHtml.update("<p class='pods_rss_desc'>Connecting to Onesite server...</p>");
		// system.listMethods
		var sXmlPost = '%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22UTF-8%22%3F%3E%3CmethodCall%3E%3CmethodName%3Esystem.listMethods%3C/methodName%3E%3C/methodCall%3E';
		new Ajax.Request(getJsonViaPostProxyUrl(), {method:'post', postBody:'url='+getProxyUrl('http://oteservices.onesite.com/RPC2')+'&post='+sXmlPost,
			onSuccess: function(transport){
				if(transport.responseText == ""){
					oDivHtml.update('<p class="pods_rss_desc">'+'test seemed to fail, no JSON returned. http status: '+transport.statusText+'</br></br>'+transport.responseText);
				}
				else{
					var aryMethods = transport.responseJSON.methodResponse.params.param.value.array.data.value;
					var s = "<p class='pods_rss_desc'>";
					for(var i=0; i<aryMethods.length; i++){
						s = s + i+": "+aryMethods[i].string+"</br>";
					}
					oDivHtml.update(s);
				}
			},
			onFailure: function(){
				alert('Sorry, the Onesite server seems to be down. Please try again later.');
			}
		});	
	}
	this._Pod_OnesiteRpcMkUserSession = function(oTemplateNode, oElementTarget, sPrevContentHeader, sPrevContent, sPrevContentFooter, oOriginalTemplateNode, bIsRelatedType, sFileGuid){
		var bNoTitleBar = false;
		if(!oElementTarget.getChildElementById("divTitleBar")){
			bNoTitleBar = true;
		}
		else{
			//oElementTarget.showExpandShrinkControls();
		}
		var oDivHtml = window.document.createElement("div");
		var aryPodOrdinalPositions;
		var sPodOrdinalPositionsArray;
		$(oDivHtml).setAttribute("id", "divHtml_0");
		if(Prototype.Browser.IE == true && parseInt(Prototype.Browser.Version) < 8){
			oDivHtml.setStyle({
				position: "absolute",
				marginLeft: "8px",
				paddingRight: "15px",
				left: 0,
				top: 0,
				height: 214,
				width: 312,
				overflow: "auto",
				wordWrap: "break-word",
				overflowX: "hidden"
			});
		}
		else{
			oDivHtml.setStyle({
				position: "relative",
				marginLeft: "8px",
				paddingRight: "15px",
				left: 0,
				top: 0,
				height: "100%",
				overflow: "auto",
				wordWrap: "break-word",
				overflowX: "hidden"
			});
		}
		oElementTarget.getChildElementById("divContent").appendChild(oDivHtml);
		oElementTarget.getChildElementById("divTitleBar").getChildElementById("divTitleBarTitle").update(oTemplateNode.component[0].text.toUpperCase());
		oElementTarget.fncExpanded = function(){
			if(Prototype.Browser.IE == true && parseInt(Prototype.Browser.Version) < 8){
				oDivHtml.setStyle({
					height: 461,
					width: 644
				});
			}
			oDivHtml.setStyle({overflow: "auto"});
		};
		oElementTarget.fncShrunk = function(){
			if(Prototype.Browser.IE == true && parseInt(Prototype.Browser.Version) < 8){
				oDivHtml.setStyle({
					height: 214,
					width: 312
				});
			}
			oDivHtml.setStyle({overflow: "auto"});
		};
		oElementTarget.fncShrunk();
		oDivHtml.update("<p class='pods_rss_desc'>Connecting to Onesite server...</p>");
		var sUsername = "jpark";
		var sPassword = "fortay1";
		// onesite.auth_user_session
		var sXmlPost = '%3C%3Fxml%20version%3D%221.0%22%20%3F%3E%3CmethodCall%3E%3CmethodName%3Eonesite.auth_user_session%3C/methodName%3E%3Cparams%3E%3Cparam%3E%3Cvalue%3E%3Cstruct%3E%3Cmember%3E%3Cname%3Eauthkey%3C/name%3E%3Cvalue%3E%3Cstring%3Ee322792fc878c60f598e6b2965536c7a-ajnh%3C/string%3E%3C/value%3E%3C/member%3E%3Cmember%3E%3Cname%3Eusername%3C/name%3E%3Cvalue%3E%3Cstring%3E'+sUsername+'%3C/string%3E%3C/value%3E%3C/member%3E%3Cmember%3E%3Cname%3Epassword%3C/name%3E%3Cvalue%3E%3Cstring%3E'+sPassword+'%3C/string%3E%3C/value%3E%3C/member%3E%3Cmember%3E%3Cname%3Edomain%3C/name%3E%3Cvalue%3E%3Cstring%3Enetwork.ajobnearhome.com%3C/string%3E%3C/value%3E%3C/member%3E%3Cmember%3E%3Cname%3Eorigin_url%3C/name%3E%3Cvalue%3E%3Cstring%3Eotenetwork.ajobnearhome.com%3C/string%3E%3C/value%3E%3C/member%3E%3Cmember%3E%3Cname%3Eoffnetwork%3C/name%3E%3Cvalue%3E%3Cint%3E1%3C/int%3E%3C/value%3E%3C/member%3E%3Cmember%3E%3Cname%3Eexpire_from_now%3C/name%3E%3Cvalue%3E%3Cint%3E60%3C/int%3E%3C/value%3E%3C/member%3E%3Cmember%3E%3Cname%3Eclient_ip%3C/name%3E%3Cvalue%3E%3Cstring%3E127.0.0.1%3C/string%3E%3C/value%3E%3C/member%3E%3C/struct%3E%3C/value%3E%3C/param%3E%3C/params%3E%3C/methodCall%3E';
		new Ajax.Request(getJsonViaPostProxyUrl(), {method:'post', postBody:'url='+getProxyUrl('http://oteservices.onesite.com/RPC2')+'&post='+sXmlPost,
			onSuccess: function(transport){
				//var oJson = eval('('+transport.responseText+')');
				//init(oJson);
				//oDivHtml.update("<p class='pods_rss_desc'>"+transport.statusText);
				if(transport.responseText == ""){
					oDivHtml.update('<p class="pods_rss_desc">'+'test seemed to fail, no JSON returned. http status: '+transport.statusText+'</br></br>'+transport.responseText);
				}
				else{
					s = '<p class="pods_rss_desc">';
					for(var i=0; i<transport.responseJSON.methodResponse.params.param.value.struct.member.length; i++){
						var oMember = transport.responseJSON.methodResponse.params.param.value.struct.member[i];
						var sValue = '';
						if(!oMember.value.string){
							if(!oMember.value.i4){
								sValue = oMember.value.array;
							}
							else{
								sValue = oMember.value.i4;
							}
						}
						else{
							sValue = oMember.value.string;
						}
						if(oMember == "redir_url"){
							//sValue = 
						}
						s = s + oMember.name+":</br>"+sValue+"</br>";
						s = s + '</br>';
					}
				}
				oDivHtml.update(s);
			},
			onFailure: function(){
				alert('Sorry, the Onesite server seems to be down. Please try again later.');
			}
		});	
	}
	// look for "hidden" templates and remove them from data
	if(oTemplateNode.template[0]){ // if more than one template
		var e=0;
		var bFoundHidden = false;
		var iLen = oTemplateNode.template.length;
		for(var d=0; d<iLen; d++){
			if(oTemplateNode.template[d-e].hidden && oTemplateNode.template[d-e].hidden == "true"){
				oTemplateNode.template.splice((d-e),1);
				bFoundHidden = true;
			}
			if(d != iLen-1){
				if(oTemplateNode.template[(d-e)-1]){
					oTemplateNode.template[d-e]._iOrdinalId = oTemplateNode.template[(d-e)-1]._iOrdinalId+1;
				}
				else{
					oTemplateNode.template[d-e]._iOrdinalId = 0;
				}
			}
			if(bFoundHidden == true){
				e++;
				bFoundHidden = false;
			}
		}
		if(oTemplateNode.template.length == 0){
			delete oTemplateNode.template;
		}
	}
	else{
		if(oTemplateNode.template.hidden && oTemplateNode.template.hidden == "true"){
			delete oTemplateNode.template;
		}
	}
	destroyContentArea(iContentArea);
	// attach the templates
	var iCanvasWidth = getBrowserWidth();
	if(oTemplateNode.template){ // if there's still stuff to process after the "hidden" exclusions
		if(oTemplateNode.template[0]){ // if more than one template
			if(oElementTarget){
				//if(sTemplateId){
				//	this[sTemplateId](oTemplateNode.template[0], oElementTarget);
				//}
				for(var i=0; i<oTemplateNode.template.length; i++){
					if(oTemplateNode.template[i]._iOrdinalId == undefined){
						oTemplateNode.template[i]._iOrdinalId = i;
					}
					if(oTemplateNode.template[i].parentCanvasForcedWidth){
						if(oTemplateNode.template[i].parentCanvasForcedWidth != "0"){
							iCanvasWidth = parseInt(oTemplateNode.template[i].parentCanvasForcedWidth);
						}
					}
					oElementTarget._iCanvasWidth = iCanvasWidth;
					var oDiv = createPod(i, oTemplateNode.template[i], iContentArea, oElementTarget);
					this[oTemplateNode.template[i].attachId](oTemplateNode.template[i], oDiv, undefined, undefined, undefined, undefined, undefined, oTemplateNode.guid);
				}
				oElementTarget._PodsBroadcaster.broadcastMessage("onReorderPodsBroadcasted", {iWidth:iCanvasWidth, iHeight:0, bNoAnim:true});
				oElementTarget._PodsBroadcaster.broadcastMessage("onReorderPodsFromSavedPosition", {iWidth:iCanvasWidth, iHeight:0, bNoAnim:true});
			}
			else{
				if(oTemplateNode.template[0]._iOrdinalId == undefined){
					sPodOrdinalPositionsArray = parseArgs(getCookieData(window._getCurrentNavId())).sPodOrdinalPositionsArray;
					if(sPodOrdinalPositionsArray){
						aryPodOrdinalPositions = sPodOrdinalPositionsArray.split(",");
					}
				}
				//alert(sPodOrdinalPositionsArray);
				for(var i=0; i<oTemplateNode.template.length; i++){
					if(oTemplateNode.template[i]._iOrdinalId == undefined){
						if(sPodOrdinalPositionsArray){
							oTemplateNode.template[i]._iOrdinalId = i; // temporarily disabling the get saved cookie info
							//oTemplateNode.template[i]._iOrdinalId = parseInt(aryPodOrdinalPositions[i]);
						}
						else{
							oTemplateNode.template[i]._iOrdinalId = i;
						}
					}
					if(oTemplateNode.template[i].parentCanvasForcedWidth){
						if(oTemplateNode.template[i].parentCanvasForcedWidth != "0"){
							iCanvasWidth = parseInt(oTemplateNode.template[i].parentCanvasForcedWidth);
						}
					}
					$("divContentArea_"+iContentArea)._iCanvasWidth = iCanvasWidth;
					//alert("iContentArea: "+iContentArea+" - i: "+i+" - template attachid: "+oTemplateNode.template[i].attachId);
					var oDiv = createPod(i, oTemplateNode.template[i], iContentArea);
					this[oTemplateNode.template[i].attachId](oTemplateNode.template[i], oDiv, undefined, undefined, undefined, undefined, undefined, oTemplateNode.guid);
				}
				$("divContentArea_"+iContentArea)._PodsBroadcaster.broadcastMessage("onReorderPodsBroadcasted", {iWidth:iCanvasWidth, iHeight:0, bNoAnim:true});
				$("divContentArea_"+iContentArea)._PodsBroadcaster.broadcastMessage("onReorderPodsFromSavedPosition", {iWidth:iCanvasWidth, iHeight:0, bNoAnim:true});
				if(oDiv.getDragAndDropIsDisabled() == true){
					oDiv.destroyDragAndDropIncludingSiblings();
				}
			}
		}
		else{ // only one template
			if(oElementTarget){
				if(oTemplateNode.template._iOrdinalId == undefined){
					oTemplateNode.template._iOrdinalId = 0;
				}
				if(oTemplateNode.template.parentCanvasForcedWidth){
					if(oTemplateNode.template.parentCanvasForcedWidth != "0"){
						iCanvasWidth = parseInt(oTemplateNode.template.parentCanvasForcedWidth);
					}
				}
				oElementTarget._iCanvasWidth = iCanvasWidth;
				var oDiv = createPod(0, oTemplateNode.template, iContentArea, oElementTarget);
				this[oTemplateNode.template.attachId](oTemplateNode.template, oDiv, undefined, undefined, undefined, undefined, undefined, oTemplateNode.guid);
				oElementTarget._PodsBroadcaster.broadcastMessage("onReorderPodsBroadcasted", {iWidth:iCanvasWidth, iHeight:0, bNoAnim:true});
				oElementTarget._PodsBroadcaster.broadcastMessage("onReorderPodsFromSavedPosition", {iWidth:iCanvasWidth, iHeight:0, bNoAnim:true});
			}
			else{
				if(oTemplateNode.template._iOrdinalId == undefined){
					sPodOrdinalPositionsArray = parseArgs(getCookieData(window._getCurrentNavId())).sPodOrdinalPositionsArray;
					if(sPodOrdinalPositionsArray){
						aryPodOrdinalPositions = sPodOrdinalPositionsArray.split(",");
					}
				}
				if(oTemplateNode.template._iOrdinalId == undefined){
					if(sPodOrdinalPositionsArray){
						oTemplateNode.template._iOrdinalId = 0; // temporarily disabling the get saved cookie info
						//oTemplateNode.template[i]._iOrdinalId = parseInt(aryPodOrdinalPositions[i]);
					}
					else{
						oTemplateNode.template._iOrdinalId = 0;
					}
				}
				if(oTemplateNode.template.parentCanvasForcedWidth){
					if(oTemplateNode.template.parentCanvasForcedWidth != "0"){
						iCanvasWidth = parseInt(oTemplateNode.template.parentCanvasForcedWidth);
					}
				}
				$("divContentArea_"+iContentArea)._iCanvasWidth = iCanvasWidth;
				var oDiv = createPod(0, oTemplateNode.template, iContentArea);
				this[oTemplateNode.template.attachId](oTemplateNode.template, oDiv, undefined, undefined, undefined, undefined, undefined, oTemplateNode.guid);
				$("divContentArea_"+iContentArea)._PodsBroadcaster.broadcastMessage("onReorderPodsBroadcasted", {iWidth:iCanvasWidth, iHeight:0, bNoAnim:true});
				$("divContentArea_"+iContentArea)._PodsBroadcaster.broadcastMessage("onReorderPodsFromSavedPosition", {iWidth:iCanvasWidth, iHeight:0, bNoAnim:true});
			}
		}
	}
}
window.oTemplates = new TemplateClass();

