parent
a8e8ba6f16
commit
f6143c51ca
@ -0,0 +1,55 @@
|
|||||||
|
|
||||||
|
function editField(id) {
|
||||||
|
// Récupérer l'élément <p> via son identifiant
|
||||||
|
var pElement = document.getElementById(id);
|
||||||
|
|
||||||
|
// Obtenir le texte actuel du <p>
|
||||||
|
var currentValue = pElement.textContent.trim();
|
||||||
|
|
||||||
|
// Créer un champ de saisie <input> avec la valeur actuelle
|
||||||
|
var input = document.createElement('input');
|
||||||
|
input.type = 'text';
|
||||||
|
input.value = currentValue
|
||||||
|
input.class = 'changeValue';
|
||||||
|
|
||||||
|
// Sauvegarde lors de la perte de focus
|
||||||
|
input.setAttribute('onblur', 'saveField("' + id + '", this.value)');
|
||||||
|
|
||||||
|
// Remplacer le <p> par le champ <input>
|
||||||
|
pElement.innerHTML = '';
|
||||||
|
pElement.appendChild(input);
|
||||||
|
|
||||||
|
// Mettre le focus sur le champ de saisie
|
||||||
|
input.focus();
|
||||||
|
}
|
||||||
|
|
||||||
|
//Sauvegarder les changements sur la vue
|
||||||
|
function saveField(id, newValue) {
|
||||||
|
if (id === 'email') {
|
||||||
|
if (!validateEmail(newValue)) {
|
||||||
|
alert('Adresse email invalide. Veuillez entrer un email valide.');
|
||||||
|
document.getElementById(id).querySelector('input').focus();
|
||||||
|
return; // Ne pas sauvegarder si l'email n'est pas valide
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (id === 'username') {
|
||||||
|
if (newValue.trim() === "") {
|
||||||
|
alert('Le nom d\'utilisateur ne peut pas être vide.');
|
||||||
|
document.getElementById(id).querySelector('input').focus();
|
||||||
|
return; // Ne pas sauvegarder si le nom d'utilisateur est vide
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// Récupérer l'élément <p> via son identifiant
|
||||||
|
var pElement = document.getElementById(id);
|
||||||
|
|
||||||
|
// Mettre à jour la valeur avec la nouvelle saisie
|
||||||
|
pElement.innerHTML = '<strong>' + newValue + ' <img class="imgModify" src="../images/modify.svg" onclick="editField(\'' + id + '\')"/></strong>';
|
||||||
|
}
|
||||||
|
|
||||||
|
//Email valide
|
||||||
|
function validateEmail(email) {
|
||||||
|
// Regex pour vérifier le format de l'email
|
||||||
|
var re = /^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$/;
|
||||||
|
return re.test(String(email).toLowerCase());
|
||||||
|
}
|
Loading…
Reference in new issue