var dmsFormsHV1 = new Class({
	
	init:function(dms_form){
		// submit event
		this.form = dms_form;
		this.form.addEvent('submit' , this.submit.bindWithEvent(this) );
	},
	
	
	/*
	 * precess data before submit
	 */
	submit:function(e){

		e.stop();
		
			// show weather a dms_wait_page_inline section is present and show it
		var wait_msg_src = $E('div.dms_wait_page_inline', this.form);
		if (wait_msg_src){
			
			var wait_msg = wait_msg_src.clone();
			var bodysize = document.body.getSize();
			var top		 = window.getScrollTop();
			
				// hide all select items
			if(window.ie6){
				$$('select').setStyle('display','none');
			}
			
				// add a div layer on top
				// and show content in layer
			var shadow = new Element('div',{
				id : 'dms_lightbox_shadow',
				styles:{
					'z-index':999,
					'background-color':'black',
					'width':  bodysize.size.x + 'px' ,
					'height': bodysize.size.y + 'px' ,
					'opacity':'0',
					'position':'absolute',
					'left':0,
					'top':0
				}
			});
			
			var lightbox = new Element('div',{
				id : 'dms_lightbox',
				styles:{
					'z-index':1000,
					'position':'absolute',
					'width':'100%',
					'opacity':'0',
					'left':0,
					'top':top
				}
			});
		
			
				// add scroll handling
			document.addEvent("scroll",function(){
				var top	= window.getScrollTop();
				var lightbox = $('dms_lightbox');
				if (lightbox) lightbox.setStyle('top',top);
			});
			wait_msg.inject(lightbox);
				
				// add close event
			var close = $E('div.dms_wait_page_close',  lightbox);

			if (close){
				close.addEvent('click', function(e){
					var lightbox = $('dms_lightbox');
					var shadow   = $('dms_lightbox_shadow');
					if (lightbox) lightbox.remove();
					if (shadow)   shadow.remove();
				});
				close.setStyle('cursor','pointer');
				var href = window.location.href;
				window.location.href = href+"#stop";
			}
		
			lightbox.injectTop(document.body);
			shadow.injectTop(document.body);
			
			var contentChange = new Fx.Style(lightbox, 'opacity', {duration:500});
			contentChange.start(0, 1);

			var shadowChange = new Fx.Style(shadow, 'opacity', {duration:500});
			shadowChange.start(0, 0.5);
			
		}	
	}	
});

window.addEvent('domready', function()	{		
	$$('form.dms_form_hv1').each(function(form){
		form.dms_form_hv1 = new dmsFormsHV1();
		form.dms_form_hv1.init(form);
	});
	
});