
CSInit			= new Array;
CSIm			= new Object();
CSAct			= new Object;
CSStopExecution = false;

function IsIE()				{ if(document.all) return true; else return false; }
function IsNav()			{ if(document.layers) return true; else return false; }
function IsIEMac()			{ return IsIE() && ((window.navigator.userAgent.indexOf("mac") != -1) || (window.navigator.userAgent.indexOf("Mac") != -1));}
function IsW3C()			{ if (document.getElementById) return true; else return false; }
function CSClickReturn ()	{ return IsIEMac(); }
function CSButtonReturn ()	{ return !IsIEMac(); }
function CSAction(array)	{ return CSAction2(CSAct, array); }

function CSScriptInit() {
	if(typeof(skipPage) != "undefined") { if(skipPage) return; }

	idxArray = new Array;

	for(var i=0;i<CSInit.length;i++) idxArray[i] = i;

	CSAction2(CSInit, idxArray);
}

function CSFindElementStyle(n,ly) {
	if (IsW3C()) {
		return CSFindElement(n,ly).style;
	} else if (IsIE()) {
		return CSFindElement(n,ly).style;
	} else {
		return CSFindElement(n,ly);
	}
}

function CSFindElement(n,ly) {
	if (IsW3C()) {
		return document.getElementById(n);
	} else if (IsIE()) {
		return document.all(n);
	} else if (IsNav()) {
		var curDoc = ly ? ly.document : document;
		var elem = curDoc[n];

		if (elem) return elem;
	
		for (var i=0;i<curDoc.layers.length;i++) {
			elem = CSFindElement(n,curDoc.layers[i]);
			if (elem) return elem;
		}

		return elem;
	} else {
		return document[n];
	}
}

function CSIShow(n,i) {
	if (!(document.images && CSIm[n])) return false;
	
	var img = CSFindElement(n,0);
	if (img && typeof(CSIm[n][i].src) != "undefined") {img.src = CSIm[n][i].src;}

	self.status = ((i != 0) ? CSIm[n][3] : " ");

	return true;
}


function CSILoad(action) {
	im = action[1];

	if (!document.images) return;

	CSIm[im] = new Object();

	for (var i=2;i<5;i++) {
		if (action[i] != '') {
			CSIm[im][i-2] = new Image();
			CSIm[im][i-2].src = action[i];
		} else {
			CSIm[im][i-2] = 0;
		}
	}

	CSIm[im][3] = action[5];
}


function CSAction2(fct, array) {
	var result;
	
	for (var i=0;i<array.length;i++) {
		if(CSStopExecution) return false; 

		var actArray = fct[array[i]];
		if (actArray == null) return false;

		var tempArray = new Array;

		for(var j=1;j<actArray.length;j++) {
			if((actArray[j] != null) && (typeof(actArray[j]) == "object") && (actArray[j].length == 2)) {
				if(actArray[j][0] == "VAR") {
					tempArray[j] = CSStateArray[actArray[j][1]];
				} else {
					if(actArray[j][0] == "ACT") {
						tempArray[j] = CSAction(new Array(new String(actArray[j][1])));
					} else {
						tempArray[j] = actArray[j];
					}
				}
			} else {
				tempArray[j] = actArray[j];
			}
		}
			
		result = actArray[0](tempArray);
	}
	return result;
}

function CSSetStyleVis(s,v) {
	if (IsW3C()) {
		CSFindElementStyle(s, 0).visibility = (v == 0) ? 'hidden' : 'visible';
	} else if (IsIE()) {
		CSFindElementStyle(s, 0).visible = (v == 0) ? 'hide' : 'show';
	} else {
		CSFindElementStyle(s, 0).visibility = (v == 0) ? 'hidden' : 'visible'; 
	}
}


function CSGetStyleVis(s) {
	if (IsW3C()) {
		return (CSFindElementStyle(s, 0).visibility == 'visible') ? 1 : 0;
	} else if (IsIE()) {
		return (CSFindElementStyle(s, 0).visible == 'show') ? 1 : 0;
	} else {
		return (CSFindElementStyle(s, 0).visibility == 'visible') ? 1 : 0;
	}
}

function CSShowHide(action) {
	if (action[1] == '') return;
	
	var type=action[2];
	
	if		(type==0) CSSetStyleVis(action[1],0);
	else if	(type==1) CSSetStyleVis(action[1],1);
	else if	(type==2) {
		if (CSGetStyleVis(action[1]) == 0) CSSetStyleVis(action[1],1);
		else CSSetStyleVis(action[1],0);
	}
}


