var addthis_config = {
     ui_language: "da"
};
$(document).ready(function(){ 
    $(document).pngFix(); 
});

function popUp(URL) {
	day = new Date();
	id = day.getTime();
	eval("page" + id + " = window.open(URL, '" + id + "', 'toolbar=0,scrollbars=0,location=0,statusbar=0,menubar=0,resizable=0,width=490,height=600,left = 395,top = 212');");
}
	    
function buy(formID){
	var form 		= document.getElementById(formID);
	var productID 	= form.itemnumber.value;
	var amount 		= form.amount.value;
	
	$.get('', { "ItemV2-Action-Buy" : "true", "ItemV2-itemnumber[]" : productID, "ItemV2-amount[]" : amount }, reloadClosure(productID) );
	
	return false;
}

function reloadClosure(id){
	return function(){ reload(id); };
}

function reload(id){
	window.location = "/buyconfirm?ItemV2-id[]="+id;
}
	
function validateTyreSearch(){
	if($('#tyreProfile').val() =='*'){
		alert("Du skal vælge dæk profil");
		return false;
	}
	
	if($('#tyreWidth').val() == '*'){
		alert("Du skal vælge dæk bredde");
		return false;
	}
	
	if($('#tyreSize').val() == '*'){
		alert("Du skal vælge dæk størrelse");
		return false;
	}
	
	return true;
}

$(document).ready(function(){
	$('#alucars').change(loadAluModels);
	$('#alumodels').change(loadAluRims);
	$('#aluSearchButton').click(saveSelection);
	
	$('#cars').change(loadStaalModels);
	$('#models').change(loadStaalRims);
	$('#searchButton').click(saveSelection);
	
	$('#daekSearchButton').click(saveSelection);
	
	loadAluCars(); // populate alucars dropdown
	loadStaalCars(); // populate staalcars dropdown
	loadDaek(); // populate daek dropdowns
});

function saveSelection(){
	var form = $(this).parent("form");
	var car = "";
	$(form).find("select option:selected").each(function(){
		car += $(this).html()+" ";
	});
	$.cookie("search", null);
	$.cookie('search', car,{ path: '/' });
	$("#carHeader").val(car);

	$(".save").each(function(){
		$.cookie($(this).attr("id"), null);
		$.cookie($(this).attr("id"), $(this).val());
	});
}

function restoreSelection(id){
	if($.cookie(id)){
		$('#'+id).val($.cookie(id));
		return true;
	}
	return false;
}

function populateDropdown(selectID, data, valueName, textName){
	for(var i = 0; i < data.results.length; i++){
		var content	= data.results[i][textName];
		var id 		= data.results[i][valueName];
		$('#'+selectID).append($("<option></option>").
				attr("value",id).
				text(content)); 
	}
}

function loadDaek(){
	restoreSelection("carType");
	restoreSelection("tyreType");
	
	var tyreWidthUrl = "/plugin.php?plugin[]=Fields&ajax=true&Fields-fetch[]=Bredde&Fields-Bredde=unique";
	$.getJSON(tyreWidthUrl, function(data) {
		populateDropdown("tyreWidth", data, "content", "content");
		// restore menu
		restoreSelection("tyreWidth");
	});
	
	var tyreProfileUrl = "/plugin.php?plugin[]=Fields&ajax=true&Fields-fetch[]=Profil&Fields-Profil=unique";
	$.getJSON(tyreProfileUrl, function(data) {
		populateDropdown("tyreProfile", data, "content", "content");
		// restore menu
		restoreSelection("tyreProfile");
	});
	
	var tyreHeightUrl = "/plugin.php?plugin[]=Fields&ajax=true&Fields-fetch[]=Tommer&Fields-Tommer=unique";
	$.getJSON(tyreHeightUrl, function(data) {
		populateDropdown("tyreSize", data, "content", "content");
		// restore menu
		restoreSelection("tyreSize");
	});
}

function loadStaalCars(){
	var carsUrl = '/plugin.php?plugin[]=SortEngine&SortEngine-rimtype=2&ajax=true';
	
	$.getJSON(carsUrl, function(data) {
		populateDropdown("cars", data, "id", "brand");
		// restore menu
		if(restoreSelection("cars")){
			loadStaalModels();
		}
	});
}

function loadStaalModels(){
	var carID = $('#cars option:selected').val();
	var modelsUrl = "/plugin.php?plugin[]=SortEngine&SortEngine-rimtype=2&ajax=true&SortEngine-brand="+carID;
	
	if(carID == '*') return;
	
	$.getJSON(modelsUrl, function(data) {
		$('#models').empty();
		populateDropdown("models", data, "id", "modelformat");

		restoreSelection("models");
		loadStaalRims();
	});
}

function loadStaalRims(){
	var carID = $('#cars option:selected').val();
	var modelID = $('#models option:selected').val();
	var rimsUrl = "/plugin.php?plugin[]=SortEngine&SortEngine-rimtype=2&ajax=true&SortEngine-brand="+carID+"&SortEngine-model="+modelID;
	
	if(modelID == '*') return;
	
	$.getJSON(rimsUrl, function(data) {
		$('#sizes').empty();
		populateDropdown("sizes", data, "id", "rimSize");
		restoreSelection("sizes");
	});
}

function loadAluCars(){
	var carsUrl = '/plugin.php?plugin[]=SortEngine&ajax=true&SortEngine-rimtype=1';
	$.getJSON(carsUrl, function(data) {
		populateDropdown("alucars", data, "id", "brand");
		// restore menu
		if(restoreSelection("alucars")){
			loadAluModels();
		}
	});
}

function loadAluModels(){
	var carID = $('#alucars option:selected').val();
	var modelsUrl = "/plugin.php?plugin[]=SortEngine&SortEngine-rimtype=1&ajax=true&SortEngine-brand="+carID;
	if(carID == '*') return;
	
	$.getJSON(modelsUrl, function(data) {
		$('#alumodels').empty();
		populateDropdown("alumodels", data, "id", "modelformat");
		restoreSelection("alumodels");
		loadAluRims();
	});
}

function loadAluRims(){
	var carID = $('#alucars option:selected').val();
	var modelID = $('#alumodels option:selected').val();
	var rimsUrl = "/plugin.php?plugin[]=SortEngine&SortEngine-rimtype=1&ajax=true&SortEngine-brand="+carID+"&SortEngine-model="+modelID;
	
	if(modelID == '*') return;
	
	$.getJSON(rimsUrl, function(data) {
		$('#alusizes').empty();
		populateDropdown("alusizes", data, "id", "rimSize");
		restoreSelection("alusizes");
	});
}

function menuClick(item){
	item = document.getElementById(item);
	if(item.style.display == 'none'){
		item.style.display = '';
		saveMenuOpen(item);
	}else{
		item.style.display = 'none';
		saveMenuClosed(item);
	}
	return false;
}

function saveMenuOpen(item){
	$.cookie("menuItem", $.cookie("menuItem")+":"+item.id);
}

function saveMenuClosed(item){
	var data = $.cookie("menuItem");
	var ca = data.split(':');
	for(var i=0;i < ca.length;i++) {
		var c = ca[i];
		if(!ca[i].match(item.id))
			str = ca[i]+":";
	}
	$.cookie("menuItem", null);
	$.cookie("menuItem", str);
}

function loadMenu(){
	var data = $.cookie("menuItem");
	if(!data)
		return;
	var ca = data.split(':');
	for(var i=0;i < ca.length;i++) {
		if(document.getElementById(ca[i]))
			document.getElementById(ca[i]).style.display = '';
	}	
}
