function setSearchGroups(){
	myQueryString =location.search.substring((location.search.indexOf('GROUP=')+6), location.search.length);
	myGroup = myQueryString.substring(0, myQueryString.indexOf('%7C')); //pipe encoded
	for (i=0;i<document.gkssform.GROUP.options.length;i++){
		if(document.gkssform.GROUP.options[i].value.indexOf(myGroup)!= -1){
			document.gkssform.GROUP.options.selectedIndex = i;
			break;
		}
	}
}

function setSelectBox(context){
	switch (context){
		case 'event':
			mylocation = location.href.substring(0, location.href.indexOf('/index.html'));
			mylocation = mylocation.substring(mylocation.lastIndexOf('/')+1, mylocation.length);
			myIndex = 0;
			switch(mylocation){
				case 'events':
					myIndex = 0;
				break;
				case 'congress':
					myIndex = 1;
				break;
				case 'lecture':
					myIndex = 2;
				break;
				case 'common':
					myIndex = 3;
				break;
			}
			document.jumper.jump2.options.selectedIndex = myIndex;
		break;
	}
}


//########################################
// form validation
//########################################
function validateForm(formtype , lang){
	//if(formtype.indexOf('kontakt') != -1){//contactform
		var myform = eval("document."+formtype);
		var formflag=true;
		var hint=(lang=='de')?"Mit * markierte Felder sind Pflichtfelder\n":"Fields marked with * are mandatory\n";
		var error=hint;
		for(i=0; i < myform.elements.length; i++){
			if(myform.elements[i].type!="hidden" && myform.elements[i].type!="submit"  ){
			var is_required = checkRequired(myform.required.value, myform.elements[i].name);
				if(is_required==true){
					if(myform.elements[i].type=="checkbox"){
						if(myform.elements[i].checked==false){
							error+=collect_msg(myform.elements[i].type, myform.elements[i].name, lang);
							formflag=false;
						}	
					}
					if(myform.elements[i].type=="text" || myform.elements[i].type=="textarea" ){
						var trimmedValue=myform.elements[i].value.replace(/^\s/g,'');
						trimmedValue=trimmedValue.replace(/\s$/g,'');
						if(trimmedValue==''){
							error+=collect_msg(myform.elements[i].type, myform.elements[i].name , lang);
							formflag=false;
						}	
					}
				}
			}
		}
	//}
	error+="\n\n";
	if(!formflag)alert(error);
	return formflag;
	
}
function checkRequired(required, el){
	var reqFlag=false;
	myrequired = required.split(',');
	for(j=0; j < myrequired.length; j++){
		if(el==myrequired[j]){
			reqFlag=true;
			break;
		}
	}
	return reqFlag;
}
function collect_msg(type, field, lang){
	mylist = new Array();
	msg_de = new Array("Bitte best\xE4tigen Sie die Checkbox ", "Bitte f\xFCllen Sie das Feld "," aus");
	msg_en = new Array("Please tick the box ", "Please fill in the field ","");
	mylist = mylist.concat(eval("msg_"+lang));
	field=field.substring(0,1).toUpperCase() + field.substring(1);
	var termi=".\n";
	var error_msg="";
	switch(type){
		case 'checkbox':
			error_msg+=mylist[0]+field+termi;
		break;
		case 'text':
		case 'textarea':
			error_msg+=mylist[1]+field+mylist[2]+termi;
		break;
	}
	return error_msg;
}

// emailscrambler + arraydef hierher
var __imperia_scrambled_ids = new Array();

function _imperia_repair_scrambled_elements () {
	for (id in __imperia_scrambled_ids) {
		var elem = document.getElementById (id);
		if (elem) {
			attr = __imperia_scrambled_ids[id];
			elem[attr] = elem[attr].replace (/\%40/, '\@');
			elem[attr] = decodeURI (elem[attr]);
			elem[attr] = elem[attr].replace (/ AT /g, '\@');
			elem[attr] = elem[attr].replace (/ DOT /g, '.');
			elem[attr] = elem[attr].replace (/%20AT%20/g, '@');
			elem[attr] = elem[attr].replace (/%20DOT%20/g, '.');
		}
	}
}

function unscramble(addr){
	addr = addr.replace (/%40/, '@');
	addr = decodeURI (addr);
	addr = addr.replace (/ AT /g, '@');
	addr = addr.replace (/ DOT /g, '.');
	addr = addr.replace (/%20AT%20/g, '@');
	addr = addr.replace (/%20DOT%20/g, '.');
	return addr;
}