Jump to content

Css non chargé sur PS 1.4 et 1.5


pppplus

Recommended Posts

Bonjour à tous

 

J'ai un problème tout bête je pense, mais je ne trouve pas la solution !

 

Je viens de réécrire un module avec la structure pour PS 1.6

J'ai un problème avec le CSS qui ne se charge pas sur PS 1.5 et 1.4

 

J'ai mis le dossier backward compatibility, et donc le module fonctionne techniquement correctement.

 

Par contre, les fichiers css sont absent sur les versions avant 1.6 (et bien présent en 1.6+)

    public function hookBackOfficeHeader()
    {
        if (Tools::getValue('configure') == $this->name) {
            $this->context->controller->addJS($this->_path . 'views/js/back.js');
            $this->context->controller->addCSS($this->_path . 'views/css/back.css');
            if (version_compare(_PS_VERSION_, '1.6.0.0') < 0) {
                $this->context->controller->addCSS($this->_path . 'views/css/back_less_PS16.css');
                echo $this->_path . 'views/css/back_less_PS16.css';
            }
        }
    }

La fonction hookBackOfficeHeader est bien chargée, car si je fais un

echo $this->_path . 'views/css/back_less_PS16.css'; (idem pour le fichier back.css, donc ce n'est pas le if compare qui déconne)

Le texte s'affiche avec le bon chemin.

 

(idem pour les fichiers .js)

 

 

Donc, soit j'ai loupé une étape, soit le 'backward compatibility' ne fait pas le job pour charger les .js et .css.

 

Merci d'avance pour votre aide !

 

PS : les traductions PS 1.6 ne passent pas sur PS 1.4 ?
Faut-il les refaire, ou il y a une petite astuce ?

Edited by pppplus (see edit history)
Link to comment
Share on other sites

Merci coeos.pro

 

Mais justement backward compatibility est fait pour gérer cela !

Et ça fait très bien le job, pour tous les "context"

Ca évite d'écrire 50000 instructions différentes en fonction des versions PS.

 

Dans la doc, il est bien expliqué aussi que ça prend en charge les chargements JS et CSS

 

Donc, je pense que j'ai loupé qq chose, mais je n'arrive pas à voir quoi.

Link to comment
Share on other sites

ok ça créé un "pseudo" context mais $this->context->controller->addCSS appelle la fonction addCSS qui est dans classes/controller/FrontController.php et pour le backward c'est dans le fichier backward_compatilbility/Context.php, il faudrait essayer $this->context->addCSS($this->_path . 'views/css/back_less_PS16.css');

Edited by coeos.pro (see edit history)
Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...