/** 
 * Fusion 8 DHTML Menus
 */


/*****************************************
Global Parameters
*****************************************/

var GLOBAL_LoadedImages  = new Array();
var GLOBAL_CurrentItem   = "";
var GLOBAL_Close         = null;
var GLOBAL_Hide          = null;
var GLOBAL_items         = new NOF_OpenedItems();

var GLOBAL_slideItem     = null;
var GLOBAL_slideSpeed    = 10; //Defines how fast the slide submenus will unfold
var GLOBAL_slidePixel    = 0; 
var GLOBAL_slideMinOffset = -800;
var GLOBAL_slideMaxOffset = 800;

var useDebuger   = false;


/*
*  DOM compliant browsers
*/
function NOF_DOMBrowser() {

  this.getMenuItemLayerStartString = function getMenuItemLayerStartString(menuItemId, parentId) {

    parentId = ( (parentId != null) && (parentId != "undefined") && (typeof(parentId) != "undefined"))
                  ? new String(parentId + CONSTANTS.MENU_LAYER_SUFIX) : null;
    menuItemId += CONSTANTS.MENU_LAYER_SUFIX;
    
    var isAutoClose = typeof(C_MENU_AUTO_CLOSE) == "undefined" || C_MENU_AUTO_CLOSE == true ? "true" : "false";

    return '<DIV ID="' + menuItemId + '" isautoclose="' + isAutoClose + '" STYLE="z-index:5; filter:blendTrans(duration=0.5)" onmouseover="NOF_KeepOpen(\'' + menuItemId + '\', ' + parentId + ')" onmouseout="NOF_KeepClose()">';
  }

  this.getMenuItemLayerEndString = function getMenuItemLayerEndString() {
    return '</DIV>';
  }

  /** method showMenuItem
  *@parameter image Image object - item parent
  *@parameter item String or Object coresponding to a layer
  *@parameter offsetX:  horizontal offset distance from parent
  *@parameter offsetY:  vertical offset distance from parent
  *@parameter direction Horizontal = false, Vertical = true
  */
  this.showMenuItem = function showMenuItem(image, item, offsetX, offsetY, openEffect) {

    if (typeof(item) == "string")
      item   = this.getItem(item)

    image    = typeof(image) == "string" ? this.getItem(image) : image;

    var top  = this.findItemTopOffset(image);
    var left = this.findItemLeftOffset(image);

    var slideDirection = "";
    if (openEffect.indexOf("left") > -1 || openEffect.indexOf("Left") > -1 ) {
        top  += offsetY; 
        left -= offsetX;
        slideDirection = "left";
    } else if (openEffect.indexOf("top") > -1 || openEffect.indexOf("Top") > -1 ) {
        top   -= offsetY;
        left += offsetX;
        slideDirection = "top";
    } else if (openEffect.indexOf("right") > -1 || openEffect.indexOf("Right") > -1 ) {
        top  += offsetY; 
        left += offsetX;
        slideDirection = "right";
    } else { // Bottom
        top   += offsetY;
        left += offsetX;
        slideDirection = "bottom";
    }
 
    if (item == null  || typeof(item.style) == "undefined" || item.style == null )
      return;

    item.style.top  