function updateTable(page, sort, sortorder, get, id){
	
	carsLastSort = sort;
	carsLastSortOrder = sortorder;
	
	$('#loader').show();
	
	$('#table').load('ajax.php', {
		get: get,
		page: page,
		sort: sort,
		id: (typeof id == 'undefined' ? 0 : id),
		sortorder: sortorder
	});
	
	return true;
	
}

function carsSearch(hsn, tsn) {
	$('#loader').show();
	$.getJSON("ajax.php",({
			get: 'carsSearch',
			hsn: hsn,
			tsn: tsn,
			mode: mode
		}),
		function(data){
			switch (data.s) {
				case 0:
					alert(lang.notfound);
					break;
				case 1:
					alert(lang.itemnotfound);
    				break;
				case 2:
					$('.konfigurator-hsntsn').hide();
		    	   	$('.konfigurator-seltable').show();
					$('#table').html(data.payload);	//Versionsauswahl	
					break;
				case 3:
					jumpToCar();
					break;
			}
			$('#loader').hide();
		}
	);
}

function carsCheck(id) {
	$('#loader').show();
	$.getJSON("ajax.php",({
			get: 'carsCheck',
			id: id,
			mode: mode
		}),
		function(data){
			$('#loader').hide();
			if(data.s)
				jumpToCar();
			else
				alert(lang.itemnotfound);
		}
	);
}

$(document).ready(function() {
	
    // überwache #brands
    $("#brands").change(function () {
    	//$('.konfigurator-hsntsn').show();
	   	//$('.konfigurator-seltable').hide();
    	if ($("#brands").val() != "") {
    		$('#loader').show();
	    	$.getJSON("ajax.php",({
	    			get: 'carsClasses',
	    			brand: $("#brands option:selected").text() 
	    		}),	function(data){
	    			var box = $("#classes");
	    			box.children().remove().end().append('<option selected="selected"></option>') ;
	    			$.each(data, function(i,item){
	    				box.append('<option value="' + item + '">' + item + '</option>');
	    			});
	    			$("#versions").children().remove().end().append('<option selected="selected">' + lang.select2 + '</option>');
	    			$("#types").children().remove().end().append('<option selected="selected">' + lang.select2 + '</option>');
	    			$('#loader').hide();
	    		}
	    	);
    	} else {
    		$("#classes").children().remove().end().append('<option selected="selected">' + lang.select + '</option>');
    		$("#versions").children().remove().end().append('<option selected="selected">' + lang.select + '</option>');
    		$("#types").children().remove().end().append('<option selected="selected">' + lang.select + '</option>');
    	}
	});
    
    // überwache #classes
    $("#classes").change(function () {
    	//$('.konfigurator-hsntsn').show();
	   	//$('.konfigurator-seltable').hide();
    	if ($("#brands").val() != "" && $("#classes").val() != "") {
    		$('#loader').show();
	    	$.getJSON("ajax.php",({
	    			get: 'carsVersionsTypes',
	    			brand: $("#brands option:selected").text(),
	    			'class': $("#classes option:selected").text() 
	    		}),	function(data){
	    			
	    			var box = $("#versions");
	    			box.children().remove().end().append('<option selected="selected"></option>') ;
	    			$.each(data[0], function(i,item){
	    				box.append('<option value="' + item + '">' + item + '</option>');
	    			});
	    			
	    			var box = $("#types");
		    		box.children().remove().end().append('<option selected="selected"></option>') ;
		    		$.each(data[1], function(i,item){
		    			box.append('<option value="' + item + '">' + item + '</option>');
		    		});
	    			
		    		$('#loader').hide();
	    		}
	    	);
    	} else {
    		$("#versions").children().remove().end().append('<option selected="selected">' + lang.select2 + '</option>');
    		$("#types").children().remove().end().append('<option selected="selected">' + lang.select2 + '</option>');
    	}
	});
	
	// überwache #versions
    $("#versions").change(function () {
    	
    	$("#types").val('');
    	
    	if ($("#brands").val() == "" || $("#classes").val() == "" || $("#versions").val() == "") {
    		//sleep
    	} else {
    		$('#loader').show();
    		$('.konfigurator-hsntsn').hide();
    	   	$('.konfigurator-seltable').show();
    	   	$('.box').attr('height', '500px');
    	   	carsLastSort = 'kw';
    		carsLastSortOrder = 'ASC';
    		$('#table').load('ajax.php', {
    			get: 'carsTable',
    			brand: $("#brands option:selected").text(),
    			'class': $("#classes option:selected").text(),
    			version: $("#versions option:selected").text(),
    			page: 1,
    			sort: carsLastSort,
    			sortorder: carsLastSortOrder
    		});		
    	}
    });
    
    // überwache #types
    $("#types").change(function () {
    	
    	$("#versions").val('');
    	
    	if ($("#brands").val() == "" || $("#classes").val() == "" || $("#types").val() == "") {
    		//sleep
    	} else {
    		$('#loader').show();
    		$('.konfigurator-hsntsn').hide();
    	   	$('.konfigurator-seltable').show();
    	   	$('.box').attr('height', '500px');
    	   	carsLastSort = 'kw';
    		carsLastSortOrder = 'ASC';
    		$('#table').load('ajax.php', {
    			get: 'carsTable',
    			brand: $("#brands option:selected").text(),
    			'class': $("#classes option:selected").text(),
    			'type': $("#types option:selected").text(),
    			page: 1,
    			sort: carsLastSort,
    			sortorder: carsLastSortOrder
    		});		
    	}
    });
    
    if($("#versions option:selected").text() != "") $('#versions').trigger('change');
    
    var lastHSNTSN = "";
    $('#2zu2').keyup(function(event) {
    	event.preventDefault();
    	if($(this).val().length >= 4 && event.keyCode != 9 && event.keyCode != 16) {
    		$('#2zu3').focus();
    	}
    });
    $('#1zu2').keyup(function(event) {
    	event.preventDefault();
    	if($(this).val().length >= 4 && event.keyCode != 9 && event.keyCode != 16) {
    		$('#1zu3').focus();
    	}
    });
    $('#2zu3').keyup(function(event) {
    	event.preventDefault();
    	if(((event.keyCode == 13 && $(this).val() != "") || $(this).val().length >= 8) && lastHSNTSN != ($('#2zu2').val() + $('#2zu3').val())) {
    		$('#submit1').trigger('click');
    		lastHSNTSN = $('#2zu2').val() + $('#2zu3').val();
    	}
    });
    $('#1zu3').keyup(function(event) {
    	event.preventDefault();
    	if(((event.keyCode == 13 && $(this).val() != "") || $(this).val().length >= 6) && lastHSNTSN != ($('#1zu2').val() + $('#1zu3').val())) {
    		$('#submit2').trigger('click');
    		lastHSNTSN = $('#1zu2').val() + $('#1zu3').val();
    	}
    });
    $('#submit1').click(function() {
    	if($('#2zu3').val().length < 6) {
    		alert(lang.notlongenough);
    	} else {
    		carsSearch($('#2zu2').val(),$('#2zu3').val());
    	}
    });
    $('#submit2').click(function() {
    	if($('#1zu3').val().length < 6) {
    		alert(lang.notlongenough);
    	} else {
    		carsSearch($('#1zu2').val(),$('#1zu3').val());
    	}
    });
});
