function pageLoaded() {
   // quit if this function has already been called
   if (arguments.callee.done) return;
   // flag this function so we don't do the same thing twice
   arguments.callee.done = 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/ie_onload.js><"+"/script>");
/*@end @*/

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

triggers = new Array () ;

function collectTriggers () {
    var pFunction  = arguments[0] != null ? arguments[0] : false ;
    var pArguments = arguments[1] != null ? arguments[1] : new Array () ;

    if ( pFunction != false ) {
        triggers.push( new Array ( pFunction , pArguments ) ) ;
    }
};

function initTriggers ( triggers ) {
    for ( var pPointer = 0 ; pPointer < triggers.length ; pPointer++ ) {
        var pTrigger   = triggers[ pPointer ] ;
        var pFunction  = pTrigger[ 0 ] ;
        var pArguments = pTrigger[ 1 ] ;
        var pEval      = '' ;

        for ( var pArg = 0 ; pArg < pArguments.length ; pArg++ ) {
            if ( typeof pArguments[ pArg ] == 'string' ) {
                pEval = pEval + '"' + pArguments[ pArg ] + '",' ;
            } else {
                pEval = pEval + pArguments[ pArg ] + ',' ;
            }
        }

        if ( pEval.length > 0 ) {
            pEval = pEval.substr( 0 , pEval.length - 1 ) ;
        }

        pEval = pFunction + '(' + pEval + ');' ;

        eval ( pEval ) ;
    }
};