//==========================================
function init_edit_accredit(){

  $("#accreditContainer .divFormStepNav .navstep").click(
    function(){
      if( /active/.test($(this).attr('class')) ){
        var liId = $(this).attr('rel').replace('div_', 'li_');

        $("#accreditContainer div.sel, #accreditNav li").removeClass('sel');

        $("#"+$(this).attr('rel')).addClass('sel');
        $("#"+liId).addClass('sel');


        window.scrollTo(0, 0);
      }

      return false;
    }
  )
  //------------------------------
  if( $("#autreprofession").val() != ""){
    $("#pautreprofession").show()
  }
  $("#profession").change(
    function(){
      if( $("#profession option[value='Professionnel divers']").is(":selected") ){
        $("#pautreprofession").show();
      }else{
        $("#pautreprofession").hide();
        $("#autreprofession").val('');
      }
    }
  )
  //------------------------------
  // Si pas dispo. test de validité avant possibilité
  // de valider.
  $("#chk_type_accredit").click(
    function(){
      if( $(this).is(":checked") ){
        if( is_frm_accredit_coord_valid() ){
          //alert( 'Merci de valider les informations saisies en cliquant sur "Etape suivante" puis sur "Terminer".' );

          //$("#li_coord").addClass("valid");
          //$("#div_coord .nexstep").attr('rel', 'div_fin').attr('href', '#fin');
          $("#div_coord .divFormStepNav").append('<input type="submit" id="valid" name="valid" class="navstep finalstep active" value="Terminer">');
          $("#div_coord .nexstep").hide();

          $("#type_accredit").val( $(this).val() );
          
          //
          
        }else{
          alert( 'Merci de comptéter tous les champs requis.\nAvant de valider votre fiche.' );
          //-- reInit -----------
          $("#div_coord .nexstep").attr('rel', 'div_photo').attr('href', '#photo');
          $("#type_accredit").val( $("#type_accredit_back").val() );
          return false;
        }
      }else{
        //-- reInit -----------
        $("#type_accredit").val( $("#type_accredit_back").val() );
        $("#div_coord .nexstep").attr('rel', 'div_photo').attr('href', '#photo').show();
        $("#div_coord .finalstep").remove();
      }
    }
  );
  //------------------------------
  //$("#frm_accredit input, #frm_accredit select").blur(
  $("#frm_accredit #div_coord input").blur(
    function(){
      if( is_frm_accredit_coord_valid() ){
        $("#li_coord").addClass("valid");
        $("#div_coord .nexstep").addClass("active");
      }else{
        $("#li_coord").removeClass("valid");
        $("#div_coord .nexstep").removeClass("active");
      }
    }
  )

  //------------------------------
  // Init des fonctions onglet PHOTO
  $("#div_coord a.nexstep").click(
    function(){
      if( /active/.test( $(this).attr('class') && $('#photo_id').val() != "" ) ){
        $("#li_photo").addClass("valid");
        $("#div_photo .nexstep").addClass("active");
      }else{
        return false;
      }
    }
  );
  //------------------------------
  // Init des fonctions onglet SEJOUR
  $("#div_photo .nexstep").click(
    function(){
      if( /active/.test( $(this).attr('class') ) ){
      $("#div_sejour input, #div_sejour select").live('click',
        function(){
          if(  is_frm_accredit_sejour_valid() ){
            $("#li_sejour").addClass("valid");
            $("#div_sejour .nexstep").addClass("active");
          }else{
            $("#li_sejour").removeClass("valid");
            $("#div_sejour .nexstep").removeClass("active");
          }
        });
        //----------------------------
        $("#div_sejour input, #div_sejour select").live('blur',
          function(){
            if(  is_frm_accredit_sejour_valid() ){
              $("#li_sejour").addClass("valid");
              $("#div_sejour .nexstep").addClass("active");
            }else{
              $("#li_sejour").removeClass("valid");
              $("#div_sejour .nexstep").removeClass("active");
            }
          }
        );
        //----------------------------
      }else{
        return false;
      }
    });
  //------------------------------
  // Init des fonctions onglet DIVERS
  $("#div_divers a.nexstep").click(
    function(){
      $("#li_divers").addClass("valid");
    }
  );

  //------------------------------
  // Init des fonctions au chargement du formulaire

  $("#frm_accredit").ready(
    function(){

      if( is_frm_accredit_coord_valid() ){
        $("#li_coord").addClass("valid");
        $("#div_coord .nexstep").addClass("active");
      }
      if( $('#photo_id').val() != "" ) {
        $("#li_photo").addClass("valid");
        $("#div_photo .nexstep").addClass("active");
      }
      if(  is_frm_accredit_sejour_valid() ){
        $("#li_sejour").addClass("valid");
        $("#div_sejour .nexstep").addClass("active");
      }
      if(  $("#comments_mail").val() != "" ){
        $("#li_divers").addClass("valid");
        $("#div_divers .nexstep").addClass("active");
      }
    }
  ).submit(
      function(){
        if( ( is_frm_accredit_coord_valid() && is_frm_accredit_sejour_valid() && ( $("#photo_id").val() != "" ) ) 
            ||
            ( is_frm_accredit_coord_valid() && $("#ask4accred").length > 0 )
          ){
          $(this).append('<input type="hidden" id="form-valid" name="form-valid" value="valid">');
          return true;
        }
        else{
          return false;
        }
      }
  )
}

//==========================================
function is_frm_accredit_coord_valid() {
   var noerr=true;
   $("#frm_accredit input[class~=required]").each(
    function(){
      var emailPattern = /^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,4}$/;

      if( $.trim($(this).val()) == '' || ( /mail/.test( $(this).attr('class') ) != false && !emailPattern.test( $(this).val() ) ) ){
       noerr=false;
       //$(this).addClass('error').keyup(function(){is_frm_accredit_coord_valid();});
       $(this).addClass('error').focus( function(){$(this).removeClass('error')} ).blur(function(){is_frm_accredit_coord_valid();});
       
      }else{
       $(this).removeClass('error');
      }
    }
   )
   return noerr;
}

/*function is_coord_field_valid( $jqField ){
  if( $.trim($jqField.val()) == '' || ( /mail/.test( $jqField.attr('class') ) != false && !emailPattern.test( $jqField.val() ) ) ){
    
  }
}*/


//==========================================
function is_frm_accredit_sejour_valid() {
  var oValidate = [];
  if( $("#sart_sej").length > 0 ) {
    oValidate.push( ($("#sart_sej").val() != "" ) ? true : false );
  }
  if( $("#stop_sej").length > 0 ) {
    oValidate.push( ($("#stop_sej").val() != "" ) ? true : false );
  }
  if( $("#propo_aller").length > 0 ) {
    oValidate.push( ($("#propo_aller").val() != "" ) ? true : false );
  }
  if( $("#propo_retour").length > 0 ) {
    oValidate.push( ($("#propo_retour").val() != "" ) ? true : false );
  }

  if( $("input[name=formule_heberg]").length > 0 ) {
    //----------------------
    var bFormuleIndiv = false;
    for(var i=1;i<=9;i++){
      if( $("#formule_heberg_"+i).is(":checked") ){
        bFormuleIndiv = true;
        break;
      }
    }
    //oValidate.formule_heberg = bFormuleIndiv;
    //----------------------
    if( $("#pers_accomp").length > 0 && $("#pers_accomp").val() != "") {
      var bFormuleInvite = false;
      for(var j=10;j<=20;j++){
        if( $("#formule_heberg_"+j).is(":checked") ){
          bFormuleIndiv = true;
          bFormuleInvite = true;
          break;
        }
      }
      //oValidate.formule_heberg_invite = bFormuleInvite;
      oValidate.push( bFormuleInvite );

    }
    oValidate.push( bFormuleIndiv );
    //alert( 'Indiv : '+bFormuleIndiv+' - Invite : '+bFormuleInvite )
  }
  // Test de la présence d'erreurs
  for(var k=0;k<oValidate.length;k++){
    if( oValidate[k] == false ){
      return false;
    }
  }
  return true;
}
//==========================================
function init_accredit_upload() {

//function init_upload() {
  var sUploadFolder = '/accredit/photos_accredit';

  var sImageFileName = $("#accid").val()+"_"+$("#nom").val()+"_"+$("#prenom").val();
  
  if( $("#jqUplodifyJs").length > 0 ){
    
    $("#UploadPhoto").uploadify({
      'uploader'       : '/mod-crop-images/scripts/uploadify.swf',
      'script'         : '/mod-crop-images/upload.php',
      'scriptData'     : {'fname': sImageFileName},
      'cancelImg'      : '/mod-crop-images/cancel.png',
      'folder'         : sUploadFolder,
      //'queueID'        : 'fileAttente',
      'multi'          : false,
      'auto'           : true,
      'fileDesc'       : 'JPG Image Files (*.jpg, *.jpeg), GIF(*.gif), PNG(*.png)',
      'fileExt'        : '*.jpg;*.jpeg;*.gif;*.png',
      'buttonText'     : 'Parcourir',

      'onComplete': function(evt,queueId,fileObj,response){
        var oDatas = eval('(' + response + ')');
        //alert('complete - '+oDatas.filename);
        $('#PhotoPrev').attr('src',oDatas.filepath);
        $('#photo_id').val(oDatas.filename);

        $("#li_photo").addClass("valid");
        $("#div_photo .nexstep").addClass("active");
      }

    });
  }


}
//==========================================
function init_ffbd_forms(){
  //------------------------------
  // Marquage des champs requis
  $("form.ffbdForm input[class~=required]").each(
    function(){
      $("form.ffbdForm").find("label[for=" + $(this).attr('id') + "]")
        .addClass('required')
        .append('<span>&nbsp;(*)&nbsp;</span>')
    }
  );
}
//==========================================

$(document).ready(
  function(){
    init_ffbd_forms();
    
    if( $("#frm_accredit").length > 0 ){
      init_edit_accredit();
      init_accredit_upload();
    }
  }
)



