/***************************************
Click auf Checkbox
***************************************/
function check_changeVal( event, obj ){
	if(event==null) event = window.event;
	var e = event;
	if( e == null) return;
	
	var src = obj;
	if(e != null && src == null ){
		e.cancelBubble = true;
		src = e.srcElement ? e.srcElement : e.target;
	}
	
	
	while(src!=null && src.tagName != "SPAN"){
		src = src.parentNode;
	}
	if(src == null) return;
	
	
	var i = src.lastChild;
	
	var inamep = i.nameProp ? i.nameProp : (i.src.substring(i.src.lastIndexOf("/")+1));
	var curVal = parseInt(inamep.substr(0, inamep.indexOf(".")));
	if(isNaN(curVal)) curVal = 0;

	var maxVal = parseInt(src.maxVal);
	if (maxVal == 2) {
		switch (curVal) {
			case 0: curVal = 2; break;
			case 1: curVal = 0; break;
			case 2: curVal = 1; break;
		}
	} else {
		curVal++;
	}
	check_setValue(src, curVal);
}



/***************************************
Keydown auf einer CheckBox
***************************************/
function check_keyPress(event, checkBoxElement, value){
	var ev = event;
	if(ev == null) ev = window.event;
	if(ev == null) return;
	
	var src = ev.srcElement ? ev.srcElement : ev.target;
	
	if( src!=null && src.tagName=="SPAN" ){
		var cc = ev.which != null ? ev.which : ev.keyCode;
		if(cc==13 || cc==32){
			ev.returnValue = false;
			ev.cancelBubble = true;
			
			var r = src.lastChild.parentNode;
			if(r.fireEvent){
				r.fireEvent("onclick");
			}else{
				r.onclick(ev);
			}
			
		}
	}
}

/***************************************
Ermittelt den Wert einer CheckBox
----------------------
checkBoxElement = SPAN-Element
***************************************/
function check_getValue(checkBoxElement){
	if(checkBoxElement==null || checkBoxElement.tagName!="SPAN") return;
	
	var v = checkBoxElement.firstChild;
	return parseInt(v.value);
}


/***************************************
Setzt den Wert einer CheckBox
----------------------
checkBoxElement = SPAN- oder INPUT-Element
value = neuer Wert
***************************************/
function check_setValue(checkBoxElement, value){
	if(checkBoxElement==null) return;
	if(checkBoxElement.tagName == "INPUT") checkBoxElement = checkBoxElement.parentNode;
	if(checkBoxElement.tagName != "SPAN" || value == undefined) return;
	
	
	var v = checkBoxElement.firstChild;
	var i = checkBoxElement.lastChild;
	
	var maxVal = parseInt(checkBoxElement.maxVal);
	if(isNaN(maxVal)) maxVal = 1;
	
	if(value>maxVal) value = 0;
	
	v.value = value.toString();
	i.src = i.src.substr(0, i.src.lastIndexOf("/")+1) + value + ".gif";
}