var DeMenu = {
  
  MenuOutTimer: 0,
  SubToHide: 0,
  
  Init: function(){
    
    var parents = $$('.KatItem');
    parents.action({
      
      onclick: function() {
        
        var index = this.id.match(/hmenu_(\d+)/)[1];
        if(index==0){
			location = '/contact/'
		} else {
			location = $$('#sub2_'+index+'_0 .SubLink')[0];
        }
//        if(this == DeMenu.ToHide){
//          return;
//        }
//        if(DeMenu.ToHide){
//          DeMenu.HideChildren(DeMenu.GetId(DeMenu.ToHide));        
//        }
//        DeMenu.ShowChildren(DeMenu.GetId(this));
//        DeMenu.ToHide = this;
      }
    });
  },

  SetToHide: function(pElement) {
    DeMenu.ToHide = $(pElement);
    return;
  },  
   
  GetId: function(pElement) {
    id = pElement.getProperty('id').match(/(\d+)$/)[0];
    return 'sub_' + id;
  },

  GetBackgroundId: function(pElement) {
    id = $(pElement).getProperty('id').match(/(\d+)$/)[0];
    return 'sub_background_' + id;
  },  
  
  GetSubId: function(pElement) {
    id = pElement.getProperty('id').match(/(\d+_\d+)$/)[0];
    return 'sub2_' + id;
  },

  ShowChildren: function(pElement){
    var id = $(pElement);
    
    id_back = DeMenu.GetBackgroundId(pElement);
    id_background = $(id_back);
    
    
    id.setStyles({
      visibility: 'visible'
    });
    id_background.setStyles({
      visibility: 'visible'
    });
       
    //var myEffects = id.effects({duration: 1000, transition: Fx.Transitions.sineInOut});
    //myEffects.custom({'margin-left': [-500, 0]});

    var parents = $$('.'+pElement);
      parents.action({
        
        onmouseover: function() {
          DeMenu.ShowSub(DeMenu.GetSubId(this));
        },
        
        onmouseout: function() {
          DeMenu.HideSub(DeMenu.GetSubId(this));
        }
        //DeMenu.ToHide = this;
     });
    
  },

  HideChildren: function(pElement){

    var id = $(pElement);
    id_back = DeMenu.GetBackgroundId(pElement);
    id_background = $(id_back);
   // var myEffects = id.effects({duration: 1000, transition: Fx.Transitions.sineInOut});
   // myEffects.custom({'margin-left': [0, -100]});

    id.setStyles({
      visibility: 'hidden'
    });
    id_background.setStyles({
      visibility: 'hidden'
    });
  },
  
  ShowSub: function(pElement){
    var id = $(pElement);
    var parent = $('sub_'+pElement.match(/(\d+_\d+)$/)[0]);
    
    main_width = $('MenuMiddle').getStyle('width').toInt();
    main_left = $('MenuMiddle').getLeft();
    element_left = parent.getLeft();
    element_with = id.getStyle('width').toInt();
    
    real_position = element_left + element_with - (main_width + main_left);

    if((main_width + main_left) - element_left < element_with){
      id.setStyle('left', '-'+real_position+'px');
    }
    else{
      id.setStyle('left', '0px');
    }
    
    clearTimeout(DeMenu.MenuOutTimer);
    DeMenu.SetStyleToHide();    
    
    id.setStyles({
      visibility: 'visible'
    });  
  },
  
  HideSub: function(pElement){
    var id = $(pElement);
    DeMenu.SubToHide = id;
    DeMenu.MenuOutTimer = setTimeout("DeMenu.SetStyleToHide()", 700); 
  },

  SetStyleToHide: function(){
    if(DeMenu.SubToHide != 0){
      DeMenu.SubToHide.setStyles({
        visibility: 'hidden'
      });
    }
  },
  
  GetWidth: function(){
		if (window.khtml) returnwindow.innerWidth;
		if (window.opera) return document.body.clientWidth;
		return document.documentElement.clientWidth;
	}
  
  
}


