basepath = location.protocol + '//' + location.hostname + '/';

/*
---------------------------------------
Functions
---------------------------------------
*/

/*
------- Form and slider reset.
*/
function reset_sliders()
{
	$('#slider-range').slider('option', 'values', [5, 50])
	$("#amount").html('Price range: &nbsp;$' + $("#slider-range").slider("values", 0) + ' to $' + $("#slider-range").slider("values", 1));
	$("#price_from").val($("#slider-range").slider("values", 0));
	$("#price_to").val($("#slider-range").slider("values", 1));
	$('#slider-range').slider('enable'); 
}

function clear_form()
{
	//document.search_form.reset();
	$("#search_query").val('');
	$("#search_location").val('0');
	$("#search_producer").val('0');
	$("#search_type").val('0');
	$("#search_grape").val('0');
	$("#search_style").val('0');
	reset_sliders();
	send_counter_request();
}

/*
------- Search
*/
function update_search_counter(value)
{
	$('#wines_found').html(value);
}

function send_counter_request()
{
	var data = {};
	data['search_query'] = $('#search_query').val();
	data['search_location'] = $('#search_location').val();
	data['search_producer'] = $('#search_producer').val();
	data['search_type'] = $('#search_type').val();
	data['search_grape'] = $('#search_grape').val();
	data['search_style'] = $('#search_style').val();
	data['price_from'] = $('#price_from').val();
	data['price_to'] = $('#price_to').val();
	data['search_order'] = $('#search_order').val();
	$('#wines_found').load(basepath + 'wines/ajax_search', data, update_search_counter('...'));
}

/*
---------------------------------------
And away we go...
---------------------------------------
*/
$(document).ready(function() 
{	
	// Product slider	$("#slider-range").slider({
		range: true,
		animate: true,
		step: 5,
		min: 5,
		max: 50,
		values: [$('#price_from').val(), $('#price_to').val()],
		slide: function(event, ui) 
		{
			var maxval = ui.values[1];
			if (maxval == '50') maxval = '50+';
			$("#amount").html('Price range: &nbsp;$' + ui.values[0] + ' to $' + maxval);
			$("#price_from").val(ui.values[0]);
			$("#price_to").val(ui.values[1]);
			send_counter_request();
		}
	});
	var maxval = $("#slider-range").slider("values", 1);
	if (maxval == '50') maxval = '50+';
	$("#amount").html('Price range: &nbsp;$' + $("#slider-range").slider("values", 0) + ' to $' + maxval);
	$("#price_from").val($("#slider-range").slider("values", 0));
	$("#price_to").val($("#slider-range").slider("values", 1));
	send_counter_request();
	
	// City locations
	$('select[name="city"]').change( function() {
		var cityName = $(this).val();
		$.post(basepath + 'restaurants/fetch_locations', { 'city' : cityName }, function(d) {
			$('select[name="city_location"]').replaceWith(d);
		});
	});});
