Largeur automatique des plugins

Réduire
Ce sujet est fermé.
X
X
 
  • Filtrer
  • Heure
  • Afficher
Tout effacer
nouveaux messages

  • [RÉGLÉ] Largeur automatique des plugins

    Bonjour

    Etat des lieux
    Je suis sous Joomla 3.0.3.
    J'ai installé le plugin "JSmallfib" afin d'avoir un explorateur de fichier en frontend.
    J'ai donné la possibilité à mes visiteurs de modifier le template par défaut et d'en choisir un autre par le module "Template Selector". La présentation générale de mon site peut donc changer et en particulier la largeur disponible pour afficher les articles.

    Problème
    Certaines extensions, dont le plugin "JSmallfib", ont un paramètre indiquant la largeur d'affichage de leurs informations.
    Certaines acceptent la valeur "100%", ce qui est très bien car l'affichage s'adapte automatiquement à la largeur du conteneur, mais d'autres n'acceptent uniquement qu'une valeur fixe en "px" , donc une largeur invariable.

    Question
    J'aimerai pourvoir récupérer la largeur de la zone contenant les articles par programmation au début de l'article afin de modifier également par programmation dans l'article la largeur par défaut indiqué en backend.

    Actuellement, j'indique {jsmallfib width:400} dans l'article ou tout simplement {jsmallfib}
    J'aimerai avoir quelque chose du genre :

    programmation pour récupérer la largeur larg=xxx ...
    <php>
    echo "{jsmallfib width:" . larg . "}";
    </php>


    Je ne sais pas si je me suis bien fait comprendre...
    J'imagine qu'il faut utiliser les API de Joomla, mais comment et quelle(s) instruction(s) ?
    Merci à tous pour vos idées.
    Jean-Marie
    Le peu que je sais et occulté par le trop que je ne sais pas...
    (http://jmgi.fr)

  • #2
    Re : Largeur automatique des plugins

    Bonsoir,

    Il faut regarder le code produit pour voir s'il est possible de mettre un code css plus qualifiant pour annuler la dimension en px

    Sinon, il faut bricoler dans le code du plugin pour lui faire écrire ce qui vous convient
    UP, le plugin universel à découvrir sur https//up.lomart.fr
    bgMax
    , AdminOrder, MetaData, Zoom, ArtPlug, Custom, Memo, Filter, ... sur http://lomart.fr/extensions

    Commentaire


    • #3
      Re : Largeur automatique des plugins

      Bonjour Iomart (plutôt bonsoir...)

      Le plugin permet d'indiquer dans l'article la largeur d'affichage exemple : {jsmallfib width:500 }
      Mon idée de départ est donc de déterminer la valeur "500" qui correspond à la largeur disponible à ce moment là pour l'article...

      Modifier un composant quel qu'il soit ne me plait guère car la moindre mise à jour risque de me faire perdre les modifications alors que l'article restera indépendant.

      Je peux essayer de trouver l'endroit exact de définition de la largeur dans le code du plugin mais bon ! je préfèrerai trouver des instructions de manipulation des API de Joomla (c'est en plus assez formateur). Un petit javascript par exemple non ? ...

      Jean-Marie
      Le peu que je sais et occulté par le trop que je ne sais pas...
      (http://jmgi.fr)

      Commentaire


      • #4
        Re : Largeur automatique des plugins

        Bonjour,

        Perso, je réglerais un problème de css avec du css
        Il faut augmenter la priorité de ta règle css
        Si la définition de largeur est dans un attribut style d'une balise X dans une classe Y, il faut ajouter une règle css .Y X[style] {width:50%}
        A adapter bien sur en ajoutant !important ou d'autres classes et id dans la règle
        Et en cas de mise à jour, pas de souci: t'es chez toi !
        UP, le plugin universel à découvrir sur https//up.lomart.fr
        bgMax
        , AdminOrder, MetaData, Zoom, ArtPlug, Custom, Memo, Filter, ... sur http://lomart.fr/extensions

        Commentaire


        • #5
          Re : Largeur automatique des plugins

          Bonjour Iomart
          Bien, ta solution me semble en effet valable en tout cas envisageable et raisonnable côté investissement de développement et sécurité.
          Je n'ai jamais effectué ce type de modification alors si j'ai bien compris :
          1) Je dois trouver dans le plugin la classe associée à la définition de la largeur d'affichage (un "petit" boulot mais je vais essayer d'y arriver tout seul...)
          2) Je dois créer dans un fichier CSS quelque part la re-définition de cette classe en modifiant uniquement la notion de largeur. Par contre ici quelques questions :
          2.1) Dans quel fichier CSS dois-je écrire ces instructions ? Ceci m'intéresse car j'ai d'autres plugins qui m'embêtent également et j'aimerai regrouper toutes mes spécificités dans un seul fichier unique si possible
          2.2) Si je change de Template, j'imagine que mes modifications resteront car elles seront associées à Joomla et non au Template (question pour m'assurer de la validité de la solution et du bon fichier modifié)
          2.3) Si j'effectue une mise à jour de Joomla, par exemple en 3.0.4 ou plus d'ici quelques jours j'imagine qu'il faudra peut-être remettre le fichier CSS de modification ?
          Merci d'avance pour ces précisions. Je vais d'ici là chercher la classe utilisée pour l'affichage général de ce plugin... Allez ! Courage !
          Jean-Marie
          Le peu que je sais et occulté par le trop que je ne sais pas...
          (http://jmgi.fr)

          Commentaire


          • #6
            Re : Largeur automatique des plugins

            Résultat de mes investigations actuelle avec le plugin "jsmallfib"...
            Lorsque je modifie le paramètre de largeur par l'administration du plugin, le résultat se modifie correctement dans le frontend mais aucun fichier ne se modifie dans la racine du site ni dans les sous-dossiers... C'est incompréhensible !
            J'ai modifié le paramètre de Joomla pour ne pas utiliser de cache...
            J'ai supprimé les caches de Joomla par l'administration...
            J'ai supprimé le cache du navigateur Firefox...
            Je me suis déconnecté du backend... et du frontend...
            Rien n'y fait ! aucun fichier modifié à la date et heure de modification des paramètre du plugin et pourtant les modifications sont prises en compte
            Les paramètres du plugin sont peut-être stockés ailleurs... Peut-être dans la base de données...

            Je recherche donc une instruction SQL me permettant d'extraire toutes les données de toutes les tables ayant été modifiées à partir d'une certaine date et une certaine heure. Si vous avez une solution, je suis preneur

            PS : j'ai modifié une autre information dans le backend du site pour m'assurer que je rechais bien dans le bon dossier du site... J'ai bien retrouvé le fichier modifié au bon endroit. Je ne me trompe donc pas de dossier.

            Jean-Marie
            Le peu que je sais et occulté par le trop que je ne sais pas...
            (http://jmgi.fr)

            Commentaire


            • #7
              Re : Largeur automatique des plugins

              Analyse de la base de données
              Je n'ai pas trouvé l'instruction SQL (voir post précédent) mais par une autre méthode j'ai réussi à avancer.
              J'ai effectué un export de l'ensemble de la base de données puis ai effectué une recherche de la chaine correspondant à la largeur que j'avais indiquée dans le paramètre (ici "397").

              Et j'ai trouvé ! Voici l'instruction SQL :
              INSERT INTO `tst30_extensions` (`extension_id`, `name`, `type`, `element`, `folder`, `client_id`, `enabled`, `access`, `protected`, `manifest_cache`, `params`, `custom_data`, `system_data`, `checked_out`, `checked_out_time`, `ordering`, `state`) VALUES
              (10063, 'PLG_JSMALLFIB_TITLE', 'plugin', 'jsmallfib', 'content', 0, 1, 1, 0, '{"name":"PLG_JSMALLFIB_TITLE","type":"plugin","cr eationDate":"March 2012","author":"Enrico Sandoli","copyright":"Copyright (c) 2009-2013 Enrico Sandoli. All rights reserved.","authorEmail":"","authorUrl":"http:\\/\\/www.smallerik.com","version":"1.3.4","description" :"PLG_JSMALLFIB_DESC","group":""}', '{"default_path":"aaa_Personnel\\/Documents_Publics","is_path_relative":"1","default _path_override_enabled":"0","default_visitor_acces s_rights":"0","default_reguser_access_rights":"5", "userbound_prefix":"Personal area for user ID","userbound_prefix_use":"1","userbound_paramete r":"2","userbound_suffix":"","default_personal_acc ess_rights":"5","groupbound_prefix":"Shared area for group ID","groupbound_prefix_use":"1","groupbound_parame ter":"0","groupbound_suffix":"","default_group_acc ess_rights":"5","pick_usergroup_lowest_rights":"1" ,"unzip_allow":"1","allow_file_archiving":"1","fil ter_list_allow":"1","hidden_files":".htaccess, .ftpquota, *.php, index.html","hidden_folders":"","encode_to_utf8":" 1","is_direct_link_to_files":"0","display_currentd irectory":"1","show_help_link":"1","allow_upload_b ox_hiding":"1","thumbsize":"60","display_filesize" :"1","filesize_separator":".","display_filedate":" 1","date_format":"dd_mm_yyyy_slashsep","display_fi letime":"1","display_seconds":"1","default_sort_by ":"name","default_sort_as":"asc","default_sort_nat ":"1","table_width":"397","box_distance":"10","header_bgcolor":"FFFFFF","mi n_row_height":"40","highlighted_color":"FFD","oddr ows_color":"F9F9F9","evenrows_color":"FFFFFF","fra mebox_bgcolor":"FFFFFF","framebox_linecolor":"CDD2 D6","framebox_border":"1","framebox_linetype":"sol id","line_bgcolor":"CDD2D6","line_height":"1","upl oadbox_bgcolor":"FFFFFF","uploadbox_linecolor":"CD D2D6","uploadbox_border":"1","uploadbox_linetype": "solid","inputbox_bgcolor":"FFFFFF","inputbox_line color":"CDD2D6","inputbox_border":"1","inputbox_li netype":"solid","errorbox_bgcolor":"FFE4E1","error box_linecolor":"F8A097","errorbox_border":"1","err orbox_linetype":"solid","successbox_bgcolor":"E7F6 DC","successbox_linecolor":"66B42D","successbox_bo rder":"1","successbox_linetype":"solid","log_uploa ds":"0","log_downloads":"0","log_removedfolders":" 0","log_removedfiles":"0","log_restoredfiles":"0", "log_newfolders":"0","log_newfoldernames":"0","log _newfilenames":"0","log_unzippedfiles":"0","log_hi ghlighted_color":"FF6600","log_email_from":"Gestio n de fichiers du site","log_email_from_string":"Administrateur jsmallfib","log_email_to":"siteweb@jmgi.fr","log_e mail_subject":"Gestion de fichiers du site","default_file_chmod":"0664","default_dir_chm od":"0775","DEBUG_enabled":"0"}', '', '', 0, '0000-00-00 00:00:00', 0, 0),


              Conclusion
              Le plugin "jsmallfib" stocke ses paramètres dans la base de données et construit le CSS au moment de la construction de la page d'affichage.

              Il est donc impossible de modifier la largeur de ce plugin directement dans un fichier CSS, mais il faudrait le faire :
              - soit directement dans la base ce qui me semble un peu "osé" et de toute façon inutile car les paramètre du backend sont directement écrits dans la base.
              - soit dans le script php du plugin qui va rechercher les para mètres dans la base et le forcer à avoir une valeur particulière.
              - soit la solution de Iomart, c'est à dire écraser la construction CSS du plugin par un autre fichier CSS de plus grande priorité

              Analyse CSS par Firebug
              L'objet correspondant à l'affichage est définit par :
              #JS_MAIN_DIV {
              background-color: transparent;
              border: 0 none;
              margin: 0 auto;
              padding: 0;
              width: 397px;
              }
              Comment définir la largeur (par exemple width:100%) de cette classe et dans quel fichier Joomla pour écraser systématiquement la valeur définie dans les paramètres du plugin ?
              Merci
              Jean-Marie
              Le peu que je sais et occulté par le trop que je ne sais pas...
              (http://jmgi.fr)

              Commentaire


              • #8
                Re : Largeur automatique des plugins

                Bonsoir,

                Il suffit dans le fichier css du template, d'ajouter la règle suivante:
                #JS_MAIN_DIV {width:100% !important}
                si besoin ajouter les classes parentes au début pour augmenter la priorité
                UP, le plugin universel à découvrir sur https//up.lomart.fr
                bgMax
                , AdminOrder, MetaData, Zoom, ArtPlug, Custom, Memo, Filter, ... sur http://lomart.fr/extensions

                Commentaire


                • #9
                  Re : Largeur automatique des plugins

                  Bonjour,

                  Je complète mon (ancienne) réponse précédente pour mettre le code complet à ajouter dans les CSS
                  #JS_MAIN_DIV, #JS_TOP_DIV, #JS_FILES_DIV, #JS_BOTTOM_DIV, #JS_ACTIONS_DIV {
                  width:100% !important
                  }

                  Pour info, la version Pro qui fonctionne parfaitement avec Joomla 3.2 est actuellement offerte


                  Si quelqu'un a traduit complètement la version française, je suis preneur.
                  Sinon, j'ai commencé à compléter la traduction, mais je ne suis pas contre de l'aide pour traduire et/ou relire
                  UP, le plugin universel à découvrir sur https//up.lomart.fr
                  bgMax
                  , AdminOrder, MetaData, Zoom, ArtPlug, Custom, Memo, Filter, ... sur http://lomart.fr/extensions

                  Commentaire


                  • #10
                    Re : Largeur automatique des plugins

                    Bonjour
                    Je reviens également sur ce sujet pur vous indiquer une solution très simple.
                    Il suffit en fait d'indiquer "width:100%" dans le paramètre "Largeur de l'affichage principal" du plugin (onglet "Look & Feel Settings").
                    Ce n'est pas indiqué dans la bulle d'aide lorsque souris se place sur le libellé "Largeur de l'affichage principal" car on ne parle que de pixels. En fait, l'utilisation du pourcentage est possible mail il faut absolument indiquer "width:100%", indiquer "100%" ne fonctionne pas.
                    Comme quoi, après quelque fois des heure de recherche, une solution de qq secondes suffit...
                    Jean-Marie
                    Dernière édition par jmgroud à 01/12/2013, 09h48 Raison: Fautes de frappe
                    Le peu que je sais et occulté par le trop que je ne sais pas...
                    (http://jmgi.fr)

                    Commentaire

                    Annonce

                    Réduire
                    Aucune annonce pour le moment.

                    Partenaire de l'association

                    Réduire

                    Hébergeur Web PlanetHoster
                    Travaille ...
                    X