var App; if (!App) App = {};
var Init; if (!Init) Init = {};
var Options; if (!Options) Options = {};

if (!App.Init) App.Init = {};

App.Init.AjaxLogin = function(params,_opts) {
	
	_opts = jQuery.extend({
		'success' : function(data) { },
		'error' : function(data) { }
	}, _opts);
	
	$.post("/"+App.lang+"/login.json",params,function(data) {
		
		if(!data.error && data.username) {
			App.user = data;
			if(_opts.success && typeof(_opts.success) == "function") {
				_opts.success(data);
			}
		} else {
			if(_opts.error && typeof(_opts.error) == "function") {
				_opts.error(data);
			}
		}
		
	},"json");

};
/*
App.Init.Forms.Newsletter = function(selector,options) {

	var $el = jQuery(selector);
	if(!$el.length) { return; }
	
	var $form = ($el.get(0).tagName.toLowerCase() == "form") ? $el:$el.find("form");
	
	$form.submit(function(e) {
		e.preventDefault();
		$form.find("div.error, div.success").remove();
		
		var params = $form.serialize();
		var email = $form.find("input[name=email]").val();
		
		$form.find("input[name=email]").val((App.lang == "fr") ? "Chargement...":"Loading...").addClass("hasHint").attr("disabled","disabled");
		
		$.post("/"+App.lang+"/contact/newsletter.json",params,function(data) {
			
			$form.find("input[name=email]").val(email).removeClass("hasHint").attr("disabled","");
			
			if(!data.error && data.success) {
				
				$form.append("<div class='success'>"+data.msg+"</div>");
				$form.find("input[name=email]").val($form.find("input[name=email]").attr("title")).addClass("hasHint");
				
			} else {
				
				$form.append("<div class='error'>"+data.error+"</div>");
				
				if(!$form.find("input[name=email]").val().length) {
					$form.find("input[name=email]").val($form.find("input[name=email]").attr("title")).addClass("hasHint");
				}
				
			}
			
		},"json");
		
	});
	
};
*/
if (!App.Init.Forms) App.Init.Forms = {};
App.Init.Forms.Contact = function(selector) {
	
	var $el = $(selector);
	if(!$el.length) { return; }
	
	var $form = ($el.get(0).tagName.toLowerCase() == "form") ? $el:$el.find("form");
	
	$form.submit(function(e) {
		e.preventDefault();
		var form = $(this);
		form.find("div.success").remove();
		form.find("div.error").remove();
		if(form.validate()) {
			form.block(Options.block_contact);
			$.post("/"+App.lang+"/contact.json",form.serialize(),function(data) {
				form.unblock();
				if(!data.error && data.success) {
					if(App.Stats && App.Stats.event) { App.Stats.event("Contact", "Write", form.find("input[name=email]").val()); }
					form.prepend("<div class='success' style='cursor:pointer;'>"+data.msg+"</div>");
					form.find("textarea[name=message]").val("");
					form.find("input.hint").hint("show");
				} else {
					form.prepend("<div class='error'>"+data.error+"</div>");
				}
				form.find("div.success, div.error").css("cursor","pointer").click(function() { $(this).remove(); });
			}, "json");
		}
	});

};
