We launched new forums in March 2019—join us there. In a hurry for help with your website? Get Help Now!
    • 13320
    • 245 Posts
      Nouvelle version v0.8

      Bonjour,

      Voici un petit snippet de ma conception, sans prétention.

      Ce calendrier/agenda permet de plannifier plusieurs évènements sur une même période.

      Demo en ligne : CALx

      Quelques images

      L’interface général


      Lors du clic (ou survol suivant l’appel du snippet) sur une date, affichage avec un seul évènement planifié


      Lors du clic (ou survol suivant l’appel du snippet) sur une date, affichage avec plusieurs évènements planifiés


      Affichage de la liste des évènements planifiés (en français pour la version française)


      Change log :
      v0.8
      [list]
    • Ajout de la balise <thead></thead>
    • Ajout <td><acronym title="lundi">lu</acronym></td>
    • Ajout d’un paramètre avec un nom d’id CSS, à l’utilisateur de changer si il y a plusieurs
      calendrier.
      Et par défaut : "#CALxContent".
    • Ajout des liens pour les évènements apparaissant sur des jours des mois suivants/précédents
    • Ajout du paramètre pour choisir l’affichage des liens précèdent/suivant
    • [li]Rajout de la gestion des événements répétés uniquement si on utilise les TV.

    Note : Avec la répétition des événements, il faut bien séparer le rôle des deux dates.
    Il y a les paramètres : &dateStartTVName / &dateEndTVName qui correspondent
    dans le cas d’événements répétés aux jours ou l’événements a lieux,
    et les paramètres &TVstartDatePeriod/&TVendDatePeriod qui correspondent à la
    période de répétition.

    v0.7

    • modification de la gestion de la page des événements multiples.
      L’id du document qui reçoit l’appel du snippet pour l’affichage multiple
      est désormais obligatoire et doit être crée avant l’utilisation du snippet.
      Sans ce paramètre (&idMultiEvent), CALx ne s’affiche pas.
    Cette page est mis à jour en fonction des paramètre de l’appel principal de CALx.
    • correction d’un bug au passage à la nouvelle anée via un changement de mois
      ex : 12/2007 -> 01/2008
    • CALx supporte les sous répertoires.
      Le répertoire doit être publié pour que les évènements contenus apparaissent
    • ajout d’un paramètre pour choisir le mois de départ à afficher : &startMonth
    • ajout d’un paramètre pour choisir l’année de départ à afficher : &starYear
    • Les liens vers l’affichage de l’année entière et de tous les événements du mois
      ne sont plus crées.
      A la place deux placeholder sont générés :
      [+CALx_ShowFullYear_&idDocYear+]
      [+CALx_AllEventMonth_idDocMonthEvents+]
      Exemple :
      si &idDocYear=`21` le placeholder à la valeur : [+CALx_ShowFullYear_21+]
      si &dDocMonthEvents=`22` le placeholder à la valeur : [+CALx_AllEventMonth_22+]

    v0.6

    • affichage d’un lien pour voir tous les événements du mois en cours
    • CALx permet d’afficher des événements s’étalant sur plusieurs mois
    • s’il le contenu ([*content*]) de l’événement ne contient pas d’information le lien "Cliquer ici pour plus de détail" dans l’info bulle n’apparait pas.
    • ajout d’un paramètre &showOtherMonth=`string` qui permet l’affichage des jours du mois précédent, du mois suivant, les deux, ou aucun.
      Les événements qui pourrait avoir lieu sur ces journées ne sont pas repris pour ne pas alourdir le calendrier.
    • ajout du paramètre &idDocMonthEvents=`ìnt`qui indique le numéro du document qui contient l’appel de CALx avec le paramètre &getTypeProcess=`showAllMonthEvent`
    • ajout d’un paramètre &chunkCSSName qui contient le nom du chunk contenant les classes CSS (voir les indications d’installationpour plus de détail)

    v0.5
    • affiche un message d’erreur si les noms de TV indiqués ne sont pas trouvés
    • ajout d’un paramètre ’idDocFullYear’ qui indique la page qui contient
      l’appel du snippet de CALx avec le paramètre ’getTypeProcess=`showFullYear`
    • correction de bugs majeurs empêchant le focntionnement correct de CALx

    V0.4
    • correction du bug de choix de template pour le multi event
    • correction de bugs pour l’affichage utf8
    • amélioration de la lisibilité du code source lors de l’affichage par le navigateur
    • possibilité de choisir entre une gestion des dates de publications ou
      par TV.
    • ajout d’un paramètre pour indiquer le nom de la TV correspondant
      à la date de départ de l’évènement
    • ajout d’un paramètre pour indiquer le nom de la TV correspondant
      à la date de fin de l’évènement
    • XHTML 1.0 Transitional

    V0.3
    • ajout d’un paramètre pour le type d’info bulle :
      0 : l’infobulle apparait sur le survol, pas de lien cliquable
      1 : l’inobulle apparait sur un survol, mais permet de cliquer
      sur un lien
      2 : l’infobulle apparait sur un clic et permet de cliquer sur un lien
    • ajout d’un paramètre pour la taille de l’infobulle
    • ajout d’un paramètre pour la position de l’infobulle:
      LEFT, RIGHT, CENTER, ABOVE, BELOW
    • ajout d’un paramètre pour changer le premier jour de la semaine
      ex : 0 pour commencer au lundi, 6 pour commencer au dimanche
    • ajout d’un paramètre pour changer le jour d’inactivité (en France
      le dimanche par ex)

    V0.2

    • fonctionne avec et sans javascript
    • modification de chemin pour fonctionner sur la 0.9.5
    • ajout de la gestion des fichiers de langue
    • ajout de flèches pour la navigation
    • ajout d’infobulle de type ’title’
    • ajout de class CSS pour styler la barre de navigation

    Pour utiliser la répétition des événements, il faut utiliser les TV pas le choix.
    Lors de l’utilisation de la répétition, les TV &dateStartTVName / &dateEndTVName n’ont plus tout à fait le même rôle.
    Ces deux TV indiquent à CALx les jours de répétitions à prendre en compte en fonction du type de répétition défini dans le TV
    &TVCalxRepeat.
    Par exemple, si je définis un événements comme ça :
    &dateStartTVName : 01/04/2008 (mardi)
    &dateEndTVName : 06/04/2008 (dimanche)
    &TVCalxRepeat = week
    Alors l’événement sera répété du mardi au dimanche toutes les semaines quelque soit la date.

    Si je mets :
    &dateStartTVName : 01/04/2008 (mardi)
    &dateEndTVName : 06/04/2008 (dimanche)
    &TVCalxRepeat = month
    Alors l’événement sera répété du 01/MM/2008 au 06/MM/2008, quelque soit le mois.

    Idem pour si l’événement est répété sur une année.

    Mais avec ce système l’événement est répété "ad vitam eternam", j’ai donc rajouté deux TV :
    &TVendDatePeriod / &TVstartDatePeriod
    Qui permettent, elles, de limiter la répétition dans le temps.
    Par exemple :
    &dateStartTVName : 01/04/2008 (mardi)
    &dateEndTVName : 06/04/2008 (dimanche)
    &TVCalxRepeat = week
    &TVendDatePeriod = 01/04/2008
    &TVstartDatePeriod = 01/06/2008
    Dans ce cas l’événement sera répété toutes les semaines pendant le mois d’avril, mai et juin.

    Voilà vous pouvez tester.

    J’ai quelques idées de modifications qui vont venir bientôt, mais je prends toutes remarques smiley

    [/list]
      [b]D
      • 6726
      • 7,075 Posts
      OK téléchargé et je vais certainement tester cette semaine ce snippet dont le concept sur le papier me plaît bien !

      Merci Jabberwock pour cette contrib’ smiley
        .: COO - Commerce Guys - Community Driven Innovation :.


        MODx est l&#39;outil id
        • 11975
        • 2,542 Posts
        Salut,

        J’ai pas testé.
        Mais dans le code de la classe CAgenda tu as inscrit des chemins en dur qui risquent d’empecher le bon fonctionnement.



        //Lit le fichier et retroune l’id
        function readFileMultiEventsTXT(){
        if($this->fileMultiEventsTXT_exists()==true){
        $filename = ’c:\applications web\easyphp\www\modx\assets\snippets\agenda\multiEvents.txt’;
        $inF = fopen($filename,"r");
        $tt = fgets($inF, 4096);
        return $tt;
        }else{
        return -1;
        }
        return 0;
        }

        Tu devrais utiliser les variables de config de MODx pour ces opérations.
        $modx->config[’base_path’] par exemple.

        :-)
          Made with MODx : [url=http://www.copadel.com]copadel, fruits et l
          • 13320
          • 245 Posts
          erf bien vu l’aveugle lipsrsealed

          Quel noob je fais :/

          C’est modifié, j’ai modifié l’archive dans le premier post.

          Merci Helio pour ton oeil de lynx.
            [b]D
            • 13320
            • 245 Posts
            Bonsoir,

            Un petit up avec un changement de nom

            Oui j’ai mis du temps à trouver un truc intéressant.

            CALx pour CALENDRIER et x pour Modx, facile.

            Ca fait aussi penser à Calice :
            La racine indo-européenne du mot Calice est *K°lik- = coupe, vase. On la retrouve dans le sanskrit Kalásas (coupe, pot) et Kalika (bouton de fleur), en grec ancien Kúliks (coupe), en latin calix (coupe, vase à boire).

            A l’origine, le mot calix / calice désigne donc une coupe à boire, sans anse et de n’importe quel matériau, bois, terre ou métal. Sa forme creuse, servant de réceptacle et de retenue de liquide, a servi par comparaison à désigner le calice de la fleur. (wikipédia)

            La version que j’ai uploadé, corrige deux trois bricoles.

            Quelques uns l’ont testé ?
              [b]D
              • 6726
              • 7,075 Posts
              Pas encore (ça ne saurait tarder) mais au passage, CALx est un excellent nom smiley
                .: COO - Commerce Guys - Community Driven Innovation :.


                MODx est l&#39;outil id
                • 34162
                • 1 Posts
                edit: HS

                @Jabberwock : le listing des événements apparaît dans la zone Content ?
                  • 1876
                  • 835 Posts
                  Merci de lire la documentation sur l’usage des snippets, c’est un minimum sur Modx.
                    • 13320
                    • 245 Posts
                    Quote from: aour at May 29, 2007, 01:33 PM

                    Merci de lire la documentation sur l’usage des snippets, c’est un minimum sur Modx.
                    C’est pour moi ?

                    Si j’ai fait quelque chose d’incorrect dans le développement du snippet, tu peux me le dire et m’indiquer des pages d’aide plus précises plz ?

                    Je viens de reparcourir la section Snippet (section développer de l’aide) et je ne vois aucunes indications typographiques/syntaxiques/contraintes/à faire/à ne pas faire.

                    Je me suis inspiré de Kalender qui est qd même dans la section "officiel" des snippets Modx.
                      [b]D
                      • 1876
                      • 835 Posts
                      Re

                      Non rassure toi Jabberwock, c’est uniquement pour la question d’akadama.