Jump to content

Fonctionnement Ajax du panier impossible Avec module MagicZoomPlus" (Résolu)


Recommended Posts

Bonjour a vous tous,

Sous la 1.4 avec IE8, sur certaines pages quand je clique sur ajouter au panier, deux produits s'ajoutent et non qu'un seul !

Sous d'autres page, les produits ne s'ajoutent pas du tout (aucun message)

J'ai ce message en permanence sinon dans la barre des taches:

Webpage error details

User Agent: Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 5.1; Trident/4.0; Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1) ; .NET CLR 2.0.50727; .NET CLR 3.0.4506.2152; .NET CLR 3.5.30729; OfficeLiveConnector.1.3; OfficeLivePatch.0.0; .NET CLR 1.1.4322; InfoPath.2)
Timestamp: Sat, 19 Mar 2011 08:08:21 UTC


Message: 'top' is null or not an object
Line: 201
Char: 5
Code: 0
URI: http://www.monsite.com/modules/blockcart/ajax-cart.js

Merci a vous

Link to comment
Share on other sites

j'avais eu ça sur la version avant quand j'avais testé les trucs de cache ect ... (mais via le htaccess vu que c'étais pas dans le back office à l'époque), essaye de regarder dans Panneau d'administration->Préférences->Performances que tous soit par défaut :
- Rubrique Smarty : Forcer la compilation sur non
- Rubrique Smarty : Cache sur oui
- Rubrique CCC (Concaténation, Compression et mise en Cache) tout sur "Conserver le fonctionnement classique" ou "Conserver la validation W3C"
ect ...

Link to comment
Share on other sites

Bonjour,

Merci.

J'ai bien suivi vos conseils, mais l'ajout au panier pose tjs probleme meme apres avoir tout mis par defaut.

De plus ce bug apparait dans mon navigateur:

Webpage error details

User Agent: Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 5.1; Trident/4.0; Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1) ; .NET CLR 2.0.50727; .NET CLR 3.0.4506.2152; .NET CLR 3.5.30729; OfficeLiveConnector.1.3; OfficeLivePatch.0.0; .NET CLR 1.1.4322; InfoPath.2)
Timestamp: Sat, 19 Mar 2011 08:00:29 UTC


Message: 'top' is null or not an object
Line: 201
Char: 5
Code: 0
URI: http://www.website.com/modules/blockcart/ajax-cart.js



y a t'il d'autre solutions possibles ?

Merci

Link to comment
Share on other sites

Bonjour à tous,

Même problème...
Suite à une mise à jour complète et dans les normes vers PS 1.4.0.17, avec le thème par défaut, sous IE8, j'ai également cette erreur quand on clique sur "ajouter au panier".

Message: ‘top’ is null or not an object
Line: 206
Char: 5
Code: 0
URI: http://www.monsite.com/modules/blockcart/ajax-cart.js

Cependant, l'ajout au panier se fait bien (vérifié en cliquant sur "panier").

Seul contournement : désactiver le panier Ajax. Dommage...

Idée lumineuse ?

Fred

Link to comment
Share on other sites

Bonjour, je rencontre moi aussi ce problème : les produits ne s'ajoutent plus de façon dynamique dans le bloc panier, cependant on les retrouve bien dans la page panier. J'ai donc remédié à cela temporairement en désactivant "panier AJAX" dans le BO. Pour information j'ai migré à partir de la version 1.3.1.1 de PrestaShop et c'est visiblement le seul problème que j'ai pour le moment (je teste en local avec Wamp avant de migrer en ligne).

J'essaye de trouver d'où cela peut venir mais étant débutant en javascript, et bien c'est pas évident !

Link to comment
Share on other sites

Salut à Tous
Pareil pour moi, en local sur Xampp, le "ajouter au panier" ne s'ajoute plus dynamiquement.
Je suis passé de la 1.3.6 => 1.4.0.17
Et c'est apparemment le seul problème pour l'instant et en local, mais c'est très lent...

Link to comment
Share on other sites

D'après la console d'erreurs de Firefox, j'ai les erreurs suivants qui apparaissent :

Erreur : jQuery is not defined
Fichier Source : http://localhost/monsitequiroxxe/js/jquery/jquery.easing.1.3.js
Ligne : 13

Erreur : pictureOffsetOriginal is null
Fichier Source : http://localhost/monsitequiroxxe/modules/blockcart/ajax-cart.js
Ligne : 201



C'est peut être une piste !

[EDIT] : j'ai trouvé une solution à mon problème, voici ce que j'ai fait :

dans le fichier "ajax-cart.js", l'erreur était donc que

$element.offset();

ne renvoyait rien, j'ai donc remonté un peu dans le code (quelques lignes au dessus)

var $element = $(callerElement).parent().parent().find('a.product_image img,a.product_img_link img');


Visiblement dans cette ligne la fonction find() ne renvoyait rien, elle ne trouvait pas les éléments HTML ayant les propriétés CSS "a.product_image img" et "a.product_img_link img".

J'ai alors été fouillé dans le fichier "product-list.tpl" situé dans le dossier de mon thème personnalisé et vérifié les classes CSS de mes balises HTML :

getImageLink($product.link_rewrite, $product.id_image, 'home')}" alt="{$product.legend|escape:'htmlall':'UTF-8'}" />



Le soucis était que j'avais modifié la classe de ma balise , j'avais enlever "class="product_img_link"" et mis une de mes classes CSS personnalisée de mon global.css. J'ai remis le bon nom de classe et modifié cette classe dans global.css pour y appliquer mon style voulu, pour info voici la classe .css :

ul#product_list a.product_img_link img {}



Voila, maintenant l'ajout au panier en ajax fonctionne parfaitement.

Link to comment
Share on other sites

Hi,

Une autre solution consiste a commenter la ligne 207 ou de la supprimer, ce qui permettra de garder l'ajout au panier sans avoir a rafraichir la page.

Je pense que c'est un conflit d'ID ou de JS.


++


Bonjour,

Merci pour votre message.

Vous conseillez donc de supprimer la ligne 207 de ajax-cart.js ?

Merci !
Link to comment
Share on other sites

Hello,

Pour ce qui est de mon cas cela fonctionne en supprimant la ligne 207.
Mais peut être parce que c'est particulier pour mon thème que j'ai réalisé en une seule colonne avec une petite fonction en plus sur les quantité (- et +)

Voir ici sur une fiche produit.

++

Link to comment
Share on other sites

J'ai réussi à corriger toutes mes erreurs de mise au panier, ajax et javascript en allant dans préférences / performances
CCC pour les smart cache des feuilles de style, tout les reste sur fonctionnement classique et là tout ce qui est ajax fonctionne, il n'y a que les ouvertures thickbox qui déconne.

Link to comment
Share on other sites

  • 3 weeks later...

Hello !

Alors je vous fait part de mes symptômes et de ma solution :
- Impossible de se logguer
- Impossible d'ajouter quelque-chose au panier (panier toujours vide)
- La modification des options ne change rien

J'ai finalement découvert que le problème ne survenait que lorsque j'accède au shop avec une URL qui n'est pas celle utilisée pour l'installation OU BIEN que ça serait lié à la redirection "invisible" configurée que mon DNS provider (une sorte de mod_proxy apache je crois)... J'ai pas vérifié le contenu du cookie (pas le temps) mais ça serait une piste ! J'ai donc changé ma redirection en type "normale" et tout est OK !

Info et tests pour les développeurs :

Là ça ne fonctionne pas : wwwbug.gsracingparts.eu
Là ça fonctionne : www.gsracingparts.eu

Cya !

Link to comment
Share on other sites

  • 3 weeks later...

Bonjour,
exactement le même probleme :
sur la page de description produit, l'animation de la mise en panier plante avec l'erreur ci-dessus déjà citée.
Avec les modules : panier ajax (blockcart) ajax activé, et le module magiczoomplus

Mon problème était similaire à Roulien (pictureOffsetOriginal est "null"), et est dû au faite que

               var $element = $(callerElement).parent().parent().find('a.product_image img,a.product_img_link img');
               if (!$element.length)
                   $element = $('#bigpic');


du code js ajax-cart.js ne renvoit rien.

Le soucis vient du module magiczoomplus qui n'identifie pas correctement les balises HTML afin qu'il soit compatible avec le caddies ajax ; et j'ai règlé simplement le problème en éditant :
./modules/magiczoomplus/magiczoomplus.module.core.class.php
ligne 232 :

originale :

return "\"{$alt}\"{$description}" . $message;

je rajoute juste id=\"bigpic\" dans la balise de l'image
modifiée :
return "\"{$alt}\"{$description}" . $message;


Simplement avec cette petite modification, tout est rentré dans l'ordre.
je pense que les soucis que vous rencontrerez avec l'erreur similaire pourra être réglé aussi simplement.




Chapodepay
PHP developper
Link to comment
Share on other sites

  • 2 months later...

Bonjour,

 

Avec la dernière version de magiczoomplus 5.08 c'est à la ligne 245 qu'il faut chercher:

 

            return "<a{$link} class=\"MagicZoomPlus\"{$title} id=\"MagicZoomPlusImage{$id}\" href=\"{$img}\" {$rel}><img{$width}{$height} src=\"{$thumb}\" alt=\"{$alt}\" />{$description}</a>" . $message;

 

qu'il faut remplacer par:

 

            return "<a{$link} class=\"MagicZoomPlus\"{$title} id=\"bigpic\"  href=\"{$img}\" {$rel}><img{$width}{$height} src=\"{$thumb}\" alt=\"{$alt}\" />{$description}</a>" . $message;

 

Si ça peut vous servir :)

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