jpsdj01 Posted July 20, 2016 Share Posted July 20, 2016 Bonjour à tous, j'ai modifier une fonction d'un class d'un module et j'essaie en vain de mettre en place un overide, j'ai suivi les instructions mais la modification n'est pas prise en compte. Voici ce que j'ai fait: 1. création d'un dossier 'Loyalty' (nom du module ou se trouve la class) dans ../overide/modules/ 2. Dans le dossier 'Loyalty', création d'un fichier PHP nommé LoyaltyModule.PHP (nom de la class d'origine) 3. Dans ce fichier PHP, j'ai inséré le code suivant: <?php if (!defined('_CAN_LOAD_FILES_')) exit; class LoyaltyModuleOverride extends LoyaltyModule { public static function getVoucherValue($nbPoints, $id_currency = NULL) { $currency = $id_currency ? new Currency($id_currency) : Context::getContext()->currency->id; // Arrondi au 0.5 superieur le montant des points convertis $newValue = (floor(((int)$nbPoints * (float)Tools::convertPrice(Configuration::get('PS_LOYALTY_POINT_VALUE'), $currency) * 2) ) / 2) ; $testStr = explode(".", $newValue); if ($testStr[0] != "") { $finalValue = $newValue + .5; } else { $finalValue = $newValue; } return $finalValue; } } 4. J'ai supprimé le fichier class_index.php dans le dossier 'cache' 5. j'ai vidé le cache via le BO Est ce que quelqu'un aurait une idée pour que cela fonctionne ? Merci par avance de votre aide Link to comment Share on other sites More sharing options...
ChDUP Posted July 20, 2016 Share Posted July 20, 2016 L'override des modules n'est pas pris en charge par toutes les versions de Presta. Quelle est la votre ? Link to comment Share on other sites More sharing options...
jpsdj01 Posted July 20, 2016 Author Share Posted July 20, 2016 Bonjour, Ma version de Prestashop est la 1.6.1.4 Merci Link to comment Share on other sites More sharing options...
ChDUP Posted July 20, 2016 Share Posted July 20, 2016 ça devrait fonctionner Je me demande si il est possible d'override LoyaltyModule.php et pas uniquement loyalty.php (nom exact du dossier du module) Vérifiez bien la casse par exemple, essayez de renommez votre dossier en "loyalty" sans majuscule et votre fichier en "LoyaltyModule.php" sans majuscule dans l'extension Link to comment Share on other sites More sharing options...
Recommended Posts
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 accountSign in
Already have an account? Sign in here.
Sign In Now