gestion des paramètres dans un composant

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

  • #16
    Re : gestion des paramètres dans un composant

    bonjour
    dans le doc joomla il y a ceci
    Code:
    1. Component-wide default parameters
    These are stored in the params field of the jos_components table, in the row corresponding to the particular component to which they apply.
    2. Menu item specific parameters
    These are stored in the params field of the jos_menu table, in the row corresponding to the particular menu item to which they apply.
    3. 'Article' specific parameters
    These are stored in a text field in the table created by the Component. Whilst there is no strict rule for naming the field, it is common to extend the above pattern using the params name. However, com_content stores article parameters in a field called attribs.
    est-ce que les tables de stockage des paramètres sont créées nativement par Joomla ?
    LJ
    mon avatar : http://www.ingall-niger.org

    Commentaire


    • #17
      Re : gestion des paramètres dans un composant

      Bonjour

      Comme je l'ai mentionné plus haut, les paramètres du composant; ceux de config.xml, sont stockés dans la table jos_components.

      Envoyé par cavo789 Voir le message
      La désinstallation du composant va supprimer son entrée dans la table jos_component or c'est là que Joomla va stocker les paramètres du composant; paramètres qui ont été définis dans le fichier config.xml.
      Va voir le champs nommé params.
      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 : gestion des paramètres dans un composant

        Ce que dis le point 1 est vrai:
        Le nom des paramètres et leurs valeurs sont incris dans la table 'jos_components', champ 'params', souvent le menu principal du composant ... bien sur, c'est à toi de gérer le formulaire backend pour 'setter' et enregistrer les params ...
        Joomla utilise donc ce champ nativement sauf si comme Cavo789, tu veux tout gérer à ta sauce dans des tables propres au composant.
        Developper of JBreeding Manager: http://www.jbreeding.fr/
        J-cook Referral : Service Générateur d'Extensions pour Joomla

        Commentaire


        • #19
          Re : gestion des paramètres dans un composant

          Envoyé par liubov Voir le message
          Joomla utilise donc ce champ nativement sauf si comme Cavo789, tu veux tout gérer à ta sauce dans des tables propres au composant.
          L'idée est d'être sauf en cas de désinstallation. Si ton utilisateur désinstalle le composant pour installer une nouvelle version; il perd toute sa config.
          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


          • #20
            Re : gestion des paramètres dans un composant

            => Oui, il y a perte de config en cas de désinstallation. (maintenant l'utilisateur doit savoir ce qu'il fait ! désintaller = supprimer, quand même! J'ajoute que dans le xml, il y a des valeurs par défaut.
            => pas de perte en cas d'upgrade (car les tables du composant existent déjà).
            Developper of JBreeding Manager: http://www.jbreeding.fr/
            J-cook Referral : Service Générateur d'Extensions pour Joomla

            Commentaire


            • #21
              Re : gestion des paramètres dans un composant

              Envoyé par laurent00 Voir le message
              donc je m'essaie au config.xml, j'ai ajouter le controller mais dans le default.php de ma vue comment est-ce que j'appelle tel ou tel paramètre ?
              ensuite avec le doc j'ai pas tout compris de la cascade pour appeler les param en frontend ...
              LJ
              Pour répondre également à ta question côté Frontend, tu appelles la function GetParams qui est dans la classe d'entrée du BackEnd.
              depuis view.html.php:
              Code PHP:
                      // Get the page/component configuration
                      
              $this->params =& Comjbreedm::getParams();
               
                
              // recup des params...
                
              $puppies_columns $this->params->get('puppies_columns'4);
                
              $puppies_height $this->params->get('puppies_height'200);
                
              $puppies_margin_px $this->params->get('puppies_margin_px'2);
               
                
              //Push data into the template
                
              $this->assignRef('puppies_columns',  $puppies_columns);
                
              $this->assignRef('puppies_height',  $puppies_height);
                
              $this->assignRef('puppies_margin_px'$puppies_margin_px); 
              puis tu récupères ces variables poussées dans tmpl/default ...
              Code PHP:
              <?php
              // no direct access
              defined('_JEXEC') or die('Restricted access'); 
              JHTML::stylesheet('filters.css''media/com_jbreedm/css/');
              $n count$this->chiotsdisp );
              $races =  $this->racenum  ;
              $puppies_columns $this->puppies_columns ;
              $puppies_height $this->puppies_height ;
              $puppies_margin_px $this->puppies_margin_px ;
              $mediabox $this->mediabox ;
              ?>
              <form action="index.php?option=com_jbreedm&view=puppies" method="post" name="FrontForm">
              <p style="font-family: Arial, Helvetica, sans-serif; font-size: 20px; color: #78a6bf;"> <?php 
              echo JText::_'PUPPIES_NAME' );?> :
              Developper of JBreeding Manager: http://www.jbreeding.fr/
              J-cook Referral : Service Générateur d'Extensions pour Joomla

              Commentaire


              • #22
                Re : gestion des paramètres dans un composant

                ok cavo je croyais lire jos_nomducomposant ...

                liubov merci pour les précisions ...

                LJ
                Dernière édition par laurent00 à 12/09/2011, 12h40
                mon avatar : http://www.ingall-niger.org

                Commentaire


                • #23
                  Re : gestion des paramètres dans un composant

                  Envoyé par liubov Voir le message
                  En entrée, j'ai une classe avec des fonction Utiles ...
                  jbreedm.class.php

                  Code PHP:
                  <?php
                  class Comjbreedm
                  {
                   function &
                  getParams()
                      {
                    static 
                  $instance;
                   
                    if ( !
                  is_object($instance) ) {
                   
                        
                  $instance =& JComponentHelper::getParams('com_jbreedm');
                   
                  ...
                   
                    }
                  est-ce que je dois bien créer un fichier nom.class.php et le mettre à la racine de mon répertoire ?
                  merci LJ
                  mon avatar : http://www.ingall-niger.org

                  Commentaire


                  • #24
                    Re : gestion des paramètres dans un composant

                    j'ai cette erreur
                    Fatal error: Class 'Comobjectifcarbone' not found in /mnt/159/sdd/e/a/batenergie/administrator/components/com_objectifcarbone/views/config/view.html.php on line 16

                    line16= $this->form =& Comobjectifcarbone::getParams();

                    LJ
                    mon avatar : http://www.ingall-niger.org

                    Commentaire


                    • #25
                      Re : gestion des paramètres dans un composant

                      J'ai compris ces mécanismes en dépiotant pas mal de composants MVC . (JEA, SportingEvents, etc, ). C'est ce que je te conseille de faire pour comprendre les processus Backend et Frontend. Vu que tu es parti sur mon code, tu peux t'inspirer de JBreeding ou autre, tu gagneras ton temps ...
                      Marc.
                      Dernière édition par liubov à 17/09/2011, 17h23
                      Developper of JBreeding Manager: http://www.jbreeding.fr/
                      J-cook Referral : Service Générateur d'Extensions pour Joomla

                      Commentaire


                      • #26
                        Re : gestion des paramètres dans un composant

                        oui merci je vais aussi reprendre mes bidouilles à zéro ...

                        LJ
                        mon avatar : http://www.ingall-niger.org

                        Commentaire


                        • #27
                          Re : gestion des paramètres dans un composant

                          bonsoir
                          j'ai repris un peu tout cela mais j'ai toujours la même erreur
                          je crois qu'il ne trouve pas le fichier /objectifcarbone.class.php ou il y a la class Comobjectifcarbone ...
                          ...
                          LJ
                          mon avatar : http://www.ingall-niger.org

                          Commentaire


                          • #28
                            Re : gestion des paramètres dans un composant

                            As tu downloadé JBM pour suivre le process de lecture des params -> depuis la view vers le tmpl ?

                            As tu fais un require de la classe depuis ton fichier d'entrée. Celle étant chargée, tu pourras l'appeler de n'importe ou après avec Comobectifcarbone::getParams();
                            Code PHP:
                            <?php
                            // no direct access
                             
                            defined('_JEXEC') or die('Restricted access');
                             
                             
                            // Require the base controller
                             
                            require_once (JPATH_COMPONENT.DS.'controller.php');
                             
                             
                            // Require specific controller if requested
                             
                            if($controller JRequest::getVar('controller')) {
                                 require_once (
                            JPATH_COMPONENT.DS.'controllers'.DS.$controller.'.php');
                             }
                             
                            require 
                            JPATH_COMPONENT_ADMINISTRATOR.DS.'objectifcarbone.class.php' ;
                             
                             
                            // Create the controller
                             
                            $classname    'objectifcarboneController'.$controller;
                             
                            $controller = new $classname( );
                             
                             
                            // Perform the Request task
                             
                            $controller->executeJRequest::getVar('task'));
                             
                             
                            // Redirect if set by the controller
                             
                            $controller->redirect();
                            Note que cette classe est à la racine du Comp, mais côté Admin ...
                            Dernière édition par liubov à 17/09/2011, 17h52
                            Developper of JBreeding Manager: http://www.jbreeding.fr/
                            J-cook Referral : Service Générateur d'Extensions pour Joomla

                            Commentaire


                            • #29
                              Re : gestion des paramètres dans un composant

                              ok je n'avais effectivement pas intégrer
                              require JPATH_COMPONENT_ADMINISTRATOR.DS.'objectifcarbone. class.php' ;
                              dans le fichier entrée

                              merci LJ
                              mon avatar : http://www.ingall-niger.org

                              Commentaire


                              • #30
                                Re : gestion des paramètres dans un composant

                                bonjour
                                je vous livre ce package car je ne sais plus ou j'en suis ...
                                je souhaite que la vue config backend affiche les paramètres $x_label et les sauvegarde
                                puis que ces paramètres soient appelés dans la vue profil en frontend ...

                                merci d'un coupe de main destiné à ne pas tout jeter ..

                                LJ

                                objectifcarboneTest.zip
                                mon avatar : http://www.ingall-niger.org

                                Commentaire

                                Annonce

                                Réduire
                                Aucune annonce pour le moment.

                                Partenaire de l'association

                                Réduire

                                Hébergeur Web PlanetHoster
                                Travaille ...
                                X