Aide pour petit test type livraison dans order.php

4 messages dans ce sujet

Posté(e) (modifié) · Signaler ce message

Bonjour tout le monde !
Voilà, je souhaiterai tester la livraison Mondial Relay pour mes produits. Pour le moment, je ne souhaite pas investir dans le module Mondial Relay, et je fais un tout petit développement (liliputien je dirai même !). Voilà mon cheminement...

1-J'ai créé un TYPE de transport Mondial Relay, et défini les tarifs.
2-J'ai créé un modèle d'email : send_mail_Mondial_Relay - Envoi automatique - Contenu :

Bonjour [CIVILITE] [PRENOM] [NOM_FAMILLE].

Merci pour votre commande sur [SITE].
Vous avez choisi pour la livraison de vos travaux terminés le mode de livraison [TYPE].

Afin que nous puissions prochainement vous expédier votre commande [ORDERID], merci de vous rendre sur le site  internet de Mondial Relay à l'adresse suivante https://www.mondialrelay.fr/trouver-le-point-relais-le-plus-proche-de-chez-moi/ afin de déterminer les coordonnées du point relai à utiliser.

Merci de nous communiquer ses coordonnées complètes.

Bien cordialement.

 

En gros le client recevra un mail après la validation de sa commande pour lui demander de déterminer sur le site Mondial Relay l'adresse du point de récolte et de nous le communiquer.

 

3-Dans le fichier order.php, j'ai créé un bout de code suivant pour définir une fonction send_mail_Mondial_Relay avec les template tags nécessaires au modèle d'email :
 

/**
 * send_mail_Mondial_Relay()
 *
 * @param integer $order_id
 * @return
 */
function send_mail_Mondial_Relay($order_id)
{
	$result = query("SELECT *
		FROM peel_commandes
		WHERE id ='" . intval($order_id) . "' AND " . get_filter_site_cond('commandes') . "");
	$order_object = fetch_object($result);
	$custom_template_tags['NOM_FAMILLE'] = String::htmlspecialchars_decode($user['nom_famille'], ENT_QUOTES);
	$custom_template_tags['CIVILITE'] = $user['civilite'];
	$custom_template_tags['PRENOM'] = String::htmlspecialchars_decode($user['prenom'], ENT_QUOTES);
	$custom_template_tags['TYPE'] = $order_object->type;
	$custom_template_tags['EMAIL'] = $order_object->email;
    $custom_template_tags['SITE'] = $GLOBALS['site'];
	
	send_email($commande->email, '', '', 'send_mail_Mondial_Relay', $custom_template_tags, null, $GLOBALS['support_commande']);
	}

Et c'est maintenant que le bas blesse !!
Lorsque la commande est passée par le client par internet, il reçoit le récapitulatif de sa commande (confirm_ordered).
A ce moment là, moi, j'aimerai que soit effectué un petit test pour voir si le type de livraison est Mondial Relay, et dans ce cas, effectuer send_mail_Mondial_Relay($order_id).

Sauf que je sais pas comment on fait ça...

Quelqu'un pour m'aider ??

 

merci à tous !

Bonne journée

JL

 

Modifié (le) par carcy

Partager ce message


Lien à poster
Partager sur d’autres sites

Posté(e) · Signaler ce message

Bonjour,

Pour connaitre le mode de livraison, vous pouvez faire un test sur le champ typeId de la table peel_commandes qui contient l'id du mode de livraison. Donc vous pouvez faire un test

if ($commande['typeId'] == XX) {
send_mail_Mondial_Relay($order_id);
} else {
email_commande($order_id);
}

XX correspond à l'id du mode de transport.
Par ailleurs attention dans votre fonction send_mail_Mondial_Relay $user n'est pas défini

Partager ce message


Lien à poster
Partager sur d’autres sites

Posté(e) · Signaler ce message

arf que des soucis ! ça fonctionne pas, même en définissant le $user.

Bon je vais pas m'embêter, je le ferai manuellement.

MAIS y'a une question qui me chagrine en fait ! il manque un développement dans peel !!

Si sur la page de ladite commande dans le backoffice, je souhaite envoyer un modèle d'email (en l’occurrence celui que j'ai défini pour le mondial relay), concernant cette commande justement, bein  c'est pas possible !!! ça serait bien que ce soit faisable, et que le mail contienne les tags nécessaires (cvilite/nom/prenom/numéro de commande...).

 

Partager ce message


Lien à poster
Partager sur d’autres sites

Posté(e) · Signaler ce message

Bonjour,

Pour envoyer un email depuis le back office vous pouvez créer un nouveau template d'email et l'utiliser la page modules/webmail/administrer/webmail_send.php, en remplaçant les tags manuellement.

Sinon automatiser l'envoi d'email depuis la page de commande dans l'administration nécessite effectivement un développement spécifique.

Partager ce message


Lien à poster
Partager sur d’autres sites

Créer un compte ou se connecter pour commenter

Vous devez être membre afin de pouvoir déposer un commentaire

Créer un compte

Créez un compte sur notre communauté. C’est facile !


Créer un nouveau compte

Se connecter

Vous avez déjà un compte ? Connectez-vous ici.


Connectez-vous maintenant

Twitter Advisto ecommerce

Facebook PEEL Shopping