/*
Datei: LinkedSelection.js
Datum: 15.12.2010
Autor: AOD-Media Inhaber Andre Friedrich
Beschreibung: erstellt die selektiven Auswahllisten
*/

lock = false;//sperre bei laufendem request
objLayer=false;//container für die boxen

function clear(id) {
aktNode = $(id);
for(i=aktNode.childNodes.length-1;i>1;--i)
	aktNode.removeChild(aktNode.childNodes[i]);
}

function request_data(objBox) {
	if(lock) return;

var ort=0,entf=0,art=0,tour=0;
switch ( objBox.getAttribute('name') ) {
	case 'ort':
		objLayer = $('entf');
		clear('art');
		clear('route');
		break;
	case 'entf':
		objLayer = $('art');
		ort = document.forms[1].ort.value;
		clear('route');
		break;
	case 'art':
		objLayer = $('route');
		ort = document.forms[1].ort.value;
		entf = document.forms[1].entf.value;
		break;
	case 'auswahl':
		objLayer = $('entf');
		ort = document.forms[1].ort.value;
		clear('art');
		clear('entf');
		clear('route');
		break;
}
lock = true;

for(i=objLayer.childNodes.length-1;i>0;--i) {
	if(objLayer.childNodes[i]==objBox)break;
	objLayer.removeChild(objLayer.childNodes[i]);
}

ausw = (document.forms[1].auswahl[0].checked == true ) ? 0 : 1;
url = (is_admin && is_admin == true) ? '../inc/box.php' : 'inc/box.php';
if (is_member==true && is_admin == true) url =  '../../inc/box.php';
new Ajax.Request(url, {
	method: 'get',
	parameters: {box:objBox.value, ausw:String(ausw), ort:ort, entf:entf, art:art, tour:tour},
	onSuccess: function(transport){
		xml = transport.responseXML;
		op = xml.getElementsByTagName('option');
		for (i=0;i<op.length;i++) {
			obj = document.createElement('option');
			attr = document.createAttribute("value");
			val = decodeURIComponent(op[i].getAttribute('value'));
			attr.nodeValue = val;
			obj.setAttributeNode(attr);
			obj.appendChild(document.createTextNode(op[i].firstChild.nodeValue));
			objLayer.appendChild(obj);
		}
     lock=false
    },
    onFailure: function(){ alert('Es gibt ein Problem mit der Auswahl. Bitte kontaktieren Sie den Administrator') }
  });
}

