Récemment
-
Des modules et des hacks - liste non exhaustive des modules présentant un risque
Discussion générale17 -
Thème enfant
PhenixSuite16 -
SumUp Payments Constant Update Request
Modules2 -
PaypalAPI erreur
PhenixSuite53 -
Problèmes de prix avec plusieurs devises et PayPal
PhenixSuite6 -
Solutions de paiement...
Discussion générale5 -
Petit code pour les descriptions de produits
Discussion générale3 -
Feuilles de styles non chargées si smart cache activé [RÉSOLU]
PhenixSuite5 -
PayPal Module Error
Bugs & Améliorations2 -
Transient Bug after 1.6.2.31 Upgrade
Bugs & Améliorations2 -
blockcategory et left_column
BUG connus1 -
[REGLÉ] override - je n'y arrive pas.
Modules10 -
les routes sur mesures
Discussion générale6 -
Nouvelle attaque ?
Discussion générale11 -
Problème calcul HT
Bugs & Améliorations42 -
Erreur sur facture générée depuis le FO
PhenixSuite3 -
Factures ne se génèrent plus depuis 06/12 [RÉSOLU]
Bugs & Améliorations20 -
Edition en masse des déclinaisons
Nouvelles fonctionnalités4 -
Mise à niveau de Prestashop 1.6.24 vers PhenixSuite 1.6.30
Discussion générale2 -
Thème possible
Questions relatives à l'installation/upgrade2
[1.6.0.5]+ Reference error: $ is undefined dans le BackOffice
-
Lorsqu'un module injecte un js dépendant de jQuery au travers de $this->context-controller->addJS() celui-ci est chargé dans la page bien avant que les dépendances jQuery existent.
Le bug est lié à l'AdminController qui appelle le hookBackOfficeHeader avant d'avoir appelé $this->setMedia
Pour corriger, changer dans classes/controller/Controller.php
public function init() { if (_PS_MODE_DEV_ && $this->controller_type == 'admin') { set_error_handler(array(__CLASS__, 'myErrorHandler')); } if (!defined('_PS_BASE_URL_')) { define('_PS_BASE_URL_', Tools::getShopDomain(true)); } if (!defined('_PS_BASE_URL_SSL_')) { define('_PS_BASE_URL_SSL_', Tools::getShopDomainSsl(true)); } }
par
public function init() { if (_PS_MODE_DEV_ && $this->controller_type == 'admin') { set_error_handler(array(__CLASS__, 'myErrorHandler')); } if (!defined('_PS_BASE_URL_')) { define('_PS_BASE_URL_', Tools::getShopDomain(true)); } if (!defined('_PS_BASE_URL_SSL_')) { define('_PS_BASE_URL_SSL_', Tools::getShopDomainSsl(true)); } if ($this instanceof AdminController) { $this->setMedia(); } }
-
Le code à corriger a été changé afin de ne pas interférer avec certains contrôleurs (Category avec les scènes activés par exemple), qui implémentent du code dans setMedia() pour lequel init() doit avoir été exécuté au préalable (Product::initPricesComputation())