// Save & restore menu selection in cookie
// (c) April,Mai 2004, Christoph Berger, www.endo.ch


var cookieValues = new Array(); // cookie settings, global variable
					
function restoreFromCookie(cookieName,elementList)
{ 
	if(document.cookie) {
		//alert(document.cookie);
		var cookies =document.cookie.split(';');
		var formObj = getFormObj();
		for (i = 0; i < cookies.length; i++){
			if (cookies[i].indexOf(cookieName+"=") > -1){

				var entry = cookies[i].split('=');
				var elements = elementList.split(',');
				cookieValues = entry[1].split('#');
				
				for (ele = 0; ele < elements.length; ele++){
					//alert(elements[ele]+"="+cookieValues[ele]);
					selectObj = formObj.elements[ (elements[ele]) ];
					
					if(selectObj && selectObj.options){
						for (op = 0; op < selectObj.options.length; op++){
							if (selectObj.options[op].value == cookieValues[ele]){
								selectObj.options.selectedIndex = op;
							}
						}
					}
				}
				
				break;
			}
		}
	}
	
}

function saveToCookie(cookieName,elementList)
{
	var elements = elementList.split(',');
	var cookieString = '';
	var formObj = getFormObj();
	for (ele = 0; ele < elements.length; ele++){
		selectObj = formObj.elements[ (elements[ele]) ];
		if(selectObj && selectObj.options){		
			cookieString += selectObj.options[(selectObj.options.selectedIndex)].value+'#';
		} else {
			cookieString += cookieValues[ele]+'#';
		}
	}
	var jetzt = new Date(); var auszeit = new Date(jetzt.getTime() + (30*24*60*60*1000)); // ca 30 Tage
	document.cookie = cookieName+'='+cookieString+'; expires='+auszeit.toGMTString()+';';
	//alert(cookieString);
	return true;
}

function switchmenu(element,targetname,targetvalues)
{
	//eval('selectObj = document.extform.'+elements[ele]+';');
	targetvalues = targetvalues.split(',');
	var selectindex = element.options.selectedIndex;
	selectObj = getFormObj().elements[ (targetname) ];
	if(!selectObj) return;
	for (op = 0; op < selectObj.options.length; op++){
		if (selectObj.options[op].value == targetvalues[selectindex]){
			selectObj.options.selectedIndex = op;
		}
	}
}

function getFormObj()
{
	formObj = document.getElementById('extform');
	
	if (!formObj){
		// veraltete Formularbezeichung mit name-Property
		eval('formObj = document.extform;');
	}
	
	if (!formObj){
		alert('HTML form "extform" not found on this page');
		formObj=false;
	}
	return formObj
}
					

