$.bind.load(function()
{
	$.browser.ie6 = ($.browser.msie && $.browser.version < 7);
});

var $request =
{
	 sending:false
	,submit:function(name)
	{
		if($request.sending) return;
		$request.sending = true;
		
		
		var form	= document["form_"+name],
			$form	= $(form),
			$resp	= $("#response-"+name).removeClass('response-success');
			
		$(".field-error").removeClass("field-error");
			
		$.ajax({url:'/application/request/request_'+name
		,data:$form.serialize()
		,success:function(data)
		{
			$resp.hide().empty();
			
			data = $.php.json_decode(data);
					   
		   if(!data.success)
		   {
				$request.errors(data.errors,$form);
				$.msg(data.msg,'error',false,$resp);
		   }
		   else
		   {
			   if(form.onsuccess)
			   {
				  var callback =  eval(form.onsuccess.value);
				  callback(data,$form,$resp);
			   }
			   else
			   {
				    if(!form.noreset)
					form.reset();
					$.msg(data.msg,'success',false,$resp);
					if(typeof $request.callback[name] == 'function')
					{
						$request.callback[name](data,$form,$resp);
					}
			   }
		   }
			
			$request.sending = false;
		}});
	}
	,errors:function(fields,$form)
	{
	   if(fields)
	   {
		for(var i in fields)
		{
			var field = $form.find("label[for='"+fields[i]+"']");
			if(field.length>1)
			field = $form.find("label[for='"+fields[i]+"']").eq(i);
			
			if(field.length==0) continue;
			
			field.addClass('field-error');	
		}
	   }
	}
};

$request.callback =
{
        // si l'envoie d'un mail poru contact a été effectué avec succès
        success_contact:function(data,form,$resp)
	{
		$.msg(data.msg,'success',false,$resp);
	},
	success_step1:function(data,form,$resp)
	{
		location.href = '2';
	},
	
	success_step2:function(data,form,$resp)
	{
		location.href = '3';
	},
	
	success_step3:function(data,form,$resp)
	{
		location.href = '4';
	},
	
	success_step4:function(data,form,$resp)
	{
		location.href = '5';
	},
	
	success_step5:function(data,form,$resp)
	{
		location.href = 'terminer';
	}
};


$.msg = function(txt,type,timeout,container)
{
	var is_body = container.length==0,
		appendto = is_body?$("body"):container;
	$("#error-contact").css('display','block');
	var box = $("#error-contact") ;
        box.html(nl2br(txt));
        box.removeClass("success-message") ;
        box.removeClass("error-message") ;

        if (type=="success")
        {
            box.addClass("success-message") ;
        }
        else
        {
            box.addClass("error-message") ;
        }
	return;

};

$.msg.close = function()
{
	$("#messages").fadeTo(300,0.1,function(){$(this).remove();});
};





