/**************************************************************************
 * JobForm Class.
 *************************************************************************/

 var JobForm = {
 	formItems: null,
	submitLogin: function() {
		$("#loginItems").hide();
		$("#loginLoader").show();
		$("#loginError").remove();
		var formData = $("#loginForm").formSerialize();
		JobForm.formItems = $("#loginItems").clone(true);
		$("#loginItemsWrapper").empty().css("height", "auto");
	
		$("#loginForm").ajaxError(function(event, request, settings){
			JobForm.showError("login", "De server blijkt niet goed te functioneren. Onze excuses hiervoor. Probeer het later opnieuw.");
		});
		
		$.post("/ajax.php", "cmd=JobForm::submitLogin&" + formData, function(data) {
			$("#loginLoader").hide();
			
			if (data.error) {
				JobForm.showError("login", data.error);
			} else {
				if (data.success) {
					$("#loginItemsWrapper").append("<div><p class=\"success\">Je bent ingelogd.<br /><a href=\"" + data.success + "\" target=\"_blank\">Open de applicatie</a> als je niet automatisch doorverwezen wordt.</p></div>");
					window.open(data.success);
				} else {
					JobForm.showError("login", "De server blijkt niet goed te functioneren. Onze excuses hiervoor. Probeer het later opnieuw.");
				}
			}
		}, "json");
		
		return false;
	},
	submitRegister: function() {
		$("#registerItems").hide();
		$("#registerLoader").show();
		$("#registerError").remove();
		var formData = $("#registerForm").formSerialize();
		JobForm.formItems = $("#registerItems").clone(true);
		$("#registerItemsWrapper").empty().css("height", "auto");
	
		$("#registerForm").ajaxError(function(event, request, settings){
			JobForm.showError("register", "De server blijkt niet goed te functioneren. Onze excuses hiervoor. Probeer het later opnieuw.");
		});
		
		$.post("/ajax.php", "cmd=JobForm::submitRegister&" + formData, function(data) {
			$("#registerLoader").hide();
			
			if (data.error) {
				JobForm.showError("register", data.error);
			} else {
				if (data.success) {
					$("#registerItemsWrapper").append("<div><p class=\"success\">Je bent ingeschreven. Wij hebben een registratie email gestuurd met de login gegevens.</p></div>");
				} else {
					JobForm.showError("login", "De server blijkt niet goed te functioneren. Onze excuses hiervoor. Probeer het later opnieuw.");
				}
			}
		}, "json");
		
		return false;
	},
	submitPassword: function() {
		$("#passwordForm div.body").hide();
		$("#passwordItems").hide();
		$("#passwordLoader").show();
		$("#passwordError").remove();
		var formData = $("#passwordForm").formSerialize();
		JobForm.formItems = $("#passwordItems").clone(true);
		$("#passwordItemsWrapper").empty().css("height", "auto");
	
		$("#passwordForm").ajaxError(function(event, request, settings){
			JobForm.showError("password", "De server blijkt niet goed te functioneren. Onze excuses hiervoor. Probeer het later opnieuw.");
		});
		
		$.post("/ajax.php", "cmd=JobForm::submitPassword&" + formData, function(data) {
			$("#passwordLoader").hide();
			
			if (data.error) {
				JobForm.showError("password", data.error);
			} else {
				if (data.success) {
					$("#passwordItemsWrapper").append("<div><p class=\"success\">Wij hebben een nieuw wachtwoord naar jouw email adres gestuurd.</p></div>");
				} else {
					JobForm.showError("password", "De server blijkt niet goed te functioneren. Onze excuses hiervoor. Probeer het later opnieuw.");
				}
			}
		}, "json");
		
		return false;
	},
	showError: function(form, error) {
		switch (form) {
			case "login":
				$("#loginLoader").hide();
				$("#loginItemsWrapper").append(JobForm.formItems);
				$("#loginItems").show();
				$("#loginItemsWrapper").css("height", "auto");
				$("#loginForm").prepend("<div id=\"loginError\"><p class=\"error\">" + error + "</p></div>");
				$("#loginForm").unbind("ajaxError");
				setTimeout(function(){ $("#loginError").fadeOut("fast"); }, 5000);
				
				break;
			case "register":
				$("#registerLoader").hide();
				$("#registerItemsWrapper").append(JobForm.formItems);
				$("#registerItems").show();
				$("#registerItemsWrapper").css("height", "auto");
				$("#registerForm").prepend("<div id=\"registerError\"><p class=\"error\">" + error + "</p></div>");
				$("#registerForm").unbind("ajaxError");
				setTimeout(function(){ $("#registerError").fadeOut("fast"); }, 5000);
				
				break;
			case "password":
				$("#passwordLoader").hide();
				$("#passwordItemsWrapper").append(JobForm.formItems);
				$("#passwordItems").show();
				$("#passwordForm div.body").show();
				$("#passwordItemsWrapper").css("height", "auto");
				$("#passwordForm").prepend("<div id=\"passwordError\"><p class=\"error\">" + error + "</p></div>");
				$("#passwordForm").unbind("ajaxError");
				setTimeout(function(){ $("#passwordError").fadeOut("fast"); }, 5000);
				
				break;
		}
	}
}

 
