Comme annoncé, ce forum est passé en lecture seule au 1er janvier 2020. Désormais nous vous invitons à vous rendre sur notre nouvelle page communauté :
Image

A très bientôt !

Widget getDate

Réservé à l'utilisation et la création de widgets dans JEEDOM
Lanf
Timide
Messages : 21
Inscription : 24 janv. 2018, 15:25

Widget getDate

Message par Lanf » 21 mars 2018, 18:20

Bonjour,

j'essai de récupérer une date à la volée via un widget dans le but de dire que je suis de retour à telle date afin de déclencher multiples scénarios.
Je suis débutant en php et en jeedom aussi :)

Je souhaiterai pouvoir afficher un calendrier afin de récupérer la date d'un simple click en utilisant un input de type date.
cf. exemple ci-dessous:
date.jpg
date.jpg (25.12 Kio) Consulté 838 fois
malgré mes recherches sur le forum je n'ai rien trouvé
j'ai trouvé un widget:input_clock_winhex réalisé par winhex dans lequel j'ai essayé de remplacer le type time par date:

Code : Tout sélectionner

    <div class="tooltips cmd cmd-widget" data-type="action" data-subtype="slider" data-cmd_id="#id#" data-cmd_uid="#uid#" data-version="#version#" style="min-width:105px;">
       <div class="input-group" style="width: 100px;">
      <input style="height: 33px;border-radius: 5px;font-size : 16px;font-weight: Bold;background-color:#e4e2c2;" class="form-control input-sm value" type="date" placeholder="#title_placeholder#" value="#state#" data-cmd_id="#id#"/>
	    <span class="input-group-btn" style="position: relative;">   
        <a class="btn btn-default execute" style="background-color:#cmdColor# !important;border-color : transparent !important;height:30px;width:25px"><i class="fa fa-check" style="position: relative;left:-5px;"></i></a>
       </span>
          </div>
	<script>

		$('.cmd[data-cmd_uid=#uid#]:last .execute').on('click', function() {
        jeedom.cmd.execute({id:'#id#', value: {slider: $('.cmd[data-cmd_uid=#uid#] .value').val().replace("#unite#", "").replace(" ", "")}});
                });
	</script>

</div>
mais lorsque je prend la date du jour (exemple 21/03/2018) et que je regarde la valeur récupérer dans mon virtuel j'ai 1994!
Vu mon niveau de php et mes connaissances limitées, j'imagine que je dois faire une bétise qq part. Des idées?

Une méthode plus simple consisterai à créer 3 champs de saisie pour le jour, le mois et la date mais y aurait il quelqu'un qui aurait déjà utiliser un champ de type date?

Merci

winhex
Actif
Messages : 3799
Inscription : 23 janv. 2015, 01:41

Re: Widget getDate

Message par winhex » 21 mars 2018, 21:10

bonjour voilà comment je verrais la chose

deja je pense que ton soucis via d'une mauvaise info

tu récupères la valeur en numérique
2018-03-21=1994
c'est dit ici que la valeur sera aaaa-mm-jj
le format de la date affichée sera déterminé en fonction de la langue utilisée par le navigateur alors que la valeur de l'attribut value aura toujours la forme yyyy-mm-dd (c'est-à-dire les quatres chiffres de l'année, suivi d'un tiret, suivi des deux chiffres pour le mois, suivi d'un tiret puis des deux chiffres pour le jour).
https://developer.mozilla.org/fr/docs/W ... Input/date

il te faudrait récupère en info string (texte)
pour commencer

ensuite c'est là que le PHP te sera utile mais tu peux t'en passer via le script du widget
via JS
https://stackoverflow.com/questions/469 ... ipt-jquery

convertir "2018-03-21" en timestramp (secondes depuis 1970)

ensuite la différence en jjmmaaaa ou lorsque timestramp = timestramp de ton input sera faisable car le tag jeedom timestramp existe
Dernière édition par winhex le 21 mars 2018, 21:28, édité 1 fois.

Lanf
Timide
Messages : 21
Inscription : 24 janv. 2018, 15:25

Re: Widget getDate

Message par Lanf » 21 mars 2018, 21:28

Je me doutais que c’était une histoire du genre
Je vais tester ça
Merci bcp


Envoyé de mon iPhone en utilisant Tapatalk

Mathieu
Timide
Messages : 35
Inscription : 10 févr. 2016, 12:15

Re: Widget getDate

Message par Mathieu » 13 janv. 2019, 20:01

Bonjour Lanf,
Je cherche à faire la même chose que toi (saisir une date et mettre à jour un virtuel) mais je n'y parviens pas.
As-tu réussi ? Peux-tu partager ton code html de ton widget ?
Merci
Jeedom 2.4.6 sous Debian 8 (jessie) sur Serveur ESXi 5.5
Domotique sur 2 protocoles MySensor (Arduino) et KNX
Plugin Mobile avec Homebridge

beber49
Timide
Messages : 197
Inscription : 26 janv. 2017, 20:11

Re: Widget getDate

Message par beber49 » 04 sept. 2019, 15:39

Bonjour,

Très interessé aussi, si quelqu'un y est arrivé !

Avatar de l’utilisateur
domoggvad
Actif
Messages : 1880
Inscription : 29 avr. 2015, 16:02
Localisation : Seine-Saint-Denis (Villepinte)

Re: Widget getDate

Message par domoggvad » 04 sept. 2019, 18:55

Bonjour,
je vais donner une solution de bricolage, que j'ai crée en bidouillant

- créer un scenario moi je l'ai appelé "modifvariable", puis une variable "datedepart"

Code : Tout sélectionner

$cmd = cmd::byString('#[123 tests][abscences][variable(datedepart)]#');
$test = $cmd->execCmd();
$scenario->setData('datedepart', $test);
$scenario->setLog($test);// log
$scenario->setLog('Bloc code : variable datedepart -> '.$test);// log
- créer un virtuel comme sur l'image, et dans l'action "Go to ma new date", roue crantée faire appel au scénario "modifvariable" comme sur l'image
quand vous saisissez une date sous le virtuel, appuis sur l'action qui renseigne la variable, cette variable déclenche un scénario, qui à la verif de la date du jour et celle de la variable déclenche mes actions, comme remettre le chauffage etc... variable(datedepart)=date("d-m-Y")
Pièces jointes
virtuel suite.png
virtuel suite.png (234.87 Kio) Consulté 292 fois
virtuel suite 2.png
virtuel suite 2.png (65.3 Kio) Consulté 292 fois
Dernière édition par domoggvad le 04 sept. 2019, 18:59, édité 1 fois.
3 Odroid C2 (Prod - secours - test) Z83 tests: rfxcom + Z-wave- Clims DAIKIN - espeasy - thekey - Xiaomi - Telinfo - broadlink... widget V3 :viewtopic.php?f=29&t=44183&p=717810#p717810

Avatar de l’utilisateur
domoggvad
Actif
Messages : 1880
Inscription : 29 avr. 2015, 16:02
Localisation : Seine-Saint-Denis (Villepinte)

Re: Widget getDate

Message par domoggvad » 04 sept. 2019, 18:59

le virtuel
Pièces jointes
virtuel.png
virtuel.png (13.93 Kio) Consulté 290 fois
3 Odroid C2 (Prod - secours - test) Z83 tests: rfxcom + Z-wave- Clims DAIKIN - espeasy - thekey - Xiaomi - Telinfo - broadlink... widget V3 :viewtopic.php?f=29&t=44183&p=717810#p717810

beber49
Timide
Messages : 197
Inscription : 26 janv. 2017, 20:11

Re: Widget getDate

Message par beber49 » 04 sept. 2019, 20:35

Merciii !!!
La date est saisie à la main ou tu l'as choisi dans un calendrier qui s'affiche ?

Avatar de l’utilisateur
domoggvad
Actif
Messages : 1880
Inscription : 29 avr. 2015, 16:02
Localisation : Seine-Saint-Denis (Villepinte)

Re: Widget getDate

Message par domoggvad » 04 sept. 2019, 21:11

Non saisie à la main comme sur l'image

Envoyé de mon Redmi S2 en utilisant Tapatalk

3 Odroid C2 (Prod - secours - test) Z83 tests: rfxcom + Z-wave- Clims DAIKIN - espeasy - thekey - Xiaomi - Telinfo - broadlink... widget V3 :viewtopic.php?f=29&t=44183&p=717810#p717810

Répondre

Revenir vers « [Plugin officiel] Widgets »

Qui est en ligne ?

Utilisateurs parcourant ce forum : Aucun utilisateur inscrit et 4 invités