var userAgent = navigator.userAgent.toLowerCase();
var is_opera  = (userAgent.indexOf('opera') != -1);
var is_saf    = ((userAgent.indexOf('applewebkit') != -1) || (navigator.vendor == 'Apple Computer, Inc.'));
var is_webtv  = (userAgent.indexOf('webtv') != -1);
var is_ie     = ((userAgent.indexOf('msie') != -1) && (!is_opera) && (!is_saf) && (!is_webtv));
var is_ie4    = ((is_ie) && (userAgent.indexOf('msie 4.') != -1));
var is_moz    = ((navigator.product == 'Gecko') && (!is_saf));
var is_kon    = (userAgent.indexOf('konqueror') != -1);
var is_ns     = ((userAgent.indexOf('compatible') == -1) && (userAgent.indexOf('mozilla') != -1) && (!is_opera) && (!is_webtv) && (!is_saf));
var is_ns4    = ((is_ns) && (parseInt(navigator.appVersion) == 4));
var is_mac    = (userAgent.indexOf('mac') != -1);

function itk_close_spans(form_id, ebene, objid)
{	
	if (!document.getElementById) return false;	

	var collapsed = itk_fetch_cookie("inforum_" + form_id + "_span");
	var tmp = new Array();

	if (objid.indexOf('_') >= 0)
	{
		split_span_id = objid.split('_');

		if (split_span_id[1] > ebene)
		{
			return false;
		}
	} else {
		return false;
	}


	if (collapsed != null)
	{
		collapsed = collapsed.split("\n");
		
		for (i in collapsed)
		{
			if (collapsed[i] != objid && collapsed[i] != "")
			{
				if (collapsed[i].indexOf('_') >= 0)
				{
					split_span_id = collapsed[i].split('_');
				
					if ((split_span_id[1] == ebene) && (document.getElementById(collapsed[i]))) {
						document.getElementById(collapsed[i]).style.display = 'none';
						var img = document.getElementById("collapseimg_" + collapsed[i]);
						if (img)
						{
							img_re = new RegExp("\\.gif$");
							img.src = img.src.replace(img_re, '_collapsed.gif');
						}	

						
					} else {
						tmp[tmp.length] = collapsed[i];
					}
				}
			}
		}
	}

	itk_set_cookie("inforum_" + form_id + "_span", tmp.join("\n"));
}


function itk_explorer_close_level_null(form_id, span_id) 
{
	itk_close_spans(form_id, 0, span_id);
	itk_explorer(form_id, span_id);
}



function itk_explorer(form_id, span_id)
{
	if (!document.getElementById) return false;	

	var img = document.getElementById("collapseimg_" + span_id);
	var obj = document.getElementById(span_id);	

	if (obj.tagName == "TBODY" && is_ie == false)
	{
		var diplay_code_block = "table-row-group";
	} else {
		var diplay_code_block = "block";
	}

	if (obj.style.display == "none")
	{

		obj.style.display = diplay_code_block;
		if (img)
		{
			img_re = new RegExp("_collapsed\\.gif$");
			img.src = img.src.replace(img_re, '.gif');
		}		
	}
	else
	{
		obj.style.display = "none";
		if (img)
		{
			img_re = new RegExp("\\.gif$");
			img.src = img.src.replace(img_re, '_collapsed.gif');
		}		
	}

	itk_save_explorer(form_id, span_id, obj.style.display);

}

function itk_save_explorer(form_id, objid, addcollapsed)
{
	var collapsed = itk_fetch_cookie("inforum_" + form_id + "_span");		
	var tmp = new Array();
	
	if (collapsed != null)
	{
		collapsed = collapsed.split("\n");
		
		for (i in collapsed)
		{
			if (collapsed[i] != objid && collapsed[i] != "")
			{
				tmp[tmp.length] = collapsed[i];
			}
		}
	}

	if (addcollapsed != 'none')
	{
		tmp[tmp.length] = objid;
	}
		
	itk_set_cookie("inforum_" + form_id + "_span", tmp.join("\n"));
}

function itk_fetch_cookie(name)
{
	var cookie_name = name + "=";
	var cookie_length = document.cookie.length;
	var cookie_begin = 0;


	while (cookie_begin < cookie_length)
	{
		var value_begin = cookie_begin + cookie_name.length;

		if (document.cookie.substring(cookie_begin, value_begin) == cookie_name)
		{
			var value_end = document.cookie.indexOf (";", value_begin);
			if (value_end == -1)
			{
				value_end = cookie_length;
			}
			return unescape(document.cookie.substring(value_begin, value_end));
		}
		cookie_begin = document.cookie.indexOf(" ", cookie_begin) + 1;
		if (cookie_begin == 0)
		{
			break;
		}
	}
	return null;
}

function itk_set_cookie(name, value)
{	
	document.cookie = name + "=" + escape(value) + "; path=/";
}


function itk_explorer_select(form_id, span_id)
{	
	var itk_form_item_id = span_id;
	itk_set_cookie("inforum_" + form_id + "_selected", itk_form_item_id);
}