Debian 12 + Jeedom 4.5 - PHP Fatal error: Uncaught TypeError Unsupported operand types: string / int

Bonjour,

J’ai réinstallé from scratch mon serveur pour passer de debian 11 à debian 12 avec jeedom 4.5 avant-hier soir (+restauration backup 4.5).

Depuis j’ai des erreurs dans http.error constaté au démarrage de jeedom:

0008|[Thu Dec 11 09:49:26.277975 2025] [php:error] [pid 721:tid 721] [client xxx.xxx.xxx.xxx:0] PHP Fatal error:  Uncaught TypeError: Unsupported operand types: string / int in /var/www/html/plugins/heliotrope/core/class/heliotrope.class.php:550\nStack trace:\n#0 /var/www/html/core/ajax/object.ajax.php(163): heliotrope->toHtml()\n#1 /var/www/html/core/ajax/object.ajax.php(209): jeeAjax_objectToHtml()\n#2 {main}\n  thrown in /var/www/html/plugins/heliotrope/core/class/heliotrope.class.php on line 550

Cela correspond au code suivant :

548 if($display['daylen'] == "none") $replace['#daylenTxt#'] = '';
549    else {
550      $h = floor($value['daylen'] / 60); $mn = $value['daylen'] % 60;
551      $daylen = (($h)? "${h}h " : '') .(($mn)? "${mn}min " : '');

En attendant un fix, j’ai corrigé de la façon suivant en remplaçant la ligne 550 par ces 2 lignes :

$daylenValue = (int) ($value['daylen'] ?? 0);
$h = floor($daylenValue / 60); $mn = $daylenValue % 60;

Informations Jeedom

Core : 4.5 (master)
DNS Jeedom : non

Plugin : Héliotrope
Version : 2024-08-05 01:22:02 (stable)

Corrigé depuis longtemps en beta, il me semble:

Merci pour l’info, je viens passer sur le canal beta en espérant que cela va passer en stable prochainement vu que ça date de 09/2024.

Je confirme qu’il n’y a plus de message d’erreur avec cette version beta. @lunarok, à l’occasion, tu pourras passer le plugin en beta en stable.

Du coup je profite de ce poste pour demander à la communauté :
Comment faites-vous pour savoir si une beta existe et est plus récente que la stable ?
Et quand la beta passe en stable c’est pareil.

En prod je privilégie les stables (sauf en ce moment ou c’est un peu particulier avec la sortie de la 4.5, je fais plus de tests en prod pour partager avec la communauté).

1 « J'aime »

Bonjour,

Si ce n’est pas présent dans le changelog alors il faut aller voir le github.

1 « J'aime »

Merci pour le retour, c’est ce que j’ai fais ce matin mais je me suis dis c’est pas très user friendly, il y a peu être une fonctionnalité que j’ai raté (pas grave)

Bonne journée à tous.

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