// -- Adobe GoLive JavaScript Library
// -- Global Functions
CSAg = window.navigator.userAgent; CSBVers = parseInt(CSAg.charAt(CSAg.indexOf("/")+1),10);
CSIsW3CDOM = ((document.getElementById) && !(IsIE()&&CSBVers<6)) ? true : false;
function IsIE() { return CSAg.indexOf("MSIE") > 0;}
function CSIEStyl(s) { return document.all.tags("div")[s].style; }
function CSNSStyl(s) { if (CSIsW3CDOM) return document.getElementById(s).style; else return CSFindElement(s,0);  }
CSIImg=false;
function CSInitImgID() {if (!CSIImg && document.images) { for (var i=0; i<document.images.length; i++) { if (!document.images[i].id) document.images[i].id=document.images[i].name; } CSIImg = true;}}
function CSFindElement(n,ly) { if (CSBVers<4) return document[n];
	if (CSIsW3CDOM) {CSInitImgID();return(document.getElementById(n));}
	var curDoc = ly?ly.document:document; var elem = curDoc[n];
	if (!elem) {for (var i=0;i<curDoc.layers.length;i++) {elem=CSFindElement(n,curDoc.layers[i]); if (elem) return elem; }}
	return elem;
}
function CSGetImage(n) {if(document.images) {return ((!IsIE()&&CSBVers<5)?CSFindElement(n,0):document.images[n]);} else {return null;}}
CSDInit=false;
function CSIDOM() { if (CSDInit)return; CSDInit=true; if(document.getElementsByTagName) {var n = document.getElementsByTagName('DIV'); for (var i=0;i<n.length;i++) {CSICSS2Prop(n[i].id);}}}
function CSICSS2Prop(id) { var n = document.getElementsByTagName('STYLE');for (var i=0;i<n.length;i++) { var cn = n[i].childNodes; for (var j=0;j<cn.length;j++) { CSSetCSS2Props(CSFetchStyle(cn[j].data, id),id); }}}
function CSFetchStyle(sc, id) {
	var s=sc; while(s.indexOf("#")!=-1) { s=s.substring(s.indexOf("#")+1,sc.length); if (s.substring(0,s.indexOf("{")).toUpperCase().indexOf(id.toUpperCase())!=-1) return(s.substring(s.indexOf("{")+1,s.indexOf("}")));}
	return "";
}
function CSGetStyleAttrValue (si, id) {
	var s=si.toUpperCase();
	var myID=id.toUpperCase()+":";
	var id1=s.indexOf(myID);
	if (id1==-1) return "";
	s=s.substring(id1+myID.length+1,si.length);
	var id2=s.indexOf(";");
	return ((id2==-1)?s:s.substring(0,id2));
}
function CSSetCSS2Props(si, id) {
	var el=document.getElementById(id);
	if (el==null) return;
	var style=document.getElementById(id).style;
	if (style) {
		if (style.left=="") style.left=CSGetStyleAttrValue(si,"left");
		if (style.top=="") style.top=CSGetStyleAttrValue(si,"top");
		if (style.width=="") style.width=CSGetStyleAttrValue(si,"width");
		if (style.height=="") style.height=CSGetStyleAttrValue(si,"height");
		if (style.visibility=="") style.visibility=CSGetStyleAttrValue(si,"visibility");
		if (style.zIndex=="") style.zIndex=CSGetStyleAttrValue(si,"z-index");
	}
}
function CSSetStylePos(s,d,p) {
	if (CSIsW3CDOM)d==0?document.getElementById(s).style.left=p+"px":document.getElementById(s).style.top=p+"px";
	else if(IsIE())(d==0)?CSIEStyl(s).posLeft=p:CSIEStyl(s).posTop=p;
	else (d==0)?CSNSStyl(s).left=p:CSNSStyl(s).top=p;
}
function CSGetStylePos(s,d) {
	if (CSIsW3CDOM){CSIDOM();return parseInt((d==0)?document.getElementById(s).style.left:document.getElementById(s).style.top);}
	else if (IsIE()) {CSIEWinInit();return(d==0)?CSIEStyl(s).posLeft:CSIEStyl(s).posTop;}
	else {return (d==0)?CSNSStyl(s).left:CSNSStyl(s).top;}
}
CSIEWInit=false;
function CSIEWinInit() { if(CSIEWInit==true) return; else CSIEWInit=true; if (IsIE()&&(CSAg.indexOf("Win")!=-1)&&CSBVers==4) { var i=0; var lyr=document.all.tags("div")[i++]; while(lyr) {lyr.style.posLeft=lyr.offsetLeft; lyr.style.posTop=lyr.offsetTop; lyr=document.all.tags("div")[i++];}}}
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);
}
CSInit = new Array;
CSExit = new Array;
CSStopExecution=false;
function CSAction(array) {return CSAction2(CSAct, array);}
function CSAction2(fct, array) { 
	var result;
	for (var i=0;i<array.length;i++) {
		if(CSStopExecution) return false; 
		var aa = fct[array[i]];
		if (aa == null) return false;
		var ta = new Array;
		for(var j=1;j<aa.length;j++) {
			if((aa[j]!=null)&&(typeof(aa[j])=="object")&&(aa[j].length==2)){
				if(aa[j][0]=="VAR"){ta[j]=CSStateArray[aa[j][1]];}
				else{if(aa[j][0]=="ACT"){ta[j]=CSAction(new Array(new String(aa[j][1])));}
				else ta[j]=aa[j];}
			} else ta[j]=aa[j];
		}			
		result=aa[0](ta);
	}
	return result;
}
CSAct = new Object;
function newImage(arg) {
	if (document.images) {
		rslt = new Image();
		rslt.src = arg;
		return rslt;
	}
}
userAgent = window.navigator.userAgent;
browserVers = parseInt(userAgent.charAt(userAgent.indexOf("/")+1),10);
mustInitImg = true;
function initImgID() {di = document.images; if (mustInitImg && di) { for (var i=0; i<di.length; i++) { if (!di[i].id) di[i].id=di[i].name; } mustInitImg = false;}}
function findElement(n,ly) {
	d = document;
	if (browserVers < 4)		return d[n];
	if ((browserVers >= 6) && (d.getElementById)) {initImgID; return(d.getElementById(n))}; 
	var cd = ly ? ly.document : d;
	var elem = cd[n];
	if (!elem) {
		for (var i=0;i<cd.layers.length;i++) {
			elem = findElement(n,cd.layers[i]);
			if (elem) return elem;
		}
	}
	return elem;
}
function changeImages() {
	d = document;
	if (d.images) {
		var img;
		for (var i=0; i<changeImages.arguments.length; i+=2) {
			img = null;
			if (d.layers) {img = findElement(changeImages.arguments[i],0);}
			else {img = d.images[changeImages.arguments[i]];}
			if (img) {img.src = changeImages.arguments[i+1];}
		}
	}
}
function CSClickReturn () {
	var bAgent = window.navigator.userAgent; 
	var bAppName = window.navigator.appName;
	if ((bAppName.indexOf("Explorer") >= 0) && (bAgent.indexOf("Mozilla/3") >= 0) && (bAgent.indexOf("Mac") >= 0))
		return true; // dont follow link
	else return false; // dont follow link
}
// -- Action Functions
// OUT Execute JavaScript Action
// Script copyright 1999, OUT Media Design GmbH. All rights reserved.
function OUTexecuteJS(action) {
	return eval(action[1]);
}
var textErrFlag=false // Copyright 2004 Michael Åhgren version: 1.3 
var radioErrFlag=false
var selectErrFlag=false
var matchErrFlag=false
var errMsg=null
var color=""
var radioArray=new Array()
var selectArray=new Array()
var radioCount=0
var selectCount=0
var colorTest=false
var errColor=null
var colorEnabled=false
function CSinitCheck(action){
colorEnabled=action[10]
textErrFlag=false
radioErrFlag=false
selectErrFlag=false
errColor=action[8]
var testForm=eval("document."+action[9])
errFlag=false
action[4]!="" ? errMsg=action[4]+"\n" : errMsg='The following problems have been detected:\n'
for(var i=0; i< testForm.length;i++){
var target=testForm.elements[i]
	if (!document.layers){
	!colorTest ? target.orgcol=target.style.backgroundColor : target.style.backgroundColor= target.orgcol
	}
	if(target.type=="select-one"|| target.type=="select-multiple"){
	CSbuildSelectArray (testForm.elements[i])	
	target.size>1 ? target.unChecked=-1 : target.unChecked=-0
	}
	if(target.type=="radio") CSbuildRadioArray(target)		
	if(target.type=="text"|| target.type=="textarea"){
	target.empty=false
	}
}
colorTest=true
if(action[1]!=""){
	var emptCheck=CSsplitFieldNames(action[1])
	var times1=emptCheck.length
	CSrunCheck(1,emptCheck,times1,testForm,action[10],action[7])
}
if(action[2]!=""){
	var emailCheck=CSsplitFieldNames(action[2])
	var times2=emailCheck.length
	CSrunCheck(2,emailCheck,times2,testForm,action[10],action[5])
}
if(action[3]!=""){
	var phoneCheck=CSsplitFieldNames(action[3])
	var times3=phoneCheck.length
	CSrunCheck(3,phoneCheck,times3,testForm,action[10],action[6])
}
if(action[11]!=""){
	var radioCheck=CSsplitFieldNames(action[11])
	for( i=0;i< radioCheck.length;i++){
	CSradioTest(radioCheck[i],action[10],action[13])
}
}
if (action[12]!=""){
var selectCheck=CSsplitFieldNames(action[12])
for( i=0;i< selectCheck.length;i++){
CSselectTest(selectCheck[i],action[10],action[14])
}
selectCount=0
}
if (action[15]!=""){
CSmatchField(action)
}
if (textErrFlag || radioErrFlag || selectErrFlag || matchErrFlag){
alert(errMsg)
}else{
testForm.submit()
}
}
function CSrunCheck(type,data,times,formName,bColor,msgAction){
	for(var i=0; i< formName.length;i++){
	var target=formName.elements[i]
		if(target.type=="text"|| target.type=="textarea"||target.type=="password"){
			var target=formName.elements[i]
				for(var j=0; j< times; j++){	
					if(type==1){					
						if(target.name	==data[j]&&target.value==""){
						msgAction!="" ? errMsg+=(msgAction+' "'+target.name+'"\n') : errMsg+=('The field "'+target.name+'" is empty.\n');
						target.empty=true
						CSsetColor(target)
						textErrFlag=true
						}
					}
					if(type==2){
						var reE=/^[\w\S?]+@(\w|\w\S?\w|\w[\w+\S+]+\w)\.\w+\b/
						var reTest=reE.test(target.value)
						if (navigator.userAgent.indexOf("Opera")!=-1) reTest=true
						var reE2at=/@/
						reE2at.test(target.value)
						var test2at=RegExp.rightContext
						if(target.name==data[j] && !target.empty&& ( target.value.indexOf("@",1)==-1 || 	target.value.indexOf(".",1)==-1 || !reTest || target.value.indexOf(".")==0 || reE2at.test(test2at))){
						msgAction !="" ? errMsg+=(msgAction+' "'+target.name+'"\n') : errMsg+=('The field "'+target.name+'" contains an incorrect E-mail address.\n');
						CSsetColor(target) 
						target.empty=true
						textErrFlag=true
						}
					}
					if(type==3){
						var reP=/[!"@£¤$%#&=?\\^'*åäöÅÄÖ;:,><§µ½*\|]|[a-z]|[A-Z]/ 
						if(target.name	==data[j] &&  reP.test(target.value)&& !target.empty){
					msgAction!="" ? errMsg+=(msgAction+' "'+target.name+'"\n') :errMsg+=('The field "'+target.name+'" contains illegal charater(s).\n');
						CSsetColor(target)
						textErrFlag=true;				
					}
				}		
			}
		}
	}
}
function CSsplitFieldNames(fieldNames){
afterSplit=fieldNames.split(",")
return afterSplit
}
function CSsetColor(target){
	if (!document.layers && colorEnabled){
	target.style.backgroundColor=errColor
}	
} 
function CSbuildRadioArray(target){
radioArray[radioCount]=target
radioCount++
}
function CSradioTest(groupName,bColor,msgAction){
var testResult=false
for (i=0;i< radioCount;i++){
	if(radioArray[i].name==groupName&&radioArray[i].checked){
		testResult=true
		break
	}
}
	if(!testResult){
		msgAction!="" ? errMsg+=(msgAction+' "'+groupName+'"\n') : errMsg+=('No radio button has been selected for: "'+groupName+'".\n');						
		radioErrFlag=true
			for (i=0;i< radioArray.length;i++){
				if(radioArray[i].name==groupName)
					CSsetColor(radioArray[i])			
		}
	}
radionCount=0
}
function CSbuildSelectArray(target){
selectArray[selectCount]=target
selectCount++
}
function CSselectTest(listName,bColor,msgAction){
for (var i=0;i < selectCount;i++){
	if (selectArray[i].name==listName && selectArray[i].selectedIndex==0 && 		selectArray[i].unChecked==0)  {
		msgAction!="" ? errMsg+=(msgAction+' "'+selectArray[i].name+'"\n') : errMsg+=('No selection has been made from the list: "'+ selectArray[i].name+'"\n')	;				
		CSsetColor(selectArray[i])
		selectErrFlag=true			
		}
	} 
} 
function CSmatchField(action){
newData=CSsplitFieldNames(action[15])
var target1=eval("document."+action[9]+"."+newData[0])
var target2=eval("document."+action[9]+"."+newData[1])
	if(target1.value==target2.value){
		matchErrFlag=false
	}else{
		matchErrFlag=true;
		CSsetColor(target1);
		CSsetColor(target2);
			if (action[16]==""){
				
				errMsg+='Your entry in the field "'+newData[0]+'" doesn\'t match your entry in the field "'+newData[1]+'".'
				}else{
				errMsg+=action[16];
				
				}
		}
	
}
// Copyright 2004 Michael Åhgren
//
//-->
var DJold = new Array();
function DJmoveNewPos(t) {
	if(document.all) {
		x = document.body.scrollLeft + DJold[t].originX;
		y = document.body.scrollTop + DJold[t].originY;
	} else {
		x = window.pageXOffset + DJold[t].originX;
		y = window.pageYOffset + DJold[t].originY;
	}
	d1 = x - DJold[t].x;
	d2 = y - DJold[t].y;
	DJold[t].x = DJold[t].x + (x - DJold[t].x)*DJold[t].smooth;
	DJold[t].y = DJold[t].y + (y - DJold[t].y)*DJold[t].smooth;
	CSSetStylePos(DJold[t].oldLayer,0,DJold[t].x);
	CSSetStylePos(DJold[t].oldLayer,1,DJold[t].y);
	setTimeout("DJmoveNewPos(" + t + ")",10);
}
function DJSmoothFloatLayer(action) {
	var x = action[2][0]; var y = action[2][1];
	DJold[DJold.length] = new Array();
	t = DJold.length - 1;
	DJold[t].oldLayer = action[1];
	CSSetStylePos(DJold[t].oldLayer,0,x);
	CSSetStylePos(DJold[t].oldLayer,1,y);
	DJold[t].x = x;
	DJold[t].y = y;
	DJold[t].originX = x;
	DJold[t].originY = y;
	DJold[t].smooth = 1.0/action[3];
	setTimeout("DJmoveNewPos(" + t + ")",10);
}
// EOF
