addEvent( window, 'load', load );
var popID;
var tID;

//---------- zaladowanie elementow --------------------------
function load() {
  inMenu = false;
  body = document.getElementsByTagName( "body" )[0];
  last = null;
  
  var firma = new MenuP( getNode( "firma" ));
  var oferta = new MenuP( getNode( "oferta" ));
  var cennik = new MenuP( getNode( "cennik" ));
  var klienci = new MenuP( getNode( "klienci" ));
  var przyklady = new MenuP( getNode( "przyklady" ));
  var praca = new MenuP( getNode( "praca" ));
  var dokumenty = new MenuP( getNode( "dokumenty" ));
  var kontakt = new MenuP( getNode( "kontakt" ));

  firma.add( new Menu( "Who we are?", "kim.html" ) );
  firma.add( new Menu( "What we do?", "robimy.html" ) );
  firma.add( new Menu( "Why we do it?", "poco.html" ) );
  firma.create();

  praca.add( new Menu( "Dla tłumaczy", "tlumacz.html" ) );
  praca.add( new Menu( "Dla inżynierów", "inzynier.html" ) );
  praca.add( new Menu( "Dla korektorów", "korektor.html" ) ); 
  praca.add( new Menu( "Dla studentów filologii", "student.html" ) );
  praca.add( new Menu( "Formularz aplikacyjny", "formularz.html" ) );
  //praca.create( );
}

function MenuP ( node ) {
  this.node = node;
  this.menuItems = new Array();
  MenuP.prototype.add = function( menuItem ) {
    this.menuItems[ this.menuItems.length ] = menuItem;	
  }
  //--- tworzymy podmenu z klasa .jsMenu
  MenuP.prototype.create = function( ) {
    var dNode = document.createElement( "div" );
    dNode.className = "jsMenu";
    var str = "_" + this.node.id;
    dNode.setAttribute( "id", str );
    var w = this.node.offsetWidth;
    dNode.style.width = w > 170 ? w+"px" : "170px";
    dNode.style.top = ( this.node.offsetTop + this.node.offsetHeight ) + "px";
    dNode.style.left = this.node.offsetLeft + "px";
    addEvent( this.node, "mouseover", function() { showMenuInTime(str, 150) } );//obsluga zdarzenia po najechaniu myszka
    addEvent( this.node, "mouseout", function() { setInMenu(false) } );//obsluga zdarzenia od odjechaniu myszka
    dNode.setAttribute( "pItemID", this.node.id );
    addEvent( dNode, "mouseover", function() { setInMenu(true) } );
    addEvent( dNode, "mouseout", function() { setInMenu(false) } );
    var html = "<ul>";
    for( var i=0; i<this.menuItems.length; i++ ) {
	  html += this.menuItems[i].getLinkHTML();
      }
	
    body.appendChild( dNode );
    dNode.innerHTML = html + "</ul>";
  }
}

function Menu( value, href ) {
  this.value = ( value == null ) ? "" : value;
  this.href = ( href == null ) ? "" : href;
  if( this.href != "" && typeof useAbsPath != "undefined" )
    if( useAbsPath && this.href.indexOf( "http://" ) == -1 && this.href.indexOf( "https://" ) == -1 )
	  this.href = "http://www.amar-translations.pl" + this.href;

Menu.prototype.getLinkHTML = function () {
  if( this.value != "" && this.href != "" )
    return "<li><a onclick=\"setInMenu(false); hideMenu(); return true;\" href=\"" + this.href + "\">" + this.value + "</a></li>";
	else if( this.value != "" && this.href == "" )
	  return "<li class='heading'>" + this.value + "</li>";
	else
	  return "<li class='separator'>&nbsp;</li>";
  }
}

function showMenuInTime( node, time ) {
  wersja=navigator.appVersion;
  if(wersja == "4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1)")
    popID = setTimeout( "showMenu1('" + node + "')", time );
  else
    popID = setTimeout( "showMenu('" + node + "')", time );
}
//---ustawienie podmenu dla IE6
function showMenu1( node ) {
  clearTimeout( popID );
  if( typeof node == "string" )
    node = getNode( node );
  if( last != null && last != node )
	hideMenu( last );
  else if( last == node ) {
	setInMenu( true );
	return;
  }
  var pItem = getNode( node.getAttribute( "pItemID" ) );//ramka z podmenu
  var menuLeft = 180;
  var menuTop = pItem.offsetHeight -14;
  var tmp = pItem;
  while(tmp.tagName!="BODY") {
	if( tmp.tagName == "html:body" ) break;
	
	menuLeft += tmp.offsetLeft;
	menuTop  += tmp.offsetTop;
	tmp = tmp.offsetParent;
  }
  node.style.left = menuLeft + "px";
  node.style.top = menuTop + "px";
  var w = pItem.offsetWidth;
  node.style.width = w > 170 ? w+"px" : "170px";
  node.style.display = "block";	
  setInMenu( true );
  last = node;
  tID = setTimeout( "hideMenu( last )", 400 );
}
//--ustawienie podmenu dla pozostalych przegladarek
function showMenu( node ) {
  clearTimeout( popID );
  if( typeof node == "string" )
    node = getNode( node );
  if( last != null && last != node )
	hideMenu( last );
  else if( last == node ) {
	setInMenu( true );
	return;
  }
  var pItem = getNode( node.getAttribute( "pItemID" ) );//ramka z podmenu
  var versja = "4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1)";
  var menuLeft = 170;
  var menuTop = pItem.offsetHeight -30;
  var tmp = pItem;
  while(tmp.tagName!="BODY") {
	if( tmp.tagName == "html:body" ) break;
	
	menuLeft += tmp.offsetLeft;
	menuTop  += tmp.offsetTop;
	tmp = tmp.offsetParent;
  }
  node.style.left = menuLeft + "px";
  node.style.top = menuTop + "px";
  var w = pItem.offsetWidth;
  node.style.width = w > 170 ? w+"px" : "170px";
  node.style.display = "block";	
  setInMenu( true );
  last = node;
  tID = setTimeout( "hideMenu( last )", 400 );
}



function hideMenu( node ) {
if( node == null ) {
	setInMenu( false );
	hideMenu( last );
	return;
}
if( typeof node == "string" )
	node = getNode( node );
if( !inMenu ) {
	node.style.display = "none";
	var pItem = getNode( node.getAttribute( "pItemID" ) );
	last = null;
	clearTimeout( tID );
} else
	tID = setTimeout( "hideMenu( last )", 500 );	
}

function setInMenu( value ) {
inMenu = value;	
if( !value ) clearTimeout( popID );
}

function addEvent( node, evtType, func ) {
if( node.addEventListener ) {
	node.addEventListener( evtType, func, false );
	return true;
} else if( node.attachEvent )
	return node.attachEvent( "on" + evtType, func );
else
	return false;
}

function getNode( nodeId ) {
if( document.getElementById )
	return document.getElementById( nodeId );
else if( document.all && document.all( nodeId ) )
	return document.all( nodeId );
else if( document.layers && document.layers[ nodeId ] )
	return document.layers[ nodeId ];
else
	return false;
}

