//TODO mejorar tema instanceName
function SliderHome(instanceName, divContainer){
	this.instanceName = instanceName;
	this.divContainer = divContainer;
	this.num = -1;
	this.cur = 0;
	this.cr = [];
	this.al = 0;
	this.at = 10*1000;
	this.ar = true;
	this.data = null;
}

SliderHome.prototype.init = function(data){
	if(!data || !data.length)
		return false;
	
	this.data = data;
	
	var d=this.data;
	this.num=d.length;
	var pos=Math.floor(Math.random()*1);

	var cont = jQuery("#"+this.divContainer);
	
	for(var i=0;i<this.num;i++){
		cont.append('<a href="'+d[i].getLinkUrl()+'" target="'+d[i].getLinkTarget()+'"><img id="'+this.getImageIdByIndex(i)+'" src="'+d[i].getImg()+'" class="slide" alt="" /></a>');		
	}
	cont.append('<div id="img-slide-float-cont"></div>');
	cont.append('<div id="slide-titulo" ><p id="slide-tit1" class="slidertext spacetitlesfont"></p><p id="slide-tit2" class="slidertext spacetitlesfont"></p></div>');
	cont.append('<div id="slide-texto" ><p id="slide-desc" class="slidertext "><span></span></p></div>');
	cont.append('<div id="slide-controls"><a class="slideleftarrow" href="#" onclick="'+this.instanceName+'.left();return false;" /><p id="slide-nav"></p><a class="sliderightarrow" href="#" onclick="'+this.instanceName+'.right();return false;"/></div>');
	cont.append('<div id="slide-link"></div>');
	
	for(var i=0;i<this.num;i++){
		
	
		//$('#'+d[i].id).css({left:((i-pos)*1000)}); 
		
		this.debug = jQuery("#"+this.divContainer+" div#"+this.getImageIdByIndex(i));
		
		jQuery("#"+this.divContainer+" img#"+this.getImageIdByIndex(i)).css({left:((i-pos)*670)});
		
		//$('#slide-nav').append('<a id="slide-link-'+i+'" href="#" onclick="slider.slide('+i+');return false;" onfocus="this.blur();"><img id="slide-img-'+i+'" src="images/slide'+i+'.jpg" style="float:left;" width="50px" height="50px" class="slide" alt="" /><p class="slidertext">'+d[i].desc+'</p></a>'); 
		//TODO mejorar tema instanceName
		jQuery("#"+this.divContainer+" p#slide-nav").append('<a id="slide-link-'+i+'" href="#" onclick="'+this.instanceName+'.slide('+i+');return false;" onfocus="this.blur();"><img id="slide-thumb-'+i+'" src="'+d[i].getThumb()+'" style="float:left;" width="65px" height="55px" class="slide" alt="" /><div class="slidertext"><p class="spacetitlesfont tit1">'+d[i].getThumbTitle1()+'</p><p class="spacetitlesfont tit2">'+d[i].getThumbTitle2()+'</p></div></a>');
	}
	
	jQuery('img,div#slide-controls',jQuery("#"+this.divContainer)).fadeIn();
	this.text(d[pos]);
	this.on(pos);
	this.cur=pos;
	//this.al = window.setTimeout(this.instanceName+'.auto();', this.at);
	this.al = this.createNextTimeout();
	return true;
}

SliderHome.prototype.createNextTimeout = function(){
	return window.setTimeout(this.instanceName+'.auto();', this.at);
}

SliderHome.prototype.getImageIdByIndex = function(index){
	return "slide-img-"+index;
}


SliderHome.prototype.left = function(){
	var next=this.cur-1;
	  //if(next>=this.num) next=this.cur;
	  this.slide(next);	
}

SliderHome.prototype.right = function(){
	var next=this.cur+1;
	  //if(next>=this.num) next=this.cur;
	  this.slide(next);	
}

SliderHome.prototype.auto = function(){
		  if(!this.ar)
		   return;

		  var next=this.cur+1;
		  if(next>=this.num) next=0;
		  this.slide(next);		  
}

SliderHome.prototype.slide = function(pos){
		  if(pos<0 || pos>=this.num || pos==this.cur)
		   return;

		  window.clearTimeout(this.al);
		  //this.al = window.setTimeout('slider.auto();',slider.at);
		  this.al = this.createNextTimeout();

		  var d=this.data;
		  for(var i=0;i<this.num;i++)
		   jQuery('#'+this.getImageIdByIndex(i)).stop().animate({left:((i-pos)*669)},670,'swing');
		   
		  this.on(pos);
		  this.text(d[pos]);
		  this.cur=pos;
}

//TODO buscar referencia relativa a #DivContainer

SliderHome.prototype.on = function(pos){
		  jQuery('#slide-nav a img').removeClass('on');
		  jQuery('#slide-nav a#slide-link-'+pos+' img.slide').addClass('on');
		 }
		
//TODO buscar referencia relativa a #DivContainer
SliderHome.prototype.text = function(di){
		  this.cr['a']=di.desc;
		  this.cr['b']=di.title1;
		  this.cr['c']=di.title2;
		  this.cr['d']=di.linkLabel;
		  this.cr['e']=di.linkUrl;
		  this.cr['f']=di.linkTarget;
		  
		  this.ticker('#slide-desc span',di.desc);
		  this.ticker('#slide-tit1',di.title1);
		  this.ticker('#slide-tit2',di.title2);
		  this.ticker('#slide-link','<a href="'+di.getLinkUrl()+'" target="'+di.getLinkTarget()+'" >'+di.getLinkLabel()+'</a> <div id="slidelinkarrow"></div>');
		  this.ticker('#img-slide-float-cont','<a href="'+di.getLinkUrl()+'" target="'+di.getLinkTarget()+'" ><div class="img-slide-float"></div></a>');
	}		 
		 
SliderHome.prototype.ticker = function(el,text) {
	
	jQuery(el).html(text); 
}
		 

