var caropt = Array();
var bikeopt = Array();
var boatopt = Array();

var types;
var makes = {};
var styleselected = {};

var lifestyle_selected = {};

var skillselected = {};						

var SkillList = {};

var cur_make = null;
var cur_model = null;

var user_types;
var subtype_selected = {};

GetSkills();


function TypeChange()
{
	var select = document.getElementById('sub_types_select');
	select.options.length = 0;							
	for (var i in types)
	{
		var type = document.getElementById(types[i]['id']);
		if (type.checked == true)
		{
			for (var j in types[i]['sub'])
			{
				var sel = false;
				if (subtype_selected != undefined && subtype_selected[j] != undefined && subtype_selected[j])
				{
				  sel = true;
				}
				select.options[select.options.length] = new Option(types[i]['sub'][j]['title'],types[i]['sub'][j]['id'], false, sel);
				if (selected_subtypes[j] != undefined && selected_subtypes[j] == 1)
				  select.options[select.options.length-1].selected=true;
			}			
		}
	}
	subtypes_loaded = 1;
	SubtypeChange();
}

function SubtypeChange()
{
  var select = document.getElementById('sub_types_select');
  for(var i=0; i < select.options.length; i++)
  {
    if(select.options[i].selected)
    {
      subtype_selected[select.options[i].value] = true;
    }
    else
    {
      subtype_selected[select.options[i].value] = false;
    }
  }
}

function GetTypes(section,car_id)
{
	query = {};
	query['section'] = section;

	if (car_id != null)
	  query['car_id'] = car_id;

	var req = new JsHttpRequest();
	req.onreadystatechange = function()
	{
		if (req.readyState == 4)
		{
			var result = req.responseJS.result;
			var selected_type = req.responseJS.type_id;
			var car_id = req.responseJS.car_id;
			selected_subtypes = req.responseJS.selected_subtypes;

			types = result['0'];

			if (types != undefined)
			{			
				var st = document.getElementById('sub_types_select');
				st.options.length = 0;
				var content = '';
				
				for (var i in types)
				{
					var checked = '';
					if (user_types != undefined && user_types[i])
					{
					  checked='checked';
					}
					content += '<label for="' + types[i]['id'] + '" class="labelRadio compact"><input class="inputRadio" type="checkbox" name="type' + types[i]['id'] + '" id="' + types[i]['id'] + '"  value="' + types[i]['id'] + '" '+checked+' onclick="TypeChange();" /> ' + types[i]['title'] + '</label><br />';
				}
				content += "<br />";
				var t = document.getElementById('types');
				t.innerHTML = content;
				var invis_input = document.getElementById('invis_input');
				invis_input.style.display = "";
				TypeChange();
			}
		}
	}
	req.caching = true;
	req.open('GET', ajax_prefix + "index.php?rm=get_types", false);
	req.send({q:query});
	return;
}


function StyleChange()
{							
	var select = document.getElementById('lifestyle_select');
	for (var i = 0 ; i < select.options.length ; i++)
	{
		if (select.options[i].selected == true)
		{
			styleselected[select.options[i].value] = true;
		}
		else
		{
			styleselected[select.options[i].value] = false;
		}
	}
}

function LifeStyleTypeChange()
{
	StyleChange();
//	var car = document.getElementById('car');
//	var bike = document.getElementById('bike');
	var bike ={'checked':true};
	//var boat = document.getElementById('boat');
	
	var select = document.getElementById('lifestyle_select');
	select.options.length = 0;
/*	if(car.checked)
	{
		GetLifeStyles('car');
		GetMakes('car');
		GetTypes('car');
	}
*/	if(bike.checked)
	{
		GetLifeStyles('bike');
		GetMakes('bike');
		GetTypes('bike');
	}
	/*
	if(boat.checked)
	{
		GetLifeStyles('boat');
		GetMakes('boat');
	}
	*/
}

function fill_lifestyle()
{
//	var car = document.getElementById('car');
//	var bike = document.getElementById('bike');
	//var boat = document.getElementById('boat');
	var bike={'checked':true};
	var select = document.getElementById('lifestyle_select');
	select.options.length = 0;
/*	if (car.checked == true)
	{		
		
		for (var i = 1 ; i < caropt.length; i++)								
		{
			var sel = false;
			for (var k in styleselected)
			{
				if (caropt[i]['id'] == k && styleselected[k] == true)
				{
					sel = true;
					break;
				}
			}
			select.options[select.options.length] = new Option(caropt[i]['title'],caropt[i]['id'], false, sel);
		}
	}
*/								
	if (bike.checked == true)
	{
		for (var i = 1 ; i < bikeopt.length; i++)								
		{
			var sel = false;
			for (var k in styleselected)
			{
				if (bikeopt[i]['id'] == k && styleselected[k] == true)
				{
					sel = true;
					break;
				}
			}
			select.options[select.options.length] = new Option(bikeopt[i]['title'],bikeopt[i]['id'], false, sel);
		}								
	}
	//select.size = select.options.length;
	/*
	if (boat.checked == true)
	{
		for (var i = 1 ; i < boatopt.length; i ++)
		{
			var sel = false;
			for (var k in styleselected)
			{
				if (boatopt[i]['id'] == k && styleselected[k] == true)
				{
					sel = true;
					break;
				}
			}
			select.options[select.options.length] = new Option(boatopt[i]['title'],boatopt[i]['id'], false, sel);
		}
	}
	*/
}

function GetLifeStyles(type)
{
	query = {};
	query['type'] = type;
	
	var req = new JsHttpRequest();							
	req.onreadystatechange = function()
	{			 
		if (req.readyState == 4)
		{
			var result = req.responseJS.result;	         						
			if (result != undefined)
			{
				if (result['0'] == 'car')
				{
					caropt = result;
				}
				else if (result['0'] == 'bike')
				{
					bikeopt = result;											
				}
				else if (result['0'] == 'boat')
				{
					boatopt = result;											
				}
				fill_lifestyle();
			}
		}
	}
	
	req.caching = true;
	
	req.open('GET', ajax_prefix + "index.php?rm=get_life_styles", false);
	req.send({q:query});
	
	return;
}

function GetMakes(section)
{
	query = {};
	query['section'] = section;
	
	var req = new JsHttpRequest();							
	req.onreadystatechange = function()
	{			 
		if (req.readyState == 4)
		{
			var result = req.responseJS.result;
			makes = result['0'];
			
			if (makes != undefined)
			{
				var make = document.getElementById('make');				
				if (make != undefined)
				{
					make.options.length = 0;
					var model = document.getElementById('model');				
					model.options.length = 0;
					make.options[make.options.length] = new Option('Select Model','', false, false);
					for (var i in makes)
					{
						var selec = false;
						if (cur_make != null && cur_make == makes[i]['id'])
							selec = true;
						make.options[make.options.length] = new Option(makes[i]['title'],makes[i]['id'], false, selec);
					}
					if (cur_make != null)	MakeChange();
					//make.size = make.options.length;
				}
			}
     	}
	}									
	req.caching = true;
	req.open('GET', ajax_prefix + "index.php?rm=get_makes", false);
	req.send({q:query});
	return;
}

function MakeChange()		
{
	var select = document.getElementById('model');
	var m = document.getElementById('make');
	select.options.length = 0;
	
	var r = 1;
	for (var i in makes)
	{
						
		if (m.options[r].selected == true)
		{
			select.options[select.options.length] = new Option('Select Models','', false, false);	
			for (var j in makes[i]['sub'])
			{
				var selec = false;
				if (cur_model != null && cur_model == makes[i]['sub'][j]['id'])
					selec = true;
				select.options[select.options.length] = new Option(makes[i]['sub'][j]['title'],makes[i]['sub'][j]['id'], false, selec);	
			}
		}
		r++;
	}
}

function ProcessCountryChange()
{
	
	if($('country').value != 1)
	{
		$('state').selectedIndex = 0;
		$('state').disabled= true;
	}
	else
	{
		$('state').disabled= false;
	}
}


function SkillChange()
{
	var select = document.getElementById('skills_select');
	for (var i = 0 ; i < select.options.length ; i++)
	{		
		if (select.options[i].selected == true)
		{
			//alert('here');
			skillselected[select.options[i].value] = true;
		}
		else
		{
			skillselected[select.options[i].value] = false;
		}	
	}	
}

function SkillTypeChange()
{
	SkillChange();
	var select = document.getElementById('skills_select');
	select.options.length = 0;
	for (var i in SkillList)
	{
		SkillElement = document.getElementById(SkillList[i]['id']);
		if (SkillElement.checked == true)
		{
			for (var j in SkillList[i]['sub'])
			{
				var sel = false;
				for (var k in skillselected)
				{
					
					if (SkillList[i]['sub'][j]['id'] == k && skillselected[k] == true)
					{
						sel = true;
						break;
					}
				}
				select.options[select.options.length] = new Option(SkillList[i]['sub'][j]['title'],SkillList[i]['sub'][j]['id'], false, sel);
			}
		}
	}
}

function GetSkills()
{
	query = {};							
	var req = new JsHttpRequest();							
	req.onreadystatechange = function()
	{
		if (req.readyState == 4)
		{
			var result = req.responseJS.result;
			SkillList = result;
     	} 
	};
	req.caching = false;
	req.open('GET', ajax_prefix + "index.php?rm=get_skills", false);
	req.send({q:query});
	return;
}