// ----------------------------------------------------------------------------------------------
// ----------------------------------- GLOBAL FUNCTIONS -----------------------------------------
// ----------------------------------------------------------------------------------------------

// YUI SHORTHAND

var YUD = YAHOO.util.Dom;
var YUE = YAHOO.util.Event;
var YUA = YAHOO.util.Anim;

// GLOBAL GOOGLE VARIABLE
//var defaultMapLng, defaultMapLat;

// SET CURRSITE
var getCurrSite = function() {
	var currSite = 'Pulte';
	if (document.getElementById('pulte')){currSite = 'Pulte'}
	if (document.getElementById('delWebb')){currSite = 'DelWebb'}
	if (document.getElementById('diVosta')){currSite = 'DiVosta'}
	if (document.getElementById('corp')){currSite = 'Pulte Homes Corporation'}
	return currSite;
}

// ----------------------------------------------------------------------------------------------

// ROUNDED CORNERS (at page load)
var roundedCorners = function(){
    if (getCurrSite()=='Pulte') {
		Rounded('summaryCorners','div','all','transparent','#E6F0FB','border #9EC7E6'); // community summary
		Rounded('cHdr','div','top','transparent','#5691BE'); // cool button, community hdr
		Rounded('cFtr','div','bottom','transparent','#0E4073'); // cool button, community ftr
		Rounded('alertHdr','div','top','transparent','#C96625'); // alert bar
		Rounded('alertFtr','div','bottom','transparent','#B55918'); // alert bar
		Rounded('srCorners','td','top','transparent','#5A94C2'); // search results module
		Rounded('navModule','div','top','transparent','#D3B67D'); // search results navigation module(s)
		Rounded('contactUsCorners','div','all','transparent','#F5F9FD'); // contact us
		Rounded('cuFormCorners','form','all','transparent','#FFF','border #D6BB85'); // contact us form

		// Sign Up Pop Up - DON'T LOAD DEFAULT PULTE STYLES
		if (YUD.hasClass('pulte','signUp')) {Rounded('cuInfoCorners','div','all','transparent','#F5F8FD','border #9EC7E6')} // Sign Up Pop Up infoboxes F5F8FD | D2E5F3
		else {Rounded('cuInfoCorners','div','all','transparent','#FFF','border #9EC7E6')} // contact us infoboxes

		Rounded('cuThankYouCorners','div','all','transparent','#FFF','border #D6BB85'); // contact us thank you
		Rounded('tfFormCorners','form','all','transparent','#FFF','border #9EC7E6'); // tell a friend form

		if (YUD.hasClass('pulte','template-A')){ // grid A
			Rounded('overlayCorners','div','all','transparent','#FFF','border #C5A35A'); // map overlay
		}

		if (YUD.hasClass('pulte','template-D')){ // grid D
			Rounded('primaryContentCorners','div','all','transparent','#FFF','border #9EC7E6'); // primary content
			Rounded('pHdr','div','top','transparent','#5691BE'); // cool button, plan hdr
			Rounded('pFtr','div','bottom','transparent','#0E4073'); // cool button, plan hdr
			Rounded('infoBoxCorners','div','all','transparent','#FFF','border #9EC7E6'); // content info boxes
			Rounded('myNotebookCorners','div','all','transparent','#F5F9FD'); // my notebook
			Rounded('sharePanelCorners','div','all','transparent','#F5F9FD'); // my notebook share panel
			Rounded('comparePanelCorners','div','all','transparent','#F5F9FD'); // my notebook compare panel
			Rounded('hdrBar','div','all','transparent','#E6F0FB'); // my notebook header bars
			Rounded('messageArea','div','all','transparent','#B35817'); // my notebook ask to register
			Rounded('signInCorners','div','all','transparent','#F5F9FD'); // my notebook sign in
			Rounded('driveDirectionsCorners','div','all','transparent','#F5F9FD'); // my notebook driving directions
			Rounded('registerPanelCorners','div','all','transparent','#F5F9FD'); // my notebook register in
			Rounded('errorMessageArea','div','all','transparent','#B35817'); // my notebook error messages
			Rounded('PWerrorMessageArea','div','all','transparent','#B35817'); // my notebook error messages
			Rounded('newPWerrorMessageArea','div','all','transparent','#B35817'); // my notebook error messages
		}
		if (YUD.hasClass('pulte','template-E')){ // grid E
			Rounded('planFuzzyWrapper','div','all','transparent','#FFF'); // primary content plan
			Rounded('pHdr','div','top','transparent','#D3B77E'); // cool button, plan hdr
			Rounded('pFtr','div','bottom','transparent','#BF9A46'); // cool button, plan hdr
			Rounded('infoBoxCorners','div','all','transparent','#FFF','border #D6BB85'); // content info boxes
			Rounded('selectedPlanCorners','div','top','transparent','#FFF','border #D6BB85'); // selected plan box
			Rounded('selectedPlanCorners','div','bottom','transparent','#FCF8EF','border #D6BB85'); // selected plan box
		}
		if (YUD.hasClass('pulte','template-F')){ // grid F or A
			Rounded('overlayWrapper','div','all','transparent','#FFF'); // map overlay
		}
		if (YUD.hasClass('pulte','template-H')){ // grid H
			Rounded('csTopCorners','td','top','transparent','#5994C1','border #A9CEE8'); // FAQs
			Rounded('csBottomCorners','td','bottom','transparent','#FFF','border #A9CEE8'); // FAQs
			Rounded('glossaryCorners','div','all','transparent','#FFF','border #E8DABD'); // glossary
		}
		if (YUD.hasClass('pulte','template-I') || YUD.hasClass('pulte','template-G') || YUD.hasClass('pulte','template-L')){ // grid I & G & L
			Rounded('iHdr','div','top','transparent','#D3B77E'); // cool button, plan hdr
			Rounded('iFtr','div','bottom','transparent','#BF9A46'); // cool button, plan hdr
			Rounded('infoBoxCorners','div','all','transparent','#FFF','border #D6BB85'); // secondary content info boxes
		}
	}
	if (getCurrSite()=='DelWebb') {
		Rounded('summaryCorners','div','all','transparent','#E6F0FB','border #739BCC'); // community summary
		Rounded('cHdr','div','top','transparent','#0E4073','border #0B3D70'); // cool button, community hdr
		Rounded('cFtr','div','bottom','transparent','#5B85B7','border #0B3D70'); // cool button, community ftr
		Rounded('alertHdr','div','top','transparent','#86270b'); // alert bar
		Rounded('alertFtr','div','bottom','transparent','#993416'); // alert bar
		Rounded('subfooter','div','all','transparent','#FFF'); // footer
		Rounded('srCorners','td','top','transparent','#7199CA'); // search results module
		Rounded('navModule','div','top','transparent','#CBD24C'); // search results navigation module(s)
		Rounded('contactUsCorners','div','all','transparent','#E6F0FB'); // contact us
		Rounded('cuFormCorners','form','all','transparent','#FFF','border #CBD24C'); // contact us form
		Rounded('cuInfoCorners','div','all','transparent','#FFF','border #739BCC'); // contact us infoboxes
		Rounded('cuThankYouCorners','div','all','transparent','#FFF','border #CBD24C'); // contact us thank you
		Rounded('tfFormCorners','form','all','transparent','#FFF','border #739BCC'); // tell a friend form
		Rounded('myNotebookCorners','div','all','transparent','#E6F0FB'); // my notebook
		Rounded('sharePanelCorners','div','all','transparent','#E6F0FB'); // my notebook share panel
		Rounded('comparePanelCorners','div','all','transparent','#E6F0FB'); // my notebook compare panel
		Rounded('hdrBar','div','all','transparent','#E6F0FB'); // my notebook header bars
		Rounded('messageArea','div','all','transparent','#993416'); // my notebook ask to register
		Rounded('signInCorners','div','all','transparent','#E6F0FB'); // my notebook sign in
		Rounded('driveDirectionsCorners','div','all','transparent','#E6F0FB'); // my notebook driving directions
		Rounded('registerPanelCorners','div','all','transparent','#E6F0FB'); // my notebook register in
		Rounded('errorMessageArea','div','all','transparent','#993416'); // my notebook error messages
		Rounded('nbInfoBoxCorners','div','all','transparent','#FFF','border #739BCC'); // my notebook content corners

		if (YUD.hasClass('delWebb','template-A')){ // grid A
			Rounded('overlayCorners','div','all','transparent','#FFF','border #AFB720'); // map overlay
		}

		if (YUD.hasClass('delWebb','template-D')){ // grid D
			Rounded('contentWrapper','div','top','transparent','#FFF'); // content top
			Rounded('primaryContentCorners','div','all','transparent','#FFF','border #739BCC'); // primary content
			Rounded('pHdr','div','top','transparent','#0E4073','border #0B3D70'); // cool button, plan hdr
			Rounded('pFtr','div','bottom','transparent','#5B85B7','border #0B3D70'); // cool button, plan fdr
			Rounded('infoBoxCorners','div','all','transparent','#FFF','border #E6F0FB'); // content info boxes
			Rounded('contentWrapper','div','bottom','transparent','#E7F1FB'); // content bottom
		}
		if (YUD.hasClass('delWebb','template-E')){ // grid E
			Rounded('contentWrapper','div','top','transparent','#FFF'); // content top
			Rounded('planFuzzyWrapper','div','all','transparent','#FFF'); // primary content plan
			Rounded('pHdr','div','top','transparent','#CAD14B','border #AFB720'); // cool button, plan hdr
			Rounded('pFtr','div','bottom','transparent','#AFB720','border #AFB720'); // cool button, plan hdr
			Rounded('infoBoxCorners','div','all','transparent','#FFF','border #CBD24C'); // content info boxes
			Rounded('selectedPlanCorners','div','top','transparent','#FFF','border #CBD24C'); // selected plan box
			Rounded('selectedPlanCorners','div','bottom','transparent','#F9F9ED','border #CBD24C'); // selected plan box
			Rounded('contentWrapper','div','bottom','transparent','#E7F1FB'); // content bottom
		}
		if (YUD.hasClass('delWebb','template-F')){ // grid F
			Rounded('overlayWrapper','div','all','transparent','#FFF'); // map overlay
		}
		if (YUD.hasClass('delWebb','template-A')||YUD.hasClass('delWebb','template-F')||YUD.hasClass('delWebb','template-G')||YUD.hasClass('delWebb','template-H')||YUD.hasClass('delWebb','template-I')||YUD.hasClass('delWebb','template-L')){ // grid A,F,G,H,I,L
			Rounded('contentWrapper','div','all','transparent','#FFF'); // content
		}
		if (YUD.hasClass('delWebb','template-H')){ // grid H
			Rounded('csTopCorners','td','top','transparent','#0D3F72','border #0D3F72'); // FAQs
			Rounded('csBottomCorners','td','bottom','transparent','#FFF','border #C1D3E8'); // FAQs
			Rounded('glossaryCorners','div','all','transparent','#FFF','border #739BCC'); // glossary
		}
		if (YUD.hasClass('delWebb','template-I') || YUD.hasClass('delWebb','template-G') || YUD.hasClass('delWebb','template-L')){ // grid I & G & L
			Rounded('iHdr','div','top','transparent','#CBD24C','border #AFB720'); // cool button, plan hdr
			Rounded('iFtr','div','bottom','transparent','#AFB720','border #AFB720'); // cool button, plan hdr
			Rounded('infoBoxCorners','div','all','transparent','#FFF','border #CBD24C'); // secondary content info boxes
		}
	}
	if (getCurrSite()=='DiVosta') {
		Rounded('summaryCorners','div','all','transparent','','border #CEDEBB'); // community summary
		Rounded('cHdr','div','top','transparent','#C4D3B3','border #CCDCB9'); // cool button, community hdr
		Rounded('cFtr','div','bottom','transparent','#95AF83','border #CCDCB9'); // cool button, community ftr
		Rounded('alertHdr','div','top','transparent','#72250C'); // alert bar
		Rounded('alertFtr','div','bottom','transparent','#8F371B'); // alert bar
		Rounded('srCorners','td','top','transparent','#CDDDBB'); // search results module
		Rounded('navModule','div','top','transparent','#9EC7E6'); // search results navigation module(s)
		Rounded('contactUsCorners','div','all','transparent','#E8F2F9'); // contact us
		Rounded('cuFormCorners','form','all','transparent','#FFF','border #CEDEBB'); // contact us form
		Rounded('cuInfoCorners','div','all','transparent','#FFF','border #9EC7E6'); // contact us infoboxes
		Rounded('cuThankYouCorners','div','all','transparent','#FFF','border #CEDEBB'); // contact us thank you
		Rounded('tfFormCorners','form','all','transparent','#FFF','border #94AE82'); // tell a friend form
		Rounded('myNotebookCorners','div','all','transparent','#E8F2F9'); // my notebook
		Rounded('sharePanelCorners','div','all','transparent','#E8F2F9'); // my notebook share panel
		Rounded('comparePanelCorners','div','all','transparent','#E8F2F9'); // my notebook compare panel
		Rounded('hdrBar','div','all','transparent','#CEDEBB'); // my notebook header bars
		Rounded('messageArea','div','all','transparent','#90381C'); // my notebook ask to register
		Rounded('signInCorners','div','all','transparent','#E8F2F9'); // my notebook sign in
		Rounded('driveDirectionsCorners','div','all','transparent','#E8F2F9'); // my notebook driving directions
		Rounded('registerPanelCorners','div','all','transparent','#E8F2F9'); // my notebook register in
		Rounded('errorMessageArea','div','all','transparent','#90381C'); // my notebook error messages

		if (YUD.hasClass('diVosta','template-A')){ // grid A
			Rounded('contentWrapper','div','all','transparent','#FFF'); // homepage content
		}
		if (YUD.hasClass('diVosta','template-D')){ // grid D
			Rounded('contentWrapper','div','top','transparent','#FFF'); // content top
			Rounded('primaryContentCorners','div','all','transparent','#FFF','border #DFE5D7'); // primary content
			Rounded('pHdr','div','top','transparent','#C4D3B3','border #CCDCB9'); // cool button, plan hdr
			Rounded('pFtr','div','bottom','transparent','#95AF83','border #CCDCB9'); // cool button, plan fdr
			Rounded('infoBoxCorners','div','all','transparent','#FFF','border #CEDEBB'); // content info boxes
			Rounded('contentWrapper','div','bottom','transparent','#EFF5E9'); // content bottom

		}
		if (YUD.hasClass('diVosta','template-E')){ // grid E
			Rounded('contentWrapper','div','top','transparent','#FFF'); // content top
			Rounded('planFuzzyWrapper','div','all','transparent','#FFF'); // primary content plan
			Rounded('pHdr','div','top','transparent','#A6CCE8'); // cool button, plan hdr
			Rounded('pFtr','div','bottom','transparent','#68A8DC'); // cool button, plan hdr
			Rounded('infoBoxCorners','div','all','transparent','#FFF','border #9EC7E6'); // content info boxes
			Rounded('selectedPlanCorners','div','top','transparent','#FFF','border #9EC7E6'); // selected plan box
			Rounded('selectedPlanCorners','div','bottom','transparent','#EDF4FA','border #9EC7E6'); // selected plan box
			Rounded('contentWrapper','div','bottom','transparent','#EFF5E9'); // content bottom
		}
		if (YUD.hasClass('diVosta','template-F')){ // grid F
			Rounded('overlayWrapper','div','all','transparent','#FFF'); // map overlay
		}
		if (YUD.hasClass('diVosta','template-F')||YUD.hasClass('diVosta','template-G')||YUD.hasClass('diVosta','template-H')||YUD.hasClass('diVosta','template-I')||YUD.hasClass('diVosta','template-L')){ // grid F,G,H,I,L
			Rounded('contentWrapper','div','all','transparent','#FFF'); // content
		}
		if (YUD.hasClass('diVosta','template-H')){ // grid H
			Rounded('csTopCorners','td','top','transparent','#ABCFE9','border #ABCFE9'); // FAQs
			Rounded('csBottomCorners','td','bottom','transparent','#FFF','border #D9EAF5'); // FAQs
			Rounded('glossaryCorners','div','all','transparent','#FFF','border #9EC7E6'); // glossary
		}
		if (YUD.hasClass('diVosta','template-I') || YUD.hasClass('diVosta','template-G') || YUD.hasClass('diVosta','template-L')){ // grid I & G & L
			Rounded('iHdr','div','top','transparent','#C4D3B3','border #CCDCB9'); // cool button, plan hdr
			Rounded('iFtr','div','bottom','transparent','#95AF83','border #CCDCB9'); // cool button, plan hdr
			Rounded('infoBoxCorners','div','all','transparent','#FFF','border #CEDDBA'); // secondary content info boxes
		}
	}
}
// Pulte
YUE.onDOMReady(function() {roundedCorners()});

// ROUNDED CORNERS (on function call)

var renderSearchResultsModule = function() {
	if (getCurrSite()=='Pulte') {Rounded('td.srCorners','top','transparent','#5A94C2')}
}

/*

Nifty Corners by Alessandro Fulciniti
http://www.html.it/articoli/nifty/index.html

*/

var NiftyCheck = function() {
	if(!document.getElementById || !document.createElement) return false;
	var b=navigator.userAgent.toLowerCase();
	if(b.indexOf('msie 5')>0 && b.indexOf('opera')==-1) return false;
	return true;
}

var Rounded = function(classname,tag,wich,bk,color,opt){
	var i,prefixt,prefixb,cn='r',ecolor='',edges=false,eclass='',b=false,t=false;

	if(color=='transparent'){
		cn=cn+'x';
		ecolor=bk;
		bk='transparent';
	}

	else if(opt && opt.indexOf('border')>=0){
		var optar=opt.split(' ');
		for(i=0;i<optar.length;i++)
		if(optar[i].indexOf('#')>=0) ecolor=optar[i];
		if(ecolor=='') ecolor='#666';
		cn+='e';
		edges=true;
	}

	else if(opt && opt.indexOf('smooth')>=0){
		cn+='a';
		ecolor=Mix(bk,color);
	}

	if(opt && opt.indexOf('small')>=0) cn+='s';
	prefixt=cn;
	prefixb=cn;

	if(wich.indexOf('all')>=0){t=true;b=true}
	else if(wich.indexOf('top')>=0) t='true';
	else if(wich.indexOf('tl')>=0){
		t='true';
		if(wich.indexOf('tr')<0) prefixt+='l';
	}
	else if(wich.indexOf('tr')>=0){
		t='true';
		prefixt+='r';
	}

	if(wich.indexOf('bottom')>=0) b=true;
	else if(wich.indexOf('bl')>=0){
		b='true';
		if(wich.indexOf('br')<0) prefixb+='l';
	}
	else if(wich.indexOf('br')>=0){
		b='true';
		prefixb+='r';
	}

	// LoL replaced custom search-by-selector function with YAHOO call
	var v=YUD.getElementsByClassName(classname, tag);
	var l=v.length;
	for(i=0;i<l;i++){
		if(edges) AddBorder(v[i],ecolor);
		if(t) AddTop(v[i],bk,color,ecolor,prefixt);
		if(b) AddBottom(v[i],bk,color,ecolor,prefixb);
	}
}

var AddBorder = function(el,bc) {
	var i;
	if(!el.passed){
		if(el.childNodes.length==1 && el.childNodes[0].nodeType==3){
			var t=el.firstChild.nodeValue;
			el.removeChild(el.lastChild);
			var d=CreateEl('span');

			d.style.display='block';
			d.appendChild(document.createTextNode(t));
			el.appendChild(d);
		}
		for(i=0;i<el.childNodes.length;i++){
			if(el.childNodes[i].nodeType==1){
				el.childNodes[i].style.borderLeft='1px solid '+bc;
				el.childNodes[i].style.borderRight='1px solid '+bc;
			}
		}
    }
	el.passed=true;
}

function AddTop(el,bk,color,bc,cn){
	var i,lim=4,d=CreateEl('b');

	if(cn.indexOf('s')>=0) lim=2;
	if(bc) d.className='artop';
	else d.className='rtop';
	d.style.backgroundColor=bk;
	for(i=1;i<=lim;i++){
		var x=CreateEl('b');
		x.className=cn + i;
		x.style.backgroundColor=color;
		if(bc) x.style.borderColor=bc;
		d.appendChild(x);
		}
	el.style.paddingTop=0;
	el.insertBefore(d,el.firstChild);
	}

	function AddBottom(el,bk,color,bc,cn){
	var i,lim=4,d=CreateEl('b');

	if(cn.indexOf('s')>=0) lim=2;
	if(bc) d.className='artop';
	else d.className='rtop';
	d.style.backgroundColor=bk;
	for(i=lim;i>0;i--){
		var x=CreateEl('b');
		x.className=cn + i;
		x.style.backgroundColor=color;
		if(bc) x.style.borderColor=bc;
		d.appendChild(x);
		}
	el.style.paddingBottom=0;
	el.appendChild(d);
}

var CreateEl = function(x) {return(document.createElement(x))}

var Mix = function(c1,c2) {
	var i,step1,step2,x,y,r=new Array(3);
	if(c1.length==4)step1=1;
	else step1=2;
	if(c2.length==4) step2=1;
	else step2=2;
	for(i=0;i<3;i++){
		x=parseInt(c1.substr(1+step1*i,step1),16);
		if(step1==1) x=16*x+x;
		y=parseInt(c2.substr(1+step2*i,step2),16);
		if(step2==1) y=16*y+y;
		r[i]=Math.floor((x*50+y*50)/100);
		}
	return('#'+r[0].toString(16)+r[1].toString(16)+r[2].toString(16));
}

// ----------------------------------------------------------------------------------------------

// COPYRIGHT DATE
var getCurrYear = function() {
	var crYear = new Date().getYear();
	if (crYear < 2000) crYear = crYear + 1900; /* moz */
	document.write(crYear);
}

// ----------------------------------------------------------------------------------------------

// CUSTOM SHOW/HIDE

var customShowHide = function () {
	var theObject = YUD.getElementsByClassName('toggle');
	for (i=0; i < theObject.length; i++) {handleDropDown(theObject[i])}
}

var handleDropDown = function(theObject) {
	var theTrigger = YUD.getElementsByClassName('toggleTrigger','',theObject)[0];
	YUE.addListener(theTrigger,'click',function(){
		var theTarget = YUD.getElementsByClassName('toggleTarget','',theObject)[0];
		if (YUD.hasClass(theTarget,'hide')){
			YUD.replaceClass(theTarget,'hide','show');
			if (theTrigger.getElementsByTagName('img')[0]) {
				var newTarget = theTrigger.getElementsByTagName('img')[0];
				var newSrc = newTarget.src.replace('plus','minus');
				newTarget.setAttribute('src',newSrc);
			}
		}
		else {
			YUD.replaceClass(theTarget,'show','hide');
			if (theTrigger.getElementsByTagName('img')[0]) {
				var newTarget = theTrigger.getElementsByTagName('img')[0];
				var newSrc = newTarget.src.replace('minus','plus');
				newTarget.setAttribute('src',newSrc);
			}
		}
	});
}

YUE.onDOMReady(function() {customShowHide()});

// ----------------------------------------------------------------------------------------------

///* VALUE HIGHLIGHTS (TOOLTIPS) */
//
//YUE.onDOMReady(function() {
//	if (YUD.hasClass(document.body,'template-D')||YUD.hasClass(document.body,'template-E')) {
//		var idArray = []; // array of tooltip IDs, which provides the 'context' for the reusable tooltip
//		var valueHilight = function(el) {
//			var html = el.innerHTML;
//			// wraps search terms in anchors and spans
//			for (var j=0; j<ttStrings.length; j++){
//				var term = ttStrings[j].term;
//				var title = ttStrings[j].title;
//				var text = ttStrings[j].text;
//				var regex = new RegExp('(' + term + ')','gi');
//				html = html.replace(regex, '<a href="javascript:void(0)" title="<strong>' + title + '<\/strong><br/>' + text + '" class="valueHighlight" id="linkID"><span>$1<\/span><\/a>');
//			}
//			while (html.match('linkID')) {
//				var id = 'valuehilight' + idArray.length;
//				idArray.push(id);
//				html = html.replace('linkID',id);
//			}
//			el.innerHTML = html;
//		}
//		YUD.batch(YUD.getElementsByClassName('communityInfo','div'), function(el) {
//			// add more tag names here, if they should contain highlights as well
//			YUD.batch(el.getElementsByTagName("p"),valueHilight);
//		});
//		YAHOO.namespace('tooltipsContainer').ttId = new YAHOO.widget.Tooltip('ttId',{context:idArray,width:'200px'});
//		createCarousel();
//	}
//});

// ----------------------------------------------------------------------------------------------

// PRINT PAGE
YUE.onDOMReady(function() {
    YUE.addListener(YUD.getElementsByClassName('pt-print','a'),'click',function() {window.print()});
});

// ----------------------------------------------------------------------------------------------

//// HIGHLIGHT TABLE ROWS
//var highlightTableRows = function() {
//	function altEveryOther(parent,childType) {
//		var allChildren = parent.getElementsByTagName(childType);
//		for (var i=0; i < allChildren.length; i+=2) {
//			YUD.addClass(allChildren[i],'alternate');
//		}
//	}
//	// trs alternate within tables, and divs alternate within tds
//	YUD.batch(YUD.getElementsByClassName('srListings','tbody'),altEveryOther,'tr');
//	YUD.batch(YUD.getElementsByClassName('srListings','td'),altEveryOther,'div');
//}

// ----------------------------------------------------------------------------------------------

// TAB NAVIGATION

YUE.onDOMReady(function() {

	// community info tabs
	if (document.getElementById('primaryTabs')) {
		checkSpecialOffers(); // set "special offers" state
		checkHomesAvailable(); // set "homes available" state
		var tabView = new YAHOO.widget.TabView('primaryTabs');
		var onloadTarget = tabView.getElementsByClassName('yui-nav')[0].getElementsByTagName('LI');
		var target = tabView.getElementsByClassName('yui-nav')[0].getElementsByTagName('IMG');
		onloadTabs(onloadTarget,'jpgTabs');
		clickTabs(target,'.jpg','-on.jpg');
	}

	// amenities tertiary tabs
	if (document.getElementById('amenitiesTabs')) {
		var tabViewAmenities = new YAHOO.widget.TabView('amenitiesTabs');
		var onloadTarget = tabViewAmenities.getElementsByClassName('yui-nav')[0].getElementsByTagName('LI');
		var target = tabViewAmenities.getElementsByClassName('yui-nav')[0].getElementsByTagName('IMG');
	}

	// about the area tertiary tabs
	if (document.getElementById('aboutAreaTabs')) {
		var tabViewAboutArea = new YAHOO.widget.TabView('aboutAreaTabs');
		var onloadTarget = tabViewAboutArea.getElementsByClassName('yui-nav')[0].getElementsByTagName('LI');
		var target = tabViewAboutArea.getElementsByClassName('yui-nav')[0].getElementsByTagName('IMG');
	}

	// interactive tour tertiary tabs
	if (document.getElementById('interactiveTourTabs')) {
		var tabViewInteractiveTour = new YAHOO.widget.TabView('interactiveTourTabs');
		var onloadTarget = tabViewInteractiveTour.getElementsByClassName('yui-nav')[0].getElementsByTagName('LI');
		var target = tabViewInteractiveTour.getElementsByClassName('yui-nav')[0].getElementsByTagName('IMG');
	}

	// multi unit plans
	if (document.getElementById('multiUnitPlans')) {
		var planTabView = new YAHOO.widget.TabView('multiUnitPlans');
		var onloadTarget = planTabView.getElementsByClassName('yui-nav')[0].getElementsByTagName('LI');
		var target = planTabView.getElementsByClassName('yui-nav')[0].getElementsByTagName('IMG');
		onloadTabs(onloadTarget,'planTabs');
		clickTabs(target,'.gif','on.gif');
	}

	// masterpage tabs
	if (document.getElementById('masterPageTab')) {
		var tabViewMasterpages = new YAHOO.widget.TabView('masterPageTab');
	}

});

// onload tab images
var onloadTabs = function(target,selectedArea) {
	if (selectedArea == 'jpgTabs') {
		for (var x=0; x < target.length; x++) {
			if (target[x].className=='selected') {
				var newTarget = target[x].getElementsByTagName('img')[0];
				var newSrc = newTarget.src.replace('.jpg','-on.jpg');
				newTarget.setAttribute('src',newSrc);
			}
		}
	} else if (selectedArea == 'planTabs') {
		for (var x=0; x<target.length; x++) {
			if (target[x].className=='selected') {
				var newTarget = target[x].getElementsByTagName('img')[0];
				var newSrc = newTarget.src.replace('.gif','on.gif');
				newTarget.setAttribute('src',newSrc);
			}
		}
	}
}

// on click tab images
var clickTabs = function(clickTarget,extType,onStyle) {
	for (var i=0; i < clickTarget.length; i++) {
		YUE.addListener(clickTarget[i],'click',function(e) {
			var target = YUE.getTarget(e);
			for (var j=0; j<clickTarget.length; j++) {
				if (clickTarget[j].src.indexOf(onStyle)!=-1) {
					var newSrc = clickTarget[j].src.replace(onStyle,extType);
					clickTarget[j].setAttribute('src',newSrc);
				}
			}

			if (target.src.indexOf(onStyle)==-1) {
				var newSrc = target.src.replace(extType,onStyle);
				target.setAttribute('src',newSrc);
			}

		});
	}
}

// switch tabs
var switchTab = function(tabSetId,tabNum) {

	if (document.getElementById(tabSetId)) {

		var tabObj = document.getElementById(tabSetId);
		var theList = YUD.getElementsByClassName('yui-nav','',tabObj)[0];
		var theTargets = theList.getElementsByTagName('LI');

		for (var i=0; i < theTargets.length; i++) {
			YUD.removeClass(theTargets[i],'selected')
		}
		theTargets[tabNum].className='selected';
		//theTargets[tabNum].firstChild.click();
	}
}

// render 'special offers' tab state
var checkSpecialOffers = function() {
	if (document.getElementById('communityPromotionType')) {
		var trigger = document.getElementById('communityPromotionType');
		var tabObj = document.getElementById('primaryTabs');
		var theList = YUD.getElementsByClassName('yui-nav','',tabObj)[0];
		var theTargets = theList.getElementsByTagName('LI');
		if (trigger.getAttribute('value')==2) {switchTab('primaryTabs',4)}
		else if (trigger.getAttribute('value')==0) {theTargets[4].className='hide'}
		else {} // do nothing
	}
}

// render 'homes available' tab state
var checkHomesAvailable = function() {
	if (document.getElementById('homesAvailableNowFlag')) {
		var trigger = document.getElementById('homesAvailableNowFlag');
		var tabObj = document.getElementById('primaryTabs');
		var theList = YUD.getElementsByClassName('yui-nav','',tabObj)[0];
		var theTargets = theList.getElementsByTagName('LI');
		if (trigger.getAttribute('value')==0) {theTargets[3].className='hide'}
	}
}

// ----------------------------------------------------------------------------------------------

// MODAL DIALOG BACKGROUND

var modalBackdrop = new (function() {
	var backdrop = document.createElement('div');
	var shown = false;
	backdrop.id = 'modalDialog';

	this.show = function() {
		shown = true;
		YUD.setStyle(backdrop,'display','block');
	};
	this.hide = function() {
		shown = false;
		YUD.setStyle(backdrop,'display','none');
	}
	this.toggle = function() {
		(shown ? this.hide : this.show).call();
	}

	YUE.addListener(window,'load',function() {
		document.body.appendChild(backdrop);
		var resize = function() {
			YUD.setStyle(backdrop,'height', Math.max(YUD.getViewportHeight()+400, document.body.scrollHeight) + 'px');
			YUD.setStyle(backdrop,'width', Math.max(YUD.getViewportWidth(), document.body.scrollWidth) + 'px');
		};
		YAHOO.widget.Overlay.windowResizeEvent.subscribe(resize);
		resize();
	});

	this.hide();
})();

// ----------------------------------------------------------------------------------------------


// ----------------------------------------------------------------------------------------------


// ----------------------------------------------------------------------------------------------

// POP-UP WINDOWS

var popWindow = function(type,url,title,height,width,bgcolor) {

	if (type == 'flash') {

		var newWindow = window.open('','','height=' + height + ',width=' + width + ',toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=no,resizable=no');
		newWindow.document.open();

		// JS redirect
		var popWindowQS = 'title='+title+'&fileURL='+url+'&bgcolor='+bgcolor;

		// alert(popWindowQS);
		newWindow.location = '../templates/template-popUp.html?'+popWindowQS;
	}

	if (type == 'alphavision') {
		var newWindow = window.open(url,'','height=' + height + ',width=' + width + ',toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=no,resizable=no');
	}

	if (type == 'image') {
		var newWindow = window.open('','','height=' + height + ',width=' + width + ',toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=no,resizable=no');
		newWindow.document.open();
		newWindow.document.write('<html><head><title>' + title + '</title></head>');
		newWindow.document.write('<body style="margin:0;padding:0;"><center>');
		newWindow.document.write('<img src="' + url + '" alt="' + title + '">');
		newWindow.document.write('</center></body></html>');
		newWindow.document.close();
	}

    if(type == 'regular') {
		window.open(url,title,'height=' + height + ',width=' + width + ',toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=yes,resizable=yes');
	}
}

// optionally pass a querystring to parse
var Querystring = function(qs) {
	this.params = new Object()
	this.get=Querystring_get

	if (qs == null)
		qs=location.search.substring(1,location.search.length)

	if (qs.length == 0) return

	qs = qs.replace(/\+/g, ' ')
	var args = qs.split('&') // parse out name/value pairs separated via &

	for (var i=0;i<args.length;i++) {
		var value;
		var pair = args[i].split('=')
		var name = unescape(pair[0])

		if (pair.length == 2)
			value = unescape(pair[1])
		else
			value = name

		this.params[name] = value
	}
}

var Querystring_get = function(key, default_) {
	// This silly looking line changes UNDEFINED to NULL
	if (default_ == null) default_ = null;

	var value=this.params[key]
	if (value==null) value=default_;

	return value
}

// ----------------------------------------------------------------------------------------------

