Contrôle avant sauvegarde dans un plugin (équipements)

Bonjour,
Je bosse sur un plugin et j’ai besoin de d’effectuer un contrôle de données lors du clique sur le bouton ‹ sauvegarde ›

J’ai testé :

$('.eqLogicAction[data-action=save]').off('click').on('click', function (event) {
... controle

}

dans le cas ci-dessus, mon contrôle fonctionne mais la sauvegarde ne se fait pas (à cause du off ), j’ai essayé return et return true mais sans succès


$('.eqLogicAction[data-action=save]').on('click', function (event) {
... controle
si pas ok: return false;

}

le contrôle se fait mais je n’arrive pas à bloquer la sauvegarde si mon contrôle est négatif

besoin d’un petit coup de main les amis :slight_smile:

Salut

Peut etre + a mettre dans la partie Aide Programmation , non ?!

Sans oublier d utiliser le texte preformaté pour la partie code :wink:


Je creuserai la fonction existante JS :

function saveEqLogic(_eqLogic) {

        If(monTest == false) {
         throw new Error('marche pas ton truc!');
         }

     return _eqLogic
}

Edit :
La question est posée pour la partie « configuration » du plugin ?
Ou sir la partie « equipement » du plugin ??

Pcq entre ton titre et les essaies que tu proposes, perso je suis pas sur

Salut,

Si c’est bien sur la config du plugin comme j’ai compris, il y a déjà 2 ou 3 questions identiques sur ce sujet dans cette section :wink:

Et c’est documenté dans le plugin template

cherches sur preConfig_ (dans ton cas) ou postConfig_

https://community.jeedom.com/search?q=preConfig_%20%23developpeur-developpeurs%3Aaide-programmation

ici par exemple: Validation d'un paramètre du plugin

Merci pour ton retour !
La question était posée pour la partie équipement du plugin, j’ai pas pensé à préciser, la tête dans le guidon :wink:
La fonction fait le boulot, saut le message d’erreur qui apparait dans jeedom lié au throw new error

Si c’est pour un équipement alors c’est les fonctions php preSave, preInsert et preUpdate en fonction de quand tu veux faire le check

  • insert seulement à l’insert
  • update seulement pour l’update
  • save tout le temps

Ce n’est pas du tout dans le js qu’il faut faire des checks bloquant, un js ca se by-pass, un controle ca doit etre fait dans le backend

mon but est de forcer l’utilisateur à configurer correctement certains éléments avant sauvegarde.
La solution tomitomas fait l’affaire

merci à vous pour vos retours :slight_smile:

je n’ai pas dit qu’il ne fallait pas en faire également côté back ^^

perso je fais en JS de façon à mettre en surbrillance là où le controle échoue

puis si tout est OK en front, ca envoit au back pour sauvegarde → je fais là aussi un controle pour savoir si je sauvegarde ou pas

je n’ai pas dit que tu n’avais pas dit ca :wink:
je répondais à @jexou

edit: on est aligné: le front pour le display et le coté « user friendly » et le back qui bloque et envoi une exception

on est d’accord, je recherchais le coté mise en avant de l’erreur pour aider l’utilisateur à comprendre son erreur
au top les gars, vous êtes ultra réactif !!!

Ce sujet a été automatiquement fermé après 24 heures suivant le dernier commentaire. Aucune réponse n’est permise dorénavant.