ldleman / yana-server

Interface PHP de domotique Y.A.N.A (You Are Not Alone)
http://projet.idleman.fr/yana
107 stars 59 forks source link

Erreur date exécution scenario #268

Open moebius911 opened 7 years ago

moebius911 commented 7 years ago

Bonjour J’ai remarqué que l’heure d’exécution de tous mes scénarios est décalée de 2h. Quand il est 8h ici, l’exécution m’affiche qu’il est 6h. Je ne sais pas si je suis le seul à avoir le problème mais voici la solution : Dans le fichier action.php il faut ajouter ceci dans le case ‘ crontab ’ ligne 223 setlocale( LC_ALL , "fr_FR" ); date_default_timezone_set( "Europe/Paris" );

Lors d’une exécution manuelle du scenario il me prend également la date décalé de 2h. Pour corriger le probleme : Dans le fichier story.plugin.php il faut ajouter ceci dans le case 'plugin_story_launch_story' ligne 215 setlocale( LC_ALL , "fr_FR" ); date_default_timezone_set( "Europe/Paris" );

C’est quand même bizare que je sois obligé de faire ces modifications. J'utilise apache2. Est-ce que quelqu’un à une idée du problème ?

Merci d’avance Bonne journée

ldleman commented 7 years ago

Vraiment étrange, normalement tu as juste besoin de définir la timezone via date_default_timezone_set( "Europe/Paris" ); et ceci est déjà fait dans common.php qui est appelé par action comme par story...

Le problème ne semble pas survenir chez moi et tu est la première personne qui me signale un tel décalage...

ldleman commented 7 years ago

J'ai ajouté le setlocal a common au cas ou, dis moi si ça fonctionne mieux sans tes ajouts.

ldleman commented 7 years ago

@moebius911 tu as pu tester ?

moebius911 commented 7 years ago

malheureusement problème identique :(

moebius911 commented 7 years ago

pour info, j'ai le problème identique avec le plugin "événements", et également avec l'interface vocal yana. Quand je lui demande l'heure elle me la donne avec 2h de décalage :( leurs points communs c'est le fichier action.php ?

SebNania commented 7 years ago

salut, alors c'est surement con mais ton système est a l'heure, si tu tape "date" ta bien la bonne date et heure qui s'affiche?

moebius911 commented 7 years ago

oui, malheureusement ça à l’air plus compliqué. je pensais à un problème de paramétrage dans apache mais lorsque que je crée le fichier php suivant : <?php echo date('H:i'); ?> l'heure s'affiche correctement

ldleman commented 7 years ago

Et si tu créé un fichier php tout con avec

<?php 
echo date('d/m/Y H:i').'<br>';
date_default_timezone_set( "Europe/Paris" );
echo date('d/m/Y H:i');
?>

et que tu l'execute ça donne quoi ?

ldleman commented 7 years ago

@moebius911 des nouvelles ?

moebius911 commented 7 years ago

Ça m’affiche ca : 15/12/2016 21:07 15/12/2016 21:07

Ce qui correspond bien à l’heure et la date d’exécution.

Pour résoudre mon problème j’ai fini par ajouter les lignes ci-dessous à la ligne 8 du fichier action.php. setlocale( LC_ALL , "fr_FR" ); date_default_timezone_set( "Europe/Paris" );

depuis plus aucun problème.

ldleman commented 7 years ago

Ok, normalement le common (qui est appellée dans le action) contient ça. Tu peux essayer en faisant une maj de yana et en supprimant tes clauses dans le action voir si ça fonctionne ?

moebius911 commented 7 years ago

malheureusement problème identique ... :( au final ça ne serrai pas plus simple d'ajouter ceci dans le fichier action.php ? setlocale( LC_ALL , "fr_FR" ); date_default_timezone_set('Europe/Paris');