We launched new forums in March 2019—join us there. In a hurry for help with your website? Get Help Now!
    • 6726
    • 7,075 Posts
    Suite à une (judicieuse) suggestion de Marc, j’ai splitté la discussion qui est née de ce débat, et qui concerne le développement du snippet MooShow. Voir ici :
    http://modxcms.com/forums/index.php/topic,7295.0.html

      .: COO - Commerce Guys - Community Driven Innovation :.


      MODx est l'outil id
      • 18219
      • 826 Posts
      Merci David pour cette intervention wink

      Au fait, j’ai vu que tu avais intégré dans un des sites en construction le slidshow ’photoFader’. Y-a-t-il un module ou un snippet en cours de devlp sur le sujet ou est-ce du code placé judicieusement dans le template de la page ?

      Avec photoFader, existe-t-il des licences particulières ou est-ce simplement du ’GPL Open Source’ ?

      Que se passe-t-il si l’on désactive JS ?

      Pour rendre l’ascenseur, regarde le code HTML de ton template (du site en construction) de la page d’accueil :
      ligne 119 (title est mis 2 fois) : <a href="javascript:void(0)" title="Login" onClick="new Effect.Appear(’login’, {duration:2});" style="cursor: pointer;" title="S’identifier pour se connecter à l’espace adhérent" class="login_link">Espace Adhérents</a>
      ligne 94 retire ’px’ dans width et height : <img src="..." width="205px" height="200px" alt="Logo ..." style="border: none;" />
        Marc
        I&#39;m French... Sorry for my bad English, I use &#39; Google Translator&#39; or other... but that remains that tools wink
        • 11975
        • 2,542 Posts
        Marc,

        avec qq modifications à mooshowgallery, tu devrais aisément créer un snippet pour automatiser la création de ce type de slideshow.
        je suis en train réécrire la fonction d’inclusion des scripts.
        Une fois que le système de templating sera au point je pense que mooshow offrira cette fonctionnalité.

        :-)
          Made with MODx : [url=http://www.copadel.com]copadel, fruits et l
          • 18219
          • 826 Posts
          @Helio :
          Oui, je sais mais avant de me lancer dans cette voie je voulais m’assurer que David avait fait une simple intégration sans développement d’un snippet.
          Par contre, je ne pensais pas que tu avais l’intention d’intégrer ce type de fonctionnalités dans mooShowGallery.

          Je vais patienter avant de me lancer dans un quelconque développement.
          Je cherche une alternative au slideShow de Jeroen Wijering
            Marc
            I&#39;m French... Sorry for my bad English, I use &#39; Google Translator&#39; or other... but that remains that tools wink
            • 11975
            • 2,542 Posts
            En fait j’aimerai intégrer un systeme de templating comme dans makeForm la classe d’open geek.

            Ensuite il me suffirait de créer une série de modèles en prenant comme base les galeries les plus usitées.
            Etant donné les similitudes dans l’activation de ces effets, je pense que c’est tout à fait jouable.

            Bien sur si j’étais un vrai développeur cela irait plus vite mais ....

            :-)
              Made with MODx : [url=http://www.copadel.com]copadel, fruits et l
              • 6726
              • 7,075 Posts
              Quote from: Marc at Sep 20, 2006, 07:24 PM
              Au fait, j’ai vu que tu avais intégré dans un des sites en construction le slidshow ’photoFader’. Y-a-t-il un module ou un snippet en cours de devlp sur le sujet ou est-ce du code placé judicieusement dans le template de la page ?

              Pas de snippet non, toujours pas eu le temps de me former à php tongue
              Mais s’il devait y avoir quelque chose, se serait un module pour gérer l’upload des photos dans la liste...

              C’est juste du js inclu dans le template.

              Quote from: Marc
              Avec photoFader, existe-t-il des licences particulières ou est-ce simplement du ’GPL Open Source’ ? Que se passe-t-il si l’on désactive JS ?

              Pour la licence, aucune idée il faudra que je demande à l’auteur... voir son post ici :
              http://www.alphafilter.com/?inc=article&aid=131

              Si on désactive js, on a rien du tout il me semble. Je vais prévoir une alternative via <noscript>, probablement une simple image de remplacement.


              Quote from: Marc
              ]Pour rendre l’ascenseur, regarde le code HTML de ton template (du site en construction) de la page d’accueil :
              ligne 119 (title est mis 2 fois) : <a href="javascript:void(0)" title="Login" onClick="new Effect.Appear(’login’, {duration:2});" style="cursor: pointer;" title="S’identifier pour se connecter à l’espace adhérent" class="login_link">Espace Adhérents</a>
              ligne 94 retire ’px’ dans width et height : <img src="..." width="205px" height="200px" alt="Logo ..." style="border: none;" />

              Merci, le double title m’avait été signalé par Jason, la taille de l’image par contre c’est une big erreur rolleyes
                .: COO - Commerce Guys - Community Driven Innovation :.


                MODx est l&#39;outil id
                • 23050
                • 1,842 Posts
                Excusez-moi de ressortir cette discussion mais je bloque sur un point en javascript alors que je suis sur le point de finaliser.

                J’ai utilisé le tuto que Marc a trouvé sur Alsa pour créer une petite galerie. Voir un exemple ici http://www.architecture-gambino.com/v2/index.php?id=3

                La galerie en elle-même fonctionne à merveille et j’ai voulu coller à la maquette de ma graphiste en ajoutant un lien "Agrandir l’image" pour voir l’image en grand format, en utilisant lightbox.

                Mon problème survient lorsque je souhaite changer le href du lien "Agrandir l’image". En effet, ce href doit être changé pour chaque clic fait sur les miniatures (ex : si j’affiche l’image 2, je dois mettre un lien vers me grand format de l’image 2).

                Voici le script initial :
                function displayPics()
                {
                    var photos = document.getElementById('galerie-rea');
                    // On récupère l'élément ayant pour id galerie-rea (ul)
                    var liens = photos.getElementsByTagName('a');
                    // On récupère dans une variable tous les liens contenu dans galerie_mini
                    var photo_centre = document.getElementById('img-centre');
                    // Ici c'est l'élément ayant pour id big_pict qui est récupéré, c'est notre photo en taille normale
                        var zoom = document.getElementById('zoom-pict');
                
                    // Une boucle parcourant l'ensemble des liens contenu dans galerie-rea
                    for (var i = 0; i < liens.length; ++i) {
                        // Au clique sur ces liens
                        liens[i].onclick = function() {
                            photo_centre.src = this.href; // On change l'attribut src de l'image en le remplaçant par la valeur du lien
                            return false; // Et pour finir on inhibe l'action réelle du lien
                        };
                    }
                }
                window.onload = displayPics;
                // Il ne reste plus qu'à appeler notre fonction au chargement de la page


                et voici le script modifié :
                function displayPics()
                {
                    // On récupère l'élement contenant l'image du centre
                    var photo_centre = document.getElementById('img-centre');
                    // On récupère l'élément ayant pour id galerie-rea (ul)
                    var photos = document.getElementById('galerie-rea');
                    // On récupère dans une variable tous les liens contenu dans galerie_mini
                    var liens = photos.getElementsByTagName('a');
                    // On récupère le lien qui ouvre lightbox (image grand format)
                    var zoom = document.getElementById('zoom-pict');
                
                    // On crée le tableau qui stock les liens vers les images grand format
                    var grandes = [];
                    // On remplit le tableau
                    grandes[0] = "[(base_url)]assets/images/projets/[[DocEnCours]]/picto1-b.jpg";
                    grandes[1] = "[(base_url)]assets/images/projets/[[DocEnCours]]/picto2-b.jpg";
                    grandes[2] = "[(base_url)]assets/images/projets/[[DocEnCours]]/picto3-b.jpg";
                    // Une boucle parcourant l'ensemble des liens contenus dans galerie-rea permet de modifier l'image du centre et le href de #zoom-pict
                    for (var i = 0; i < liens.length; ++i) {
                        // Au clique sur ces liens
                        liens[i].onclick = function() {
                            photo_centre.src = this.href; // On change l'attribut src de l'image en le remplaçant par la valeur du lien
                            zoom.href = grandes[i];
                            return false; // Et pour finir on inhibe l'action réelle du lien}
                            }
                    }
                }
                window.onload = displayPics;
                // Il ne reste plus qu'à appeler notre fonction au chargement de la page


                Grosso modo, je crée un nouveau tableau grandes[] dans lequel je stocke les urls de mes images grand format et dans la boucle for, je modifie le href de mon lien en fonction du i...
                Ca vous parait logique ?? et ben ça ne marche pas ! Si je laisse grandes[ i ] (dans la boucle), le href = undefined
                Alors que si je mets grandes[0], il m’affiche bien le lien vers le grand format de l’image 1.

                Donc, j’en conclue que le problème vient du i... mais je ne sais pas pourquoi.
                Alors j’en appelle à vous et vot’ bon coeur ! wink

                Mes appels au secours sont restés sans réponse sur le HUB et sur Alsa, je suis triste ! embarrassed
                  • 11975
                  • 2,542 Posts
                  Salut perrine,

                  je suis allé voir ta page exemple mais sur safari(idem avec FF et camino) lorsque je clique sur une des vignettes, l’image apparait en lieu et place de tout contenu.
                  Sinon si je comprends bien:
                  Chaque image est représenté par une vignette.
                  Un clic sur la vignette charge une image de taille moyenne dans le corps de page.
                  Un clic sur agrandir l’image provoque l’affichage de la grande image via la lightbox.

                  c’est ça ?

                  :-)
                    Made with MODx : [url=http://www.copadel.com]copadel, fruits et l
                    • 23050
                    • 1,842 Posts
                    Ah oui désolée, j’avais fait des tests et je n’avais pas remis la version que je présente ici.

                    Et oui, tu as compris le fonctionnement wink En ajoutant que le clic sur la vignette doit aussi changer le href de Agrandir l’image.
                      • 23050
                      • 1,842 Posts
                      Yes ! J’ai trouvé smiley

                      Au lieu de créer un tableau, je fais tout simplement un replace dans l’url de l’image moyenne pour appeler l’image grand format... et ça roule!

                      function displayPics()
                      {
                      	// On récupère l'élement contenant l'image du centre
                      	var photo_centre = document.getElementById('img-centre');
                      	// On récupère l'élément ayant pour id galerie-rea (ul)
                      	var photos = document.getElementById('galerie-rea');
                      	// On récupère dans une variable tous les liens contenu dans galerie_mini
                      	var liens = photos.getElementsByTagName('a');
                      	// On récupère le lien qui ouvre lightbox (image grand format)
                      	var zoom = document.getElementById('zoom-pict');
                      
                          // Une boucle parcourant l'ensemble des liens contenus dans galerie-rea permet de modifier l'image du centre et le href de #zoom-pict
                      	for (var i = 0 ; i < liens.length ; ++i) {
                      		// Au clique sur ces liens 
                      		liens[i].onclick = function () {
                      			photo_centre.src = this.href; // On change l'attribut src de l'image en le remplaçant par la valeur du lien
                      			var monhref = this.href; // Je crée monhref pour retravailler la chaîne de caractères
                      			monhref = monhref.replace (/.jpg/, "-b.jpg"); // Je remplace l'extension .jpg par -b.jpg pour appeler l'image grand format
                      			zoom.href = monhref; // Je remplace le href du lien
                      			return false; // Et pour finir on inhibe l'action réelle du lien}
                      			}
                      	}
                      }
                      window.onload = displayPics;
                      // Il ne reste plus qu'à appeler notre fonction au chargement de la page


                      Bon le hic, c’est que le nom des images doit se prêter à cet exerice mais bon, c’est cool smiley