burger-quizz/scripts/param_account_manager.js

120 lines
3.5 KiB
JavaScript

/*
*Fichier gérant les paramètres du comptes de l'utilisateur
*/
/*
* Affiche le champ de modification d'un champ du compte de l'utilisateur
*/
function showEditBox(field)
{
//On crée un nouvel element input
var input = document.createElement("input");
input.setAttribute("type", "text");
input.setAttribute("id", field + "_input");
//On crée 2 boutons : 1 pour valider, 1 pour annuler
var bok = document.createElement("button");
var ban = document.createElement("button");
//Mise en place des attributs
bok.setAttribute("onclick", "javascript:valider('" + field + "');");
bok.setAttribute("id", "bok_" + field);
bok.setAttribute("type", "button");
bok.innerHTML = "Valider";
ban.setAttribute("onclick", "javascript:cancel('" + field + "');");
ban.setAttribute("id", "ban_" + field);
ban.setAttribute("type", "button");
ban.innerHTML = "Annuler"
//On récupère le champ servant de placement
var node_pos = document.getElementById(field + "_value");
//On ajoute les champs
document.getElementById("form_param").insertBefore(input, node_pos);
document.getElementById("form_param").insertBefore(bok, node_pos);
document.getElementById("form_param").insertBefore(ban, node_pos);
//On cache le label contenant les informations allant être modifiée
node_pos.setAttribute("style", "visibility: hidden");
document.getElementById(field + "_edit").setAttribute("style", "visibility: hidden");
}
/*
* Fonction appelée lors de la validation des modifications
*/
function valider(field)
{
//La modification du champ a été confirmée
//On met en place les nouvelles données
var value = document.getElementById(field + "_input").value;
document.getElementById(field + "_value").innerHTML = value;
document.getElementById("new_" + field).value = value;
defaultshow(field);
}
/*
* Fonction appelée lors de l'annulation de modification
*/
function cancel(field)
{
//Modification annulée, on réaffiche les champs standards
defaultshow(field);
}
/*
* Fonction appelée lors de la réinitialisation de la vue
*/
function defaultshow(field)
{
//On réinitialise l'affichage'
var parent = document.getElementById("form_param");
parent.removeChild(document.getElementById(field + "_input"));
parent.removeChild(document.getElementById("bok_" + field));
parent.removeChild(document.getElementById("ban_" + field));
//On réaffiche le label et le bouton de modification
document.getElementById(field + "_edit").setAttribute("style", "visibility: visible");
document.getElementById(field + "_value").setAttribute("style", "visibility: visible");
}
/*
* Fonction appelée lors de la modification du mot de passe
*/
function changepassword()
{
//On affiche un MessageBox
var pwd1 = prompt("Nouveau mot de passe", "");
if ((pwd1 == "") || (pwd1 == null))
{
alert("Le not de passe ne peut être vide");
return;
}
var pwd2 = prompt("Confirmer le mot de passe", "");
if (!(pwd1 == pwd2))
{
alert("Les mot de passes sont différents. Annulation");
return;
}
if((pwd2 == "") || (pwd2 == null))
{
alert("Le mot de passe ne peut être vide");
return;
}
if( (pwd1 == pwd2) && (pwd2 != "") && (pwd2 != null))
{
alert("Nouveau mot de passe valide. Confirmer les changements pour prendre effet");
document.getElementById("new_password").value = pwd1;
}
}