
/*
 s3Slider
 Developped By: Boban Karišik -> http://www.serie3.info/
 CSS Help: Mészáros Róbert -> http://www.perspectived.com/
 Version: 1.0
 Copyright: Feel free to redistribute the script/modify it, as long as you leave
 my infos at the top
*/

GlobalSignUrl = "";
GlobalItemName = "";

function SignClick() {
	window.location.href = GlobalSignUrl;
}

function PrevClick() {
	
}

function NextClick() {
var $j = jQuery.noConflict();
	$j('#slider').s3Slider.plop;
}

function TruncateDiv() {
                                 
	var $j = jQuery.noConflict();
	var len = 130;
	if ( $j(GlobalItemName).find(".sliderImageTextB")[0] != undefined ) {
		
		var trunc = $j(GlobalItemName).find(".sliderImageTextB")[0].innerText;
		if (trunc) {
			if (trunc.length > len) {

				trunc = trunc.substring(0, len-3);
				trunc = trunc.replace(/\w+$/, '');

				trunc += '...';
			
			}
		}
		$j(GlobalItemName).find(".sliderImageTextB")[0].innerText = trunc;
		
	} 

}


(function($j) {
	var $j = jQuery.noConflict();
	$j.fn.s3Slider = function(vars) {

		var element = this;
		var timeOut = (vars.timeOut != undefined) ? vars.timeOut : 4000;
		var timeOutSlide = (vars.timeOutSlide != undefined) ? vars.timeOutSlide : 3000;
		var current = null;
		var timeOutFn = null;
		var faderStat = true;
		var mOver = false;
		var items = $j("#" + element[0].id + "Content ." + element[0].id + "Image");
		var itemsSpan = $j("#" + element[0].id + "Content ." + element[0].id + "Image span");

		$j('#img-hrrotators-prev').click(function() {
			//current = items[(currNo+1)];
			fadeElementPrev(); 
		});
		
		$j('#img-hrrotators-next').click(function() {
			//current = items[(currNo+1)];
			fadeElementNext(); 
		});
		
		//items.each(function(i) {
			//$(items[i]).mouseover(function() {
				//mOver = true;
			//});
			//$(items[i]).mouseout(function() {
				//mOver = false;
				//fadeElement(true);
			//});
		//});
		
		var fadeElementNext = function() {
			if(items.length > 0) {
				faderStat = false;
				makeSlider(1);
				clearTimeout(timeOutFn);
				timeOutFn = setTimeout(fadeElementNext, timeOut);
			}
		}
		
		var growElementNext = function() {
			if(items.length > 0) {
				faderStat = true;
				makeSlider(1);
			}
		}
		
		var fadeElementPrev = function() {
			if(items.length > 0) {
				faderStat = false;
				makeSlider(-1);
				clearTimeout(timeOutFn);
				timeOutFn = setTimeout(fadeElementNext, timeOut);
			}
		}
		
		
		var growElementPrev = function() {
			if(items.length > 0) {
				faderStat = true;
				makeSlider(-1);
			}
		}
		
		var makeSlider = function(oDirection) {
			
			(oDirection != undefined) ? oDirection : 1;
			
			current = (current != null) ? current : items[0];
			var currNo = jQuery.inArray(current, items)
			//currNo = (currNo == items.length) ? 0 : (currNo - 1);
			//var newMargin = $(element).width() * currNo;
			
			GlobalSignUrl = $j(items[currNo]).find("a")[0].href;
			GlobalItemName = items[currNo];
			TruncateDiv();
			
			//$(GlobalItemName).find(".sliderImageTextB")[0].innerText = ( "faderStat: " + faderStat + ", oDirection: " + oDirection + ", currNo: " + currNo )
			
			if(faderStat == true) {
				if(!mOver) {
					$j(items[currNo]).fadeIn((timeOutSlide/6), function() {
						if($j(itemsSpan[currNo]).css('bottom') == 0) {
							$j(itemsSpan[currNo]).slideUp((timeOutSlide/6), function() {
								faderStat = false;
								current = items[currNo];
								if(!mOver) {
									//alert("A");
									//fadeElement(false);
								}
								});
							} else {
							$j(itemsSpan[currNo]).slideDown((timeOutSlide/6), function() {
								faderStat = false;
								current = items[currNo];
								if(!mOver) {
									//faderStat = false;
									//alert("B");
									//fadeElement(false);
								}
							});
						}
					});
				}
			} else {
				if(!mOver) {
					if($j(itemsSpan[currNo]).css('bottom') == 0) {
						$j(itemsSpan[currNo]).slideDown((timeOutSlide/6), function() {
							$j(items[currNo]).fadeOut((timeOutSlide/6), function() {
								faderStat = true;
								current = items[(currNo+(1 * oDirection))];
								if(!mOver) {
									//alert("C");
									//fadeElement(false);
								}
							});
						});
					} else {
						$j(itemsSpan[currNo]).slideUp((timeOutSlide/6), function() {
							$j(items[currNo]).fadeOut((timeOutSlide/6), function() {
								faderStat = true;
								
								currNo = currNo+(1 * oDirection)
								if (oDirection == 1) {
									currNo = (currNo >= items.length) ? 0 : currNo;
								} else {
									currNo = (currNo <= -1) ? (items.length - 1) : currNo;
								}
								current = items[currNo];
								
								if(!mOver) {
									//faderStat = true;
									//alert("D");
									//fadeElement(false);
									if (oDirection == 1) { 
										growElementNext();
									} else {
										growElementPrev();
									}
								}
							});
						});
					}
				}
			}
		}
		fadeElementNext();
		};
	})(jQuery);

