1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138
| $('#bandeau-alerted').hide();
// vider sessionStorage
var bt=document.getElementById('btvalider');//
var btinit=document.getElementById('bt-init');
sessionStorage.removeItem('token');// effacer l'ancien jeton
sessionStorage.removeItem('utilisateur'); // effacer l'ancien utilisateur
// remettre à vide les inputs du formulaire
document.querySelector("input[name='identifiant']").value=null;
document.querySelector("input[name='codeEntreprise']").value=null;
document.querySelector("input[name='password']").value=null;
// retourne objet XMLHttpsRequest
function getXMLHttpRequest()
{
if (window.XMLHttpRequest || window.ActiveXObject)
{
if (window.ActiveXObject)
{
try
{
return new ActiveXObject("Msxml2.XMLHTTP");
}
catch(e)
{
return new ActiveXObject("Microsoft.XMLHTTP");
}
} else
{
return new XMLHttpRequest();
}
} else
{
alert("Votre navigateur ne supporte pas l'objet XMLHTTPRequest...");
return null;
}
}
// récuperer le token, sauvegarde dans sessionStrorage
function RecupToken(xhr,ident,token)
{
// récuperer objet XMLhttpRequest
xhr=getXMLHttpRequest();
xhr.open( "POST", 'https://www.kizeoforms.com/rest/v3/login', true);
xhr.setRequestHeader('Accept','application/json');
xhr.setRequestHeader('Content-Type','application/json');
xhr.onreadystatechange = function()
{
if (xhr.readyState === 4 )
{
if (xhr.status === 200)
{
$('#bandeau-alerted').hide(); // effacer le bandeau alerte dans le html
sessionStorage.setItem('stToken',xhr.responseText);// stokage du jeton
} else
{
$('#bandeau-alerted').show(); // afficher bandeau si identifiant, mdp et code entreprise pas bon
}
};
}
// envoyer la requete
xhr.send(ident);
}
// recuperer utilisateur
function RecuplisteInfoUtilisateur(xhr,token,identifiant)
{
xhr=getXMLHttpRequest();
xhr.open('GET','https://www.kizeoforms.com/rest/v3/users', true);
xhr.setRequestHeader('Accept','application/json');
xhr.setRequestHeader('Content-Type','application/json');
xhr.setRequestHeader('Authorization',token);
xhr.onreadystatechange=function()
{
if (xhr.readyState === 4 )
{
if (xhr.status === 200)
{
sessionStorage.setItem('stListeUtilisateur',xhr.responseText);// stockage de tous les utilisateurs
}
};
}
xhr.send();
}
// bouton valider de la page HTML
bt.addEventListener('click', function()
{
//
var xhr,ident,token,listeInfoUtilisateur,objListeInfoUtilisateur,obj,utilisateurConnecte;
var identifiant=document.querySelector("input[name='identifiant']").value;
var codeEntreprise=document.querySelector("input[name='codeEntreprise']").value;
var mdp=document.querySelector("input[name='password']").value;
// creation objet javascript avec les données de connection
ident=JSON.stringify({"user": identifiant, "password": mdp, "company": codeEntreprise});
// appel fonction pour récupérer valeur jeton
RecupToken(xhr,ident);
// stockage du jeton dans variable
token=sessionStorage.getItem('stToken');
// effacer jeton du sessionStorage
sessionStorage.removeItem('stToken');
// parser jeton
token=JSON.parse(token);
// récuperer tous les utilisateurs
RecuplisteInfoUtilisateur(xhr,token.data['token'],identifiant);
//sauvegarder de toutes les données utilisateurs
listeInfoUtilisateur=sessionStorage.getItem('stListeUtilisateur');
// effacer du sessionStorage listeInfoUtilisateur
sessionStorage.removeItem('stListeUtilisateur');
// parser
objListeInfoUtilisateur=JSON.parse(listeInfoUtilisateur);
// recuperer l'utilisateur désirée , info dans input identifiant page connection HTML
for(var i in objListeInfoUtilisateur.data.users)
{
obj = objListeInfoUtilisateur.data.users[i];
if (obj.login===identifiant)
{
break;
}
}
utilisateurConnecte=obj.first_name+' '+obj.last_name;
// utilisateur trouvé, sauvegarde dans sessionStorage
sessionStorage.setItem('stUtilisateurConnecte',utilisateurConnecte);
utilisateurConnecte=sessionStorage.getItem('stUtilisateurConnecte');
// effacer
sessionStorage.removeItem('stUtilisateurConnecte');
// affichage utilisateur
alert(utilisateurConnecte);
}
);
//bouton initialiser
btinit.addEventListener('click', function()
{
$('#bandeau-alerted').hide();
}); |
Partager