-
Compteur de contenus
337 -
Inscrit(e) le
-
Dernière visite
Tout ce qui a été posté par djespace
-
djespace a ajouté un message dans un sujet Récupération des mots de passe
Ok, en effet, c'est plus compliqué que ce que je pensais !
On va re-générer des mots de passe.
Merci Gilles.
-
0
-
-
djespace a ajouté un sujet dans PEEL SHOPPING : logiciel open source de boutique en ligne
Récupération des mots de passeHello,
J'ouvre une nouvelle plate-forme réservée à mes clients pro, et souhaiterais donc récupérer leur mot de passe pour recréer leur compte sur cette extension indépendante.
je trouve les mots de passe en bdd mais ceux-ci sont chiffrés.
Comment puis-je les afficher correctement ? ou les convertir ?
Merci par avance.
- 2 réponses
- 1 515 vues
-
djespace a ajouté un message dans un sujet Insertion d'une nouvelle fonction dans display_product
C'est tout bon.
Merci.
-
0
-
-
djespace a ajouté un sujet dans Module PEEL Premium pour PEEL SHOPPING
Insertion d'une nouvelle fonction dans display_productBonjour
Je cherche a ajouter une information de date de livraison sur mes pages produit, en dessous de l'affichage de l'état de stock.
J'ai un script php avec plusieurs fonctions qui fonctionne bien mais il me faut maintenant l'intégrer à peel (je suis sur une 7.0.0)
J'ai ajouter mon code dans display_product.php, créé un tpl->assign avec une variable à utiliser ensuite dans critere_stock.tpl
mais j'ai désormais une erreur fatal :
Fatal error: Call to undefined function addOpenDays() in /home/www/ledsboutique/lib/fonctions/display_product.php on line 787
comment définir cette fonction ?
Suis-je sur la bonne piste ? ou est-ce que j'ai tout faux ?
Est-ce juste que je ne place pas les code au bons endroits ?
Voici le script :
function addOpenDays($startDate, $daysNumber = 0) { if (isset($startDate) && !is_null($startDate)) { $startDate = (is_string($startDate)) ? strtotime($startDate) : $startDate; $year = 0; $holidays = array(); $date = $startDate; for ($i = $daysNumber; $i > 0; $i--) { if ($year != date('Y', $date)) { $year = date('Y', $date); $holidays = getHolidays($year); } while (!isOpenDay($date) || isHoliday($date, $holidays)) { $date = strtotime(date('Y-m-d', $date) . ' + 1 days'); } $date = strtotime(date('Y-m-d', $date) . ' + 1 days'); } while (!isOpenDay($date) || isHoliday($date, $holidays)) { $date = strtotime(date('Y-m-d', $date) . ' + 1 days'); } } return strtotime(date('Y-m-d', $date)); } // Get all holidays for a given year function getHolidays($year) { // Holidays array $holidays = array(); if (isset($year) && !is_null($year) && $year > 1970) { // List of basic known holidays $holidays[] = '1_1_' . $year; // New year day $holidays[] = '1_5_' . $year; // Fête du travail $holidays[] = '8_5_' . $year; // Victoire 1945 $holidays[] = '14_7_' . $year; // Fête nationale $holidays[] = '15_8_' . $year; // Assomption $holidays[] = '1_11_' . $year; // Toussaint $holidays[] = '11_11_' . $year; // Armistice 1918 $holidays[] = '25_12_' . $year; // Christmas // Get the easter date $easter = easter_date($year); // From the easter date, when can compute le jour de l'ascension and pentecôte $holidays[] = date('j_n_' . $year, $easter + 86400); // Easter $holidays[] = date('j_n_' . $year, $easter + (86400 * 39)); // Ascension $holidays[] = date('j_n_' . $year, $easter + (86400 * 50)); // Pentecôte } return $holidays; } // Check if a given date is holiday function isHoliday($date, $holidays = null) { if (isset($date) && !is_null($date)) { $date = (is_string($date)) ? strtotime($date) : $date; $holidays = (!isset($holidays) || is_null($holidays)) ? getHolidays(date('Y', $date)) : $holidays; if (isset($holidays) && !is_null($holidays)) { return in_array(date('j_n_' . date('Y', $date), $date), $holidays); } } return false; } // Check if a given day is an open day function isOpenDay($date) { if (isset($date) && !is_null($date)) { $date = (is_string($date)) ? strtotime($date) : $date; return !in_array(date('w', $date), array(0, 6)); } return false; } // Selection de la langue setlocale(LC_TIME, 'fr_FR'); // fr_FR pour le français
Voici ma ligne d'assignation de la variable pour le tpl :
$tpl->assign('affiche_date_livraison', strftime('%A %e %B %Y', addOpenDays(date('Y-m-d'), 3));Et donc j'utilise la variable {$affiche_date_livraison} dans le fichier .tpl
Merci de votre aide.
François.
- 2 réponses
- 2 057 vues
-
djespace a ajouté un sujet dans Module PEEL Premium pour PEEL SHOPPING
Mise à jour Paypal SHA-256Bonjour, j'ai reçu ce mail de paypal aujourd'hui :
Dois-je craindre une incompatibilité avec ma boutique peel actuelle ? (7.0.0)
- 1 réponse
- 1 899 vues
-
djespace a ajouté un message dans un sujet Insertion du code de suivi des conversions AdWords
Ok super.
Un grand merci !
-
0
-
-
djespace a ajouté un message dans un sujet Insertion du code de suivi des conversions AdWords
Bonjour Simon,
pour put_session_commande du fichier lib/fonctions/order.php
La syntaxe est un peu différente. (absence de paranthèses encadrant vb)
Du coup pour trim comment je fait ? la ligne suivante est-elle juste ?
$_SESSION['session_commande']['nom1'] = vb trim($frm['nom1']); Par contre à ce stade, on parle de nom1 (pour la facturation et de nom2 pour la livraison
Donc du coup est-ce utile d'intervenir sur ces variables ?
Celles qui sont envoyées sur la plateforme de paiement vads (et c'est seulement celles qui m'intéressent), c'est les infos sur la session utilisateur mais pas celles de la commande non ? et encore moins celles de livraison...?
Merci.
-
0
-
-
djespace a ajouté un message dans un sujet Insertion du code de suivi des conversions AdWords
J'ai fait l'essai en anticipant votre réponse, et ça fonctionne.
Par contre, en modifiant les paramètre du compte dans utilisateurs/change_params.php, l'utilisateur a de nouveaux possibilité d'ajouter des espaces s'il le souhaite.
Et idem dans la commande achat/achat_maintenant.php -> step 3
Par contre c'est moins clair pour moi car j'ai pas pu trouver d'exemple concret.
Merci par avance.
François.
-
0
-
-
djespace a ajouté un message dans un sujet Raccourcir Le Tunnel D'achat Peel 7.0.0
Bonjour,
Ok merci, je pensais que c'était plus simple, je ne veux pas perdre trop de temps là dessus, ni réaliser un dév, c'est vraiment un détail.
Je demandais juste au cas ou...
Merci quand même.
-
0
-
-
djespace a ajouté un message dans un sujet Insertion du code de suivi des conversions AdWords
Bonjour,
OK merci,
Ligne 273 de lib.fonctions/user.php :
, '" . nohtml_real_escape_string(vb($frm['prenom'])) . "' Je remplace vb par trim ?
Comme sur l'exemple de l'email quelques lignes au dessus ?
, '" . nohtml_real_escape_string(trim($frm['email'])) . "' A quoi sert vb ? que veut-il dire ?
Merci.
Je vais en fait trimer tous les champs qui servent au calcul de la signature systempay, donc tous les champs obligatoire à la création d'un compte.
-
0
-
-
djespace a ajouté un sujet dans Module PEEL Premium pour PEEL SHOPPING
Raccourcir Le Tunnel D'achat Peel 7.0.0Bonjour,
J'aurais aimé pouvoir supprimer une étape lors du processus d'achat qui parait un peu trop long, l'une des étape étant complètement inutile.
Je souhaiterais qu'à l'étape 3 (résumé) on soit redirigé directement sur le serveur bancaire du mode de paiement choisi, sans passer par l'étape confirmation, qui n'est autre qu'une nouvelle page de résumé. (c'est là qu'il y a doublon inutile).
Il faudra je pense déplacer une partie du code de l'étape 4 à l'étape 3 pour la redirection des liens, mais également modifier le fil ariane du panier pour supprimer l'étape 4.
Merci par avance,
Cordialement,
François
- 2 réponses
- 2 099 vues
-
djespace a ajouté un message dans un sujet Insertion du code de suivi des conversions AdWords
Bonsoir,
C'est parfait ! Tout est ok.
Petite question bonus.... :
Nous avons eu des soucis avec systempay à trouver l'origine d'un bug sur certaines transactions.
Il s'avère que l'orsque l'utilisateur rentre son prénom (ou n'importe quel autre champs) suivi d'un espace, le formulaire envoyé sur la plateforme de paiement contient bien l'espace.
Mais lors du retour, lors de la comparaison des signatures, les signatures ne concordent pas car peel à enlevé l'espace supplémentaire dans sa concaténation.
Je pense que ce problème est lié au module systempay fournit par ma banque.
Par contre, pour s'éviter ce genre de souci, ne pourrait-t-on pas supprimer l'espace dès la création du compte client ? en trimant les éventuels espaces ?
Comment faire et dans quel fichier ? (car c'est le type de chez lyra qui m'a dit ça mais je ne connaissais même pas le mot "trimer" mis à part pour dire que je galère sur ce module depuis trop longtemps !! lol
Non, on arrive au bout, merci Simon en tout cas !
-
0
-
-
djespace a ajouté un message dans un sujet Insertion du code de suivi des conversions AdWords
Bonjour,
Ok, donc dans ok.php je mets :
$GLOBALS['pays'] = $_SESSION['session_utilisateur']['pays']; puis dans haut.php je met quoi ? un truc dans ce genre ? :
tpl->assign('pays', get_country_name([$GLOBALSLS['total_produit_ht'])); Merci par avance.
-
0
-
-
djespace a ajouté un message dans un sujet Insertion du code de suivi des conversions AdWords
Bonjour,
Comment utiliser cette fonction et dans quel fichier ?
Je progresse mais là, j'ai essayé plein de chose en cherchant des modèles équivalent, je n'y parviens pas.
Pour le reste, tout est ok, Merci Simon.
-
0
-
-
djespace a ajouté un message dans un sujet Insertion du code de suivi des conversions AdWords
Hello,
Une fois de plus merci, ça avance petit à petit.
J'ai encore quelques petits soucis.
Le plus important c'est la reference => $_SESSION['session_caddie']->reference[$numero_ligne];
Vous êtes sur que la référence est bien initialisé sans session_caddie ? J'ai le message d'erreur suivant : Notice: Undefined property: Caddie::$reference in /home/www/ledsboutique/modules/systempay/validation.php on line 145
Et je n'ai rien trouvé avec la reference dans Caddie.php.
Ensuite j'ai voulu également récupérer le pays, et donc j'ai utilisé pays comme variable mais le résultat remonté chez google est un code à 3 chiffre (239) qui ne correspond même pas à l'id du Pays France que j'ai en back office.
Je ne sais donc pas d'où vient ce 239, ni surtout comment avoir le pays en toute lettre.
J'ai vu que le pays était également stocké dans session_caddie, peut-être devrais-je essayer de le récupérer par ce biais ?
Enfin, la variable prix par numéro de ligne est TTC, il y a-t-il un moyen de l'avoir en HT ?
D'ailleurs lorsque j'ai plusieurs articles dans le panier, le script google ne remonte que le dernier, alors que je m'attendais à avoir la liste.
Voila pour le moment ce qui coince.
Merci encore.
-
0
-
-
djespace a ajouté un message dans un sujet Insertion du code de suivi des conversions AdWords
Bonjour Simon, et merci.
le code suivant
foreach ($_SESSION['session_caddie']->articles as $numero_ligne => $product_id) { // - réf produit $product_object = new_product($product_id); $_SESSION['session_caddie']->reference[$numero_ligne]; // - nom du produit $product_object->name; // - categorie du produit $product_object->categorie; // - prix unitaire du produit $_SESSION['session_caddie']->prix[$numero_ligne]; // - quantité du produit $_SESSION['session_caddie']->quantite[$numero_ligne]; } Je le mets dans ok.php ? à la suite de mes lignes de type $GLOBALS['total_produit_ht'] = $_SESSION['session_caddie']->total_produit_ht; ?
pas besoin de mettre [$numero_ligne] pour name et categorie ?
Dans haut.php j'utilise le modèle de total_produit_ht pour les variables ou l'on utilise $GLOBALS pour les stocker en mémoire mais justement pour name et catégorie, je mets ça ou c'est faux ?
$tpl->assign('name', $product_object['name']) $tpl->assign('categorie', $product_object['categorie']) Et enfin pour les 3 autres je peux utiliser le modèle trouvé plus bas qui est :
$tpl->assign('prenom', vb($_SESSION['session_utilisateur']['prenom']));
Ce qui nous donnerai pour nos variables :
$tpl->assign('reference', vb($_SESSION['session_caddie']['reference'])); $tpl->assign('prix', vb($_SESSION['session_caddie']['prix'])); $tpl->assign('quantite', vb($_SESSION['session_caddie']['quantite'])); Et enfin pour site.
Je met juste $GLOBALS['site'] dans ok.php ?
Puis $tpl->assign('site', $GLOBALS['site']); dans haut.php ?
Enfin j'utilise {$site} dans haut.tpl ?
Désolé mais dès que j'ai pas d'exemple concret, je suis un peu perdu.
Merci par avance.
-
0
-
-
djespace a ajouté un message dans un sujet Insertion du code de suivi des conversions AdWords
Bonjour,
J'ai besoin de récupérer d'autres variables pour mon script google parmi lesquelles :
- N° de commande
- Nom du site
- TVA
- frais de livraison HT
- Ville département et pays du client
et
- réf produit
- nom du produit
- categorie du produit
- prix unitaire du produit
- quantité du produit
Pour les frais de livraison ht, je crois avoir trouvé la variable 'cout_transport_ht' dans session_caddie
La ville, cp et pays se trouve dans session_commande je pense....
Mais quel est le nom des autres variables ? et dans quelle session les récupérer ?
--
Si j'ai bien compris, une fois que j'aurais le nom des variables, il faudra suivre le même procédé que pour 'total_produit_ht' ?
C'est à dire une ligne du genre dans la page ok.php
$GLOBALS['total_produit_ht'] = $_SESSION['session_caddie']->total_produit_ht;
Puis la conversion tpl dans haut.php
$tpl->assign('total_produit_ht', $GLOBALS['total_produit_ht']);
puis l'utilisation de la variable {$total_produit_ht} dans haut.tpl
?
Merci.
-
0
-
-
djespace a ajouté un message dans un sujet Insertion du code de suivi des conversions AdWords
Bonjour,
C'est ce que je me suis dit aussi.
Merci Simon.
Je reviens vers vous si j'ai besoin concernant mes autre petits soucis sur ce script.
-
0
-
-
djespace a ajouté un message dans un sujet Insertion du code de suivi des conversions AdWords
Bonjour,
J'ai trouvé le problème ! et il est également valable sur votre module systempay.
En fait vous m'aviez dit de placer la ligne :
$GLOBALS['total_produit_ht'] = $_SESSION['session_caddie']->total_produit_ht; juste avant l'init du caddie, pour être sûr de récupérer la valeur de la variable avant la mise à zéro du caddie.
Le souci c'est que lorsque l'on arrive sur ok.php (ou validation.php, peut importe...)
le caddie est déjà réinitialisé à cause de configuration.inc.php qui réalise un test similaire selon le statut de paiement qui, dans le processus, à déjà été mis à jour par le fichier ipn.php (ou la première execution de validation.php dans mon cas)
// Test pour savoir si une commande est en cours. // Si tel est le cas, on vérifie son statut de paiement et si elle est payée, alors on réinitialise le caddie if (!empty($_SESSION['session_caddie']->commande_id)) { $query_com = query("SELECT * FROM peel_commandes WHERE id ='" . intval($_SESSION['session_caddie']->commande_id) . "' AND id_utilisateur = '" . intval($_SESSION['session_utilisateur']['id_utilisateur']) . "'"); $result_com = fetch_object($query_com); if ($result_com && in_array($result_com->id_statut_paiement, array('2', '3'))) { $_SESSION['session_caddie']->init(); unset($_SESSION['session_commande']); } du coup j'ai modifié la fin du test pour ajouter une condition :
if ($result_com && in_array($result_com->id_statut_paiement, array('2', '3')) && (!defined('IN_PAYMENT_VALIDATION_LANDING_PAGE'))) { $_SESSION['session_caddie']->init(); unset($_SESSION['session_commande']); } Du coup, soit le panier est réinitialisé comme avant par configuration.inc.php.
Soit l'utilisateur arrive bien sur la page ok.php et à ce moment là, le caddie n'est réinitialisé qu'après avoir récupéré la valeur de la variable.
Merci de me dire si ma modification peut générer un dommage collatéral selon vous.
Voila, j'ai encore pas mal d'avertissement google sur d'autres paramètres du script qui sont mal ou pas remonté mais en ce qui concerne la variable total_produit_ht, c'est résolu !
-
0
-
-
djespace a ajouté un message dans un sujet Insertion du code de suivi des conversions AdWords
Re,
J'avance, petit à petit avec mes modestes connaissances...
Donc en fait le problème que j'avais soulevé n'en est pas un.
J'avais effectivement une Notice: Undefined index: total_produit_ht in /home/www/ledsboutique/modeles/white/haut.php on line 33
mais c'est justement à cause du test dans le fichier qui conditionne la suite des opérations et ce, suivant l'id du statut de paiement.
Et moi j'actualisais ma page à chaque modif, mais j'oubliais de repasser la commande "en attente de paiement" pour se remettre dans le bon contexte à cet instant du processus de paiement.
En fait dans le module fourni par systempay, il n'y a pas de fichier IPN pour la communication avec le serveur.
C'est la page validation.php (l'équivalent de la page ok.php) qui fait les 2 et qui est donc executée 2 fois:
- Une première fois par le serveur de paiement (ce qui met à jour le statut de paiement, qui vide la panier, qui envoi les mails de notifications)
- Une deuxieme fois par l'utilisateur (s'il clique sur retourner à la boutique) mais à ce moment là, le statut de paiement est déja en réglé, le panier déja réinitialisé, etc.... donc récupération impossible de la variable...
Donc finalement, le problème résultant est que le montant remonté est à 0...
Il va falloir que je modifie les tests de manière à executer les bonnes choses aussi bien pour le premier passage que pour le second sur cette page.
A vous lire.
-
0
-
-
djespace a ajouté un message dans un sujet Insertion du code de suivi des conversions AdWords
Re,
Bon, j'ai quelques pistes.
Comme je vous le disais, j'utilise les fichiers d'un module que ma fourni SystemPay et il y a quelque différence dans leur version du ok.php (validation.php chez eux)
Et c'est de là que vient le problème et non de haut.php.
Je m'explique :
Dans leur fichier le $_SESSION['session_caddie']->init(); est dans un test.
J'avais donc mis la ligne $GLOBALS['total_produit_ht'] = $_SESSION['session_caddie']->total_produit_ht; dans ce test, juste avant l'init du caddie comme vous me l'aviez demandé.
Mais visiblement le fait que l'on soit dans un test pose problème.
En effet, lorsque je sort la ligne du test, je n'ai plus d'erreur Notice et j'ai bien une valeur remonté chez google, ce qui constitue une avancée en soi.
Malheureusement cette valeur est égale à zéro.
Cela me semblerai logique si elle était déplacée après le $_SESSION['session_caddie']->init(); car le montant est remit à 0 après cette ligne mais le truc c'est que même si je la déplace avant, c'est pareil, montant = 0
Pour le module systempay je vais voir ça avec eux du coup.
Et je vais donc poursuivre mes tests sur votre module paypal et voir ce que ça donne.
Je reviens vers vous à ce sujet dans le week-end.
Merci.
-
0
-
-
djespace a ajouté un message dans un sujet Insertion du code de suivi des conversions AdWords
Bonjour Simon, Non je n'ai toujours pas de remontée du montant. (enfin si je l'ai eu une seule fois en réactualisant la page du retour boutique mais plus depuis)
Comment peut-on faire ?
-
0
-
-
djespace a ajouté un message dans un sujet Insertion du code de suivi des conversions AdWords
Bonjour Simon,
Merci, effectivement comme vous l'aviez constaté, le test n'était pas au bon endroit dans haut.php
Et dans ok.php, vous m'aviez donné le code define('IN_PAYMENT_VALIDATION_LANDING_PAGE') mais sans le ,true à la fin ...
J'ai donc corrigé tout ça et l'affichage du script google réagit désormais bien selon la page affiché.
Par contre, j'ai désoramis d'autres soucis concernant entre autres la variable total_produit_ht
J'obtiens l'erreur suivante sur la page ok.php
Notice: Undefined index: total_produit_ht in /home/www/ledsboutique/modeles/white/haut.php on line 33
Et donc l'information du montant du panier HT ne remonte pas chez google.
Pour info, dans mon fichier ok.php, vous m'aviez demandé de mettre :
$GLOBALS['total_produit_ht'] = $_SESSION['session_caddie']['total_produit_ht']; (juste avant le init du panier)
mais cela me créait une erreur fatale.
J'ai donc modifié en :
$GLOBALS['total_produit_ht'] = $_SESSION['session_caddie']->total_produit_ht;
suivant le modèle de ligne suivante dans ce même fichier
$_SESSION['session_caddie']->init();
Je n'ai donc plus d'erreur fatale mais peut-être le problème vient-il de là...
Merci par avance.
François.
-
0
-
-
djespace a ajouté un message dans un sujet Insertion du code de suivi des conversions AdWords
Bonjour Simon
Je n'ai plus les messages d'erreur mais le tag google (qui avant s'affichait sur toutes les pages) ne s'affiche désormais plus nullepart, même pas sur la page où nous aimerions qu'il s'affiche !
pffiouuu dur dur !
Je ne comprends pas, j'ai tout fait ce que vous me disiez de faire, tout est ok à la virgule près !
Voici mes fichiers haut.php et haut.tpl => http://leds-boutique.fr/serveur/peel/fichiers.rar
Merci par avance.
François.
-
0
-
-
djespace a ajouté un message dans un sujet Insertion du code de suivi des conversions AdWords
Bonjour Simon,
Merci pour ces précisions.
Je vais déjà essayer de résoudre le problème sur systempay avant de m'occuper de paypal.
Donc, déjà j'avais oublié le $ pour le test {if $display_google_tag}
Mais désormais, j'ai ces messages d'erreur sur mes pages.
Notice: Undefined index: display_google_tag in /home/www/ledsboutique/lib/templateEngines/smarty/compile/9a27eac3c99e718898d364e20a9a4a34f36ecc30.file.haut.tpl.php on line 65
Notice: Trying to get property of non-object in /home/www/ledsboutique/lib/templateEngines/smarty/compile/9a27eac3c99e718898d364e20a9a4a34f36ecc30.file.haut.tpl.php on line 65
Pouvez-vous m'aider ?
-
0
-