$(document).ready(function() {
	
	$(document).pngFix();
	
	//HOMEPAGE
	if ($("#contentSpace").attr("class") != 'home') {
		$("#contentSpace .bottom").css("display", "none");
		$(".loghi").css("display", "none");
	}
		
	//MENU
	$(".menu_bg ul li.level1").hover( // gestione menu 1 level
		function() {
			$(this).addClass('current');
		}
		, function() {
			$(this).removeClass('current');			
		}		
	);
		
	//Menu header
	$(".box.lang ul li").hover( // gestione lingue
		function() {
			$(this).addClass('current');
			$(this).children("a").addClass('selected');
		}
		, function() {
			if ($(this).attr("class") != "current this") {
				$(this).removeClass('current');	
				$(this).children("a").removeClass('selected');	
			}
		}		
	);
	$(".header .menu ul#menuFirstLevel li.level1").hover( // gestione menu header
		function() {
			$(this).addClass('current');
		}
		, function() {
			if ($(this).attr("class").substring(12, 19) != "current") {
				$(this).removeClass('current');
			}
		}		
	);
	
	//PROGETTI
	var timeAnimate = 700;
	if ($(".project").length > 0) {
		$(".project").each(function(){
			$(this).hover(
				function() {
					$(this).stop().animate({
						  'height' : '75px'
					}, timeAnimate);
					var boxLast = parseInt($(this).attr("class").substring(8, $(this).attr("class").length))-1;
					$(".project."+boxLast).stop().animate({
						  'height' : '35px'
					}, timeAnimate);
				}
				, function() {
					$(this).stop().animate({
						  'height' : '55px'
					}, timeAnimate);
					var boxLast = parseInt($(this).attr("class").substring(8, $(this).attr("class").length))-1;
					$(".project."+boxLast).stop().animate({
						  'height' : '55px'
					}, timeAnimate);
				}
			);
		});	
	}
	
	//LOGHI
	if ($.browser.msie && parseInt(jQuery.browser.version) < 7) {
		$(".loghi ul li span").each(function() {
			var bg = $(this).css('filter');
			var className = $(this).attr('class');
						
			if (className != 'open') {
				var extension = bg.substring(bg.lastIndexOf('.'),bg.length)
				extension = extension.substr(0,4)
				$(this).mouseover(function() {
					$(this).css('filter', bg.replace(extension,'_on' + extension));				
				});
				$(this).mouseout(function() {
					$(this).css('filter', bg);
				});
			}
		});
	} else {
		$(".loghi ul li img").each(function() {
			var src = $(this).attr('src');
			var className = $(this).attr('class');						
			if (className != 'open') {
				var extension = src.substring(src.lastIndexOf('.'),src.length);			
				$(this).mouseover(function() {				
					$(this).attr('src',src.replace(extension,'_on' + extension));
				});	
				$(this).mouseout(function() {
					$(this).attr('src',src);
				});
			}
		});	
	}
	
	//GALLERY
	var imageVisible = 0;
	var id = 0;
	var classImageVideo = '';
	var timeFade = 1200;
	if ($(".gallery").length > 0) {
		$(".rectangle").each(function() {
			$(".rectangle").click(function() {
				id = parseInt($(this).attr("id").substring(3, $(this).attr("id").length));
				classImageVideo = $(this).attr("class").substring(0, 5);
				classImageVideoImgVisible = $("#rct"+imageVisible).attr("class").substring(0, 5);
				
				if (id != imageVisible) {
					if (classImageVideoImgVisible == 'video') { //distruggo il video
						//alert(imageVisible+") era un video lo distruggo");
						var htmlObj = $("#img"+imageVisible).html();
						$("#img"+imageVisible).empty();
					}
					if (classImageVideo == "video") {
						$("#img"+imageVisible).css("display", "none");
						$("#img"+id).css("display", "block");
					} else {						
						if (classImageVideoImgVisible == 'video') {
							$("#img"+imageVisible).css("display", "none");
							$("#img"+id).css("display", "block");
						} else {
							$("#img"+imageVisible).fadeOut(timeFade);
							$("#img"+id).fadeIn(timeFade);
						}
					}
					if (classImageVideoImgVisible == 'video') { //ricreo il video
						//alert(imageVisible+") era un video lo ricreo");
						var pathVideo = $("#pV"+imageVisible).html();
						$("#img"+imageVisible).html(createSwfObject(imageVisible, pathVideo));
					}
					
					// Cambio box selezionato
					$("#rct"+imageVisible).removeClass('selected');
					$("#rct"+id).addClass('selected');
					imageVisible = id;
				}
			});
		});
	}
	
	//Apertura in nuova finestra
	$(".openNewWindow").click(function() {
		var href = $(this).attr("href");
		window.open(href, 'window');
		return false;
	});
	
	// anteprima immagine sui rettangoli
	if ($('.rectangle').length > 0){
		$('.rectangle').tooltip({ 
	 		delay: 0, 
	 		top: -85,
	 		left: 0,
	    	showURL: false, 
	    	bodyHandler: function() { 
	    		var path = $("#" + this.id + " span").text();
	        	return $("<img width='100' height='63' />").attr("src", path);
		    }
		});
	}

	// CASE HISTORY PAGING
	var totPageCH = parseInt($("#totPagCh").html());
	var pageCaseHistory = parseInt($("#pagChVisible").html());
	var finished = true;
	$(".prevPageCaseHistory").click(function(){
		if (finished && pageCaseHistory!=1) {
			finished = false;
			pageCaseHistory--;
			$("#pageHistory"+(pageCaseHistory+1)).fadeOut(timeFade, function(){
				$("#pageHistory"+pageCaseHistory).fadeIn(timeFade, function(){
					finished = true;
				});
			});
			$("#pg"+(pageCaseHistory+1)).removeClass("selected");
			$("#pg"+pageCaseHistory).addClass("selected");
			verifyPagingCaseHistory(pageCaseHistory, totPageCH);
		}
	});	
	$(".nextPageCaseHistory").click(function(){	
		if (finished && pageCaseHistory!=totPageCH) {
			finished = false;
			pageCaseHistory++;
			$("#pageHistory"+(pageCaseHistory-1)).fadeOut(timeFade, function(){				
				$("#pageHistory"+pageCaseHistory).fadeIn(timeFade, function(){
					finished = true;
				});	
			});
			$("#pg"+(pageCaseHistory-1)).removeClass("selected");
			$("#pg"+pageCaseHistory).addClass("selected");
			verifyPagingCaseHistory(pageCaseHistory, totPageCH);
		}
	});	
	$(".number").click(function() {
		if (finished && (pageCaseHistory>=1 && pageCaseHistory<=totPageCH)) {
			finished = false;
			var pageNextVisible = parseInt($(this).attr("title"));
			$("#pageHistory"+pageCaseHistory).fadeOut(timeFade, function(){
				$("#pageHistory"+pageNextVisible).fadeIn(timeFade, function(){
					finished = true;
				});					
			});
			$("#pg"+pageCaseHistory).removeClass("selected");
			$("#pg"+pageNextVisible).addClass("selected");
			pageCaseHistory = pageNextVisible;
			verifyPagingCaseHistory(pageCaseHistory, totPageCH);
		}
	})		
});

$(window).bind("load", function(){ 

	//Altezze colonna destra e sinistra
	if ($("#contentSpace").attr("class") != 'home') {
		var heightLeft  = $(".left").height();
		var heightRight = $(".right").height();
		if (heightRight < heightLeft) { //colSx piu bassa di colDx
			var heightHeader = 96;
			var loghiHeader = 74;
			var heightCS = $("#contentSpace").height();
			var heightCSPreview = heightLeft - (heightHeader + loghiHeader);
			if (heightCS < heightCSPreview) { //Se l'altezza prevista è piu alta di quella attuale cambio altezza
				heightCS = heightCSPreview;
			}
			if ($(".progetti").length > 0) {
				if (heightCS < ($(".progetti").height()+100)) {
					heightCS = $(".progetti").height()+100;
				} else if (window.innerWidth <= 1024) {
					var numProject = parseInt($("#totProject").html());
					$(".project."+numProject).css("margin-bottom", "51px");
				}
			}
			$("#contentSpace").css("height", heightCS+"px");			
		} else {
			heightCS = $("#contentSpace").height();
			$(".dettaglioCaseHistory").css("height", heightCS+"px");
		}
		heightRight = $(".right").height();
		if (heightLeft < heightRight) {
			$(".left").css("height", heightRight+"px");
		}
	}
	
	//Gestione sfumatura div right
	heightRight = $(".right").height();
	if ($("#contentSpace").attr("class") != 'home') {
		$(".vertical").css("height", (heightRight+74)+"px");
	} else {
		$(".vertical").css("height", heightRight+"px");
	}
	
	//Sistemazione div sfumaturaRigthPort
	$(".sfumaturaRigthPort").css("height", $(".dettaglioCaseHistory").height()+"px");
	
	//Visualizzo alcuni div, al caricamento della pagina
	$("#contentSpace .bottom").css("display", "block");
	$(".loghi").css("display", "block");
	$("#contentSpace .dettaglioCaseHistory").css("display", "block");
	if ($(".progetti").length > 0) {		
		$(".progetti").css("display", "block");
	}
	
	//Apertura e chiusura del box del portfolio
	var openBoxPort = false;
	$(".linguetta").click(function(){
		if (!openBoxPort) {
			$(".box_cs.portfolio").animate({ 'width' : '448px' }, 1500);
			openBoxPort = true;
		} else {
			$(".box_cs.portfolio").animate({ 'width' : '67px' }, 1500);
			openBoxPort = false;
		}
	});
	
	//Imposta la funzione di cambio case history, nel box portfolio
	if ($("#numAbstractCH").length > 0) {
		var numAbst = parseInt($("#numAbstractCH").html());
		var y = window.setInterval("changeAbstrtPortfolioTextRandom("+numAbst+")", 7000);
	}
	// Imposta la funzione di cambio news in home
	if ($("#numAbstractNews").length > 0) {
		var numAbst = parseInt($("#numAbstractNews").html());
		var y = window.setInterval("changeAbstrtNewsTextRandom("+numAbst+")", 7000);
	}
	//Crea i video, del portfolio
	$(".pathVideo").each(function(){
		numVideo = parseInt($(this).attr("title"));
		path = $(this).html();
		createSwfObject(numVideo, path);
	});	
	
});

//Funzione per cambiare le case history del box portfolio
var abstractIn = 1;
var timeFadePortfolio = 1500;
var indFunctionAbstr = 1;
function changeAbstrtPortfolioTextRandom(numAbst) {
	if (indFunctionAbstr == 1) {
		numAbstract = numAbst;
	}
	$("#abstractPortfolio-"+abstractIn).fadeOut(timeFadePortfolio, function(){
		if (abstractIn == numAbstract) {
			abstractIn = 1;
		} else {
			abstractIn++;
		}
		var path = $("#abstractPortfolio-"+abstractIn+" span").text();
		$(".read_more").attr("href", path);			
		$("#abstractPortfolio-"+abstractIn).fadeIn(timeFadePortfolio);		
	});
	indFunctionAbstr++;
}

var abstractInNews = 1;
var timeFadeNews = 1500;
var indFunctionAbstrNews = 1;
var numAbstractNews = 0;
function changeAbstrtNewsTextRandom(numAbst) {
	if (indFunctionAbstrNews == 1) {
		numAbstractNews = numAbst;
	}
	$("#newsHome-"+abstractInNews).fadeOut(timeFadeNews, function(){
		if (abstractInNews == numAbstractNews) {
			abstractInNews = 1;			
		} else {
			abstractInNews++;
		}
		$("#newsHome-"+abstractInNews).fadeIn(timeFadePortfolio);		
	});
	indFunctionAbstrNews++;
}

//
function verifyPagingCaseHistory(pageCaseHistory, totPage){
		if($("#pageHistory"+(pageCaseHistory+1)).length == 0){
			$(".nextPageCaseHistory").removeClass("block");			
		} else {
			$(".nextPageCaseHistory").removeClass("block");	
			$(".nextPageCaseHistory").addClass("block");	
		}
		
		if($("#pageHistory"+(pageCaseHistory-1)).length == 0){
			$(".prevPageCaseHistory").removeClass("block");			
		} else {
			$(".prevPageCaseHistory").removeClass("block");
			$(".prevPageCaseHistory").addClass("block");			
		}
		
		for (k=1; k<=totPage; k++) {
			if (((pageCaseHistory-3)<=k && k<=pageCaseHistory) || ((pageCaseHistory+3)>=k && k>=pageCaseHistory)) {
				$("#pg"+k).removeClass("hidden");	
				$("#pg"+k).addClass("block");				
			} else {
				$("#pg"+k).removeClass("block");	
				$("#pg"+k).addClass("hidden");
			}
		}
		
		if (pageCaseHistory==1) {
			$(".prevPageCaseHistory img").attr("src", "/skin/website/widgets/back_off.gif");
			$(".prevPageCaseHistory img").css("cursor", "default");
		} else {
			$(".prevPageCaseHistory img").attr("src", "/skin/website/widgets/back.gif");
			$(".prevPageCaseHistory img").css("cursor", "pointer");
		}
		
		if (pageCaseHistory==totPage) {
			$(".nextPageCaseHistory img").attr("src", "/skin/website/widgets/next_off.gif");
			$(".nextPageCaseHistory img").css("cursor", "default");
		} else {
			$(".nextPageCaseHistory img").attr("src", "/skin/website/widgets/next.gif");
			$(".nextPageCaseHistory img").css("cursor", "pointer");
		}
		
		
}

function createSwfObject(idVideo, pathVideo) {
	var so = new SWFObject("/skin/website/swf/genoa.swf", 'video'+idVideo, "476", "267", "8", "#336699");
	so.addParam("wmode", "transparent");
	so.addVariable("indirizzo_video", pathVideo);
	so.addVariable("indirizzo_skin", "/skin/website/swf/SkinOverPlaySeekMute.swf");
	so.write("img" + idVideo);
}

function changeCenterGoogleMaps(p1, p2, p3, p4){
				
	var map = new GMap2(document.getElementById("map"));
	map.addControl(new GSmallMapControl());
	map.addControl(new GMapTypeControl());
	
	map.setCenter(new GLatLng(p1, p2, p3, p4), 13);
	
	var pin1 = new GLatLng(p1, p2, p3, p4);
	var marker = new GMarker(pin1, {title: "MAC Group"});
	map.addOverlay(marker);
}
