//Hank's Helper Advanced Options JS
//Copyright Nathan Stretch
var numbodies = 0;

function validate()
{
	/*Set SITE info*/
	site2 = document.getElementById('site2');
	site = document.getElementById('site');
	oldsite = site.selectedIndex;
	site.selectedIndex = site2.selectedIndex;
	setcookie60('site', site2.value);
	
	var flag = 0;
	if (site.value=='custom') {
		var hid_site;
		for (var i=0; i<siteboxes_all.length; i++)
		{
			hid_site = document.getElementById('hid_site_'+siteboxes_all[i]);
			if (document.getElementById(siteboxes_all[i]).checked) {
				if (hid_site.value == 0) {
					hid_site.value = 1;
					flag = 1;
				}
			} else {
				if (hid_site.value != 0) {
					hid_site.value = 0;
					flag = 1;
				}
			}
			setcookie60('hid_site_'+siteboxes_all[i], hid_site.value);
		}
	}
	
	if (oldsite.selectedIndex != site.selectedIndex || flag == 1) loadmodels('sitechanged');  // if sites selected have changed, load models list

	//save transmission
	var trans = document.getElementById('hid_trans');
	if(document.getElementById('trans_manual').checked) {
		trans.value = 'man';
	} else if (document.getElementById('trans_auto').checked) {
		trans.value = 'auto';
	} else {
		trans.value = 'any';
	}
	
	//save saleby
	var saleby = document.getElementById('hid_saleby');
	if(document.getElementById('saleby_dealer').checked) {
		saleby.value = 'dealer';
	} else if (document.getElementById('saleby_private').checked) {
		saleby.value = 'private';
	} else {
		saleby.value = 'any';
	}
	
	//save whereOpen
	var whereOpen = document.getElementById('hid_whereOpen');
	if(document.getElementById('whereOpenHanks').checked) {
		whereOpen.value = 'hanks';
	} else {
		whereOpen.value = 'win';
	}
	
	//save reuse
	var reuse = document.getElementById('hid_reuse');
	if(document.getElementById('reuse').checked) {
		reuse.value = 1;
	} else {
		reuse.value = 0;
	}
	
	//save bodystyle
	var bodies = '';
	for (var i=0; i<bodystyles.length; i++)
	{
		if (document.getElementById('bodystyle_'+bodystyles[i]).checked) {
			bodies+=bodystyles[i]+',';
		}
	}
	document.getElementById('hid_body').value = bodies;

	var prefbody = document.getElementById('prefbody');
	document.getElementById('hid_prefbody').value = prefbody.value;
	
	setcookie60('hid_trans', trans.value);
	setcookie60('hid_saleby', saleby.value);
	setcookie60('hid_body', bodies);
	setcookie60('hid_prefbody', prefbody.value);
	setcookie60('hid_whereOpen', whereOpen.value);
	setcookie60('hid_reuse', reuse.value);
	
	hideModal();
}

function switchtab(tabnum){
	MT.clear(MT.tabs);
	MT.makeActive(tabnum);
}

function select_sites(sel, check) {

	document.getElementById('linksbelow').style.display='none';
	switch(sel) {
		case 'all':
			document.getElementById('site_large').checked=document.getElementById('site_mash').checked=document.getElementById('site_niche').checked=check;
		break;
		case 'rec':
		case 'ebcl':
			document.getElementById('site_large').checked=document.getElementById('site_mash').checked=document.getElementById('site_niche').checked='';
			for(var i=0;i<siteboxes_all.length;i++)
			{
				document.getElementById(siteboxes_all[i]).checked='';
			}
		break;
		case 'large':
		case 'mash':
		case 'niche':
			check_custom();
		break;
	}

	if (sel != 'custom') {
		var boxes=eval('siteboxes_'+sel);
		for(var i=0;i<boxes.length;i++)
		{
			document.getElementById(boxes[i]).checked=check;
		}
	} else {
		document.getElementById('linksbelow').style.display='block';
	}
}

	
function check_custom()
{
	if(document.getElementById('site_large').checked && document.getElementById('site_mash').checked && document.getElementById('site_niche').checked) {
		document.getElementById('site2').selectedIndex=0;
		document.getElementById('linksbelow').style.display='none';
	} else {
		document.getElementById('site2').selectedIndex=3;
		document.getElementById('linksbelow').style.display='block';
	}
}
	
	
//determines which of the metaboxes to check or uncheck when an individual box is changed
function site_checked(type) 
{
	check='checked';
	var boxes = eval('siteboxes_'+type);
	for(var j=0;j<boxes.length;j++)
	{
		if(!document.getElementById(boxes[j]).checked) check='';
	}
	document.getElementById('site_'+type).checked=check;
	check_custom();
}

//sets body checkboxes appropriately
function bodychange(whichbody)
{
	if (whichbody == 'any') {
		numbodies=0;
		if (document.getElementById('bodystyle_any').checked) {
			for (var i=0; i<bodystyles.length; i++)
			{
				document.getElementById('bodystyle_'+bodystyles[i]).checked='';
			}
		} else {
			document.getElementById('bodystyle_any').checked='checked'; //can't uncheck any without checking something else
		}
		document.getElementById('prefbody').selectedIndex=0;
	} else {
		if(document.getElementById('bodystyle_'+whichbody).checked) {
			numbodies++;
			document.getElementById('bodystyle_any').checked = '';
		} else {
			numbodies--;
		}
		
		if(numbodies == 1) {
			var flag=0;
			for (var i=0; i<bodystyles.length; i++)
			{
				var box = document.getElementById('bodystyle_'+bodystyles[i]);
				if (box.checked) {
					document.getElementById('prefbody').value = bodystyles[i];
					flag=1;
					break;
				}
			}
			if (flag == 0) prefbody.selectedIndex=0; //this should never fire, since numbodies=1, but just in case.
		} else if (numbodies == 0) {
			document.getElementById('bodystyle_any').checked = 'checked';
			document.getElementById('prefbody').selectedIndex=0;
		}
	}
}

function prefbodychange(whichbody)
{
	if (whichbody != 'any' && document.getElementById('bodystyle_'+whichbody) && document.getElementById('bodystyle_'+whichbody).checked == '') {
		document.getElementById('bodystyle_'+whichbody).checked='checked';
		document.getElementById('bodystyle_any').checked='';
		numbodies++;
	}
}

function showModal()
{

	if (!MyTabs) {
		ActivateTabs('tabz');
	}

	var divTag = document.getElementById("floatingdiv");
	var iFrameTag = document.getElementById("selectblocker");
	var tableTag = document.getElementById("modalContents");
	divTag.style.left='100px';
	divTag.style.top='100px';
	divTag.style.width='600px';
	divTag.style.height='430px';
	iFrameTag.style.left = '0px';
	iFrameTag.style.top = '0px';
	iFrameTag.style.width = divTag.style.width;
	iFrameTag.style.height = divTag.style.height;
	iFrameTag.style.zIndex = divTag.style.zIndex-1;

	tableTag.style.left = '0px';
	tableTag.style.top = '0px';
	tableTag.style.width = divTag.style.width;
	tableTag.style.height = divTag.style.height;
	tableTag.style.zIndex = divTag.style.zIndex;
	divTag.style.display = "block";
	
	initModal();

}

function initModal()
{
	site = document.getElementById('site');

	if (site.value == 'all') {
		for (var i=0; i<siteboxes_all.length; i++)
		{
			document.getElementById(siteboxes_all[i]).checked='checked';
		}
	} else {
		for (var i=0; i<siteboxes_all.length; i++)
		{
			document.getElementById(siteboxes_all[i]).checked='';
		}
		if (site.value == 'rec') {
			for (var i=0; i<siteboxes_rec.length; i++)
			{
				document.getElementById(siteboxes_rec[i]).checked='checked';
			}
		} else if (site.value == 'ebcl') {
			for (var i=0; i<siteboxes_ebcl.length; i++)
			{
				document.getElementById(siteboxes_ebcl[i]).checked='checked';
			}
		} else {
			for (var i=0; i<siteboxes_all.length; i++)
			{
				if (document.getElementById('hid_site_'+siteboxes_all[i]).value != 0) {
					document.getElementById(siteboxes_all[i]).checked='checked';
				} else {
					document.getElementById(siteboxes_all[i]).checked='';
				}
			}
			document.getElementById('linksbelow').style.display='block';
		}
	}
	site_checked('large');
	site_checked('mash');
	site_checked('niche');

	document.getElementById('site2').selectedIndex = site.selectedIndex;
	
	//transmission
	var trans = document.getElementById('hid_trans').value;
	switch (trans) {
		case 'man':
			document.getElementById('trans_manual').checked='checked';
			break;
		case 'auto':
			document.getElementById('trans_auto').checked='checked';
			break;
		default:
			document.getElementById('trans_any').checked='checked';
			break;
	}

	//saleby
	var saleby = document.getElementById('hid_saleby').value;
	switch (saleby) {
		case 'dealer':
			document.getElementById('saleby_dealer').checked='checked';
			break;
		case 'private':
			document.getElementById('saleby_private').checked='checked';
			break;
		default:
			document.getElementById('saleby_any').checked='checked';
			break;
	}

	//body style
	var bodystyle = document.getElementById('hid_body').value;
	var bodies = new Array();
	bodies = bodystyle.split(',');
	numbodies = bodies.length-1; //-1 because of trailing comma, and because empty string counts as 1 entry
	
	for (var i=0; i<bodystyles.length; i++)
	{
		document.getElementById('bodystyle_'+bodystyles[i]).checked=''; //clear all checkboxes
	}

	var flag=0;
	for (var i=0; i<numbodies; i++)
	{
		if (document.getElementById('bodystyle_'+bodies[i])) {
			flag=1;
			document.getElementById('bodystyle_'+bodies[i]).checked='checked'; //then check the ones specified in the hidden
		}
	}
	
	if (flag == 1) {
		document.getElementById('bodystyle_any').checked='';
	} else {
		document.getElementById('bodystyle_any').checked='checked';
	}
	
	var prefbody = document.getElementById('prefbody');
	prefbody.value = document.getElementById('hid_prefbody').value;
	
	//HHOps
	var whereOpen = document.getElementById('hid_whereOpen').value;
	switch (whereOpen) {
		case 'hanks':
			document.getElementById('whereOpenHanks').checked='checked';
			break;
		default:
			document.getElementById('whereOpenWin').checked='checked';
			break;
	}

	var reuse = document.getElementById('hid_reuse').value;
	if (reuse == 1) {
		document.getElementById('reuse').checked='checked';
	} else {
		document.getElementById('reuse').checked='';
	}

	
	var reuseSlider = new Fx.Slide('reuseSlider',{'duration':300});
	var popSlider = new Fx.Slide('popSlider',{'duration':300});
	if($('whereOpenHanks').checked)
	{
		popSlider.hide();
	} else {
		reuseSlider.hide();
	}

	$$('.whereOpen').addEvent('click',function(){
    if($('whereOpenHanks').checked)
		{
			popSlider.slideOut().chain(function(){reuseSlider.slideIn()});
		}
		else
		{
			reuseSlider.slideOut().chain(function(){popSlider.slideIn()});
		}
	})
}

function hideModal()
{
	var divTag = document.getElementById("floatingdiv");
	divTag.style.display = "none";
}
