/* -- Adobe GoLive JavaScript Library */

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");
	}
}
CSInit = new 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);
}
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 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
}

function CSGoBack1() { history.back() }

function CSGotoLink(action) {
	if (action[2].length) {
		var hasFrame=false;
		for(i=0;i<parent.frames.length;i++) { if (parent.frames[i].name==action[2]) { hasFrame=true; break;}}
		if (hasFrame==true)
			parent.frames[action[2]].location = action[1];
		else
			window.open (action[1],action[2],"");
	}
	else location = action[1];
}

function CSOpenFullWindow(action) {
	var wf = "";	
	if(action[12]) {
		wf = wf + "width=" + screen.availWidth;
		wf = wf + ",height=" + screen.availHeight;
	} else {
		wf = wf + "width=" + action[3];
		wf = wf + ",height=" + action[4];
	}
	wf = wf + ",resizable=" + (action[5] ? "yes" : "no");
	wf = wf + ",scrollbars=" + (action[6] ? "yes" : "no");
	wf = wf + ",menubar=" + (action[7] ? "yes" : "no");
	wf = wf + ",toolbar=" + (action[8] ? "yes" : "no");
	wf = wf + ",directories=" + (action[9] ? "yes" : "no");
	wf = wf + ",location=" + (action[10] ? "yes" : "no");
	wf = wf + ",status=" + (action[11] ? "yes" : "no");	
	if(action[12]) {
		wf = wf + ",left=0";
		wf = wf + ",top=0";
	} else {
		if(action[13]) {
			wf = wf + ",left=" + action[13];
		}
		if(action[14]) {
			wf = wf + ",top=" + action[14];
		}
	}
	window.open(action[1],action[2],wf);
}
function CSFieldValidate(action) { 
var form = action[1];
var elem = action[2];
var theEntry  = document.forms[form].elements[elem].value
var theFormElem = document.forms[form].elements[elem]
var badEntry = ""

	function theAlert () { 
	alert(action[6]);
	theFormElem.select();
	theFormElem.focus();
	}  	

	function isEmpty() { 
		if (theEntry == "") { 
		theAlert()
		} 	
	}

	function isNumber() { 
			if (theEntry == "") { 
			theAlert()
			} 		
		for (i=0; i<theEntry.length; i++) {  
			if (theEntry.charAt(i) < "0" || theEntry.charAt(i) > "9") {  
				badEntry = "notnumber"
				} 
			}  		
		if (badEntry == "notnumber") {
		theAlert()	
		}	
	} 
		
	function isAlpha() { 
			if (theEntry == "") { 
			theAlert()
			} 		
		for (i=0; i<theEntry.length; i++) {  
			if (theEntry.charAt(i) >= "0" && theEntry.charAt(i) <= "9") {  
				badEntry = "notalpha"
				} 
			}  		
		if (badEntry == "notalpha") {
		theAlert()	
		}	
	} 
				
	function requiredChars() {
	numofChars = theEntry.length
		if (numofChars != action[4]) {
			theAlert()
		} 
	}	

	function exactString() {
		if (theEntry != action[5]) {
			theAlert()
		} 
	}	
	
	function validEmail() {
		invalidChars = " /:,;"		
		if (theEntry == "") { 
			badEntry = "badEmail"
			}
		for (i=0; i < 5; i++)  {
			badChar = invalidChars.charAt(i)
				if (theEntry.indexOf(badChar,0) > -1) {
				badEntry = "badEmail"
				}
		}	
	atsignLoc = theEntry.indexOf("@",1)
		if (atsignLoc == -1) {
			badEntry = "badEmail"
		}		
		if (theEntry.indexOf("@",atsignLoc+1) > -1) {
		badEntry = "badEmail"
		}
	dotLoc = theEntry.indexOf(".",atsignLoc)
		if (dotLoc == -1) {
		badEntry = "badEmail"
		}
		if (dotLoc+3 > theEntry.length) {
		badEntry = "badEmail"
		}
		if (badEntry == "badEmail") {
		theAlert()
		}
	}

	function validCC() { 
	var theNumber = new Array(theEntry.length);
	var i = 0
	var total = 0
		for (i = 0; i < theEntry.length; ++i) {
		theNumber[i] = parseInt(theEntry.charAt(i))
		}
		for (i = theNumber.length -2; i >= 0; i-=2) {  
		theNumber[i] *= 2;							 
		if (theNumber[i] > 9) theNumber[i]-=9;			 
		}										 
		for (i = 0; i < theNumber.length; ++i) {
		total += theNumber[i];						 
		}	
		isinteger = total/10
		if(parseInt(isinteger)!=isinteger) {
		theAlert()
		}
	}
	
var type=action[3];
if(type==0) isEmpty()
else if(type==1) isNumber()
else if(type==2) isAlpha()
else if(type==3) requiredChars()
else if(type==4) exactString()
else if(type==5) validEmail()
else if(type==6) validCC()
}

		

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
//
//-->

// OUT Image Slide Show Action v1.1.4
// Script copyright 1999, 2000, OUT Media Design GmbH. All rights reserved.

function OUTimageSlideShow(action){
	
	if(document.images!=null){
		var img=CSGetImage(action[1]);
		if(action[3] < action[2]){
			var li=action[3];action[3]=action[2];action[2]=li;
		}
		img.OUTsupportsOnLoad=!CSIsW3CDOM ||(img.isSupported?img.isSupported("Events","2.0"):true);
		if(img.OUTsupportsOnLoad)img.onload=OUTtriggerLoadNextImage;
		img.OUTfirstIndex=action[2];img.OUTlastIndex=action[3];img.OUTminTime=action[4];img.OUTmaxTime=action[5];img.OUTisRandom=action[6];img.OUTisReverse=action[7];img.OUTisLoop=action[8];img.OUTisPalindrome=action[9];
		img.OUTbaseURL=img.src.substring(0,(img.src.lastIndexOf('/')+1));
		img.OUTdocName=img.src.substring(img.src.lastIndexOf('/')+1,img.src.lastIndexOf('.'));
		img.OUTdocType=img.src.substring(img.src.lastIndexOf('.'),img.src.length);
		img.OUTcurIndex=img.OUTdocName.split('_'); img.OUTcurIndex.reverse(), img.OUTcurIndex=img.OUTcurIndex[0];
		img.OUTstartIndex=img.OUTcurIndex;
		img.OUTisPalinBack=false;
		img.OUTgetNextIndex=OUTgetNextImageIndex;
		img.OUTdocPrefix=img.OUTdocName.lastIndexOf('_')>0?img.OUTdocName.substring(0,img.OUTdocName.lastIndexOf('_')): '';
		if(img.OUTslideShowTimeoutID)clearTimeout(img.OUTslideShowTimeoutID);
		img.OUTslideShowTimeoutID=0;
		OUTtriggerLoadNextImage(img.name);
		img.OUTstop=false;
		return true;
	}
	return true;
}



function OUTtriggerLoadNextImage(img)
{
	img=typeof(img)=="string"?CSGetImage(img):this;
	clearTimeout(img.OUTslideShowTimeoutID);
	var time=OUTrandomBetween(img.OUTminTime,img.OUTmaxTime);

	if(!img.OUTsupportsOnLoad){
		OUTloadNextImage(img.name);
		if(!img.OUTstop)img.OUTslideShowTimeoutID=setTimeout('OUTtriggerLoadNextImage("'+img.name+'")', time);
	} else {
		img.OUTslideShowTimeoutID=setTimeout('OUTloadNextImage("'+img.name+'")', time);
	}
	return true;
}

function OUTloadNextImage(imgName)
{
	if(document.images!=null){
		var img=CSGetImage(imgName);
		
		if(img.OUTisRandom){			
			oldIndex=img.OUTcurIndex;
			while(oldIndex==img.OUTcurIndex){
				img.OUTcurIndex=Math.round(OUTrandomBetween(img.OUTfirstIndex,img.OUTlastIndex));
			}
		} else {
			img.OUTcurIndex=img.OUTgetNextIndex(img.OUTcurIndex);
			nextIndex=img.OUTgetNextIndex(img.OUTcurIndex);
			if(img.OUTisPalindrome &&(img.OUTisPalinBack?img.OUTcurIndex==img.OUTstartIndex:nextIndex==img.OUTstartIndex)){img.OUTisReverse=!img.OUTisReverse;img.OUTisPalinBack=!img.OUTisPalinBack;}
			if(!img.OUTisPalindrome && !img.OUTisLoop &&(img.OUTisPalinBack?img.OUTcurIndex==img.OUTstartIndex:nextIndex==img.OUTstartIndex)){clearTimeout(img.OUTslideShowTimeoutID);img.OUTslideShowTimeoutID=0;img.OUTstop=true;img.onload=null;}
			if(img.OUTisPalindrome && !img.OUTisLoop && nextIndex==img.OUTstartIndex)img.OUTisPalindrome=!img.OUTisPalindrome;
		}
		var imgDocName=img.OUTdocPrefix.length>0?img.OUTdocPrefix+'_'+img.OUTcurIndex:img.OUTcurIndex;
		img.src=img.OUTbaseURL + imgDocName + img.OUTdocType;
		return true;
	}
	return true;
}

function OUTgetNextImageIndex(nextIndex)
{
	if(this.OUTisReverse){
		nextIndex=(--nextIndex >= this.OUTfirstIndex && nextIndex < this.OUTlastIndex)?nextIndex:this.OUTlastIndex;
	} else {
		nextIndex=(++nextIndex <= this.OUTlastIndex && nextIndex > this.OUTfirstIndex)?nextIndex:this.OUTfirstIndex;
	}
	return nextIndex;
}

function OUTrandomBetween(min, max)
{
	return min +((max - min)* Math.random());
}

