var navThumbs = {
	wThumb: 52,
	leftEnd: 0,
	iAtual: -1,
	iShowing:-1,
	jqueryNavConteiner:"",
	jqueryNavContent:"",
	jqueryBtNext:"",
	jqueryBtPrev:"",
	
	init:function (itemAtual) {
		this.jqueryNavConteiner = $(".navConteiner");
		this.jqueryNavContent = $(".navContent");
		this.jqueryBtNext = $("#btNavThumbNext");
		this.jqueryBtPrev = $("#btNavThumbPrev");
		
		this.iAtual = itemAtual;
		this.leftEnd = Number($(this.jqueryNavContent).css("left").replace("px",""));
		this.addNew(itemAtual-1, +1, +1);
		this.addNew(itemAtual+1, +1);
		this.iShowing = itemAtual+1;
		trace(this.iShowing);
		this.testShowBtNav(this.leftEnd);
	},

	testShowBtNav: function (newLeft) {
		//alert("teste");
		//$(this.jqueryBtPrev).hide();
		if (newLeft >= this.wThumb) {
			//limite prev
			//$(this.jqueryBtPrev).hide();
			$(this.jqueryBtPrev).css("visibility", "hidden");
		} else {
			$(this.jqueryBtPrev).css("visibility", "visible");
		}
		//if ($(this.jqueryNavContent).width() + newLeft >= $(this.jqueryNavConteiner).width()) {
		//alert($(this.jqueryNavContent).width() +" + "+ newLeft +" >= "+ this.wThumb);
		if ($(this.jqueryNavContent).width() + newLeft <= this.wThumb) {
			//limite next
			$(this.jqueryBtNext).css("visibility", "hidden");
		} else {
			$(this.jqueryBtNext).css("visibility", "visible");
		}
	},

	next:function () {
		this.createNewNext();
		var newLeft = this.leftEnd - this.wThumb;
		if ($(this.jqueryNavContent).width() + newLeft >= $(this.jqueryNavConteiner).width() - this.wThumb) {
			this.leftEnd = newLeft;
			//$(".navContent").stop().animate({left: this.leftEnd}, 500);
			this.testShowBtNav(newLeft);
			$(this.jqueryNavContent).stop().animate({left: this.leftEnd}, 500);
			//navThumbs.iShowing ++;
			//trace(navThumbs.iShowing);
			this.showingIncrement(+1);
		}
	},

	prev:function () {
		this.createNewPrev();
		var newLeft = this.leftEnd + this.wThumb;
		//if (newLeft <= 0) {
		if (newLeft <= this.wThumb) {
			this.leftEnd = newLeft;
			//$(".navContent").stop().animate({left: this.leftEnd}, 500);
			this.testShowBtNav(newLeft);
			$(this.jqueryNavContent).stop().animate({left: this.leftEnd}, 500);
			//navThumbs.iShowing --;
			//trace(navThumbs.iShowing);
			this.showingIncrement(-1);
		}
	},
	
	showingIncrement:function (increment) {
		/*
		* controla o id do thumb da direita - considera no incremento q precisa ignorar o iAtual (q não é renderizado)
		*/
		if (increment != null) {
			this.iShowing += increment;
			if (this.iShowing == this.iAtual) {
				this.iShowing += increment;
			}
			trace(this.iShowing);
		}
	},

	addNew:function (i, posicao, difIfEmpty) {
//		alert("create "+i)
		var found = false;
		if (arItens[i]) {
//			alert("add "+i)
			var newItem = "<li><a href=\"?id="+arItens[i].id+navPortfolioLinkAdd+"\"><img src=\""+arItens[i].src+"\" width=\"73\" height=\"30\" alt=\""+arItens[i].desc+"\" /></a></li>";
			if (posicao>0) {
				//add no final
				$(this.jqueryNavContent).find("ul").append(newItem);
			} else {
				//add no começo
				$(this.jqueryNavContent).find("ul").prepend(newItem);
				this.leftEnd -= this.wThumb;
				$(this.jqueryNavContent).css("left", this.leftEnd);
			}
			var newW = $(this.jqueryNavContent).find("ul").width() + this.wThumb;
			$(this.jqueryNavContent).find("ul").css("width",newW);
			arItens[i].loaded = true;
			found = true;
		} else {
//			alert("add [empty]")
			//$(this.jqueryNavContent).find("ul").append("<li><div class=\"empty\"></div></li>");
			this.leftEnd = 0;
			if (difIfEmpty) {
				this.leftEnd = this.wThumb;
			}
			$(this.jqueryNavContent).css("left", this.leftEnd);
		}
		return found;
	},

	createNewPrev:function () {
		var iFirstLoaded = -1;
		for (var i in arItens) {
			if (arItens[i].loaded) {
				if (iFirstLoaded <0) {
					iFirstLoaded = i;
					break;
				}
			}
		}
		//alert(iFirstLoaded +" x "+ this.iAtual);
		var iPrev = iFirstLoaded-1;
		if (iPrev >= 0 && arItens[iPrev]) {
			if (iPrev > this.getBoundsToCreateNews().min) {
				if (iPrev != this.iAtual) {
					this.addNew(iPrev, -1);
				}
			}
		}
	},

	createNewNext:function () {
		var iLastLoaded = -1;
		for (var i in arItens) {
			if (arItens[i].loaded) {
				iLastLoaded = i;
			}
		}
		var iNext = Number(iLastLoaded)+1;
		if (iNext > 0 && arItens[iNext]) {
			if (iNext < this.getBoundsToCreateNews().max && iNext != this.iAtual) {
				this.addNew(iNext, +1);
			}
		}
	},
	
	getBoundsToCreateNews:function () {
		var obj = {};
		obj.min = this.iShowing-3;
		if (this.iAtual > obj.min && this.iAtual < this.iShowing) {
			obj.min--;
		}
		obj.max = this.iShowing+2;
		if (this.iAtual > this.iShowing && this.iAtual < obj.max) {
			obj.max++;
		}
		//alert("bounds: "+obj.min+" a "+obj.max)
		return obj;
	}
};
function trace(txt) {
	//$("#log").text(txt);
}
