Modifier les paramètres optionnels d'un widget dans un scénario

Salut,

Une petite modif du code du widget peut te permettre d’arriver à tes fins sans scénario:

L’idée est d’ajouter des lignes de code de ce style dans la fonction jeedom.cmd.update (donc entre jeedom.cmd.update['#id#'] = function(_options){ et } jeedom.cmd.update['#id#']({display_value:'#state#',valueDate:'#valueDate#',collectDate:'#collectDate#',alertLevel:'#alertLevel#'});)

if (val > 1000 && val <= 1015) {
	document.getElementById("IMGgauge#id#").src="plugins/widget/core/template/dashboard/cmd.info.numeric.gaugeIMG_V3/fondrouge.png";
	}
    else if (val > 1015 && val <= 1030) {
    document.getElementById("IMGgauge#id#").src="plugins/widget/core/template/dashboard/cmd.info.numeric.gaugeIMG_V3/fondverte.png";
	}
..........................

Il faut aussi du coup commenter ou supprimer la variable de sélection d la couleur de la jauge donc les 2 lignes:
`var colJauge = (’#jauge#’ !=’#’+‹ jauge# ›) ? « #jauge# »:« bleue »;’ et ‹ document.getElementById(« IMGgauge#id# »).src=« plugins/widget/core/template/dashboard/cmd.info.numeric.gaugeIMG_V3/fond »+colJauge+".png"; ›

Un exemple avec un bout de code modifié:

<div class="cmd #history# tooltips cmd-widget gaugeIMG#id# #displayHistory#" data-type="info" data-subtype="numeric" data-cmd_id="#id#" data-cmd_uid="#uid#" data-version="#version#">
  <center><span style="font-weight: bold;font-size:12px;#hideCmdName#">#name_display#</span>
		<div class="gaugeIMGdisplay#id#">
			<img id="IMGgauge#id#" class="IMGgauge#id#" alt="Fond" >
          	<span class="minvalue_gauge#id#" id="minvalue#id#"></span>
          	<span class="midvalue_gauge#id#" id="midvalue#id#"></span>
          	<span class="quartvalue_gauge#id#" id="quartvalue#id#"></span>
          	<span class="troisquartvalue_gauge#id#" id="troisquartvalue#id#"></span>
    		<span class="maxvalue_gauge#id#" id="maxvalue#id#"></span>
          	<span class="state_gauge#id#"></span> 
          	<span class="unite_gauge#id#">#unite#</span>
          <div style="#displayHistory# font-size: 0.8em;position:absolute;width:100%;" class="historyDisplay#id#">
		<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>
		</div>
		</div>
		<div id="gauge#id#" class=" indicator"></div></center>
<script> 
  var valMin#id# = is_numeric('#mini#') ? parseFloat('#mini#'):#minValue#;
  var valMax#id# = is_numeric('#maxi#') ? parseFloat('#maxi#'):#maxValue#;
  
    var midvalue = Math.round((valMax#id# + valMin#id#)*50)/100;
    var quartvalue = Math.round((valMin#id# + midvalue)*50)/100;
    var troisquartvalue = Math.round((midvalue + valMax#id#)*50)/100;
    $('#minvalue#id#').text(valMin#id#);
    $('#midvalue#id#').text(midvalue);
    $('#quartvalue#id#').text(quartvalue);
    $('#troisquartvalue#id#').text(troisquartvalue);
    $('#maxvalue#id#').text(valMax#id#);
  
    jeedom.cmd.update['#id#'] = function(_options){     
    var val = _options.display_value;
    var plage = valMax#id# - valMin#id#;
    var angle = '';
    if (plage == 0) angle = -70;
    else if (valMin#id# < valMax#id#)  {
      if (val < valMin#id#) angle = -10;
      else if (val > valMax#id#) angle = 232;
      else angle = (val - valMin#id#) * 222 / plage;
    } else {
      if (val < valMax#id#) angle = 232;
      else if (val > valMin#id#) angle = -10;
      else angle = (val - valMin#id#) * 222 / plage;
    }
    if (val > 1000 && val <= 1015) {
	document.getElementById("IMGgauge#id#").src="plugins/widget/core/template/dashboard/cmd.info.numeric.gaugeIMG_V3/fondrouge.png";
	}
    else if (val > 1015 && val <= 1030) {
    document.getElementById("IMGgauge#id#").src="plugins/widget/core/template/dashboard/cmd.info.numeric.gaugeIMG_V3/fondverte.png";
	}
    $('#gauge#id#.indicator').css( {'-webkit-transform':'rotate('+angle+'deg)','-moz-transform':'rotate('+angle+'deg)','-ms-transform':'rotate('+angle+'deg)','-o-transform':'rotate('+angle+'deg)','transform':'rotate('+angle+'deg)'});
    $('.cmd[data-cmd_id=#id#] .state_gauge#id#').text(_options.display_value);
    $('.cmd[data-cmd_uid=#uid#]').attr('title','Valeur du '+_options.valueDate+', collectée le '+_options.collectDate)
    }
    jeedom.cmd.update['#id#']({display_value:'#state#',valueDate:'#valueDate#',collectDate:'#collectDate#',alertLevel:'#alertLevel#'});
  
 // 	var colJauge = ('#jauge#' !='#'+'jauge#') ? "#jauge#":"bleue";
  	var colAiguille = ('#aiguille#' !='#'+'aiguille#') ? "#aiguille#":"bleue";
  
 // 	document.getElementById("IMGgauge#id#").src="plugins/widget/core/template/dashboard/cmd.info.numeric.gaugeIMG_V3/fond"+colJauge+".png";
  	document.getElementById('gauge#id#').style.backgroundImage="url(./plugins/widget/core/template/dashboard/cmd.info.numeric.gaugeIMG_V3/center"+colAiguille+".png)";
  
	if ('#petit#' == 1) {
    	$('div.gaugeIMG#id#').css('width','90px');
      	$('div.gaugeIMG#id#').css('height','110px');
      	$('div.gaugeIMGdisplay#id#').css('left','2px');
      	$('span.state_gauge#id#').css('font-size','17px');
      	$('span.state_gauge#id#').css('top','48px');
      	$('span.state_gauge#id#').css('right','21px');
      	$('span.unite_gauge#id#').css('font-size','6px');
      	$('span.unite_gauge#id#').css('top','46px');
      	$('span.minvalue_gauge#id#').css('font-size','0.3em');
      	$('span.minvalue_gauge#id#').css('top','46px');
      	$('span.minvalue_gauge#id#').css('left','15px');      
      	$('span.maxvalue_gauge#id#').css('font-size','0.3em');
      	$('span.maxvalue_gauge#id#').css('top','46px');
      	$('span.maxvalue_gauge#id#').css('right','15px');      
      	$('span.midvalue_gauge#id#').css('font-size','0.3em');
      	$('span.midvalue_gauge#id#').css('top','12px');
      	$('span.quartvalue_gauge#id#').css('font-size','0.3em');
      	$('span.quartvalue_gauge#id#').css('top','25px');
      	$('span.quartvalue_gauge#id#').css('left','17px');      
      	$('span.troisquartvalue_gauge#id#').css('font-size','0.3em');
      	$('span.troisquartvalue_gauge#id#').css('top','25px');
      	$('span.troisquartvalue_gauge#id#').css('right','17px');      
      	$('#gauge#id#').css('width','48px');
      	$('#gauge#id#').css('height','48px');
      	$('#gauge#id#').css('left','18px');
      	$('#gauge#id#').css('top','35px');
      	$('img.IMGgauge#id#').css('width','80px');
      	$('img.IMGgauge#id#').css('height','80px');
      	$('.historyDisplay#id#').css('font-size','0.55em');
    }
</script>
<style>
@font-face {
    font-family: "Digital7";
  	src:	url("plugins/widget/core/template/dashboard/cmd.info.numeric.gaugeIMG_V3/font/digital7.ttf") format("truetype");
  	font-weight:normal;
  	font-style:normal;
}
span.state_gauge#id# {
    font-family:"Digital7"; 
    font-size:26px;
  	position:absolute;
  	top:71px;
  	right:31px;
  }
span.unite_gauge#id# {
    font-size:11px;
    width:100%;
  	top:65px;
    position:absolute;
    display:block;
  }
span.minvalue_gauge#id# {
    font-size:0.5em;
  	font-weight:bold;
  	position:absolute;
  	top:65px;
  	left:22px;
  }
span.maxvalue_gauge#id# {
    font-size:0.5em;
  	font-weight:bold;
  	position:absolute;
  	top:65px;
  	right:22px;
  }  
span.midvalue_gauge#id# {
  	display:block;
 	width:100%;
    font-size:0.5em;
  	font-weight:bold;
  	position:absolute;
  	top:18px;
  }
span.quartvalue_gauge#id# {
    font-size:0.5em;
  	font-weight:bold;
  	position:absolute;
  	top:35px;
  	left:26px;
  }
span.troisquartvalue_gauge#id# {
    font-size:0.5em;
  	font-weight:bold;
  	position:absolute;
  	top:35px;
  	right:26px;
  }
img.IMGgauge#id# {
	width:120px;
  	height:120px;
} 
div.gaugeIMG#id# {
  	width:140px;
  	height:160px;
}
div.gaugeIMGdisplay#id# {
  	color:#F0F0F0;
  	float:center; 
  	position:absolute;
  	left:10px;
  	top:20px;
}
#gauge#id# {
    position:absolute;
    width:75px;
    height:75px;
  	background:center;
  	left:32px;
    top:42px;
  	transition:transform .8s;
    -webkit-transform:rotate(0deg);
}
</style>
</div>

Bien sûr c’est à adapter, J’espère que ça va t’aider à parvenir à faire ce que tu cherches… Sinon dis le moi je ferai en sorte de développer ma réponse.