/**
 * jQuery Li Slider 
 * Copyright (c) 2010 Spotnil (http://spotnil.com)
 * Version: 0.1 (11/15/2010)
 */
(function($) {	
		  		  
		  
	$.fn.sp_Li_Slider = function(client_settings) {
		
		var default_settings = { 	
			width				:	'',
			height				:	'',
			auto_play 			: 	true,
			auto_hide 			: 	true,
			delay     			: 	3000,
			trans_period		:	2000,
			animation			:   "none",
			vert_sections		:	30,
			sqr_sections_Y		:	10,
			sqr_sections_X		:	0,
			buttons_show		:	true,
			custom_anim			:   '',
			active_links		:	true,
			buttons_hide_time 	:	3000,
			buttons_hide_delay	:	500,
			buttons_show_time	:	500,
			buttons_show_delay	:	500
		};
				
		
		var settings = $.extend({}, default_settings, client_settings);

		return this.each(
			function() {
				var slider = new Slider($(this),settings);
				slider.init();
			}
		);
		
	}

		function Slider($newSlider,settings) {
				var $slider = $($newSlider);
				settings.width = parseInt($slider.css('width'));
				settings.height = parseInt($slider.css('height'));				
				var prefix = $slider.attr('id');
				var $sliderImage = $slider.find('li');
				var container;
				var currentImage, numberImages, prevPosition;
				var playSliderRec = null;
				var activeButtons ;
				var $play_btn, $pause_btn;
				var sections = '';
				var animRandom = 0;
				var animRandomNumber, animRandomPointer=0;
				var animRandomCustom, animRandomCustomNumber=0;
				var showContent;
				var inTransition;
				var width4, height4;

				
				var animations = new Array();
					animations['None'] = 0;
					animations['Fade'] = animations['None']+1;
					animations['Slide-Left'] =animations['Fade']+1;
					animations['Slide-Right'] =animations['Slide-Left']+1;
					animations['Slide-Down'] = animations['Slide-Right']+1;
					animations['Slide-Up'] = animations['Slide-Down']+1;
					animations['Curtain_Center'] = animations['Slide-Up']+1;					
					animations['Center_Center_Plus'] =animations['Curtain_Center']+1;				
					animations['Curtain_Center_Center'] = animations['Center_Center_Plus']+1;					
					animations['Curtain_Center_Center_Plus'] = animations['Curtain_Center_Center']+1;
					animations['Replace-Right'] = animations['Curtain_Center_Center_Plus']+1;
					animations['Replace-Left'] = animations['Replace-Right']+1;
					animations['Replace-Up'] = animations['Replace-Left']+1;
					animations['Replace-Down'] = animations['Replace-Up']+1;					
					
					animations['4-to-Center'] = animations['Replace-Down']+1;
					animations['4-from-Center'] = animations['4-to-Center']+1;
					animations['4-to-Center-Cont'] = animations['4-from-Center']+1;
					animations['4-from-Center-Cont'] = animations['4-to-Center-Cont']+1;
					animations['4-to-Center-Diag'] = animations['4-from-Center-Cont']+1;
					animations['4-from-Center-Diag'] = animations['4-to-Center-Diag']+1;
					animations['4-Diag'] = animations['4-from-Center-Diag']+1;
					
					animations['Blind-Right'] = animations['4-Diag']+1;
					animations['Blind-Right-Cons'] = animations['Blind-Right']+1;
					animations['Blind-Right-Cons-Full'] = animations['Blind-Right-Cons']+1;
					animations['Blind-Right-Fade'] = animations['Blind-Right-Cons-Full']+1;
					animations['Blind-Down-Cons-Right'] = animations['Blind-Right-Fade']+1;
					animations['Blind-Down-Cons-Center'] = animations['Blind-Down-Cons-Right']+1;
					
					animations['Sqr-Down-Left-Cons'] = animations['Blind-Down-Cons-Center']+1;
					animations['Sqr-Random'] = animations['Sqr-Down-Left-Cons']+1;
					animations['Consistently'] = animations['Sqr-Random']+1;
					animations['Random'] = animations['Consistently']+1;
					animations['Random-Custom'] = animations['Random']+1;


				
				
				
				this.init = function() {
				currentImage = 0;
				numberImages = $("ul li",$slider).size();
				
				initFirstImg();
				if(settings.buttons_show){
					initButtons();
					initPointers();
					initActiveButtons();
				}
				initAttributes();
				if(settings.active_links)
					initLinks();
				initStructure();
//				initSections();
//				initVertSections();
//				initSqrSections();
				initAnimation();
								
				if (settings.auto_play)
					playSlider();
				
				//display initial image
//				loadContent(currIndex);
			}
			
			var inProgres = function(fun){

			if 	(inTransition) {

			}else
			
					fun();
			}
			
			var inProgresSpec = function(pos){
				if 	(inTransition) {
				}else			
					showContent(pos);
			}
				
				
			var initButtons = function() {
				
					var $prev_btn = $('<div class="prev-btn"><a href="prev"></a></div>');
					var $next_btn = $('<div class="next-btn"><a href="next"></a></div>');
					$play_btn = $('<div class="play-btn"><a href="play"></a></div>');
					$pause_btn = $('<div class="pause-btn"><a href="pause"></a></div>');
					
					$prev_btn	.click(function(event) {event.preventDefault()})
								.click(function(){stopSlider();													
													inProgres(showPrevImage)})
								.css('display', 'none');
					
					$next_btn	.click(function(event) {event.preventDefault()})
								.click(function(){stopSlider();
													inProgres(showNextImage);
													})
								.css('display', 'none');
					
					$play_btn	.click(function(event) {event.preventDefault()})
								.click(function(){settings.auto_play = true;
													activeButtons = activeButtons.add( $pause_btn.show()).not( $play_btn.hide());
													playSlider();})
								.css('display', 'none');
					
					$pause_btn	.click(function(event) {event.preventDefault()})
								.click(function(){stopSlider()})
								.css('display', 'none');
					$slider.append($prev_btn);
					$slider.append($next_btn);
					$slider.append($play_btn);
					$slider.append($pause_btn);					
					
					activeButtons = $( [] ).add( $prev_btn ).add( $next_btn );
					if (settings.auto_play) activeButtons = activeButtons.add( $pause_btn )
					else activeButtons = activeButtons.add( $play_btn )
					
			}	
			
			var initPointers = function() {
				
				var allPointers = $('<div class="nav-btns" ></div>').css('display', 'none');
				
				for (i=1;i<=numberImages;i++){
//					var $pointer = $('<a href="b'+i+'"></a>');
					var $pointer = $('<a href="b'+i+'"></a>');
//					var poz = i-1;
					$pointer.click(function(event) {	event.preventDefault();
														if (!$(this).hasClass('current-slide')){
																stopSlider();
																inProgresSpec($(this).index())}})								
//								.css('display', 'none');
					$($pointer).appendTo(allPointers);
					
				}
				activeButtons = activeButtons.add( allPointers);
				$slider.append(allPointers);
				$($(".nav-btns",$slider).find('>a')[currentImage]).addClass('current-slide');
					
			}
			
			var initFirstImg = function() {
				
				$($sliderImage[currentImage]).show();								
			}
			
			var initActiveButtons = function() {
				if (settings.auto_hide){
						$slider.not(activeButtons)	.mouseenter(function(){activeButtons.delay(settings.buttons_show_delay).fadeIn(settings.buttons_show_time);})
								.mouseleave(function(){activeButtons.delay(settings.buttons_hide_delay).fadeOut(settings.buttons_hide_time);})
//						if (settings.auto_play) activeButtons.show().delay(4000).fadeOut(500);
				}else activeButtons.show();
				
//				activeButtons.not($play_btn).click( stopSlider);
					
			}
			
			var initLinks = function(){
				
				
				$slider.mouseup(function(event){
								
									if (!$(event.target).parent().is('div.nav-btns, div.prev-btn, div.next-btn, div.play-btn, div.pause-btn'))  {
	
										var info_link = $($sliderImage[currentImage]).find('>a').attr('href');
										if (info_link)
										document.location.href = info_link;
									}
								})
			}
			
			var initAttributes = function() {
				
				var image = 0;
				var nov, custClass, custClasses, transition, delay;
				
				for ( image; image < $sliderImage.size(); image++){
						
						custClass = $($sliderImage[image]).attr('class');
						custClasses = custClass.split(' ');
						for (i=0; i < custClasses.length; i++){
							
								if( custClasses[i].indexOf('transition_') > -1)
								transition = custClasses[i].replace('transition_','');
								if( custClasses[i].indexOf('delay_') > -1)
								delay = custClasses[i].replace('delay_',''); 
						}

						$($sliderImage[image]).data({'delay':delay, 'transition': transition});
						delay = '';
						transition = '';
					}
					
				if (settings.animation == 'Random'){
					
					animRandomNumber = new Array();
					for (i = 0; i < animations['Random']-1; i++){
						animRandomNumber[i] = i;
					}
					var oldVal, newVal;
					for (i = 0; i < animations['Random']-1; i++){
						newVal = Math.floor(Math.random()*(animations['Random']-1));
						oldVal = animRandomNumber[i];						
						animRandomNumber[i] = animRandomNumber[newVal];
						animRandomNumber[newVal] = oldVal;
					}					
				}
				
				if (settings.animation == 'Random-Custom'){
					
					animRandomCustom = settings.custom_anim.split(' ');										
				}
			}
			
			var initStructure = function(){								
			
				container = $('<div class="li-banner-image-wrap" ></div>').css({'position': 'absolute', 'top': '0px', 'left': '0px', 'overflow': 'hidden','height':settings.height, 'width':settings.width}); 
				$('ul',$slider).before(container);
				
				if ((settings.animation == 'Random') || (settings.animation == 'Consistently')){
					
					initSections();
					initVertSections();
					initSqrSections();
				}else{
				
				var animStructure = new Array();
				animStructure[0]=0;
				animStructure[1]=0;
				animStructure[2]=0;
				animStructure[3]=0;
				
				var setAnimStructure = function(typeAnim){
					
					switch (typeAnim){
							
							case 0: case 1: case 2: case 3: case 4: case 5: case 6: 
							case 7: case 8 : case 9: case 10: case 11: case 12: case 13:
								animStructure[0] ++;
								break;
							 case 14: case 15: case 16: case 17: case 18: case 19: case 20:
								animStructure[1] ++;
								break;
							case 21: case 22: case 23: case 24: case 25: case 26: 
								animStructure[2] ++;
								break;
							case 27: case 28:
								animStructure[3] ++;
								break;
						}
				}
				
				for ( var image=0; image < $sliderImage.size(); image++){
						
						var anim = $($sliderImage[image]).data('transition');
						var typeAnim = animations[anim];
						setAnimStructure(typeAnim);
					}
				
				setAnimStructure(animations[settings.animation]);
				if (settings.animation == 'Random-Custom'){
					
					for(var i=0; i< animRandomCustom.length; i++){
						
						setAnimStructure(animations[animRandomCustom[i]]);
					}
				}
				
				if(animStructure[1]>0)
					initSections();

				if(animStructure[2]>0)
					initVertSections();
					
				if(animStructure[3]>0)
					initSqrSections();
				}	
				
			}
			
			var initSections = function() {
				
				var section, sectionsX = 2, sectionsY = 2 ;
				var bgColor = $slider.css("background-color");
				var url = "";
				var xPos, tOffset;
				var width = Math.ceil(parseInt(settings.width)/sectionsX);
				width4 = width*2;
				var height = Math.ceil(parseInt(settings.height)/sectionsY);
				height4 = height*2;
								
				for ( var y=0; y < sectionsY; y++){
					for ( var i=0; i < sectionsX; i++){
												
						section = '<div class="sectors" id="'+prefix+'-sect-'+y+'-'+i+'" style="left:'+i*width+'px; top: '+y*height+'px; width:'+width+'px; height:'+height+'px; position: absolute; opacity: 0" >';

						sections = $(sections).add($(section).css({background:bgColor + " url('"+ url +"') no-repeat ", backgroundPosition:-i*width + "px " + -y*height + "px " , "z-index":-100}));
													
					}
				}
				$(container,$slider).append(sections);
				
					
			}
			
			var initVertSections = function() {
				
				var section, sectionsX = settings.vert_sections;
				var bgColor = $slider.css("background-color");
				var url = "";				
				var width = Math.ceil(parseInt(settings.width)/sectionsX);
				var sectionsXRed = Math.ceil(settings.width/width);
				settings.vert_sections = sectionsXRed;
				var height = parseInt(settings.height);

				
					for ( i=0; i < sectionsXRed; i++){
												
						section = '<div class="v-sectors" id="'+prefix+'-v'+i+'" style="left:'+i*width+'px; top: 0px; width:'+width+'px; height:'+height+'px; position: absolute; opacity: 0" >';

						sections = $(sections).add($(section).css({background:bgColor + " url('"+ url +"') no-repeat ", backgroundPosition:-i*width + "px 0px " , "z-index":-100}));
													
					}
				$(container,$slider).append(sections);
				
					
			}
			
			var initSqrSections = function() {
				
				var section, sectionsY = settings.sqr_sections_Y, sectionsX ;
				var bgColor = $slider.css("background-color");
				var url = "";				
				var height = Math.ceil(settings.height/sectionsY);
				var sectionsYRed = Math.ceil(settings.height/height);
				settings.sqr_sections_Y = sectionsYRed;
				sectionsX = Math.ceil(settings.width/height);
				settings.sqr_sections_X = sectionsX;
				var width = height;
//				var prefix = $slider.attr('id');

				for (y = 0; y < sectionsYRed; y++){
					for ( i=0; i < sectionsX; i++){
												
						section = '<div id="'+prefix+'-sqr-'+i+'-'+y+'" class="sqr-sectors" style="left:'+i*width+'px; top: '+y*height+'px; width:'+width+'px; height:'+height+'px; position: absolute; opacity: 0" >';

						sections = $(sections).add($(section).css({background:bgColor + " url('"+ url +"') no-repeat ", backgroundPosition:-i*width + "px " + -y*height + "px " , "z-index":-100}));
													
					}
				}
				$(container,$slider).append(sections);
				
					
			}
			
			
			
			var initAnimation = function() {
				
				var anim = animations[settings.animation];
				
				switch(anim){
					case animations['None']:
						showContent= function(pos){
								showImage(pos);
							};
						break;
					case animations['Fade']:
						showContent = function(pos){
								showImage_Fade(pos);
							};
						break;
					case animations['Slide-Left']:
						showContent = function(pos){
								showImage_Slide_Left_Right(pos,'-');
							};
						break;
					case animations['Slide-Right']:
						showContent = function(pos){
								showImage_Slide_Left_Right(pos,'+');
							};
						break;
					case animations['Slide-Down']:
						showContent = function(pos){
								showImage_Slide_Down(pos);
							};
						break;
					case animations['Slide-Up']:
						showContent = function(pos){
								showImage_Slide_Up(pos);
							};
						break;
					case animations['Curtain_Center']:
						showContent = function(pos){
								showImage_Curtain_Center(pos);
							};
						break;
					case animations['Curtain_Center_Center']:
						showContent = function(pos){
								showImage_Curtain_Center_Center(pos);
							};
						break;
					case animations['Replace-Right']:
						showContent = function(pos){
								showImage_Replace_Right(pos);
							};
						break;
					case animations['Replace-Left']:
						showContent = function(pos){
								showImage_Replace_Left(pos);
							};
						break;
					case animations['Replace-Up']:
						showContent = function(pos){
								showImage_Replace_Up(pos);
							};
						break;
					case animations['Replace-Down']:
						showContent = function(pos){
								showImage_Replace_Down(pos);
							};
						break;
					case animations['4-to-Center']:
						showContent = function(pos){
								showImage_4_to_center(pos);
							};
						break;
					case animations['4-from-Center']:
						showContent = function(pos){
								showImage_4_from_center(pos);
							};
						break;
					case animations['4-to-Center-Cont']:
						showContent = function(pos){
								showImage_4_to_center_cont(pos);
							};
						break;
					case animations['4-from-Center-Cont']:
						showContent = function(pos){
								showImage_4_from_center_cont(pos);
							};
						break;
					case animations['4-to-Center-Diag']:
						showContent = function(pos){
								showImage_4_to_center_diag(pos);
							};
						break;
					case animations['4-from-Center-Diag']:
						showContent = function(pos){
								showImage_4_from_center_diag(pos);
							};
						break;
					case animations['4-Diag']:
						showContent = function(pos){
								showImage_4_diag(pos);
							};
						break;
					case animations['Blind-Right']:
						showContent = function(pos){
								showImage_blind_right(pos);
							};
						break;
					case animations['Blind-Right-Cons']:
						showContent = function(pos){
								showImage_blind_right_cons(pos);
							};
						break;
					case animations['Blind-Right-Cons-Full']:
						showContent = function(pos){
								showImage_blind_right_cons_full(pos);
							};
						break;
					case animations['Blind-Right-Fade']:
						showContent = function(pos){
								showImage_blind_right_fade(pos);
							};
						break;
					case animations['Blind-Down-Cons-Right']:
						showContent = function(pos){
								showImage_blind_down_cons_right(pos);
							};
						break;
					case animations['Blind-Down-Cons-Center']:
						showContent = function(pos){
								showImage_blind_down_cons_center(pos);
							};
						break;
					case animations['Blind-Up-Cons-Asinhr']:
						showContent = function(pos){
								showImage_blind_Up_cons_asinhr(pos);
							};
						break;
					case animations['Sqr-Down-Cons']:
						showContent = function(pos){
								showImage_sqr_down_cons(pos);
							};
						break;
					case animations['Sqr-Down-Left-Cons']:
						showContent = function(pos){
								showImage_sqr_down_left_cons(pos);
							};
						break;
					case animations['Sqr-Random']:
						showContent = function(pos){
								showImage_sqr_random(pos);
							};
						break;
					case animations['Consistently']:
						showContent = function(pos){
								showImage_Random(pos,'Consistently');
							};
						break;
					case animations['Random']:
						showContent = function(pos){
								showImage_Random(pos,'Random',false);
							};
						break;Random-Custom
					case animations['Random-Custom']:
						showContent = function(pos){
								showImage_Random(pos,'Random-Custom',false);
							};
						break;
						
					default:
						showContent = function(pos){
								showImage_Fade(pos);
							};
				}
			}
			
			var showNextImage = function() {
				
					var pos = (currentImage<(numberImages-1))?(currentImage+1):(0);
					var transition = $($sliderImage[pos]).data('transition');
					if(transition)
					showImage_Random(pos,'',transition)
					else showContent(pos);
					

//					(currentImage<(numberImages-1))?showContent(currentImage+1):showContent(0);
					
			}
			
			var showPrevImage = function() {

					(currentImage>0)?showContent(currentImage-1):showContent(numberImages-1);
			}
			
			var newPosition = function(position) {
				
				$($(".nav-btns",$slider).find('>a')[currentImage]).removeClass('current-slide');				
				$($(".nav-btns",$slider).find('>a')[position]).addClass('current-slide');
				return position;				
			}
			
			var setTransition = function(val){
				
				inTransition = val;
			}
			
			var playSlider = function(){
				
				var currDelay = $($sliderImage[currentImage]).data('delay');
				
				if (isNaN(currDelay) || currDelay == '')
				currDelay = settings.delay				
				playSliderRec = setTimeout(showNextImage,Number(currDelay) + Number(settings.trans_period));
			}
			
			var stopSlider = function(){
				
				activeButtons = activeButtons.add( $play_btn.show()).not( $pause_btn.hide());
				clearTimeout(playSliderRec);
				playSliderRec = null;
				settings.auto_play = false;				
			}
			
			var autoPlaySlider = function(){
				if (settings.auto_play)
					playSlider();
			}
			
			
			var showImage_Fade = function(position) {
					
					setTransition(true);
					$($sliderImage[currentImage]).fadeOut(settings.trans_period);
					$($sliderImage[position]).fadeIn(settings.trans_period);
					currentImage = newPosition(position);
					setTransition(false);
					if (settings.auto_play)
					playSlider();		
			}
			
			var showImage = function(position) {
					
					setTransition(true);
					$($sliderImage[currentImage]).hide();
					$($sliderImage[position]).show();
					currentImage = newPosition(position);
					setTransition(false);
					if (settings.auto_play)
					playSlider();
			}
			
			var showImage_Slide_Up = function(position) {
				
					setTransition(true);
					$($sliderImage[position]).css({'z-index':1, 'height': settings.height}).show() ;
					$($sliderImage[currentImage]).css('z-index',2).animate({
						opacity: 1,
						height: '0px'
					  }, settings.trans_period ,function(){
						  $($sliderImage[prevPosition]).css({'z-index':'', 'height': '', 'opacity': '' }).hide();
						  $($sliderImage[currentImage]).css({'z-index':'', 'height': '', 'opacity': '' })
						  setTransition(false);
						  autoPlaySlider();
						  });					
					prevPosition = currentImage;
					currentImage = newPosition(position);
			}
			
			var showImage_Slide_Down = function(position) {
				
					setTransition(true);
					$($sliderImage[currentImage]).css('z-index',1);					
					$($sliderImage[position]).css('z-index',2).slideDown(settings.trans_period,function(){
						  													$($sliderImage[prevPosition]).css('z-index',"").hide();
																			setTransition(false);
																			autoPlaySlider();
																			});
					prevPosition = currentImage;
					currentImage = newPosition(position);
			}
			
			var showImage_Slide_Left_Right = function(position,dir) {
				
					setTransition(true);
					$($sliderImage[position]).css('z-index',1).show();					
					$($sliderImage[currentImage]).css('z-index',2).animate({
									 left: dir+settings.width
									 },settings.trans_period,function(){
						  										$($sliderImage[prevPosition]).css({'left':'', 'z-index': '' }).hide();
																setTransition(false);
																autoPlaySlider();
																})
					prevPosition = currentImage;
					currentImage = newPosition(position);	
			}
			
			
			var showImage_Replace_Right = function(position,dir) {
				
					setTransition(true);
					$('img',$sliderImage[position]).css({'width':0, 'height':settings.height});
					$('img',$sliderImage[currentImage]).css({'position': 'absolute'});
					$($sliderImage[position]).css({'z-index':1}).show();
					
					$($sliderImage[currentImage]).css('z-index',0);
					$('img',$sliderImage[currentImage]).animate({
												width: 0,
												height: settings.height,
												left: settings.width
												},settings.trans_period);
					$('img',$sliderImage[position]).animate({
												width: settings.width,
												height: settings.height
												},settings.trans_period, function(){
														$($sliderImage[currentImage]).css({'z-index': '' });
														$($sliderImage[prevPosition]).css({'z-index': '' }).hide();
														$('img',$sliderImage[prevPosition]).css({'width':'', 'height':'','position': '','left':''})
														$('img',$sliderImage[currentImage]).css({'width':'', 'height':'' })
																setTransition(false);
																autoPlaySlider();
													
												});
					
					prevPosition = currentImage;
					currentImage = newPosition(position);	
			}
			
			var showImage_Replace_Left = function(position,dir) {
				
					setTransition(true);
					$('img',$sliderImage[position]).css({'width':0, 'height':settings.height, 'left':settings.width, 'position': 'absolute'})
					$($sliderImage[position]).css({'z-index':1}).show();
					
					$($sliderImage[currentImage]).css('z-index',0);
					$('img',$sliderImage[currentImage]).css({'width':settings.width, 'height':settings.height}).animate({
												width: 0
												},settings.trans_period);
					$('img',$sliderImage[position]).animate({
												width: settings.width,
												left: 0
												},settings.trans_period, function(){
														$($sliderImage[currentImage]).css({'z-index': '' });
														$($sliderImage[prevPosition]).css({'z-index': '' }).hide();
														$('img',$sliderImage[prevPosition]).css({'width':'', 'height':''})
														$('img',$sliderImage[currentImage]).css({'width':'', 'height':'','left':'' })
																setTransition(false);
																autoPlaySlider();
													
												});
					
					prevPosition = currentImage;
					currentImage = newPosition(position);	
			}
			
			var showImage_Replace_Up = function(position,dir) {
				
					setTransition(true);
					$('img',$sliderImage[position]).css({'width':settings.width, 'height':0, 'top':settings.height, 'position': 'absolute'})
					$($sliderImage[position]).css({'z-index':1}).show();
					
					$($sliderImage[currentImage]).css('z-index',0);
					$('img',$sliderImage[currentImage]).animate({
												height: 0,
												width:  settings.width
												},settings.trans_period);
					$('img',$sliderImage[position]).animate({
												height: settings.height,
												top: 0
												},settings.trans_period, function(){
														$($sliderImage[currentImage]).css({'z-index': '' });
														$($sliderImage[prevPosition]).css({'z-index': '' }).hide();														
														$('img',$sliderImage[currentImage]).css({'width':'', 'height':'','top':'','position': '' });
														$('img',$sliderImage[prevPosition]).css({'width':'', 'height':''});
														
														setTransition(false);
														autoPlaySlider();
											
												});
					
					prevPosition = currentImage;
					currentImage = newPosition(position);	
			}
			
			
			var showImage_Replace_Down = function(position,dir) {
				
					setTransition(true);
					$('img',$sliderImage[position]).css({'width':settings.width, 'height':0})
					$('img',$sliderImage[currentImage]).css({'position': 'absolute'})
					$($sliderImage[position]).css({'z-index':1}).show();
					
					$($sliderImage[currentImage]).css('z-index',0);
					$('img',$sliderImage[currentImage]).animate({
												top: settings.height,
												height: 0,
												width:  settings.width
												},settings.trans_period);
					$('img',$sliderImage[position]).animate({
												height: settings.height,
												width: settings.width
												},settings.trans_period, function(){
														$($sliderImage[currentImage]).css({'z-index': '' });
														$($sliderImage[prevPosition]).css({'z-index': '' }).hide();														
														$('img',$sliderImage[currentImage]).css({'width':'', 'height':'' });
														$('img',$sliderImage[prevPosition]).css({'width':'', 'height':'','position': '','top':''});
														
														setTransition(false);
														autoPlaySlider();
											
												});
					
					prevPosition = currentImage;
					currentImage = newPosition(position);	
			}
			
			/*var showImage_Curtain_Center = function(position) {
				
					setTransition(true);
					$($sliderImage[position]).css('z-index',1).show();					
					$($sliderImage[currentImage]).css('z-index',2).animate({
									 left: settings.width/2+'px',
									 width: 0
									 },settings.trans_period,function(){
						  										$($sliderImage[prevPosition]).css({'left':'', 'width':'', 'z-index': '' }).hide();
																setTransition(false);
																autoPlaySlider();
																})
					prevPosition = currentImage;
					currentImage = newPosition(position);	
			}*/
			
			var showImage_Curtain_Center_Plus = function(position) {
				
					setTransition(true);
					$($sliderImage[position]).css('z-index',1).show();					
					$($sliderImage[currentImage]).css('z-index',2).animate({
									 left: settings.width/2+'px',
									 width: 0
									 },settings.trans_period/2,'linear')
																	.animate({
									 left: (settings.width/2-15)+'px',
									 width: '30px'
									 },settings.trans_period/15)
																	.animate({
									 left: settings.width/2+'px',
									 width: 0
									 },settings.trans_period/10,function(){
						  										$($sliderImage[prevPosition]).css({'left':'', 'width':'', 'z-index': '' }).hide();
																setTransition(false);
																autoPlaySlider();
																})
					prevPosition = currentImage;
					currentImage = newPosition(position);	
			}
			
			var showImage_Curtain_Center = function(position) {
				
					setTransition(true);
					$($sliderImage[position]).css('z-index',1).show();					
					$($sliderImage[currentImage]).css('z-index',2).animate({
									 left: settings.width/2+'px',
									 width: 0
									 },settings.trans_period/2,function(){
						  										$($sliderImage[prevPosition]).css({'left':'', 'width':'', 'z-index': '' }).hide();
																setTransition(false);
																autoPlaySlider();
																})
					prevPosition = currentImage;
					currentImage = newPosition(position);	
			}
			
			var showImage_Curtain_Center_Center_Plus = function(position) {
				
					setTransition(true);
					$($sliderImage[position]).css('z-index',1).show();					
					$($sliderImage[currentImage]).css('z-index',2).animate({
									 left: settings.width/2+'px',
									 top: settings.height/2+'px',
									 width: 0,
									 height: 0
									 },settings.trans_period/2,'linear')
																	.animate({
									 left: (settings.width/2-15)+'px',
									 top: (settings.height/2-15)+'px',
									 width: '30px',
									 height: '30px'
									 },settings.trans_period/15)
																	.animate({
									 left: settings.width/2+'px',
									 top: settings.height/2+'px',
									 height: 0,
									 width: 0
									 },settings.trans_period/10,function(){
						  										$($sliderImage[prevPosition]).css({'left':'', 'width':'','top':'', 'height':'', 'z-index': '' }).hide();
																setTransition(false);
																autoPlaySlider();
																})
					prevPosition = currentImage;
					currentImage = newPosition(position);	
			}
			
			var showImage_Curtain_Center_Center = function(position) {
				
					setTransition(true);
					$($sliderImage[position]).css('z-index',1).show();					
					$($sliderImage[currentImage]).css('z-index',2).animate({
									 left: settings.width/2+'px',
									 top: settings.height/2+'px',
									 width: 0,
									 height: 0
									 },settings.trans_period/2,function(){
						  										$($sliderImage[prevPosition]).css({'left':'', 'width':'','top':'', 'height':'', 'z-index': '' }).hide();
																setTransition(false);
																autoPlaySlider();
																})
					prevPosition = currentImage;
					currentImage = newPosition(position);	
			}
			
			var showImage_4_to_center = function(position) {
				
//					$($sliderImage[currentImage]).show();
					setTransition(true);
					var url = $('img',$sliderImage[position]).attr('src');

					$('.sectors', $slider).css({"background-image": "url('"+ url +"')","opacity":1});
					
					$('#'+prefix+'-sect-0-0').css({left:"-"+width4/2+"px"})
							.animate({
									 left: "0px"
									 },settings.trans_period)
					$('#'+prefix+'-sect-0-1').css({top:"-"+height4/2+"px"})
							.animate({
									 top: "0px"
									 },settings.trans_period);
					$('#'+prefix+'-sect-1-0').css({top:height4+"px"})
							.animate({
									 top: height4/2+"px"
									 },settings.trans_period);
					$('#'+prefix+'-sect-1-1').css({left:width4+"px"})
							.animate({
									 left: width4/2+"px"
									 },settings.trans_period, function(){
												 $($sliderImage[prevPosition]).hide();
												 $($sliderImage[currentImage]).show();
												 $('.sectors',$slider).css({"background-image": "url('')","opacity":0});										
												 setTransition(false);
												 autoPlaySlider();
									 							});							
					prevPosition = currentImage;
					currentImage = newPosition(position);
			}
			
			var showImage_4_from_center_cont = function(position) {
				
					setTransition(true);
					$($sliderImage[position]).show();//.css("z-index",-200)
					var url = $('img',$sliderImage[currentImage]).attr('src');

					$('.sectors', $slider).css({"background-image": "url('"+ url +"')","opacity":1});
					$($sliderImage[currentImage]).css("z-index","").hide();
					
					$('#'+prefix+'-sect-0-0').css({left:"0px", top:"0px"})
							.animate({
									 left: "-"+width4/2+"px",
									 opacity:0
									 },settings.trans_period)
					$('#'+prefix+'-sect-0-1').css({top:"0px", left:width4/2+"px"})
							.delay(settings.trans_period/4).animate({
									 top: "-"+height4/2+"px",
									 opacity:0
									 },settings.trans_period);
					$('#'+prefix+'-sect-1-0').css({top:height4/2+"px", left:"0px"})
							.delay(3*settings.trans_period/4).animate({
									 top: height4+"px",
									 opacity:0
									 },settings.trans_period, function(){
																$('.sectors', $slider).css({"background-image": "url('')"});
																setTransition(false);
																autoPlaySlider();
										 					});
					$('#'+prefix+'-sect-1-1').css({left:width4/2+"px", top:height4/2+"px"})
							.delay(2*settings.trans_period/4).animate({
									 left: width4+"px",
									 opacity:0
									 },settings.trans_period);
					currentImage = newPosition(position);

			}
			
			var showImage_4_from_center = function(position) {
		
					setTransition(true);
					$($sliderImage[position]).show();//.css("z-index",-200)
					var url = $('img',$sliderImage[currentImage]).attr('src');

					$('.sectors', $slider).css({"background-image": "url('"+ url +"')","opacity":1});										
					$($sliderImage[currentImage]).hide();
					
					$('#'+prefix+'-sect-0-0').css({left:"0px", top:"0px"})
							.animate({
									 left: "-"+width4/2+"px",
									 opacity:0
									 },settings.trans_period)
					$('#'+prefix+'-sect-0-1').css({top:"0px", left:width4/2+"px"})
							.animate({
									 top: "-"+height4/2+"px",
									 opacity:0
									 },settings.trans_period);
					$('#'+prefix+'-sect-1-0').css({top:height4/2+"px", left:"0px"})
							.animate({
									 top: height4+"px",
									 opacity:0
									 },settings.trans_period);
					$('#'+prefix+'-sect-1-1').css({left:width4/2+"px", top:height4/2+"px"})
							.animate({
									 left: width4+"px",
									 opacity:0
									 },settings.trans_period, function(){
															 $('.sectors', $slider).css({"background-image": "url('')"});
															 	setTransition(false);
																autoPlaySlider();
									 						});													
					currentImage = newPosition(position);
			}
			
			var showImage_4_to_center_cont = function(position) {
				
//					$($sliderImage[currentImage]).show();
					setTransition(true);
					var url = $('img',$sliderImage[position]).attr('src');

					$('.sectors', $slider).css({"background-image": "url('"+ url +"')","opacity":0});
					
					
					$('#'+prefix+'-sect-0-0').css({left:"-"+width4/2+"px"})
							.animate({
									 left: "0px",
									 opacity:1
									 },settings.trans_period)
					$('#'+prefix+'-sect-0-1').css({top:"-"+height4/2+"px"})
							.delay(settings.trans_period/4).animate({
									 top: "0px",
									 opacity:1
									 },settings.trans_period);
					$('#'+prefix+'-sect-1-0').css({top:height4+"px"})
							.delay(3*settings.trans_period/4).animate({
									 top: height4/2+"px",
									 opacity:1
									 },settings.trans_period,function(){
										 							$($sliderImage[prevPosition]).hide();
																	$($sliderImage[currentImage]).show();
												 $('.sectors', $slider).css({"background-image": "url('')","opacity":0});
												 					setTransition(false);
																	autoPlaySlider();
									 								});
					$('#'+prefix+'-sect-1-1').css({left:width4+"px"})
							.delay(2*settings.trans_period/4).animate({
									 left: width4/2+"px",
									 opacity:1
									 },settings.trans_period);
							
					prevPosition = currentImage;
					currentImage = newPosition(position);
			}
			
			var showImage_4_to_center_diag = function(position) {
				
//					$($sliderImage[currentImage]).show();
					setTransition(true);
					var url = $('img',$sliderImage[position]).attr('src');

					$('.sectors', $slider).css({"background-image": "url('"+ url +"')","opacity":0});
					
					$('#'+prefix+'-sect-0-0').css({left:"-"+width4/2+"px", top:"-"+height4/2+"px"})
							.animate({
									 left: "0px",
									 top: "0px",
									 opacity:1
									 },settings.trans_period)
					$('#'+prefix+'-sect-0-1').css({top:"-"+height4/2+"px", left:width4+"px"})
							.animate({
									 top: "0px",
									 left: width4/2+"px",
									 opacity:1
									 },settings.trans_period);
					$('#'+prefix+'-sect-1-0').css({top:height4+"px", left:"-"+width4/2+"px"})
							.animate({
									 top: height4/2+"px",
									 left: "0px",
									 opacity:1
									 },settings.trans_period,function(){
																	$($sliderImage[prevPosition]).hide();
																	$($sliderImage[currentImage]).show();
												 					$('.sectors', $slider).css({"background-image": "url('')","opacity":0});
																	setTransition(false);
																	autoPlaySlider();
																	
									 								});
					$('#'+prefix+'-sect-1-1').css({left:width4+"px", top:height4+"px"})
							.animate({
									 left: width4/2+"px",
									 top: height4/2+"px",
									 opacity:1
									 },settings.trans_period);
							
					prevPosition = currentImage;
					currentImage = newPosition(position);
			}
			
			var showImage_4_from_center_diag = function(position) {
				
					setTransition(true);
					$($sliderImage[position]).show();
					var url = $('img',$sliderImage[currentImage]).attr('src');

					$('.sectors', $slider).css({"background-image": "url('"+ url +"')","opacity":1});
					$($sliderImage[currentImage]).hide();
					
					$('#'+prefix+'-sect-0-0').css({left:"0px", top:"0px"})
							.animate({
									 left: "-"+width4/2+"px",
									 top: "-"+height4/2+"px",
									 opacity:0
									 },settings.trans_period)
					$('#'+prefix+'-sect-0-1').css({top:"0px", left:width4/2+"px"})
							.animate({
									 top: "-"+height4/2+"px",
									 left: width4+"px",
									 opacity:0
									 },settings.trans_period);
					$('#'+prefix+'-sect-1-0').css({top:height4/2+"px", left:"0px"})
							.animate({
									 top: height4+"px",
									 left: "-"+width4/2+"px",
									 opacity:0
									 },settings.trans_period);
					$('#'+prefix+'-sect-1-1').css({left:width4/2+"px", top:height4/2+"px"})
							.animate({
									 left: width4+"px",
									 top: height4+"px",
									 opacity:0
									 },settings.trans_period, function(){
										 							$('.sectors', $slider).css({"background-image": "url('')"});
																	setTransition(false);
																	autoPlaySlider();
									 							});														
					currentImage = newPosition(position);

			}
			
			var showImage_4_diag  = function(position) {
				
//					$($sliderImage[currentImage]).show();
					setTransition(true);
					var url = $('img',$sliderImage[position]).attr('src');

					$('.sectors', $slider).css({"background-image": "url('"+ url +"')","opacity":0});
					
					$('#'+prefix+'-sect-0-0').css({left:width4/2+"px", top:height4/2+"px"})
							.animate({
									 left: "0px",
									 top: "0px",
									 opacity:1
									 },settings.trans_period)
					$('#'+prefix+'-sect-0-1').css({top:height4/2+"px", left:"-"+width4/2+"px"})
							.animate({
									 top: "0px",
									 left: width4/2+"px",
									 opacity:1
									 },settings.trans_period);
					$('#'+prefix+'-sect-1-0').css({top:"0px", left:width4/2+"px"})
							.animate({
									 top: height4/2+"px",
									 left: "0px",
									 opacity:1
									 },settings.trans_period);
					$('#'+prefix+'-sect-1-1').css({left:"0px", top:"0px"})
							.animate({
									 left: width4/2+"px",
									 top: height4/2+"px",
									 opacity:1
									 },settings.trans_period,function(){
										 							$($sliderImage[prevPosition]).hide();
																	$($sliderImage[currentImage]).show();
												 					$('.sectors', $slider).css({"background-image": "url('')","opacity":0});
																	setTransition(false);
																	autoPlaySlider();
									 								});
							
					prevPosition = currentImage;
					currentImage = newPosition(position);
			}
			
			var showImage_blind_right_fade = function(position) {
				
//					$($sliderImage[currentImage]).show();
					setTransition(true);
					var url = $('img',$sliderImage[position]).attr('src');

					$('.v-sectors', $slider).css({"background-image": "url('"+ url +"')","opacity":0});

					for (var i=0; i < settings.vert_sections-1; i++){
						$('#'+prefix+'-v'+i).delay(i*settings.trans_period/settings.vert_sections).animate({
										  opacity:1
										  },settings.trans_period);
					}
					
					$('#'+prefix+'-v'+(settings.vert_sections-1)).delay((settings.vert_sections-1)*settings.trans_period/settings.vert_sections).animate({
										  opacity:1
										  },settings.trans_period, function(){
											  						$($sliderImage[prevPosition]).hide();
																	$($sliderImage[currentImage]).show();
																	$('.v-sectors', $slider).css({"background-image": "url('')","opacity":0});
																	setTransition(false);
																	autoPlaySlider();
										  });
					prevPosition = currentImage;
					currentImage = newPosition(position);
			}
			
			var showImage_blind_right = function(position) {
				
//					$($sliderImage[currentImage]).show();
					setTransition(true);
					var url = $('img',$sliderImage[position]).attr('src');
					var width = $('#'+prefix+'-v0').css("width");
					
					$('.v-sectors', $slider).css({"background-image": "url('"+ url +"')","opacity":1, "width":0});
					
					for (var i=0; i < settings.vert_sections-1; i++){
						$('#'+prefix+'-v'+i).animate({
										  width: width
										  },settings.trans_period);
					}
					
					$('#'+prefix+'-v'+(settings.vert_sections-1)).animate({
										  width: width
										  },settings.trans_period, function(){
											  						$($sliderImage[prevPosition]).hide();
																	$($sliderImage[currentImage]).show();
																	$('.v-sectors', $slider).css({"background-image": "url('')","opacity":0});
																	setTransition(false);
																	autoPlaySlider();
										  });
					prevPosition = currentImage;
					currentImage = newPosition(position);
			}
			
			var showImage_blind_right_cons = function(position) {
				
//					$($sliderImage[currentImage]).show();
					setTransition(true);
					var url = $('img',$sliderImage[position]).attr('src');
					var width = $('#'+prefix+'-v0').css("width");
					
					$('.v-sectors', $slider).css({"background-image": "url('"+ url +"')","opacity":1, "width":0});
					
//					$($sliderImage[currentImage]).fadeOut(settings.trans_period);
					for (var i=0; i < settings.vert_sections-1; i++){
						$('#'+prefix+'-v'+i).delay(i*settings.trans_period/settings.vert_sections).animate({
										  width: width
										  },settings.trans_period);
					}//
					
					$('#'+prefix+'-v'+(settings.vert_sections-1)).delay((settings.vert_sections-1)*settings.trans_period/settings.vert_sections).animate({
										  width: width
										  },settings.trans_period, function(){
											  						$($sliderImage[prevPosition]).hide();
																	$($sliderImage[currentImage]).show();
																	$('.v-sectors', $slider).css({"background-image": "url('')","opacity":0});
																	setTransition(false);
																	autoPlaySlider();
										  });
					prevPosition = currentImage;
					currentImage = newPosition(position);
			}
			
			var showImage_blind_right_cons_full = function(position) {
				
//					$($sliderImage[currentImage]).show();
					setTransition(true);
					var url = $('img',$sliderImage[position]).attr('src');
					var width = $('#'+prefix+'-v0').css("width");
					
					$('.v-sectors', $slider).css({"background-image": "url('"+ url +"')","opacity":1, "width":0});
					
//					$($sliderImage[currentImage]).fadeOut(settings.trans_period);
					for (var i=0; i < settings.vert_sections-1; i++){
						$('#'+prefix+'-v'+i).delay(i*settings.trans_period/settings.vert_sections/2).animate({
										  width: width
										  },settings.trans_period);
					}//
					
					$('#'+prefix+'-v'+(settings.vert_sections-1)).delay(settings.trans_period/2).animate({
										  width: width
										  },settings.trans_period, function(){
											  						$($sliderImage[prevPosition]).hide();
																	$($sliderImage[currentImage]).show();
																	$('.v-sectors', $slider).css({"background-image": "url('')","opacity":0});
																	setTransition(false);
																	autoPlaySlider();
										  });//
					prevPosition = currentImage;
					currentImage = newPosition(position);
			}
			
			var showImage_blind_down_cons_full = function(position) {
				
//					$($sliderImage[currentImage]).show();
					setTransition(true);
					var url = $('img',$sliderImage[position]).attr('src');
					var height = $('#'+prefix+'-v0').css("height");
					
					$('.v-sectors', $slider).css({"background-image": "url('"+ url +"')","opacity":1, "top":"-"+height});
					
//					$($sliderImage[currentImage]).fadeOut(settings.trans_period);
					for (var i=0; i < settings.vert_sections-1; i++){
						$('#'+prefix+'-v'+i).delay(i*settings.trans_period/settings.vert_sections/2).animate({
										  top: "0px"
										  },settings.trans_period);
					}//
					
					$('#'+prefix+'-v'+(settings.vert_sections-1)).delay(settings.trans_period/2).animate({
										  top: "0px"
										  },settings.trans_period, function(){
											  						$($sliderImage[prevPosition]).hide();
																	$($sliderImage[currentImage]).show();
																	$('.v-sectors', $slider).css({"background-image": "url('')","opacity":0});
																	setTransition(false);
																	autoPlaySlider();
										  });
					prevPosition = currentImage;
					currentImage = newPosition(position);
			}
			
			var showImage_blind_down_cons_right = function(position) {
				
//					$($sliderImage[currentImage]).show();
					setTransition(true);
					var url = $('img',$sliderImage[position]).attr('src');
					var height = $('#'+prefix+'-v0').css("height");
					
					$('.v-sectors', $slider).css({"background-image": "url('"+ url +"')","opacity":1, "top":"-"+height});
					
//					$($sliderImage[currentImage]).fadeOut(settings.trans_period);
					for (var i=0; i < settings.vert_sections-1; i++){
						$('#'+prefix+'-v'+i).delay(i*settings.trans_period/settings.vert_sections).animate({
										  top: "0px"
										  },settings.trans_period);
					}//
					
					$('#'+prefix+'-v'+(settings.vert_sections-1)).delay(settings.trans_period).animate({
										  top: "0px"
										  },settings.trans_period, function(){
											  						$($sliderImage[prevPosition]).hide();
																	$($sliderImage[currentImage]).show();
																	$('.v-sectors', $slider).css({"background-image": "url('')","opacity":0});
																	setTransition(false);
																	autoPlaySlider();																	
										  });
					prevPosition = currentImage;
					currentImage = newPosition(position);				
			}
			
			var showImage_blind_down_cons_center = function(position) {
				
//					$($sliderImage[currentImage]).show();
					setTransition(true);
					var url = $('img',$sliderImage[position]).attr('src');
					var height = $('#'+prefix+'-v0').css("height");
					var center = Math.ceil(settings.vert_sections/2);
					
					$('.v-sectors', $slider).css({"background-image": "url('"+ url +"')","opacity":1, "top":"-"+height});
					;
					for (var i=0; i < center; i++){
						$('#'+prefix+'-v'+(center-i)).delay(i*settings.trans_period/settings.vert_sections).animate({
										  top: "0px"
										  },settings.trans_period);
						$('#'+prefix+'-v'+(center+1+i)).delay(i*settings.trans_period/settings.vert_sections).animate({
										  top: "0px"
										  },settings.trans_period);
					}//
					
					$('#'+prefix+'-v0').delay(settings.trans_period/2).animate({
										  top: "0px"
										  },settings.trans_period, function(){
											  						$($sliderImage[prevPosition]).hide();
																	$($sliderImage[currentImage]).show();
																	$('.v-sectors', $slider).css({"background-image": "url('')","opacity":0});
																	setTransition(false);
																	autoPlaySlider();
										  });//
					prevPosition = currentImage;
					currentImage = newPosition(position);
			}
			
			var showImage_sqr_down_cons = function(position) {
				
					setTransition(true);
					$($sliderImage[currentImage]).show();
					var url = $('img',$sliderImage[position]).attr('src');

					
					$('.sqr-sectors',$slider).css({"background-image": "url('"+ url +"')","opacity":0});

											
						for (var y=0; y < settings.sqr_sections_Y ; y++){
							for (var i=0; i < settings.sqr_sections_X; i++){
							if((y == (settings.sqr_sections_Y-1)) && i == (settings.sqr_sections_X-1)){
							$('#'+prefix+'-sqr-'+i+'-'+y).delay(y*settings.trans_period/settings.sqr_sections_Y).animate({
											  opacity: 1
											  },settings.trans_period, function(){
												  	$($sliderImage[prevPosition]).hide();
													$($sliderImage[currentImage]).show();
													$('.sqr-sectors',$slider).css({"background-image": "url('')","opacity":0});
													setTransition(false);
											  		autoPlaySlider();
													});	
							continue;
							}

							$('#'+prefix+'-sqr-'+i+'-'+y).delay(y*settings.trans_period/settings.sqr_sections_Y).animate({
											  opacity: 1
											  },settings.trans_period);	
													
						}
						
					}										
					prevPosition = currentImage;
					currentImage = newPosition(position);
					
				
			}
			
			
			var showImage_sqr_down_left_cons = function(position) {
				
					setTransition(true);
					$($sliderImage[currentImage]).show();
					var url = $('img',$sliderImage[position]).attr('src');

					
					$('.sqr-sectors',$slider).css({"background-image": "url('"+ url +"')","opacity":0});
					
					for (var y=0; y < settings.sqr_sections_Y ; y++){
						for (var i=0; i < settings.sqr_sections_X; i++){
							if((y == (settings.sqr_sections_Y-1)) && i == (settings.sqr_sections_X-1)){
							$('#'+prefix+'-sqr-'+i+'-'+y).delay(i*settings.trans_period/settings.sqr_sections_X + y*settings.trans_period/settings.sqr_sections_Y).animate({
											  opacity: 1
											  },settings.trans_period, function(){
												  	$($sliderImage[prevPosition]).hide();
													$($sliderImage[currentImage]).show();
													$('.sqr-sectors',$slider).css({"background-image": "url('')","opacity":0});
													setTransition(false);
											  		autoPlaySlider();
													});	
							continue;
							}

							$('#'+prefix+'-sqr-'+i+'-'+y).delay(i*settings.trans_period/settings.sqr_sections_X + y*settings.trans_period/settings.sqr_sections_Y).animate({
											  opacity: 1
											  },settings.trans_period);	
													
						}
						
					}										
					prevPosition = currentImage;
					currentImage = newPosition(position);
					
				
			}
			
			var showImage_sqr_random = function(position) {

					setTransition(true);
					$($sliderImage[currentImage]).show();
					var url = $('img',$sliderImage[position]).attr('src');
					var randomPositions = new Array();
					var pos= 0;
					var oldPos, newPos;
					
					$('.sqr-sectors',$slider).css({"background-image": "url('"+ url +"')","opacity":0});
					
					for (var y=0; y < settings.sqr_sections_Y ; y++){
						for (var i=0; i < settings.sqr_sections_X; i++){
							
							randomPositions[pos] = '#'+prefix+'-sqr-'+i+'-'+y;
							pos++;														
						}
					}
					for (var i = 0; i < pos; i++){
						
						oldPos = Math.floor(Math.random()*pos);
						newPos = randomPositions[i];
						randomPositions[i] = randomPositions[oldPos];
						randomPositions[oldPos] = newPos;												
					}
					
					for (var i = 0; i < pos-1; i++){
						
						$(randomPositions[i]).delay(4*i).animate({
											  opacity: 1
											  },settings.trans_period);													
					}
					
					$(randomPositions[pos-1]).delay(4*i).animate({
											  opacity: 1
											  },settings.trans_period, function(){
							  											$($sliderImage[prevPosition]).hide();
																		$($sliderImage[currentImage]).show();
																		$('.sqr-sectors',$slider).css({"background-image": "url('')","opacity":0});
																		setTransition(false);
											  							autoPlaySlider();
																		});
					
					prevPosition = currentImage;
					currentImage = newPosition(position);				
			}
			
			
			var showImage_blind_Up_cons_asinhr = function(position) {
				
//					$($sliderImage[currentImage]).show();
					setTransition(true);
					var url = $('img',$sliderImage[position]).attr('src');
					var height = $('#'+prefix+'-v0').css("height");
					
					$('.v-sectors', $slider).css({"background-image": "url('"+ url +"')","opacity":1, "top":height});
					
					for (var i=0; i < settings.vert_sections-1; i++){
						$('#'+prefix+'-v'+i).delay(50*i+i*i*8).animate({
										  top: "0px"
										  },((settings.vert_sections*settings.vert_sections-(i+1)*(i+1))*2*settings.trans_period/(settings.vert_sections*settings.vert_sections)));
					}//
					
					$('#'+prefix+'-v'+(settings.vert_sections-1)).delay(settings.trans_period).animate({
										  top: "0px"
										  },(settings.trans_period-settings.vert_sections-1), function(){
											  						$($sliderImage[prevPosition]).hide();
																	$($sliderImage[currentImage]).show();
																	$('.v-sectors', $slider).css({"background-image": "url('')","opacity":0});
																	setTransition(false);
																	autoPlaySlider();																	
										  });
					prevPosition = currentImage;
					currentImage = newPosition(position);				
			}
			
			var showImage_Special = function(position) {
				

					setTransition(true);
					
					var urlOld = $('img',$sliderImage[currentImage]).attr('src');
					var url = $('img',$sliderImage[position]).attr('src');
					var height = $('#'+prefix+'-v0').css("height");
					
					$('.sectors', $slider).css({"background-image": "url('"+ urlOld +"')","opacity":1});

					$('#'+prefix+'-sect-1-1', $slider).css({'z-index':-70});
					$('#'+prefix+'-sect-0-1', $slider).css({'z-index':-80});
					$('#'+prefix+'-sect-1-0', $slider).css({'z-index':-60});
//					$($sliderImage[currentImage]).hide();
					
					var width = $('#'+prefix+'-v0').css("width");
					
					$('.v-sectors', $slider).css({"background-image": "url('"+ url +"')","opacity":1, "width":0, 'z-index':-75});
					$('.sqr-sectors',$slider).css({"background-image": "url('"+ url +"')","opacity":0, 'z-index':-85});
										
					for (var y=0; y < settings.sqr_sections_Y/2 ; y++){
						for (var i=0; i < settings.sqr_sections_X/2; i++){

							$('#'+prefix+'-sqr-'+i+'-'+y).delay(i*settings.trans_period/settings.sqr_sections_X + y*settings.trans_period/settings.sqr_sections_Y).animate({
											  opacity: 1
											  },settings.trans_period);														
						}						
					}
					
					for (var i=settings.vert_sections/2; i < settings.vert_sections-1; i++){
						$('#'+prefix+'-v'+i).delay(settings.trans_period-100).delay((i-settings.vert_sections/2)*settings.trans_period/settings.vert_sections).animate({
										  width: width
										  },settings.trans_period);
					}					
															
					$('#'+prefix+'-v'+(settings.vert_sections-1)).delay(settings.trans_period-100).delay((settings.vert_sections/2)*settings.trans_period/settings.vert_sections).animate({
										  width: width
										  },settings.trans_period, function(){
											  		$('#'+prefix+'-sect-0-1', $slider).css({"background-image": "url('"+ url +"')","opacity":1, 'z-index':-50});
										  });
					
					$('.v-sectors', $slider).css({"background-image": "url('"+ url +"')","opacity":1, "top": "-"+(height/2)+'px', 'z-index':-65});
					
					for (var i=settings.vert_sections-1; i < settings.vert_sections/2; i--){
						$('#'+prefix+'-v'+i).delay(2*settings.trans_period-100).delay(i*settings.trans_period/settings.vert_sections).animate({
										  top: "0px"
										  },settings.trans_period);
					}//
					
					$('#'+prefix+'-v'+(settings.vert_sections-1)).delay(2*settings.trans_period-100).delay(settings.trans_period).animate({
										  top: "0px"
										  },settings.trans_period, function(){
											  						$($sliderImage[prevPosition]).hide();
																	$($sliderImage[currentImage]).show();
																	$('.v-sectors', $slider).css({"background-image": "url('')","opacity":0});
																	setTransition(false);
																	autoPlaySlider();																	
										  });
					
					
					
					
/*											  						$('.sectors', $slider).css({"background-image": "url('')","opacity":0, 'z-index':-100});
																	$($sliderImage[currentImage]).show();
																	$('.v-sectors', $slider).css({"background-image": "url('')","opacity":0,'z-index':-100});
																	setTransition(false);
																	autoPlaySlider();
										  });					
*/					prevPosition = currentImage;
					currentImage = newPosition(position);				
			}

			
			var showImage_Random = function(pos,type,anim){
					
					if (type == 'Consistently'){
						if (animRandom < animations['Random']-2) animRandom++;
						else animRandom = 0;
					}else if (type == 'Random'){
						if (animRandomPointer < animations['Random']-2) {
								animRandom = animRandomNumber[animRandomPointer];
								animRandomPointer++
						}else {
								animRandom = animRandomNumber[0];
								animRandomPointer = 1;
						}
					}else if (anim) animRandom = animations[anim];
					else if (type == 'Random-Custom'){
						if (animRandomCustomNumber < animRandomCustom.length) {
								animRandom = animations[animRandomCustom[animRandomCustomNumber]];
								animRandomCustomNumber++;
						}
						else {
								animRandom = animations[animRandomCustom[0]];
								animRandomCustomNumber=1;
						}
					}
				
					switch(animRandom){
						case animations['None']:
							return showImage(pos);								
							
							break;
						case animations['Fade']:
							return showImage_Fade(pos);

							break;
						case animations['Slide-Left']:
							return showImage_Slide_Left_Right(pos,'-');

							break;
						case animations['Slide-Right']:
							return showImage_Slide_Left_Right(pos,'+');

							break;
						case animations['Slide-Down']:
							return showImage_Slide_Down(pos);

							break;
						case animations['Slide-Up']:
							return showImage_Slide_Up(pos);

							break;
						case animations['Curtain_Center']:
							return	showImage_Curtain_Center(pos);

							break;
						case animations['Curtain_Center_Center']:
							return	showImage_Curtain_Center_Center(pos);

							break;
						case animations['Replace-Right']:
							return	showImage_Replace_Right(pos);

							break;
						case animations['Replace-Left']:
							return		showImage_Replace_Left(pos);

							break;
						case animations['Replace-Up']:
							return		showImage_Replace_Up(pos);

							break;
						case animations['Replace-Down']:
							return		showImage_Replace_Down(pos);

							break;
						case animations['4-to-Center']:
							return showImage_4_to_center(pos);

							break;
						case animations['4-from-Center']:
							return showImage_4_from_center(pos);

							break;
						case animations['4-to-Center-Cont']:
							return showImage_4_to_center_cont(pos);

							break;
						case animations['4-from-Center-Cont']:
							return showImage_4_from_center_cont(pos);

							break;
						case animations['4-to-Center-Diag']:
							return showImage_4_to_center_diag(pos);

							break;
						case animations['4-from-Center-Diag']:
							return showImage_4_from_center_diag(pos);

							break;
						case animations['4-Diag']:
							return showImage_4_diag(pos);

							break;
						case animations['Blind-Right']:
							return	showImage_blind_right(pos);
							
							break;
						case animations['Blind-Right-Cons']:
							return	showImage_blind_right_cons(pos);
							
							break;
						case animations['Blind-Right-Cons-Full']:
							return	showImage_blind_right_cons_full(pos);
							
							break;
						case animations['Blind-Right-Fade']:
							return	showImage_blind_right_fade(pos);
							
							break;
						case animations['Blind-Down-Cons-Right']:
							return	showImage_blind_down_cons_right(pos);
							
							break;
						case animations['Blind-Down-Cons-Center']:
							return	showImage_blind_down_cons_center(pos);
							
							break;
						case animations['Sqr-Down-Left-Cons']:						
							return	showImage_sqr_down_left_cons(pos);

							break;
						case animations['Sqr-Random']:
							return	showImage_sqr_random(pos);

						break;
							
						default:
							return showImage_Fade(pos);

					}					
			}
			
			
}

})(jQuery);


