Jump to content

PS 1.5.2 : surcharge template admin & traduction


Recommended Posts

Bonjour,

 

 

Je cherche à personnaliser la page de création de commande sur le back-office. J'ai donc surchargé le fichier :

/admin/themes/default/template/controllers/orders/form.tpl

en le copiant dans :

/override/controllers/admin/templates/orders/form.tpl

 

La surcharge est bien prise en compte mais les traductions ne sont pas faites. Je vois bien apparaître des nouvelles étiquettes à traduire, mais on dirait que la fonction de traduction n'est pas appelée.

 

Quelqu'un aurait une idée ?

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

  • 3 weeks later...
  • 1 month later...

Hello,

 

C'est en effet un bug, il faut modifier le fichier /config/smartyadmin.config.inc.php en ajoutant les lignes suivantes :

 

En dessous de la ligne 58 :

$key = array_search('controllers', $folder_tree);

 

Il faut ajouter :

if ($key === false) {
 $override = $smarty->properties['file_dependency'][$smarty->source->uid][0];
 $folder_tree = preg_split('#[/\\\]#', $override);
 if (strpos($override, 'home') > 0)
   $key = array_search('templates', $folder_tree);
 else
   $key = array_search('controllers', $folder_tree);    
}

 

Et le tour (semble) joué !

 

Merci de me donner votre feedback pour s'assurer que cette modification fonctionne complètement (je ne l'ai pas testée sur toutes les sections de l'admin, mais seulement sur "home" et "produits".

 

Cordialement,

 

Serge Berney

Kin SA - www.kinsa.ch

Edited by [email protected] (see edit history)
Link to comment
Share on other sites

  • 1 year later...

Sur la version 1.5.4.1 cette correction ne fonctionne pas, voici ce que je propose : 

 

Remplacer les lignes

$folder_tree = preg_split('#[/\\\]#', $filename)
$key = array_search('controllers', $folder_tree);
 

Par celles ci (qui incluent les originales) :

        // facultatif en cas d'absence de bug : évite un bug où deux slash se suivent et crée un répertoire vide
        $filename = str_replace('//', '/', $filename);
 
        // Split by \ and / to get the folder tree for the file
        $folder_tree = preg_split('#[/\\\]#', $filename);
        $overrideKey = array_search('override', $folder_tree);
 
        // sélectionne le bon controller après le répertoire "templates" ou "controllers" selon si on est dans override ou non
        if ($overrideKey === false) {
            $key = array_search('controllers', $folder_tree);
        } else {
            $key = array_search('templates', $folder_tree);
        }
Edited by XIV-V (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...