- [x] [view/js/users] Implementer la recherche pour la suppression
This commit is contained in:
parent
30ae797c32
commit
fce52f918a
2
todo.md
2
todo.md
|
@ -7,7 +7,6 @@
|
|||
############
|
||||
# EN COURS #
|
||||
############
|
||||
- [ ] [view/js/users] Implementer la recherche pour la suppression
|
||||
- [ ] [container.scss] Icone dans bouton quand succes sur l'operation
|
||||
|
||||
- [ ] [view/users][view/js/users.js] Suppression avec recherche comme pour la modification
|
||||
|
@ -17,6 +16,7 @@
|
|||
########
|
||||
# FAIT #
|
||||
########
|
||||
- [x] [view/js/users] Implementer la recherche pour la suppression
|
||||
- [x] [view/js/machines] Implementer la recherche pour la suppression
|
||||
- [x] Nettoyage git
|
||||
- [x] [ResourceDispatcher] Gestion de la coloration de svg
|
||||
|
|
|
@ -257,9 +257,6 @@ if( section.remove.element != null ){
|
|||
// On annule l'envoi de base (PHP)
|
||||
e.preventDefault();
|
||||
|
||||
/* (1) On recupere l'UID de la machine */
|
||||
var getuid = {};
|
||||
|
||||
// Si l'id est defini
|
||||
if( section.remove.input.search.id.value != '' ){
|
||||
|
||||
|
|
118
view/js/users.js
118
view/js/users.js
|
@ -185,8 +185,14 @@ if( section.create.element != null ){
|
|||
=========================================================*/
|
||||
if( section.remove.element != null ){
|
||||
|
||||
// Definition des champs
|
||||
/* (1) Definition des champs */
|
||||
section.remove.input = {
|
||||
search: {
|
||||
keyword: document.querySelector(section.remove.text + '#remove_search_keyword'),
|
||||
id: document.querySelector(section.remove.text + '#remove_search_id'),
|
||||
submit: document.querySelector(section.remove.text + '#remove_search_submit')
|
||||
},
|
||||
|
||||
code: document.querySelector(section.remove.text + '#remove_code'),
|
||||
username: document.querySelector(section.remove.text + '#remove_username'),
|
||||
|
||||
|
@ -194,73 +200,104 @@ if( section.remove.element != null ){
|
|||
};
|
||||
|
||||
|
||||
/* (1) Gestion de l'auto-remplissage par url */
|
||||
/* (2) Gestion de l'auto-remplissage par url */
|
||||
function autofill_remove(id_user){
|
||||
// On recupere le code + username de l'utilisateur selectionne
|
||||
var user_data = null;
|
||||
var user_data = {
|
||||
id_user: '',
|
||||
code: '',
|
||||
username: '',
|
||||
firstname: '',
|
||||
lastname: '',
|
||||
mail: '',
|
||||
status: '',
|
||||
disable_input: true
|
||||
};
|
||||
|
||||
api.send({path:'userDefault/getById', data: [id_user]}, function(answer){
|
||||
if( answer.ModuleError == 0 ){ // Si un resultat
|
||||
user_data = answer.user;
|
||||
user_data.disable_input = false;
|
||||
}
|
||||
|
||||
// Auto-remplissage du formulaire
|
||||
section.remove.input.code.value = user_data.code;
|
||||
section.remove.input.username.value = user_data.username;
|
||||
|
||||
// On affiche le bouton de suppression
|
||||
section.remove.input.submit.disabled = false;
|
||||
section.remove.input.submit.disabled = user_data.disable_input;
|
||||
|
||||
}else // Si aucun resultat -> on desactive le bouton de suppression
|
||||
section.remove.input.submit.disabled = true;
|
||||
});
|
||||
}if( pageManager.vars.length >= 2 && !isNaN(pageManager.vars[1]) ) autofill_remove(pageManager.vars[1]);
|
||||
|
||||
|
||||
|
||||
/* (3) Gestion de la recherche */
|
||||
var lastsearch_remove = null;
|
||||
var searchindex_remove = 0;
|
||||
section.remove.input.search.submit.addEventListener('click', function(e){
|
||||
// On annule l'envoi de base (PHP)
|
||||
e.preventDefault();
|
||||
|
||||
// Si le champ n'est pas vide, on lance la recherche
|
||||
if( section.remove.input.search.keyword.value != '' ){
|
||||
// Redaction de la requete
|
||||
var getuid = {
|
||||
path: 'userDefault/search',
|
||||
data: [section.remove.input.search.keyword.value]
|
||||
};
|
||||
|
||||
// On envoie la requete
|
||||
api.send(getuid, function(uidanswer){
|
||||
if( uidanswer.ModuleError == 0 && uidanswer.users.length > 0){ // si on a trouve qqch
|
||||
// Si on trouve la meme machine que lors de la derniere recherche
|
||||
if( lastsearch_remove == uidanswer.users[searchindex_remove].id_user )
|
||||
searchindex_remove = (searchindex_remove+1) % uidanswer.users.length; // on affiche le prochain (decalage cyclique)
|
||||
|
||||
lastsearch_remove = uidanswer.users[searchindex_remove].id_user;
|
||||
section.remove.input.search.id.value = lastsearch_remove;
|
||||
// on auto-remplit le formulaire
|
||||
autofill_remove(lastsearch_remove);
|
||||
|
||||
}else
|
||||
autofill_remove(null);
|
||||
});
|
||||
}
|
||||
|
||||
}, false);
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
/* (n) Gestion de l'envoi du formulaire */
|
||||
section.remove.input.submit.addEventListener('click', function(e){
|
||||
// On annule l'envoi de base (PHP)
|
||||
e.preventDefault();
|
||||
|
||||
|
||||
|
||||
/* (1) On recupere l'UID de l'utilisateur */
|
||||
var getuid = {};
|
||||
|
||||
|
||||
// recuperation par CODE
|
||||
if( section.remove.input.code.value != '' ){
|
||||
getuid.path = 'userDefault/getByCode';
|
||||
getuid.data = [section.remove.input.code.value];
|
||||
|
||||
// recuperation par USERNAME
|
||||
}else if( section.remove.input.username.value != '' ){
|
||||
getuid.path = 'userDefault/getByUsername';
|
||||
getuid.data = [section.remove.input.username.value];
|
||||
}
|
||||
|
||||
// On envoie la requete de demande d'uid
|
||||
api.send(getuid, function(uid_answer){
|
||||
if( uid_answer.ModuleError == 0 ){ // Si aucune erreur
|
||||
// Si l'id est defini
|
||||
if( section.remove.input.search.id.value != '' ){
|
||||
|
||||
/* (2) On supprime l'utilisateur */
|
||||
var request = {
|
||||
path: 'userDefault/delete', // On veut supprimer cet utilisateur
|
||||
data: [uid_answer.user.id_user]
|
||||
data: [section.remove.input.search.id.value]
|
||||
};
|
||||
|
||||
api.send(request, function(answer){
|
||||
if( answer.ModuleError == 0 && answer.status == true ) // Tout s'est bien deroule
|
||||
if( answer.ModuleError == 0 && answer.status == true ){ // Tout s'est bien deroule
|
||||
console.log('Utilisateur supprime!');
|
||||
else // Erreur
|
||||
|
||||
// On vide le formulaire
|
||||
autofill_remove(null);
|
||||
}else // Erreur
|
||||
console.error('ModuleError::'+answer.ModuleError);
|
||||
});
|
||||
|
||||
}
|
||||
|
||||
});
|
||||
|
||||
}, false);
|
||||
}
|
||||
|
||||
|
@ -347,8 +384,8 @@ if( section.edit.element != null ){
|
|||
|
||||
|
||||
/* (2) Gestion de la recherche de l'utilisateur */
|
||||
var lastsearch = null;
|
||||
var searchindex = 0;
|
||||
var lastsearch_edit = null;
|
||||
var searchindex_edit = 0;
|
||||
section.edit.input.search.submit.addEventListener('click', function(e){
|
||||
// On annule l'envoi de base (PHP)
|
||||
e.preventDefault();
|
||||
|
@ -365,17 +402,16 @@ if( section.edit.element != null ){
|
|||
api.send(getuid, function(uidanswer){
|
||||
if( uidanswer.ModuleError == 0 && uidanswer.users.length > 0 ){ // si on a trouve qqch
|
||||
// Si on trouve le meme utilisateur que lors de la derniere recherche
|
||||
if( lastsearch == uidanswer.users[searchindex].id_user )
|
||||
searchindex = (searchindex+1) % uidanswer.users.length; // on affiche le prochain (decalage cyclique)
|
||||
if( lastsearch_edit == uidanswer.users[searchindex_edit].id_user )
|
||||
searchindex_edit = (searchindex_edit+1) % uidanswer.users.length; // on affiche le prochain (decalage cyclique)
|
||||
|
||||
lastsearch = uidanswer.users[searchindex].id_user;
|
||||
section.edit.input.search.id.value = lastsearch;
|
||||
lastsearch_edit = uidanswer.users[searchindex_edit].id_user;
|
||||
section.edit.input.search.id.value = lastsearch_edit;
|
||||
// on auto-remplit le formulaire
|
||||
autofill_edit(lastsearch);
|
||||
autofill_edit(lastsearch_edit);
|
||||
|
||||
}else{
|
||||
}else
|
||||
autofill_edit(null);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
|
@ -412,7 +448,7 @@ if( section.edit.element != null ){
|
|||
console.log('Utilisateur modifie!');
|
||||
|
||||
// On met a jour l'utilisateur
|
||||
autofill_edit(null);
|
||||
autofill_edit(section.edit.input.search.id.value);
|
||||
|
||||
}else // Erreur
|
||||
console.error('ModuleError::'+answer.ModuleError);
|
||||
|
|
Loading…
Reference in New Issue