window.addEvent('domready', function(){
	$('province_id').value = '';

	$('city_id').value = '';

	$('d_id').value = '';
	
	$('province_id').addEvent('change', function(e){
		loadCities();		
	});
	$('city_id').addEvent('change', function(e){
		loadDealers();
	});
	$('form_submit').addEvent('click', function(e){
		e.stop();
		document.body.style.cursor = 'wait';
		var param_request = new Request.JSON({
			url: '/inventory/set_params',
			onSuccess: function(resp){
				document.body.style.cursor = 'default';
				if(resp.error != 1){
					location.href = '/inventory/search_results';
				}
			}
		}).post($('search_form'));
	});
	
	$$('.models_chk').addEvent('click',function(e){
		var model_checked = isModelChecked();
		$('all_models').checked = !model_checked;
	});
	$$('.img_chk').addEvent('click', function(e){
		var el_id = this.id.split('_');
		$('chk_'+el_id[1]).checked = !$('chk_'+el_id[1]).checked;
		var model_checked = isModelChecked();
		$('all_models').checked = !model_checked;
	});
	$('all_models').addEvent('click', function(e){
		if(this.checked == true){
			$$('.models_chk').each(function(el,i){
				el.checked = false;
			});
		}else{
			var model_checked = isModelChecked();
			this.checked = !model_checked;
		}
	});
	$$('.years_chk').addEvent('click',function(e){
		var year_checked = isYearChecked();
		if(year_checked){
			$('all_years').checked = false;
		}
	});
	$('all_years').addEvent('click', function(e){
		if(this.checked == true){
			$$('.years_chk').each(function(el,i){
				el.checked = false;
			});
		}else{
			var year_checked = isYearChecked();
			this.checked = !year_checked;
		}
	});
});

function isModelChecked(){
	var model_checked = false;
	$$('.models_chk').each(function(el,i){
		if(el.checked == true){
			model_checked = true;
		}
	});
	return model_checked;
}

function isYearChecked(){
	var year_checked = false;
	$$('.years_chk').each(function(el,i){
		if(el.checked == true){
			year_checked = true;
		}
	});
	return year_checked;
}

function loadCities(){
	$('city_id').selectedIndex = 0;
	$('city_id').length = 1;
	var city_request = new Request.JSON({
		url: '/inventory/cities-json',
		onSuccess: function(cities){
			cities.each(function(ct,i){
				$('city_id').options[i + 1] = new Option(ct.city_name, ct.city_id);
			});
			//loadDealers();
		}
	}).get({
		province_id: $('province_id').value
	});
}

function loadDealers(){
	$('d_id').selectedIndex = 0;
	$('d_id').length = 1;
	var dealer_request = new Request.JSON({
		url: '/inventory/dealers-json',
		onSuccess: function(dealers){
			dealers.each(function(dl,i){
				$('d_id').options[i + 1] = new Option(dl.name, dl.d_id);
			});
		}
	}).get({
		province_id: $('province_id').value,
		city_id: $('city_id').value
	});
}
function encode_utf8(s){
  return encodeURIComponent( s ) ;
  //return decodeURIComponent( escape( s ) );
}
function encode(s){
	for(var c, i = -1, l = (s = s.split("")).length, o = String.fromCharCode; ++i < l;
		s[i] = (c = s[i].charCodeAt(0)) >= 127 ? o(0xc0 | (c >>> 6)) + o(0x80 | (c & 0x3f)) : s[i]
	);
	return s.join("");
}
function decode(s){
	for(var a, b, i = -1, l = (s = s.split("")).length, o = String.fromCharCode, c = "charCodeAt"; ++i < l;
		((a = s[i][c](0)) & 0x80) &&
		(s[i] = (a & 0xfc) == 0xc0 && ((b = s[i + 1][c](0)) & 0xc0) == 0x80 ?
		o(((a & 0x03) << 6) + (b & 0x3f)) : o(128), s[++i] = "")
	);
	return s.join("");
}

