Guest User

Untitled

a guest
Nov 28th, 2018
161
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. <style>
  2. :root{
  3. --HygroThermographeSize:0.5
  4. }
  5. @font-face {
  6. font-family: "Digital-7";
  7. src: url("plugins/widget/core/template/dashboard/cmd.info.numeric.HygroThermographe_TaG/font/digital-7.eot?") format("eot"),
  8. url("plugins/widget/core/template/dashboard/cmd.info.numeric.HygroThermographe_TaG/font/digital-7.woff") format("woff"),
  9. url("plugins/widget/core/template/dashboard/cmd.info.numeric.HygroThermographe_TaG/font/digital-7.ttf") format("truetype"),
  10. url("plugins/widget/core/template/dashboard/cmd.info.numeric.HygroThermographe_TaG/font/digital-7.svg#Digital-7") format("svg");
  11. font-weight:normal;
  12. font-style:normal;
  13. }
  14. .lcd_text {
  15. font-family: "Digital-7";
  16. position: absolute;
  17. color: #181818;
  18. }
  19. .widget#id#
  20. {
  21. /* pour centrer , pas joli mais ca marche*/
  22. width: 220px;
  23. width: calc(220px*var(--HygroThermographeSize));
  24. line-height:1.42857;
  25. }
  26. .conso_position#id#
  27. {
  28. box-sizing: border-box;
  29. width: 500px; /* taille de l'image sans scale */
  30. transform-origin: 0 0;
  31. -webkit-transform-origin: 0 0;
  32. -moz-transform-origin: 0 0;
  33. -ms-transform-origin: 0 0;
  34. -o-transform-origin: 0 0;
  35. /* 0.435 pour faire 220px */
  36. transform:scale(0.435);
  37. -webkit-transform:scale(0.435); /* Safari and Chrome */
  38. -moz-transform:scale(0.435); /* Firefox */
  39. -ms-transform:scale(0.435); /* IE 9+ */
  40. -o-transform:scale(0.435); /* Opera */
  41. transform:scale(calc(0.435*var(--HygroThermographeSize))) ;
  42. -webkit-transform:scale(calc(0.435*var(--HygroThermographeSize))) ; /* Safari and Chrome */
  43. -moz-transform:scale(calc(0.435*var(--HygroThermographeSize))); /* Firefox */
  44. -ms-transform:scale(calc(0.435*var(--HygroThermographeSize))); /* IE 9+ */
  45. -o-transform:scale(calc(0.435*var(--HygroThermographeSize))); /* Opera */
  46. }
  47. span.stateint_temp#id# {
  48. font-size: 185px;
  49. letter-spacing: 6px;
  50. top: 65px;
  51. right: 180px;
  52. }
  53. span.statedec_temp#id# {
  54. font-size:114px;
  55. top: 138px;
  56. left: 322px;
  57. text-align:left;
  58. }
  59. span.unite_temp#id# {
  60. font-size: 57px;
  61. font-weight: bold;
  62. top: 111px;
  63. left: 322px;
  64. text-align:left;
  65. }
  66. div.conso#id# {
  67. width:140px;
  68. min-height : 140px;
  69. }
  70. span.humidityint_unite#id# {
  71. font-size: 142px;
  72. letter-spacing: 6px;
  73. bottom: 63px;
  74. right: 180px;
  75. }
  76. span.humiditydec_unite#id# {
  77. font-size: 71px;
  78. bottom: 90px;
  79. left: 322px;
  80. text-align:left;
  81. }
  82. span.humidityunite#id# {
  83. font-size: 57px;
  84. bottom: 156px;
  85. left: 322px;
  86. text-align:left;
  87. }
  88. .ui-mobile-viewport span.humidityint_unite#id#, .ui-mobile-viewport span.stateint_temp#id#{
  89. letter-spacing: -6px;
  90. }
  91. .ui-mobile-viewport .widget#id#
  92. {
  93. width: 220px;
  94. height: 220px;
  95. }
  96. .ui-mobile-viewport .conso_position#id#
  97. {
  98. width: fit-content;
  99. transform-origin: 0 0;
  100. -webkit-transform-origin: 0 0;
  101. -moz-transform-origin: 0 0;
  102. -ms-transform-origin: 0 0;
  103. -o-transform-origin: 0 0;
  104. /* 0.42 pour faire 220px avec 5px de padding*/
  105. transform:scale(0.42);
  106. -webkit-transform:scale(0.42); /* Safari and Chrome */
  107. -moz-transform:scale(0.42); /* Firefox */
  108. -ms-transform:scale(0.42); /* IE 9+ */
  109. -o-transform:scale(0.42); /* Opera */
  110. }
  111. </style>
  112. <div class="cmd #history# tooltips cmd-widget widget#id#" data-type="info" data-subtype="numeric" data-cmd_id="#id#" title="#collectDate#">
  113. <div style="font-weight: bold;font-size : 12px; #hideCmdName#">#name#</div>
  114. <div class="conso_position#id#">
  115. <img class="IMGihtid#id#" id="imgID#id#" src="plugins/widget/core/template/dashboard/cmd.info.numeric.HygroThermographe_TaG/No.ext_100.png">
  116. <span class="lcd_text stateint_temp#id#" id="intNumTemp#id#"></span>
  117. <span class="lcd_text statedec_temp#id#" id="decNumTemp#id#"></span>
  118. <span class="lcd_text unite_temp#id#" id="unite#id#">#unite#</span>
  119. <span class="lcd_text humidityint_unite#id#" id="intNumHumidity#id#"></span>
  120. <span class="lcd_text humiditydec_unite#id#" id="decNumHumidity#id#"></span>
  121. <span class="lcd_text humidityunite#id#" id="humidityunite#id#">%</span>
  122. </div>
  123. <script>
  124.  
  125. //Vire les accents et passe la chaine en majuscule pour retourver le nom
  126. String.prototype.NormaliseName = function(){
  127. var accent = [
  128. /[\300-\306]/g, /[\340-\346]/g, // A, a
  129. /[\310-\313]/g, /[\350-\353]/g, // E, e
  130. /[\314-\317]/g, /[\354-\357]/g, // I, i
  131. /[\322-\330]/g, /[\362-\370]/g, // O, o
  132. /[\331-\334]/g, /[\371-\374]/g, // U, u
  133. /[\321]/g, /[\361]/g, // N, n
  134. /[\307]/g, /[\347]/g, // C, c
  135. ];
  136. var noaccent = ['A','a','E','e','I','i','O','o','U','u','N','n','C','c'];
  137.  
  138. var str = this;
  139. for(var i = 0; i < accent.length; i++){
  140. str = str.replace(accent[i], noaccent[i]);
  141. }
  142.  
  143. return str.toUpperCase();
  144. }
  145.  
  146. jeedom.cmd.update['#id#'] = function(_options){
  147. debug == 1 && console.log("début fonction jeedom update");
  148. // Déclaration des variables
  149. debug == 1 && console.log(jeedom.cmd.normalizeName('#name#'));
  150. var intNum = Math.floor(_options.display_value);
  151. var decNum = Math.round((_options.display_value - intNum) * 10);
  152. var debug = 1*'debug';
  153. var online = 1;
  154. var batterie =100;
  155. debug == 1 && console.log("modification valeur Température");
  156. // on déclare directement la valeur de température, #state# contient la témpérature. Pour rappel on a associé le widget à la commande Température
  157. $('#intNumTemp#id#').text(intNum+".");
  158. $('#decNumTemp#id#').text(decNum);
  159.  
  160. debug == 1 && console.log("température");
  161. debug == 1 && console.log(intNum+"."+decNum);
  162.  
  163. //Récupération des commandes de l'équipement
  164. jeedom.cmd.byId({
  165. id: #id#,
  166. success: function(equipement) {
  167. jeedom.eqLogic.getCmd({
  168. id:equipement.eqLogic_id,
  169. success: function(commande){
  170. commande.forEach(ExecuteCommands);
  171. }
  172. });
  173. }
  174. });
  175. //On met à jour le widget en fonction des commandes que l'on trouve sur l'équipement
  176. function ExecuteCommands(item, index) {
  177. //Nomalisation du nom de la commande
  178. var commandName = item.name.NormaliseName()
  179. debug == 1 && console.log("nom de commande normalisé : "+commandName);
  180. if (item.generic_type=="HUMIDITY" || commandName == "HUMIDITE" || commandName == "HUMIDITY")
  181. {
  182. debug == 1 && console.log("maj humidité");
  183. jeedom.cmd.execute({ // Récupération de la valeur de la commande humidité
  184. id: item.id,
  185. success: function(valeur) {
  186. var humidityintNum = Math.floor(valeur);
  187. var humiditydecNum = Math.round((valeur - humidityintNum) * 10);
  188. $('#intNumHumidity#id#').text(humidityintNum+".");
  189. $('#decNumHumidity#id#').text(humiditydecNum);
  190. debug == 1 && console.log("humidité");
  191. debug == 1 && console.log(humidityintNum+"."+humiditydecNum);
  192. }
  193. });
  194. }
  195. if(commandName == "BATTERIE" || commandName == "BATTERY" || commandName == "BATTERIES")
  196. {
  197. debug == 1 && console.log("maj battery");
  198. jeedom.cmd.execute({ // Récupération de la valeur de la commande batterie
  199. id: item.id,
  200. success: function(valeur){
  201. batterie = valeur;
  202. debug == 1 && console.log("récup batterie : "+batterie);
  203. debug == 1 && console.log("online : "+online);
  204. ext_online=(online == 1 ?'':'_nobt');
  205. root_dir='plugins/widget/core/template/dashboard/cmd.info.numeric.HygroThermographe_TaG/';
  206. var numero_image = '100';
  207. if (batterie >= 60 && batterie < 80){
  208. numero_image = '80';
  209. }else if (batterie >= 40 && batterie < 60){
  210. numero_image = '60';
  211. }else if (batterie >= 20 && batterie < 40){
  212. numero_image = '40';
  213. }else if (batterie >= 5 && batterie < 20){
  214. numero_image = '20';
  215. }else if (batterie < 5){
  216. numero_image = '0';
  217. }
  218. var image = root_dir+'No.ext_'+numero_image+ext_online+'.png';
  219. var obj = $('.cmd[data-cmd_id=#id#] .IMGihtid#id#')
  220. obj.attr('src',image);
  221. }
  222. });
  223. }
  224. if(commandName == "PRESENCE" || commandName == "ONLINE")
  225. {
  226. debug == 1 && console.log("MAJ présence");
  227. jeedom.cmd.execute({ // Récupération de la valeur de la commande present (binaire)
  228. id: present#id#,
  229. success: function(valeur){
  230. online = valeur;
  231. }
  232. });
  233. }
  234. }
  235.  
  236.  
  237.  
  238.  
  239.  
  240. $('.cmd[data-cmd_id=#id#]').attr('title','Valeur du '+_options.valueDate+', collectée le '+_options.collectDate);
  241. $('.cmd[data-cmd_id=#id#] .state').empty().append(_options.display_value);
  242. debug == 1 && console.log("fin fonction jeedom update");
  243. }
  244. jeedom.cmd.update['#id#']({display_value:'#state#',valueDate:'#valueDate#',collectDate:'#collectDate#'});
  245. </script>
  246. </div>
RAW Paste Data