Jump to content

[Résolu] Bug "..." is deprecated


Recommended Posts

Bonjour à tous!

 

Un autre bug qui est apparu depuis quelques jours, dans le BO, sans que ça ne soit très dérangeant. Par contre là il apparaît dans le FO, sur un module de paiement:

 

Warning: File /home/www/footer.php is deprecated
in /home/www/classes/Tools.php on line 1845

 

J'ai beau chercher, je ne comprends pas quel est le souci, qu'est-ce que cela veut dire...

 

Si une âme charitable veut bien m'aider..

 

Merci d'avance :)

Edited by Agnès31 (see edit history)
Link to comment
Share on other sites

Bonjour,

 

merci de préciser

1- la version de prestashop

2- si le problème est apparu suite à l'installation, la mise à jour la modification d'un module ou de prestashop

3- vous avez un override pour tools ? sinon peut on avoir la ligne 1845 et les environs

Link to comment
Share on other sites

Bonjour,

 

Merci de votre réponse.

Je travaille sur PS 1.5.4.1. Ces bugs sont en effet apparus alors que nous venons d'installer le module (payant) CM-CIC.

Je n'ai pas d'override pour tools, et voici les lignes demandées:

    /**
     * Display a warning message indicating that the parameter is deprecated
     */
    public static function displayParameterAsDeprecated($parameter)
    {
        $backtrace = debug_backtrace();
        $callee = next($backtrace);
        $error = 'Parameter <b>'.$parameter.'</b> in function <b>'.$callee['function'].'()</b> is deprecated in <b>'.$callee['file'].'</b> on line <b>'.$callee['Line'].'</b><br />';
        $message = 'The parameter '.$parameter.' in function '.$callee['function'].' (Line '.$callee['Line'].') is deprecated and will be removed in the next major version.';
        $class = isset($callee['class']) ? $callee['class'] : null;

        Tools::throwDeprecated($error, $message, $class);
    }

    public static function displayFileAsDeprecated()
    {
        $backtrace = debug_backtrace();
        $callee = current($backtrace);
        $error = 'File <b>'.$callee['file'].'</b> is deprecated<br />';
        $message = 'The file '.$callee['file'].' is deprecated and will be removed in the next major version.';
        $class = isset($callee['class']) ? $callee['class'] : null;
        
        Tools::throwDeprecated($error, $message, $class);
    }

    protected static function throwDeprecated($error, $message, $class)
    {
        if (_PS_DISPLAY_COMPATIBILITY_WARNING_)
        {
            trigger_error($error, E_USER_WARNING);
            Logger::addLog($message, 3, $class);
        }
    }

    public static function enableCache($level = 1, Context $context = null)
    {
        if (!$context)
            $context = Context::getContext();
        $smarty = $context->smarty;
        if (!Configuration::get('PS_SMARTY_CACHE'))
            return;
        if ($smarty->force_compile == 0 && $smarty->caching == $level)
            return;
        self::$_forceCompile = (int)$smarty->force_compile;
        self::$_caching = (int)$smarty->caching;
        $smarty->force_compile = 0;
        $smarty->caching = (int)$level;
        $smarty->cache_lifetime = 31536000; // 1 Year
    }
Link to comment
Share on other sites

Bonjour,

 

De ce que je comprends vous avez le mis le _PS_MODE_DEV_ à true en production ? ce qui passe _PS_DISPLAY_COMPATIBILITY_WARNING_ à true.

 

Dépréciée mais cela marche encore, c'est tout. C'est juste un avertissement, soit vous passez _PS_MODE_DEV_ à false, soit _PS_DISPLAY_COMPATIBILITY_WARNING_ à false dans /config/defines.inc.php

 

Cordialement

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...