Jump to content

Thème Matrice - Bug Panier suppression de tous les articles depuis commande.php


Recommended Posts

Bonjour,

J'installe Prestashop pour la première fois, j'utilise le thème matrice et je rencontre un problème lors de la suppression de tous les articles de mon panier -> une page blanche se charge avec uniquement la bannière haute de mon site.
Je précise que le problème survient lors de la suppression de tous les articles lorsque l'on se trouve dans le processus de commande.

J'ai bien cherché sur le forum mais je ne trouve malheureusement pas de solution...

Un grand merci par avance de votre aide précieuse !
Merci également pour ce super CMS très complet :-)

Ma configuration :

Version de Prestashop: 1.4.0.17
Informations sur votre serveur: Linux #5 SMP Tue Apr 19 13:33:01 CEST 2011 i686
Version du logiciel serveur: Apache/2.2.X (OVH)
Version de PHP: 5.2.17
Version de MySQL: 5.0.90-log

Informations sur votre boutique

URL de votre boutique: http://www.arbrajoie.fr/
Nom du thème utilisé: matrice

Link to comment
Share on other sites

Bonjour gbailleul
Voyez si cela ne vient pas du Smarty.
Car il se pourrait que votre erreur vienne du répertoire
FTP:\\ votre boutique \tools\smarty\compile\

Supprimez tous les fichiers dans le répertoire compile sauf index.php
Et vérifiez ensuite si sur votre boutique l'incident est toujours présent.

Sinon
Essayez d’activer l’affichage des erreurs comme indiqué ici. Au lieu de la page blanche, vous devriez alors avoir un message d’erreur, qui nous aidera à identifier le problème.

et je pourrais donc vous indiquez la marche à suivre
Cordialement,

Link to comment
Share on other sites

Bonjour,

Tout d'abord merci de vos retours.
J'ai vidé le dossier -> problème toujours présent.
J'ai activé l'affichage des erreurs -> la page reste blanche.

Je pense qu'il s'agit d'un problème de JS soit sur ajaxcart.js ou cart-summary.js ?

Merci de votre retour.
Cordialement

Link to comment
Share on other sites

gbailleul

Cherchez donc dans shopping-cart.tpl de votre FTP ce bout de texte :
N'oubliez pas de faire une sauvegarde du fichier avant toute manipulation

|secureReferrer


et supprimez le (en supprimant aussi le " | " avant secure)


et si vous avez un message d'erreur par le suite indiquez la moi

Link to comment
Share on other sites

  • 2 months later...
  • 1 month later...

Bonjour,

Si une solution a été trouvée/implémentée, serait-il possible de la poster rapidement ?

J'ai déjà perdu une matinée entière à débugger ce foutu .tpl, voici où j'en suis...

Je ne trouve rien de probant dans les .js, ni même dans les classes et controllers utilisés (Order, ParentOrder, Cart...). J'ai comparé entre les thèmes Prestashop (pour lequel le bug n'existe pas) et Matrice les fichiers susceptibles d'êtres responsables, mais toujours rien de probant.

A part le fait qu'une <div> a été modifiée dans Matrice pour englober tout le tpl au lieu du seul <table> de produits, rien de choquant dans le tpl lui-même. Si l'on remet la div en place autour du <table>, on chope le message d'erreur 'Votre panier est vide' situé plus haut dans le code, mais on perd tout le contenu des leftColumn et rightColumn.

Sur un reload normal, la page s'affiche correctement (bien qu'on ne rentre jamais dans le cas du isset($empty), ce qui est plutôt surprenant et a priori pas propre).

Le problème semble donc se situer lors du reload Ajax et porterait uniquement sur notre <div> :

<div id="order-detail-content" class="table_block">

Je fouille donc du côté du .js une fois de plus...

A suivre...

 

Kharfud

 

PS : HEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEELP

Link to comment
Share on other sites

  • 4 months later...

Bonjour à tous

 

Je déterre ce post, je monte actuellement un prestashop avec ce thème et je viens de trouver la solution à ce f***tu problème, qui vient du JS, plus particulièrement de du fichier /theme/matrice/js/cart-summary.js, vers la ligne 90 :

 

Il faut modifier " $('#center_column') " par " $('#order-detail-content') " et ajouter dans le if : " && $(this).attr('class') != 'global_steps' "

 

Pour faire simple avant le code JS supprimait tout les noeuds enfants de $('#center_column') et dans ces enfants il y a la colonne de gauche, les liens des étapes de commandes et tout le barratin :)

 

avant

$('#center_column').children().each(function() {
if ($(this).attr('id') != 'emptyCartWarning'
 && $(this).attr('class') != 'breadcrumb'
 && $(this).attr('class') != 'global_steps'
 && $(this).attr('id') != 'cart_title'){
$(this).fadeOut('slow', function () {
		   $(this).remove();
		 });
	}
});

 

après

$('#order-detail-content').children().each(function() {
if ($(this).attr('id') != 'emptyCartWarning'
 && $(this).attr('class') != 'breadcrumb'
 && $(this).attr('class') != 'global_steps'
 && $(this).attr('id') != 'cart_title'){
$(this).fadeOut('slow', function () {
		   $(this).remove();
		 });
	}
});

 

 

 

J'espère que ca va en aider certains !!

Link to comment
Share on other sites

  • 3 weeks later...
  • 10 months later...
Guest
This topic is now closed to further replies.
×
×
  • Create New...