var MainFrame = new Class({
	options: {
	},
	initialize: function( element, options ) {
		this.element = $(element);
		this.setOptions(options);
		$extend(element, this);
		element.myFx = [];
		element.previous = 0;
		element.getElements('.page').each(function(page, idx) {
			element.myFx[idx] = new Fx.Morph(page);
			page.setStyles({'opacity': '0'});
		});
		element.myFx[element.previous].start({'opacity': 1});				
		element.getElements('.menu .menuItem div').each(function(menuItem, idx) {element.swap(menuItem, idx);});
		element.getElements('.page .menuPic .menuItem').each(function(menuItem, idx) {element.swap(menuItem, idx);});
	},
	swap: function(menuItem, idx) {
		var element = this.element;
		menuItem.addEvent('click', function(e) {
			e.stop();
			menuItem.getElement('a').blur();
			if (element.previous >= 0 && element.previous != idx) {
				element.getElements('.page')[element.previous].setStyles({'opacity': 0});
				element.getElements('.menu .menuItem')[element.previous].removeClass('active');
			}
			element.myFx[idx].start({'opacity': 1});
			element.getElements('.menu .menuItem')[idx].addClass('active');
			element.previous = idx;
		});
	}
});
MainFrame.implement(new Options, new Events);
var HomeLink = new Class({
	options: {
		homeLink:null
	},
	initialize: function(element, options) {
		this.element = $(element);
		this.setOptions(options)
		$extend(element, this);
		element.getElement('a').addEvent('click', function(e) {
			element.getElement('a').blur();
			e.stop();
			element.options.homeLink.fireEvent('click', e);
		});
	}
});
HomeLink.implement(new Options, new Events);
