window.addEvent('domready',function(){
	$$('.module, .module-locked').each(function(module){
		var className = module.get('class').match(/m_([^\s]+)/)[1].capitalize()+'Module';
		
		if ($type(window[className]) == 'class')
			new window[className](module);
	});
	
	//portfolio tools menu
	var portfolioToolsMenu = $('portfoliotoolsmenu');
	var portfolioTools = $('portfoliotools');
	if (portfolioToolsMenu && portfolioTools){
		portfolioToolsMenu.addEvent('mouseout', function(){
			this.autoClose = (function(){
				$(this).addClass('hide');
			}).delay(1000, this);
		});
		portfolioToolsMenu.addEvent('mouseover', function(){
			$clear(this.autoClose);
		});

		document.body.grab($('portfoliotoolsmenu'));
		portfolioTools.addEvent('click', function(event){
			event.stop();
			var c = $(this).getCoordinates();
			var menu = $('portfoliotoolsmenu');
			var bpm = $(this).getStyle('border-left-width').toInt() + $(this).getStyle('border-right-width').toInt();
			portfolioToolsMenu.setStyles({
				position : 'absolute',
				zIndex : 100,
				top : c.bottom,
				left : c.left,
				width : c.width - bpm
			});
			menu.toggleClass('hide');
		});
	}

	
});