function addLoadEvent(func) {
  var oldonload = window.onload;
  if (typeof window.onload != 'function') {
    window.onload = func;
  } else {
    window.onload = function() {
      oldonload();
      func();
    }
  }
}


function pts(s) {
  var sx = '';
  s = s + '';
  for (ipc = s.length; ipc >= 0; ipc--) {
    sx = s.charAt(ipc) + sx;
    if ((Math.floor((s.length - ipc)/3) == (s.length - ipc) / 3) && (s.length != ipc) && (0 != ipc)) sx = '.' + sx;
  }
  return sx;
}


var i = 0, start = new Date();

//              Geld, Geld/sekunde



function fadeIn(el)
{		
	   el.setOpacity(0);
       el.setStyles('overflow: visible;');
       
       var fx = new Fx.Morph(el, {duration: 500, wait:false});
       fx.start({
            opacity: 1
       });
}
function fadeOut(el)
{
       el.setStyles('overflow: hidden;');
       
       var fx = new Fx.Morph(el, {duration: 500, wait:false});
       fx.start({
            opacity: 0,
            height: 0
       });
}

function rescalc() {
  var now = new Date();
  var timefactor = (now.getTime() - start.getTime()) / 1000;
  if (document.getElementById('geld')) document.getElementById('geld').firstChild.nodeValue = Math.floor((timefactor*res[1]+res[0])*100)/100;
}

var intx = window.setInterval("rescalc()",1000); //rescalc jede Sekunde ausführen



var Countdowns = new Array();

function runCountdowns()
{
	for (i = 0; i < Countdowns.length; i ++)
	{
		Countdown = Countdowns[i];
		Countdown.paint();
	}
}

function updateCTime()
{
	var nowStamp = $('nowTime').get('text');
	nowStamp++;
	$('nowTime').set('text', nowStamp);
	
	setTimeout("updateCTime();", 999);
}

function setCountdownsInterval()
{
	window.setInterval(runCountdowns, 1000);
}

addLoadEvent(setCountdownsInterval);

var Countdown = function(OutElementId, TargetTime)
{
	this.OutElement = document.getElementById(OutElementId);
	this.TargetTime = TargetTime;

	Countdowns.push(this);
}

Countdown.prototype.paint = function()
{
	Now = new Date();
	var nowStamp = $('nowTime').get('text'); // Math.floor(Now.getTime() / 1000);
	TimeLeft = this.TargetTime - nowStamp;
	//alert(TimeStamp);
	this.display = TimeLeft;

	if (TimeLeft < 1)
	{
        this.display = 'Letzten Arbeiten werden erledigt!';
	}
	else
	{
		Hours		= Math.floor(TimeLeft / 3600);
		TimeLeft	-= Hours * 3600;
		Minutes 	= Math.floor(TimeLeft / 60);
		TimeLeft 	-= Minutes * 60;

		if (TimeLeft < 10)
			TimeLeft = "0" + TimeLeft;

		if (Minutes < 10)
			Minutes = "0" + Minutes;

		this.display= Hours + " h, " + Minutes + " min, " + TimeLeft + " sek";
	}

	this.OutElement.innerHTML = this.display;
}



function ResizeImgs(Element, Maxw)
{
	if (!Element)
	{
	    Element = document.getElementById('usergb');
	}
    TraverseNode(Element, '', Maxw);
}


var SaveCount = 0;
var SaveBreak = 200;

function debugOut(Msg)
{
    debug = document.getElementById('debug');
    debug.innerHTML += Msg + '<br/>';
}


function TraverseNode(Nodes, Name, Maxw)
{

	var Node = 0;
    var ActualNode;
	var faktorFHW = 0;
    Name = Name + '>' + Nodes.nodeName;
    for (Node = 0; Node < Nodes.childNodes.length; Node++)
    {
        ActualNode = Nodes.childNodes[Node];

        if (ActualNode.nodeName != '#text')
        {

            if (ActualNode.nodeName == 'IMG' || ActualNode.nodeName == 'EMBED')
            {
                if (ActualNode.width > Maxw) {
                    faktorFHW = ActualNode.width / Maxw;
                    ActualNode.height = ActualNode.height / faktorFHW;
                    ActualNode.width = Maxw;
                }
            }

            SaveCount++;
            if (SaveCount > SaveBreak)
                return;

            if (ActualNode.hasChildNodes())
            {
                TraverseNode(ActualNode, Name, Maxw);
            }
        }
    }
}




var placeAd_Bumper;
var placeAd_NewHeight;

function placeAd()
{
    placeAd_Bumper = document.getElementById('bumper');

    if (window.pageYOffset)
    {
        placeAd_NewHeight = window.pageYOffset;
    }
    else
    {
        placeAd_NewHeight = document.documentElement.scrollTop;
    }

	placeAd_NewHeight -= placeAd_Bumper.offsetTop + 0;

//    placeAd_Bumper.innerHTML = placeAd_NewHeight;

    if (placeAd_NewHeight > 0)
        placeAd_Bumper.style.height = placeAd_NewHeight + 'px';
    else
        placeAd_Bumper.style.height = '0px';
}


function setTimeOut_placeAd()
{
    if (document.getElementById('bumper'))
    {
        window.setInterval(placeAd, 1);
    }
}

addLoadEvent(setTimeOut_placeAd);


	function divshow(divid)
	{
		d=document;
	    if(d.getElementById(divid).style.display=="none")
	    {
	        d.getElementById(divid).style.display="inline";
	    }
	    else
	    {
	        d.getElementById(divid).style.display="none"
	    }
	}


 function loadUsrIMG(Name, Dci, What){
	 if(What == 1){
	 setTimeout( function(){
	  var url = "/vers3/allgemein/showAva.php";
	  
	  new Request.HTML({
		   url: url
	  	  ,data: {n: Name}
		  ,update: $(Dci)
		}).send();

	   var co = $('a_'+Dci).getCoordinates();
	   $(Dci).setStyles('position: absolute; top: '+ (co.top - 115) +';');
  	   fadeIn($(Dci));
	}, 100);
	}
   	 else {
	  fadeOut($(Dci));
	  setTimeout( function(){ $(Dci).innerHTML = ''; }, 550);
   	 }
 }

 
 function trim( str, charlist ) {
    // http://kevin.vanzonneveld.net
    // +   original by: Kevin van Zonneveld (http://kevin.vanzonneveld.net)
    // +   improved by: mdsjack (http://www.mdsjack.bo.it)
    // +   improved by: Alexander Ermolaev (http://snippets.dzone.com/user/AlexanderErmolaev)
    // +      input by: Erkekjetter
    // +   improved by: Kevin van Zonneveld (http://kevin.vanzonneveld.net)
    // +      input by: DxGx
    // +   improved by: Steven Levithan (http://blog.stevenlevithan.com)
    // *     example 1: trim('    Kevin van Zonneveld    ');
    // *     returns 1: 'Kevin van Zonneveld'
    // *     example 2: trim('Hello World', 'Hdle');
    // *     returns 2: 'o Wor'

    var whitespace;
    
    if(!charlist){
        whitespace = ' \n\r\t\f\x0b\xa0\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u200b\u2028\u2029\u3000';
    } else{
        whitespace = charlist.replace(/([\[\]\(\)\.\?\/\*\{\}\+\$\^\:])/g, '\$1');
    }
  
	for (var i = 0; i < str.length; i++) {
		if (whitespace.indexOf(str.charAt(i)) === -1) {
		str = str.substring(i);
		break;
		}
	}
	for (i = str.length - 1; i >= 0; i--) {
		if (whitespace.indexOf(str.charAt(i)) === -1) {
			str = str.substring(0, i + 1);
			break;
    	}
	}
	return whitespace.indexOf(str.charAt(0)) === -1 ? str : '';
}

window.addEvent('domready', function()
{
  document.getElements('.tip').each(function(el)
  {
    if (el.tipPrepped) return; el.tipPrepped = true;

    var txt = el.title.split(/::/);
    el.store('tip:title', txt[0] ? txt[0] : '');
    el.store('tip:text', txt[1] ? txt[1] : '');
  });

  new Tips('.tip', {
     className: 'tttips'
    ,onShow: function(tip){
        tip.fade('in');
    }
    ,onHide: function(tip){

        tip.fade('out');
    }
  });
 });