Jump to content

jerem_

Members
  • Posts

    43
  • Joined

  • Last visited

Everything posted by jerem_

  1. Wow, thanks a lot ! My brain was about to crash until i find your post... That's exactly what i was looking for ! Edit : Well, it did the job once.... then i changed something else in my layout and it's no longer working when i generate the emails... Aaaaand that's ok now... i had to clear the cache from Ps... I've no cache activated in the Presta conf but it seems there's always some cache somewhere...
  2. Bonjour, Je viens de me rendre compte du même soucis sous une de mes boutiques... Deux comptes identiques créés dans la même seconde... Le client a passé commande dans la foulée mais rien n'a été enregistré dans Presta... Rencontrez-vous toujours ce soucis ?
  3. Bonjour, Suite de mon problème remonté... J'ai testé sur un autre site (en 1.7.5.2) et je n'ai pas rencontré le soucis... En cherchant au niveau du code, j'ai fini par trouver l'appel ajax concerné dans le controleur AdminCartsController.php : public function ajaxProcessupdateFreeShipping() { if ($this->access('edit')) { if (!$id_cart_rule = CartRule::getIdByCode(CartRule::BO_ORDER_CODE_PREFIX . (int) $this->context->cart->id)) { $cart_rule = new CartRule(); $cart_rule->code = CartRule::BO_ORDER_CODE_PREFIX . (int) $this->context->cart->id; $cart_rule->name = array(Configuration::get('PS_LANG_DEFAULT') => $this->trans('Free Shipping', array(), 'Admin.Orderscustomers.Feature')); $cart_rule->id_customer = (int) $this->context->cart->id_customer; $cart_rule->free_shipping = true; $cart_rule->quantity = 1; $cart_rule->quantity_per_user = 1; $cart_rule->minimum_amount_currency = (int) $this->context->cart->id_currency; $cart_rule->reduction_currency = (int) $this->context->cart->id_currency; $cart_rule->date_from = date('Y-m-d H:i:s', time()); $cart_rule->date_to = date('Y-m-d H:i:s', time() + 24 * 36000); $cart_rule->active = 1; $cart_rule->add(); } else { $cart_rule = new CartRule((int) $id_cart_rule); } $this->context->cart->removeCartRule((int) $cart_rule->id); if (Tools::getValue('free_shipping')) { $this->context->cart->addCartRule((int) $cart_rule->id); } echo json_encode($this->ajaxReturnVars()); } } Je ne sais pas pourquoi... mais dans le json renvoyé par cet appel ajax, "delivery_option_list" (sensé renvoyer la liste des transporteurs disponibles) se retrouve vide... J'ai tenté plusieurs choses et ai fini par testé d'afficher le contenu de $this->ajaxReturnVars() en début de fonction pour comparer avec ce qui était renvoyé en fin de fonction... Et là, surprise, les DEUX affichaient un "delivery_option_list" correctement rempli.... J'ai fini par laisser un simple appel à $this->ajaxReturnVars() en début de fonction... Il est possible que cela initialise certaines données utilisées ensuite par $cart_rule... qui, autrement, vidait mon fameux "delivery_option_list"... Mon soucis semble résolu mais je n'ai malheureusement pas le temps d'investiguer d'avantage pour comprendre la source exacte du soucis... Je laisse ici mon retour à bon entendeur...
  4. Bonjour, PS 1.7.6.1 Lorsque je créé une commande par le back office, dans l'encart livraison, si j'essaye de passer "Livraison gratuite" à "Oui", le message "Aucun transporteur ne peut être appliqué à cette commande" apparait (alors que j'avais bien le bon transporteur disponible auparavant) (cf image en PJ) et je ne peux plus enregistrer la commande... Je n'avais pas ce soucis auparavant mais je n'arrive à voir d'où ça vient... Je ne sais pas si c'est depuis une migration récente du site ou un changement dans la configuration... Quelqu'un aurait une idée ? Normalement tout est bien configuré. Le client a une adresse valide pour ce transporteur. Le produit peut bien être livré par ce transporteur... et le transporteur est bien sélectionnable tant que je ne souhaite pas offrir les frais de port... D'avance merci
  5. Salut ! Merci pour ton petit post, je me sens moins seul désormais... Je planche visiblement sur un dev un peu similaire et me suis vraiment galéré à ajouter mes champs de personnalisation à mes produits... La première chose que je ne comprends pas... c'est le traitement de cette colonne "is_module"... Je suis tombé en parallèle sur ce début de discussion : https://www.prestashop.com/forums/topic/549666-guide-the-new-customization-system-in-prestashop-17/ Je ne vois absolument pas le but de tout ça... Perso j'ai besoin que mes champs apparaissent sur le front-end... je ne comprends pas le côté systématique du contraire... Donc au final j'ai décidé de ne pas utiliser le is_module (je le laisse à 0)... Comme ça pas de problème de visibilité côté public... Et j'ai surchargé comme toi la fonction softDeleteCustomizationFields mais aussi deleteUnusedCustomizationFields pour leur faire faire... rien. J'empêche de toutes façons la création manuelle de champs de personnalisation, c'est mon module qui le fait à l'enregistrement d'un produit (dans mon cas, ce sont toujours les mêmes champs qui sont créés). Donc je ne me soucis pas de leur suppression éventuelle... Pour le moment ça tourne mais je n'ai pas terminé mon dev, à voir si tout est ok jusqu'au bout... C'est vraiment crado de bosser comme ça mais pas trop le choix je crois malheureusement...
  6. Hello, i got the same issue.... I try to insert customizable fields on product update... But smtg seems to remove my fields from the database just after my script insert it.... (my items are well inserted in the database, i checked this with a query just after the insert) Any idea how to solve this ?
  7. À force d'avoir le nez dedans, je n'ai plus les idées claires. Je viens de tester un truc tout bête : mettre un exit() juste après l'exécution du hook actionProductUpdate dans la fonction d'update de la classe Product. Et cette fois-ci, je vois bien mon tuple rester en bdd. Il y a donc bien un moment dans le process où mes champs sont supprimés pour x raison... Je continue mes investigations et je noterai mes avancées ici, ça servirait peut-être à quelqu'un d'autre un jour !
  8. Bonjour, Je me bagarre depuis hier pour ajouter systèmatiquement des champs de personnalisation à mes produits lors d'un enregistrement. J'ai créé un module et j'utilise le hook ActionProductUpdate pour exécuter mes insertions... Mon code s'exécute normalement lors d'un enregistrement. Si je fais un select sur la table customization_field avant l'insertion, je ne vois rien et si je le refais à la fin de mon code je vois bien mes tuples ajoutés en bdd. Les id s'incrètement bien, zéro problème en apparence. SAUF QUE .... je ne retrouve finalement rien dans ma bdd et mes champs de personnalisation ne sont pas du tout ajoutés à mon produit... C'est comme s'ils étaient bien créés mais que dans la même exécution, un peu plus loin, ils étaient supprimés... Et impossible de comprendre comment.. Je suis sous Ps17, est-ce que quelqu'un de calé sur le process d'enregistrement produit aurait une petite idée de ce qui peut se passer ?! D'avance merci,
  9. Bonjour, Même soucis de mon côté mais je n'ai pas de répertoire cache dans themes/classic Et normalement les droits sont ok de mon côté sur l'ensemble des répertoires... EDIT : Ok, solution trouvée sur un autre thread : J'ai désactivé le module Bienvenue et le bloc a disparu... Ça n'est pas vraiment un résolution de bug mais faute de mieux au moins ça ne me dérange plus.
  10. Bonjour, Désolé un peu de délai de réponses ^^' Ce n'est pas mon activité à proprement parlé, je m'occupe du développement du site Presta d'une cliente. Ton commentaire est totalement justifié car c'est en effet également une discussion que j'ai eu avec la cliente et elle assumerait totalement le cas de figure "stock produit commandé et payé en direct alors qu'il avait été déjà commandé et était en attente de la réception du chèque".... Elle préfère que son produit reste disponible le temps de la réception du chèque, quitte à tomber dans ce genre de travers où elle devra se réapprovisionner en urgence une fois le chèque reçu. Elle a aussi beaucoup de soucis avec des commandes par chèque dont le chèque n'arrive jamais et qui faussent malheureusement l'état de ses stocks... Ça me permet un petit up dans le forum si jamais quelqu'un a une solution ou d'autres pistes de réflexion ! Merci !
  11. Bonjour, Je mène une réflexion sur l'utilisation des états de commande et la manière dont sont décomptés les stocks. J'aimerais que les stocks ne soient pas décomptés lorsqu'un client choisit un paiement par chèque. Que les stocks soient uniquement décomptés lors du passage à un état de commande qui "Considère la commande associée comme validée." pour reprendre l'intitulé de l'option dans le BO au niveau de la gestion des états de commande. Est-ce possible ? J'ai l'impression que les stocks sont décomptés dès la confirmation d'une commande par un client, quelque soit l'état dans lequel la commande se retrouve ("En attente de paiement par chèque", "Paiement accepté", etc.) À la rigueur, je crois savoir que les stocks sont "remis comme avant" lorsque l'on passe une commande à l'état "Annulé". N'y a t-il pas moyen d'appliquer le même principe sur une commande "En attente de paiement par chèque" ? Merci d'avance pour vos retours et/ou idées Contexte : Ps 1.7
  12. Bonjour, Oui bien sûr, c'est juste, désolé. À force d'avoir la tête dans le code je n'ai plus les pensées assez claires ! Je ne voulais pas rentrer trop le détail pour ne pas être trop barbant et j'en ai oublié l'essentiel : je suis sous Ps 1.7.4.2 Je suis conscient de la complexité potentielle du développement. Je suis moi-même développeur pro (pas forcément spécialisé Presta, d'où mon manque de connaissances pour régler seul ce soucis..) et j'essaye justement de parvenir à mes fins tout en montant en compétence sur l'outil. Mais je comprends la remarque pas de soucis. Les prix spécifiques côté BO est une piste à laquelle j'avais pensé en effet. Mais ils ne me permettraient pas de répondre exactement à mon besoin. Je pourrais appliquer un surcoût à l'unité mais je ne pourrais pas travailler ainsi pour gérer les grandes quantités... j'aurais un nombre infini de règles à créer... J'ai étudié un peu tout ce qui était envisageable par une simple configuration du BO mais en suis arrivé à la conclusion qu'il me fallait attaquer la chose avec du dév spécifique et une surcharge du panier... Je nage maintenant en eaux troubles pour comprendre comment appliquer mes surcoûts dans le panier et par ligne produit. Je prendrais donc comme une grande aide la moindre piste Merci pour les premières suggestions déjà !
  13. Hello ! I'd like to manipulate the cart object... change the total price of a product line etc. How can i do that ? I try to do get products using $this->context->cart->getProducts() but then i don't know how to edit datas as total or total_wt.... cause i only get an array and i'm not sure i can edit cart products this way Thanks for any help !
  14. Bonjour, J'aimerais appliquer un surcoût à mes produits dans certains cas. J'ai des déclinaisons qui me permettent de définir un conditionnement. Pour une déclinaison/un conditionnement donné, je souhaiterais appliquer un surcoût qui est appliqué selon une formule précise. Selon la quantité à ajouter au panier pour le produit, cela me permet d'appliquer un conditionnement particulier. Je dois empaqueter par 3 mes produits dans un seul paquet pour un surcoût de 10€. Ou empaqueter par 1 par paquet pour un surcoût de 10€ également. Exemple concret : Si le client prend 5 produits, j'aurai comme total : prix du produit x 5 + 10€ (1 gros paquet) + 10€ (1 petit paquet) + 10€ (1 petit paquet) Je ne sais pas comment solutionner ce problème... Pour le moment, le coût de mon produit n'est uniquement affecté que par sa quantité et non par mon surcoût du au conditionnement. Désolé pour ces explications un peu longues et sans doute pas très claires... J'aimerais surcharger le panier car je peux m'en sortir dans la vue produit mais je ne crois pas pouvoir modifier les produits dans le context cart ? Si je pouvais intervenir dans la fonction d'ajout au panier pour modifier le montant calculé (prix x quantité) pour ajouter mon surcoût calculé, cela ferait (je pense et j'espère) mon affaire... Mais je ne vois pas trop comment surcharger cela... Merci pour toute personne qui aura le courage d'essayer de m'aider ! Edit : Avant d'envisager tout ça, j'ai évidemment pensé à jouer sur les impacts de prix au niveau des déclinaisons... mais je ne trouve pas mon compte du fait de ma formule de calcul un peu particulière.
  15. @Eolia Ce n'est pas le sujet... mais allons-y. Je respecte vraiment ce que tu fais sur le forum hein, tu es sûrement une des personnes les plus actives et je te vois régulièrement venir en aide aux autres. Mais j'ai aussi constaté sans soucis qu'une fois sur cinq tu ne fais que dénigrer la 1.7. Alors je comprends ta frustration sur les changements et l'évolution de la plateforme, moi-même je suis dégoûté en tant que développeur de certains changements, certaines fonctionnalités qui ont sauté, certains bugs etc. Mais le lobbying anti-1.7 a aussi ses limites... Perso, je n'irai pas forcément jusqu'à encourager les gens à l'utiliser non plus, chacun ses choix ; mais si on ne fait pas un minimum d'efforts, ça n'ira malheureusement pas dans le bon sens. Il est encore temps de corriger la trajectoire et je comprends bien qu'on mette en avant les défauts de la 1.7 mais on peut aussi rester un minimum positif et tenter d'amener Presta vers quelque chose de bon en s'entraidant et en faisant avancer les choses plutôt qu'en les regardant aller dans le mur sans rien faire. Dommage que tu restes bloqué là-dessus parce que tu as l'air très compétent et Presta a besoin de personnes comme toi... *** Anyway, je vais essayer de me dépanner moi-même pour mon soucis et reposterai ici selon mes avancées. Edit : Je préfère préciser pardon : je ne te juge pas ni ne dis que tu n'es pas objectif hein. Je suis même d'accord avec toi bien souvent quand tu parles de la 1.7. Juste le côté "rester positif" que je voulais aborder même si on nous donne pas forcément toutes les raisons de l'être... mais bon, c'est les fêtes de fin d'année alors je ne sais pas.. ma positivité doit être au max !
  16. Je me permet un petit up. Personne n'a rencontré ce soucis ? Cela m'étonne car dans l'idée c'est un processus assez répandu je pense. J'aimerais m'assurer déjà qu'il s'agisse d'un problème inhérent à Presta ou bien au contraire de mes développements sur ce site..
  17. Bonjour, Je remonte ce sujet pour un problème qui me semble le même. (Prestashop 1.7.0.5) J'ai une règle panier qui offre les frais de port pour une commande supérieure à 80€. Cette règle s'applique très bien si le client possède déjà un compte. Qu'il se connecte avant de faire son panier ou pendant le process de commande, c'est ok. Si la personne se créé un compte pendant le processus de commande directement, la règle panier ne s'applique pas ! Mais si cette même personne se déconnecte puis se reconnecte, la règle panier s'appliquera bien ! Il y a sûrement un problème dans l'initialisation du client lors d'une création de compte pendant le processus de commande... Quelqu'un a t-il déjà eu ce soucis ? (et l'aurait résolu, évidemment... 😛 ) Merci
  18. Hello I actually found this thread before i up this one but i don't get how it can help me :s I just like to call a function of my own js when updateProduct event traitment is finished
  19. Hi, Up, cause i have the same question
  20. Je me permets un petit up. Personne n'a jamais mis en place ce comportement ?
  21. Si tu mets vraiment 3h à trouver, c'est que tu n'ai déjà pas très "aidé" de base... Suffit de taper "lenteur" dans la recherche du forum pour tomber en 2s sur ce type de sujet : https://www.prestashop.com/forums/topic/907909-lenteur-bo/ Et je me permettrais d'ajouter qu'Eolia fait sûrement parti des personnes que je vois le plus régulièrement aider les autres sur les forums Prestashop... T'es plutôt mal tombé pour dire ça. Edit : Erf, Eolia m'a devancé lui-même ^^
  22. Bonjour, J'ai fouiné un peu sur les forums mais je n'ai pas trouvé mon bonheur... et je ne pense pas que l'on puisse réaliser ceci avec le fonctionnement natif mais je tente tout de même ma chance... (sous Presta 1.7) Je souhaite que des produits d'une même catégorie soient à 2€ au lieu de 0€ à partir du 3e article de la catégorie ajouté au panier. J'ai testé avec une règle catalogue : - Un groupe de condition créé sur la catégorie concernée - Pas de réduction appliquée mais un prix initial à 2€ à partir de la quantité 3 Le comportement résultant n'est pas le bon évidemment car : - Si je mets 3 produits identiques appartenant à la catégorie, ils passent TOUS à 2€... Moi je souhaiterais que seul le 3e produit (et 4e, 5e, 6e... s'il y a plus de produits) soit à 2€ - La notion de quantité ne marche que pour un produit identique. Si j'ai 1 produit A et 2 produit B, la règle n'est pas appliquée alors que j'ai bien 3 produits de la catégorie concernée dans mon panier. Pour résumer, je voudrais : Tous les produits d'une catégorie A sont à 0€. Mais dès que j'ai déjà 2 produits (2x le produit A1 ou bien 1x produit A1 et 1x A2 par exemple) dans mon panier, les suivants coûteront 2€ (qu'ils soient un produit A1, A2 ou autre de catégorie A). (pour faire plus simple ce sont des échantillons, un client peut commander gratuitement 2 échantillons et doit payer les supplémentaires) Peut-on réaliser ceci d'une manière simple (paramétrage voire un peu de dev que je suis en mesure de réaliser) ? À moins qu'un module existe pour réaliser ceci (même payant) et que quelqu'un pourrait me conseiller ? D'avance merci
  23. Merci pour le lien, ma réponse était dedans, je n'avais pas vu cet article ! Pour info, il me fallait juste compléter l'appel de mon hook ainsi : {hook h='displayGDPRConsent' mod='psgdpr' id_module=$id_module} De cette manière, id_module est bien renseigné en aval lors de l'appel de la fonction du module.
  24. Bonjour, Je me trompe peut-être de thread car je n'ai pas vraiment l'impression que ça parle du module officiel RGPD disponible pour la 1.7 mais je tente ma chance... J'ai installé et activé le module RGPD Officiel puis l'ai configuré afin qu'apparaisse la case de consentement RGPD sur le formulaire de contact... Puis dans mon tpl de formulaire de contact (themes/montheme/modules/contactform/views/templates/widget/contactform.tpl), j'ai ajouté {hook h='displayGDPRConsent'} afin que la fonctionnalité apparaisse bien sur le formulaire... Cela semble bien appeler la fonction hookDisplayGDPRConsent du module... mais derrière ça ne suit pas. Ça plante à ce niveau : if (!isset($params['id_module'])) { return; } id_module n'existe pas dans l'array de params transmis et la fonction s'arrête donc là... et donc pas d'affichage... Quelqu'un a t-il rencontré ce soucis ? D'avance merci !
×
×
  • Create New...

Important Information

Cookies ensure the smooth running of our services. Using these, you accept the use of cookies. Learn More