var debug, pageIsLoaded, msgWindow, triggers=[];

function pageLoaded() {
    // quit if this function has already been called
    if (arguments.callee.done) return;
    if (pageIsLoaded === true) return;
    // flag this function so we don't do the same thing twice
    arguments.callee.done = true;
    pageIsLoaded = true;
    
    initTriggers(triggers);
};

/* for Mozilla */
if (document.addEventListener) {
   document.addEventListener("DOMContentLoaded", pageLoaded, null);
}

/* for Internet Explorer */
/*@cc_on @*/
/*@if (@_win32)
   document.write("<script defer src=zubehoer_trinx/ie_onload.js><"+"/script>");
/*@end @*/

/* for other browsers */
window.onload = pageLoaded;

// IE 5.0 has no push function, so we create one
Array.prototype.push = function() {
		var startLength = this.length;
		for (var i = 0; i < arguments.length; i++)
      this[startLength + i] = arguments[i];
	  return this.length;
};
  
collectTriggers = function(objects){
    triggers.push(objects);
};

function initTriggers(){
    for (var i=0; i < triggers.length; i++){
        debugalert('Folgender Trigger wird ausgeführt: '+triggers[i]);
        eval (triggers[i]);
    }
};

function $() {
  var elements = new Array();

  for (var i = 0; i < arguments.length; i++) {
    var element = arguments[i];
    if (typeof element == 'string')
      element = document.getElementById(element);

    if (arguments.length == 1) 
      return element;

    elements.push(element);
  }

  return elements;
};

addClassName = function(element, className) {
    element = $(element);
    removeClassName(element, className);
    element.className += ' ' + className;
};

removeClassName = function(element, className) {
    element = $(element);
    if (!element)
      return;
    var newClassName = '';
    var a = element.className.split(' ');
    for (var i = 0; i < a.length; i++) {
      if (a[i] != className) {
        if (i > 0)
          newClassName += ' ';
        newClassName += a[i];
      }
    }
    element.className = newClassName;
};

function addEvent( obj, type, fn )
{
	if (obj.addEventListener)
		obj.addEventListener( type, fn, false );
	else if (obj.attachEvent)
	{
		obj["e"+type+fn] = fn;
		obj[type+fn] = function() { obj["e"+type+fn]( window.event ); }
		obj.attachEvent( "on"+type, obj[type+fn] );
	}
};

function removeEvent( obj, type, fn )
{
	if (obj.removeEventListener)
		obj.removeEventListener( type, fn, false );
	else if (obj.detachEvent)
	{
		obj.detachEvent( "on"+type, obj[type+fn] );
		obj[type+fn] = null;
		obj["e"+type+fn] = null;
	}
};

function openWindow(newWindowURL, w, h,scroll) {
        if (scroll=='') scroll=0;
         var width=w, height=h;
//                  width = width < 200 ? 300 : width ;
         pruefer = /content\.php/;
         if (!pruefer.test(newWindowURL)){
             var bilder = new Array(4)
             bilder[0] = /\.jpg/i
             bilder[1] = /\.gif/i
             bilder[2] = /\.png/i
             bilder[3] = /\.jpeg/i
             bilder[4] = /\.bmp/i
            
            if (typeof bilder.each === "function"){
                bilder.each (function(num){
                    if (newWindowURL.match(num)) {
                        newWindowURL ='content.php?navigation=0&seite=seiten/popup.php&bildname='+newWindowURL+'&width='+width+'&height='+height;
                    }
                }
                )
            }
            else {
                for (var i in bilder){
                    if (newWindowURL.match(bilder[i])) {
                     newWindowURL ='content.php?navigation=0&seite=seiten/popup.php&bildname='+newWindowURL+'&width='+width+'&height='+height;
                     }
                }
            }
        }

        var left = (screen.width/2) - width/2;
        var top = (screen.height/2) - height/2;
        var styleStr = 'toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars='+scroll+',resizable=no,copyhistory=yes,width='+width+',height='+height+',left='+left+',top='+top+',screenX='+left+',screenY='+top;
        if (msgWindow != 'undefined' && msgWindow != null) msgWindow.close();
        msgWindow = window.open(newWindowURL,'popup',styleStr);
};

// Debugging in the firebug extension
// http://www.joehewitt.com/software/firebug
function printfire()
{
    if (document.createEvent)
    {
        printfire.args = arguments;
        var ev = document.createEvent("Events");
        ev.initEvent("printfire", false, true);
        dispatchEvent(ev);
    }
};

// Debugmeldungen ausgeben
function debugalert(outputtext){
    if (typeof printfire === 'function') {
        printfire(outputtext); 
    }
    if (debug && debug != "false" && typeof debug!== 'function') alert(outputtext);
};
