Jump to content

V1.1 fixes de bugs


Recommended Posts

Voici quelques fixes de bugs trouvés sur le forum ou sur le bug tracker. si il y a des erreurs ou autres fixes de bugs n'hesitez pas à me contacter pour correction ou à completer ce fil.

This post in english HERE


--------------------------------------------------------

truncate du panier: VOIR ICI

dans /modules/blockcart/blockcart.tpl ligne: 44
chercher:

{$product.name|escape:htmlall:'UTF-8'|truncate:20} 


remplacer par:

{$product.name|escape:htmlall:'UTF-8'|truncate:16}



dans /modules/blockcart/blockcart-json.tpl ligne: 77
chercher:

'{$error|addslashes}' 


remplacer par:

'{$error|addslashes|html_entity_decode:2:'UTF-8'}'



--------------------------------------------------------

Problème de Stat VOIR ICI

dans /admin/tabs/AdminStatsTab.php ligne: 36
chercher

if ($month = Tools::getValue('dateInputMonth', -1) AND Validate::isUnsignedInt($month))


remplacer par

if (($month = Tools::getValue('dateInputMonth', -1)) != -1 AND Validate::isInt($month))



--------------------------------------------------------
Module chèque VOIR ICI

dans /modules/cheque/cheque.php ligne: 33

chercher:

if (!isset($this->address) OR !isset($this->address))


remplacer par:

if (!isset($this->chequeName) OR !isset($this->address))



--------------------------------------------------------

Probleme avec la configuration d'un produit customisé en BO VOIR ICI

dans /admin/tabs/AdminProduct.php ligne: 422

chercher:

$product->customizable = (intval($_POST['uploadable_files']) > 0 OR intval($_POST['text_fields']) > 0) ? true : false;


remplacer par:

$product->customizable = (intval($_POST['uploadable_files']) > 0 OR intval($_POST['text_fields']) > 0) ? 1 : 0;



--------------------------------------------------------

Bug de pagination dans new-products.php VOIR ICI et VOIR AUSSI ICI

Details:
Sur la page nouveaux produits. Le bloc Pagination n'affiche pas le nombre correct de pages.
pour corriger ce bug: ( ATTENTION! Le 1er correctif ne marchait pas, voici un autre correctif!)

Ne pas modifier le code dans new-product.php ligne 8 comme precedement suggéré
code original non modifié:

$nbProducts = intval(Product::getNewProducts(intval($cookie->id_lang), NULL,NULL, true));



code a modifier

dans classes/product.php ligne 903

chercher

        if ($count)
       {
           $result = Db::getInstance()->getRow('
           SELECT COUNT(`id_product`) AS nb
           FROM `'._DB_PREFIX_.'product`
           WHERE `active` = 1');
           return intval($result['nb']);
       }



remplacer par:

        if ($count)
       {
           $result = Db::getInstance()->getRow('
           SELECT COUNT(`id_product`) AS nb
           FROM `'._DB_PREFIX_.'product`
           WHERE `active` = 1
           AND DATEDIFF(`date_add`, DATE_SUB(NOW(), INTERVAL '.(Validate::isUnsignedInt(Configuration::get('PS_NB_DAYS_NEW_PRODUCT')) ? Configuration::get('PS_NB_DAYS_NEW_PRODUCT') : 20).' DAY)) > 0');
           return intval($result['nb']);
       }



Le code original compte le nombre de produits au lieu du nombre de produits nouveaux

Modif pour que les nouveaux produits soient classés par date d'ajout indépendament du classement de la boutique: VOIR ICI


----------------------------------------------------------

Bug accessoire de produit non effacable VOIR ICI

dans le fichier js/admin.js mettre en commentaire

/*console.log('---');
console.log(input);
console.log('___');
 console.log(name);*/



Pour les accessoires, c’est un bug navigateur, les console.log laissés par les devs font bugger certains navigateurs, pas FF2 en tout cas mais FF3 oui. Il faut retirer du code, tous les console.log des javascripts.


------------------------------------------------------------
Affichage correct de la boite de recherche dans le header VOIR ICI

ligne 798 du themes/Prestashop/global.css

width: 330px;


remplacer par

width: 336px;



---------------------------------------------------------------

Module Liste de cadeau (Wishlist)

correction des bugs du module: ICI


----------------------------------------------------------------
Numéro de suivi dans l'email

Lorsqu'on fait passer une commande en statut "envoyé", un email est envoyé au client mais il ne comporte pas le lien de suivi parce que le champ de remplissage du numéro de suivi n'est pas affiché avant cet etat.

Correction pour avoir le champ de remplissage affiché est le lien de suivi dans l'email:

Dans le fichier admin/tabs/AdminOrders.php à la ligne 408, mettez la ligne en commentaire.

remplacer

if ($carrier->url AND $currentState->id == _PS_OS_SHIPPING_)



par

//if ($carrier->url AND $currentState->id == _PS_OS_SHIPPING_)

Link to comment
Share on other sites

Correctif pour le problème des miniatures produits qui ne se mettent pas à jour:
Merci à Pshopexpert VOIR ICI

EDITER /admin/tabs/AdminProducts.php

TROUVER ligne 176

if (isset($_GET['deleteImage']))
               {
                   $image->delete();
                   deleteImage($image->id_product, $image->id);
                   if (!Image::getCover($image->id_product))
                   {
                       $first_img = Db::getInstance()->getRow('
                       SELECT `id_image` FROM `'._DB_PREFIX_.'image`
                       WHERE `id_product` = '.intval($image->id_product));
                       Db::getInstance()->Execute('
                       UPDATE `'._DB_PREFIX_.'image`
                       SET `cover` = 1
                       WHERE `id_image` = '.intval($first_img['id_image']));



RAJOUTER APRES

@unlink(dirname(__FILE__).'/../../img/tmp/product_'.$image->id_product.'.jpg');
@unlink(dirname(__FILE__).'/../../img/tmp/product_mini_'.$image->id_product.'.jpg');



TROUVER ligne 209

elseif (isset($_GET['coverImage']))
               {
                   Image::deleteCover($image->id_product);
                   $image->cover = 1;
                   $image->update();



RAJOUTER APRES

@unlink(dirname(__FILE__).'/../../img/tmp/product_'.$image->id_product.'.jpg');
@unlink(dirname(__FILE__).'/../../img/tmp/product_mini_'.$image->id_product.'.jpg');



TROUVER ligne 509

public function addProductImage($product, $method = 'auto')



SUPPRIMER LES APPELS DE UNLINK ligne 529

@unlink(dirname(__FILE__).'/../../img/tmp/product_'.$product->id.'.jpg');
@unlink(dirname(__FILE__).'/../../img/tmp/product_mini_'.$product->id.'.jpg');



REMPLACER PAR

if (sizeof($this->_errors))
           return false;
       @unlink(dirname(__FILE__).'/../../img/tmp/product_'.$product->id.'.jpg');
       @unlink(dirname(__FILE__).'/../../img/tmp/product_mini_'.$product->id.'.jpg');
       return ((isset($id_image) AND is_int($id_image) AND $id_image) ? $id_image : true);

Link to comment
Share on other sites

Bonsoir @ tous

Il y a un bug avec les points de fidélité.
Lors de l'ajout dans le panier depuis le catalogue les points sont calculés en fonction de la quantité mise en place au lieu du montant total

Par exemple 1€ = 1point :
Soit pour 100 x 1,79€ = 100points au lieu de 179 points
Par contre lors de la modification depuis le panier, les points sont OK

Link to comment
Share on other sites

Solution que j'ai donné ici pour les problèmes de lien dans le block Déjà vus.

Dans le module blockviewed (qui correspond aux produits déjà vu)

A la ligne 8 et à la ligne 9 du fichier blockviewed.tpl , ajouter deux points.

A la ligne 8 href="..{$link->getProductLink et à la ligne 9 href="..{$link->getProductLink


Cette solution est valable pour les modules ayant les même symptômes.

++

DAV
Link to comment
Share on other sites

  • 2 weeks later...

dans new-product.php chercher ligne 8:

$nbProducts = intval(Product::getNewProducts(intval($cookie->id_lang), NULL,NULL, true));


remplacer par:

$nbProducts = intval(Product::getNewProducts(intval($cookie->id_lang), intval($p) - 1, intval($n), false));



Cela ne fonctionne pas, avec cette solutions il y a seulement und page de nouveautés!
Link to comment
Share on other sites

Apres avoir installé, PrestaShop 1.1 et ajouté 2 produits pour tester, j'ai rencontré un probleme lors de l'ajout d'accessoires. C'est un probleme que je n'avait pas sur la 1.0 .
N'ayant pas trouvé de problemes similaire sur le forum (les boutiques avec seulement deux articles ne devant etre tres nombreuses) j'ai un peu galéré mais j'ai trouvé une solution :

admin\tabs\AdminProducts.php

for (i = 1, j = 1; i < accessories.length; i++)



for (i = 0, j = 1; i < accessories.length; i++)



Par contre je n'ai pas testé avec plus d'articles (logiquement ca ne devrait pas posser de problemes)

Link to comment
Share on other sites

Solution que j'ai donné ici pour les problèmes de lien dans le block Déjà vus.

Dans le module blockviewed (qui correspond aux produits déjà vu)

A la ligne 8 et à la ligne 9 du fichier blockviewed.tpl , ajouter deux points.

A la ligne 8 href="..{$link->getProductLink et à la ligne 9 href="..{$link->getProductLink


Cette solution est valable pour les modules ayant les même symptômes.

++

DAV


en complément de ce correctif, j'ai trouvé également ce petit "correctif" dans le bug tracker qui supprime les // dans le module blockviewed (lien du produit = ...//produit.html).

ref : http://www.prestashop.com/bug_tracker/view/1333/

Dans .../classes éditer Link.php.
chercher
...$id_product->category.'/'...

et remplacer par
...($id_product->category ? $id_product->category.'/' : '')...
Link to comment
Share on other sites

j'ai supprimé le module et je n'ai plus de problème

je supprime d'ailleurs les modules qui sont accessoires et sur lesquels il y a des bugs

je verrai plus tard après avoir paramétrer la boutique

autre chose : je vois que des corrections de bugs ne disent ce que cela corrige (sur la tête de post UP)

Link to comment
Share on other sites

Je peux éditer le premier post qui est mis à jour mais pas les posts suivants, normalement ces correctifs fonctionnent mais la correction n'est pas guarantie à 100 % et comme l'equipe Prestashop ne publie aucuns fixes, à nous de nous debrouiller comme on peut avec les risques eventuels......

Link to comment
Share on other sites

Voici un correctif pour le problème des miniatures produits qui ne se mettent pas à jour mais ATTENTION cette modification s'applique sur les fichiers principaux de PrestaShop, si vous n'êtes pas sûr de vous, je peux l'installer sur votre serveur ( http://www.pshopexpert.com/8-modification-de-la-liste-des-produits-dans-le-catalogue.html ).

EDITER /admin/tabs/AdminProducts.php

TROUVER

               if (isset($_GET['deleteImage']))
               {
                   $image->delete();
                   deleteImage($image->id_product, $image->id);
                   if (!Image::getCover($image->id_product))
                   {
                       $first_img = Db::getInstance()->getRow('
                       SELECT `id_image` FROM `'._DB_PREFIX_.'image`
                       WHERE `id_product` = '.intval($image->id_product));
                       Db::getInstance()->Execute('
                       UPDATE `'._DB_PREFIX_.'image`
                       SET `cover` = 1
                       WHERE `id_image` = '.intval($first_img['id_image']));



RAJOUTER APRES

                       @unlink(dirname(__FILE__).'/../../img/tmp/product_'.$image->id_product.'.jpg');
                       @unlink(dirname(__FILE__).'/../../img/tmp/product_mini_'.$image->id_product.'.jpg');



TROUVER

                elseif (isset($_GET['coverImage']))
               {
                   Image::deleteCover($image->id_product);
                   $image->cover = 1;
                   $image->update();



RAJOUTER APRES

                   @unlink(dirname(__FILE__).'/../../img/tmp/product_'.$image->id_product.'.jpg');
                   @unlink(dirname(__FILE__).'/../../img/tmp/product_mini_'.$image->id_product.'.jpg');



TROUVER

public function addProductImage($product, $method = 'auto')



SUPPRIMER LES APPELS DE UNLINK

REMPLACER LA FIN PAR

       if (sizeof($this->_errors))
           return false;
       @unlink(dirname(__FILE__).'/../../img/tmp/product_'.$product->id.'.jpg');
       @unlink(dirname(__FILE__).'/../../img/tmp/product_mini_'.$product->id.'.jpg');
       return ((isset($id_image) AND is_int($id_image) AND $id_image) ? $id_image : true);

Link to comment
Share on other sites

Bonjour à tous !

J'ai voulu corriger le bug du truncate du panier comme indiquer ici mais ça ne corrige toujours pas le problème...

Voila ce que ça donne : http://screencast.com/t/H1I1m4F7oKY

En fait ça bug seulement avec une longueur de description trop longue !

Quelqu'un aurait une idée ?

Merci...

Ludo.

[EDIT] Désolé pour ce post... mauvaise manip de ma part !!! C'est tout bon ça fonctionne.... :sick:

Link to comment
Share on other sites

  • 1 month later...

bonjour,
correctif pour le problème des miniatures produits qui ne se mettent pas à jour:

Je ne comprend pas la dernière correction, quelques posts plus haut il est indiqué:

SUPPRIMER LES APPELS DE UNLINK ligne 529 ..
REMPLACER PAR....

plus loin pour la même correction :
SUPPRIMER LES APPELS DE UNLINK
REMPLACER LA FIN PAR ...

Si je me fie à l'indentation de la correction, ces lignes doivent être copier deux blocs de parenthèses plus bas, car nous sommes dans une imbrication de if,
puis en y réfléchissant ce n'est pas certain, la fin, c'est peut-être la fin de la fonction?... bref je ne comprend pas ou je dois copier les lignes,

Link to comment
Share on other sites

  • 4 weeks later...

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