// JavaScript Document
document.observe("dom:loaded", function() {
	$A($$('div.menuButton','div.menuButtonSelected', 'div#testo')).each(function(menuButton) {
		var id = menuButton.id;
		var subid = 'sub' + id;
		$(menuButton).observe('mouseover', (function(){
			Index.clear();																					 
			if (id && $(subid)) {	
				this.changeClassNames('menuButtonHover', 'menuButton');		
				$(subid).style.display = 'block';
			} 
		}).bind($(menuButton)));																			 
	});		
	
	$A($$('span.expand')).each(function(element) {
		element = $(element);
		element.observe('click', (function() {
			element = this.next(); 							
			if (element.tagName.toLowerCase() == 'div') {
				if (element.hasClassName("hidden")) {
					element.hide();
					element.removeClassName("hidden");
					element.slideDown();
				} else {
					if (element.visible()) {
						element.slideUp();
					} else {
						element.slideDown();
					}
				}
			} else {
				if (element.hasClassName("hidden"))
					element.removeClassName("hidden");
				else
					element.toggle();
			}
		}).bind(element))
	});
	
	Index.modifica();
})

var Index = {
	clear: function(){
		$A($$('div.menuButton', 'div.menuButtonHover')).each(function(menuButton) {
			var id = menuButton.id;
			if (id) {			
				$(menuButton).changeClassNames('menuButton', 'menuButtonHover');		
				var subid = 'sub' + id;
				$(subid).style.display = 'none';																		 
			}
		});		
	},
	modifica: function(){
		$A($$('table#profilo_table tbody tr')).each(function(element) {
			var element2;
			element = $(element);
			if (Object.isElement(element2 = element.lastDescendant())) {
				element.observe('mouseover', function() {
					element2.down().show();																			 
				});
				element.observe('mouseout' , function() {
					element2.down().hide();																			 
				});
			}
		});
		
		$A($$('a.modifica')).each(function(element) {
			element = $(element);
			element.observe('click',(function() {
				var span = this.up().up().down().next().down().down();
				var campo = this.up().up().id;
				var __this = this;
				
				var editor = new Ajax.InPlaceEditor(span, 'modifica_profilo.php', {
					callback: function(form, value) { return 'campo=' + campo + '&value='+escape(value) },
					FBbuttons: true,
					onEnterEditMode: function(){
						__this.changeClassNames('hidden', 'modifica');									
					},
					onComplete: function() { 
						__this.changeClassNames('modifica', 'hidden');
						editor.unregisterListeners();
					}
				});
				editor.enterEditMode('click');
 			 }).bind(element));
		});
	}
}