var neteditMenu = new Class({
	Implements: Options,
	
    options: {
    	prefixCss: '',
    	urlClosed: ''
    },
    
    initialize: function(options){
    	this.divMenu = null;
    	this.setOptions(options);
		this.addEventsToA();
		this.addEventsToClosedMenu();
    },
    
    addEventsToClosedMenu: function(){
    	$$('.menu-close').each(function(el){
    		el.setStyle('cursor', 'pointer');
    		
    		el.addEvent('click', function(e){
	    		this.clickClosedMenu(e);
	    	}.bind(this));
    		
    		el.getChildren('img').each(function(img){
    			img.addEvent('click', function(e){
    	    		
    	    		var event = new Event(e);
    	    		event.stop();
        			event.stopPropagation();
        			event.preventDefault();
        			
        			this.clickClosedMenu(e);
    	    	}.bind(this));
    		}.bind(this));
    	}.bind(this));
    },

    clickClosedMenu: function(e){
    	var event = new Event(e);
		var divTitle = event.target;
		if(divTitle.tagName=='IMG'){
			divTitle = divTitle.getParent();
		}
		var idTitle = divTitle.get('id');
		var split = idTitle.split('-');
		if(split.length==2){
			var idMenu = split[1];
			this.divMenu = $('menu-'+idMenu);
			if($chk(this.divMenu)){
				var text = this.divMenu.get('text');
				if(text=='\n' || text==''){
					var url = this.options.urlClosed+'&mod_menu[id]='+idMenu;
		    		netedit.ajax.getData( 
						url.replace(/\&amp;/g,'&'),
						{
							method: 'get',
							onComplete: this.respClosedMenu.bind(this),
							onRequest : function() {
								netedit.ajax.showLoading('menu-'+idMenu);
							}
						}
					);
				}else{
					netedit.toggleDisplay('menu-'+idMenu, divTitle);
				}
			}
		}
    },
    
    respClosedMenu: function(txt){
    	try{
	    	var resp = eval('(' + txt + ')');
	    	this.divMenu.set('html', resp);
    	}catch(e){
    		alert('Errore respClosedMenu:\n'+e);
    	}
    },
    
	addEventsToA : function(){
	    $$('.'+this.options.prefixCss+'menu-a').each(function(el){
			el.addEvent('mouseover', function(e){
	    		this.linkMouseOver(e);
	    	}.bind(this));
	    	el.addEvent('mouseout', function(e){
	    		this.linkMouseOut(e);
	    	}.bind(this));
	    }.bind(this));
	},
	
	linkMouseOver:function(e){
		var event = new Event(e);
		var divContainer = event.target;
		if(divContainer.tagName=='A') divContainer = divContainer.parentNode;
		var elementsNote = $(divContainer).getElements('.'+this.options.prefixCss+'menu-note');
		elementsNote.each(function(el){
			if(el.innerHTML != '') el.setStyle('display','block');
		}.bind(this));
		var elementsImg = divContainer.getElements('.'+this.options.prefixCss+'menu-img');
		elementsImg.each(function(el){
			el.setStyle('display','block');
		}.bind(this));
	},
	
	linkMouseOut:function(e){
		var event = new Event(e);
		var divContainer = event.target;
		if(divContainer.tagName=='A') divContainer = divContainer.parentNode;
		var elementsNote = $(divContainer).getElements('.'+this.options.prefixCss+'menu-note');
		elementsNote.each(function(el){
			if(el.innerHTML != '') el.setStyle('display','none');
		}.bind(this));
		var elementsImg = divContainer.getElements('.'+this.options.prefixCss+'menu-img');
		elementsImg.each(function(el){
			el.setStyle('display','none');
		}.bind(this));
	},
	
	toggleMenu: function(idMenu){
		var divContainer = $(idMenu);
		if($chk(divContainer)){
			var htmlContainer = divContainer.get('html');
			if(htmlContainer==''){
				
			}
		}
	}
});
