Annonce

Réduire
1 sur 2 < >

C'est [Réglé] et on n'en parle plus ?

A quoi ça sert ?
La mention [Réglé] permet aux visiteurs d'identifier rapidement les messages qui ont trouvé une solution.

Merci donc d'utiliser cette fonctionnalité afin de faciliter la navigation et la recherche d'informations de tous sur le forum.

Si vous deviez oublier de porter cette mention, nous nous permettrons de le faire à votre place... mais seulement une fois
Comment ajouter la mention [Réglé] à votre discussion ?
1 - Aller sur votre discussion et éditer votre premier message :


2 - Cliquer sur la liste déroulante Préfixe.

3 - Choisir le préfixe [Réglé].


4 - Et voilà… votre discussion est désormais identifiée comme réglée.

2 sur 2 < >

Assistance au forum - Outil de publication d'infos de votre site

Compatibilité: PHP 4.1,PHP4, 5, 6DEV MySQL 3.2 - 5.5 MySQLi from 4.1 ( @ >=PHP 4.4.9)

Support Version de Joomla! : | J!3.0 | J!2.5.xx | J!1.7.xx | J!1.6.xx | J1.5.xx | J!1.0.xx |

Version française (FR) D'autres versions sont disponibles depuis la version originale de FPA

UTILISER À VOS PROPRES RISQUES :
L'exactitude et l'exhaustivité de ce script ainsi que la documentation ne sont pas garanties et aucune responsabilité ne sera acceptée pour tout dommage, questions ou confusion provoquée par l'utilisation de ce script.

Problèmes connus :
FPA n'est actuellement pas compatible avec des sites Joomla qui ont eu leur fichier configuration.php déplacé en dehors du répertoire public_html.

Installation :

1. Téléchargez l'archive souhaitée : http://afuj.github.io/FPA/

Archive zip : https://github.com/AFUJ/FPA/zipball/master

2. Décompressez le fichier de package téléchargé sur votre propre ordinateur (à l'aide de WinZip ou d'un outil de décompression natif).

3. Lisez le fichier LISEZMOI inclus pour toutes les notes de versions spécifiques.

4. LIRE le fichier de documentation inclus pour obtenir des instructions d'utilisation détaillées.

5. Téléchargez le script fpa-fr.php à la racine de votre site Joomla!. C'est l'endroit que vous avez installé Joomla et ce n'est pas la racine principale de votre serveur. Voir les exemples ci-dessous.

6. Exécutez le script via votre navigateur en tapant: http:// www. votresite .com/ fpa-fr.php
et remplacer www. votresite .com par votre nom de domaine


Exemples:
Joomla! est installé dans votre répertoire web et vous avez installé la version française du fichier FPA:
Télécharger le script fpa-fr.php dans: /public_html/
Pour executer le script: http://www..com/fpa-fr.php

Joomla! est installé dans un sous-répertoire nommé "cms" et vous avez installé la version française du fichier FPA:
Télécharger le script fpa-fr.php dans: /public_html/cms/
Pour executer le script: http://www..com/cms/fpa-fr.php

En raison de la nature très sensible de l'information affichée par le script FPA, il doit être retiré immédiatement du serveur après son utilisation.

Pour supprimer le script de votre site, utilisez le lien de script de suppression fourni en haut de la page du script. Si le lien de suppression échoue pour supprimer le script, utilisez votre programme FTP pour le supprimer manuellement ou changer le nom une fois que le script a généré les données du site et le message publié sur le forum. Si le script est toujours présent sur le site, il peut être utilisé pour recueillir suffisamment d'informations pour pirater votre site. Le retrait du script empêche des étrangers de l'utiliser pour jeter un oeil à la façon dont votre site est structuré et de détecter les défauts qui peuvent être utilisé à vos dépends.
Voir plus
Voir moins

Appel aux classes Joomla! 4

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

  • Appel aux classes Joomla! 4

    Bonjour à tous,

    En testant la version 4.0 dev, je viens de m'apercevoir par exemple que les classes semblent maintenant exiger pour leur appel à un antislash pour ne pas avoir d'erreur.
    Par exemple,
    protected function addToolbar()
    {
    \JToolbarHelper::title(\JText::_('COM_ADMIN_HELP') , 'support help_header');
    }
    Si j'ai réussi ce matin à installer Joaktree sur une version 4, pour tests, impossible (idem pour JCE) d'accéder à la gestion avec un message d'erreur
    Class JToolbarHelper not found
    parce que le code est écrit sans antislash
    JToolBarHelper::title( JText::_( 'COM_JOAKTREE_CONTROL_PANEL' ), 'joaktree' );
    Apparemment, Joomla! 3.7 accepte déjà les deux syntaxes, mon projet est donc de voir, si jamais je décide de continuer à m'occuper de Joaktree, si ce changement peut déjà être appliqué à la version actuelle sans générer d'erreurs.

    La question est donc de savoir comment, dans des milliers de lignes de code, repérer toutes ces occurrences des diverses classes pour y ajouter cet antislash, puisqu'il semble maintenant indispensable. Autant une fois une erreur repérée, il est facile de faire une modification en masse par remplacement de la chaîne, autant je sèche quant à la manière de retrouver toutes les lignes à modifier.

    Comment procédez ou procéderiez-vous ?
    Merci de vos conseils,
    Robert
    "Patience et longueur de temps font plus que force ni que rage..." (La Fontaine : Le Lion et le Rat) - "Il n'y a pas de problèmes; il n'y a que des solutions" (André Gide). MoovJla et LazyDbBackup sur www.joomxtensions.com - FaQ sur www.fontanil.info hébergés chez PHPNET - +sites gérés chez 1and1 et OVH - Site pro : www.robertg-conseil.fr

  • #2
    Re : Appel aux classes Joomla! 4

    Problème après recherches ! Je viens de remarquer qu'en fait, ce n'est peut-être pas l'antislash, mais la casse du nom de la classe qui change, avec le b qui est parfois en majuscules, parfois en minuscules dans JToolbarHelper en version 3, et apparemment toujours en minuscules dans la 4.0 dev, ne supportant apparemment pas que cette lettre soit désormais en majuscule.

    Du coup, je me demande si l'antislash est devenu indispensable, car j'ai trouvé des "JToolbarHelper " sans "", dans le code de la version 4 !
    Dernière édition par RobertG à 13/06/2017, 11h21
    "Patience et longueur de temps font plus que force ni que rage..." (La Fontaine : Le Lion et le Rat) - "Il n'y a pas de problèmes; il n'y a que des solutions" (André Gide). MoovJla et LazyDbBackup sur www.joomxtensions.com - FaQ sur www.fontanil.info hébergés chez PHPNET - +sites gérés chez 1and1 et OVH - Site pro : www.robertg-conseil.fr

    Commentaire


    • #3
      Re : Appel aux classes Joomla! 4

      Bonjour Robert,

      Je viens de faire quelques tests Joomla 4.0 dev (datant d'hier)avec divers extensions/modules/plugins qui fonctionnent bien en 3.7.2 et je n'ai pas eu de soucis avec les appels aux classes : je n'utilise pas d'antislash.

      Je poursuis mes tests.

      A plus tard,

      Pascal

      PS: je n'ai pas vraiment trouvé de mode d'emploi contenant les différences au niveau du développement de composant/module en 4.0.
      If anything can go wrong, it will...
      If I can help, I will ..https://conseilgouz.com

      Commentaire


      • #4
        Re : Appel aux classes Joomla! 4

        J'ai testé le plugin LazyDbBackup PDO et le module LDBchecker sous 4.0 dev, sans le moindre problème.

        Par contre, si les composants JCE et Joaktree s'installent, je n'arrive pas à gérer JCE. En modifiant Joaktree au niveau du "B", la page principale s'affiche (de manière incorrecte car la bande de liens de menus que la version actuelle place à gauche se retrouve maintenant au-dessus et empilée, du fait des menus de la version 4 qui utilisent cet emplacement, d'autres erreurs apparaissent qu'il faudra que je traite.

        La question pour l'instant est de savoir si les modifications à faire pour la future 4 seront acceptées par la 3.7 ou seulement la 3.8 ou la 3.9, histoire que la migration se fasse sans douleur...
        "Patience et longueur de temps font plus que force ni que rage..." (La Fontaine : Le Lion et le Rat) - "Il n'y a pas de problèmes; il n'y a que des solutions" (André Gide). MoovJla et LazyDbBackup sur www.joomxtensions.com - FaQ sur www.fontanil.info hébergés chez PHPNET - +sites gérés chez 1and1 et OVH - Site pro : www.robertg-conseil.fr

        Commentaire


        • #5
          Re : Appel aux classes Joomla! 4

          Bonjour,

          Cet antislash devant le nom des classes cela s'appelle les espaces de nom (ou namespaces) : http://php.net/manual/fr/language.namespaces.php

          Les couches de comptabilité pour faciliter la migration des extensions vers Joomla! 4.0 seront présentes dans J!3.8 et 3.9, je ne crois pas qu'il y ait quelque chose dans la J!3.7

          Il y a pas mal de chose qui passe en deprecated (JRequest, JApplication...) : https://api.joomla.org/cms-3/deprecated.html

          Commentaire


          • #6
            Re : Appel aux classes Joomla! 4

            Merci de ces précisions.
            Par contre, si les noms de classes changent de casse et si JToolBarHelper n'est plus reconnu parce que ce n'est pas JToolbarHelper, idem pour d'autres, alors que ça ne pose pas de problème en 3.7 ou 3.8, ça va être coton !
            "Patience et longueur de temps font plus que force ni que rage..." (La Fontaine : Le Lion et le Rat) - "Il n'y a pas de problèmes; il n'y a que des solutions" (André Gide). MoovJla et LazyDbBackup sur www.joomxtensions.com - FaQ sur www.fontanil.info hébergés chez PHPNET - +sites gérés chez 1and1 et OVH - Site pro : www.robertg-conseil.fr

            Commentaire


            • #7
              Re : Appel aux classes Joomla! 4

              Salut Robert

              D'après ce que j'ai lu (et c'était très vaguement), les namespaces (espaces de nom) seront bien mieux utilisés avec J4.

              Pour Toolbar, ce sera donc ce fichier : https://github.com/joomla/joomla-cms...lbarHelper.php

              Et on voit bien

              Code PHP:
              namespace Joomla\CMS\Toolbar
              Qui définit que le fichier se trouve, au niveau du disque, dans le dossier Joomla puis CMS puis Toolbar. Ces noms sont sensibles à la casse vu qu'il s'agit de nom de dossiers / fichiers et qu'on est, à priori, sur un système Unix.

              Toutefois, au niveau de la programmation PHP, tu pourrais utiliser JToolbarHelper ou jtoolBarHELper sans différenciation car, en PHP, les noms ne sont pas sensibles à la casse. L'habitude du programmeur respectueux est de respecter la casse (notation Camel case https://fr.wikipedia.org/wiki/Camel_case) mais ce n'est pas une obligation.

              Pour l'antislash dont tu parles, c'est bien le \ et pas, comme tu l'as mis dans ton premier message ci-dessus la barre |.

              Les namespaces sont vraiment très pratique en programmation pour plusieurs raisons dont, entre autre,

              * La possibilité d'utiliser un autoloader (ce que fera J4)
              * L'isolation de ton code : tu pourrais avoir une fonction nommée JText, sans aucun souci, si tu le mets dans ton namespace (RobertG\JText). Ton namespace, c'est un peu ton tiroir : tu vas y mettre ton code sans qu'il y ait un conflit potentiel avec le JText de Joomla car ce serait, Joomla\JText (je simplifie).

              De ce que j'avais vaguement lu, il y aurait un outil de migration... Si je retombe sur l'article que j'avais survollé, je viendrais en poster l'URL ici.

              Bonne soirée.


              [Edit]
              Voici déjà un lien : https://joomla.digital-peak.com/imag...Joomla%204.pdf
              [/Edit]
              Christophe (cavo789)
              Développeur d'aeSecure; protection, optimisation et nettoyage (après hack) de sites web Apache https://www.aesecure.com/fr
              Développeur de marknotes, logiciel de gestion de prises de notes avec interface web et de multiples convertisseur https://github.com/cavo789/marknotes

              Venez rencontrer la communauté francophone à l'occasion du JoomlaDay 2018 qui se tiendra les 18 et 19 mai 2018. Plus d'infos sur https://www.joomladay.fr

              Commentaire


              • #8
                Re : Appel aux classes Joomla! 4

                Merci Christophe,
                C'est la citation qui a transformé l'antislash en barre verticale.
                Je vérifierai demain, mais je suis persuadé que la différence, avec apparition de l'erreur, s'est faite sur la casse.
                Quant à l'antislash, il n'est pas présent partout dans la version 4, pour l'instant.
                "Patience et longueur de temps font plus que force ni que rage..." (La Fontaine : Le Lion et le Rat) - "Il n'y a pas de problèmes; il n'y a que des solutions" (André Gide). MoovJla et LazyDbBackup sur www.joomxtensions.com - FaQ sur www.fontanil.info hébergés chez PHPNET - +sites gérés chez 1and1 et OVH - Site pro : www.robertg-conseil.fr

                Commentaire


                • #9
                  Re : Appel aux classes Joomla! 4

                  J'y repense.. Tu as peut-être raison : php n'est sensible mais bien le système de fichiers.

                  Le autoloader va prendre le nom du namespace (php) pour en dériver le nom du fichier (sous-dossiers compris) à charger pour trouver la casse. Donc oui il est possible que autoloader soit lui sensible à la casse.

                  Ce faisant tu aurais raison et moi aussi :-D
                  Christophe (cavo789)
                  Développeur d'aeSecure; protection, optimisation et nettoyage (après hack) de sites web Apache https://www.aesecure.com/fr
                  Développeur de marknotes, logiciel de gestion de prises de notes avec interface web et de multiples convertisseur https://github.com/cavo789/marknotes

                  Venez rencontrer la communauté francophone à l'occasion du JoomlaDay 2018 qui se tiendra les 18 et 19 mai 2018. Plus d'infos sur https://www.joomladay.fr

                  Commentaire


                  • #10
                    Re : Appel aux classes Joomla! 4

                    Donc pour résumer et si je comprends bien, dans un premier temps c'est surtout cette histoire de casse qui est à vérifier, l'antislash ne semblant donc pas indispensable.

                    Ceci dit, je me retrouve maintenant avec d'autres erreurs selon les pages de paramétrages de Joaktree, qu'il va me falloir comprendre (ou abandonner le projet...) :
                    Call to undefined method JoaktreeViewJt_applications::assignRef()
                    Dans le code de Joaktree, j'ai bien "class JoaktreeViewJt_applications extends JViewLegacy" mais je ne trouve pas JViewLegacy comme obsolète dans les pages d'incompatibilité 3 et 4. Cela voudrait-il dire que "assignRef" a disparu du nouveau code ? En fait non, car on trouve une fonction publique de ce nom dans la librairie fof (view/view.php), manifestement "deprecated" avec le commentaire "Use native PHP syntax"... Y'a du boulot en ce qui me concerne !
                    Ce qui est curieux pour moi, c'est qu'un "deprecated" interdise l'accès en disant que la méthode est non définie : parce qu'en lien avec JViewLegacy ?

                    Plus mystérieux :
                    'sql****_33.jpn.namePreposition' isn't in GROUP BY
                    Le nom de la base est correct, mais qu'est-ce que ce "jpn.namePreposition" qui devrait être dans le GROUP BY ? Je sèche.

                    PS : pour Assignref, je viens de trouver que c'est déjà "deprecated" (https://api.joomla.org/cms-3/classes/JViewLegacy.html), sans aucune explication sur par quoi remplacer, mais ce qui m'étonne, c'est que je n'ai jamais eu la moindre alerte sur cette méthode en mode de rapport d'erreur "développement" quand j'ai travaillé sur la mise à jour il y a six mois.
                    Dernière édition par RobertG à 14/06/2017, 10h16
                    "Patience et longueur de temps font plus que force ni que rage..." (La Fontaine : Le Lion et le Rat) - "Il n'y a pas de problèmes; il n'y a que des solutions" (André Gide). MoovJla et LazyDbBackup sur www.joomxtensions.com - FaQ sur www.fontanil.info hébergés chez PHPNET - +sites gérés chez 1and1 et OVH - Site pro : www.robertg-conseil.fr

                    Commentaire


                    • #11
                      Re : Appel aux classes Joomla! 4

                      J'ai trouvé ceci qui m'aide sur Assignref : http://macrotoneconsulting.co.uk/Com...oomla-3-0.html
                      Mais il est probable que d'autres modifications soient intervenues depuis.

                      Et ça doit être la chaleur , jpn.namePreposition est utilisé dans une requête de Joaktree. Reste à comprendre pourquoi Joomla! 4 exige que ce soit dans un "GROUP BY".
                      Dernière édition par RobertG à 14/06/2017, 11h20
                      "Patience et longueur de temps font plus que force ni que rage..." (La Fontaine : Le Lion et le Rat) - "Il n'y a pas de problèmes; il n'y a que des solutions" (André Gide). MoovJla et LazyDbBackup sur www.joomxtensions.com - FaQ sur www.fontanil.info hébergés chez PHPNET - +sites gérés chez 1and1 et OVH - Site pro : www.robertg-conseil.fr

                      Commentaire


                      • #12
                        Re : Appel aux classes Joomla! 4

                        salut
                        Cela voudrait-il dire que "assignRef" a disparu du nouveau code ?
                        depuis un bout de temps

                        ça devient tout simplement
                        Code:
                        $this->variable = 'toto';
                        pour ce qui est du Loader, mes recherches récentes semblent indiquer que la version actuelle possède déjà le JLoader qui permet de chercher les classes dans l'arborescence de fichier et les charger automatiquement. ET y a un systeme d'override qui permet de d'abord rechercher dans les endroits où on peut mettre des overrides, et éventuellement en ajoutant avec un includePath. Tout cela est encore un peu flou pour moi mais disons que l'idée est là

                        CEd
                        Ced
                        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


                        • #13
                          Re : Appel aux classes Joomla! 4

                          Oui, assignRef a disparu depuis un moment, mais ne génère aucune erreur sur les versions récentes (j'ai travaillé sur Joaktree en permanence avec le rapport d'erreurs à "développement", ça n'apparaît que sur ces tests en 4.0 dev.

                          J'ai pu corriger et supprimer ces erreurs, mais je pense qu'il va y avoir une belle cascade.
                          Par exemple sur la création d'une nouvelle source GedCom, J'ai une erreur 500 : "JHTML sliders not found" qui correspond à l'affichage de l'onglet "droits" et je n'ai pas trouvé pour le moment d'explications sur comment remplacer ce code.

                          J'ai aussi un Warning sur l'affichage d'une liste vide : la requête ne renvoie rien, donc j'ai des erreurs sur objet non défini, mais la même erreur survient si je gère (mal peut-être) le fait que le résultat est vide. Exemple sur la partie "else" :
                          $valid = $this->_db->loadResult();

                          if (!empty($valid)) {
                          $settings->valid = (int) $valid;
                          } else {
                          $settings->valid = 0;
                          }
                          Le message d'erreur est
                          Creating default object from empty value in /home/www/demos/test40/administrator/components/com_joaktree/models/jt_maps.php on line 213
                          Sans compter que je n'ai pas encore trouvé pourquoi le GROUP BY ne convient pas, comme je l'ai cité plus haut...
                          "Patience et longueur de temps font plus que force ni que rage..." (La Fontaine : Le Lion et le Rat) - "Il n'y a pas de problèmes; il n'y a que des solutions" (André Gide). MoovJla et LazyDbBackup sur www.joomxtensions.com - FaQ sur www.fontanil.info hébergés chez PHPNET - +sites gérés chez 1and1 et OVH - Site pro : www.robertg-conseil.fr

                          Commentaire


                          • #14
                            Bonsoir RobertG

                            Effectivement, cela semble s'annoncer plutôt mal pour Joaktree avec joomla 4. Certes, ce n'est pas pour demain, mais en ayant passé pas mal de temps à chercher une solution de remplacement, je n'ai malheureusement rien trouvé du niveau de Joaktree.

                            Commentaire


                            • #15
                              Hélas, l'auteur initial à qui j'ai envoyé en février dernier la version que j'avais modifiée ne m'a donné aucune nouvelle depuis. Et en effet, il n'y a aucune extension pour Joomla! qui puisse remplacer Joaktree. Le problème est que je suis loin d'être certain d'être capable de maintenir cette extension. Je comptais sur Niels !
                              J'espère quand même qu'on aura de nouveau une version de développement 4.0 à se mettre sous la dent, ses "nighty builds" n'étant pas disponibles depuis quelques temps.
                              "Patience et longueur de temps font plus que force ni que rage..." (La Fontaine : Le Lion et le Rat) - "Il n'y a pas de problèmes; il n'y a que des solutions" (André Gide). MoovJla et LazyDbBackup sur www.joomxtensions.com - FaQ sur www.fontanil.info hébergés chez PHPNET - +sites gérés chez 1and1 et OVH - Site pro : www.robertg-conseil.fr

                              Commentaire

                              Travaille ...
                              X