var ModalBox = new Class({
	Implements:Options,
	options:{
		width:600,
		contentID:'modal-content'
	},
	initialize:function(modalType,options){
		this.setOptions(options);
		new Modalizer().modalShow();
		var options = this.options;
		var modalType = modalType;
		new Request({method: 'post', url: 'modal-box.html', onComplete: function(responseText){
			new ModalBoxCreator(responseText,options,modalType);	
     	}}).send();
	}
});

var ModalBoxCreator = new Class({
	Implements:Options,
	options:{
		width:600
	},
	initialize:function(html,options,modalType){
		
		this.setOptions(options);
		this.modalType = modalType;
		this.html = html;
		this.size = window.getSize();
		this.createModal();
		

	},
	createModal:function(){
		var theBody = $$('body')[0];
		var leftPos = (this.size.x / 2) - (this.options.width / 2) + 15;
		var topPos = 115;
		this.modalWrapper = new Element('div',{
			'style': 'width:'+this.options.width+'px;position:absolute;top:'+topPos+'px;left:'+leftPos+'px;z-index:9000;',
			'id': 'modalBoxWrapper'
		});
		this.modalWrapper.innerHTML = this.html;
		this.modalWrapper.injectInside(theBody);
		var modalContent = $(this.options.contentID);
     	//this default html request fixes the script tag parseing problem in safari
     	modalContent.load(this.modalType);
		
		$('model-close-btn').addEvent('click', this.destroyModal.bind(this));
		$('modalOverlay').addEvent('click', this.destroyModal.bind(this));
	},
	destroyModal: function(e){
		e.stop();
		this.modalWrapper.destroy();
		$('modalOverlay').destroy();
	}
		

});
