/* $Id: functions.js 284 2011-08-30 15:29:41Z Carlos Miguelez $ */

/*
 * fgs
 * Javascript Functions Document
 * Produktion und Umsetzung:
 * dialoop GmbH - www.dialoop.de
*/

function getUrl(choosenArticle) {
	 return encodeURIComponent(location.href.substring(0, location.href.search('.html')) + '.html');
}

/*
 * -------------------------------------------------------------------------------------------------------------------------------------
 * BEREICH SERVICE FUNKTIONEN
 * -------------------------------------------------------------------------------------------------------------------------------------
*/
function ajaxRecommend(choosenArticle) {
	
	// aufgerufene url übernehmen
	var uri = decodeURIComponent(getUrl(choosenArticle));
	var title = '';
	var text = '';
	var language = '';
	
	
	if ($('#main').is('div')) {
		title = $("#main h1").text();
	} else {
		title = 'No Title';
	}

	// überprüfen welche sprache der browser benutzt
	if (window.location.href.search("/en/") != -1) {
		language = 'en';
	} else {
		language = 'de';
	}
	
	// entleeren der absender und empfänger felder (vermeidung dauersendung)
	$("#sendedFrom").val("");
	$("#sendedTo").val("");
	
	// ebenfalls enleeren auch wenn nur die cbox geschlossen wird
	$("#cboxClose").click(function() {
		$("#sendedFrom").val("");
		$("#sendedTo").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
	if(language == "de") {
		text = title + "\n" + uri;
	} else {
		text = title + "\n" + uri;
	}
	
	// Firefox 3.6 Standorte Positionierung
	if ($.browser.mozilla && $.browser.version < '3.7') {
		$("#content .standortLinks li").css({"padding-right":"3px"});
	}

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

	// 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(),
				// sonderverarbeitung
				name: $("#name").val(),
				email: $("#email").val(),
				www: $("#www").val(),
				lang: $("#sendedLanguage").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);
				}
			}
		});
	});
}


/*
 * ------------------------------------------------------------------------------------------------------
 * Standard Funktionen beim laden des Dokuments
 * ------------------------------------------------------------------------------------------------------
*/
$(document).ready(function() {     
	
	ajaxRecommend('');
	choosenArticle = '';
	
	// Druckfunktion deaktivieren
	if ( $(".tx-powermail-pi1").is("div") || $("#beraterSuche").is("form")){
		$(".printpage").removeAttr("href");
	}
	
	// Verweise aus der Share Funktion in neuen Fenster öffnen um Variablen zu übergeben
	$("a").each(function() {
		if ( $(this).attr("rel") == "external" ) {
			$(this).attr("target", "_blank");
		}
	});
	
	if ( $("#print-content-adv").is("div") ) {
		$("#trick17").show();
	}

	if(mitarbeiter) {
		if (window.location.href.indexOf("partner") != '-1') {
			window.location.href = window.location.href.replace('partner', 'mitarbeiter');
		}
	}
	
	var english = false;
	
	if (window.location.href.indexOf("/en/") != '-1') {
		english = true;
	}
	
	
	// Im Englischen werden die Veranstaltungen des fgs-practice-forum ausgeblendet
	if (english && (window.location.href.search('fgs-practice-forum') != -1 || window.location.href.search('events.html') != -1)) {
		$('.tx-veranstaltungen-pi1').hide();
	}
	// Im Englischen werden die external-seminars Veranstaltungen ausgeblendet
	if (english && window.location.href.search('external-seminars') != -1) {
		$('.tx-veranstaltungen-pi1').hide();
	}	
	
	// Plugin Indexed-Search Ergebnisse
	$(".searchResultText").each(function(){
		
		// ... am anfang entfernen
		if ( $(this).text().substring(2, 0) == " .") {
			$(this).text( $(this).text().substr(5) );
		}
		
		// ... am ende hinzufügen
		if ( $(this).text().substr(-3) != "...") {
			$(this).text( $(this).text().replace(" ...", "") + " ...");
		}
		
	});
	
	$('#right').show();

	$('.cur').each(function(){
			var height = $(this).height();
		
		var offset = 85;
		
		
		if ($.browser.webkit){
			offset = 87;
		}
		
		if ($.browser.opera){
			offset = 87;
		}
		
		if ($.browser.msie){
			offset = 88;
		}
		
		var position = height / 2 - offset;

		$(this).css({'background-position':' 0 ' + position + 'px' });
		$(this).css({'background-image':'url(fileadmin/templates/img/bg_arrow_hover.png)'});
		
	
	});

	$('#topnavi li').mouseenter(function(){
		
		var height = $(this).height();
		var offset = 85;
	
		if ($.browser.webkit){
			offset = 87;
		}
		
		if ($.browser.opera){
			offset = 87;
		}
		
		if ($.browser.msie){
			offset = 88;
		
		}
		
		var position = height / 2 - offset;

		$(this).css({'background-position':' 0 ' + position + 'px' });
		$(this).css({'background-image':'url(fileadmin/templates/img/bg_arrow_hover.png)'});
	
	}).mouseleave(function(){
		if (!$(this).hasClass('cur')){
			$(this).css({'background-image':''});
		}	
	});

	$('.internal_teaser').each(function(){
		var position = $(this).position();
		$(this).css( {"left": position.left  , 'top' :(position.top - 10), 'position':'absolute'} );
	});
	
	$('.alphabet li').each(function() {
		if ($('.char' + $(this).text()).is('tr')) {
			$(this).css({'cursor':'pointer', 'color':'#043F69'});
		} else {
			$(this).css({ 'color':'#a9a9a9'});
		}
		
	});
		
	$('.alphabet li').click(function(){
		$('.char').hide();
		$('.char' + $(this).text()).show();
	});
	
	$('.standortLinks li').each(function(){
		if ($('.' + $(this).children('a').attr('rel')).is('tr')) {
			$(this).addClass('standortLinksVerified');
			$(this).children('a').addClass('standortLinksVerified');
		}
	});
	
	$('.standortLinksVerified').css({'cursor':'pointer', 'color':'#043F69'});
	
	$('a.standortLinksVerified').click(function(){
		$('.char').hide();
		$('.' + $(this).attr('rel')).show();
	});

	$('.divider:last').detach();
	
	if ($('#right').is('div')) {
		if($('#right').html() == '') {
			$('#right').detach();
		}
	}
	
	if($('.tx-persons-pi1').is('div')) {
		$('#main').css({'float':'left'});
		
	}
	
	$('#buttonF').click(function() {
		window.location.href = "http://" + window.location.host + "/" + links[$('#jahreSel :selected').val() + $('#monateSel :selected').val()] ;
	
	});
	
	$('#right:last').css({'border-bottom':'0'});
	
	if($('#main .csc-default:first').children(':first').is('p')) {
		$('#main .bodytext:first').css({'padding-top':'15px'});
	}
	
	$('.internal_top_border').css({'border-bottom':'solid 1px #a9a9a9','display':'block','width':'465px'});
	$('.internal_top_border:first').css({'border-top':'solid 1px #a9a9a9'});

	
	$('.toTop').css({'cursor':'pointer', 'padding':'15px 15px 15px 15px','display':'block'});
	$('.toTop').click(function(){$('html,body').animate({scrollTop : 0},'slow');});
	
	$('.csc-textpic-imagewrap').css({'width':'auto'});
	
	$('#main .csc-textpic-center').each(function() {
		var temp  = ($('#main').width() - $(this).children().children('.csc-textpic-imagerow').width())/2;
		$(this).css({'padding-left': temp + 'px'});
	});
	
	$('#statusSel').change(function(){
		
		if ($('#statusSel option:selected').attr('value') == 96 ) {
			$('#beraterKompetenzfeld').hide(200);
		} else {
			$('#beraterKompetenzfeld').show(200);
			
		}
	});
	
	$('.csc-textpic-caption').detach();
	$('#right .csc-default .csc-textpic').css({'font-size':'0'});

	if ($('#siteMapMagic').is('div')){
		$('#siteMapMagic a').each(function(){
			$(this).text($(this).attr('title'));
		});
	}

	if ( $("#footernavi").is('ul') ) {
		$('.serviceFeedback').attr('href', $('.serviceFeedback').attr('href').substring(0,($('.serviceFeedback').attr('href').search('=')+1)) + cleanUpGet($('#main h1:first').text()) + "&body=" + cleanUpGet($('#main h1:first').text() + ": ") + location.href);
	}
	
	// Empfehlen Formular in colorbox aufrufen
	$(".recommend-Formular").colorbox({width:"600px", inline:true, href:"#recommendFormular"});
        
});

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);
}
