$(document).ready(function(){
	
	trackEventsForMinimumPageScroll();
	
	$(".teaser a.bigtarget").bigTarget({
		hoverClass: 'over',
		clickZone : 'div:eq(0)'
	});
	
	$("td a.bigtarget").bigTarget({
		hoverClass: 'over',
		clickZone : 'tr:eq(0)'
	});
	
	$("table").delegate('td','mouseover mouseleave', function(e) {
		if (e.type == 'mouseover') {
			$(this).parent().addClass("hover");
		} else {
			$(this).parent().removeClass("hover");
		}
	});
	
	$.each($("a[conversionTracking]"), function(i, o) {
		link = $(o);
		link.attr("onClick", "trackConversion('" + link.attr("conversionTracking") + "', '" + $(location).attr("pathname") + "')");
	});
	
	$.each(["#appointment, #callback", "#contact"], function(index, name) { 
		
		form = $(name);
		orgAction = form.attr("action");
		form.attr("orgAction", orgAction);
		
		handler = "/application/formhandler.php";
		action = form.attr("action", handler + "?form=" + form.attr("action"));
		
		
		form.validate({
			messages: {
				"FORM[formular][el_1]": "Bitte geben Sie Vorname ein",
				"FORM[formular][el_2]": "Bitte geben Sie Ihren Vor- und Nachname ein",
				"FORM[formular][el_3]": "Bitte geben Sie Ihren Namen ein",
				"FORM[formular][el_4]": "Bitte geben Sie Ihre Telefonnummer ein",
				"FORM[formular][el_5]": "Bitte geben Sie Ihre Telefonnummer ein",
				"FORM[formular][el_6]": "Bitte geben Sie Ihren E-Mailadresse ein",
				"FORM[formular][el_8]": "Bitte wählen Sie Ihre Erreichbarkeit aus"
			},
			submitHandler: function(form) {
				$(form).ajaxSubmit({
					target: name + "_output",
					dataType: "dataType",
					form: form,
					success: function(data){
						
						form = $(this.form);
						url = form.attr("orgAction");
						output = $(this.target);
						data = jQuery.parseJSON(data);
						cl = (data.error)?"error":"success";
						
						if (!data.error) {
							convId = form.find("input[name*='conversionId']").attr("value");
							if (convId != "") {
								trackConversion(convId, url);
							}
						}
						
						output.html(data.message);
						output.removeClass();
						output.addClass(cl);
						output.css('opacity', 0);
						output.show();
						output.animate({
							opacity: 1
							}, 6000, function() {
								output.fadeOut('fast', function() {
									if (!data.error) {
										form.clearForm();
									}
								});
						});
						
						
						
					}
				})
			}	
		});	
	});

});



var isDuplicateScrollEvent = 0;

function trackEventsForMinimumPageScroll() {
   $(window).scroll(function(){
     var scrollPercent = getScrollPercent();
    
     if(scrollPercent > 90)
     {
       if(isDuplicateScrollEvent == 0)
       {
    	 isDuplicateScrollEvent = 1;
         trackEvent("Lesebereich", "> 90%", document.location.href);
       }
     }
   });
}

function getScrollPercent() {
     var bottom = $(window).height() + $(window).scrollTop();
     var height = $(document).height();

     return Math.round(100*bottom/height);
}
                         
function trackEvent(Category, Action, Label) {
	_gaq.push(['_trackEvent', Category, Action, Label])
}    


function trackConversion(name, url) {

	switch (name) {
	
		case "contactAB":
    		_gaq.push(['_trackPageview', url + "?conversion"]);
			trackAdWordsConversion("contact");
			trackWebsiteOptimizerConversion("contact");
			trackFacebookConversion("contact");
			break;
	
    	default:
    		_gaq.push(['_trackPageview', url + "?conversion"]);
    		trackAdWordsConversion(name);
    		trackFacebookConversion(name);
    		break;
	}

}

function trackWebsiteOptimizerConversion(name) {
	body = $("body");
	body.append('<iframe id="wo" height="1" width="1" border="0" frameborder="0"/>');
	$('#wo').attr('src', '/application/wo/' + name + '.htm');
}

function trackAdWordsConversion(name) {
	body = $("body");
	body.append('<iframe id="adwords" height="1" width="1" border="0" frameborder="0"/>');
	$('#adwords').attr('src', '/application/adwords/' + name + '.htm');
}

function trackFacebookConversion(name) {
	body = $("body");
	body.append('<iframe id="facebook" height="1" width="1" border="0" frameborder="0"/>');
	$('#facebook').attr('src', '/application/facebook/' + name + '.htm');
}

rauchRechnerCalc = function(oConfig){
	var $form = $('#rauch_rechner'),
		iYears = $form.find('[name=rauch_year]').val(),
		iAmount = $form.find('[name=rauch_amount]').val(),
		iCost = 0,
		iNikotin = 0,
		iTime = 0;
	
	iCost = (oConfig.price / oConfig.amount) * iAmount;
	iCostTmp = Math.ceil(iCost * 7);
	//$('#rauch_cost_week').html(iCostTmp);
	iCostTmp = Math.ceil(iCost * 31);
	//$('#rauch_cost_month').html(iCostTmp);
	iCostTmp = Math.ceil(iCost * 365);
	iCostTmp = $.formatNumber(iCostTmp, {format:"#,###.00", locale:"de"});
	$('#rauch_cost_year').html(iCostTmp);
	iCostTmp = Math.ceil(iCost * 365 * 10);
	//$('#rauch_cost_10years').html(iCostTmp);
	iCostTmp = Math.ceil(iCost * 365 * 20);
	//$('#rauch_cost_20years').html(iCostTmp);
	iCostTmp = Math.ceil(iCost * 365 * iYears);
	iCostTmp = $.formatNumber(iCostTmp, {format:"#,###.00", locale:"de"});
	$('#rauch_cost_total').html(iCostTmp);
	//$('#rauch_cost_total').formatNumber({format:"#,###.00", locale:"us"});

	
	iNikotin = Math.ceil(oConfig.nikotin * iAmount * 356 * iYears);
	iNikotin = $.formatNumber(iNikotin, {format:"#,###", locale:"de"});
	$('#rauch_nikotin').html(iNikotin);
	
	iTime = oConfig.time * iAmount;
	iTimeTmp = Math.ceil(iTime * 7 / 60);
	//$('#rauch_time_week').html(iTimeTmp);
	iTimeTmp = Math.ceil(iTime * 31 / 60 / 24);
	//$('#rauch_time_month').html(iTimeTmp);
	iTimeTmp = Math.ceil(iTime * 365 / 60 / 24);
	$('#rauch_time_year').html(iTimeTmp);
	
	$('#rauch_result').fadeIn();
};
