$(document).ready( function() {
	/* Alle internen Links weich scrollen lassen */
	$.localScroll();
		
	areainit('body');
	window.setTimeout("$('li.posteingang_neu a').pulsate()",500);
	tooltip_start();
	AudioPlayer.setup("/sound/player.swf", {  
      width: 1,
      bg: "F3F3F3",
      autostart: "yes"
  });  
});

document.onkeydown = keypress;

var dlh = document.location.href;
var fehler_gemeldet = false;
var icon_falsch ='<img src="/images/icon_fehler.png" class="icon" width="16" height="16" alt="falsch" />';
var icon_korrekt = '<img src="/images/icon_ok.png" class="icon" width="16" height="16" alt="korrekt" />';

function areainit(area) {	
	area = area+" ";
	/* auf alle - pre-autoremove */
	fancyzoom();
	
	/* ajaxing the forms */
	$(area+"form.ajax").submit(function(){
		ajax_submit(this.id);
		return false;
	});

	/* ajaxing the tabs */
	$(area+'.contenttabs.ajax > ul > li > a').attr('rel','ajax').click(ajax_tabs);
	
	/* ajaxing the pages */
	ajaxpages_check();
	
	/* auto hider */
	$(area+"div[class*='hide_']").each(function (i) {
		hidetime = $(this).attr("class");
		$(this).attr("id","hide"+i);
		hidetime = hidetime.substr(hidetime.indexOf("hide_") + 5);

		if (hidetime.indexOf(" ") != -1) {
			hidetime = hidetime.substr(0, hidetime.indexOf(" "));
		}
		window.setTimeout("$('#hide"+i+"').slideUp(function() {$(this).remove();});",hidetime*1000);	
	});
	
	/* changebox */
	if ($(area+"div[class*='changebox_']").html()) {
		changebox();
	}
	
	ajaxvoting();
	smsstatus();
	
	
	// und zum feierabend noch die ready-funktionen der seiten aufrufen
	if (trim(area) == 'body') {
		if (typeof dready == 'function') {
			dready();
		}
	}
}

var smsstatuscheck_intval;
function smsstatus() {
	if ($('span.smsstatus').html()) {
		smsstatuscheck_intval = window.setInterval("smsstatus_check()", 5000);
	}
}

function smsstatus_check() {
	var ids = '';
	$('span.smsstatus').each(function(){
		var c = $(this).attr('class');
		c = str_replace('smsstatus','',c);
		c = str_replace('_','',c);
		c = str_replace(' ','',c);
		ids += "id[]="+c+"&";
	});
	
	if (ids != "") {
		$.ajax({
	  	url: "/sms/get_smsstatus.php?"+ids,
	  	cache: false,
	  	success: function(html){
	  		eval(html);
	  	}
		});
	} else {
		// keine offenen mehr
		window.clearInterval(smsstatuscheck_intval);
	}
}


function ajaxvoting() {
	$(".ratingblock a.rater").click(function(){
		var url = addajax($(this).attr("href"));
		var ziel = $(this);
		$.ajax({
		  url: url,
		  cache: false,
		  success: function(html){
		  	$(ziel).parent().parent().parent().html(html);
		  }
		});
		return false;
	});
}


function savedata(url) {
	url = addajax(url);
	$.ajax({
	  url: url,
	  cache: false
	});
}

function runlready() {
	if (typeof lready == 'function') {
		lready();
	}
}

function fancyzoom() {
	if ($("a[class*='zoom']").html()) {
	
		// ggf. zoom löschen
		$("a[class*='zoom']").unbind();
		
		// neues zoom aktivieren
		setupZoom();
		
		// ggf. zoomicon löschen
		$("div.zoomicon").remove();
		
		// zoomicon hinzufügen
		$("a[class*='zoom'] img").attr('rel','ajax').after('<div class="zoomicon"><img src="http://img.livinghandy.de/css/img/magnifier.png" width="16" height="16" alt="zoom" /></div>');
	}
}


function layer_confirm(text,t, w, h) {
	if (!h) { h='200'; }
	if (!w) { w='300'; }
	layer('&nbsp;',text+'<br /><br /><br /><div class="centertext"><input type="button" onclick="document.location.href=\''+t.href+'\';" value="OK" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<input type="button" onclick="layer_hide_mitclose();" value="Abbrechen" /></div>',w,h);
	return false;
}

function layer_confirm_js(text,js,w,h) {
	if (!h) { h='200'; }
	if (!w) { w='300'; }
	layer('&nbsp;',text+'<br /><br /><br /><div class="centertext"><input type="button" onclick="'+js+'" value="OK" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<input type="button" onclick="layer_hide_mitclose();" value="Abbrechen" /></div>',w,h);
	return false;
}

function layer_alert(text,w,h) {
	if (!h) { h='200'; }
	if (!w) { w='300'; }
	layer('&nbsp;',text+'<br /><br /><br /><div class="centertext"><input type="button" onclick="layer_hide_mitclose();" value="OK" /></div>',w,h);
}

function addajax(url) {
	if (url.indexOf("ajax=1") == -1) {
		return addvar(url,'ajax=1');
	} else {
		return url;
	}
}

function addvar(url,addvar) {
	if (url.indexOf('#') != -1) {
		var raute = true;
	}

	if (url.indexOf("?") == -1) {
		if (raute) {
			url = str_replace('#','?'+addvar+'#',url);
		} else {
			url += '?'+addvar;
		}
	} else {
		if (raute) {
			url = str_replace('#','&'+addvar+'#',url);
		} else {
			url += '&'+addvar;
		}
	}
	return url;
}

function urltoioc(url,ioc,load) {
	url = addajax(url);	
	if (load == true) {
		$(ioc).fadeOut("slow", function() {$(ioc).html('<img src="'+ajaxIMG.src+'" width=32" height="32" alt="laden..." />');});
		$(ioc).fadeIn("slow");
	}
	$.ajax({
	  url: url,
	  cache: false,
	  success: function(html){
	  	$(ioc).fadeOut("slow",function() {$(ioc).html(html);});
			$(ioc).fadeIn("slow");
	  }
	});
}

function urltotab(d,load) {
	url = addajax(d.href);	
	if (load == true) {
		$(d).parent().parent().parent().next().slideUp("", function() {
			$(d).parent().parent().parent().next().html('<img src="'+ajaxIMG.src+'" width=32" height="32" alt="laden..." />');});
		$(d).parent().parent().parent().next().slideDown();
	}
	$.ajax({
	  url: url,
	  cache: false,
	  success: function(html){
	  	$(d).parent().parent().parent().next().slideUp('',function() {
				$(d).parent().parent().parent().next().html(html);
				$(d).parent().parent().parent().next().slideDown();
			});
	  }
	});
}

function loadJS(url) {
	$.getScript(addajax(url));
}

function loadCSS(url) {
	css = document.createElement('link');
	css.setAttribute('rel','stylesheet');
	css.setAttribute('type','text/css');
	css.setAttribute('href',url);
	$("head").append(css);
}

function login_layer(form) {
	var data = $('#login_ajax').serialize();
	var url = $('#login_ajax').attr('action');
	$("#TB_ajaxWindowTitle").html(layer_oldtitle);
	contentchanger(
		'.layercontent',
		addvar(url,data),
		'up',
		'1',
		function () {
			contentchanger('.loginarea','/inc/header_status.inc','fade');
		}
	);
	
	return false;
}


function ajaxlayer(t,u,w,h) {
	urltolayer(t,addajax(u.href),w,h);
}


function urltolayer(titel,url,w,h){
	if (!$('#TB_load').html()) {layer_load();}
	url = addajax(url);
	
	$.ajax({
	  url: url,
	  cache: false,
	  success: function(html){
	  	layer_window(titel,html,w,h);
	  }
	});
	//return false;
}

jQuery.fn.slideToggle = function(t,a,b) {
	if ($(this).css('display') == 'none') {
		$(this).slideDown(function(){
			if (t && a && b) {
				$(t).html(a);
			}
		});
	} else {
		$(this).slideUp(function(){
			if (t && a && b) {
				$(t).html(b);
			}
		});
	}
}

jQuery.fn.pulsate = function() {
$(this).fadeOut(250,function() {$(this).fadeIn(250, function () { $(this).fadeOut(250, function() {$(this).fadeIn(250, function () { $(this).fadeOut(250, function() {$(this).fadeIn(250);});});});});});
}




jQuery.fn.slideToggle2 = function() {
	if ($(this).css('display') == 'none') {
		$(this).slideDown();
	} else {
		$(this).slideUp();
	}
}

var disableESC = false;
function keypress(e) {
  if (!e) {
    e = window.event;
  }
  if (e.which) {
    code = e.which;
  } else if (e.keyCode) {
    code = e.keyCode;
  }
  
  /* ESC */
	if (code == 27 && disableESC == false) {
		/* Layer vorhanden? */
		if ($('#TB_load').html() || $('#TB_window').html()) {
			/* kein Zoom offen? */
			if ($("#ZoomBox").css("visibility") == 'hidden' || !$("#ZoomBox").html()) {
				layer_hide();
			}
		}
	}
}

function showfehler(head,text,zeit) {
	var zufall = rand(1000,9999);
	
	if (text == undefined) {
		text = head;
		head = '';
	}
	
	if (head) {
		head = '<div class="fehlericon"><b>'+head+'</b></div>';
	}
	
	if ($('#einspaltig').html()) {
		var bereich = '#einspaltig';
	} else {
		var bereich = '#zweispaltigcontainer';
	}
	
	$(bereich).prepend('<div class="fehler" id="hide_'+zufall+'">'+head+text+'</div>');
	
	if (isInt(zeit)) {
		window.setTimeout("$('#hide_"+zufall+"').slideUp(function() {$(this).remove();});",zeit*1000);
	}
}

function layer_window_hide() {
	$("#TB_window").fadeOut("slow",function() {$("#TB_load").fadeIn("");});
}

function layer(title,content,w,h) {
	layer_load();
	layer_window(title,content,w,h);
	// und zum feierabend noch die ready-funktionen des layers aufrufen
	window.setTimeout("runlready()", 100);
}

function layer_load() {
	tb_show();
	$("#TB_overlay").unbind();
	$("#TB_overlay").fadeIn();
}

function layer_window(title,content,w,h) {

	if (title != "") {
		title = "<div id='TB_ajaxWindowTitle'>"+title+"</div>";
	} else {
		title = "";
	}

	if (content.indexOf("layer_hide()") == '-1') {
		hide = "<div id='TB_closeAjaxWindow'><a href='javascript:layer_hide();' id='TB_closeWindowButton'>&nbsp;</a></div>";
	} else {
		hide = "";
	}
	
	if (hide || title) {
		bar = "<div id='TB_title'>"+title+hide+"</div>";
	} else {
		bar = "";
	}
	
	var pagestyle = $("#container").attr("class");
	
	content = "<div class='"+pagestyle+"'><div class='inhalt'>"+bar+"<div id='TB_ajaxContent' class='TB_modal'><div class='layercontent'>"+content+"</div></div></div></div>";
	$("#TB_window").html(content);
	$("#TB_window").css({height: h+"px", width: w+"px"});
	TB_WIDTH = w;
	TB_HEIGHT = h;

	// standard von der thickbox
	tb_position();
	
	// positionfix (höhe) by LH.de
	layer_position();
	
	areainit("#TB_window");
	
	$("#TB_load").fadeOut("",function () {$("#TB_load").css('display','none');$("#TB_window").fadeIn("");layer_remove_load();} );
}

function layer_window_show(title,content,w,h) {
	if (content && w && h) {
		layer_window(title,content,w,h);
	} else {
		$("#TB_load").fadeOut("",function() {$("#TB_load").css('display','none');$("#TB_window").fadeIn();layer_remove_load();});
	}
}

function layer_remove_load() {
		window.setTimeout('$("#TB_load").fadeOut();',1000);
}

function layer_position() {
	// scrollbar machen
	$("#TB_window").css('position','absolute');
	
	// fensterdaten holen
	getSize();

	// top abständen entfernen
	$("#TB_window").css('marginTop','0').css('top','0');

	// höhe berechnen incl scroll
	var new_height = myScroll + ((myHeight - TB_HEIGHT) / 2);
	
	if (new_height<myScroll) {
		new_height = myScroll+10;
	}
	
	// und setzen
	$("#TB_window").css('top',new_height+"px");	
}

// existiert ebenfalls in FancyZoom.js
function getSize() {
	// Window Size

	if (self.innerHeight) { // Everyone but IE
		myWidth = window.innerWidth;
		myHeight = window.innerHeight;
		myScroll = window.pageYOffset;
	} else if (document.documentElement && document.documentElement.clientHeight) { // IE6 Strict
		myWidth = document.documentElement.clientWidth;
		myHeight = document.documentElement.clientHeight;
		myScroll = document.documentElement.scrollTop;
	} else if (document.body) { // Other IE, such as IE7
		myWidth = document.body.clientWidth;
		myHeight = document.body.clientHeight;
		myScroll = document.body.scrollTop;
	}

	// Page size w/offscreen areas
	if (window.innerHeight && window.scrollMaxY) {
		myScrollWidth = document.body.scrollWidth;
		myScrollHeight = window.innerHeight + window.scrollMaxY;
	} else if (document.body.scrollHeight > document.body.offsetHeight) { // All but Explorer Mac
		myScrollWidth = document.body.scrollWidth;
		myScrollHeight = document.body.scrollHeight;
	} else { // Explorer Mac...would also work in Explorer 6 Strict, Mozilla and Safari
		myScrollWidth = document.body.offsetWidth;
		myScrollHeight = document.body.offsetHeight;
	}
}


function password_strength(input,output){
	var input_length=input.length;
	var strength=0;
	
	number_re=new RegExp("[0-9]");
	if(number_re.test(input)){
		strength++;
	}
	
	non_alpha_re=new RegExp("[^A-Za-z0-9]");
	if(non_alpha_re.test(input)){
		strength++;
	}
	
	upper_alpha_re=new RegExp("[A-Z]");
	if(upper_alpha_re.test(input)){
		strength++;
	}
	
	if(input_length>=6){
		strength++;
	}
	
	var strength_str='Sicherheit: ';
	if(input_length<5){
		strength_str=strength_str+'<strong style="color:orange">zu kurz</strong>'
	} else if(strength<=1){
		strength_str=strength_str+'<strong style="color:grey">Unsicher</strong>';
	} else if (strength<=2){
		strength_str=strength_str+'<strong style="color:blue">Mittel</strong>';
	} else {
		strength_str=strength_str+'<strong style="color:green">Stark</strong>';
	}

	if (!input_length) {
		strength_str='';
	}

	$(output).html(strength_str);
}

function password_double(first,second,output) {
	if (first) {
		if (!second) {
			$(output).html(icon_falsch);
		} else if (first == second) {
			$(output).html(icon_korrekt);
		} else {
			$(output).html(icon_falsch);
		}
	} else {
		$(output).html('');
	}	
}

function email_check(mail,output) {
	if (!mail) {
		$(output).html('');
	}	else if (/^(\w+(?:\.\w+)*)@((?:\w+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)$/i.test(mail)) {
		$(output).html(icon_korrekt);
	} else {
		$(output).html(icon_falsch);
	}
}

function handyswitcher(hersteller,model,ziel) {
        $(ziel).html('<option>...l&auml;dt...</option>');

        if (typeof hersteller != 'string') {
                hersteller = hersteller.value;
        } else {
                // müssen wir den hersteller selecten!
                $(ziel).val(hersteller);
        }

        $.post("/js/handys.php", { hersteller: hersteller, model: model },function(data) {
                $(ziel).html(data);
        });
}



function layer_hide_mitclose() {
	layer_hide();
}


function layer_hide() {
 	$("#TB_imageOff").unbind("click");
	$("#TB_closeWindowButton").unbind("click");
	$("#TB_window").fadeOut("",function(){
		
		// wenn TB_load existiert soll es doch bitteschön mit ausfaden.
		if ($("#TB_load").css("display") == 'block') {
			var fadeouts = '#TB_overlay,#TB_load';
		} else {
			var fadeouts = '#TB_overlay';
		}
	
		$(fadeouts).fadeOut("", function() {
				$('#TB_window,#TB_overlay,#TB_HideSelect').trigger("unload").unbind().remove();
				$("#TB_load").remove();
		});	
	});
	
	if (typeof document.body.style.maxHeight == "undefined") {//if IE 6
		$("body","html").css({height: "auto", width: "auto"});
		$("html").css("overflow","");
	}
	// esc wieder aktivieren
	disableESC = false;
}



function ajax_tabs() {
	// alle aktiv-klassen entfernen...
	$(this).parent().parent().find('li').removeClass('aktiv');
	$(this).parent().parent().find('li').removeClass('ba');		
	$(this).parent().parent().find('li.firstaktiv').addClass('first');
	$(this).parent().parent().find('li.lastaktiv').addClass('last');
	$(this).parent().parent().find('li').removeClass('firstaktiv');
	$(this).parent().parent().find('li').removeClass('lastaktiv');
	
	// und das aktuelle aktiv machen...
	if ($(this).parent().hasClass('first')) {
		$(this).parent().removeClass('first');
		$(this).parent().addClass('firstaktiv');
		$(this).parent().next().addClass('ba');
	}
	if ($(this).parent().hasClass('last')) {
		$(this).parent().removeClass('last');
		$(this).parent().addClass('lastaktiv');
	}
	if ($(this).parent().attr("class") == '') {
		$(this).parent().addClass('aktiv');
		$(this).parent().next().addClass('ba');
	}
	
	urltotab(this,false); 
	
	return false;	
}


function ajax_submit(form) {
	form = '#'+form;
	$(form).ajaxSubmit({
		url: addajax($(form).attr('action'))+'&formid='+form.substring(1),
	  success: function(t) {
	    eval(t); 
	  }
	});
	return false;
	 
}

function ajaxpages_getseitenzahl(url,area) {
	var page_regex = new RegExp("[?&]"+area+"_page=(\\d+)","");
	var page = page_regex.exec(url);
	return (page)?page[1]:'1';
}


function ajaxpages_check() {	
	$("div[class*='ajaxpages_']").each(function() {
			var area = $(this).attr("class");
			
			var area_regex = new RegExp("ajaxpages_([a-z]+)_area","");
			area = area_regex.exec(area);
			area = area[1];
	
			$(".ajaxpages_"+area+"_area").css("background-color","#FFF");
			page = ajaxpages_getseitenzahl(dlh,area);
	
			ajaxpages_do(area,page);
	});
}


function ajaxpages_do(area,page) {
	$(".ajaxpages_"+area+"_area .lauf a").attr('rel','ajax');
	if ($(".ajaxpages_"+area+"_area .lauf").html()) {
				//vorheriges unbind verhindert flackern
				$(".ajaxpages_"+area+"_area .lauf a").unbind();
				$(".ajaxpages_"+area+"_area .lauf a").click(function () {

					var vertikal;
					var new_page;
					var dir;
					var speed;
					var arealen = area.length;
					
					// geschwindigkeit
					if ($("div[class*='ajaxpages_"+area+"_speed']").html()) {
						speed = $("div[class*='ajaxpages_"+area+"_speed']").attr("class");
						speed = speed.substr(speed.indexOf("ajaxpages_"+area+"_speed")+ 16 + arealen);
						if (speed.indexOf(" ") != -1) {
							speed = speed.substr(0, speed.indexOf(" "));
						}
					} else {
						speed = 250;
					}
								
					if ($(".ajaxpages_"+area+"_vertikal").html()) {
						vertikal = true;
					} else { 
						vertikal = false;
					}


					// neue seitenzahl aus url holen für richtungswechsel
					var url = $(this).attr("href");
					var new_page = ajaxpages_getseitenzahl(url,area);
					
			    if (new_page > page) {
							if (vertikal) {
								dir = "up";
							} else {
								dir = "left";
							}
					} else {
							if (vertikal) {
								dir = "down";
							} else {
								dir = "right";
							}
					}
					
					var c=0;
					$(".ajaxpages_"+area+"_area .lauf").html('<img src="/css/img/loadingAnimation.gif" width="208" height="13" alt="Lade..."/>');

					contentchanger(
						'.ajaxpages_'+area+'_area',
						addvar(url,'ajax=1&task=get_ajaxpages_'+area),
						dir,
						speed,
						function () {
							ajaxpages_do(area,new_page);
						}
					);
					
					return false;
		    });
			}
}


function changebox() {
	$("div[class*='changebox_']").each(function() {
		var area = $(this).attr("class");
		var area_regex = new RegExp("changebox_([a-z]+)_area","");
		area = area_regex.exec(area);
		area = area[1];
		var arealen = area.length;
				
		var url = $("div.changebox_"+area+"_area .changelink").attr('rel','ajax').attr('href');
		url = addajax(url);
				
		if ($("div[class*='changebox_"+area+"_dir']").html()) {
			var dir = $("div[class*='changebox_"+area+"_dir']").attr("class");
			dir = dir.substr(dir.indexOf("changebox_"+area+"_dir")+ 14 + arealen);
			if (dir.indexOf(" ") != -1) {
				dir = dir.substr(0, dir.indexOf(" "));
			}
		} else {
			var dir = 'left';
		}

		$("div.changebox_"+area+"_area .changelink").unbind();
		
		$("div.changebox_"+area+"_area .changelink").click(function(){
			contentchanger(
				'.changebox_'+area+'_area',
				url,
				dir,
				'500',
				function () {
					changebox();
				}
			);
			return false;
		});
	});
}

var cc_gesperrt = '';
function contentchanger( area, url, dir, speed, funct ){
	var dir2;
	
	url = addajax(url);
		
	if (cc_gesperrt == area) {
		return false;
	}
	
	$(area + " a").unbind();
	$(area + " a").attr("onclick","").attr("href","javascript:void(0);");
	cc_gesperrt = area;
	
	if (dir == 'fade') {
		// bleibt
	} else if (dir == 'right') {
		dir2 = 'left';
	} else if (dir == 'up') {
		dir2 = 'down';
	} else if (dir == 'down') {
		dir2 = 'up';
	} else {
		dir2 = 'right';
	}
	
	if (isNaN(speed)) {
		var speed = 350;
	} else {
		speed = parseInt(speed);
	}
	
	if (area.indexOf('#') != -1) {
		var idbased = true;
		var area_ohne = str_replace('#','',area);
	} else {
		var area_ohne = str_replace('.','',area);
	}	
	
	if (!$(area+"_cc").html()) {
		$(area).wrap("<div class='"+area_ohne+"_cc' style='overflow:hidden;'></div>");
	}
	
	if (idbased) {
		alert("ContentChanger: ID-Based. Keine gute Idee!");
		$(area).after('<div id="'+area_ohne+'_tmp" style="display:none;"></div>');
	} else {
		$(area).after('<div class="'+area_ohne+'_tmp" style="display:none;"></div>');
	}

	$(area+"_tmp").load(url,"", function() {
		var c=0;
		if (c==0) {
			c++;

			if (!$(area+"_tmp "+area).html()) {
				if (idbased) {
					$(area+"_tmp").wrapInner('<div id="'+area_ohne+'"></div>');
				} else {
					$(area+"_tmp").wrapInner('<div class="'+area_ohne+'"></div>');
				}
			}

			var newclass = str_replace(area_ohne,area_ohne+"_tmp",$(area+"_tmp "+area).attr("class"));

			$(area+"_tmp").html($(area+"_tmp "+area).html());
			$(area+"_tmp").attr("class",newclass);

			var afterfunction = function(){
				
				$(area).remove();
				if (idbased) {
					$(area+"_tmp").attr("id", area_ohne);
				} else {
					$(area+"_tmp").attr("class", str_replace(area_ohne+"_tmp",area_ohne,newclass));
				}
				
				$(area+ " a").unbind(); 
				
				if(jQuery.isFunction(funct)) {
					funct.call(this);
				}
				
				if (dir != 'fade') {
					$(area+'_cc').animate({
						height: tmp_height
					},function(){
						$(area+'_cc').css("height","auto");							
					});
				}
				
				
				if (url.indexOf('#') != -1) {
					$.scrollTo( url.substring(url.indexOf('#')), 500);
				}	
				
				areainit(area);
				cc_gesperrt = '';

			} /* end afterfunction */
			
			//$(area + "_tmp a").click(function(){return false;});
	
			
			if (dir=='fade') {
				$(area).fadeOut(speed,function(){
					$(area+"_tmp").fadeIn(speed,afterfunction);
				});
			} else {
				
				$(area).hide("slide",{ direction: dir },speed);
				$(area+"_tmp").show("slide",{ direction: dir2 },speed, afterfunction);
				
				var height = $(area).css("height");
				var tmp_height = $(area+"_tmp").css("height");

				$(area+'_cc').css("height",height);
				$(area).css("position","absolute");
				
			}
			
		}	/* end double-check */
	});	/* end load */
}


function onlinebonus() {
	open('/konto/onlinebonus.html', 'onlinebonus', "resizable=0,status=0,scrollbars=0,width=300,height=250");
}

function pt_reload() {
	$.ajax({
  	url: "/konto/get_pt.php",
  	cache: false,
  	success: function(html){
  		$("#pt").html(html).pulsate();
  	}
	});
}

function lhmessage(neuanz,ttt,notooltip) {
	if ($('li.posteingang a img').attr('rel') != neuanz) {
		// ändern
		if (neuanz == 0) {
			$('li.posteingang a').html('<img src="/images/icon_brief_leer.png" class="headermailboxpic" alt="Posteingang" title="Posteingang" width="16" height="14" rel="0" /> Posteingang');			
		} else {
			$('li.posteingang a').html('<img src="/images/icon_brief_msg.gif" class="headermailboxpic" alt="Posteingang ('+neuanz+')" title="Posteingang ('+neuanz+')" width="16" height="14" rel="'+neuanz+'" /> <b>Posteingang ('+neuanz+')</b>')
				.pulsate();
			generate_tooltip(neuanz,ttt);
		}
	} else {
		if ($("#tooltip").html() == "" && ttt != null && notooltip != 1) {
			generate_tooltip(neuanz,ttt);
		}
	}
}



function generate_tooltip(anz,msgtxt) {
	var close = '<div class="close"><a href="javascript:void(0);" onclick="tooltip_close();"><img src="/images/fancyzoom/closebox.png" alt="schliessen" /></a></div>';
	if (anz > 6) {
		var more = anz - 6;
		if (more == 1) { var n_nachrichten = '';} else { var n_nachrichten = 'n';}
		more = '<div class="ab05 righttext"><a href="/mailbox/Posteingang/">...und noch '+more+' weitere Nachrichte'+n_nachrichten+'.</div>';
	} else { more = '';}
	if (anz == 1) { var en_nachrichten = ""; } else { var en_nachrichten = "en";}
	var ausgabe = close + "<h3>"+anz+" neue Nachricht"+en_nachrichten+"</h3>"+msgtxt+more;
	$("#tooltip").html(ausgabe);
	tooltip_show();
	AudioPlayer.embed("audioplayer", { soundFile: "/sound/msg.mp3"});
}

function tooltip_close() {
	$("#tooltip_posteingang").tooltip().hide(); 
	c_conf('|','Posteingang_Tooltip','close');
}

function tooltip_show() {
	if (!tooltip_started) {tooltip_start();}
	$("#tooltip_posteingang").tooltip().show(); 
}

var tooltip_started = false;
function tooltip_start() {
	$.tools.addTipEffect("lh", 
		function() {
			getSize();
			var zielposition = this.getTip().css("top");
			if (myScroll>190) {
				var startposition = myScroll + 150;
				this.getTip().css("top",startposition+"px");
				var zielfunction = function() {
					$(this).animate({top: zielposition},startposition*10);
				}
			} else {
				this.getTip().css("top",zielposition);
				var zielfunction = "";
			}
			
			this.getTip().show("scale",{percent: 100},zielfunction);
		},
		function() {
			this.getTip().fadeOut(); 
	  } 
);


	$("#tooltip_posteingang").tooltip({
		tip: "#tooltip",
		position: ['bottom', 'center'],
		offset: [105, 505],
		effect: 'lh',
		onBeforeShow: function() {
			if ($("#tooltip").html() == "") {
				return false;
			}		
		}
	});
	tooltip_started = true;
}




/* TAG Stuff */
function tag_divfeld(input) {
	var output = str_replace('[','',input);
	output = str_replace(']','',output);
	return output;
}

function tag_clean(e) {
	if (e.length > 0) {
		return e.replace(/[^\d\w\, äÄöÖüÜß]/gi,"");
	} else {
		var old_e = e.value;
 		var new_e = e.value.replace(/[^\d\w\, äÄöÖüÜß]/gi,"");
 		if (new_e != old_e) {e.value = new_e;}
 		return false;
 	}
}

function tag_add(feld,e) {
	var tag;
	var divfeld =  tag_divfeld(feld);
	
	if (e.length > 0) {
		tag = e;
	} else {
		tag = e.value;
		e.value = "";
	}
	
	// nochmal cleanen...
	if (tag.length > 0) {tag = tag_clean(tag);}
	
	
	var tagarray = new Array();
	
	if (tag.indexOf(',') != -1) {
		tagarray = tag.split(",");
	} else {
		tagarray[0] = tag;
	}

	for (var id in tagarray) {
		var add = true;
		tag = trim(tagarray[id]);
	
		//var tags = document.getElementById('tags').innerHTML.split(", ");
		var tags = $(".tags-show-"+divfeld).html().split(", ");
			
		for(var iid in tags) {
			if (tags[iid] == "<a>"+tag+"</a>") {
				add = false;
			}	
		}
			
		if (add &&  tag != "" && tag != 'Keine Tags vergeben') {
			//document.getElementById('tags').innerHTML += "<a>"+tag+"</a>, ";
			tag_add_tag(feld,tag);
		}
	}
}


function tag_add_tag(feld, tag){
	var divfeld =  tag_divfeld(feld);
	var alltags = $(".tags-show-"+divfeld).html();
	alltags = strip_tags(alltags);

	if ((alltags.length + tag.length) < 256) {
		$(".tags-show-"+divfeld).html($(".tags-show-"+divfeld).html()+"<a>"+tag+"</a>, ");
		tag_links(feld);
		tag_transfer(feld);
	} else {
		alert('Vielen Dank, du hast genug Tags eingeben. :)');
	}

}

function tag_remove(feld,tag) {
	var divfeld =  tag_divfeld(feld);
	var tags = $(".tags-show-"+divfeld).html();
	var tag_regex = new RegExp("<a>"+tag+"</a>, ","i");
	$(".tags-show-"+divfeld).html(tags.replace(tag_regex,""));
	tag_links(feld);
	tag_transfer(feld);
}



function tag_links(feld) {
	var divfeld = tag_divfeld(feld);
	$(".tags-show-"+divfeld+" a").unbind();
	$(".tags-show-"+divfeld+" a").click(function(){
		tag_remove(feld,$(this).html());
	});
}

function tag_transfer(feld) {
	var divfeld = tag_divfeld(feld);
	$("input[name='"+feld+"']").val(strip_tags($(".tags-show-"+divfeld).html()));
}

function tag_clear(feld) {
	$("input[name='"+feld+"']").val('');
	$("input[name='"+feld+"-js']").val('');
	$("div.tags-show-"+feld).html('');
}
/* END TAG Stuff */


function news_popup(wer,id,id2) {
	alert(wer+" "+ id+" " + id2);

	if (wer == 'LH') {
		var popupurl = '/news/lhnews.html?id='+id;
	} else if (wer == 'SSN') {
		var popupurl = 'http://shortnews.de/shownews_popup.cfm?v2=1&id='+id+'&u_id='+id2;
	} else {
		return false;	
	}
	
	
	
	var newspopup = window.open(popupurl,'News','width=510,height=400,top=,letf=,scrollbars=yes,resizable=no,toolbar=no,locationbar=0,menubar=0');
	newspopup.focus();
}



function isInt(i) {
	return (i % 1) == 0;
}


/* php js */
function trim(str) {
  //return str.replace(/^\s+|\s+$/g, '');
  return jQuery.trim(str);
}

function strip_tags(str) {
	if (str) {
		return str.replace(/\<.*?\>/gi, "");
	} else {
		return "";
	}
}

function in_array(needle,haystack) {
  for( var i=0; i < haystack.length; i++ ) {
    if( needle == haystack[i] ) {
      return true;
    }
  }
  return false;
}

function str_replace(search, replace, subject) {
	if (subject != undefined) {
		return subject.split(search).join(replace);
	} else {
		//alert('error');
		return "";
	}
}
	

function rand( min, max ) {
	if( min > max ) {
		return( -1 );
	}
	if( min == max ) {
		return( min );
	}
	return( min + parseInt( Math.random() * ( max-min+1 ) ) );
}

function base64_encode( data ) {
    // http://kevin.vanzonneveld.net
    // +   original by: Tyler Akins (http://rumkin.com)
    // +   improved by: Bayron Guevara
    // +   improved by: Thunder.m
    // +   improved by: Kevin van Zonneveld (http://kevin.vanzonneveld.net)
    // +   bugfixed by: Pellentesque Malesuada
    // +   improved by: Kevin van Zonneveld (http://kevin.vanzonneveld.net)
    // -    depends on: utf8_encode
    // *     example 1: base64_encode('Kevin van Zonneveld');
    // *     returns 1: 'S2V2aW4gdmFuIFpvbm5ldmVsZA=='
 
    // mozilla has this native
    // - but breaks in 2.0.0.12!
    //if (typeof this.window['atob'] == 'function') {
    //    return atob(data);
    //}
        
    var b64 = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";
    var o1, o2, o3, h1, h2, h3, h4, bits, i = 0, ac = 0, enc="", tmp_arr = [];
 
    if (!data) {
        return data;
    }
 
    data = this.utf8_encode(data+'');
    
    do { // pack three octets into four hexets
        o1 = data.charCodeAt(i++);
        o2 = data.charCodeAt(i++);
        o3 = data.charCodeAt(i++);
 
        bits = o1<<16 | o2<<8 | o3;
 
        h1 = bits>>18 & 0x3f;
        h2 = bits>>12 & 0x3f;
        h3 = bits>>6 & 0x3f;
        h4 = bits & 0x3f;
 
        // use hexets to index into b64, and append result to encoded string
        tmp_arr[ac++] = b64.charAt(h1) + b64.charAt(h2) + b64.charAt(h3) + b64.charAt(h4);
    } while (i < data.length);
    
    enc = tmp_arr.join('');
    
    switch( data.length % 3 ){
        case 1:
            enc = enc.slice(0, -2) + '==';
        break;
        case 2:
            enc = enc.slice(0, -1) + '=';
        break;
    }
 
    return enc;
}

function utf8_encode ( argString ) {
    // http://kevin.vanzonneveld.net
    // +   original by: Webtoolkit.info (http://www.webtoolkit.info/)
    // +   improved by: Kevin van Zonneveld (http://kevin.vanzonneveld.net)
    // +   improved by: sowberry
    // +    tweaked by: Jack
    // +   bugfixed by: Onno Marsman
    // +   improved by: Yves Sucaet
    // +   bugfixed by: Onno Marsman
    // *     example 1: utf8_encode('Kevin van Zonneveld');
    // *     returns 1: 'Kevin van Zonneveld'
 
    var string = (argString+'').replace(/\r\n/g, "\n").replace(/\r/g, "\n");
 
    var utftext = "";
    var start, end;
    var stringl = 0;
 
    start = end = 0;
    stringl = string.length;
    for (var n = 0; n < stringl; n++) {
        var c1 = string.charCodeAt(n);
        var enc = null;
 
        if (c1 < 128) {
            end++;
        } else if((c1 > 127) && (c1 < 2048)) {
            enc = String.fromCharCode((c1 >> 6) | 192) + String.fromCharCode((c1 & 63) | 128);
        } else {
            enc = String.fromCharCode((c1 >> 12) | 224) + String.fromCharCode(((c1 >> 6) & 63) | 128) + String.fromCharCode((c1 & 63) | 128);
        }
        if (enc !== null) {
            if (end > start) {
                utftext += string.substring(start, end);
            }
            utftext += enc;
            start = end = n+1;
        }
    }
 
    if (end > start) {
        utftext += string.substring(start, string.length);
    }
 
    return utftext;
}

/* end php js */

/* matevz stuff */
var editor = false;
jQuery.fn.editor = function(toolbar) {
	if (!toolbar) {toolbar = 'LH';}
	var me = $(this);
	
	function runeditor(toolbar) {
		var oFCKeditor = new FCKeditor($(me).attr('id'));
		oFCKeditor.BasePath = '/js/fckeditor/';
		oFCKeditor.ToolbarSet = toolbar;
		oFCKeditor.ReplaceTextarea();
	}

	if (editor) {
		runeditor(toolbar);
	} else {
		$.ajax({
			type: "GET",
	  	url: "/js/fckeditor/fckeditor.js",
	  	dataType: "script",
	  	success: function() {
	  		editor = true;
			  runeditor(toolbar);
			}
		});
	}
}


function debug(val) {
	if ($('#debug').html() == null) {
		$("body").append('<div id="debug"></div>');
		$("#debug").css({
			'position': 'absolute',
			'left': '0px',
			'top': '0px',
			'font-size': '10px'		
		});
	}
	// $('#debug').html($('#debug').html()+"<br>"+val);
	$('#debug').html(val);
}
