﻿if (!DT_EFFECTS) { var DT_EFFECTS = new Object(); }

DT_EFFECTS.menu = {
	slideIn 		: function(element) {
		new Effect.MoveBy( element.parentNode, 185, 0 );
		element.onclick = function(event) { 
			DT_EFFECTS.menu.slideOut(element); 
		}
		
		return false;
	},
	slideOut 		: function(element) {		
		new Effect.MoveBy( element.parentNode, -185, 0 );
		element.onclick = function(event) { 
			DT_EFFECTS.menu.slideIn(element); 
		}
		return false;
	}
}



if (!WAX_EFFECTS) { var WAX_EFFECTS = new Object();  }

WAX_EFFECTS = {
	
	effect_name 		: "blind",
	swapVis				: function(element) {
	
		if(Element.visible(element)) {
			
			new Effect.BlindUp(element);
		} else {
			new Effect.BlindDown(element);
		}		
	},
	hoverMenu			: function(element, elem) {
		
		if(!$(elem).visible()) {
			$(elem).show();
			console.log(elem + " shown");
		} 
		
	},
	hideMenu			: function(element, elem) {
		
		if($(elem).visible()) {
			$(elem).hide();
			console.log(elem + " hidden");
		}
	},
	
	tooltip			: function(p_element, p_name) {
		
		var div = $('tooltip_'+p_name);
		Element.update(div, p_element.innerHTML);
		Element.show(div);
				
		
	},
	
	toolstop			: function(p_element, p_name) {
		
		var div = $('tooltip_'+p_name);
		Element.update(p_element, div.innerHTML);
		Element.hide(div);
		
		
	}
}




/**
*	object FORMS
*
**/
if (!FORMS) { var FORMS = new Object(); }



FORMS.control = {
	
	is_valid 		: false,
	objForm			: null,
	sForm			: "",
	sType			: "",
	sMsgSuccess		: "<h2>Uw vraag werd bewaard!</h2><p>Een mail werd verzonden.</a>",
	
	// private methods
	call			: function(t) {
		
		alert("Global Error: "+t.status+" - "+t.statusText);
		
	}, 
	// public methods
	send			: function(p_form, p_type) {
		//alert(p_type);
		FORMS.control.objForm 		= p_form;		
		FORMS.control.sForm 		= p_type;	
		if(formChecker.checkForm(FORMS.control.objForm)) {
		
			FORMS.control.is_valid = true;
			var postBody = Form.serialize(FORMS.control.objForm);
			//alert(postBody);
			new Ajax.Request(window.location,
					{
						method		: "post",
						postBody	: postBody,
						onSuccess	: function(t) {							
							FORMS.control.doExecute(t.responseText);
						},
						onFailure	: function(t) {
							alert("Error:\n"+t.status+" - "+t.statusText);
						}
					}
			);
			
		} 
		
	},
	
	doExecute			: function(responseText) {
		
		var json	= responseText.parseJSON();		
		
		if (json.status.code == "success") {
			
			new Effect.Highlight(FORMS.control.objForm, { 
					startcolor:'#ffffcc', 
					endcolor:'#ffffff', 
					duration:'2'
			});	
			
			new Insertion.Top(FORMS.control.objForm, "<p style=\"background-color: #ffffff; color: #555; padding: 10px;\">Saved</p>");
			
			FORMS.control.objForm.reset();
			
		} else {
			
			alert(json.status.text);
			
		}
		
	},
	
	redirect			: function() {
			
			FORMS.control.objForm.parent.innerHTML = FORMS.control.sSuccess;
			
	}
	
}


