/*
 *
 * Saleskit jQuery Funktionen
 *
 */

$(document).ready(
	function() {
		
		// Verweise sollen kein Rahmen anzeigen,
		// wenn diese geklickt werden
		$('a').focus(function() {
			$(this).blur();
		});
		
		// Externe Verlweise sollen in einem
		// Separaten Fenster geöffnet werden
		$('a').each(function() {
			if ($(this).attr("rel") == "external") {
				$(this).attr("target", "_blank");
			}
		});
		
		// Starten der Artikel Empfhelen Funktion
		ajaxRecommend('');
		
		// Anpassung der Breite der ColorBox (Switch für den IE 7)
		if ( $.browser.msie && $.browser.version < 8 ) {
			$(".enableBookmarks").colorbox({width:"53%", inline:true, href:"#bookmarks"});		
			$(".recommend-Formular").colorbox({width:"53%", inline:true, href:"#recommendFormular"});	
		} else {
			$(".enableBookmarks").colorbox({width:"48%", inline:true, href:"#bookmarks"});		
			$(".recommend-Formular").colorbox({width:"48%", inline:true, href:"#recommendFormular"});
		}
		
		// Verstecken der Share Funktionen bei Formularen
		if ( $('.tx-powermail-pi1').is('div') ) {
			$('#share').hide();
		}
		
	}
);


function resizeBackground(scrolling) {
	// wenn nicht gescrollt wird
	if ( !scrolling) {
		
		//  Höhenberechnung
		var newHeight = $(window).height() -132;
		
		// Wenn Animation definiert wurde
		if (animated) {
			
			// Grösse des linken Animations-Container anpassen
			$("#sk-left-opaqueRose").height($(window).height()+$(window).scrollTop() -132);
			
			// Animation des Linken OpaqueRose Containers
			$("#saleskit-fillarea-leftpart").css({"top":"20px"});
			$("#sk-left-opaqueRose").css({"display":"block"});
			$("#saleskit-fillarea-leftpart").animate({"top": newHeight}, 2000, "swing", function callback() {
				$("#sk-left-opaqueRose").height($(window).height()+$(window).scrollTop()-(newHeight +112));
			});
			// Animation des Rechten OpaqueRose Containers 
			$("#sk-right-opaqueRose").height($(window).height()+$(window).scrollTop()-132);
			$("#sk-right-opaqueRose").animate({"height": 35}, 2000, "swing" ); 
			
		} else {
			$("#saleskit-fillarea-leftpart").css('top',newHeight);
			$("#saleskit-fillarea-leftpart").css('display','block');
			$("#sk-left-opaqueRose").height($(window).height()+$(window).scrollTop()- (newHeight +112));
		}
		
	} else {
		
		$("#saleskit-fillarea-leftpart").css('top', $(window).height()+$(window).scrollTop()-132);
		
		if ($(window).height()+$(window).scrollTop() -132 < 400) {
			$("#saleskit-fillarea-leftpart").hide();
		} else {
			$("#saleskit-fillarea-leftpart").show();
		}
		
		// Positionierung der Kontakt Box auf der Rchten Seite
		if($("#saleskit-fillarea-leftpart").position().top < 100) {
			$("#contactBox").removeClass("kb-fixed");
			$("#contactBox").addClass("kb-absolute");
		} else {
			$("#contactBox").removeClass("kb-absolute");
			$("#contactBox").addClass("kb-fixed");
		}
	}
}

// Resize Background Funktion nicht automatisch ausführen
resizeBackground(false);	

$(window).scroll(function() {
	resizeBackground(true);
});

$(window).resize(function() { 
	resizeBackground(true); 
})

// Headline austauschen
if ( (window.location.href == 'http://www.saleskit.de/') && austauschHeadline != 'notSet') {
	$('#saleskit-content h1').css({"margin-top":"20px"});
	$('#saleskit-content h1').html(austauschHeadline);
}

/*
 * -------------------------------------------------------------------------------------------------------------------------------------
 * Funktion zum Filtern der aufgerufenen URL
 * -------------------------------------------------------------------------------------------------------------------------------------
 */
function getUrl() {
	if ( window.location.href.search(".html") != -1 ) {
		url = encodeURIComponent(location.href.substring(0, location.href.search('.html')) + '.html');
	} else {
		url = encodeURIComponent(location.href);
	}
	return url;
}

/*
 * -------------------------------------------------------------------------------------------------------------------------------------
 * BEREICH SERVICE FUNKTIONEN
 * -------------------------------------------------------------------------------------------------------------------------------------
*/
function ajaxRecommend() {
	
	// aufgerufene url übernehmen
	var uri = decodeURIComponent(getUrl());
	var title = '';
	var text = '';
	var referer = 'saleskit';
	var language = '';
	
	// überprüfen welche sprache der  benutzer nutzt
	if ( window.location.href.search("/en/") != -1 ) {
		language = "en"
	} else if ( window.location.href.search("/de/") != -1 ) {
		language = "de"
	} else {
		language = "de"
	}
	
	// Seiten Headline einholen
	if ( $('#saleskit-content').is('div') ) {
		title = $('#saleskit-content h1:first').text() + "-breakline-";
	} else {
		title = '';
	}
	
	// Share-Funktion verbergen wenn Dankeseiten der Formulare aufgerufen werden
	if ( window.location.href.search("vielen-dank-fuer-ihre-anfrage.html") != -1 ) {
		$('#share').hide();
	} else if ( window.location.href.search("newsletterbestaetigung.html") != -1 ) {
		$('#share').hide();
	} else if ( window.location.href.search("rueckrufbestaetigung.html") != -1 ) {
		$('#share').hide();
	}

	// entleeren der absender und empfänger felder (vermeidung dauersendung)
	$("#sendedFrom").val("");
	$("#sendedTo").val("");
	$("#userMessage").val("");
	$("#sendedMessage").val("");
	$("#languageSelected").val("");
	$("#httpReferer").val("");
	
	// ebenfalls enleeren auch wenn nur die cbox geschlossen wird
	$("#cboxClose").click(function() {
		$("#sendedFrom").val("");
		$("#sendedTo").val("");
		$("#userMessage").val("");
		$("#languageSelected").val("");
		$("#httpReferer").val("");
		$("#recommend-errors").empty();
	});
	
	// ausblenden der fehler wenn input angeklickt wird
	$("#recommendFormular #sendedFrom").focus(function() {
		$("#recommend-errors").fadeOut("slow");
	});
	$("#recommendFormular #sendedTo").focus(function() {
		$("#recommend-errors").fadeOut("slow");
	});

	// anzeige während der verarbeitung
	$(".loader").show();

	// textausgabe anhand der sprache bestimmen
	text = title + "-breakline-" + uri;

	// textarea mit inhalt fühlen in der entsprechenden sprache
	$("#sendedMessage").val(text);
	$("#languageSelected").val(language);
	$("#httpReferer").val(referer);

	// ajax übermittlung starten beim klick auf den absende button
	$("#recommendFormular #submit").click(function() {
		// beginn ajax verarbeitung
		$.ajax({
			// url zum php script
			url: 'fileadmin/templates/scripts/recommend.php',
			// übersendungs methode
			type: 'GET',
			// eingegebene formulardaten übernehmen
			data: {
				sendedFrom: $("#sendedFrom").val(),
				sendedTo: $("#sendedTo").val(),
				sendedMessage: $("#sendedMessage").val(),
				userMessage: $("#userMessage").val(),
				usedLanguage: $("#languageSelected").val(),
				httpReferer: $("#httpReferer").val(),
				// sonderverarbeitung
				name: $("#name").val(),
				email: $("#email").val(),
				www: $("#www").val()
			},

			// verarbeitungsmethode der daten
			dataType: 'json',

			// vergleich der daten mit php script
			success: function(response) {
				// aktion je nach rücksendung vom php script
				if(response.error != 'none') {
					$("#recommend-errors").fadeIn("slow");
					$("#recommend-errors").html(response.error);
				} else {
					$("#recommendFormular form").hide();
					$("#cboxClose").hide();
					$("#recommend-verified").show();
					$("#recommend-verified").html(response.done);
					setTimeout("location.href='" + uri + "'", 2000);
				}
			}
		});
	});
}

function cleanUpGet(subject) {
	subject = str_replace('ä', 'ae', subject);
	subject = str_replace('ö', 'oe', subject);
	subject = str_replace('ü', 'ue', subject);
	subject = str_replace('ß', 'ss', subject);
	subject = str_replace('Ä', 'Ae', subject);
	subject = str_replace('Ö', 'Oe', subject);
	subject = str_replace('Ü', 'Ue', subject);
	subject = str_replace('&', '+', subject);
	return subject;
}

function str_replace(search, replace, subject) {
	var result = "";
	var  oldi = 0;
	for (var i = subject.indexOf(search); i > -1; i = subject.indexOf(search, i)) {
		result += subject.substring(oldi, i);
		result += replace;
		i += search.length;
		oldi = i;
	}
	return result + subject.substring(oldi, subject.length);
}
