// gestione dei checkbox per il confronto e chiamata per l'avvio del confronto
abilita_confronto = function(action) {
	if(action==0) {
		var n = $('#frm_prodotti input:checked').length;
		if(n>1) {
			$('#btn_confronta').addClass('active');
		} else {
			$('#btn_confronta').removeClass('active');
		}
		if(n>3) {
			$('#frm_prodotti input:[type=checkbox][checked=false]').attr('disabled', 'disabled');
		} else {
			$('#frm_prodotti input:[type=checkbox]').removeAttr('disabled');
		}
		var action = confronta_url;
		$('#frm_prodotti input:checked').each(function(i) {
			action+='&pag'+(i+1)+'='+this.value;
		});
		$('#frm_prodotti').attr('action',action); 
	} else {
		if($('#btn_confronta').hasClass('active')) {
			window.location = $('#frm_prodotti').attr('action');
		}
	}
	$('#frm_prodotti .confronta').css('display','none');
	$('#frm_prodotti input:checked').closest('.confronta').css('display','block');
}
// rollover sulle icone degli strumenti
strumenti_over = function(el) {
	var e = $(el.target),
		p = e.parent().parent();
		t = e.attr('alt'),
		h = p.find('.hint');
	if(p.hasClass('bookmark')) {
		$(p.find('.hint')[0]).text(t);
	} else {
		$(p.find('.hint')[1]).text(t);
	}
}
// roll out sulle icone degli strumenti
strumenti_out = function() {
	$('#strumenti .hint').text('');
}
// cambio immagine prodotto se sono presenti piÃ¹ colori
showImage = function(n) {
	$('#scheda_prodotto p.image').removeClass('current');
	$('#scheda_prodotto #img'+n).addClass('current');
}
// mostra la mappa del sito nel footer
openFooter = function() {
	$('#footer_link').hide();
	$('#footer_map').css('visibility','hidden')
	$('#footer_map').slideDown(function() {
		$('#footer_map').css('visibility','visible');
		$('#footer_close').show();
		$('#footer_open').hide();
	});
}
// nasconda la mappa del sito nel footer
closeFooter = function() {
	$('#footer_map').css('visibility','hidden').slideUp(function() {
		$('#footer_map').hide();
		$('#footer_link').show();
		$('#footer_close').hide();
		$('#footer_open').show();
	});
}
// setta l'intervallo per poi mostrare l'overlay sul prodotto
setProductInterval = function(e) {
	overlayInterval = window.setTimeout(function() {showProductDetail(e)},500);
}
// mostra l'overlay sul prodotto
showProductDetail = function(e) {
	window.clearTimeout(overlayInterval);
	$('#product_overlay').remove();
	
	var target = $(e.target);
	if(!target.hasClass('preview_prodotto_gia')) {
		target = target.closest('.preview_prodotto_gia');
	}
	var position = target.position();
	var offset = $('#content').position();
	
	var overlay = $('<div id="product_overlay"><div class="preview_prodotto_gia png"></div><div id="product_overlay_detail" class="png"></div></div>');
	overlayInside = overlay.find('.preview_prodotto_gia');
	target.find('h4').clone().appendTo(overlayInside);
	target.find('.img').clone().appendTo(overlayInside);
	var checkBoxId = target.find('input').attr('id');
	var check = $('<p class="confronta"><label for="overlayCheckbox" >Confronta</label><input type="checkbox" id="overlayCheckbox" name="overlayCheckbox" value="'+checkBoxId+'" /></p>');
	check.appendTo(overlayInside);
	target.find('.text').clone().appendTo(overlayInside);
	target.find('.prezzo').clone().appendTo(overlayInside);
	target.find('.ui-rater').clone().appendTo(overlayInside);
	target.find('.detail').clone().appendTo(overlay.find('#product_overlay_detail'));
	
	overlay.css('top',offset.top+position.top-10).css('left',offset.left+position.left-5);
	
	overlay.appendTo('#page');
	
	$('#product_overlay').find('input').attr('checked', target.find('input').is(':checked'));
	$('#product_overlay').find('input').attr('disabled', target.find('input').is(':disabled'));
	
	$('#product_overlay').hide().show();
	
	$('#product_overlay').mouseleave(function() {
		$('#product_overlay').remove()
	});
}
// allinea il checkbox "confronta" dell'overlay
alignProductCheckbox = function(e) {
	var target = $(e.target);
	var destinationCheck = $('#'+target.attr('value'));
	destinationCheck.attr('checked', target.is(':checked'));
	abilita_confronto(0);	
}
// apertura e chiusura dei menu di servizio
clickServiceCatalogue = function() {
	var e = $('#service_catalogue');
	$('#service_search').removeClass('open');
	if(e.hasClass('open')) {
		e.removeClass('open')
	} else {
		e.addClass('open');
	}
}
clickServiceSearch = function() {
	var e = $('#service_search');
	$('#service_catalogue').removeClass('open');
	if(e.hasClass('open')) {
		e.removeClass('open')
	} else {
		e.addClass('open');
	}
}
documentClick = function(){
	$('#service_nav .link').removeClass('open');
}
// gestione del form di ricerca prodotti in tendina
checkSearchForm = function() {
	$('#link_submit_prod').removeClass('enabled');
	var s = $('#box_form_area');
	var i = $('#box_form_sup');
	if(s.val()!="" && i.val()!="" && !isNaN(i.val())) {
		//$('#form_box_ricerca input[name="ambiente"]').val(s.val());
		$('#link_submit_prod').addClass('enabled');
	}
}
submitSearchForm = function() {
	if($('#link_submit_prod').hasClass('enabled')) {
		$('#form_box_ricerca').submit();
	}
}
// gestione del form di ricerca prodotti in home
checkHomeSearchForm = function() {
	$('#form_home_ricerca .submit a').removeClass('enabled');
	var s1 = $('#form_home_ricerca select[name="form_area"]');
	var s2 = $('#form_home_ricerca select[name="form_tipo"]');
	var i = $('#form_home_ricerca input[name="form_sup"]');
	if(s1.val()!="" && s2.val()!="" && i.val()!="" && !isNaN(i.val())) {
		//$('#form_home_ricerca input[name="ambiente"]').val(s1.val());
		$('#form_home_ricerca .submit a').addClass('enabled');
	}
}
submitHomeSearchForm = function() {
	if($('#form_home_ricerca .submit a').hasClass('enabled')) {
		$('#form_home_ricerca').submit();
	}
}




// Ã¨ da eliminare in tutto il sito!
closeBox = function(){};
// aggiunge le curve al menÃ¹ di navigazione
makeRoundedCorners = function() {
	$('#content_nav > ul').wrap('<div id="outer_nav" />');
	$('#outer_nav').append('<div id="upper_nav" class="png">&nbsp;</div>');
	$('#outer_nav').append('<div id="lower_nav" class="png">&nbsp;</div>');
}

// disabilita il submit dei form con il tasto enter
disableFormSubmit = function() {
	$('#box_form_sup').keydown(function(event) {
		if (event.keyCode == '13' && !$('#link_submit_prod').hasClass('enabled')) {
			event.preventDefault();	
   		}
	});
	$('#box_form_sup').keypress(function(event) {
		if (event.keyCode == '13' && !$('#link_submit_prod').hasClass('enabled')) {
			event.preventDefault();	
   		}
	});
	$('#form_home_ricerca input[name="form_sup"]').keydown(function(event) {
		if (event.keyCode == '13' && !$('#form_home_ricerca .submit a').hasClass('enabled')) {
			event.preventDefault();	
   		}
	});
	$('#form_home_ricerca input[name="form_sup"]').keypress(function(event) {
		if (event.keyCode == '13' && !$('#form_home_ricerca .submit a').hasClass('enabled')) {
			event.preventDefault();	
   		}
	});
}

/* calcolatore pellets	*/
$.fn.calcolatorePellets = function() {
	
	fuels = [];
	fuels[1] = {e:1.323};
	fuels[2] = {e:0.785};
	fuels[3] = {e:1.418};
	fuels[4] = {e:0.473};
	fuels[5] = {e:0.444};
	fuels[6] = {e:1.5};

	_this = $(this);
	_this.find('input[type=radio]').click(function(ev) {
		$('#calcolatore_pellets_values').removeAttr('class').addClass($(this).val())
	});
	_this.find('button').click(function(ev) {
		ev.preventDefault();	
		checkValues();
	})
	function checkValues()
	{
		var _values = $('#calcolatore_pellets_values');
		if(_values.hasClass('kwh'))
		{
			kwh = $('#calcolatore_pellets_values_kwh').val();
			if(kwh=="" || isNaN(kwh))
			{
				error();
				return false
			}
			calculateKwh(kwh);
		} else {
			eur = $('#calcolatore_pellets_values_eur').val();
			if(eur=="" || isNaN(eur))
			{
				error();
				return false
			}
			calculateEur(eur,$('#calcolatore_pellets_values_fuel').val());
		}
	}
	
	function calculateKwh(kwh) 
	{
		_this.find('#calcolatore_pellets_results').css('display','block');
		_this.find('.result-kwh').text($.digits(Math.round(kwh)));
		for (var i=1;i<=6;i++)
		{
			_this.find('.result-'+i).text('€ ' +$.currency(kwh/10*fuels[i].e));
		}
	}
	
	function calculateEur(eur, fuel) 
	{
		var kwh = (10*eur)/fuels[fuel].e;
		calculateKwh(kwh);
	}
	
	function error() 
	{
		alert('I dati inseriti non sono corretti.')
	}
}

//mostra il messaggio nel fumetto se si aggiunge o rimuove una pagina dal pdf
pdfAlert = function() {
	//pdfremove=1
	//pdfadd=1
	var t = "";
	if($.getUrlVars()['pdfremove']==1) {
		t = "&Eacute; stata eliminata una pagina dal tuo catalogo";
	}
	if($.getUrlVars()['pdfadd']==1) {
		t = "&Eacute; stata aggiunta una pagina al tuo catalogo";
	}
	if(t!="") {
		var b = $('<div id="balloon"><div>'+t+'</div></div>').css('opacity',0);
		$('#header').append(b);
		$('#balloon').animate({opacity: 1,top:'+=20'},800).delay(2000).fadeOut(500);
	}
}
// share functions
share = function(s) {
	var internalURL = $(location).attr('href');
	switch(s) {
		case "fb":
			window.open('http://www.facebook.com/share.php?u='+internalURL);
			break;
		case "tw":
			var status = $('meta[name=title]').attr("content")+" ";
			$.ajax({
				url: shorten_url,
				dataType: 'json',
				data:{longUrl:internalURL},
				success: function(data) {
					window.open('http://twitter.com/home?status=' + status + data.shortUrl);
				},
				error: function() {
					window.open('http://twitter.com/home?status=' + status + internalURL);
				}	
			});
			break;	
	}
}

openPopup = function(url,w,h) {
	window.open (url,"","menubar=0,scrollbars=1,resizable=1,width="+w+",height="+h);
	return false;
}

// utility
$.extend({
	getUrlVars: function(){
		var vars = [], hash;
		var hashes = window.location.href.slice(window.location.href.indexOf('?') + 1).split('&');
		for(var i = 0; i < hashes.length; i++)
		{
			hash = hashes[i].split('=');
			vars.push(hash[0]);
			vars[hash[0]] = hash[1];
		}
		return vars;
	},
	getUrlVar: function(name){
		return $.getUrlVars()[name];
	},
	currency: function(val) {
		val = Math.round(val*100)/100;
		var s = String(val);
		var num = s.split('.')[0].replace(/(\d)(?=(\d\d\d)+(?!\d))/g, "$1.");
		var dec = s.split('.')[1];
		if(dec==undefined) {
			dec = '00'
		} else if(dec.length==1) {
			dec+='0';
		}
		return String(num+','+dec)
	},
	digits : function(n) {
		return String(n).replace(/(\d)(?=(\d\d\d)+(?!\d))/g, "$1.");
	}
});


$.fn.digits = function(){ 
    return this.each(function(){ 
        $(this).text( $(this).text().replace(/(\d)(?=(\d\d\d)+(?!\d))/g, "$1.") ); 
    })
}

