//---------------------------------------------------------------------------------------//
// name:       js-slideShow                                                                                  //
// version:   2.1                                                                                                //
// made by:  melko                                                                                             //
// email: melko@gmx.at                                                                                      //
//                                                                                                                    //
// info:                                                                                                             //
//         this script enables you to use so many slideShows as you want to                //
//         have on your page without any extra-programming.                                    //
//         Only you must do is to set the paths and image-names!                               //
//                                                                                                                     //
// features:                                                                                                       //
//              - so many slideShows as you want to have                                             //
//              - easy implementation in the sourcecode                                              //
//              - each slideShow has its own slideShowSpeed and crossFadeDuration      //
//              - choose between random or in the order                                   //
//              - set a fix picture at the start of a slideShow                           //
//											  //
// important:										  //
//	       - The slideShow MUST be initialized with the same number as the index      //
//                of the images it is containing!! example: images[1] = slideShowNr 1     //
//             - You should never have more slideShows than images defined!!              //
//----------------------------------------------------------------------------------------//

//Specify the global path to the directory
var bigPath="";

// pic arrays! FIRST POSITION IN THE ARRAY is the SMALLPATH to the pictures!
// if you no path want, then set "" !! Images starts allways with 0 !
var images = new Array();
// The FIRST slideShow with slideNr = 0 and so on... 

// HeadSlide "Hotel"
images[0] = ["","image_start-slide_01.jpg","image_start-slide_02.jpg","image_start-slide_03.jpg","image_start-slide_04.jpg","image_start-slide_05.jpg"];
images[1] = ["","../../../../slides/burg1.jpg","../../../../slides/burg2.jpg","../../../../slides/burg3.jpg","../../../../slides/burg4.jpg","../../../../slides/burg5.jpg","../../../../slides/burg6.jpg"];
images[2] = ["","image_headBreit-test_01.jpg","image_headBreit-test_02.jpg"];
images[3] = ["","../../../../slides/melk.jpg","../../../../slides/melk_hof.jpg","../../../../slides/melk2.jpg","../../../../slides/melk3.jpg","../../../../slides/melk4.jpg","../../../../slides/melk6.jpg"];
images[4] = ["","../../../../slides/stadt_melk.jpg","../../../../slides/melk_stadt2.jpg","../../../../slides/melk_stadt3.jpg","../../../../slides/melk_hof.jpg","../../../../slides/melk.jpg"];
images[5] = ["","../../../../slides/ausblick_schiff_frau.jpg","../../../../slides/melk.jpg","../../../../slides/weinflasche.jpg","../../../../slides/schiff2.jpg","../../../../slides/sonnenuntergang_radweg.jpg","../../../../slides/marillen2.jpg","../../../../slides/burg1.jpg","../../../../slides/radrast.jpg","../../../../slides/marillenbluete.jpg","../../../../slides/paar.jpg"];
images[6] = ["","../../../../slides/wachaustube.jpg","../../../../slides/weinglaeser.jpg","../../../../slides/fisch.jpg","../../../../slides/ei.jpg","../../../../slides/brot.jpg","../../../../slides/speise.jpg","../../../../slides/restaurant_paar.jpg","../../../../slides/restaurant_kellnerin.jpg","../../../../slides/kaese.jpg","../../../../slides/fruehstueck.jpg","../../../../slides/jause.jpg","../../../../slides/wachaustube2.jpg","../../../../slides/rest_terrasse.jpg","../../../../slides/rest_paar.jpg"];
images[7] = ["","../../../../slides/hotel_wachau.jpg","../../../../slides/paar_bett.jpg","../../../../slides/zimmer.jpg","../../../../slides/zimmer1.jpg","../../../../slides/rezeption.jpg","../../../../slides/maedl_bett.jpg","../../../../slides/menschen.jpg","../../../../slides/zimmer2.jpg","../../../../slides/frau_bett.jpg"];
images[8] = ["","../../../../slides/zimmer.jpg","../../../../slides/zimmer1.jpg","../../../../slides/zimmer2.jpg","../../../../slides/zimmer3.jpg","../../../../slides/zimmer4.jpg","../../../../slides/zimmer5.jpg"];
images[9] = ["","../../../../slides/paar2.jpg","../../../../slides/hotel_wachau.jpg","../../../../slides/weintraube.jpg","../../../../slides/picknick.jpg","../../../../slides/schiff1.jpg","../../../../slides/boot_fuesse.jpg","image_head-test_02.jpg","../../../../slides/melk.jpg","../../../../slides/weintraube.jpg","../../../../slides/zimmer.jpg","../../../../slides/ausblick_schiff_frau.jpg"];
images[10] = ["","../../../../slides/st_wasser_hand.jpg","../../../../slides/st_frau_wasser.jpg","../../../../slides/st_ast.jpg","../../../../slides/start1.jpg","../../../../slides/st_paar.jpg","../../../../slides/st_melk.jpg","../../../../slides/st_traube.jpg","../../../../slides/start2.jpg"];
images[11] = ["","../../../../slides/seminar_1.jpg","../../../../slides/seminar_2.jpg","../../../../slides/seminar_3.jpg"];
images[12] = ["","../../../../slides/well_1.jpg","../../../../slides/well_2.jpg","../../../../slides/well_3.jpg","../../../../slides/well_4.jpg"];





// do not edit anything below this line 
//-------------------------------------------------------------------------------------//
var slideSpeed = new Array();
var crossFade = new Array();  
var index = new Array(); 
var pic = new Array(); 
var smallPath = new Array();
var preLoad = new Array(); 

// Initialize the slideShow... 
// @param slideNr - The slideNr of the slideShow... Every slide shoud start with 1
// @param slideShowSpeed - The speed of the slideShow in ms! (1sec. = 1000ms)
// @param crossFadeDuration - The duration of the crossFade (changing one picture through an other) values: 1, 2, 3,...
// @param random - Indicates if the slideShow shoud choose the pictures randomly or in the order. values; true, false
// @param fixStartPic - Indicates if the slideShow, with random = true, should have a fixStart picture at refreshing the page. Its the first image in the array. values: true, false
function init(slideNr, slideShowSpeed, crossFadeDuration, random, fixStartPic) {

index[slideNr] = 0;
slideSpeed[slideNr] = slideShowSpeed;
crossFade[slideNr] = crossFadeDuration;
smallPath[slideNr] = images[slideNr][0];
pic[slideNr] = new Array();
for(var i = 0; i < images[slideNr].length-1; i++){
pic[slideNr][i] = images[slideNr][i+1];
}

prepareSlideSlideSlideSlideSlideSlideSlide(slideNr, fixStartPic, random, pic[slideNr].length);
}

// Prepare the slideShow, set the pictures-order, fixStartPic and load it into PreLoad-Object
// @param slideNr - The slideNr of the slideShow... Every slide shoud start with 1
// @param fixStartPic - Indicates if the slideShow, with random = true, should have a fixStart picture at refreshing the page. Its the first image in the array. values: true, false 
// @param random - Indicates if the slideShow shoud choose the pictures randomly or in the order. values; true, false
// @param picLength - It's the length of the pic-Array of this slideShow
function prepareSlideSlideSlideSlideSlideSlideSlide(slideNr, fixStartPic, random, picLength){
	
	var duplicate = false;
	var reihenfolge = new Array();
	var z=0;
	
	if(fixStartPic){
		reihenfolge[0] = 0;
		z=1;
	}
	
	while (z != picLength){
		y=Math.floor(Math.random()*(picLength));
		for(i=0;i<reihenfolge.length;i++){	
			if (y==reihenfolge[i]){	
				duplicate=true;
			}
		}
		if (duplicate==true){ 
			duplicate=false;
			continue;
		} 
		else if (duplicate==false) { 
			reihenfolge[z] = y; z+=1; 
			
		}
	}
	preLoad[slideNr] = new Array();
	
if(random) {
for(i = 0; i < picLength; i++){
preLoad[slideNr][i] = new Image();
preLoad[slideNr][i].src = bigPath + smallPath[slideNr] + pic[slideNr][reihenfolge[i]];
}
} 
else {
for (i = 0; i < picLength; i++) { 
preLoad[slideNr][i] = new Image(); 
preLoad[slideNr][i].src = bigPath + smallPath[slideNr] + pic[slideNr][i]; 
} 
}
}

// Run the slideShow with the slideNr that indicates the special slide
// @param slideNr - The slideNr of the slideShow... Every slide shoud start with 1
function runSlideShow(slideNr) { 
	var element = document.getElementById("slide"+slideNr);
	
	if (document.all) { 
		element.style.filter='blendTrans(duration='+crossFade[slideNr]+')'
		element.filters.blendTrans.Apply(); 
	} 
	element.src = preLoad[slideNr][index[slideNr]].src; 
	
	if (document.all) { 
		element.filters.blendTrans.Play(); 
	} 
	index[slideNr] += 1; 
	
	if (index[slideNr] > (preLoad[slideNr].length - 1)) {
		index[slideNr] = 0;
	}
	setTimeout('runSlideShow('+slideNr+')', slideSpeed[slideNr]); 
}