var app = null;
var funcStack = new Array();

loadFunc( base );

window.onload = initApplication;

function initApplication()
{
	for (var i=0; i < funcStack.length; i++)
	{
		funcStack[i]();
	}
}

function base(){
	app = new Application();
  	app.init();
  	damTableBG();
}

function loadFunc( new_function )
{
	funcStack.push( new_function );
}



/**
** Alle Selectboxen einblenden sobald das "jsProdMenu" gezeigt wird - f�r IE6 wichtig
**/
function showSelectboxes() {
	allSelectboxes = document.getElementsByTagName('select');
	for (i = 0; i < allSelectboxes.length; i++) {
		//document.getElementsByTagName('select')[i].style.display = 'block';
		document.getElementsByTagName('select')[i].style.visibility = 'visible';
	}
}

/**
** Alle Selectboxen ausblenden sobald das "jsProdMenu" gezeigt wird - f�r IE6 wichtig
**/
function hideSelectboxes() {
	allSelectboxes = document.getElementsByTagName('select');
	for (i = 0; i < allSelectboxes.length; i++) {
		//document.getElementsByTagName('select')[i].style.display = 'none';
		document.getElementsByTagName('select')[i].style.visibility = 'hidden';
	}
}

/* background for dam tables */
function damTableBG(){
	var tables = document.getElementsByTagName('table');
	for(var i=0;i<tables.length;i++){
		if(tables[i].parentNode.className == 'tx-damfrontend-pi2'){
			var trs = tables[i].getElementsByTagName('tr');
			for(var j=1;j<trs.length;j++)
				trs[j].className = (j%2) ? 'tr-odd' : 'tr-even';
		}
	}
}

// ------------------------------- Common TYPO3 functions ----------------------------------

// --------------------------------------- begin -------------------------------------------

var browserName = navigator.appName;
var browserVer = parseInt(navigator.appVersion);
var version = "";
var msie4 = (browserName == "Microsoft Internet Explorer" && browserVer >= 4);
if ((browserName == "Netscape" && browserVer >= 3) || msie4 || browserName=="Konqueror" || browserName=="Opera") {version = "n3";} else {version = "n2";}
// Blurring links:
function blurLink(theObject) {
            if (msie4)          {theObject.blur();}
}

 
// decrypt helper function
function decryptCharcode(n,start,end,offset) {

            n = n + offset;
             if (offset > 0 && n > end) {
                        n = start + (n - end - 1);
            } else if (offset < 0 && n < start) {
                        n = end - (start - n - 1);
            }
                        return String.fromCharCode(n);
}

 

// decrypt string
function decryptString(enc,offset) {
            var dec = "";
            var len = enc.length;

            for(var i=0; i < len; i++) {

                       var n = enc.charCodeAt(i);
                        if (n >= 0x2B && n <= 0x3A)      {
                                   dec += decryptCharcode(n,0x2B,0x3A,offset);    // 0-9 . , - + / :
                        } else if (n >= 0x40 && n <= 0x5A)         {
                                  dec += decryptCharcode(n,0x40,0x5A,offset);     // A-Z @
                        } else if (n >= 0x61 && n <= 0x7A)         {
                                   dec += decryptCharcode(n,0x61,0x7A,offset);     // a-z
                        } else {
                                   dec += enc.charAt(i);
                        }
            }
            return dec;
}

// decrypt spam-protected emails
function linkTo_UnCryptMailto(s) {
            location.href = decryptString(s,-1);
}

// ---------------------------------------- end --------------------------------------------
// ------------------------------- Common TYPO3 functions ----------------------------------
