(function($){
  // очищаем select
  $.fn.clearSelect = function() {
	  return this.each(function(){
		  if(this.tagName=='SELECT') {
		      this.options.length = 0;
		      //$(this).attr('disabled','disabled');
		  }
	  });
  }
  // заполняем select
  $.fn.fillSelect = function(dataArray) {
	  return this.clearSelect().each(function(){
		  if(this.tagName=='SELECT') {
			  var currentSelect = this;
			  $.each(dataArray,function(index,data){
				  var option = new Option(data.text,data.value);
				  if($.support.cssFloat) {
					  currentSelect.add(option,null);
				  } else {
					  currentSelect.add(option);
				  }
			  });
		  }
	  });
  }
  
  
  
})(jQuery);
// Вытаскиваем AJAXом SELECTы которые выбирает пользователь
$(document).ready(function(){
  // выбор ширины
  function adjustDiskWidth(){
  	var widthValue = $('#mainpodbordiski_width').val();
  	var tmpSelect = $('#mainpodbordiski_radius');
  	if(widthValue.length == 0) {
  		tmpSelect.attr('disabled','disabled');
  		tmpSelect.clearSelect();
  		adjustDiskRadius();
  	} else {
  		$.getJSON('',{width:widthValue},function(data) { 
  	  		tmpSelect.fillSelect(data.content).attr('disabled',''); 
			$('#count').text("Найдено " + data.count + " товаров");
  	  		adjustDiskRadius();
  	  	});
  	}
  };
  // end выбор ширины
  // выбор радиуса
  function adjustDiskRadius(){
  	var widthValue = $('#mainpodbordiski_width').val();
  	var radiusValue = $('#mainpodbordiski_radius').val();
  	var tmpSelect = $('#mainpodbordiski_pcd');
  	if(widthValue.length == 0||radiusValue.length == 0) {
  		tmpSelect.attr('disabled','disabled');
  		tmpSelect.clearSelect();
  		adjustDiskPCD();
  	} else {
  		$.getJSON('',{width:widthValue,radius:radiusValue},function(data) { 
  	  		tmpSelect.fillSelect(data.content).attr('disabled','');
  	  		$('#count').text("Найдено " + data.count + " товаров"); 
  	  		adjustDiskPCD(); 
  	  	});
  	}
  };
  // end выбор радиуса
  
  // выбор PCD диска
  function adjustDiskPCD(){
  	var widthValue = $('#mainpodbordiski_width').val();
  	var radiusValue = $('#mainpodbordiski_radius').val();
  	var pcdValue = $('#mainpodbordiski_pcd').val();
  	var tmpSelect = $('#mainpodbordiski_et');
  	if(widthValue.length == 0||radiusValue.length == 0||pcdValue.length == 0) {
  		tmpSelect.attr('disabled','disabled');
  		tmpSelect.clearSelect();
                adjustDiskET();
  	} else {
  		$.getJSON('',{width:widthValue,radius:radiusValue,pcd:pcdValue},function(data) { 
  	  		tmpSelect.fillSelect(data.content).attr('disabled','');
  	  		$('#count').text("Найдено " + data.count + " товаров");
			adjustDiskET(); 
  	  	});
  	}
  };
  // end выбор PCD диска
  
    // выбор Вылет (ET) диска
  function adjustDiskET(){
  	var widthValue = $('#mainpodbordiski_width').val();
  	var radiusValue = $('#mainpodbordiski_radius').val();
  	var pcdValue = $('#mainpodbordiski_pcd').val();
	var etValue = $('#mainpodbordiski_et').val();
  	var tmpSelect = $('#mainpodbordiski_producer');
  	if(widthValue.length == 0||radiusValue.length == 0||pcdValue.length == 0||etValue.length == 0) {
  		tmpSelect.attr('disabled','disabled');
  		tmpSelect.clearSelect();
  	} else {
  		$.getJSON('',{width:widthValue,radius:radiusValue,pcd:pcdValue,et:etValue},function(data) { 
  	  		tmpSelect.fillSelect(data.content).attr('disabled','');
  	  		$('#count').text("Найдено " + data.count + " товаров"); 
  	  	});
  	}
  };
  // end выбор Вылет (ET) диска
   
  
  $('#mainpodbordiski_width').change(function(){
  	adjustDiskWidth();
  }).change();
  $('#mainpodbordiski_radius').change(adjustDiskRadius);
  $('#mainpodbordiski_pcd').change(adjustDiskPCD);
  $('#mainpodbordiski_et').change(adjustDiskET);
  $('#mainpodbordiski_producer').change(function(){
  	if($(this).val().length != 0) { 
  	  	var widthValue = $('#mainpodbordiski_width').val();
  	  	var radiusValue = $('#mainpodbordiski_radius').val();
  	  	var pcdValue = $('#mainpodbordiski_pcd').val();
  	  	var etValue = $('#mainpodbordiski_et').val();
		var producerValue = $('#mainpodbordiski_producer').val();

                // Получаем URL строку
		//var uri = window.location.pathname.split('/');

  	  	//document.location.href = "/" + uri[1] + "/?width=" + widthValue + "&radius=" + radiusValue + "&pcd=" + pcdValue + "&et=" + etValue + "&producer=" + producerValue;
  	}
  });
  

});

//Если пользователь выбрал уже параметры, отображаем их
var arrGET = get_request();
if(is_array(arrGET)) {
	$(document).ready(function(){
		//var seassonValue = $('#seasson').val();
		//var tmpSelect = $('#width');
		$('#width option[value="' + arrGET["width"] + '"]').attr('selected', 'selected');
		//adjustSeasson();
		$.getJSON('',{width:arrGET["width"]},function(data) { 
			$('#radius').fillSelect(data.content).attr('disabled','');
			$('#radius option[value="' + arrGET["radius"] + '"]').attr('selected', 'selected');
		});
		$.getJSON('',{width:arrGET["width"],radius:arrGET["radius"]},function(data) { 
			$('#pcd').fillSelect(data.content).attr('disabled','');
			$('#pcd option[value="' + arrGET["pcd"] + '"]').attr('selected', 'selected');
		});
		$.getJSON('',{width:arrGET["width"],radius:arrGET["radius"],pcd:arrGET["pcd"]},function(data) { 
			$('#et').fillSelect(data.content).attr('disabled','');
			$('#et option[value="' + arrGET["et"] + '"]').attr('selected', 'selected');
		});
		$.getJSON('',{width:arrGET["width"],radius:arrGET["radius"],pcd:arrGET["pcd"],et:arrGET["et"]},function(data) { 
			$('#producer').fillSelect(data.content).attr('disabled','');
			$('#producer option[value="' + arrGET["producer"] + '"]').attr('selected', 'selected');
		});
	});
}



/* Проверка данных на массив */
function is_array (a) {
    return (typeof a == "object") && (a instanceof Array);
}
/* Преобразование GET запросов в массив */
function get_request() {
	// Получаем GET строку с переменными
	var uri = location.search;

	// Начинаем обаботку полученной строки запроса
	if(uri != '') {
		// Обрезаем знак вопроса и парсим
		uri = uri.substring(1).split("&");
		var stringGET;
		var massit = "";
		var result = new Array();

		// Собираем общий массив GET переменных
		for (var i in uri) {
			// Делим переменные на переменную и ее значение
			stringGET = uri[i].split("=");
			// Поготавливаем массив и сохраняем в него значение
			result[stringGET[0]] = "";
			result[stringGET[0]] += stringGET[1];
		}
		return result;
	} else {
		return false;
	}

}

