media manager dans backend d'un composant

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

  • #16
    Re : media manager dans backend d'un composant

    je pense avoir trouvé une piste intéressante, j'arrive à lancer l'éditeur média dans une lightbox, sélectionner une image et renvoyer son chemin (en réalité ça renvoit <img src=chemin /> ) dans un input défini
    c'est déjà pas mal ! seul truc c'est que j'ai une erreur js à cause de
    Erreur*: this.frame is undefined
    Fichier Source*: http://localhost/joomla1523/administ...magemanager.js
    Ligne*: 40
    sachant que dans le fichier
    this.frame = window.frames['imageframe'];
    et là je bloque un peu...
    Vive Joomla! http://www.joomlack.fr Tutoriels et extensions pour Joomla!. Livre création de template Joomla de plus de 200 pages.
    http://www.template-creator.com Outil de création de templates
    Module Maximenu CK - Megamenu, multicolonnes, chargement de module, description de lien, deroulement animé - Compatible Virtuemart, Hikashop

    Commentaire


    • #17
      Re : media manager dans backend d'un composant

      Je ne me souviens plus précisement des soucis que j'avais rencontré mais, pour sûr, le majeur, c'était de récupérer le nom de l'image. Ce que tu indiques dans ton dernier post.
      Christophe (cavo789)
      Mon blog, on y parle Docker, PHP, WSL, Markdown et plein d'autres choses : https://www.avonture.be
      Logiciel gratuit de scan antivirus : https://github.com/cavo789/aesecure_quickscan (plus de 45.000 virus détectés, 700.000 fichiers sur liste blanche)​

      Commentaire


      • #18
        Re : media manager dans backend d'un composant

        j'ai trouvé mon erreur, je chargeais un js inutilement. Maintenant ça semble fonctionner, je ferai un retour de la méthode dès que possible dans un tuto, en attenant voici les étapes principales :
        on définit le modal
        Code PHP:
        JHTML::_('behavior.modal'); 
        dans la partie <script> de la vue
        Code PHP:
        function jInsertEditorTexttexteditor ) {
                        $(
        editor).value text;
                    } 
        fonction appélée lors du clic d'insertion, ici j'injecte la valeur (l'image) dans la balise HTML stockée dans la variable 'editor'

        dans le corps de la vue
        Code PHP:
        <class="modal" href="administrator/index.php?option=com_media&view=images&tmpl=component&e_name=test" rel="{handler: 'iframe', size: {x: 570, y: 400}}" >test</a>
        <
        input id="test" type="text" /> 
        je crée un lien pour lancer la lightbox modale qui ouvre le manager où e_name=test est la variable qui défini 'editor' et qui pointe vers mon input avec l'ID 'test'

        Et voilà je crois que c'est tout
        Vive Joomla! http://www.joomlack.fr Tutoriels et extensions pour Joomla!. Livre création de template Joomla de plus de 200 pages.
        http://www.template-creator.com Outil de création de templates
        Module Maximenu CK - Megamenu, multicolonnes, chargement de module, description de lien, deroulement animé - Compatible Virtuemart, Hikashop

        Commentaire


        • #19
          Re : media manager dans backend d'un composant

          PS : pour ne récupérer que le chemin de l'image on peut utiliser
          Code PHP:
          function jInsertEditorTexttexteditor ) {
                          var 
          newEl = new Element('span').setHTML(text);
                          var 
          valeur newEl.getChildren()[0].getAttribute('src');
                          $(
          editor).value valeur;
                      } 
          Vive Joomla! http://www.joomlack.fr Tutoriels et extensions pour Joomla!. Livre création de template Joomla de plus de 200 pages.
          http://www.template-creator.com Outil de création de templates
          Module Maximenu CK - Megamenu, multicolonnes, chargement de module, description de lien, deroulement animé - Compatible Virtuemart, Hikashop

          Commentaire


          • #20
            Re : media manager dans backend d'un composant

            Joli ! Fallait définir une fonction js alors ? Eh ben, ça, l'année passée je n'aurais pas su le faire (le saurais-je cette année-ci? )
            Christophe (cavo789)
            Mon blog, on y parle Docker, PHP, WSL, Markdown et plein d'autres choses : https://www.avonture.be
            Logiciel gratuit de scan antivirus : https://github.com/cavo789/aesecure_quickscan (plus de 45.000 virus détectés, 700.000 fichiers sur liste blanche)​

            Commentaire


            • #21
              Re : media manager dans backend d'un composant

              oui la fonction js permet d'effectuer l'action lors du clic sur 'insérer' dans la boite de dialogue. Tu récupères alors la cible et le contenu, il suffit de les traiter.
              Pour info ça fonctionne tout aussi bien sur Joomla 1.7, la fonction change juste un peu :
              Pour Joomla! 1.7
              Code PHP:
              function jInsertEditorTexttexteditor ) {
                              var 
              newEl = new Element('span').set('html',text);
                              var 
              valeur newEl.getChildren()[0].getAttribute('src');
                              $(
              editor).value valeur;
                          } 
              Vive Joomla! http://www.joomlack.fr Tutoriels et extensions pour Joomla!. Livre création de template Joomla de plus de 200 pages.
              http://www.template-creator.com Outil de création de templates
              Module Maximenu CK - Megamenu, multicolonnes, chargement de module, description de lien, deroulement animé - Compatible Virtuemart, Hikashop

              Commentaire

              Annonce

              Réduire
              Aucune annonce pour le moment.

              Partenaire de l'association

              Réduire

              Hébergeur Web PlanetHoster
              Travaille ...
              X