/**
 * @author FrancA02
 */
 
 // class constructor, recieves parameters from the instance js file
	SlideShow=function(slides_array, back_id, back_id_off, next_id, next_id_off, chgSlideFunc){
	// initialising the class
	 	this.init(slides_array, back_id, back_id_off, next_id, next_id_off, chgSlideFunc);
	}
	SlideShow.prototype.init =function(slides_array, back_id, back_id_off, next_id, next_id_off, chgSlideFunc){
		// declaring the properties of SlideShow
		this.slides = slides_array;
		this.slen = this.slides.length;
		// index to reference with the slides array
		this.selIndex = 0;
		this.chgSlideFunc = chgSlideFunc;
		// Id's of buttons
		this.next_id = next_id;
		this.next_id_off = next_id_off;
		this.back_id = back_id;
		this.back_id_off = back_id_off;
		this.navigate([0]);
		
		// adding listers to listen for clicks on next and back buttons
		var ev_b=new newsi.Event();
		ev_b.addListener("onclick", this.back_id, this, "navigate", false,-1);
		var ev_n=new newsi.Event();
		ev_n.addListener("onclick", this.next_id, this, "navigate", false, 1);
	}
	
	SlideShow.prototype.navigate=function(ev){
		var dir = ev[0];
		this.selIndex += dir;
		if(this.selIndex == (this.slen-1)){
			// change next button to disabled
			newsi.html.showHide(this.next_id,"hide");
			newsi.html.showHide(this.next_id_off,"show");
			newsi.html.showHide(this.back_id,"show");
			newsi.html.showHide(this.back_id_off,"hide");
			//return false;
		}else if(this.selIndex == 0){
			// change back button to disabled
				newsi.html.showHide(this.next_id,"show");
				newsi.html.showHide(this.next_id_off,"hide");
				newsi.html.showHide(this.back_id,"hide");
				newsi.html.showHide(this.back_id_off,"show");
			//return false; 
		}else{
			// change back button to disabled
				newsi.html.showHide(this.next_id,"show");
				newsi.html.showHide(this.next_id_off,"hide");
				newsi.html.showHide(this.back_id,"show");
				newsi.html.showHide(this.back_id_off,"hide");
		}
		
		// loop to show and hide images depending on the selected array item
		for(var i=0;i<this.slen; i++){
			if(i == this.selIndex){
				newsi.html.showHide(this.slides[i],"show");
			}else{
				newsi.html.showHide(this.slides[i],"hide");
			}
		}
	var slideinfo = {num:this.selIndex+1, total:this.slen};
	this.chgSlideFunc(slideinfo);
}