function checkResponse(response)
{
    if (response.error && response.error.type)
    {
        if (response.error.type == 2)
        {
            alert('Authorisation of the user is necessary');
            window.location.reload(true);
            return false;            
        }
        else
        {
            alert(response.error.text);
            return false;
        }
    }
    else
    {
        return true;
    }
}


var browser = {
	isIE :/msie/i.test(navigator.userAgent),
	isFF :/firefox/i.test(navigator.userAgent),
	isOpera :/opera/i.test(navigator.userAgent),
	isIE6 :/msie\s?6/i.test(navigator.userAgent)
};

function $2() {
	var elements = new Array();

	for ( var i = 0; i < arguments.length; i++) {
		var element = arguments[i];
		if (typeof element == 'string')
			element = document.getElementById(element);

		if (arguments.length == 1)
			return element;

		elements.push(element);
	}

	return elements;
}

var menuTimer, menuTimerElem;

function cssIE6func() {
	$2('center_column').style.height = ($2('body').clientHeight - 203 - 15)
			+ "px";
	$2('logo').style.paddingTop = "37px";
}


function showtd(obj, elem)
{
    elem = document.getElementById(elem);
    //setWidth(obj, elem); 
    //alert(elem);
    
    setVisible(menuTimerElem, "hidden");
    
	if (elem)
	{    
    setTopMargin(obj, elem);
    setLeftMargin(obj, elem); 
    //alert(3);
    show(elem);
    }
}

function show(elem) 
{
	if(menuTimerElem && (elem != menuTimerElem))
	{
		setVisible(menuTimerElem, "hidden");
    }
	menuTimerElem = elem;
	clearTimeout(menuTimer);

	elem.style.visibility = "visible";
}

function hide(elem)
{
	menuTimerElem = elem;
	menuTimer = setTimeout("setVisible(menuTimerElem, \"hidden\")", 100);
}

function hide2(elem)
{
	setVisible(elem, "hidden");
}

function getOffsetLeft(el) 
{
	var parentEl = el.parentNode;

	var x = 0;

	for ( var i = 0; i < parentEl.getElementsByTagName("td").length; i++) 
	{
		if (parentEl.getElementsByTagName("td")[i] == el) 
		{
			break;
		} 
		else 
		{
			x += parentEl.getElementsByTagName("td")[i].clientWidth;
		}

	}

	return x + 2;
}


function getOffsetTop(el, toElem) 
{
	var parentEl = el.parentNode;

	var x = 0;
	
	var menu_items = $('div[class = "sidenav_bg"]');
	
    $.each(menu_items, function() {

		if ($(this).attr('id') == $(el).attr('id')) 
		{
			return false;
		} 
		else 
		{
		//alert($(this).attr('clientWidth'));
			x += 35;//$(this).attr('clientWidth');
		}    

    });

	return x + 19;
}

function setLeftMargin(el, toElem) {
	//var marginLeft = getOffsetLeft(el);

	    marginLeft = 223;
	    toElem.style.marginLeft = marginLeft + "px";

}

function setTopMargin(el, toElem) {

	    var marginLeft = getOffsetTop(el, toElem);
	    toElem.style.marginTop = marginLeft + "px";
}

function setWidth(el, toElem) 
{
	var fc_width = $2("menu_first_divider_cell") ? $2("menu_first_divider_cell").offsetWidth
			: 15;

	toElem.style.width = el.offsetWidth + "px";
}

function setVisible(el, vis) {
	if (el) {
		el.style.visibility = vis;
	}
}

function changeClass(id, newClass) {
	$2(id).className = newClass;
}

function displayElement(elem) {
	if (!elem)
		return;

	var block = "block";

	if ((browser.isFF || browser.isOpera) && elem.tagName) {
		switch (elem.tagName.toLowerCase()) {
		case "table":
			block = "table";
			break;
		case "tr":
			block = "table-row";
			break;
		case "td":
			block = "table-cell";
			break;
		case "th":
			block = "table-cell";
			break;
		}
	}

	elem.style.display = (elem.style.display != "none") ? "none" : block;
}

function addEvent(el, evname, func) {
	if (el.attachEvent)
		el.attachEvent("on" + evname, func);
	else if (el.addEventListener)
		el.addEventListener(evname, func, true);
	else
		el["on" + evname] = func;
};

function removeEvent(el, evname, func) {
	if (el.detachEvent)
		el.detachEvent("on" + evname, func);
	else if (el.removeEventListener)
		el.removeEventListener(evname, func, true);
	else
		el["on" + evname] = null;
};


