$(function()
{
	/**
	*	Search
	*/

	$("#searchResult").tablesorter({ widgets: ['zebra'] });

	var phpQuery = '../_inc/jqueryDatabaseQuery.php';
	var area = $('#areaDiv');
	var areaIn = $('#areaDiv input');
	var zone = $('#zoneDiv');
	var zoneIn = $('#zoneDiv input');
	var wood = $('#woodDiv');
	var woodIn = $('#woodDiv input');
	var prod = $('#productDiv');
	var prodIn = $('#productDiv input');
	var elseDiv = $('#elseDiv');
	var elseDivIn = $('#elseDiv input');

	var searchResult = $('#searchDiv');

	var preload = $('.preloader');
	var allInputs = $('#tabFrames input');

	var currentArea;

	// Piilota preload
	hidePreload();

	areaIn.live("click", function()
	{
		var cv = $(this).val();

		if (currentArea == cv)
		{
			return false;
		}
		else
		{
			wood.slideUp();
			prod.slideUp();
			elseDiv.slideUp();
			searchResult.slideUp();

			woodIn.attr('checked', '');
			prodIn.attr('checked', '');
			elseDivIn.attr('checked', '');
			$('#searchResult tbody').html('');
		}

		currentArea = cv;

		//alert($(this).attr('value'));

		zone.slideUp(function()
			{
				ajaxQuery(cv, 'zone', $('#zone'))
			})
			.slideDown();
	});

	zoneIn.live("click", function()
	{
		if ($("#zoneDiv input:checkbox:checked").length < 1)
		{
			wood.slideUp();
			prod.slideUp();
			elseDiv.slideUp();
			searchResult.slideUp();
			$('#searchResult tbody').html('');
		}
		else
		{
			searchResult.slideDown();
			wood.slideDown();
			prod.slideDown();
			elseDiv.slideDown();
			searchQuery('realSearch');
			$("#searchResult").trigger("update");
		}
		//$.scrollTo($('#searchDiv'));
	});

	woodIn.live("click", function()
	{
		if ($("#woodDiv input:checkbox:checked").length < 1) $('#searchResult tbody').html('');
		searchQuery('realSearch');
		$("#searchResult").trigger("update");
	});

	prodIn.live("click", function()
	{
		if ($("#productDiv input:checkbox:checked").length < 1) $('#searchResult tbody').html('');
		searchQuery('realSearch');
		$("#searchResult").trigger("update");
	});

	elseDivIn.live("click", function()
	{
		if ($("#elseDiv input:checkbox:checked").length < 1) $('#searchResult tbody').html('');
		searchQuery('realSearch');
		$("#searchResult").trigger("update");
	});

	/**
	*	Haetaan kunnat kannasta
	*/
	function ajaxQuery(query, search_field, destination)
	{
		$.getJSON(phpQuery, { query : query, search_field : search_field },  function(data){

			destination.html('');
	    	for(var x=0; x < data.length; x++)
	    	{
				var _return = '<label>';
					_return += '<input type="checkbox" name="kunta[]" value="'+ data[x].id +'" /> ';
					_return += data[x].paikkakunta;
					_return += '</label>';

				destination.append(_return);
	    	}
			destination.append('<div class="clear"></div>');
			hidePreload();
		});
		$("#searchResult").trigger("update");
	}

	/**
	*	Tr:ää klikkaamalla saa esiin infoa myyjästä ja kyseisestä tuotteesta
	*/
	/*
	$('#searchResult tr').live('click', function()
	{
		sellerInfoQuery('realSearch', $(this).attr('id'));
	});
	*/

	/**
	*	Haetaan kannat kunnasta. No ei nyt vaan.
	*	Haetaan muuttujia vastaavat myyjät kannasta ja tulostetaan tableen
	*/
	function searchQuery(search_field)
	{
		$('#searchResult tbody').html('');

		$('#searchResult th').removeClass('headerSortUp');

		var areaInput = $('#areaDiv input:checked').val();
		var zoneInputs = [];
		var woodInputs = [];
		var productInputs = [];

		$("#zone input:checked").each( function()
		{
	        zoneInputs += "&kunta[]=" + this.value;
	 	});

	 	$("#wood input:checked").each( function()
		{
			woodInputs += "&puulaji[]=" + this.value;
	 	});

	 	$("#product input:checked").each( function()
		{
	    	productInputs += "&polttopuulaji[]=" + this.value;
	 	});


		// Generoidaan query stringi
	 	var query_string = '&alue=' + areaInput;
	 	query_string += '&kuivuus=' + $('#else input[name="kuivuus"]:checked').val();
	 	query_string += '&kotiinkuljetus=' + $('#else input[name="kotiinkuljetus"]:checked').val();
	 	query_string += zoneInputs + woodInputs + productInputs +'&search_field='+search_field;

		$.getJSON(phpQuery + '?' + query_string, function(data)
		{
			for(var x=0; x < data.length; x++)
        	{
				var _return = '<tr id="'+ data[x].id + '">';
					if (data[x].yritys == '') _return += '<td class="sellerInfo"><a href="lisatiedot-ja-tilaus/?id='+ data[x].id + '" target="_blank">'+ data[x].sukunimi +' '+  data[x].etunimi +'</a></td>';
					else _return += '<td class="sellerInfo"><a href="lisatiedot-ja-tilaus/?id='+ data[x].id + '" target="_blank">'+ data[x].sukunimi +' '+  data[x].etunimi + ' / ' + data[x].yritys +'</a></td>';
					_return += '<td>'+ data[x].paikkakunta +'</td>';
					_return += '<td>'+ data[x].hinta_irtokuutio +'</td>';
					_return += '<td>'+ data[x].puulajinimi +'</td>';
					_return += '<td>'+ data[x].polttopuulajinimi +'</td>';
					_return += '<td>'+ data[x].kotiinkuljetus +'</td>';
					_return += '</tr>';

				$('#searchResult tbody').append(_return);
        	}

			// Päivitä tablesorttaus
			$("#searchResult").trigger("update");

			//$('tbody tr:odd').addClass('evenLine');
		});
	}

	/**
	*	Haetaan lisätietoja myyjästä
	*/
	function sellerInfoQuery(search_field, id)
	{
		// Generoidaan query stringi
	 	var query_string = '&search_field='+search_field + '&id='+id;

		$.getJSON(phpQuery + '?' + query_string, function(data)
		{
			$('#searchDialog #dialogProduct tbody').html('');
			$('#searchDialog #dialogSeller tbody').html('');

			var _return = '<tr>';
				_return += '<td>Puulaji</td>';
				_return += '<td>'+ data[0].puulajinimi +'</td>';
				_return += '</tr>';
				_return += '<tr>';
				_return += '<td>Kuivuus</td>';
				_return += '<td>'+ data[0].kuivuus +'</td>';
				_return += '</tr>';
				_return += '<tr>';
				_return += '<td>Sahapinta</td>';
				if (data[0].sahapinta == 'Y') _return += '<td><span class="yesCheck"></span></td>';
				else _return += '<td><span class="noCheck"></span></td>';
				_return += '</tr>';
				_return += '<tr>';
				_return += '<td>Irtokuutio (€)</td>';
				_return += '<td>'+ data[0].hinta_irtokuutio +'</td>';
				_return += '</tr>';
				_return += '<tr>';
				_return += '<td>Pinokuutio (€)</td>';
				_return += '<td>'+ data[0].hinta_pinokuutio +'</td>';
				_return += '</tr>';
				_return += '<tr>';
				_return += '<td>Kotiinkuljetus</td>';
				if (data[0].kotiinkuljetus == 'Kyllä') _return += '<td><span class="yesCheck"></span></td>';
				else _return += '<td><span class="noCheck"></span></td>';
				_return += '</tr>';
				_return += '<tr>';
				_return += '<td>Toimitustapa</td>';
				_return += '<td>'+ data[0].toimitustapa +'</td>';
				_return += '</tr>';
				_return += '<tr>';
				_return += '<td>Toimitusaika</td>';
				_return += '<td>'+ data[0].toimitusaika +'</td>';
				_return += '</tr>';
				_return += '<tr>';
				_return += '<td>Minimi tilaus</td>';
				_return += '<td>'+ data[0].tilauskoko_minimi +'</td>';
				_return += '</tr>';

				$('#searchDialog #dialogProduct tbody').append(_return);

			var _return = '';
				if (data[0].yritys == '') _return += '<tr><td>Myyjä</td><td>'+ data[0].sukunimi +' '+  data[0].etunimi +'</td></tr>';
				else _return += '<tr><td>Myyjä</td><td>'+ data[0].sukunimi +' '+  data[0].etunimi + ' / ' + data[0].yritys +'</td></tr>';
				if (data[0].kuvaus != '') _return += '<tr><td>Kuvaus</td><td>' + data[0].kuvaus + '</td></tr>';
				if (data[0].puhelinnumero != '') _return += '<tr><td>Puh.</td><td>' + data[0].puhelinnumero + '</td></tr>';
				if (data[0].gsmnumero != '') _return += '<tr><td>Gsm</td><td>' + data[0].gsmnumero + '</td></tr>';
				if (data[0].faxnumero != '') _return += '<tr><td>Fax</td><td>' + data[0].faxnumero + '</td></tr>';
				if (data[0].sahkopostiosoite != '') _return += '<tr><td>Sähköposti</td><td><a href="mailto:'+ data[0].sahkopostiosoite + '">' + data[0].sahkopostiosoite + '</a></td></tr>';
				if (data[0].katuosoite != '') _return += '<tr><td>Katuosoite</td><td>' + data[0].katuosoite + '</td></tr>';
				if (data[0].postinumero != '') _return += '<tr><td>Postinumero</td><td>' + data[0].postinumero + '</td></tr>';
				if (data[0].postitoimipaikka != '') _return += '<tr><td>Postitoimipaikka</td><td>' + data[0].postitoimipaikka + '</td></tr>';
				if (data[0].wwwosoite != '') _return += '<tr><td>Www</td><td><a href="http://' + data[0].wwwosoite + '">' + data[0].wwwosoite + '</a></td></tr>';

			$('#searchDialog #dialogSeller tbody').append(_return);

			$('#searchDialog tr:odd').addClass('odd');
			$('#searchDialog tr td:even').addClass('evenTd');

			$('#searchDialog').dialog(
			{
				modal: true,
				width: 'auto',
				title: 'Lisätiedot'
			});
		});
	}

	//sellerInfoQuery('realSearch', '0912171025283589');

	/**
	*	Dialogin suljettu resetoidaan tablen tiedot
	*/
	$('#searchDialog').bind('dialogclose', function(event, ui) {
  		$('#searchDialog #seller tbody').html('');
		$('#searchDialog #product tbody').html('');
		$('#searchDialog #seller thead').remove();
	});

	/**
	*	Common funcs
	*/
	function showPreload()
	{
		preload.slideDown('fast');
	}

	function hidePreload()
	{
		preload.slideUp('fast');
		//content.slideDown();
	}

});

