Jump to content

Alerte produits hors stock


gopal

Recommended Posts

Bonjour,
Lorsqu'un produit est hors stock, le client à la possibilité de cliquer sur :
"prévenez moi lorsque le produit est à nouveau disponible" dans la fiche du produit concerné.

Cependant il ne se passe rien après le click. Le lien semble pointer vers : href="#".
Une solution ?

Link to comment
Share on other sites

Bonjour,

j'ai eu le même souci.
J'ai dû faire quelques changement dans le code coté Module mailalerts (/prestashop/modules/mailalerts)

dans le fichier product.tpl ligne 36:

changer

url: '{$base_dir}modules/mailalerts/mailalerts-ajax_add.php',



par

url: '{/literal}{$base_dir}{literal}modules/mailalerts/mailalerts-ajax_add.php',



il y a aussi un souci avec le textfield qui doit s'effacer lorsqu'on rentre une première fois dedans:
il faut changer ds la fonction clearText() la condition

if ($('#oos_customer_email').val() == '[email protected]')


et changer en fonction de la langue...

if ($('#oos_customer_email').val() == 'votre e-mail') 



Pour généraliser (ATTENTION JE N'AI PAS TESTER LE CODE):

function clearText() {
   if ($('#oos_customer_email').val() == '{/literal}{l s='your e-mail' mod='mailalerts'}{literal}')
       $('#oos_customer_email').val('');
}

Link to comment
Share on other sites

Merci pour la réponse.

J'ai fait la première modification et cela semble fonctionner. Il y a bien l'article qui s'affiche dans la page "mes alertes" du client"

J'ai pas compris la modification concernant "clear text". Je l'ai copier coller, mais il y a toujours le message suivant :

{l s='Request notification registered' mod='mailalerts'}

qui apparait à la place de "prévenez moi lorsque le produit est de nouveau disponible". Cela ne fait pas très propre...

Par contre une fois le stock rempli, l'e-mail de notification à bien été envoyé.

Est -ce que tu pourrais donner plus d'explication concernant "clear text" ?
Pour infos, je n'y connais rien en JavaScript...

Link to comment
Share on other sites

Ce code marche chez moi:


function clearText() {
   if ($('#oos_customer_email').val() == '{/literal}{l s='your e-mail' mod='mailalerts'}{literal}')
       $('#oos_customer_email').val('');
}   



Cela permet d'effacer ce qu'il y a à l'intérieur du textfield.

Link to comment
Share on other sites

Bonjour,

J'ai rencontré le meme probleme.
Apres que le client pousse le bouton pour recevoir un email quand le produit est a nouveau disponible; ce message apparait:

{l s=‘Request notification registered’ mod=‘mailalerts’}


A part ce message tout fonctionne.
J'ai deja essayé les modification comme indiqué ci-dessus mais desormais le probleme ne se resoude pas.

Vous suggestions seront bien apprecié!

merci d'avance,
Manuel

Link to comment
Share on other sites

Ce doit être un problème de fichier de traduction, je n'ai pas eu le temps de regarder ce probléme, comme je n'ai qu'une seule langue j'ai directement changé

$('#oosHook').html("{l s='Request notification registered' mod='mailalerts'}");

par
$('#oosHook').html('Demande de notification enregistrée');

Link to comment
Share on other sites

Quand je fait ca, la notification n'est pas saufgardé et aucun email est envoyé au client.

J'ai fait ceci, peut-etre il-y a un autre probleme?

if (msg == '1') {
               $('#mailalert_link').hide();
               $('#oos_customer_email').hide();
               $('#oosHook').html("{l s='Request notification registered' mod='mailalerts'}");



remplacé par:

if (msg == '1') {
               $('#mailalert_link').hide();
               $('#oos_customer_email').hide();
               $('#oosHook').html("On vous tiendra au courant");

Link to comment
Share on other sites

Quand je fait ca, la notification n'est pas saufgardé et aucun email est envoyé au client.

J'ai fait ceci, peut-etre il-y a un autre probleme?

if (msg == '1') {
               $('#mailalert_link').hide();
               $('#oos_customer_email').hide();
               $('#oosHook').html("{l s='Request notification registered' mod='mailalerts'}");



remplacé par:

if (msg == '1') {
               $('#mailalert_link').hide();
               $('#oos_customer_email').hide();
               $('#oosHook').html("On vous tiendra au courant");



Bonsoir,

essai cela :

remplace

$('#oosHook').html("{l s='Request notification registered' mod='mailalerts'}");



par

$('#oosHook').html("{/literal}{l s='Request notification registered' mod='mailalerts'}{literal}"); 



solution trouvé à cette page http://www.prestashop.com/forums/viewreply/264290/

Cela fonctionne pour moi sur le site que j'ai en local avec easyphp sans url rewriting mais, sur mes deux sites en ligne avec url rewriting, il ne se passe rien.

Si quelqu'un a une idée ? Elle est la bienvenue ;-)

Link to comment
Share on other sites

Moi j'ai essayé et ca marche bien comme ca, meme en ligne.
Donc le probleme doit se trouver alleurs.


Bonjour manuel1972,
c'est une question comme ca, tu as le url rewriting d'actif ? Je demande ca car à part ce reglage que j'ai d'actif en ligne et non en local, le site est identique.

Sinon, quelqu'un a aussi ce probleme ? Merci d'avance pour votre retour.
Steph
Link to comment
Share on other sites

  • 1 month later...
  • 3 weeks later...
  • 2 weeks later...

Bonjour

Toujours pas de solution pour ces problèmes de mail (non reçu) quant il y a un hors stock ou que le client puisse cliquer sur "prévenez mois dès que le produit sera disponible", car les solutions indiqués ci-dessus ne fonctionne pas sur la 1.3.1
Merci

Link to comment
Share on other sites

Salut,
Dommage de ne pas avoir de solution à ce problème, j'ai justement eu un client ce matin qui s'étonnait de ne pas avoir reçu de mail, et je lui ai dit que j'étais au courant et que depuis j'avais désactivé la fonction...
Ça ne doit pourtant pas être grand chose, mais cela ne semble pas intéresser les codeurs qui hantent ces lieux ;-P

Link to comment
Share on other sites

Apres que le client pousse le bouton pour recevoir un email quand le produit est a nouveau disponible; ce message apparait:

{l s=‘Request notification registered’ mod=‘mailalerts’}


Il faut modifier le fichier product.tpl dans modules >mailalerts de la façon suivante ligne 42 :

{/literal}{l s='Request notification registered' mod='mailalerts'}{literal}

Bon courage !
  • Like 1
Link to comment
Share on other sites

  • 2 weeks later...
  • 4 weeks later...

toujours pas de réelle solution à ce problème ?

j'ai tenté la solution de harcier post 2

l'alerte est bien enregistrée dans le FO client mais pas de mail quand le restock est fait

[EDIT]je reçois bien la notif de restock par mail,
et j'ai supprimé ("{l s='Request notification registered' mod='mailalerts'}");
ligne 42 dans product.tpl du dossier mailalert

et toujours pas de mail de notif de hors stock sur mon compte admin quand un produit est hors stock

Link to comment
Share on other sites

maintenant je reçois les mails partie admin quand un produit est hors stock mais pas pour tout les produits...
j'ai pas l'impression qu'il y ai de logique particulière ( nouveaux produits ou une catégorie en particulier)
car j'ai fait le test avec un produit :
-vidé le stock --> pas de mail
puis restock et de nouveau
-vidé le stock --> mail de rupture

je n'y comprend pas grand chose.

Link to comment
Share on other sites

  • 4 weeks later...
  • 2 months later...
  • 4 months later...
  • 3 months later...

 

Il faut modifier le fichier product.tpl dans modules >mailalerts de la façon suivante ligne 42 :

{/literal}{l s='Request notification registered' mod='mailalerts'}{literal}

Bon courage !

 

 

bonjour,

j'ai procéder au modif sur le product.tpl dans mailalert, mais cela ne fonctionne toujours pas.

quand le mail part, j'ai le message "demande bien enregistrée" mais je ne recois aucun mail et rien dans "message client" dans le frontoffice.

merci de m'aider.

 

:unsure:

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