/* 
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */


function Questionnaire(){
    
    this.name = 'visitor';
}
jQuery.noConflict();
(function($){
Questionnaire.prototype= {
    
    init:function() {
        
       $(document.createElement('div')).attr('id', 'questionnaireVisitor').appendTo('body');
    },
    
 
    //Va chercher un cookie
    getStorage: function(sName){
            var cookContent = document.cookie, cookEnd, i, j;
            var sName = sName + "=";
            
            var c;
            for (i=0, c=cookContent.length; i<c; i++)
            {
                    j = i + sName.length;
                    if (cookContent.substring(i, j) == sName)
                    {
                            cookEnd = cookContent.indexOf(";", j);
                            if (cookEnd == -1)
                            {
                                    cookEnd = cookContent.length;
                            }
                            return decodeURIComponent(cookContent.substring(j, cookEnd));
                    }
            }       
            return null;
        
    },
    
    //Inscrit un cookie
    setStorage: function(sName, sValue)
    {

        var today = new Date(), expires = new Date();
        expires.setTime(today.getTime() + (365*24*60*60*1000));
        document.cookie = sName + "=" + encodeURIComponent(sValue) + ";expires=" + expires.toGMTString();
        
    },
   
    getQuestionnaire: function(fichier)
    {
        $.ajax({
                url: fichier,
                dataType: "html",
                async: false, 
                success:function(data){
                    //affiche le contenu du fichier dans le conteneur dédié
                    $('#questionnaireVisitor').html(data);
                    
                   
                }
            });
    },
    
    
    
    
    
    
    traductor: function(lang)
    {

    
    //on initialise le dico
       var dico = {
            fr: {
                     "intro"  : "RadarVirtuel a besoin de vous !<br />Dans le cadre de notre d&eacute;veloppement, nous cherchons &agrave; mieux vous conna&icirc;tre et ainsi mieux r&eacute;pondre &agrave; vos attentes.",
                     "question1" : 'Qui &ecirc;tes vous ?',
                     'response1_1' : 'Un curieux',
                     'response1_2' : 'Un passionn&eacute; d\'a&eacute;ronautique',
                     'response1_3' : 'Un passager',
                     'response1_4' : 'Vous attendez un passager',
                     'response1_5' : 'Un professionnel (pilote, contr&ocirc;leur ...)',
                     'question2' : 'Est-ce votre premi&egrave;re visite?',
                     'response2_1' : 'Oui',
                     'response2_2' : 'Non',
                     'question3' : '(option) Si vous souhaitez &ecirc;tre inform&eacute; sur notre projet, laissez nous votre adresse mail :',
                     'end' : 'Merci d\'avoir pris le temps de r&eacute;pondre &agrave; ce questionnaire!',
                     'ok' : 'Valider',
                     'close': 'je ne souhaite pas r\351pondre',
                     'errorCheckBox': 'SVP, Choississez au moins une r&eacute;ponse.',
                     'errorRadio': 'SVP, Choississez une r&eacute;ponse.'
                },
            en: {
                     "intro"  : "RadarVirtuel needs you !<br/>As part of our development, we would like to better know you so we can provide the best response to your needs.",
                     'question1' : 'Who are you ?',
                     'response1_1' : 'Just curious about your site',
                     'response1_2' : 'aeronautics passionate',
                     'response1_3' : 'Passenger',
                     'response1_4' : 'Attending a passenger',
                     'response1_5' : 'a Professional (pilot, ATC, ...)',
                     'question2' : 'Is it your first visit?',
                     'response2_1' : 'Yes',
                     'response2_2' : 'No',
                     'question3' : '(option) If you would like to be informed on our projet, please fill with your mail address',
                     'end' : 'Thank you for your help !',
                     'ok' : 'Send',
                     'close' : 'I don\'t want to answer',
                     'errorCheckBox': 'Please, choose at least one response.',
                     'errorRadio': 'Please, choose one response.'

                }

        };

        //on choisis le dictionnaire(il y en a qu'un ici)
        $.tr.dictionary(dico);
        
  
        //on choisis la lang
        $.tr.language(lang);
        
      

        //on initialise le traducteur
        return $.tr.translator();
    },
    
    
    getText: function(lang)
    {

        var tr = this.traductor(lang);
        
       
        // on remplit les div ou span du fichier questionnaire.html avec les données du dictionnaires.
        $('#intro').html(tr('intro'));

        $('#question1').html(tr('question1'));
        $('#response1_1').html(tr('response1_1'));
        $('#response1_2').html(tr('response1_2'));
        $('#response1_3').html(tr('response1_3'));
        $('#response1_4').html(tr('response1_4'));
        $('#response1_5').html(tr('response1_5'));

        $('#question2').html(tr('question2'));
        $('#response2_1').html(tr('response2_1'));
        $('#response2_2').html(tr('response2_2'));

        $('#question3').html(tr('question3'));

        $('#end').html(tr('end'));

        $('#close').val(tr('close'));
        $('#ok').val(tr('ok'));

        $('#errorCheckBox').html(tr('errorCheckBox'));
        $('#errorRadio').html(tr('errorRadio'));
    },
    
    showDialog: function(title)
    {

     $('#questionnaireVisitor').dialog({
            title: title   ,
            width: 600,
            height: 600
        });
    },
    
    verifMail: function(mail)
    {
        email_regex = /^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,4}$/;  
        if(email_regex.test(mail))
        {
            return true;
        }
        else
        {
            return false;
        }
    },
    
    //verifie qu'au moin une réponse à été sélectionner
    verifCheck: function()
    {
        var curious = Boolean($('#curious').attr('checked')); 
        var passionate = Boolean($('#passionate').attr('checked')); 
        var passenger = Boolean($('#passenger').attr('checked')); 
        var attending = Boolean($('#attending').attr('checked')); 
        var professional = Boolean($('#professional').attr('checked')); 
       
        if(curious == true || passionate == true || passenger == true || attending == true || professional == true)
            return true;
        else
            return false;
    },
    
    verifRadio: function(radio)
    {
       if(radio != 'yes' && radio != 'no')
       {   
           return false;
       }
       return true;
    },
    
    //envoi le formulaire
    envoiQuest : function(champs, fichier)
    {
        var c= 0;
        var dataSubmit = '';
        var key;
        var response;
        
        for(key in champs )
        {
            
                dataSubmit += '&';
            
            dataSubmit += key+'='+champs[key];  
            c++;
            
        }
        
         if ($('requestMultiplier')) {
        // Suppression de la balise si elle existait déjà
        // (pour faire un brin de ménage dans le DOM)
        $('requestMultiplier').remove();
        }

        // Création de la nouvelle balise :
        var script = document.createElement('script');
        script.src = fichier+'?';
        script.src += 'func=resultFunction';
        script.src += dataSubmit;

        script.id = 'requestMultiplier';
        script.type = 'text/javascript';

        // Et injection dans le DOM :
        document.body.appendChild(script);  
     
    },
    funcResult: function(jsonValue) {
            if (jsonValue) {
                if(jsonValue == 'okSubmit' || jsonValue == 'okClose' || jsonValue == 'error' || jsonValue ==  'errorDatabase')
                {
                    var response = jsonValue;
                }
                else
                {
                    response = 'erreurRetour';
                }
            }
            else {
               var response ='erreurEnvoi';
            }
            return response;
        } 
    
     

}

})(jQuery);

