/*
 * Global vars
 */
// Defined outside with absolut paths
//var btnPrevOffSrc = "img/btn_slide_prev_off.png";
//var btnPrevSrc = "img/btn_slide_prev.png";
//var btnNextOffSrc = "img/btn_slide_next_off.png";
//var btnNextSrc = "img/btn_slide_next.png";

var btnPrevImgId = '#btnPrev img';
var btnNextImgId = '#btnNext img';

//	jQuery expressions
var $clickAreaA = Object;
var $inputFieldsHint = Object;

/*
 * Execution
 */
jQuery(document).ready(function() {
	$inputFieldsHint = $(".hintHandler");
	$clickAreaA = $("#clickAreaA");
	/*
	 * SLIDESHOW
	 */
	$('#home').serialScroll({
		target:"#slideShow",
		items:'li',
		axis:'x',
		prev:btnPrevImgId,
		next:btnNextImgId,
		start:0,
		duration:400,
		force:true,
		stop:true,
		lock:false,
		interval:3000,
		cycle:false, //don't pull back once you reach the end
		onBefore:updateSlide
	});
	if ($("#slideShow ul").find("li").length <= 1) {
		$(btnNextImgId).attr("src", btnNextOffSrc).css("cursor", "default");
	}
	setSlideHref($("#slideShow ul:first-child"));

	$(btnNextImgId + "," + btnPrevImgId).mouseup(function() {
		$("#slideShow").stop().trigger('stop');
	});
	
	/*
	 * HINTS text inputs
	 */
	$inputFieldsHint.mousedown(onInputEdit).keyup(onInputEdit).blur(onInputBlur);


});

/*
 * Functions
 */
/*
 * 	Hint handlers
 */
function onInputEdit(e) {
	if ($(e.target).val() == $(e.target).attr("title")) {
		$(e.target).val("");	//	clear hint
	}
}
function onInputBlur(e) {
	if ($(e.target).val() == "") {
		$(e.target).val($(e.target).attr("title"));	//	input field lost focus
	}
}

/*
 *	Function updateSlide()
 *	serialScroll callback	
 */
function updateSlide( e, elem, $pane, $items, pos ) {	
//	console.log("pos "+pos + "len: "+$items.length);
	setSlideHref(elem);
	if (pos == 0) {
		$(btnPrevImgId).attr("src", btnPrevOffSrc).css("cursor", "default");
	}
	else {
		$(btnPrevImgId).attr("src", btnPrevSrc).css("cursor", "pointer");
	}
	if (pos >= $items.length -1) {
		$(btnNextImgId).attr("src", btnNextOffSrc).css("cursor", "default");
	}
	else {
		$(btnNextImgId).attr("src", btnNextSrc).css("cursor", "pointer");
	}
}

/*
 *	Function setSlideHref(item)
 *	@param item {Object}
 *
 *	Recibe un (DOM element) item <li> con un link adentro.
 *	Setea el href del area clickeable del slideShow
 *	con el href del <a> del <li> recibido
 */
function setSlideHref(item) {
	$clickAreaA.attr("href", $("a", item).attr("href"));
}
