// JavaScript Document
var __lang = typeof __lang == "undefined" ? "fr" : __lang;
var form_validate_status = true;

$(document).ready(function(){
	
	$('form:has(.validate)').submit(function() {
		form_validate_status = true;
		
		$('#'+$(this).attr("id")+' .validate').each(function(i) {
			
			if($(this).is('textarea')){
				
				alert("Validator doesn't support textarea yet.");
				return false;
				
			}else
			if($(this).is('input')){
				
				switch($(this).attr("type")){
					case "file":
						if($(this).val()==""){
							
							var warning_msg = __lang=='fr' ? 'Vous devez joindre votre Curriculum Vitae' : 'Please join your Curriculum Vitae';
							
							$(this).after('<span style="color:#f00;">'+warning_msg+'</span>');
						}
					break;
					case "checkbox":
						alert("Validator doesn't support checkbox yet.");
						return false;
						break;
					case "radio":
						
						var is_checked = $("input[name='"+$(this).attr("name")+"']:checked").length;
						
						if(!is_checked){
							
							var warning_msg = "Vous devez sélectionner le cours désiré.";
							$(this).parent().append('<span style=" color:#F00; padding:3px; margin-left:8px;">'+warning_msg+'</span>');
							
							$("input[name='"+$(this).attr("name")+"']").click(function(){
								$(this).parent().siblings('span').remove();
							});
						}
						
						
						break;
						
					case "select":
						if($(this).vall()==""){
							var msg = __lang=='fr' ? 'Veuillez sélectionner une option' : 'Please select an option';
							
							//$(this).after('<span style="color:#F00; padding:3px; margin-left:8px;">'+warning_msg+'</span>');
							return false;
						}
						
						break;
						
					case "text":
						
						if(($(this).hasClass("validate_email") && !$(this).val().match(/([a-z0-9._-]+@[a-z0-9._-]+\.[a-z]{2,4})/gi)) || $(this).val() == ""){
						
							var warning_msg = __lang=='fr' ? "Le champ "+$("label[for='"+$(this).attr("id")+"']").text() : 'The field';
							
							if($(this).val() == ""){
								warning_msg = warning_msg+" "+(__lang=='fr' ? "est vide." : "is empty");
							}else{
								warning_msg = warning_msg+" "+(__lang=='fr' ? "n'est pas valide." : "isn't valid");
							}
							//$(this).siblings().remove();
							
							$(this).css("outline","2px solid #F00");
							
							//$(this).parent().append('<span style="color:#F00; padding:3px;">'+warning_msg+'</span>');
							
							
							$(this).blur(function() {
								
								if(($(this).hasClass("validate_email") && !$(this).val().match(/([a-z0-9._-]+@[a-z0-9._-]+\.[a-z]{2,4})/gi)) || $(this).val() == ""){
									
									
									
								}else{
									$(this).css("outline","0px");
									
									//$(this).siblings().remove();
								}
								
							});
							
							form_validate_status = false;
							
						}
						break;
					
				}
				
			}
			
		});
		return form_validate_status;
		
	});
	
});

function handleElementFocus(e){
	e.data.element.focus();
}
