version	= 3;
mac		= false;
browser_version();

function browser_version() {
	version = 3; //firefox1.5, ...
	if(document.all) {
		version	= 2;//ie6.0, ...
	}
	var agt = navigator.userAgent.toLowerCase();
	mac = (agt.indexOf("mac")!=-1);
}
function object_place(object, object_x, object_y) {
	switch(version) {
	case 2:
		if(window.document.all[object]) {
			window.document.all[object].style.left	= object_x;
			window.document.all[object].style.top	= object_y;
		}
		break;
	default:
		window.document.getElementById(object).style.left	= object_x + 'px';
		window.document.getElementById(object).style.top	= object_y + 'px';
	}
}
function object_visibility(object, visible) {
	switch(version) {
	case 2:
		if(visible == 0)
			document.all[object].style.visibility = "hidden";
		else
			document.all[object].style.visibility = "visible";
		break;
	default:
		if(visible == 0)
			document.getElementById(object).style.visibility = "hidden";
		else
			document.getElementById(object).style.visibility = "visible";
	}
}
function object_change(object, text_inhalt) {
	switch(version) {
	case 2:
		document.all[object].innerHTML = text_inhalt;
		break;
	default:
		document.getElementById(object).innerHTML = text_inhalt;
	}
}
function object_size(object, size_x, size_y) {
	switch(version) {
	case 2:
		document.all[object].style.width = size_x;
		document.all[object].style.height = size_y;
		break;
	default:
		document.getElementById(object).style.width = size_x;
		document.getElementById(object).style.height = size_y;
	}
}
function layer_scroll_old(object, geschw_x, geschw_y) {
	var layer_links		= object_daten(object, "links") + geschw_x;
	var layer_oben		= object_daten(object, "oben") + geschw_y;
	ausschnitt_oben 	= object_daten(object, "aoben") - geschw_y;
	ausschnitt_rechts	= object_daten(object, "arechts") - geschw_x;
	ausschnitt_unten	= object_daten(object, "aunten") - geschw_y;
	ausschnitt_links	= object_daten(object, "alinks") - geschw_x;

	object_setzen(object, layer_links, layer_oben);
	object_ausschnitt(object, ausschnitt_oben, ausschnitt_rechts, ausschnitt_unten, ausschnitt_links);
}
function object_data(objekt, pos) {
	// pos muss "oben, unten, rechts, links, breite, hoehe" sein fuer Objektdaten
	// bzw. "aoben, aunten, arechts, alinks" fuer Objektausschnittdaten
	// Vorsicht:	- Bei IE beziehen sich breite und hoehe aufs window, wenn diese nicht explizit  f&uuml;r das Objekt definiert werden/gesetzt sind
	//				- Ausschnittangaben funktionieren erst nach erstmaligen setzen eines solchen

	var value = 0, str, str_pos, clip =  new Array();

	switch(version) {
		case 2:
			str = document.all[objekt].style.clip;
			break;
		default:
			str = document.getElementById(objekt).style.clip;
	}	
	
	str_pos = str.indexOf("(");
	clip[0] = parseInt(str.substring(str_pos + 1, str.length));
	str_pos = str.indexOf(" ", str_pos + 1);
	clip[1] = parseInt(str.substring(str_pos + 1, str.length));
	str_pos = str.indexOf(" ", str_pos + 1);
	clip[2] = parseInt(str.substring(str_pos + 1, str.length));
	str_pos = str.indexOf(" ", str_pos + 1);
	clip[3] = parseInt(str.substring(str_pos + 1, str.length));

	switch(pos) {
		case "top":
			switch(version) {
			case 2:
				value = parseInt(document.all[objekt].style.top);
				break;
			default:
				value = document.getElementById(objekt).offsetTop;
			}
			break;
		case "bottom":
			value = (object_data(objekt, "top") + object_data(objekt, "bottom"));
			break;
		case "left":
			switch(version) {
			case 2:
				value = parseInt(document.all[objekt].style.left);
				break;
			default:
				value = document.getElementById(objekt).offsetLeft;
			}
			break;
		case "right":
			value = (object_data(objekt, "left") + object_data(objekt, "width"));
			break;
		case "width":
			switch(version) {
			case 2:
				value = document.all[objekt].clientWidth;
				break;
			default:
				value = document.getElementById(objekt).offsetWidth;
			}
			break;
		case "height":
			switch(version) {
			case 2:
				value = document.all[objekt].clientHeight;
				break;
			default:
				value = document.getElementById(objekt).offsetHeight;
			}
			break;
		case "clip_top":
			value = clip[0];
			break;
		case "clip_bottom":
			value = clip[2];
			break;
		case "clip_links":
			value = clip[3];
			break;
		case "clip_right":
			value = clip[1];
			break;
		case "clip_width":
			value	= clip[1] - clip[3];
			// value = (object_data(objekt, "clip_right") - object_data(objekt, "clip_links"));
			break;
		case "clip_height":
			value	= clip[2] - clip[0];
			// value = (object_data(objekt, "clip_bottom") - object_data(objekt, "clip_top"));
			break;
	}
	return value;
}

