/*
 * Copyright : (c) 2011 Webfish
 * Website   : http://www.webfish.nl
 * Email     : info@webfish.nl
 * -------------------------------------------------------------------------
 *   $Id: functions.js 25 2011-06-27 13:51:04Z caspar $
 * -------------------------------------------------------------------------
 */

var str_prev = null;
function toggleItem(str_item)
{
	if (str_prev != null)
	{
		$(str_prev).slideUp('slow');
	}
	if (str_prev == str_item)
	{
		str_prev = null;
	}
	else
	{
		$(str_item).slideDown('slow');
		str_prev = str_item;
	}

	return false;
}

function inputOnfocus(objInput, strDefault)
{
	if (objInput.value == strDefault)
		objInput.value = '';
	else
		objInput.select();

	return true;
}

function inputOnblur(objInput, strDefault)
{
	if (objInput.value == '')
		objInput.value = strDefault;

	return true;
}

function formatCurrency(num)
{
    num = (isNaN(num) || num === '' || num === null) ? 0.00 : num;
    num = parseFloat(num).toFixed(2);
	return num.replace('.', ',');
}

/**
 * @var array limits [min, max]
 * @var array values [min, max]
 */
function setupPriceSlider(step, limits, values)
{
	var frmFilterPrice_timer = false;
	function filterPriceStart()
	{
		frmFilterPrice_timer = setTimeout(function(){
			$('#priceFrom').val($slider.slider('values', 0));
			$('#priceTo').val($slider.slider('values', 1));
			$('form#frmFilterPrice').submit();
		}, 1000);
	}

	function filterPriceStop()
	{
		if (frmFilterPrice_timer !== false)
		{
			clearTimeout(frmFilterPrice_timer);
		}
		frmFilterPrice_timer = false;
	}

	var $slider = $('div#priceRange');
	$slider.show().slider({
		range:true,
		step:step,
		min:limits[0],
		max:limits[1],
		values:values,
		slide:function(event, ui){
			filterPriceStop();
			$('#priceFrom').val(formatCurrency(ui.values[0]));
			$('#priceTo').val(formatCurrency(ui.values[1]));
		},
		change:function(){
			filterPriceStart();
		}
	})
	$('#priceFrom').val(formatCurrency($slider.slider('values', 0)));
	$('#priceTo').val(formatCurrency($slider.slider('values', 1)));
	$('button#filterPrice').hide();

	$('form#frmFilterPrice').submit(function(){
		filterPriceStop();
	});
}

$(function(){
	$('a[rel=external]').attr('target', '_blank');

	var $carousel = $('div#carousel div#items')
	if ($carousel.length)
	{
		$carousel.carouFredSel({
			circular:true,
			infinite:true,
			direction:'left',
			pagination:{
				container:'div#carousel div#pagination',
				keys:true
			},
			scroll:{
				items:1,
				duration:2000
			},
			auto:{
				pauseDuration:3000,
				pauseOnHover:true
			}
		});
	}

	$('a.colorbox').colorbox({
		transition:'none',
		width:'800px',
		height:'600px'
	});
});

