/* **********************************************
* Fade In Content Viewer script- by JavaScript Kit (www.javascriptkit.com)
* This notice must stay intact for usage
* Visit JavaScript Kit at http://www.javascriptkit.com/ for this script and 100s more
********************************************** */




// Fade In Content Viewer: By JavaScript Kit: http://www.javascriptkit.com

$(function(){
	fadecontentviewer.init('fadeImgBox', 'fadeImg', 'fadeNav', 0, 1000)
});

var pageVal = '0';
var pageFix = '0';
var fadecontentviewer ={
	csszindex: 100,
	fade:function($allcontents, togglerid, selected, speed){
		var selected = parseInt(selected);
		var $togglerdiv = $('#'+togglerid);
		var $target = $allcontents.eq(selected);
		if ($target.length==0){	//if no content exists at this index position (ie: stemming from redundant pagination link)
			alert('No content exists at page number '+selected+'!');
			return;
		}
		if($togglerdiv.attr('lastselected')==null || parseInt($togglerdiv.attr('lastselected'))!=selected){
			var $toc = $('#'+togglerid+' .toc');
			var $selectedlink = $toc.eq(selected);
			$('#'+togglerid+' .next').attr('nextpage', (selected<$allcontents.length-1)? selected+1+'pg' : 0+'pg');
			$('#'+togglerid+' .prev').attr('previouspage', (selected==0)? $allcontents.length-1+'pg' : selected-1+'pg');
			$target.css({zIndex: this.csszindex++, visibility: 'visible'});
			$target.hide();
			$target.fadeIn(speed);
			$toc.removeClass('selected');
			$selectedlink.addClass('selected');
			$togglerdiv.attr('lastselected', selected+'pg');
		}
	},

	setuptoggler:function($allcontents, togglerid, speed, contentsSumVal){
		switchFlg = true;
		var $fadeImg = $('.fadeImg');
		var $toc = $('#'+togglerid+' .toc');
		$toc.each(function(index){
				$(this).attr('pagenumber', index+'pg');
		});
		var $next = $('#'+togglerid+' .next');
		var $prev = $('#'+togglerid+' .prev');
		$next.click(function(){
			clearInterval(autoSet);
			fadecontentviewer.fade($allcontents, togglerid, $(this).attr('nextpage'), speed);
			numNext = $(this).attr('nextpage').substring(0,1);
			if(numNext >= 1){
				numNext--;
			}else if(numNext==0){
				numNext = contentsSumVal;
			}
			pageVal = numNext;
			autoSet = setInterval(function(){fadecontentviewer.autoSlide($allcontents, togglerid, speed, contentsSumVal)}, 5000);
			return false;
		})
		$prev.click(function(){
			clearInterval(autoSet);
			fadecontentviewer.fade($allcontents, togglerid, $(this).attr('previouspage'), speed);
			numPrev = $(this).attr('previouspage').substring(0,1);
			if(pageVal < contentsSumVal){
				pageVal++;
			}else if(pageVal == contentsSumVal){
				pageVal = 0;
			}
			pageVal = numPrev;
			autoSet = setInterval(function(){fadecontentviewer.autoSlide($allcontents, togglerid, speed, contentsSumVal)}, 5000);
			return false;
		});
		$toc.click(function(){
			clearInterval(autoSet);
			fadecontentviewer.fade($allcontents, togglerid, $(this).attr('pagenumber'), speed);
			numPage = $(this).attr('pagenumber').substring(0,1);
			pageVal = numPage;
			autoSet = setInterval(function(){fadecontentviewer.autoSlide($allcontents, togglerid, speed, contentsSumVal)}, 5000);
			return false;
		});
		$fadeImg.hover(function(e){
			switchFlg = false;
			return false;
		},function(e){
			switchFlg = true;
			return false;
		});
	},

	autoSlide:function($allcontents, togglerid, speed, contentsSumVal){
		if(switchFlg){
			if(pageVal < contentsSumVal){
				pageVal++;
			}else if(pageVal == contentsSumVal){
				pageVal = 0;
			}
			fadecontentviewer.fade($allcontents, togglerid, pageVal, speed);
		}
	},

	init:function(fadeid, contentclass, togglerid, selected, speed){
		// contents count
		var classname = 'fadeImg';
		var contentsSum = $('.fadeImg').length;
		contentsSumVal = new String(contentsSum);
		contentsSumVal--;
		var faderheight = $('#'+fadeid).height();
		var $fadecontents = $('#'+fadeid+' .'+contentclass);
		$fadecontents.css({top: 0, left: 0, height: faderheight, visibility: 'hidden'});
		fadecontentviewer.setuptoggler($fadecontents, togglerid, speed, contentsSumVal);
		setTimeout(function(){fadecontentviewer.fade($fadecontents, togglerid, selected, speed)}, 100);
		$(window).bind('unload', function(){	// clean up
			$('#'+togglerid+' .toc').unbind('click');
			$('#'+togglerid+' .next', '#'+togglerid+' .prev').unbind('click');
		});
		autoSet = setInterval(function(){fadecontentviewer.autoSlide($fadecontents, togglerid, speed, contentsSumVal)}, 6000);
	}
}

