$(document).ready(function() {    
  //insertCloudControl('get_data_gen.aspx?rq=1');
  jQuery.get("redaktion_ajax.aspx","", function(data) {
		jQuery("#redaktion_content").html(data);  
	    $('.box').bind({
		    mouseenter: function() {
			    $(this).css("background-image","url('themes/basic/images/boxes/recomm.jpg')");
		    },
		    mouseleave: function() {
			    $(this).css("background-image","none");
		    }
	    });        
		attachOver();	
		initRotator();			
		attachTooltip();		
		$('.mailButton').bind('click', function() {
		dlgTellAfriend(0, "", this);
		$("#smallTooltip").remove();
		$(this).removeClass().addClass('mailButton');
		});
		if(!FlashDetect.installed) {	 
	     $(".ncheck").attr("href", "#");
	     $(".ncheck").click(function() {show_ng_flash_dialog()});
    }
	});   
});
       
function changePage(pageNo) {    
	jQuery.get("redaktion_ajax.aspx?pageNo=" + pageNo,"", function(data){
		jQuery("#redaktion_content").html(data); 
		attachOver();
    afterFilmeListAjax();		
		attachTooltip();
		$('.mailButton').bind('click', function() {
		dlgTellAfriend(0, "", this);
		$("#smallTooltip").remove();
		$(this).removeClass().addClass('mailButton');
		});
		if(!FlashDetect.installed) {	 
	     $(".ncheck").attr("href", "#");
	     $(".ncheck").click(function() {show_ng_flash_dialog()});
    }
		
	});
}

function merkliste() {    
	jQuery.get("merkliste.aspx","", function(data){
		jQuery("#merkliste_content").html(data); 
		});
}

// PROMO ROTATOR
var PROMO_MAIN_CURRENT_PAGE = 1;


//settings
var limitSlidesShows = 5; 
var middleOfSlides = 3;

//not settings just global vars
var currentSlide = 0;
var prevSlide = 0;
var maxCurrentSlide = 0;

//this array is the main buffer where the displayed numbers are managed.
var slideShows = new Array();
//a flag used to pause the default slide transition of cycle.
var clickedSlide = false;

function onPrevNextClick(isNext, zeroBasedSlideIndex, slideElement){
	$("#promoImg").cycle('resume');
	clickedSlide = true;
	currentSlide = (prevSlide < 1)?1:zeroBasedSlideIndex + 1;
	if(isNext){//Clicking for the next number
		if(currentSlide > middleOfSlides && (currentSlide+(middleOfSlides-1)) <= maxCurrentSlide){
			if((maxCurrentSlide - currentSlide) <= (middleOfSlides-1)){
				$("#promoImgPagingBox span").css("display", "none");
			}
			else {
				$("#promoImgPagingBox span").css("display", "inline");
			}
			slideShows.splice(0, 1);
			slideShows.push(slideShows[slideShows.length-1]+1);
		}
		else if(currentSlide <= 1) {
			slideShows = new Array();
			for(var i=0; i<limitSlidesShows;i++){
				slideShows.push((i+1));
			}
			$("#promoImgPagingBox span").css("display", "inline");
		}
	}
	else {//clicking for the previous button
		if(zeroBasedSlideIndex >=  (maxCurrentSlide-1)){
			slideShows = new Array();
			for(var i=0; i<limitSlidesShows;i++){
				slideShows.push(maxCurrentSlide-i);
			}
			$("#promoImgPagingBox span").css("display", "none");
			slideShows.reverse();
		}
		else if(slideShows.indexOf(currentSlide) <= 1 && currentSlide >= 1){
			var newNr = slideShows[0]-1;
			if(newNr > 0) {
				slideShows.pop();
				slideShows.unshift((slideShows[0]-1));
			}
			if(maxCurrentSlide > limitSlidesShows)
				$("#promoImgPagingBox span").css("display", "inline");
		}
	}
	redrawPagination();
	prevSlide = zeroBasedSlideIndex;
}

function redrawPagination(){
	$("#promoImgPaging a.pageNumber").css("display", "none");
	for(var i=0; i<slideShows.length;i++){
		$("#lnkSlide_"+(slideShows[i])).css("display", "inline");
	}//end for
	$("#lnkSlide_"+maxCurrentSlide).css("display", "inline");
}

function initRotator(isLoad){
$(".promoImg").each(
	function(){ 
		
		//getting all the links which will be used for the cycle.
		if($('div[id*="block_id_"]').length > 0){
			for(var i=1; i<=$('div[id*="block_id_"]').length; i++){
				$(this).append($("#block_id_" + i).children("a").clone());
			}
		}
		
		//initializing with some default values
		maxCurrentSlide = $(this).children("a").length;
		if(currentSlide == 0){
			for(var i=0; i<limitSlidesShows;i++){
				slideShows.push((i+1));
			}
		}//end if

		
		$(this).cycle({
			fx:     'fade',
			speed:  2000,
			timeout: 5000,       
			pager:  '#promoImgPagingBox',
			prev: '#promoImgPrev',
			next: '#promoImgNext',	
			prevNextClick: onPrevNextClick,
			after: function(currSlideElement, nextSlideElement, options, forwardFlag){      
				$("#promoImgPagingBox").children('.selected').removeClass('selected');
			},
			before: function(currSlideElement, nextSlideElement, options, forwardFlag){      
					if(!clickedSlide){
						currentSlide = (prevSlide < 1)?1:options.nextSlide + 1;
						if(currentSlide >= prevSlide){
							if(currentSlide > middleOfSlides && (currentSlide+(middleOfSlides-1)) <= maxCurrentSlide){
								if(maxCurrentSlide - currentSlide <= (middleOfSlides-1)){
									$("#promoImgPagingBox span").css("display", "none");
								}
								else {
									$("#promoImgPagingBox span").css("display", "inline");
								}
								slideShows.splice(0, 1);
								slideShows.push(slideShows[slideShows.length-1]+1);//currentSlide+(middleOfSlides-1)
							}
						}
						else {//the slide is returning back to position 1, after the last number was displayed.
							//on back reset all
							slideShows = new Array();
							for(var i=0; i<limitSlidesShows;i++){
								slideShows.push((i+1));
							}
							$("#promoImgPagingBox span").css("display", "inline");
						}
						prevSlide = currentSlide;
						redrawPagination();
					}
					clickedSlide = false;
			} 	 	
		}); 

		/* apply class to page numbers */	
		var counter = 1;
		$('#promoImgPaging a').each(function(){
			if($(this).attr("class") == ""){
				$(this).addClass('pageNumber');
				if(counter > limitSlidesShows && counter < maxCurrentSlide)$(this).css("display", "none");
				$(this).attr("id", "lnkSlide_"+counter++);
				
				$(this).click(function(){
					prevSlide = currentSlide;

					//skiping the default slideshow transition
					$("#promoImg").cycle('pause');
					clickedSlide = true;

					//getting the right clicked number
					var matches = $(this).attr('id').match(/(\d+)/);
					currentSlide = parseInt(matches[1].trim(), 10);
					var elementIndex = slideShows.indexOf(currentSlide);
					
					if(currentSlide > prevSlide){//forward navigation on click directlly on the numbers
						if((elementIndex == 0 || elementIndex == (limitSlidesShows-1)) && slideShows[(limitSlidesShows-1)] != maxCurrentSlide){
							slideShows.splice(0, 1);	
							slideShows.push(slideShows[slideShows.length-1]+1);	
						}
					}
					else if(currentSlide < prevSlide) {//back navigation on click directlly on the numbers
						if((elementIndex == 0 || elementIndex == (limitSlidesShows-1)) && slideShows[0] != 1){
							slideShows.pop();	
							slideShows.unshift((slideShows[0]-1));
						}//end if
					}
					else if(currentSlide == maxCurrentSlide && elementIndex == -1) {//when clicking the last number of items directly
						slideShows = new Array();
						for(var i=0; i<limitSlidesShows;i++){
							slideShows.unshift(maxCurrentSlide-i);
						}
						$("#promoImgPagingBox span").css("display", "none");
					}
					//on last page navigation: no more numbers to cross after the maximum was achieved
					if(slideShows[slideShows.length-1] == maxCurrentSlide){
						$("#promoImgPagingBox span").css("display", "none");		
					}
					else {
						$("#promoImgPagingBox span").css("display", "inline");
					}
					redrawPagination();
					return false;
				});
			};
		 });
		
		/* append the prev/next buttons */	
		
		if(maxCurrentSlide > limitSlidesShows){
			$('<span id="points" style="color:#FFF;">...</span>').insertBefore("#lnkSlide_"+maxCurrentSlide);
		}	
		$('#promoImgPagingBox').append($('#promoImgPrev')).append($('#promoImgNext'));	
		
		/* format numbers */
		var first = true;
		$('#promoImgPagingBox a').each(function(){
			if($(this).hasClass("pageNumber") || $(this).hasClass("pageNumber2")){
				var value = parseInt($(this).text()) + parseInt(((PROMO_MAIN_CURRENT_PAGE-1) * 5));        
				if(value < 10) {
					$(this).text("0" + value);	
				} else {
					$(this).text(value);
				}
				if(first) {
					$(this).addClass("activeSlide");
					first = false; 	
				}
			}
		});

		// direct click on page numbers
		$('#promoImgPaging a').click(function(event){
			$(this).siblings('.selected').removeClass('selected');	
			$(this).addClass('selected');
		});
	});
}
