BugReport
Les options qui permettent la gestion des courbes ont été rajoutées dans la modal history (merci à son auteur car je trouve que ça manquait vraiment) mais il semble qu’un cas peu connu du grand public n’ait pas été pris en compte, à savoir quand on fait Ctrl + Click sur commande historisée cela affiche tous les historiques de la tuile et donc les options (prévues pour une seule série) génèrent une erreur :
Page concernée : Dashboard et toutes les pages qui permettent d’ouvrir une modal history
Version Core : 4.4.2
Etape pour reproduire le Bug :
Ctrl + Click sur une tuile qui a plusieurs commandes historisées, puis action sur une des options suivantes :
Selon moi il suffit de désactiver ces options si plusieurs courbes sont affichées comme dans la page history.
Si je peut me permettre , pour être en parfaite harmonie avec le code déja présent, il faudrait plutot utiliser self.loadIds.length au lieu de _cmdIds.length, et pourquoi pas le mettre direct dans l’initiation de la variable d :
ensuite pour disable les options faudrait le faire dans le setModal qui est appelé qu’une seule fois.
il suffit simplement de rajouter un else au code déja présent :
//only one history loaded:
if (this.loadIds.length == 1) {
if (isset(jeedom.history.chart[this.__el__]) && isset(jeedom.history.chart[this.__el__].chart)) {
let titleEl = this.modal.querySelector('div.jeeDialogTitle > span.title')
let curTitle = titleEl.innerHTML
titleEl.innerHTML = curTitle + ' : ' + jeedom.history.chart[this.__el__].chart.series[0].name
}
} else {
document.getElementById('div_historyOptions').querySelectorAll('input, select, a').forEach(_ctrl => {
_ctrl.addClass('disabled')
})
}
ainsi qu’un nouveau div (id = div_historyOptions) qui encadre les options
En effet votre proposition me semble plus appropriée et optimisée, je ne suis pas encore au stade de l’harmonisation parfaite et quand Loic dit que ça ne va pas être simple je suis déjà en panique.
Toutes vos propositions me semblent cohérentes et logiques avec vos explications très claires.
+1 pour le PR.
en faite je m’aperçois que dans la page history quand choix multiple, les dates début et fin ne sont pas sélectionnable, le code que j’ai PR fait la même chose, en revanche je me demande pk rendre non sélectionnable ?
Nouveau PR fait pour la partie modale, avec autorisation de changer les dates, j’ai aussi changer l’id div_historyOptions par div_modalHistoryOptions car il y avait du css derrière