// prepare the form when the DOM is ready 
$(document).ready(function() { 
	
	var cpt_file_up = 0
	
	if ( $('input[type=radio][name=n3_bourse]:checked').val() == 1 )
	{
		$('#l_n3_nombourse').addClass('oblig');
        $('#oui').show();
	}
	else
	{
		$('#l_n3_nombourse').removeClass('oblig');
        $('#oui').hide();
	}
	
	$('input[type=radio][name=n3_bourse]').change(function()
    {     

        if ( $('input[type=radio][name=n3_bourse]:checked').val() == 1 )
        {
            
            $('#l_n3_nombourse').addClass('oblig');
            $('#oui').show();
        }
        else
        {
            $('#l_n3_nombourse').removeClass('oblig');
            $('#oui').hide();
        }
    });
	
	$('a.supprimer').click(function(e) 
    { // quand on clique sur un lien supprimer
        
        e.preventDefault(); // annule l'effet du lien pour pas recharger la page
        var id = $(this).attr("rel"); // on recupere l'id de l'element a supprimer (qui est dans l'attribut rel du lien)
        if(confirm('Supprimer cet élément ?')) { // on demande une confirmation
            var parent = $(this).parents("p"); // on recupere le paragraphe parent du lien (qui contient l'element a supprimer)
            $.ajax({ 
	            type: "POST", // les variables seront passées en POST (comme d'hab pour les recuperer en php $_POST[id] par exemple)
	            url: "suppr.php", // on appelle le fichier php suppr.php qui supprimer l'element de la base de donnees (dans mon cas, ce fichier est vide)
	            data: "id="+id+"&action=suppr", // variable que l'on passe au fichier php
	 
	            success: function(msg){ // en cas de succes
	                //cpt_file_motivation--;
	                //$('#msg_tmp_n6_motivation').text('Vous avez téléchargé ' + cpt_file_motivation + ' / '+nb_file_motivation + ' fichier(s)'); 
	                //$('#n6_motivation').val('');
	                
		            $(this).delay(1200,function(){ // on attend 1.2 secondes
			            parent.slideUp(500,function() { // et on fait disparaitre l'element en l'enroulant
			            });
		                parent.empty();
		            });
	            }
            });
        }
    });
	
    if($("#tmp_n6_autreinfo").attr("type") == 'file')
	{
	    var newName;
	    var cpt_file_autreinfo = 0;
		var nb_file_autreinfo = 1;
		var id = $('#id').val();
		
		new AjaxUpload('#tmp_n6_autreinfo', {
	      action: 'ajax_upload2.php',
	      name: 'myfile',
	      autoSubmit: true,
	      responseType: false,
	      onSubmit : function(file , ext){
	          if(cpt_file_autreinfo < nb_file_autreinfo)
	          {
	              if (ext && /^(doc|pdf)$/.test(ext))
	              {
	                  newName = id+'_autreinfo_'+reformat(file);
	                  this.setData({ 'name': newName }); 
	                  $('#msg_tmp_n6_autreinfo').text('Uploading ' + newName); 
	                  
	              } 
	              else 
	              {
	                  $('#msg_tmp_n6_autreinfo').text('Error: only .doc or .pdf are allowed');
	                  return false;               
	              }
	           }
	           else
	           {
	            $('#msg_tmp_n6_autreinfo').text('Le nombre de fichiers maximum est atteint'); 
	            return false;
	           }
	      },
	      
	      onComplete : function(file){
	            cpt_file_up ++;
	            $('<p></p>').appendTo('#msg_upload_n6_autreinfo').html('<a href="javascript:;" class="supprimer_'+cpt_file_up+'" rel="'+newName+'">X</a> ' + newName + '<input type="hidden" value="'+newName+'" name="n6_autreinfo[]" />'); 
	 	        $('a.supprimer_'+cpt_file_up+'').click(function(e) 
                { // quand on clique sur un lien supprimer
                    
	                e.preventDefault(); // annule l'effet du lien pour pas recharger la page
	                var id = $(this).attr("rel"); // on recupere l'id de l'element a supprimer (qui est dans l'attribut rel du lien)
	
	                if(confirm('Supprimer cet élément ?')) { // on demande une confirmation
		                var parent = $(this).parents("p"); // on recupere le paragraphe parent du lien (qui contient l'element a supprimer)
		                $.ajax({ 
			                type: "POST", // les variables seront passées en POST (comme d'hab pour les recuperer en php $_POST[id] par exemple)
			                url: "suppr.php", // on appelle le fichier php suppr.php qui supprimer l'element de la base de donnees (dans mon cas, ce fichier est vide)
			                data: "id="+id+"&action=suppr", // variable que l'on passe au fichier php
			                success: function(msg){ // en cas de succes
			                    cpt_file_autreinfo--;
			                    $('#msg_tmp_n6_autreinfo').text('Vous avez téléchargé ' + cpt_file_autreinfo + ' / '+nb_file_autreinfo + ' fichier(s)'); 
				                $(this).delay(1200,function(){ // on attend 1.2 secondes
					                parent.slideUp(500,function() { // et on fait disparaitre l'element en l'enroulant
					                });
					                parent.empty();
				                });
			                }
		                });
	                }
                });
                //ok
	            cpt_file_autreinfo++;
	            $('#msg_tmp_n6_autreinfo').text('Vous avez téléchargé ' + cpt_file_autreinfo + ' / '+nb_file_autreinfo + ' fichier(s)'); 
	      } 
	    });
	}

    if($("#tmp_n6_recommandation").attr("type") == 'file')
	{
		var newName;
	    var cpt_file_recommandation = 0;
		var nb_file_recommandation = 3;
		var id = $('#id').val();
		
		new AjaxUpload('#tmp_n6_recommandation', {
	      action: 'ajax_upload2.php',
	      name: 'myfile',
	      autoSubmit: true,
	      responseType: false,
	      onSubmit : function(file , ext){
	          if(cpt_file_recommandation < nb_file_recommandation)
	          {
	              if (ext && /^(doc|pdf)$/.test(ext))
	              {
	                  newName = id+'_recommandation_'+reformat(file);
	                  this.setData({ 'name': newName }); 
	                  $('#msg_tmp_n6_recommandation').text('Uploading ' + newName); 
	              } 
	              else 
	              {
	                  $('#msg_tmp_n6_recommandation').text('Error: only .doc or .pdf are allowed');
	                  return false;               
	              }
	           }
	           else
	           {
	            $('#msg_tmp_n6_recommandation').text('Le nombre de fichiers maximum est atteint'); 
	            return false;
	           }
	      },
	      onComplete : function(file){
	    	cpt_file_up ++;
	        $('<p></p>').appendTo('#msg_upload_n6_recommandation').html('<a href="javascript:;" class="supprimer_'+cpt_file_up+'" rel="'+newName+'">X</a> ' + newName + '<input type="hidden" value="'+newName+'" name="n6_recommandation[]" />'); 
	       	        
	        $('a.supprimer_'+cpt_file_up+'').click(function(e) 
            { // quand on clique sur un lien supprimer
                
	            e.preventDefault(); // annule l'effet du lien pour pas recharger la page
	            var id = $(this).attr("rel"); // on recupere l'id de l'element a supprimer (qui est dans l'attribut rel du lien)
	
	            if(confirm('Supprimer cet élément ?')) { // on demande une confirmation
		            var parent = $(this).parents("p"); // on recupere le paragraphe parent du lien (qui contient l'element a supprimer)
		            $.ajax({ 
			            type: "POST", // les variables seront passées en POST (comme d'hab pour les recuperer en php $_POST[id] par exemple)
			            url: "suppr.php", // on appelle le fichier php suppr.php qui supprimer l'element de la base de donnees (dans mon cas, ce fichier est vide)
			            data: "id="+id+"&action=suppr", // variable que l'on passe au fichier php
			            success: function(msg){ // en cas de succes
			                cpt_file_recommandation--;
			                $('#msg_tmp_n6_recommandation').text('Vous avez téléchargé ' + cpt_file_recommandation + ' / '+nb_file_recommandation + ' fichier(s)'); 
				            $(this).delay(1200,function(){ // on attend 1.2 secondes
					            parent.slideUp(500,function() { // et on fait disparaitre l'element en l'enroulant
					            });
					            parent.empty();
				            });
			            }
		            });
	            }
            });

            cpt_file_recommandation++;
            $('#msg_tmp_n6_recommandation').text('Vous avez téléchargé ' + cpt_file_recommandation + ' / '+nb_file_recommandation + ' fichier(s)'); 
         }
	    });
	}
	
	if($("#tmp_n6_resultat").attr("type") == 'file')
	{
		var newName;
	    var cpt_file_resultat = 0;
		var nb_file_resultat = 3;
		var id = $('#id').val();
		
		new AjaxUpload('#tmp_n6_resultat', {
	      action: 'ajax_upload2.php',
	      name: 'myfile',
	      autoSubmit: true,
	      responseType: false,
	      //onChange: function(file, extension){},
	      onSubmit : function(file , ext){
	          if(cpt_file_resultat < nb_file_resultat)
	          {
	              if (ext && /^(doc|pdf)$/.test(ext))
	              {
	                  newName = id+'_resultat_'+reformat(file);
	                  this.setData({ 'name': newName }); 
	                  $('#msg_tmp_n6_resultat').text('Uploading ' + newName); 
	                  
	              } 
	              else 
	              {
	                  $('#msg_tmp_n6_resultat').text('Error: only .doc or .pdf are allowed');
	                  return false;               
	              }
	           }
	           else
	           {
	            $('#msg_tmp_n6_resultat').text('Le nombre de fichiers maximum est atteint'); 
	            return false;
	           }
	      },
	      onComplete : function(file){
	    	cpt_file_up ++;
	        $('<p></p>').appendTo('#msg_upload_n6_resultat').html('<a href="javascript:;" class="supprimer_'+cpt_file_up+'" rel="'+newName+'">X</a> ' + newName + '<input type="hidden" value="'+newName+'" name="n6_resultat[]" />'); 
	                              
	        $('a.supprimer_'+cpt_file_up+'').click(function(e) 
            { // quand on clique sur un lien supprimer
                
	            e.preventDefault(); // annule l'effet du lien pour pas recharger la page
	            var id = $(this).attr("rel"); // on recupere l'id de l'element a supprimer (qui est dans l'attribut rel du lien)
	
	            if(confirm('Supprimer cet élément ?')) { // on demande une confirmation
		            var parent = $(this).parents("p"); // on recupere le paragraphe parent du lien (qui contient l'element a supprimer)
		            $.ajax({ 
			            type: "POST", // les variables seront passées en POST (comme d'hab pour les recuperer en php $_POST[id] par exemple)
			            url: "suppr.php", // on appelle le fichier php suppr.php qui supprimer l'element de la base de donnees (dans mon cas, ce fichier est vide)
			            data: "id="+id+"&action=suppr", // variable que l'on passe au fichier php
			            success: function(msg){ // en cas de succes
			                cpt_file_resultat--;
			                $('#msg_tmp_n6_resultat').text('Vous avez téléchargé ' + cpt_file_resultat + ' / '+nb_file_resultat + ' fichier(s)'); 
				            $(this).delay(1200,function(){ // on attend 1.2 secondes
					            parent.slideUp(500,function() { // et on fait disparaitre l'element en l'enroulant
					            });
				                parent.empty();
				            });
			            }
		            });
	            }
            });
	            
            $('#n6_resultat').removeClass();
            $('#tmp_n6_resultat').removeClass(); 
            $('#l_n6_resultat').removeClass(); 
        	$('.exemple').css({display:"none"});
        	
        	//ok
            cpt_file_resultat++;
            $('#msg_tmp_n6_resultat').text('Vous avez téléchargé ' + cpt_file_resultat + ' / '+nb_file_resultat + ' fichier(s)'); 
         }
	    });
	}
	if($("#tmp_n6_motivation").attr("type") == 'file')
	{
	    var newName;
	    var cpt_file_motivation = 0;
		var nb_file_motivation = 1;
		var id = $('#id').val();
		
		new AjaxUpload('#tmp_n6_motivation', {
	      action: 'ajax_upload2.php',
	      name: 'myfile',
	      autoSubmit: true,
	      responseType: false,
	      //onChange: function(file, extension){},
	      onSubmit : function(file , ext){
	          if(cpt_file_motivation < nb_file_motivation)
	          {
	              if (ext && /^(doc|pdf)$/.test(ext))
	              {
	                  newName = id+'_motivation_'+reformat(file);
	                  this.setData({ 'name': newName }); 
	                  $('#msg_tmp_n6_motivation').text('Uploading ' + newName); 
	                  
	              } 
	              else 
	              {
	                  $('#msg_tmp_n6_motivation').text('Error: only .doc or .pdf are allowed');
	                  return false;               
	              }
	           }
	           else
	           {
	            $('#msg_tmp_n6_motivation').text('Le nombre de fichiers maximum est atteint'); 
	            return false;
	           }
	      },
	     
	      onComplete : function(file){
	            cpt_file_up ++;
	            $('<p></p>').appendTo('#msg_upload_n6_motivation').html('<a href="javascript:;" class="supprimer_'+cpt_file_up+'" rel="'+newName+'">X</a> ' + newName + '<input type="hidden" value="'+newName+'" name="n6_motivation[]" />'); 
	            
	            $('a.supprimer_'+cpt_file_up+'').click(function(e) 
                { // quand on clique sur un lien supprimer
                    
		            e.preventDefault(); // annule l'effet du lien pour pas recharger la page
		            var id = $(this).attr("rel"); // on recupere l'id de l'element a supprimer (qui est dans l'attribut rel du lien)
		
		            if(confirm('Supprimer cet élément ?')) { // on demande une confirmation
			            var parent = $(this).parents("p"); // on recupere le paragraphe parent du lien (qui contient l'element a supprimer)
			            $.ajax({ 
				            type: "POST", // les variables seront passées en POST (comme d'hab pour les recuperer en php $_POST[id] par exemple)
				            url: "suppr.php", // on appelle le fichier php suppr.php qui supprimer l'element de la base de donnees (dans mon cas, ce fichier est vide)
				            data: "id="+id+"&action=suppr", // variable que l'on passe au fichier php
				 
				            success: function(msg){ // en cas de succes
				                cpt_file_motivation--;
				                $('#msg_tmp_n6_motivation').text('Vous avez téléchargé ' + cpt_file_motivation + ' / '+nb_file_motivation + ' fichier(s)'); 
				                $('#n6_motivation').val('');
				                
					            $(this).delay(1200,function(){ // on attend 1.2 secondes
						            parent.slideUp(500,function() { // et on fait disparaitre l'element en l'enroulant
						            });
					                parent.empty();
					            });
				            }
			            });
		            }
	            });
	            
	            $('#n6_motivation').removeClass();
	            $('#tmp_n6_motivation').removeClass(); 
	            $('#l_n6_motivation').removeClass(); 
	        	$('.exemple').css({display:"none"});
	        	
	        	//ok
	            cpt_file_motivation++;
	            $('#msg_tmp_n6_motivation').text('Vous avez téléchargé ' + cpt_file_motivation + ' / '+nb_file_motivation + ' fichier(s)'); 
	      } 
	    });
	}
	if($("#tmp_n1_photo").attr("type") == 'file')
	{
		new AjaxUpload('#tmp_n1_photo', {
	      action: 'ajax_upload.php',
	      name: 'myfile',
	      autoSubmit: true,
	      responseType: false,
	      onChange: function(file, extension){},
	      onSubmit : function(file , ext){
	          //if (ext && new RegExp('^(' + allowed.join('|') + ')$').test(ext)){
	          if (ext && /^(jpg|png|jpeg|gif)$/.test(ext)){
	              /* Setting data
	              this.setData({
	                  'key': 'This string will be send with the file';
	              }); */
	              $('#msg_tmp').text('Uploading ' + file); 
	          } else {
	              
	              // extension is not allowed
	              $('#msg_tmp').text('Error: only images are allowed');
	              // cancel upload
	              return false;               
	          }
	      },
	      onComplete : function(file){
	            //$('<li></li>').appendTo('#msg_upload').text(file); 
	    	  
	    	    var extension = recup_extension(file);
	    	  	var nom_photo = $('#id').val()+extension;
	            $('#msg_tmp').html('<a href="docs_inscriptions/'+nom_photo+'" target="_blank">'+file+'</a><br />');
	            $('#n1_photo').val(nom_photo);
	            
	            $('#n1_photo').removeClass();
	            $('#tmp_n1_photo').removeClass(); 
	            $('#l_n1_photo').removeClass(); 
	        	$('.exemple').css({display:"none"});
	      } 
	    });
	}
	// gestion connection / inscription form0
    $("#inscription-form0").submit(function() { 
    	return test_email($(this).attr("s_email_candidat").value); 
        // !!! Important !!! 
        // always return false to prevent standard browser submit and page navigation 
        //return false; 
    }); 
    
    $("#inscription-form2").submit(function() { 
    	return  test_email($(this).attr("email_perdu").value); 
        // !!! Important !!! 
        // always return false to prevent standard browser submit and page navigation 
    }); 
    
    $("#inscription-form1").submit(function() { 
        var test_mail = test_email($(this).attr("email").value); 
        var long_password = $(this).attr("password").value.length;
        if (test_mail && long_password != 6) 
        {
        	alert('Le format de vos identifiants de connection ne sont pas correcte. ');
        	return false; 
        }
        return true; 
    }); 
    
    // gestion nom en majuscule
    $("#n1_nom").blur(function(){
    	$(this).val($(this).val().toUpperCase());
    });
    
    $(":input[@type!='submit']").blur(function	() {
	    $(this).removeClass();
	    $(this).addClass("normal");
	    $(this).parent().find(".exemple").css({display:"none"});	 
    }); 
    
    $("form").submit(function(){	  
        var re1 = /^[\w-]+(\.[\w-]+)*@([\w-]+\.)+[a-zA-Z]{2,7}$/;	// expr regul pour l'email 	 
        var re2 = /^[-]?\d*\.?\d*$/;	                            // expr regul pour les chiffres
        var re3 = /\b.{5}\b/;                                       // expr	regul 5	caractères
        var retour = true;
        
        $(":input").each(function(){
        	
        	
			var valeur	= $(this).val();        // valeur saisie par l'utilisateur	
			var nom = $(this).attr("name");    // nom du champ	
			var label = "l_"+nom;              // id du label 
			// on suipprime les []
			if('[]' == label.substring(label.length-2, label.length))
			{
			    label = label.substring(0, label.length-2);
			}
			var p = $("#"+label+"").parent();	
			var type = $(this).attr("type");	// type de l'input
			var label_class = $("#"+label+"").attr("class");

			p.find(".exemple").css({display:"none"});	
			
			if('oblig' == label_class)
			{
				if( 
				    ('select-one'==type && 0 == valeur ) || 
				    ('radio'==type && $('input[type=radio][name='+nom+']:checked').length==0) ||
				    ('checkbox'==type && $('input[type=checkbox][name='+nom+']:checked').length==0) ||
				    '' == valeur
				)
				{
					alerte(p);
		            retour =  false; // verifie tous les champs
		            return false;	// verifie champs / champs
				}
			}
      });
      return retour;	   
    });
}); 
 
  
function test_email(email) 
{ 
    var re1 = /^[\w-]+(\.[\w-]+)*@([\w-]+\.)+[a-zA-Z]{2,7}$/;	// expr regul pour l'email
    if(!email.match(re1))
    {
    	alert('Veuillez entrer une adresse email valide'); 
    	return false;
    }
    else
    {
    	return true;
    }
};
/*effet alerte*/	  
function alerte(e)	
{
	$(e).find(":input").removeClass(); 
	$(e).find(":input").addClass("erreur");		  
	$(e).find(".exemple").css({display:"block"});	   
}

function recup_extension(fichier) // fonction de récupération extension fichier
{
     var nom_fichier=fichier;// on récupere le chemin complet du fichier
     var nbchar = nom_fichier.length;// on compte le nombre de caractere que compose ce chemin
     var extension = nom_fichier.substring(nbchar-4,nbchar); // on récupere les 4 derniers caracteres
     extension = extension.toLowerCase(); //on uniforme les caracteres en minuscules au cas ou cela aurait été écris en majuscule...
     return extension; // on renvoi l'extension vers la fonction appelante
}
function reformat(chaine) 
{
  temp = chaine.replace(/[àâä]/gi,"a");
  temp = temp.replace(/[éèêë]/gi,"e");
  temp = temp.replace(/[îï]/gi,"i");
  temp = temp.replace(/[ôö]/gi,"o");
  temp = temp.replace(/[ùûü]/gi,"u");
  temp = temp.replace(/[\s]/g,"_");
  return temp
}


