Widget perso Info du jour

Quel jours ? tu peut poster le log ?

image
image

Si tu parles des phases de lune tu modifies le code directement dans ton scénario sur le bloc code


Suffit de mettre // devant $names ou c’est UK et enlever // devant $names ou c’est fr

Non c’est bien les dates, seul $date_pleine_lune passe par le replace pour le En->Fr

Je modifie le code…

Mis à jours a l’instant, tu peut tester ? merci.

Merci . C’est OK

Par contre la version est indiqué au 08/03/2023
image

:man_facepalming:

Je re-modifie :rofl:, modifie en manuel a la date d’aujourd’hui si tu veut éviter de remettre a jour.

Merci pour le test.

Bon ben je sais pas ce qu’il se passe, le template ne s’applique pas chez moi…

J’ai tout refait 5 fois et toujours pareil ??
Je deviens dingue lol

Re-telecharge le json, il y a peu être eu un soucis dans le téléchargement.

Je viens de faire un copier coller du code avec le bloc note et sauvegarder c’est OK !

Maintenant je vais tacher de comprendre pourquoi en téléchargement le fichier est foireux chez moi alors que je suis sans anti pub et autre…

Merci de m’avoir mis sur la voie…

J’ai fait une coquille dans le code

// create an instance of the class, and use the current time
setlocale(LC_TIME, 'fr','fr_FR','fr_FR@euro','fr_FR.utf8','fr-FR','fra');
$moon = new MoonPhase();
$quelle_phase = $moon->phase_name();
$next_full = strftime( '%A %d/%m/%Y', $moon->full_moon() );
$next_full2 = strftime( '%A %d/%m/%Y', $moon->next_full_moon() );
$next_new = strftime( '%A %d/%m/%Y', $moon->next_new_moon() );
$age = round( $moon->age(), 1 );
$stage = $moon->phase() < 0.5 ? 'montante' : 'descendante';
$distance = round( $moon->distance(), 0 );
$illumination = round($moon->illumination()*100, 0);

//date prochaine pleine lune format linux
$pleine_lune = strtotime(strftime( '%d.%m.%Y', $moon->full_moon() ));
//date pleine lune suivante format linux
//$pleine_lune_suivante = strtotime(strftime( '%d.%m.%Y', $moon->next_full_moon() ));

if ( $pleine_lune <= strtotime('now') ) //si ladate de la prochaine pleine lune calculée est dépassée
{
  $date_pleine_lune = $next_full2; //alors on utilise la date de pleine lune suivante
  $jours = strftime( '%Y-%m-%d %H:%M:%S', $moon->next_full_moon() );
}
else {
  $date_pleine_lune = $next_full; //sinon on prend la date de pleine lune la plus proche
  $jours = strftime( '%Y-%m-%d %H:%M:%S', $moon->full_moon() );
}

//Quelle_phase;
$jours_anglais = array("Monday", "Tuesday", "Wednesday", "Thursday", "Friday","Saturday","Sunday");
$jours_fr = array("Lundi", "Mardi", "Mercredi","Jeudi","Vendredi","Samedi","Dimanche");
$date_pleine_lune = str_replace($jours_anglais, $jours_fr, $date_pleine_lune);
$next_full = str_replace($jours_anglais, $jours_fr, $next_full);
$next_full2 = str_replace($jours_anglais, $jours_fr, $next_full2);
$next_new = str_replace($jours_anglais, $jours_fr, $next_new);
////////////////////////////////// LOG ////////////////////////////////////////
$scenario->setLog('| tag(Moon_Phase) : '.$stage);
$scenario->setLog('| tag(Moon_PhaseName) : '.$quelle_phase);
$scenario->setLog('| tag(Moon_Age) : '.$age);
$scenario->setLog('| tag(Next_Full_Moon) : '.$date_pleine_lune);
$scenario->setLog('| tag(Next_Full_Moon2) : '.$next_full2);
$scenario->setLog('| tag(Next_New_Moon) : '.$next_new);
$scenario->setLog('| tag(Moon_Distance) : '.$distance);
$scenario->setLog('| tag(Moon_Illumination) : '.$illumination);

$scenario->setLog('└───────────────────────────');

ligne 374 dans le code c’est

$scenario->setLog('| tag(Next_Full_Moon) : '.$date_pleine_lune);

C’est pour tenir compte du bout de code qui regarde si la date de prochaine pleine lune est déjà passée…

//date prochaine pleine lune format linux
$pleine_lune = strtotime(strftime( '%d.%m.%Y', $moon->full_moon() ));
//date pleine lune suivante format linux
//$pleine_lune_suivante = strtotime(strftime( '%d.%m.%Y', $moon->next_full_moon() ));

if ( $pleine_lune <= strtotime('now') ) //si la date de la prochaine pleine lune calculée est dépassée
{
  $date_pleine_lune = $next_full2; //alors on utilise la date de pleine lune suivante
  $jours = strftime( '%Y-%m-%d %H:%M:%S', $moon->next_full_moon() );
}
else {
  $date_pleine_lune = $next_full; //sinon on prend la date de pleine lune la plus proche
  $jours = strftime( '%Y-%m-%d %H:%M:%S', $moon->full_moon() );
}

MàJ faite.

1 « J'aime »

Mercii

Promis je t’embête plus j’y rajoute plus rien :joy: :rofl: :joy:
:beers: :beers:

A l’occas, je regarderait ce que je peut faire (full css) sur le widget pour la phase lunaire.

RE
Je suis un peu nul en widget !!!

J’ai rajouter les TAG dans le scenario en creant moi-meme les commandes. Mais je ne les retrouve pas dans le virtuel.

Merci pour votre aide

Pour la lune j’ai créé un virtuel Lune, avec une commande info, type autre appelée phase, que je n’historise pas

Dans ton scénario j’ai ajouté cette action pour mettre à jour directement mon virtuel

Et j’ai créé un widget

Simple efficace. lol

Il faut avant tous créer les commande infos dans le virtuel, et ensuite les rechercher dans le scénario :

image

c’est pas une info " numerique " :slight_smile:

Dans ton virtuel tu dois créer des infos supplémentaires

Et dans le scénario choisir la commande info du virtuel et en valeur bien écrire le tag

cad « tag(Moon_Phase) »
et pas rajouter un S ou ne pas mettre les guillemets !

Voila mon virtuel

J’en ai un dédié pour la lune voir post ci dessus

C’est jolie, mais je suis pas pour l’utilisation d’images dans les widget, je préfère full css, ou svg.