// init
$(document).ready(function() {
	detectMobile();
	
	setMenus();
	
	doResized();
	
	setUrlCheck();
	
	$(window).resize(function() {
		resized();
	});
});

window.onload = function () {
	
}

// COMMON
function cleanTxt(str) {
	var gets = [/\r/g, /\n/g, /\"/g, /\'/g]; // " //
	var puts = ["", "<BR>", "&quot;", "&#39;"];
	for (var i in gets) {
		str = str.replace(gets[i], puts[i]);
	}
	return str;
}

// DETECT
var isMobile = false;
var platform = "desktop";

function detectMobile() {
	var agent = navigator.userAgent;
	if (agent.indexOf("iPhone") != -1) {
		platform = "iPhone";
	} else if (agent.indexOf("iPod") != -1) {
		platform = "iPod";
	} else if (agent.indexOf("iPad") != -1) {
		platform = "iPad";
	}
	if (platform != "desktop") {
		isMobile = true;
	} else if (agent.indexOf("MSIE 6") != -1) {
		alert("Internet Explorer 6 detectado. Por favor atualize ou utilize outro navegador.");
	}
}

// LOCATION
var sec = "";
var cat = "";
var item = "";
var rel = "";
var urlCheck = setInterval("void(0)", 1000);
var prevHash = "none";
var prevsec = "";
var prevcat = "";
var previtem = "";

function getSecName(se) {
	switch (se) {
		case "1":
			return "home";
		case "2":
			return "publicidade";
		case "3":
			return "autoral";
		case "7":
			return "makingof";
		default:
			return "";
	}
}

var counter = 0;
function setUrlCheck() {
	clearInterval(urlCheck);
	urlCheck = setInterval("doUrlCheck()", 200);
}

function doUrlCheck() {
	var hash = document.location.hash;
	if (prevHash != hash) {
		prevHash = hash;
		readHash(hash);
	}
}

function readHash(hash) {
	$(".navtop ul").css("display", "none");
	
	if (sec) {
		menuOut($("#"+getSecName(sec)));
	}
	if (cat) {
		menuOut($("#cat"+cat));
	}
	
	prevsec = sec;
	prevcat = cat;
	previtem = item;
	
	hash = hash.substr(2);
	if (hash.indexOf("/") != -1) {
		sec = hash.substr(0, hash.indexOf("/"));
		var has = hash.substr(hash.indexOf("/")+1);
		if (has.indexOf("/") != -1) {
			cat = has.substr(0, has.indexOf("/"));
			var ha = has.substr(has.indexOf("/")+1);
			if (ha.indexOf("/") != -1) {
				item = ha.substr(0, ha.indexOf("/"));
				var h = ha.substr(ha.indexOf("/")+1);
				if (h.indexOf("/") != -1) {
					rel = h.substr(0, h.indexOf("/"));
				} else {
					rel = h;
				}
			} else {
				item = ha;
				rel = "";
			}
		} else {
			cat = has;
			item = "";
			rel = "";
		}
	} else {
		sec = hash;
		cat = "";
		item = "";
		rel = "";
	}
	
	if (sec) {
		menuOver($("#"+getSecName(sec)));
	}
	if (cat) {
		menuOver($("#cat"+cat));
	}
	
	if (prevsec == "50") {
		setLogout();
	}
	
	if (item && !rel) { // foto
		if ($("#fotos").length && previtem && sec == prevsec && cat == prevcat) {
			montaFotos();
		} else {
			$("#conteudo").html("");
			showTop();
			loadFotos();
		}
	} else {
		$("#conteudo").html("");
		
		switch (sec) {
			case "": // intro
				hideTop();
				loadIntro();
				break;
			//case "1": // thumbs
			case "2":
			case "3":
			case "7":
				unloadIntro();
				showTop();
				loadThumbs();
				break;
			case "50":
				showTop();
				break;
		}
	}
}

// RESIZE WINDOW
var minW = 640;
var minH = 480;
var maxW = 1200;
var maxH = 800;
var W = 0;
var H = 0;
var availW = 0;
var availH = 0;

var resizeDelay = null;

function resized() {
	if (!resizeDelay) {
		resizeDelay = setTimeout(doResized, 400);
	}
}

function setSizes() {
	var sizes = getSize();
	W = sizes[0];
	H = sizes[1];
	availW = Math.max(W, minW);
	availH = Math.max(H, minH);
}

function doResized() {
	resizeDelay = null;
	
	setSizes();
	
	if (availW == minW) {
		$("#wrapper").css("width", minW+"px");
	} else {
		$("#wrapper").css("width", "100%");
	}
	
	ajustaLoading();
	
	ajustaMenus();
	
	ajustaIntro();
	
	ajustaThumbs();
	
	ajustaFotos();
	
	ajustaCliente();
}

function getSize() {
	var myWidth = 0, myHeight = 0;
	if( typeof( window.innerWidth ) == 'number' ) {
		//Non-IE
		myWidth = window.innerWidth;
		myHeight = window.innerHeight;
	} else if( document.documentElement && ( document.documentElement.clientWidth || document.documentElement.clientHeight ) ) {
		//IE 6+ in 'standards compliant mode'
		myWidth = document.documentElement.clientWidth;
		myHeight = document.documentElement.clientHeight;
	} else if( document.body && ( document.body.clientWidth || document.body.clientHeight ) ) {
		//IE 4 compatible
		myWidth = document.body.clientWidth;
		myHeight = document.body.clientHeight;
	}

	return [myWidth, myHeight];
}

// LOADING
var loadingCount = 0;
var loadingDelay = 1500;
var loadingOn = .6;

function loader(imgs, callback) {
	$("#loading").fadeTo(loadingDelay, loadingOn);
	loadingCount = imgs.length;
	if (loadingCount) {
		$(imgs).each(function() {
			$(this[0]).load(function() {
				loaderCheck(this, callback);
			}).error(function() {
				loaderCheck(this, callback);
			}).prop("src", this[1]);
		});
	} else {
		loaderFinish(callback);
	}
}

function loaderCheck(el, callback) {
	$(el).unbind("load");
	loadingCount --;
	if (!loadingCount) {
		loaderFinish(callback);
	}
}

function loaderFinish(callback) {
	$("img").unbind("load");
	hideLoading();
	callback();
}

function hideLoading() {
	$("#loading").hide();
}

function ajustaLoading() {
	var wid = $("#loading img").width();
	var hei = $("#loading img").height();
	$("#loading").css("width", wid + "px");
	$("#loading").css("left", Math.round((availW - wid) / 2) + "px");
	$("#loading").css("top", Math.round((availH - hei) / 2) + "px");
}

// TOP
var topH = 0;
var nav1Offsets = new Array();
var topOut = "#444";
var topOver = "#666";
var topOut2 = "#999";
var topOver2 = "#ccc";
var formOver = "#ddd";

function setMenus() {
	showTop();
	
	setSizes();
	
	topH = $("#top").height();
	// navbar 1
	$("#navbar1 .navtop").each(function() {
		nav1Offsets.push($(this).offset().left);
	});
	var offs1 = nav1Offsets.slice();
	$("#navbar1 li ul").each(function() {
		var off = offs1.shift();
		$(this).css("left", -off+"px").css("padding-left", off+"px");
	});
	// navbar 2
	var offs2 = new Array();
	var nws = new Array();
	if ($("#navbar2 .navtop").each(function() {
		offs2.push($(this).offset().left);
		nws.push($(this).width());
	}))
	$("#navbar2 li ul").each(function() {
		var off = offs2.shift();
		var nw = nws.shift();
		$(this).css("padding-right", (availW - off - nw)+"px");
	});
	// logo
	var logoOffset = $("#navbar1").width() - $("#navbar2").width();
	if (logoOffset > 0) {
		$("#logo").css("margin-right", logoOffset+"px");
	} else {
		$("#logo").css("margin-left", -logoOffset+"px");
	}
	// navbar 1 e 2
	$(".navbar").css("color", topOver);
	$("#navbar1 li a").css("color", topOut);
	$("#navbar2 .navtop a").css("color", topOut);
	$("#navbar2 ul a").css("color", topOut2);
	$(".navtop ul").css("display", "none");
	$("#top").css("display", "none");
	
	if (document.all) { // ie
		$(".navbar li ul").css("margin-top", "16px");
		$("#conteudo").css("margin-top", "-2px");
	} else {
		$(".navbar li ul").css("background", "rgba(31, 31, 31, .8)");
	}
	
	$(".navtop").mouseenter(function() {
		$(this).children("ul").css("display", "block");
		ajustaSubmenus();
	});
	// navbar 1
	$("#navbar1 .navtop").mouseleave(function() {
		$("#navbar1 .navtop").children("ul").css("display", "none");
	});
	
	$("#navbar1 a").mouseenter(function() {
		menuOver($(this));
	});
	$("#navbar1 a").mouseleave(function() {
		if ($(this).prop("id") != getSecName(sec) && $(this).prop("id") != "cat"+cat) {
			menuOut($(this));
		}
	});
	// navbar 2
	$("#navbar2 .navtop").mouseleave(function() {
		$(this).children("ul").css("display", "none");
		menuOut($(this).children("a"));
	});
	
	$("#navbar2 .navtop a").mouseenter(function() {
		menuOver($(this));
	});
	$("#navbar2 ul a").mouseenter(function() {
		menuOver2($(this));
	});
	$("#contato_top ul").mouseenter(function() {
		menuOver($("#contato"));
	});
	$("#navbar2 ul a").mouseleave(function() {
		menuOut2($(this));
	});
	// busca
	buscaOut();
	$("#busca").mouseenter(function() {
		$(this).css("color", topOver);
		$("#busca_text").css("background", formOver);
	});
	$("#busca").mouseleave(function() {
		if (!$("#busca_text:focus").length) {
			buscaOut();
		}
	});
	$("#busca_text").focus(function() {
		if ($(this).val() == "cliente") {
			$(this).val("");
		}
	});
	$("#busca_text").blur(function() {
		if ($(this).val() == "") {
			$(this).val("cliente");
		}
		buscaOut();
	});
	$("#busca_text").keyup(function(e) {
		if(e.keyCode == 13) {
			$("#busca").submit();
		}
	});
	$("#busca").submit(function() {
		var b = $("#busca_text").val();
		if (b) {
			$("#busca_text").blur();
			$(".navtop ul").css("display", "none");
			setBusca(b);
		}
		return false;
	});
	// login
	$("#login_form input").css("background", formOver);
	$("#login_msg").css("margin-right", "10px");
	$("#login_msg").css("color", formOver);
	$("#login_msg").fadeTo(0, 0);
	$("#login_nome, #login_senh").keyup(function(e) {
		if(e.keyCode == 13) {
			$("#login_form").submit();
		}
	});
	$("#login_form").submit(function() {
		setLogin();
		return false;
	});
	$("#logout_nome").css("margin-right", "10px");
	$("#logout").hide();
	
	ajustaMenus();
	
	hideTop();
}

function menuOver(el) {
	el.css("color", topOver);
}

function menuOut(el) {
	el.css("color", topOut);
}

function menuOver2(el) {
	el.css("color", topOver2);
}

function menuOut2(el) {
	el.css("color", topOut2);
}

function buscaOut() {
	$("#busca").css("color", topOut);
	$("#busca_text").css("background", topOut);
}

function setBusca(val) {
	document.location.href = "#/2/"+encodeURI(val);
}

function setLogin() {
	var nom = $("#login_nome").val();
	var sen = $("#login_senh").val();
	
	$.post("cliente.php",
	{ nom: nom, sen: sen },
	function(data){
		if (data == "0") {
			$("#login_msg").fadeTo(0, 1).delay(1000).fadeTo(1000, 0);
		} else {
			document.location.href = "#/50";
			setTimeout(function() {
				$("#logout").show();
				$("#logout_nome").html(nom);
				$("#login_form").hide();
				ajustaSubmenus();
				
				$("#conteudo").html(data);
			}, 600);
		}
	},
	"html"
	);
}

function logout() {
	setLogout();
	if (document.all) { // ie
		document.location.href = "#/3";
	} else {
		history.back(-1);
	}
}

function setLogout() {
	$("#logout_nome").html("");
	$("#logout").hide();
	$("#login_form").show();
	$("#login_nome").val("");
	$("#login_senh").val("");
}

function showTop() {
	$("#top").show();
}

function hideTop() {
	$("#top").hide();
}

function ajustaMenus() {
	
}

function ajustaSubmenus() {
	var offs1 = nav1Offsets.slice();
	$("#navbar1 li ul").each(function() {
		var off = offs1.shift();
		$(this).css("padding-right", (availW-off-$(this).width())+"px");
	});
	
	var offs2 = new Array();
	var nws = new Array();
	if ($("#navbar2 .navtop").each(function() {
		offs2.push($(this).offset().left);
		nws.push($(this).width());
	})) {
		$("#navbar2 li ul").each(function() {
			var off = offs2.shift();
			var nw = nws.shift();
			var dif = $(this).width() - nw;
			$(this).css("left", -off+"px").css("padding-left", (off - dif)+"px");
		});
	}
	
	var bioM = Math.round((availW - $("#bio_top table").innerWidth()) / 2);
	var bioLP = parseInt($("#bio_top ul").css("padding-left"));
	var bioRP = parseInt($("#bio_top ul").css("padding-right"));
	var bioDif = bioLP - bioM;
	$("#bio_top ul").css("padding-left", bioM + "px");
	$("#bio_top ul").css("padding-right", (bioRP + bioDif) + "px");
}

// CLIENTE
function setCliente() {
	$("#popup").dialog({ autoOpen: false, modal: true, width: 'auto' });
	
	$("#cliente_wrapper a").css("color", topOut2).mouseenter(function() {
		menuOver2($(this));
	}).mouseleave(function() {
		menuOut2($(this));
	});
	
	ajustaCliente();
}

function ajustaCliente() {
	if ($("#cliente_wrapper").length) {
		if (document.all) { // ie
			var mw = 0;
			$(".cliente_l").each(function() {
				var widl = $(this).find(".cliente_l_a").outerWidth() + $(this).find(".cliente_l_b").outerWidth();
				$(this).css("width", widl + "px");
				mw = Math.max(mw, widl);
			});
			$("#cliente_left").css("width", mw + "px");
			$("#cliente_right").css("width", "300px");
		}
		var wid = $("#cliente_left").outerWidth() + $("#cliente_right").outerWidth();
		var hei = Math.max($("#cliente_left").height(), $("#cliente_right").height());
		$("#cliente_wrapper").css("width", wid + "px");
		$("#cliente_wrapper").css("left", Math.round((availW - wid) / 2) + "px");
		var offTop = Math.round((availH - topH - hei) / 2);
		if (offTop < 0) {
			offTop = 0;
		}
		$("#cliente_wrapper").css("top", offTop + "px");
	}
}

function aprova(cod) {
	$.post("aprova_form.php",
	{ cod: cod },
	function(data) {
		$("#popup").dialog('option', 'title', 'APROVAÇÃO');
		$("#popup").dialog( "option", "position", "center");
		$("#popup").dialog( "option", "width", 300);
		$("#popup").dialog('open');
		$("#popup").html(data);
		$("#popup textarea").css("background", formOver);
		$("#popup a").mouseenter(function() {
			menuOver2($(this));
		}).mouseleave(function() {
			menuOut2($(this));
		});
	},
	"html"
	);
}

function registra() {
	var cod = $("#aprova_cod").val();
	var chk = $("#aprova_chk").val();
	var obs = $("#aprova_obs").val();
	$.post("aprova.php",
	{ cod: cod, chk: chk, obs: obs },
	function(data) {
		if (data == "error") {
			$("#popup").html('<DIV style="text-align: center;"><BR><BR><BR>'+data+'</DIV>');
		} else {
			$("#popup").html('<DIV style="text-align: center;"><BR><BR><BR>Notificação registrada.</DIV>');
			$("#cliente_aprova_"+cod).html(data);
		}
	},
	"html"
	);
}

function upload(cli) {
	$.post("upload_form.php",
	{ cli: cli },
	function(data) {
		$("#popup").dialog('option', 'title', 'UPLOAD ARQUIVO');
		$("#popup").dialog( "option", "position", "center");
		if (document.all) {
			$("#popup").dialog( "option", "width", 320);
			$("#popup").dialog( "option", "minHeight", 230);
		} else {
			$("#popup").dialog( "option", "width", 300);
		}
		$("#popup").dialog('open');
		$("#popup").html(data);
		
		$("#popup input").css("color", $("#popup").css("color"));
		$("#popup textarea").css("background", formOver);
		$("#popup a").mouseenter(function() {
			menuOver2($(this));
		}).mouseleave(function() {
			menuOut2($(this));
		});
		
		setUps(cli);
		//setTimeout('setUps()',200);
		
		$("#clicontainer > .plupload").mouseenter(function() {
			menuOver2($("#clifil"));
		}).mouseleave(function() {
			menuOut2($("#clifil"));
		});
	},
	"html"
	);
}

var uploader = null;
function setUps(cli) {
	uploader = new plupload.Uploader({
		runtimes : 'html5,flash',
		browse_button : 'clifil',
		container: 'clicontainer',
		max_file_size : '500mb',
		url : 'upload.php',
		flash_swf_url : 'js/plupload.flash.swf',
		multi_selection : false,
		/*filters : [
			{title : "Image files", extensions : "jpg,gif,png"},
			{title : "PDF files", extensions : "pdf"}
		],*/
		multipart_params: {cli: cli, obs: ''}
	});

	uploader.bind('Init', function(up, params) {
		//alert("ok "+up.settings.multi_selection);
		//$('#filelist').html("<div>Current runtime: " + params.runtime + "</div>");
	});

	uploader.bind('Error', function(up, er) {
		if (er['code'] == -600) { // file size error
			$("#fil_msg2").fadeIn('fast').delay(3000).fadeOut('slow', function() {
				$("#prog").hide();
				$(".clifilnam").remove();
				//$("#" + uploader.files[0].id).remove(); // remove by id
			});
		}
	});

	uploader.bind('FilesAdded', function(up, files) {
		if (up.files.length) {
			$("#" + up.files[0].id).remove();
			up.removeFile(up.files[0]);
		}
		$('#clifil').after('<DIV id="' + files[0].id + '" class="clifilnam">' + files[0].name + ' (' + plupload.formatSize(files[0].size) + ')</DIV>');
		$("#prog").show();
		setTimeout('$("#clicontainer > .plupload").css("z-index", "99999")', 200);
	});

	uploader.bind('UploadProgress', function(up, file) {
		$("#bar").css("width", file.percent + "%");
		$("#perc").html(file.percent + "%");
	});

	uploader.bind('BeforeUpload', function(up) {
		up.settings.multipart_params.obs = cleanTxt($("#cliobs").val());
	});

	uploader.bind('FileUploaded', function(up, file, response) {
		var resp = JSON.parse(response.response);
		if (resp.error) {
			$("#cliup_msg").html(resp.error);
		} else {
			$("#cliup_msg").html(resp.msg);
			
			$("#cliente_nofile").remove();
			var num = parseInt($("#cliente_file_template .cliente_file").attr("num"));
			$("#cliente_file_template .cliente_file").attr("num", num + 1);
			$("#cliente_file_template a").attr("href", "upload/" + resp.file).html(resp.file);
			if ($("#cliobs").val()) {
				$("#cliente_file_template .cliente_txt").html("Obs.: " + cleanTxt($("#cliobs").val()));
			} else {
				$("#cliente_file_template .cliente_txt").html("");
			}
			$("#cliente_file_template").before($("#cliente_file_template .cliente_file").clone(true));
			
			ajustaCliente();
		}
	});

	$('#cliok').click(function() {
		if (uploader.files.length) {
			uploader.start();
			$('#clifil').hide();
			$("#clicontainer > .plupload").hide();
			$("#cliobsok").hide();
			$("#cliup_msg").show();
		} else {
			$("#fil_msg").fadeIn('fast').delay(800).fadeOut('slow');
		}
		return false;
	});

	uploader.init();
	
	if (document.all) {
		$("#clicontainer > .plupload").css("margin-left", -$("#clifil").width()+"px");
	} else {
		$("#clicontainer > .plupload").css("z-index", "99999");
	}
}

/*function envia() {
	if ($("#fil").val()) {
		$("#cliupform").submit();
		$("#cliup").hide();
		$("#cliup_msg").show();
	} else {
		$("#fil_msg").fadeIn('fast').delay(800).fadeOut('slow');
	}
}

function uploaded() {
	$(".cliente_nofile").remove();
	var msg = $("#upifr").contents().find("#upmsg").html();
	var show = $("#upifr").contents().find("#upshow").html();
	$("#cliup_msg").html(msg);
	$("#cliente_right").append(show).find("a").css("color", topOut2).mouseenter(function() {
		menuOver2($(this));
	}).mouseleave(function() {
		menuOut2($(this));
	});
}*/

// INTRO
function loadIntro() {
	$("#conteudo").hide();
	$("#intro_wrapper").show();
	ajustaIntro();
	loader([['#intro_foto','images/galinha.jpg'],
		['#intro_logo_fade','images/logo_fade.png'],
		['#intro_logo','images/logo.png']], 
		function() {
			loadThumbs();
			$("#intro_foto").fadeIn(400, "linear", function() {
				$("#intro_logo_fade").fadeIn(600, "linear");
				$("#intro_logo").fadeIn(1500, "swing");
			});
		});
}

function ajustaIntro() {
	if ($("#intro").length) {
		$("#intro_wrapper").css("width", availW + "px");
		$("#intro_wrapper").css("height", availH + "px");
		var offsetW = Math.round((availW - $("#intro").width()) / 2);
		var offsetH = Math.round((availH - $("#intro").height()) / 2);
		$("#intro").css("left", offsetW + "px");
		$("#intro").css("top", offsetH + "px");
	}
}

function unloadIntro() {
	$("#intro_foto").attr("src", "");
	$("#intro_logo").attr("src", "");
	$("#intro_logo_fade").attr("src", "");
	$("#intro_wrapper").hide();
	$("#conteudo").show();
}

// THUMBS
var thumbsPrima = true;
var thumbsScroll = 0;
var thumbsTotal = 0;
var thumbWs = new Array();
var thumbH = 100;
var thumbOver = 1;
var thumbOut = .2;

function loadThumbs() {
	if (cat && !isNaN(cat)) { // categoria
		var n = cat;
	} else { // secao
		n = sec;
	}
	
	if (rel) {
		var r = item;
	} else {
		r = "";
	}
	
	if (isNaN(cat)) { // busca
		var c = cat;
	} else {
		c = r;
	}
	
	if (sec) {
		s = sec;
	} else {
		s = 3;
		n = 3;
	}
	
	$.post("thumbs.php",
	{ sec: s, node: n, cod: c },
	function(data){
		$('#conteudo').html(data);
	},
	"html"
	);
}

function setThumbs(imgs) {
	//setLocation();
	
	thumbsPrima = true;
	
	if (imgs.length > 1) {
		thumbsTotal = imgs.length;
		
		$('#thumbs .thumb').css('opacity', .2);
		$('#thumbs .thumb_over').css('opacity', 0);
		
		var i = 0;
		thumbWs = new Array();
		$('#thumbs .thumb_over').each(function() {
			thumbWs[i] = $(this).prop('width');
			$(this).css('margin-left', -thumbWs[i]);
			i ++;
		});
		
		$('#thumbs a').mouseenter(function() {
			var num = $(this).find('img').prop('id').substr(10);
			$('#thumb_over'+num).fadeTo(500, thumbOver);
			$('#thumb'+num).fadeTo(500, thumbOver);
		});
		$('#thumbs a').mouseleave(function() {
			var num = $(this).find('img').prop('id').substr(10);
			$('#thumb_over'+num).fadeTo(0, 0);
			$('#thumb'+num).fadeTo(0, thumbOut);
		});
	
		$("#thumbs_wrapper").fadeTo(0, 0);
		
		if (document.all) { // ie
			imgs[0][1] = 'images/spacer.gif';
		}
		
		$("#loading").fadeTo(loadingDelay, loadingOn);
		
		if (ajustaThumbs()) {
			loader(imgs, function() {
				$("#thumbs_wrapper").fadeTo(1000, 1);
			});
		}
	} else {
		$("#seta_left").hide();
		$("#seta_right").hide();
		ajustaThumbs();
	}
}

function ajustaThumbs() {
	if ($("#thumbs").length) {
		var wid = availW;
		var hei = availH - topH;
		// redistribui thumbs
		var incr = thumbH;
		var thwid = wid - incr;
		do {
			thwid += incr;
			var thhei = thumbH;
			var rowW = 0;
			for (var i = 0; i < thumbsTotal; i ++) {
				rowW += thumbWs[i];
				if (rowW > thwid) {
					thhei += thumbH;
					rowW = thumbWs[i];
				}
			}
			if (hei >= thhei && incr == thumbH) {
				thwid -= incr;
				thhei = hei + 1;
				incr = 1;
			}
		} while (hei < thhei);
		$("#thumbs").css("width", thwid + "px");
		
		// posiciona thumbs
		thumbsScroll = thwid - wid;
		if (thumbsScroll < 0) {
			//thumbsScroll = 0;
		}
		if (thumbsPrima || thumbsScroll < 0) {
			$("#thumbs").css("left", -Math.round(thumbsScroll/2) + "px");
			thumbsPrima = false;
		} else if (-parseInt($("#thumbs").css("left")) > thumbsScroll) {
			$("#thumbs").css("left", -thumbsScroll + "px");
		}
		// posiciona setas
		$("#seta_left").css("margin-top", -Math.round($("#thumbs").height()/2 + $("#seta_left").height()/2));
		$("#seta_right").css("margin-top", $("#seta_left").css("margin-top"));
		setThumbsSetas(parseInt($('#thumbs').css('left')));
		return true;
	} else if ($("#thumbs_wrapper").length) {
		var thumbsOffset = Math.round((availH - topH - $("#thumbs_wrapper").height()) / 2) - topH;
		$("#thumbs_wrapper").css("padding-top", thumbsOffset + "px").css("padding-bottom", thumbsOffset + "px");
	}
}

function scrollThumbs(dir) {
	var dif = $("#seta_left").width() + $("#seta_right").width();
	var newpos = parseInt($('#thumbs').css('left')) + dir * (W - dif);
	if (newpos > 0) {
		newpos = 0;
	} else if (-newpos > thumbsScroll) {
		newpos = -thumbsScroll;
	}
	setThumbsSetas(newpos);
	$('#thumbs').animate({
		left: newpos
		},
		1000
	);
}

function setThumbsSetas(pos) {
	if (thumbsScroll > 0) {
		if (pos >= 0) {
			$("#seta_left").hide();
			$("#seta_right").show();
		} else if (-pos >= thumbsScroll) {
			$("#seta_left").show();
			$("#seta_right").hide();
		} else {
			$("#seta_left").show();
			$("#seta_right").show();
		}
	} else {
		$("#seta_left").hide();
		$("#seta_right").hide();
	}
}

// FOTOS
var atual = 0;
var total = 0;
var cods = new Array();
var cats = new Array();
var fotosp = new Array();
var fotosm = new Array();
var fotosg = new Array();
var legs = new Array();
var botOver = .2;
var botOut = .1;
var setaW = 30;
var setaH = thumbH;

function loadFotos() {
	$.post("fotos.php",
	{ sec: sec, cat: cat, cod: item },
	function(data){
		$('#conteudo').html(data);
	},
	"html"
	);
}

function setFotos(co, ca, fp, fm, fg, le, at) {
	cods = co;
	cats = ca;
	fotosp = fp;
	fotosm = fm;
	fotosg = fg;
	legs = le;
	atual = at;
	
	// bottom
	bottomH = $("#bottom").height();
	$("#bottom").fadeTo(0, 0);
	
	// grid bot
	$("#grid_bot img").fadeTo(0, botOut);
	$("#grid_bot").mouseenter(function() {
		$("#grid_bot img").fadeTo(0, botOver);
	});
	$("#grid_bot").mouseleave(function() {
		$("#grid_bot img").fadeTo(0, botOut);
	});
	
	// info bot
	$("#info_bot img").fadeTo(0, botOut);
	$("#info_bot a").mouseenter(function() {
		$("#info_bot img").fadeTo(0, botOver);
	});
	$("#info_bot a").mouseleave(function() {
		if ($("#foto_leg").css("display") == "none") {
			$("#info_bot img").fadeTo(0, botOut);
		}
	});
	
	// setas
	$("#seta_left").css("width", setaW+"px").css("height", setaH+"px");
	$("#seta_right").css("width", setaW+"px").css("height", setaH+"px");
	$("#seta_left").fadeTo(0, 0);
	$("#seta_right").fadeTo(0, 0);
	$("#seta_left img").fadeTo(0, thumbOut);
	$("#seta_right img").fadeTo(0, thumbOut);
	$("#seta_left").mouseenter(function() {
		$("#seta_left img").fadeTo(0, thumbOver);
	});
	$("#seta_left").mouseleave(function() {
		$("#seta_left img").fadeTo(0, thumbOut);
	});
	$("#seta_right").mouseenter(function() {
		$("#seta_right img").fadeTo(0, thumbOver);
	});
	$("#seta_right").mouseleave(function() {
		$("#seta_right img").fadeTo(0, thumbOut);
	});
	
	// foto grande
	if (isMobile) {
		$("#fotog_wrap").css("overflow", "visible");
	}

	// mais bot
	$("#foto_mais").css("width", $("#foto_mais img").prop("width") + "px");
	$("#foto_mais img").fadeTo(0, botOut);
	$("#foto_mais a").mouseenter(function() {
		$("#foto_mais img").fadeTo(0, botOver);
	});
	$("#foto_mais a").mouseleave(function() {
		$("#foto_mais img").fadeTo(0, botOut);
	});
	
	montaFotos();
}

function montaFotos() {
	total = cods.length;
	for (var i = 0; i < total; i ++) {
		if (cods[i] == item) {
			atual = i;
		}
	}
	
	$("#fotos").fadeTo(0, 0, function() {
		$("#fotom_over2").hide();
		$("#info_bot").fadeTo(0, 0);
		$("#seta_left").hide();
		$("#seta_right").hide();
		
		// foto media
		var fotom = fotosm[atual][0];
		fotomW = fotosm[atual][1];
		fotomH = fotosm[atual][2];
		
		$("#fotom").prop("width", fotomW);
		$("#fotom").prop("height", fotomH);
		
		// foto grande
		fotogW = fotosg[atual][1];
		fotogH = fotosg[atual][2];
		$("#fotog").prop("width", fotogW);
		$("#fotog").prop("height", fotogH);
		
		if (ajustaFotos()) {
			loader([['#fotom','midia/'+fotom]], function() {
				// foto media (+ info bot)
				$("#fotos").fadeTo(1000, 1, function() {
					$("#fotom_over2").show();
				});
				if (document.all) { // ie
					$("#fotom_over").hide();
				} else {
					$("#fotom_over").fadeTo(1800, 0);
				}
				// bottom (inicio)
				$("#bottom").fadeTo(1000, 1);
				// legenda
				var leg = legenda();
				if (leg) {
					$("#info_bot").fadeTo(1000, 1);
					$("#foto_leg").html(leg);
				} else {
					$("#foto_leg").html("");
				}
				// mais
				if (sec == 3) { // autoral
					$("#foto_mais a").attr("href", "#/"+sec+"/"+cat);
				} else if (total > 1 && !isNaN(cat)) {
					$("#foto_mais a").attr("href", "#/"+sec+"/"+cat+"/"+item+"/1");
				}
				// setas
				if (total > 1) {
					if (atual) {
						$("#seta_left img").prop("src", "midia/"+fotosp[atual-1][0]);
						$("#seta_left a").prop("href", "#/"+sec+"/"+cats[atual-1]+"/"+cods[atual-1]);
						$("#seta_left").fadeTo(1000, 1); // (inicio)
					} else {
						$("#seta_left").hide();
					}
					if (atual < total - 1) {
						$("#seta_right img").prop("src", "midia/"+fotosp[atual+1][0]);
						$("#seta_right a").prop("href", "#/"+sec+"/"+cats[atual+1]+"/"+cods[atual+1]);
						$("#seta_right").fadeTo(1000, 1); // (inicio)
					} else {
						$("#seta_right").hide();
					}
				}
			});
		}
	});
}

function legenda() {
	var leg = '';
	var leg1 = legs[atual][0].toUpperCase();
	var leg2 = legs[atual][1].toUpperCase();
	var leg3 = legs[atual][2].toUpperCase();
	if (leg1) { // CLIENTE / LEGENDA
		if (sec == 2 || sec == 7) { // publicidade / making of
			leg += '<SPAN class="leg_tit">CLIENTE</SPAN><BR>';
		}
		leg += leg1;
		if (leg2 || leg3) {
			leg += '<BR><BR>';
		}
	}
	if (leg2) { // AGENCIA
		leg += '<SPAN class="leg_tit">AGÊNCIA</SPAN><BR>'+leg2;
		if (leg3) {
			leg += '<BR><BR>';
		}
	}
	if (leg3) { // ANO
		leg += leg3;
	}
	return leg;
}

function ajustaFotos() {
	if ($("#fotos").length) {
		var legW = 0;
		var maisW = 0;
		var setasW = 0;
		var infoW = 0;
		if ($("#foto_leg").css("display") == "block") {
			legW = $("#foto_leg").outerWidth(true);
		}
		if ($("#foto_mais").css("display") == "block") {
			maisW = $("#foto_mais img").prop("width");
		}
		if (total > 1) {
			setasW = setaW;
		}
		if ($("#info_bot").css("display") == "inline" || $("#info_bot").css("display") == "block") {
			infoW = $("#info_bot").outerWidth(true);
		}
		var gridW = $("#grid_bot img").prop("width");
		var gridH = $("#grid_bot img").prop("height");
		// bottom bots lateral
		var wid1 = 0;
		var hei1 = 0;
		var freeW1 = availW - 2 * Math.max(gridW, legW, infoW + maisW, setasW);
		var freeH1 = availH - topH;
		if (document.all) { // ie
			var iedw = 6; //alert(availH);
			freeW1 -= iedw;
			var iedh = .45;
			freeH1 = Math.round(availH * iedh - topH);
		}
		if (fotomW > freeW1 || fotomH > freeH1) { // encolhe
			if (fotomW > freeW1) {
				var wid1 = freeW1;
				var hei1 = Math.round(freeW1 * fotomH / fotomW);
				if (hei1 > freeH1) {
					hei1 = freeH1;
					wid1 = Math.round(freeH1 * fotomW / fotomH);
				}
			} else if (fotomH > freeH1) {
				hei1 = freeH1;
				wid1 = Math.round(freeH1 * fotomW / fotomH);
				if (wid1 > freeW1) {
					wid1 = freeW1;
					hei1 = Math.round(freeW1 * fotomH / fotomW);
				}
			}
		} else { // tamanho original
			wid1 = fotomW;
			hei1 = fotomH;
		}
		// bottom bots abaixo
		var wid2 = 0;
		var hei2 = 0;
		var freeW2 = availW - 2 * Math.max(legW, maisW, setasW);
		var freeH2 = availH - topH - 2 * gridH;
		if (document.all) { // ie
			freeW2 -= iedw;
			freeH2 -= Math.round(availH * iedh - topH - 2 * gridH);
		}
		if (fotomW > freeW2 || fotomH > freeH2) { // encolhe
			if (fotomH > freeH2) {
				var hei2 = freeH2;
				var wid2 = Math.round(freeH2 * fotomW / fotomH);
				if (wid2 > freeW2) {
					wid2 = freeW2;
					hei2 = Math.round(freeW2 * fotomH / fotomW);
				}
			} else if (fotomW > freeW2) {
				wid2 = freeW2;
				hei2 = Math.round(freeW2 * fotomH / fotomW);
				if (hei2 > freeH2) {
					hei2 = freeH2;
					wid2 = Math.round(freeH2 * fotomW / fotomH);
				}
			}
		} else { // tamanho original
			wid2 = fotomW;
			hei2 = fotomH;
		}
		if (wid1 > wid2 && navigator.userAgent.indexOf("Firefox") == -1) { // bottom bots lateral
			var wid = wid1;
			var hei = hei1;
		} else { // bottom bots abaixo
			wid = wid2;
			hei = hei2;
		}
		// resize fotom
		$("#fotom").prop("width", wid);
		$("#fotom").prop("height", hei);
		// ajusta foto over
		$("#fotom_over").prop("width", wid);
		$("#fotom_over").prop("height", hei);
		$("#fotom_over").css("margin-top", -hei);
		// ajusta foto over2
		$("#fotom_over2").prop("width", wid);
		$("#fotom_over2").prop("height", hei);
		$("#fotom_over2").css("margin-top", -hei);
		// vcenter fotos
		var offsetFotos = Math.floor((availH - topH - hei) / 2);
		if (offsetFotos < 0) {
			$("#fotos").css("margin-top", 0);
		} else {
			$("#fotos").css("margin-top", offsetFotos+"px");
		}
		// ajusta laterais
		var margemW = Math.floor((availW - wid) / 2);
		$("#foto_left").css("width", margemW + "px");
		$("#foto_left").css("height", hei + "px");
		$("#foto_right").css("width", margemW + "px");
		$("#foto_right").css("height", hei + "px");
		if (document.all) { // ie
			var iedw2 = Math.round(iedw / 2);
			$("#foto_left").css("width", margemW-iedw2 + "px");
			$("#foto_right").css("width", margemW-iedw2 + "px");
		}
		// posiciona legenda
		var offsetLeg = Math.round((hei - $("#foto_leg").height()) / 2);
		$("#foto_leg").css("margin-top", offsetLeg + "px");
		// posiciona bot mais
		var offsetMais = hei - $("#foto_mais").height();
		if (offsetFotos < 10) {
			var offsetMais2 = 10 - parseInt($("#fotos").css("margin-top"));
		} else {
			offsetMais2 = 0;
		}
		$("#foto_mais").css("margin-top", offsetMais - offsetMais2 + "px");
		$("#foto_mais").css("margin-bottom", offsetMais2 + "px");
		// posiciona setas
		var offsetHSetas = -Math.round(hei / 2 + setaH / 2);
		$("#seta_left").css("margin-top", offsetHSetas + "px");
		$("#seta_right").css("margin-top", offsetHSetas + "px");
		if (atual) {
			var offsetWSetaLeft = setasW - fotosp[atual-1][1];
			$("#seta_left a").css("margin-left", offsetWSetaLeft + "px");
		}
		// posiciona bottom
		$("#bottom").css("margin-top", offsetFotos - bottomH + "px");
		if (document.all) { // ie
			var iedh2 = Math.round((offsetFotos * iedh * 2 - bottomH));
			$("#bottom").css("margin-top", iedh2 + "px");
		}
	}
	ajustaFotog();
	return true;
}

function showInfo() {
	if ($("#foto_leg").css("display") == "none") {
		$("#seta_left").hide();
		$("#seta_right").hide();
		$("#foto_mais").hide();
		$("#foto_leg").show();
	} else {
		if (total > 1) {
			if (atual) {
				$("#seta_left").show();
			}
			if (atual < total) {
				$("#seta_right").show();
			}
		}
		$("#foto_mais").show();
		$("#foto_leg").hide();
	}
	ajustaFotos();
}

function showBig() {
	$("#fotos").css("display", "none");
	$("#bottom").css("display", "none");
	
	fotogW = fotosg[atual][1];
	fotogH = fotosg[atual][2];
	var xis = Math.round((availW - fotogW) / 2);
	var yps = Math.round((availH - topH - fotogH) / 2);
	if (!isMobile) {
		$("#fotog").css("left", xis + "px");
		$("#fotog").css("top", yps + "px");
	}
	loader([['#fotog','midia/'+fotosg[atual][0]]], function() {
		$("#fotog_wrap").css("display", "block");
		if (!isMobile) {
			$("#fotog").draggable({ distance: 4 });
		}
		doResized();
	});
}

function hideBig() {
	$("#fotog").prop("src", "");
	$("#fotog_wrap").css("display", "none");
	$("#fotos").css("display", "block");
	$("#bottom").css("display", "block");
	doResized();
}

function ajustaFotog() {
	if ($("#fotog_wrap").length && $("#fotog_wrap").css("display") == "block") {
		$("#fotog_wrap").css("width", availW + "px");
		$("#fotog_wrap").css("height", (availH - topH) + "px");
		fotogX1 = availW - fotogW;
		fotogY1 = availH - fotogH;
		fotogX2 = 0;
		fotogY2 = topH;
		if (fotogX1 > fotogX2) {
			fotogX1 = fotogX2 = Math.round((availW - fotogW) / 2);
			$("#fotog").css("left", fotogX1 + "px");
		}
		if (fotogY1 > fotogY2) {
			fotogY1 = fotogY2 = Math.round((availH + topH - fotogH) / 2);
			$("#fotog").css("top", Math.round((availH - topH - fotogH) / 2) + "px");
		}
		$("#fotog").draggable("option", "containment", [fotogX1, fotogY1, fotogX2, fotogY2]);
	}
}
