﻿
/*##############   (c) delphi-HR Systems GmbH, Hamburg, Germany   ##################################

	WABCO Int. extern

#########################################################################################*/


function popUpWin(fileURL,title,xSize,ySize)
{
	WinName = window.open(fileURL,title,'resizable=no,location=0,directories=0,status=yes,menubar=0,scrollbars=1,toolbar=0,width='+xSize+',height='+ySize);
	WinName.focus();
}

function objEventHandler( _obj, _event, _handler ) {	
	if ( _obj.addEventListener ) {
		_obj.addEventListener( _event , _handler, false);
	} else {
		_onevent = 'on' + _event;
		if ( _obj.attachEvent ){     // IE
			_obj.attachEvent(_onevent, _handler);
		}	
	}
}


/* ################################################
################################################# */
function initAjax () {
	var obj = document.getElementById( 'loc_nr' );
	objEventHandler( obj, "change", ajax_fill_cat );
	if (obj.selectedIndex) {
		ajax_fill_cat();
	} else {
		var obj = document.getElementById( 'job_nr' );
		obj.disabled = 1;
		var obj = document.getElementById( 'submit' );
		obj.disabled = 1;
	}
	var obj = document.getElementById( 'job_nr' );
	objEventHandler( obj, "change", ajax_check_job );
	if (!obj.selectedIndex) {
		var obj = document.getElementById( 'submit' );
		obj.disabled = 1;
	}
}

function ajax_check_job () {
	var obj = document.getElementById( 'job_nr' );
	var submit = document.getElementById( 'submit' );
	submit.disabled = 1;
	if ( obj.selectedIndex ) {
		submit.disabled = 0;
	}
}

function ajax_fill_cat (  ) {
	var req = getRequest();
	var loc_nr = document.getElementById('loc_nr').value;
	var lang_nr = document.getElementById('lang_nr').value;

	var obj = document.getElementById( 'job_nr' );
	obj.options.length = 1;
	var saveBackground = obj.style.backgroundColor;
	
	if ( loc_nr == "") {
		obj.disabled = 1;
		var obj = document.getElementById( 'submit' );
		obj.disabled = 1;
		return;
	}

	req.onreadystatechange = function(){   
	switch(req.readyState) {
		case 1:
			var obj = document.getElementById( 'job_nr' );
			//obj.style.backgroundColor = "#aa0000";
			break;
		case 4:
			if ( req.status == 200 ) {
				var obj = document.getElementById( 'job_nr' );
				obj.style.backgroundColor = saveBackground;

				var valueListNode = req.responseXML;
				if (valueListNode == null) {
					alert('kein gültiges XML');
					alert(req.responseText);
				}
				
				var labels = valueListNode.documentElement.getElementsByTagName('category');
				for (i = 0; i < labels.length; i++) {
					var x = labels[i].attributes.item(0).nodeValue;
					var y = labels[i].attributes.item(1).nodeValue;
	
					var moption = document.createElement("option");
					moption.text = y;
					moption.value = x;
					try {
						obj.add(moption, null); // standards compliant; doesn't work in IE
					}
					catch(ex) {
						obj.add(moption); // IE only
					}		
				} 
				obj.disabled = 0;
			}else{    
				alert("Fehler:"+req.status); 
			}
			break;
		default:
			return false;
			break;     
		}
	};

	try {
		req.open("GET", '/cgi-bin/ajax.pl?type=cat;loc_nr=' + loc_nr + ';lang_nr=' +lang_nr, true);
	}
	catch (open){
		alert(open);
	}
	req.send(null);
		
}
 
function fillSelect () {
}

/* ################################################
################################################# */
function getRequest () {
	 var req = null;

	try{
		req = new XMLHttpRequest();
	}
	catch (ms){
		try{
			req = new ActiveXObject("Msxml2.XMLHTTP");
		} 
		catch (nonms){
			try{
				req = new ActiveXObject("Microsoft.XMLHTTP");
			} 
			catch (failed){
				req = null;
			}
		}  
	}

	if (req == null)
		  alert("Error creating request object!");
	return req;
}




 
