jQuery(document).ready(function() {
	view = new Object();
	view.ajaxcontactform = {

		init : function() {

			var acfLink = jQuery('.acfLink');
			if(!acfLink.length > 0) {
				return false;
			}
			view.ajaxcontactform.url = acfLink.attr('href');
			view.ajaxcontactform.containerId = 'acfContainer';
			view.ajaxcontactform.containerInnerId = 'acfContainerInner';
			
			view.ajaxcontactform.containerBackId = 'acfContainerBack';
			view.ajaxcontactform.closeButtonId = 'acfCloseButton';
			acfLink.each(function() {

				jQuery(this).click(view.ajaxcontactform.displayForm);
			});


		},
		displayForm : function(e) {
			e.preventDefault();
			if(jQuery('#'+view.ajaxcontactform.containerId).length > 0) return false;
			var layoutHandles = view.ajaxcontactform.createOverlay();
			view.ajaxcontactform.loadContactForm(layoutHandles[3]);			

			layoutHandles[1].click(view.ajaxcontactform.destroyForm);
			layoutHandles[2].click(view.ajaxcontactform.destroyForm);
		},
		destroyForm : function() {
			jQuery('#'+view.ajaxcontactform.containerBackId).remove();
			jQuery('#'+view.ajaxcontactform.containerId).remove();
			jQuery('#'+view.ajaxcontactform.closeButtonId).remove();
		},
		loadContactForm : function(theContainer) {
			theContainer.load(view.ajaxcontactform.url,function() {
				jQuery(this).parent().removeClass('loading');
			});
		},
		createOverlay : function() {
			var theContainer = jQuery('<div id="'+view.ajaxcontactform.containerId+'" class="loading" />');
			var theContainerInner = jQuery('<div id="'+view.ajaxcontactform.containerInnerId+'"/>');
			var theCloseButton = jQuery('<div id="'+view.ajaxcontactform.closeButtonId+'>Close</div>');
			var theContainerBack = jQuery('<div id="'+view.ajaxcontactform.containerBackId+'" />');

			theContainer.append(theContainerInner);
			theContainerBack.css('opacity',0.5);
			theContainer.prepend(theCloseButton);
			jQuery('body').prepend(theContainerBack);
			jQuery('body').prepend(theContainer);
			



			return Array(theContainer,theContainerBack,theCloseButton,theContainerInner);
		}

	}

	view.ajaxcontactform.init();
})
