UP Filter

Réduire
X
 
  • Filtrer
  • Heure
  • Afficher
Tout effacer
nouveaux messages

  • UP Filter

    Bonjour.

    Ce message cible un peu Loic mais comme je connais la coopération qu'il peut avoir avec d'autres intervenants, peut-être que quelqu'un aura une idée…


    Serait-il possible de filtrer, avec l'action "Filter", l'endroit où l'on se trouve.


    Explication :

    Pour le site d'un gite de location en Guadeloupe, j'utilise un double module horloge (Clocks-gmt) avec l'heure en Europe centrale et l'heure en Guadeloupe. Tout va bien pour ces horloges…

    Sous ce "widget", j'ai un filtre qui affiche ouvert ou fermé selon un certain horaire, il n'est valide qu'en France, dès qu'on se trouve en Guadeloupe, le filtre affiche fermé alors que la réception est bien ouverte.


    Je joins le code que j'utilise :


    Code HTML:
    <div style="text-align: center;">
    <h4>Notre réception est ouverte de 08.00h à 20.00h (heure locale)</h4>
    <p>{up clocks-gmt=Guadeloupe | offset=-4 | style=display:inline-block | skin=1 | class=bg-grisClair | label-style=font-weight:bold;color:#ddd;background:#333; | digital-style=font-size:24px}</p>
    <p>{up clocks-gmt=Heure chez vous | style=display:inline-block | skin=1 | class=bg-grisClair | label-style=font-weight:bold;color:#ddd;background:#666; | digital-style=font-size:24px}{/up clocks-gmt}</p>
    <p style="margin: 15px 0;">Nos bureaux sont<br />actuellement {up filter | hperiod=1200-2400}<span style="color: #008000;"><strong>Ouverts</strong></span>{=====}<strong><span style="color: #ff0000;">Femés</span></strong>{/up filter}</p>
    </div>

    hperiod:1200-2400 correspond à la période 12.00 à 24.00 heure française.

    Du coup, en Guadeloupe, la réception apparaît également ouverte durant cette période. C'est pas super…


    Avec un filtre supplémentaire sur la géolocalisation je pourrais afficher selon l'emplacement un module aux horaires français ou un autre aux horaires Guadeloupéens.


    Pensez-vous que ce soit possible ?
    Dernière édition par Eddy.vh à 15/01/2019, 15h54
    Cordialement.
    __
    Eddy !!!
    Tutoriels BreezingForms en Français : https://www.breezingforms.eddy-vh.com/

  • #2
    Bonjour Eddy,

    J'ai trouvé un plugin qui permet d'obtenir l'heure locale (sans passer par un GPS qui, sur PC, n'est pas très fiable) : https://github.com/GregDThomas/jquery-localtime

    Je vais regardé si on peut l'intégrer facilement.

    A bientôt,

    Pascal
    If anything can go wrong, it will...If I can help, I will ..https://conseilgouz.com

    Commentaire


    • #3
      Bonjour Pascal.

      C'est pas trop l'affichage de l'heure qui me fait tourner boutique mais l'affichage de l'ouverture de la réception selon ces heures en France et en Guadeloupe.
      Cordialement.
      __
      Eddy !!!
      Tutoriels BreezingForms en Français : https://www.breezingforms.eddy-vh.com/

      Commentaire


      • #4
        Envoyé par Eddy.vh Voir le message
        Bonjour Pascal.

        C'est pas trop l'affichage de l'heure qui me fait tourner boutique mais l'affichage de l'ouverture de la réception selon ces heures en France et en Guadeloupe.
        C'est ce que j'avais compris. Je regarde dès que j'ai fini les mises à jour 3.9.2....

        Pascal
        If anything can go wrong, it will...If I can help, I will ..https://conseilgouz.com

        Commentaire


        • #5
          Prends ton temps. Y a pas l'feu...
          Cordialement.
          __
          Eddy !!!
          Tutoriels BreezingForms en Français : https://www.breezingforms.eddy-vh.com/

          Commentaire


          • #6
            Bonjour Eddy,

            En fait, c'était un peu plus compliqué que prévu. Pour connaitre l'heure locale d'un visiteur, il faut passer par javascript.

            Il y avait plusieurs autres solutions : passer par AJAX (cela supposait d'avoir un rechargement de la page), écrire un cookie (mais, en ces temps RGPD,...), utiliser l'adresse IP pour déterminer la "time zone" de l'utilisateur (ce n'est pas très fiable).

            Donc, j'ai modifié un peu l'action filter de UP et créé une nouvelle condition : zperiod. Cette condition a le format zperiod=z_<min hhmm>_<max_hhmm>. z est le code TimeZone. Dans le cas de la Guadeloupe, il faut entrer -4.

            Remarque: il n'accepte qu'un seul intervalle, pour l'instant, et le caractère de séparation est _ car le code TimeZone peut être négatif, donc commencer avec un moins.

            Pour ton exemple, on aura donc
            Code:
             {up filter | zperiod=-4_0800_2000}<span style="color: #008000;"><strong>Ouverts</strong></span>{=====}<strong><span style="color: #ff0000;">Fermés</span></strong>{/up filter}
            Le fichier filter.txt est à copier dans le répertoire plugins/content/up/actions/filter et remplace le fichier filter.php.

            Je vais voir avec Loïc si cette solution temporaire lui plaît.

            Filter;txt est disponible à l'adresse https://www.conseilgouz.com/phocadownload/filter.txt

            Merci de me dire si cela correspond bien à ton besoin.

            Pascal
            If anything can go wrong, it will...If I can help, I will ..https://conseilgouz.com

            Commentaire


            • #7
              Pascal.
              Merci de t'être penché sur ce problème. Je teste dès que possible. Faut-il renommer le .txt en .php ?
              Cordialement.
              __
              Eddy !!!
              Tutoriels BreezingForms en Français : https://www.breezingforms.eddy-vh.com/

              Commentaire


              • #8
                Envoyé par Eddy.vh Voir le message
                Faut-il renommer le .txt en .php ?
                Renomme l'ancien fichier php (au cas où...) et copie le .txt en .php

                Pascal
                If anything can go wrong, it will...If I can help, I will ..https://conseilgouz.com

                Commentaire


                • #9
                  Bonjour Eddy,

                  Après discussion avec Loïc, j'ai un peu modifié ma modification....C'est téléchargeable à l'adresse https://www.conseilgouz.com/phocadownload/filter.zip

                  Il suffit d'écraser le répertoire plugins/content/up/actions/filter avec le contenu du zip (qui contient un répertoire filter avec filter.php et user_tz.js).

                  D'autre part, l'appel à l'action a évolué pour coller avec le standard up : {up filter | zperiod=Z,<min hhmm>-<max hhmm>,<min hhmm>-<max hhmm>,.... avec Z = time zone (par ex. Guadeloupe = -4).

                  A bientôt,

                  Pascal
                  If anything can go wrong, it will...If I can help, I will ..https://conseilgouz.com

                  Commentaire


                  • #10
                    Hé hé, merci Pascal.

                    Je venais à l'instant de mettre la première mouture en place et passais t'en aviser et je vois ton dernier message.
                    Je corrige à nouveau demain et t'en aviserai. Je demanderai à la Guadeloupe de confirmer le fonctionnement ou peut-être connais-tu une astuce pour simuler l'heure de Guadeloupe sur un poste européen ?

                    Je te remercie en tous cas de ton implication dans la résolution de mon problème et à faire évoluer cette fonction d'UP.
                    Cordialement.
                    __
                    Eddy !!!
                    Tutoriels BreezingForms en Français : https://www.breezingforms.eddy-vh.com/

                    Commentaire


                    • #11
                      Pour te mettre à l'heure "guadeloupéenne", il suffit de modifier l'heure de ton PC/Mac.

                      Sur PC, on peut choisir son fuseau horaire dans ses paramètres. Je pense que cela fonctionne aussi sur MAC.

                      Tu deviens alors un client "guadeloupéen" se renseignant sur l'horaire d'un hôtel local.

                      Pour tester l'inverse, cela se passe au niveau de la configuration de Joomla (où tu peux sélectionner le fuseau horaire de ton serveur).

                      Je pense qu'il faut que j'essaie d'adapter aussi l'affichage de ta 'clockGMT' pour afficher aussi l'heure locale de l'utilisateur.

                      Pascal
                      If anything can go wrong, it will...If I can help, I will ..https://conseilgouz.com

                      Commentaire


                      • #12
                        J'ai changé l'heure du PC mais ça change rien, il m'indique toujours l'heure européenne comme étant la mienne.
                        Je teste le changement de fuseau Joomla!

                        Bon, reste à attendre le changement de situation à 20.00h…

                        Pour l'affichage de l'horloge, je trouve l'affichage double intéressant pour ma situation mais bien sûr, si ça en intéresse d'autres…

                        Merci pour ton coup de pouce.
                        Dernière édition par Eddy.vh à 18/01/2019, 17h23
                        Cordialement.
                        __
                        Eddy !!!
                        Tutoriels BreezingForms en Français : https://www.breezingforms.eddy-vh.com/

                        Commentaire


                        • #13
                          Pour tester, j'ai changé au niveau de mon article les valeurs d'ouverture/fermeture dans le {up filter | zperiod = -4,1300-2000}... par exemple. Cela donnera actuellement fermé.

                          Au niveau de l'action clocks_GMT, j'ai aussi intégré la modification. Si tu ne renseignes pas le paramètre offset (comme c'est le cas dans ta clock "chez vous"), tu auras l'heure locale de l'utilisateur (qui correspond à l'heure de ton PC) : https://www.conseilgouz.com/phocadow...clocks_gmt.zip

                          Pascal
                          If anything can go wrong, it will...If I can help, I will ..https://conseilgouz.com

                          Commentaire


                          • #14
                            Bien bien.

                            Fuseau horaire du site modifié, filter et clocks_gmt remplacés, tout semble fonctionner comme il le devrait.
                            Il reste à implémenter ces version dans UP chez Loic et modifier légèrement les modes d'emploi.

                            J'ai demandé au proprio du site de vérifier le bon fonctionnement de son côté pour être certain…
                            Cordialement.
                            __
                            Eddy !!!
                            Tutoriels BreezingForms en Français : https://www.breezingforms.eddy-vh.com/

                            Commentaire

                            Annonce

                            Réduire
                            Aucune annonce pour le moment.

                            Partenaire de l'association

                            Réduire

                            Hébergeur Web PlanetHoster
                            Travaille ...
                            X