Ce Forum passera en lecture seule en janvier 2020
Image
Merci de vous rendre sur https://community.jeedom.com maintenant pour vos prochains postes ;)

Non mise à jours des valeurs sur la dashboard

Pour échanger sur les plugins classés en catégorie "Programmation"
Avatar de l’utilisateur
skyline-ch
Actif
Messages : 1504
Inscription : 30 juil. 2014, 17:06
Localisation : Suisse - VS
Contact :

Non mise à jours des valeurs sur la dashboard

Message par skyline-ch » 01 juil. 2017, 21:58

Une des nouveautés et optimisation de la V3 c'est la mise à jour des information sur la dash (les widgets)

Si vous constater que les valeurs ne se mettent pas à jours, sur la dash quant elle reste afficher, ce n'est pas un problème jeedom ni du plugin mais probablement le widget qui n'es pas à jour.

Affin de contrôler si se dernier à été mis a jour ou non, il vous suffi d'aller dans le plugin Widget, d'ouvrir le widget qui est soupçonner poser problème, puis de contoroler dans le code si vous trouver un bout de code comme si dessous :

Code : Tout sélectionner

jeedom.cmd.update['#id#'] = function(_options){
............
........
....
..
}
jeedom.cmd.update['#id#']({display_value:'#state#',valueDate:'#valueDate#',collectDate:'#collectDate#'});
Si il ni as pas se bout de code alors le widget n'est pas à jours, il faudra demander au dev du widget de le mettre à jour, si c'est un officiel, vous pouvez le signaler ici.

Si il y as se bout de code, le widget à été mis à jour pour jeedom v3, tout fois il peux y avoir une erreur dans le code ou un autre problème pour le quelle il faudra investiguer.

Merci de nous donnés donc un maximum d'information et des capture pour que l'on puis plus facilement cibler le problème
Compétence :
- Prog : HTML5, CSS3, JS, JQuery, SQL, PHP

thanaus
Actif
Messages : 1106
Inscription : 20 nov. 2016, 13:06

Re: Non mise à jours des valeurs sur la dashboard

Message par thanaus » 01 juil. 2017, 23:05

Bonsoir,

Étant en cours de développement d'un widget, peux tu me donner l'exemple d'un widget existant sur lequel me baser pour adapter mon code ?
Je pense que cela intéressera beaucoup de développeurs de plugin.

Merci
Netatmo Pro | CloudSync Pro
On gagne sa vie avec ce que l'on reçoit, mais on la bâtit avec ce que l'on donne.
Winston Churchill
Lien Paypal

Avatar de l’utilisateur
skyline-ch
Actif
Messages : 1504
Inscription : 30 juil. 2014, 17:06
Localisation : Suisse - VS
Contact :

Re: Non mise à jours des valeurs sur la dashboard

Message par skyline-ch » 01 juil. 2017, 23:16

thanaus a écrit :
01 juil. 2017, 23:05
Bonsoir,

Étant en cours de développement d'un widget, peux tu me donner l'exemple d'un widget existant sur lequel me baser pour adapter mon code ?
Je pense que cela intéressera beaucoup de développeurs de plugin.

Merci
Je ferais dans les prochains jours un exemple plus détailler tu peux daja voir celui si :

Code : Tout sélectionner

<div style="min-width:90px;min-height:100px;margin:0px 5px;" class="cmd container-fluid #history# tooltips cmd cmd-widget" data-type="info" data-subtype="numeric" data-cmd_id="#id#" data-cmd_uid="#uid#" data-version="#version#" title="#collectDate#" >
    <center>
        <span style="font-weight: bold;font-size : 12px; #hideCmdName#">#name#</span><br/>
       <div style="margin-top: 16px;"> 
      		<span class="state" style="font-size: 2em;font-weight: bold;">#state#</span>
        	<span style="font-weight: bold;">#unite#</span>
      </div>
        <span style="#displayHistory#;" class="statistiques">
            <span title='Min' class='tooltips'>#minHistoryValue#</span>|<span title='Moyenne' class='tooltips'>#averageHistoryValue#</span>|<span title='Max' class='tooltips'>#maxHistoryValue#</span> <i class="#tendance#"></i>
        </span>
    </center>
  	<script>
      try {
            jeedom.cmd.update['#id#'] = function(_options){
                $('.cmd[data-cmd_id=#id#]').attr('title','Valeur du '+_options.valueDate+', collectée le '+_options.collectDate)
                $('.cmd[data-cmd_id=#id#] .state').empty().append(_options.display_value);
            }
            jeedom.cmd.update['#id#']({display_value:'#state#',valueDate:'#valueDate#',collectDate:'#collectDate#'});
      }catch(err) {
       //console.log('widget : Sky-tile ->',err);
      }
	</script>
</div>
Ou plus complet avec plusieurs fonction et plus complexe télécharge sur le market sky-colorTuile
Compétence :
- Prog : HTML5, CSS3, JS, JQuery, SQL, PHP

Avatar de l’utilisateur
Laco
Actif
Messages : 822
Inscription : 06 oct. 2014, 19:25

Re: Non mise à jours des valeurs sur la dashboard

Message par Laco » 02 juil. 2017, 10:02

Salut à tous

Pour info, le widget "light" est bon sur le github https://github.com/jeedom/core/blob/bet ... light.html, mais pas au niveau de la version poussée par la V3

Bonne journée à tous ;)
MERCI A TOUTE L'ÉQUIPE POUR LE TAF

Avatar de l’utilisateur
Alcmène
Timide
Messages : 223
Inscription : 03 déc. 2015, 10:17
Localisation : Marne la Vallée
Contact :

Re: Non mise à jours des valeurs sur la dashboard

Message par Alcmène » 02 juil. 2017, 10:36

J'ai un message d'erreur avec ce plug-in. Il est bien mis à jour depuis la V3
Capture.JPG
Capture.JPG (19 Kio) Consulté 3755 fois
Jeedom 3.1.7 sur VM Debian 9 sous Virtual Box
RFXCom, Z-Wave, Broadlink, Philips HUE, Google Home, Chromecast, IFTTT, Netatmo
Mon Matériel et Programmations

Anonyme
Actif
Messages : 10082
Inscription : 09 août 2014, 12:15

Re: Non mise à jours des valeurs sur la dashboard

Message par Anonyme » 02 juil. 2017, 10:37

Contenu supprimé à la demande de son auteur

Avatar de l’utilisateur
Alcmène
Timide
Messages : 223
Inscription : 03 déc. 2015, 10:17
Localisation : Marne la Vallée
Contact :

Re: Non mise à jours des valeurs sur la dashboard

Message par Alcmène » 02 juil. 2017, 10:41

Oui je l'avais ouvert en même temps je me suis trompé de page DSL
Jeedom 3.1.7 sur VM Debian 9 sous Virtual Box
RFXCom, Z-Wave, Broadlink, Philips HUE, Google Home, Chromecast, IFTTT, Netatmo
Mon Matériel et Programmations

Avatar de l’utilisateur
blablatus
Timide
Messages : 277
Inscription : 20 avr. 2015, 19:16
Localisation : Nord (59)

Re: Non mise à jours des valeurs sur la dashboard

Message par blablatus » 02 juil. 2017, 11:08

skyline-ch a écrit :
01 juil. 2017, 21:58
Une des nouveautés et optimisation de la V3 c'est la mise à jour des information sur la dash (les widgets)
Bonjour.

Merci pour cette info : j'avais pas percuté.
Je sais que j'aurai quelques widgets 'perso' à adapter quand je passerai en V3.
Beelink BT3+RazBerry+IPX800+ECODEVICE - Jeedom PROD 4.0.23 - Jeedom DEV 4.0.23
- Chauffage électrique via modules qubino+thermostats Danfoss
- Interaction avec alarme DIAGRAL via IPX800
- Suivi conso électrique
- Volets bubbendorff via IPX800

Movitch
Timide
Messages : 30
Inscription : 03 janv. 2016, 10:58

Re: Non mise à jours des valeurs sur la dashboard

Message par Movitch » 02 juil. 2017, 11:31

Bonjour,

Suite au passage V3, Skyline m'a suggéré la modif des widget sur un autre post et je l'en remercie.
Par contre il me fait un truc bizarre sur le dashboard, il multiplie les images l'une en dessous de l'autre lors des changements d'états.
Image

Voilà le code du widget

Code : Tout sélectionner

<div style="width:90px;min-height:62px;" class="cmd #history# tooltips cmd-widget" data-type="info" data-subtype="binary" data-cmd_id="#id#" title="#collectDate#">
    <center>
        <span class='cmdName' style="font-weight: bold;font-size : 12px;">#name#</span><br/>
        <span style="font-size: 3em;font-weight: bold;margin-top: 5px;" id="iconCmd#id#"></span>
    </center>
  <style>
    img.DBimg {
  	width: 80px;
  	height: 80px;
	} 
  </style>
    <script>
      $('.iconCmd#id#').empty();
      jeedom.cmd.update['#id#'] = function(_options){
       
        if (_options.display_value == '1' || _options.display_value == 1) {
            $('#iconCmd#id#').append('<img src="plugins/widget/core/template/dashboard/cmd.info.binary.DB Sécurité mouvement/mvt.png" class="DBimg" />');
        }
        if (_options.display_value == '0' || _options.display_value == 0) {
            $('#iconCmd#id#').append('<img src="plugins/widget/core/template/dashboard/cmd.info.binary.DB Sécurité mouvement/mvt_ras.png" class="DBimg" />');
        }
      }
      
      jeedom.cmd.update['#id#']({display_value:'#state#',valueDate:'#valueDate#',collectDate:'#collectDate#'});
      
    </script>
</div>
En regardant un peu les autres widgets, j'ai rajouté $('.iconCmd#id#').empty(); pensant justement qu'il ne l'effaçait pas avant et faisait un append ensuite. Mais finalement ça ne change rien. J'ai surement raté quelque chose ou pas compris la nouvelle façon de fonctionner.... :?

Avatar de l’utilisateur
skyline-ch
Actif
Messages : 1504
Inscription : 30 juil. 2014, 17:06
Localisation : Suisse - VS
Contact :

Re: Non mise à jours des valeurs sur la dashboard

Message par skyline-ch » 02 juil. 2017, 12:12

Movitch a écrit :
02 juil. 2017, 11:31
Bonjour,

Suite au passage V3, Skyline m'a suggéré la modif des widget sur un autre post et je l'en remercie.
Par contre il me fait un truc bizarre sur le dashboard, il multiplie les images l'une en dessous de l'autre lors des changements d'états.

Voilà le code du widget



En regardant un peu les autres widgets, j'ai rajouté $('.iconCmd#id#').empty(); pensant justement qu'il ne l'effaçait pas avant et faisait un append ensuite. Mais finalement ça ne change rien. J'ai surement raté quelque chose ou pas compris la nouvelle façon de fonctionner.... :?

effectivement il manque un bout désoler j'étais fatiguer hier soir en tout 16h de jeedom hier ;)
test avec se code

Code : Tout sélectionner

<div style="width:90px;min-height:62px;" class="cmd #history# tooltips cmd-widget" data-type="info" data-subtype="binary" data-cmd_id="#id#" title="#collectDate#">
    <center>
        <span class='cmdName' style="font-weight: bold;font-size : 12px;">#name#</span><br/>
        <span style="font-size: 3em;font-weight: bold;margin-top: 5px;" id="iconCmd#id#"></span>
    </center>
  <style>
    img.DBimg {
  	width: 80px;
  	height: 80px;
	} 
  </style>
    <script>
      $('.iconCmd#id#').empty();
      jeedom.cmd.update['#id#'] = function(_options){
       
        if (_options.display_value == '1' || _options.display_value == 1) {
            $('#iconCmd#id#').html('<img src="plugins/widget/core/template/dashboard/cmd.info.binary.DB Sécurité mouvement/mvt.png" class="DBimg" />');
        }
        if (_options.display_value == '0' || _options.display_value == 0) {
            $('#iconCmd#id#').html('<img src="plugins/widget/core/template/dashboard/cmd.info.binary.DB Sécurité mouvement/mvt_ras.png" class="DBimg" />');
        }
      }
      
      jeedom.cmd.update['#id#']({display_value:'#state#',valueDate:'#valueDate#',collectDate:'#collectDate#'});
      
    </script>
</div>
Compétence :
- Prog : HTML5, CSS3, JS, JQuery, SQL, PHP

Movitch
Timide
Messages : 30
Inscription : 03 janv. 2016, 10:58

Re: Non mise à jours des valeurs sur la dashboard

Message par Movitch » 02 juil. 2017, 12:31

skyline-ch a écrit :
02 juil. 2017, 12:12
Movitch a écrit :
02 juil. 2017, 11:31
Bonjour,

Suite au passage V3, Skyline m'a suggéré la modif des widget sur un autre post et je l'en remercie.
Par contre il me fait un truc bizarre sur le dashboard, il multiplie les images l'une en dessous de l'autre lors des changements d'états.

Voilà le code du widget



En regardant un peu les autres widgets, j'ai rajouté $('.iconCmd#id#').empty(); pensant justement qu'il ne l'effaçait pas avant et faisait un append ensuite. Mais finalement ça ne change rien. J'ai surement raté quelque chose ou pas compris la nouvelle façon de fonctionner.... :?

effectivement il manque un bout désoler j'étais fatiguer hier soir en tout 16h de jeedom hier ;)
test avec se code

Code : Tout sélectionner

<div style="width:90px;min-height:62px;" class="cmd #history# tooltips cmd-widget" data-type="info" data-subtype="binary" data-cmd_id="#id#" title="#collectDate#">
    <center>
        <span class='cmdName' style="font-weight: bold;font-size : 12px;">#name#</span><br/>
        <span style="font-size: 3em;font-weight: bold;margin-top: 5px;" id="iconCmd#id#"></span>
    </center>
  <style>
    img.DBimg {
  	width: 80px;
  	height: 80px;
	} 
  </style>
    <script>
      $('.iconCmd#id#').empty();
      jeedom.cmd.update['#id#'] = function(_options){
       
        if (_options.display_value == '1' || _options.display_value == 1) {
            $('#iconCmd#id#').html('<img src="plugins/widget/core/template/dashboard/cmd.info.binary.DB Sécurité mouvement/mvt.png" class="DBimg" />');
        }
        if (_options.display_value == '0' || _options.display_value == 0) {
            $('#iconCmd#id#').html('<img src="plugins/widget/core/template/dashboard/cmd.info.binary.DB Sécurité mouvement/mvt_ras.png" class="DBimg" />');
        }
      }
      
      jeedom.cmd.update['#id#']({display_value:'#state#',valueDate:'#valueDate#',collectDate:'#collectDate#'});
      
    </script>
</div>
Merci Skyline. Encore une fois super réactif !
Courage et merci pour tout ce que tu fais ;)

choupfamily63
Timide
Messages : 175
Inscription : 10 sept. 2016, 08:34
Localisation : Clermont-Ferrand

Re: Non mise à jours des valeurs sur la dashboard

Message par choupfamily63 » 02 juil. 2017, 12:39

Bonjour à tous,
je rencontre aussi un problème de non mise à jour d'une valeur, j'ai d'ailleur posté ici viewtopic.php?f=23&t=27474&start=560#p484349 pensant à un autre problème.
Ci-dessous le code du widget, à première vus je ne vois pas de problèmes .. mais je suis novice.

Code : Tout sélectionner

<div class="tooltips cmd cmd-widget" data-type="info" data-subtype="string" data-cmd_id="#id#" data-cmd_uid="#uid#" data-version="#version#" style="display: block;">
	<center><span style="font-size : 12px;#hideCmdName#" class="cmdName">#name_display#</span> <strong class="state"></strong></center>
	<script>
		jeedom.cmd.update['#id#'] = function(_options){
			$('.cmd[data-cmd_id=#id#]').attr('title','Valeur du '+_options.valueDate+', collectée le '+_options.collectDate)
			$('.cmd[data-cmd_id=#id#] .state').empty().append(_options.display_value);
			$('.cmd[data-cmd_id=#id#] .state').removeClass('label label-warning label-danger')
			if(_options.alertLevel == 'warning'){
				$('.cmd[data-cmd_id=#id#] .state').addClass('label label-warning');
			}else if(_options.alertLevel == 'danger'){
				$('.cmd[data-cmd_id=#id#] .state').addClass('label label-danger');
			}
		}
		jeedom.cmd.update['#id#']({display_value:"#state#",valueDate:'#valueDate#',collectDate:'#collectDate#',alertLevel:'#alertLevel#'});
	</script>
</div>
Auriez vous une idée ?

Merci d'avance.

Avatar de l’utilisateur
skyline-ch
Actif
Messages : 1504
Inscription : 30 juil. 2014, 17:06
Localisation : Suisse - VS
Contact :

Re: Non mise à jours des valeurs sur la dashboard

Message par skyline-ch » 02 juil. 2017, 13:16

choupfamily63 a écrit :
02 juil. 2017, 12:39
Bonjour à tous,
je rencontre aussi un problème de non mise à jour d'une valeur, j'ai d'ailleur posté ici viewtopic.php?f=23&t=27474&start=560#p484349 pensant à un autre problème.
Ci-dessous le code du widget, à première vus je ne vois pas de problèmes .. mais je suis novice.

Code : Tout sélectionner

<div class="tooltips cmd cmd-widget" data-type="info" data-subtype="string" data-cmd_id="#id#" data-cmd_uid="#uid#" data-version="#version#" style="display: block;">
	<center><span style="font-size : 12px;#hideCmdName#" class="cmdName">#name_display#</span> <strong class="state"></strong></center>
	<script>
		jeedom.cmd.update['#id#'] = function(_options){
			$('.cmd[data-cmd_id=#id#]').attr('title','Valeur du '+_options.valueDate+', collectée le '+_options.collectDate)
			$('.cmd[data-cmd_id=#id#] .state').empty().append(_options.display_value);
			$('.cmd[data-cmd_id=#id#] .state').removeClass('label label-warning label-danger')
			if(_options.alertLevel == 'warning'){
				$('.cmd[data-cmd_id=#id#] .state').addClass('label label-warning');
			}else if(_options.alertLevel == 'danger'){
				$('.cmd[data-cmd_id=#id#] .state').addClass('label label-danger');
			}
		}
		jeedom.cmd.update['#id#']({display_value:"#state#",valueDate:'#valueDate#',collectDate:'#collectDate#',alertLevel:'#alertLevel#'});
	</script>
</div>
Auriez vous une idée ?

Merci d'avance.
Tu peux tester avec ses modifications :

Code : Tout sélectionner

<div class="tooltips cmd cmd-widget" data-type="info" data-subtype="string" data-cmd_id="#id#" data-cmd_uid="#uid#" data-version="#version#" style="display: block;">
	<center>
      <span style="font-size : 12px;#hideCmdName#" class="cmdName">#name_display#</span> 
      <strong class="state"></strong>
  	</center>
	<script>
		jeedom.cmd.update['#id#'] = function(_options){
          //console.log('Vérification',_options);
			$('.cmd[data-cmd_id=#id#] .state').attr('title','Valeur du '+_options.valueDate+', collectée le '+_options.collectDate)
			$('.cmd[data-cmd_id=#id#] .state').text(_options.display_value);
			$('.cmd[data-cmd_id=#id#] .state').removeClass('label label-warning label-danger')
			if(_options.alertLevel == 'warning'){
				$('.cmd[data-cmd_id=#id#] .state').addClass('label label-warning');
			}else if(_options.alertLevel == 'danger'){
				$('.cmd[data-cmd_id=#id#] .state').addClass('label label-danger');
			}
		}
		jeedom.cmd.update['#id#']({display_value:"#state#",valueDate:'#valueDate#',collectDate:'#collectDate#',alertLevel:'#alertLevel#'});
	</script>
</div>
Pour que jeedom regénère le widget et donc prenne en compte les modification il te faut resauver l'équipement

Si toujours pas ok il faudra investigué plus en profondeur
Compétence :
- Prog : HTML5, CSS3, JS, JQuery, SQL, PHP

choupfamily63
Timide
Messages : 175
Inscription : 10 sept. 2016, 08:34
Localisation : Clermont-Ferrand

Re: Non mise à jours des valeurs sur la dashboard

Message par choupfamily63 » 02 juil. 2017, 17:11

Merci skyline-ch pour ta réponse, j'ai testé mais aucun changement. Du coup j'ai contourne le problème via un scénario et un virtuel.

Avatar de l’utilisateur
Laco
Actif
Messages : 822
Inscription : 06 oct. 2014, 19:25

Re: Non mise à jours des valeurs sur la dashboard

Message par Laco » 02 juil. 2017, 20:31

Salut à tous

J'ai des petits soucis avec les widgets du core au niveau du dashboard depuis la mise à jour de ma Smart en 3.0.9.
Soit le widget n'affiche pas les bonnes icones ("window" par exemple), soit n'affiche pas le slider ("light" par exemple), soit l'icone est collé au texte ("door" par exemple).
Par contre, aucun souci avec les widgets que j'avais déjà faits auparavant, ceux que j'ai faits depuis le passage de la 3.0.9 avec l'assistant, ou ceux construits en version mobile.

J'ai réinstallé le 3.0.9 et également le plugin widget sans résultat.

Vous auriez une idée ?
Merci par avance pour votre aide.

A+ ;)
MERCI A TOUTE L'ÉQUIPE POUR LE TAF

Avatar de l’utilisateur
skyline-ch
Actif
Messages : 1504
Inscription : 30 juil. 2014, 17:06
Localisation : Suisse - VS
Contact :

Re: Non mise à jours des valeurs sur la dashboard

Message par skyline-ch » 02 juil. 2017, 20:44

Laco a écrit :
02 juil. 2017, 20:31
Salut à tous

J'ai des petits soucis avec les widgets du core au niveau du dashboard depuis la mise à jour de ma Smart en 3.0.9.
Soit le widget n'affiche pas les bonnes icones ("window" par exemple), soit n'affiche pas le slider ("light" par exemple), soit l'icone est collé au texte ("door" par exemple).
Par contre, aucun souci avec les widgets que j'avais déjà faits auparavant, ceux que j'ai faits depuis le passage de la 3.0.9 avec l'assistant, ou ceux construits en version mobile.

J'ai réinstallé le 3.0.9 et également le plugin widget sans résultat.

Vous auriez une idée ?
Merci par avance pour votre aide.

A+ ;)
Pour la porte c'est normal je pense que Loïc la voulu sans marge supérieur.
Pour les 2 autres il fonctionnent bien chez moi donc sans plus d'info dificile d'aider
Compétence :
- Prog : HTML5, CSS3, JS, JQuery, SQL, PHP

Avatar de l’utilisateur
Laco
Actif
Messages : 822
Inscription : 06 oct. 2014, 19:25

Re: Non mise à jours des valeurs sur la dashboard

Message par Laco » 02 juil. 2017, 21:01

Salut @skyline-ch

Que faut il te fournir comme info ?
MERCI A TOUTE L'ÉQUIPE POUR LE TAF

Avatar de l’utilisateur
cadavor
Actif
Messages : 1284
Inscription : 21 juin 2015, 22:00
Localisation : 34

Re: Non mise à jours des valeurs sur la dashboard

Message par cadavor » 04 juil. 2017, 13:30

Movitch a écrit :
02 juil. 2017, 11:31

Code : Tout sélectionner

<div style="width:90px;min-height:62px;" class="cmd #history# tooltips cmd-widget" data-type="info" data-subtype="binary" data-cmd_id="#id#" title="#collectDate#">
    <center>
        <span class='cmdName' style="font-weight: bold;font-size : 12px;">#name#</span><br/>
        <span style="font-size: 3em;font-weight: bold;margin-top: 5px;" id="iconCmd#id#"></span>
    </center>
  <style>
    img.DBimg {
  	width: 80px;
  	height: 80px;
	} 
  </style>
    <script>
      $('.iconCmd#id#').empty();
      jeedom.cmd.update['#id#'] = function(_options){
       
        if (_options.display_value == '1' || _options.display_value == 1) {
            $('#iconCmd#id#').append('<img src="plugins/widget/core/template/dashboard/cmd.info.binary.DB Sécurité mouvement/mvt.png" class="DBimg" />');
        }
        if (_options.display_value == '0' || _options.display_value == 0) {
            $('#iconCmd#id#').append('<img src="plugins/widget/core/template/dashboard/cmd.info.binary.DB Sécurité mouvement/mvt_ras.png" class="DBimg" />');
        }
      }
      
      jeedom.cmd.update['#id#']({display_value:'#state#',valueDate:'#valueDate#',collectDate:'#collectDate#'});
      
    </script>
</div>
En regardant un peu les autres widgets, j'ai rajouté $('.iconCmd#id#').empty(); pensant justement qu'il ne l'effaçait pas avant et faisait un append ensuite. Mais finalement ça ne change rien. J'ai surement raté quelque chose ou pas compris la nouvelle façon de fonctionner.... :?
Ta solution aurait fonctionné si tu avais mis le empty() dans la fonction update.
Voir ci-dessous :

Code : Tout sélectionner

    <script>
      jeedom.cmd.update['#id#'] = function(_options){
        $('.iconCmd#id#').empty();
        if (_options.display_value == '1' || _options.display_value == 1) {
            $('#iconCmd#id#').append('<img src="plugins/widget/core/template/dashboard/cmd.info.binary.DB Sécurité mouvement/mvt.png" class="DBimg" />');
        }
        if (_options.display_value == '0' || _options.display_value == 0) {
            $('#iconCmd#id#').append('<img src="plugins/widget/core/template/dashboard/cmd.info.binary.DB Sécurité mouvement/mvt_ras.png" class="DBimg" />');
        }
      }
      
      jeedom.cmd.update['#id#']({display_value:'#state#',valueDate:'#valueDate#',collectDate:'#collectDate#'});
      
    </script>
</div>
Sinon la solution de skyline est meilleure (à condition d'enlever le empty() rajouté par tes soins qui ne sert à rien de toute façon...)
Jeedom Stable 3.3
NUC Z83 + Aeotec Z-Stick Gen5
Z-Wave FGR + FGMS + FGDS + FGFS + FGK + FGWPE + ZW062 + ZW080
GH Mini + Orvibo AllOne + Playbulb + Miband2

Movitch
Timide
Messages : 30
Inscription : 03 janv. 2016, 10:58

Re: Non mise à jours des valeurs sur la dashboard

Message par Movitch » 04 juil. 2017, 13:50

cadavor a écrit :
Movitch a écrit :
02 juil. 2017, 11:31

Code : Tout sélectionner

<div style="width:90px;min-height:62px;" class="cmd #history# tooltips cmd-widget" data-type="info" data-subtype="binary" data-cmd_id="#id#" title="#collectDate#">
    <center>
        <span class='cmdName' style="font-weight: bold;font-size : 12px;">#name#</span><br/>
        <span style="font-size: 3em;font-weight: bold;margin-top: 5px;" id="iconCmd#id#"></span>
    </center>
  <style>
    img.DBimg {
  	width: 80px;
  	height: 80px;
	} 
  </style>
    <script>
      $('.iconCmd#id#').empty();
      jeedom.cmd.update['#id#'] = function(_options){
       
        if (_options.display_value == '1' || _options.display_value == 1) {
            $('#iconCmd#id#').append('<img src="plugins/widget/core/template/dashboard/cmd.info.binary.DB Sécurité mouvement/mvt.png" class="DBimg" />');
        }
        if (_options.display_value == '0' || _options.display_value == 0) {
            $('#iconCmd#id#').append('<img src="plugins/widget/core/template/dashboard/cmd.info.binary.DB Sécurité mouvement/mvt_ras.png" class="DBimg" />');
        }
      }
      
      jeedom.cmd.update['#id#']({display_value:'#state#',valueDate:'#valueDate#',collectDate:'#collectDate#'});
      
    </script>
</div>
En regardant un peu les autres widgets, j'ai rajouté $('.iconCmd#id#').empty(); pensant justement qu'il ne l'effaçait pas avant et faisait un append ensuite. Mais finalement ça ne change rien. J'ai surement raté quelque chose ou pas compris la nouvelle façon de fonctionner.... :?
Ta solution aurait fonctionné si tu avais mis le empty() dans la fonction update.
Voir ci-dessous :

Code : Tout sélectionner

    <script>
      jeedom.cmd.update['#id#'] = function(_options){
        $('.iconCmd#id#').empty();
        if (_options.display_value == '1' || _options.display_value == 1) {
            $('#iconCmd#id#').append('<img src="plugins/widget/core/template/dashboard/cmd.info.binary.DB Sécurité mouvement/mvt.png" class="DBimg" />');
        }
        if (_options.display_value == '0' || _options.display_value == 0) {
            $('#iconCmd#id#').append('<img src="plugins/widget/core/template/dashboard/cmd.info.binary.DB Sécurité mouvement/mvt_ras.png" class="DBimg" />');
        }
      }
      
      jeedom.cmd.update['#id#']({display_value:'#state#',valueDate:'#valueDate#',collectDate:'#collectDate#'});
      
    </script>
</div>
Sinon la solution de skyline est meilleure (à condition d'enlever le empty() rajouté par tes soins qui ne sert à rien de toute façon...)
Merci ! Effectivement j'ai un peu mieux pigé le fonctionnement maintenant


Envoyé de mon iPhone en utilisant Tapatalk

yoguiti
Timide
Messages : 69
Inscription : 30 sept. 2015, 10:09

Re: Non mise à jours des valeurs sur la dashboard

Message par yoguiti » 05 juil. 2017, 19:06

Bonjour,

J'ai en effet un probleme avec le widget officiel par defaut de la commande info texte (autre) sur le dashboard uniquement. Au dela d'une certaine longueur de texte ... le widget n'affiche plus rien.

Rien de vaut un example:

Je cree un virtuel commande info de type autre, avec pour valeur (sans les guillemets) "fdsfsfdsfdsfs".
Tout roule il est affiche correctement. Le code html dans la partie "script" du widget (accessible vie la fonction "inspecter element de google chrome sur le dashboard) est le suivant:

"
jeedom.cmd.update['1860'] = function(_options){
$('.cmd[data-cmd_id=1860]').attr('title','Valeur du '+_options.valueDate+', collectée le '+_options.collectDate)
$('.cmd[data-cmd_id=1860] .state').empty().append(_options.display_value);
$('.cmd[data-cmd_id=1860] .state').removeClass('label label-warning label-danger')
if(_options.alertLevel == 'warning'){
$('.cmd[data-cmd_id=1860] .state').addClass('label label-warning');
}else if(_options.alertLevel == 'danger'){
$('.cmd[data-cmd_id=1860] .state').addClass('label label-danger');
}
}
jeedom.cmd.update['1860']({display_value:"fdsfsfdsfdsfs",valueDate:'2017-07-05 17:56:48',collectDate:'2017-07-05 17:56:48',alertLevel:'none'});
"

C'est donc bien le widget V3. L'affichage est correct sur le dashboard.

Maintenant je change la valeur par la valeur suivante (avec des sauts de ligne, oui oui):
"fdsfsfdsfdsfs
fdsfds
gbfhg
fd
gfd
bvc
b
vcb
vcb
vcbvcbvcbcvbc"

Le code du widget devient:

"
jeedom.cmd.update['1860'] = function(_options){
$('.cmd[data-cmd_id=1860]').attr('title','Valeur du '+_options.valueDate+', collectée le '+_options.collectDate)
$('.cmd[data-cmd_id=1860] .state').empty().append(_options.display_value);
$('.cmd[data-cmd_id=1860] .state').removeClass('label label-warning label-danger')
if(_options.alertLevel == 'warning'){
$('.cmd[data-cmd_id=1860] .state').addClass('label label-warning');
}else if(_options.alertLevel == 'danger'){
$('.cmd[data-cmd_id=1860] .state').addClass('label label-danger');
}
}
jeedom.cmd.update['1860']({display_value:"fdsfsfdsfdsfs
fdsfds
gbfhg
fd
gfd
bvc
b
vcb
vcb
vcbvcbvcbcvbc",valueDate:'2017-07-05 17:56:48',collectDate:'2017-07-05 17:56:48',alertLevel:'none'});

"


Et .... il n'y a plus rien d'affiche sur la dashboard. Comme si la valeur etait vide.

A noter que sur le telephone (mobile), cela marche parfaitement.
Probablement un petit bug a rectifier.

Merci d'avance pour le support!

Répondre

Revenir vers « [Catégorie] Programmation »

Qui est en ligne ?

Utilisateurs parcourant ce forum : Aucun utilisateur inscrit et 1 invité