/*
 * Copyright (c) 2011 Walk Media SRL.
 *
 * Copierea, distribuirea sau modificarea acestui produs software
 * este strict interzisa fara acordul scris al detinatorului de drept.
 */

//get mouse x y
var IE = document.all?true:false
if (!IE) document.captureEvents(Event.MOUSEMOVE)
document.onmousemove = getMouseXY;

var mouseX = 0; //mouse X
var mouseY = 0; // mouse Y

function getMouseXY(e) {
  if (IE) {
    mouseX = event.clientX + document.body.scrollLeft
    mouseY = event.clientY + document.body.scrollTop
  } else {
    mouseX = e.pageX
    mouseY = e.pageY
  }  
  if (mouseX < 0){mouseX = 0}
  if (mouseY < 0){mouseY = 0}  
  return true
}
//end get mouse x y

var close_id = 0; //folosit pentru anulare on/off rapid
var menu_left = 0;
var menu_top = 0;
var menu_width = 0;
var menu_height = 0;

//used for keeping the menu selected
var menu_id = null;

function menu_show(id) {
	
	close_id++;
	if(menu_id != null) {
		menu_id.className='menu_link';
	}
	
	menu_id = document.getElementById('menu_id_'+id);
	var menu_list = document.getElementById('menu_list');
	var menu_list_content = document.getElementById('menu_list_'+id);
	var menu_container = document.getElementById('menu_container');
	
	menu_list.innerHTML = menu_list_content.innerHTML;
	
	menu_list.style.display = 'block';

	menu_left = getElementLeft(menu_id)-30;
	menu_top = getElementTop(menu_id)+getElementHeight(menu_id)+11;
	menu_width = getElementWidth(menu_list);
	menu_height = getElementHeight(menu_list);
	
	var	c_left = getElementLeft(menu_container);
	var c_width = getElementWidth(menu_container);
	
	if(menu_left + menu_width > c_left + c_width) {
		menu_left -=  ((menu_left + menu_width)-(c_left + c_width));
	}
	
	moveXY(menu_list, menu_left, menu_top);
	menu_id.className='menu_link_hover';
}

function menu_hide(quick) {
	if(quick) {
		menu_quick_hide(close_id);
	}
	else {
		setTimeout("menu_quick_hide('"+close_id+"')", 500);
	}
}

function menu_quick_hide(id) {
	var menu_list = document.getElementById('menu_list');
	if(mouseX > menu_left && mouseX < menu_left + menu_width && mouseY > menu_top && mouseY < menu_top + menu_height) {
		close_id++;
	}
	if(close_id == id) {
		menu_list.style.display = 'none';
		if(menu_id) {
			menu_id.className='menu_link';
		}
	}
}

//functii aditionale
var ns4 = document.layers;
var op5 = (navigator.userAgent.indexOf("Opera 5")!=-1) 
	||(navigator.userAgent.indexOf("Opera/5")!=-1);
var op6 = (navigator.userAgent.indexOf("Opera 6")!=-1) 
	||(navigator.userAgent.indexOf("Opera/6")!=-1);
var agt=navigator.userAgent.toLowerCase();
var mac = (agt.indexOf("mac")!=-1);
var ie = (agt.indexOf("msie") != -1); 
var mac_ie = mac && ie;

function getElementLeft(elem) {
    if (ns4) {return elem.pageX;} 
    else {
        xPos = elem.offsetLeft;
        tempEl = elem.offsetParent;
        while (tempEl != null) {
            xPos += tempEl.offsetLeft;
              tempEl = tempEl.offsetParent;
        }
        return xPos;
    }
}
function getElementTop(elem) {
    if (ns4) {return elem.pageY;} 
    else {
        yPos = elem.offsetTop;
        tempEl = elem.offsetParent;
        while (tempEl != null) {
            yPos += tempEl.offsetTop;
              tempEl = tempEl.offsetParent;
        }
        return yPos;
    }
}

function getElementHeight(elem) {
	if (ns4) {
		return elem.clip.height;
	} else {
		if (op5) { 
			xPos = elem.style.pixelHeight;
		} else {
			xPos = elem.offsetHeight;
		}
		return xPos;
	} 
}

function getElementWidth(elem) {
	if (ns4) {
		return elem.clip.width;
	} else {
		if (op5) {
			xPos = elem.style.pixelWidth;
		} else {
			xPos = elem.offsetWidth;
		}
		return xPos;
	}
}

function moveXY(myObject, x, y) {
	obj = myObject.style;
	if (ns4) {
		obj.top = y;
 		obj.left = x;
	} else {
		if (op5) {
			obj.pixelTop = y;
 			obj.pixelLeft = x;
		} else {
			obj.top = y + 'px';
 			obj.left = x + 'px';
		}	
	}
}
