Jump to content

Broceliande

Members
  • Posts

    1,735
  • Joined

  • Last visited

  • Days Won

    5

Everything posted by Broceliande

  1. Ok , voilà un bout de plus : le code qui rend administrable par transporteur dans votre BO Je manque énormément de temps pour faire un "package" , mais si vous avez déja effectué les modifs précédemment décrites, alors updatez juste votre fichier /votreadmin/tabs/AdminShipping.php et remplacez le par le fichier attaché à ce post: Attention !!! , si vous avez installé un module type mondial relay , alors une ligne diffère, adaptez ou postez ici ... Dans tous les cas , faites en une sauvegarde avant... AdminShipping.php
  2. Je reconnais que cette manip demande à l'heure actuelle de mettre les mains dans le cambouis , en même temps ces dernières ne sont pas non plus véritablement niveau expert. Un peu de doc sur phpmyadmin et les bases de données et même seul tu devrais pouvoir t'en sortir...ou attendre que tes potes reviennent du ski
  3. C'est dans mes projets oui, sauf si ... sauf que .... Sauf que cette modif est plus une extension du code existant qu'un module en soi. Sauf donc , si la prestateam elle même passait par ici et décidait que oui , pourquoi pas , au vu de la simplicité de la modif et du bénéfice que l'on en retire , rendre ce paramètre individuel et donc intégrer plutôt ceci dans presta nativement. Celà sous entends que je devrais sous peu compléter mes modifs ci dessus par celles qui en découlent dans l'admin, espérant que personne n'y verra quelque chose de bloquant. Du coup nous n'aurions plus besoin d'un 'module' ou plutot un module de patch, que pour les versions antérieures.
  4. La table est en fait la table carrier dans la base de données, à laquelle tu pourras facilement ajouter un champ en utilisant par exemple phpmyadmin Lorsque j'ai noté [ps_]carrier, j'ai juste mis entre crochets le préfixe par défaut de la table , généralement ps_ Selon le cas donc la table sera juste 'carrier' ou 'xxx_carrier' , selon ton installation et le préfixe de table que tu auras choisi . Dans tous les cas et ne serait-ce que pour ajouter le champ , il te faut une interface type phpmyadmin (la plus courante) pour arriver à tes fins. Tu auras également besoin de cette même interface pour passer les champs ps_shipping_method à 0 ou 1 selon la méthode désirée, puisque je le rappelle je n'ai encore effectué aucune modif de l'admin pour gérer ça facile , je garde l'enrobage pour plus tard si cette fonctionnalité vous intéresse. Autre rappel , chaque modification effectuée sur un transporteur implique de re-renseigner ce champ (sic!) car presta duplique le transporteur à chaque modif pour il me semble garder la config précédente dans les commandes déja passées, il passe le champ 'active' de l'ancien à 0 et celui du nouveau à 1 (plus facile pour toit donc de se repérer).
  5. ok easybizness , voici brièvement mais exactement ce que j'ai fais sur presta 1.2.5 : 1) Ajout dans la table [ps_]carrier d'un champ ps_shipping_method tinyint 1 2) Modif de la classe Carrier /classes/Carrier.php : Ligne 44 juste après /** @var boolean Carrier module */ public $is_module; Ajout de : /** @var boolean Carrier ps_shipping_method*/ public $ps_shipping_method; ligne 49 protected $fieldsValidate = array('id_tax' => 'isInt', 'name' => 'isCarrierName', 'active' => 'isBool', 'url' => 'isAbsoluteUrl', 'shipping_handling' => 'isBool', 'range_behavior' => 'isBool'); devient : protected $fieldsValidate = array('id_tax' => 'isInt', 'name' => 'isCarrierName', 'active' => 'isBool', 'url' => 'isAbsoluteUrl', 'shipping_handling' => 'isBool', 'range_behavior' => 'isBool', 'ps_shipping_method' => 'isBool'); ligne 71 , juste après $fields['is_module'] = intval($this->is_module); ajout de $fields['ps_shipping_method'] = intval($this->ps_shipping_method); Ensuite on s'attaque à /classes/Cart.php ligne 719 le bloc if devient : // Get shipping cost using correct method if ($carrier->range_behavior) { // Get id zone if (isset($this->id_address_delivery) AND $this->id_address_delivery) $id_zone = Address::getZoneById(intval($this->id_address_delivery)); else $id_zone = intval($defaultCountry->id_zone); if (($carrier->ps_shipping_method AND (!Carrier::checkDeliveryPriceByWeight($carrier->id, $this->getTotalWeight(), $id_zone))) OR (!$carrier->ps_shipping_method AND (!Carrier::checkDeliveryPriceByPrice($carrier->id, $this->getOrderTotal(true, 4), $id_zone)))) $shipping_cost += 0; else { if (intval($carrier->ps_shipping_method)) $shipping_cost += $carrier->getDeliveryPriceByWeight($this->getTotalWeight(), $id_zone); else $shipping_cost += $carrier->getDeliveryPriceByPrice($orderTotal, $id_zone); } } update du 9/03 , un oubli ... Fichier /order.php fonction function displayCarrier() juste après la ligne $resultsArray = array(); remplacer la boucle foreach par foreach ($result AS $k => $row) { $carrier = new Carrier(intval($row['id_carrier'])); if (($carrier->ps_shipping_method AND $carrier->getMaxDeliveryPriceByWeight($id_zone) === false) OR (!$carrier->ps_shipping_method AND $carrier->getMaxDeliveryPriceByPrice($id_zone) === false)) { unset($result[$k]); continue ; } if ($row['range_behavior']) { // Get id zone if (isset($cart->id_address_delivery) AND $cart->id_address_delivery) $id_zone = Address::getZoneById(intval($cart->id_address_delivery)); else $id_zone = intval($defaultCountry->id_zone); if (($carrier->ps_shipping_method AND (!Carrier::checkDeliveryPriceByWeight($row['id_carrier'], $cart->getTotalWeight(), $id_zone))) OR (!$carrier->ps_shipping_method AND (!Carrier::checkDeliveryPriceByPrice($row['id_carrier'], $cart->getOrderTotal(true, 4), $id_zone)))) { unset($result[$k]); continue ; } } $row['name'] = (strval($row['name']) != '0' ? $row['name'] : Configuration::get('PS_SHOP_NAME')); $row['price'] = $cart->getOrderShippingCost(intval($row['id_carrier'])); $row['price_tax_exc'] = $cart->getOrderShippingCost(intval($row['id_carrier']), false); $row['img'] = file_exists(_PS_SHIP_IMG_DIR_.intval($row['id_carrier']).'.jpg') ? _THEME_SHIP_DIR_.intval($row['id_carrier']).'.jpg' : ''; $resultsArray[] = $row; } Voilà , donc il suffit après de renseigner le champ ps_shipping_method de la table [ps_]carrier selon le comportement souhaité : 0 = par tranche de prix , 1 = par tranche de poids , une fois qu'on a configuré les tranches adéquates dans l'admin bien sûr. Update : quelques posts plus bas vous trouverez le fichier à remplacer dans l'admin pour la gestion directe de ces valeurs dans le BO La limitation du truc , à cette heure , est que malheureusement, chaque fois qu'on enregistre une modif sur un transporteur (nom ou autre) alors le champ est à renseigner de nouveau , car presta crée un nouveau transporteur chaque fois et désactive le précédent . je n'ai pas eu encore le temps d'adapter la partie admin . Voilà c'est pas grand chose comme modif, mais ça marche , on peut mixer tranches de poids et prix , et je n'hesiterais pas à poster les modifs côté admin dès que j'aurais 5 mn devant moi pour les faire, surtout si ça interesse du monde
  6. Salut, Content d'avoir au moins une réponse à mon post Je ne crois pas que le transport soit instable sur presta, pas une seconde. Si tes calculs se font désormais selon le poids et non par rapport au prix , c'est que tu as changé ce fameux paramètre 'global' à tous les transporteurs Ce paramètre se règle lorsque tu cliques sur l'onglet transport dans ton admin. il y a deux champs : En fonction du prix total En fonction du poids total Ma modif permet justement d'avoir une gestion distincte par transporteur et non un seul paramètre partagé pour l'ensemble des transporteurs. Un exemple simple : - tu offres le transport en france à partir de 30€ de commande : 1) tu règles un transporteur à priori 'colissimo france' pour se comporter comme tel de 0 à 30€ de commande , 5.50€ de 30 à xxxxxxxx , 0€ - Dans le système presta actuel tous tes tranporteurs devront utiliser des tranches de prix : pas glop - avec la modif que je propose , chaque transporteur peut se comporter différement. Comme je l'ai dis , je n'ai rien à ce jour d'installable, ni d'administrable , mais en cas de besoin , pas de problème pour que je poste ici les modifs que j'ai effectuées (très peu en fait ) , et le modus opérandi pour configurer pour que cela fonctionne tout le temps (car chaque fois qu'un paramètre de transporteur est modifié , presta duplique ce dernier dans la table avec les nouveaux paramètres. Ce qui te fais perdre à chaque fois la config 'individuelle' du comportement par tranches et par transporteur . C'est la raison pour laquelle je demandais si cela valait la peine d'implémenter ma modif plus en fond ou non. car en l'état elle suffit à mon client. Just let me know.
  7. Bonjour à tous, J'espère poster dans la bonne section. A ce jour , j'ai implémenté sur une boutique une extension du module transport. La problèmatique était la suivante : La plupart des pays doivent être tarifés en fonction du poids. En france , mon client tarife un prix fixe pour l'ensemble des commandes, et offre le transport à partir d'un seuil de commande. Facile me direz vous ? 2 tranches de prix 0 à x et x à 1000000.... , le tarif pour la premiere et 0 pour la seconde Seulement tous les autres transports doivent se baser sur le poids et non le prix ( ce choix est malheureusement effectué pour tous les transporteurs) Facile alors, me direz vous ? Il suffit de mettre le transport offert à partir de ... € dans la config générale . Seulement là aussi le paramètre est global... J'ai donc modifié deux classes qui me permettent d'avoir des paramètres indépendants de tranche (poids ou prix) , pour chaque transporteur. Je ne sais pas si ceci intéresse du monde, mais à ce stade ma modif fonctionne mais n'est encore qu'un tweak , j'entends par là que rien dans l'admin ne permet de configurer quel transporteur utilise telle ou telle tranche , que le module n'est pas encore 'installable' etc... J'attends donc de savoir si une telle extension peux interesser du monde avant d'aller au delà de ce qui satisfait déja mon client en terme de fonctionnement et passer du temps à la rendre 'portable et installable'. Merci de vos avis et encouragements, Cdt Broceliande
  8. En fait je me réponds à moi même, qui sait un jour ça peut servir , et puis ça me semble logique de le faire. J'utilise cette fonction de la manière suivante , suite aux conseils obtenus ici-même C'est un script appelé sytématiquement par la banque apres une transaction carte bleue type paybox , valide ou pas, et que le client retourne ou non a la boutique: ....... // bon la je récupère les variables get en tous genres fournies par la banque ... ... // puis apres j'enregistre les données de la transaction dans une table a part... ... // enfin je valide le paiement if($erreur==0 && $auto>0) { $history = new OrderHistory(); $history->id_order = $maref; // l'id commande $history->id_order_state = 2; // Paiement accepté $history->addWithemail(); } ça ne marche pas En fait deux choses faisaient que cela ne fonctionnait pas : - pour une raison que j'ignore , et malgré le fait que j'utilise un identifiant/pass mysql dédié + une table dédiée, la classe OrderHistory de prestashop n'aime guère être appelée derrière ma propre requête (même après un db close et un free result) du coup la commande est bien validée , mais la date de validation est 0000-00-00 00:00:00 - Le mail ne part pas , car il manque une donnée semble-t-il vitale pour l'envoi : le champ id_employee est à 0 du coup je fais ça : ....... // bon la je récupère les variables get en tous genres fournies par la banque ... ... // enfin je valide le paiement if($erreur==0 && $auto>0) { $history = new OrderHistory(); $history->id_order = $maref; // l'id commande $history->id_order_state = 2; // Paiement accepté $history->id_employee= 1; // un compte employee valide chez moi $history->addWithemail(); } // j'enregistre les données de la transaction... <= seulement apres l'appel à addWithemail() ... Et ça roule nickel
  9. Juste un petit up , non pour faire du hammering , mais parce que je me demande toujours si il y a un truc qui m'échappe, ou si cette histoire d' $autodate=true ne comporte pas un bug. Bon si un dev passe par là , peut etre qu'un simple test pourrait confirmer soit ma maladresse , soit un test. Comme je dois vraiment obtenir un résultat , je vais fouiller plus en détail et tracer un peu plus la fonction , qui à debugguer un prestashop local instruction par instruction. Si c'est fructueux tant mieux je reposterais direct ici mes résultats. Bonne journée à tous, Eric
  10. Bonjour à tous, Me revoilà avec mes gros sabots de prestashop's learner & newbie. cf un post un peu plus bas j'ai donc eu à utiliser la fonction sus-citée history.addWithemail(). Seulement voilà , cette fonction a bien l'effet désiré au niveau status , mais ne génère pas l'envoi du mail associé comme son nom l'indique. Je ne sais absolument pas pourquoi aucun mail ne part , mais j'ai regardé un tout petit peu la classe et il y a des points qui m'intriguent : - la déclaration de la fonction est ainsi faite : function addWithemail($autodate = true, $templateVars = false) Ce qui me gène le plus est l'argument $autodate = true , non parce qu'il est fixé ainsi et donc pas modifiable , mais plutot parce que l'appel de cette methode change bien le statut de la commande , mais avec 00/00/0000 - 00:00:00 en guise de date. Dans tous les cas pas de mail envoyé lorsque le script arrive à : if (Validate::isLoadedObject($order)) Mail::Send(intval($order->id_lang), $result['template'], $topic, $data, $result['email'], $result['firstname'].' '.$result['lastname']); Je vais chercher de mon coté bien sur en traçant un peu plus la fonction , mais je serais curieux de savoir si c'est un bug de cette fonction, ou une mauvaise utilisation. Merci de vos réponses, Eric
  11. Comme une lettre à la poste ! Un grand merci. Bon pour résumer mon probleme et sa solution (ça pourrait servir à d'autres) : J'avais une vision obscure des modalités d'utilisation des objets et classes en dehors du contexte 'module' Mon script étant appelé hors cadre prestashop , je me faisais un monde de ça au final alors que : include('./config/config.inc.php'); include('./init.php'); ... au debut de mon script , et je peux instancier par exemple l'objet qui m'a servit à updater le statut commande. Comme sur des roulettes , ces deux lignes d'init toutes bête m'ouvrent bien des portes que je n'avait pas encore poussé.
  12. Wow, ça c'est du rapide, et précis en plus. Merci beaucoup je m'y colle de suite, c'est sur que c'est bien moins hasardeux d'instancier des objets fais pour ça . Merci encore je posterais mes résultats. Eric
  13. Bonjour/soir à tous, Je suis devant un problème idiot, mais j'espère que les bonnes âmes ici présentes pourront me sortir de l'ombre. Je ne suis pas un pro de prestashop , mais j'ai développé un module paybox pour un ami, histoire de répondre à ses besoins (rien de folichon mais fonctionnel). Je bloque par contre sur un point : Il existe une URL transmise à la banque qui est appelée quelque soit l'issue du paiement, et cela même si le client ferme la fenêtre. C'est à partir de cet appel que je collecte les infos paiement, et je souhaite modifier le statut de la commande concernée en fonction de ces infos , et générer le mail adéquat sans avoir à réinventer la roue , puis prestashop sait faire cela très bien. Je me suis donc penché sur les fonctions statiques de la classe Hook, par exemple , comme Hook::updateOrderStatus(intval($new_order_state), intval($id_order)); Seulement voilà, l'appel à cette fonction ne donne absolument rien :s . En fin de compte je réalise que dériver d'une classe dans le cadre d'un module est assez facile, meme sans connaitre prestashop sur le bout des ongles, mais qu'en ce qui me concerne je ne sais absolument pas , dans un simple script php, utiliser une des classes. faute aussi peut être de documentation ( pourtant j'ai cherché ). J'ai juste inclus include('./config/config.inc.php'); dans mon script pensant que cela suffisait, mais nenni ... D'ou ma question : Quelle est la bonne fonction à appeler pour obtenir le changement de status, la mise en historique, et la génération du mail en un appel, et que dois-je respecter dans mes includes pour être autorisé à appeler cette fonction. Merci aux âmes charitables. Eric
  14. Hujer a 100% raison , ce plugin de firefox est magique, je ne sais pas pourquoi je n'ai jamais eu vent de cet outil. Sans doute parce que je ne fais pas tant que ça joujou avec les css, et que j'ai trop l'habitude de chercher à la main, le plus souvent direct dans le code source... et honte à moi , le plus souvent directement dans IE :s. Bref merci encore à tous les deux. Eric
  15. Merci !! plus que m'aiguiller tu m'as donné l'emplacement tout pile. Il me reste encore le prix qui s'affiche en face de chaque élément du panier , qui lui semble être encore ailleurs, mais je vais tacher d'installer le plugin conseillé par hujer , c'est un bon test. Eric
  16. Thanx for the advise hujer, i'll really consider installing this plugin. It will most prolly avoid me a lot of time loss. Best regards
  17. je vais tenter le coup mais il me semble avoir tenter ce genre de "forçage" Merci en tout cas de ta réponse, J'avais bien exploré toutes les sections liées au 'price' La seule qui contient une info de couleur (en plus c'est parce que c'est blanc que je veux changer ) est celle ci : #cart_block table#vouchers td.price { color:white; font-size:1em; font-weight:normal; width:37%; text-align:right; } mais le prix n'est pas dans un td :s au passage je suis sur la rc3 . Je vais fouiller un peu plus Eric
  18. Bonsoir , je cale sur un truc tout bête , mais alors franchement ! Je m'explique depuis plus d'une heure je cherche à modifier la couleur des prix s'affichant dans le panier. Je n'ai pas de problème en générale avec ce genre de truc , je repere la classe ou l'id css , je le repère et le modifie dans le css , et ça roule... Mais alors là , pas moyen ! je ne sais pas si c'est lié à l'utilisation d'ajax , mais mes tentatives ont toutes avortées. Alors si l'un de vous avait déja fouiné de ce côté Merci Broce
  19. Aucun souci pour moi , je n'ai peut être pas été très clair dès le départ , puis comme tu le soulignais mes lignes à rallonge... hein .... Pour finir juste j'ai tendance à préférer le cas général aux cas particuliers, en terme de dev bien sur. Autrement dit , pour moi le cas particulier n'est qu'une façon de démontrer qu'une routine ne fonctionne pas comme on le voudrait. Mais si cette routine ou fonction , peu importe, permet de traiter l'intégralité des souhaits à moindres frais , alors pour moi c'est gagné. Ce genre de babiole comme un champ 'sort' permet à n'importe quel utilisateur de choisir pil poil l'ordre d'affichage , sans restriction. A voir... +++ Eric
  20. Salut julien , et désolé pour tes yeux , je vais tacher de faire mieux. J'avoue ne pas comprendre très bien cette approche avec natsort. Cette clause 'ORDER BY' existe bel et bien si je ne m'abuse dans les scripts de prestashop, puisque l'on peutconfigurer ceci dans le back office . D'autre part un natsort n'est jamais qu'une restriction d'un classement personnalisé dans la mesure ou il faudra d'une manière ou une autre jongler avec les noms de catégories pour obtenir le résultat souhaité , ce qui n'est pas le cas avec un champ dédié. Cela ne prend pas vraiment une place considérable dans la bdd , vu qu'un champ int 8 suffit au classement de quelques 99 999 999 de catégories , ou produits si on applique cela aux produits également. Il se peut que je n'ai pas tout compris de ton post , mais de ce que je connais d'un natsort , c'est ni plus ni moins un classement alpha un peu particulier, pas un classement entièrement perso , ce qu'un champ supplémentaire peut apporter le plus simplement du monde. Bon je veux pas non plus créer un polémique, de mon côté il ne s'agissait que d'une suggestion . Broceliande
  21. Bonjour bruno, (J'en profite pour faire une petite appartée que seul toi comprendras (et je m'en excuse auprès de tous les autres) : Je suis parvenu à mes fins sans aucun problème. Le produit en question vaut sans équivoque le prix qu'il est vendu. Malheureusement une majeure partie de ce prix comportait un produit que j'étais en mesure de fournir , ce qui explique qu'il m'était plus facile de combler les quelques % manquants que de vendre à mon client ce qu'il avait l'idée d'avoir déja payé... je suis sur que tu le comprendras....) Merci de ta réponse c'est une chose que je ne savais pas. C'est aussi à la fois assez ironique car j'aurais pu m'en rendre compte très vite dans la mesure ou je savais qu'en ajoutant un numéro devant , j'obtiendrais forcément l'ordre souhaité grace au classement alpha. Mais comme cela ne me semblait pas satisfaisant je n'ai même pas testé.... :s Cela étant dit je dois avouer que je ne trouve pas cette solution , bien que 100% fonctionnelle , très élégante. Je ne me pose pas en juge d'un travail que je trouve excellent et dont je bénéficie aujourd'hui , mais ce genre de champ 'sortorder' ou quelque soit la manière dont tu le nommes me semble indispensable dans une table qui se veux 'triable' à souhait. Utiliser les numéros et ne pas les parser lors de l'affichage ressemble bien plus à une bidouille, et je m'en explique : - dans un classement alpha , 111 s'intercalera entre 11 et 12 , ça n'est qu'un exemple mais ce seul exemple démontre la non efficacité de cette méthode. Y avez vous pensé et pallié ? Probablement oui (je n'ai pas testé comme je l'ai dit) , mais dans ce cas il s'agirait encore d'une 'bidouille' visant à traiter un cas particulier alors que sans aucune modif de code un simple 'ORDER BY sortorder' suffirait. J'essaie de contribuer et non de critiquer , en tout cas ceux qui me connaissent sur le net sauraient que c'est le cas, je l'assure. Au passage , coutumier des développements d'applications type frontend sur pc ( je dev en c# généralement) , l'absence de clés primaires dans de nombreuses table devient très vite un immense obstacle, car il faut coder en dur toute insertion ou update dans la table , avec des 'where' qui ne sont pas toujours évidents. Je souhaitais par ex coder une petite appli permettant la création/gestion des catégories depuis un pc , chose à quoi j'ai renoncé faute de clés primaires et en regard du travail supplémentaire que cela apporte. Pourtant cette app aurait été bien pratique pour mon client qui n'a pas une connexion internet très stable ni très réactive. Ce qui m'aurait pris moins de 2 h et serait entré dans mon budget est passé à la trappe pour ces raisons. Bien sûr je pouvais ajouter des clés sur toutes les tables concernées , mais alors quid des maj ? Bien sûr l'interface http est particulièrement ergonomique , mais doit elle être la seule possible? Bon rien n'est à prendre au 1er degré parce que je n'ai pas une vision globale du log suffisante à ce jour, et tel un newbie je peux avoir l'air de parler sans arguments, sans savoir... Il fallait néanmoins que j'aborde le sujet , dans le souci encore une fois de construir et non de dénier. Pour le pb du mini éditeur , certes ce n'est pas un comportement normal , si on se réfère par ex au module editoriel qui lui affiche l'editeur même lors d'une modif. Mais son upgrade , bien que bienvenue , ne devrait pas résoudre le bug ? si ? parce qu'à mon sens il doit manquer une inclusion quelque part et une maj de l'outil n'en affichera pas plus ? Toujours au conditionnel car ce sont bel et bien des questions et pas des affirmations , je peux me tromper faute d'avoir vraiment plongé au coeur de l'appli assez longtemps. Je m'y efforce cependant et suis toujours pret à donner un coup de main si le besoin s'en faisait sentir. Merci à tous pour votre travail , votre cordialité , bref , pour tout . Broce
  22. It looks like prestashop 's team already keeps these changes under his arms , as i was told yesterday. These should be in RC4 , maybe even today if i trust the answer in my french post version. So i'll have to focus on other caps if i wanna contribute , but that's rather a good news to see that such missings features were taken in account by the devs, before i even could have a look on it. I do like this software
  23. Merci pour cette bonne nouvelle , de fait je trouverais un autre moyen de contribuer et ne perdrais pas mon temps à faire ce qui est en train de se faire. D'un autre coté je suis ouvert à toute demande, si j'en vois une qui est à la fois de mon ressort et apporte un bienfait à mon/mes clients, alors vous pouvez etre certains que je m'y appliquerais. N'hésitez donc pas, je ne promets pas la lune bien sûr , mais si jamais comme je le souhaite je peux apporter une pierre à l'édifice ce sera volontier. Broceliande
  24. Hi, just posted that message in french , so i feel i have to do it in eng as well for any other users. My name is eric and i discovered prestashop because of one of my usual customer's need. I compared several solutions and choose prestashop, mainly because i like the way it is developped , and because i found the back-office easy to use and especially then easy to explain to my customer . I like open source's phylosophy and am a member of Mediaportal's developpement team since more than two years now. Mediaportal is an open source MediaCenter software and can be browsed at http://www.team-mediaportal.com ( don't take it as an ad , just telling this as a way to introduce myself ). As i told it in my 'frenchy' post , i post there today in order to submit two improvements i'd like to see in prestashop. Not a feature's request though , but a proposal to do it myself and then contribute to the project. As i will do them anyway , cause i do need them, the reason i post about those changes is that i don't wanna reinvent the weel and leaks some time to be sure anybody else is working or already did those changes. Here are the two things i'd like to implement : 1) Left column's categories module leaks a 'custom' order imo , and wouldn't be a great deal to add 2) The products 's description editor only works when creating a new prod. and not when editing it. So feel free to encourage me doing those changes or dissuade me because they're on the way. Best regards, Broceliande Edit : damn had to correct a few mistakes. i'm sure i made much more but sorry at least for mistyping ones.
  25. Bonjour, Je m'appelle éric et j'ai découvert prestashop parmi tant d'autres lorsqu'un de mes clients m'a demandé de lui choisir une solution de site marchand. Je suis développeur et familier de l'open source, étant membre de l'équipe officielle de développement de Mediaportal(avec le même nick d'ailleurs) , logiciel MediaCenter open source. (sans pub mais pour info : http://www.team-mediaportal.com ) , merci aux modos de me dire si ce n'est pas politically correct de lier comme ça. Voilà pour les présentations , même si c'est sommaire mais c'est mon premier post ici alors .... J'ai donc découvert et adopté ce logiciel pour plein de raisons , que je ne vais pas développer , mais la première est que j'aime la façon dont il est développé , et son back office clair et performant ( moins de temps perdu avec mon client pour lui en expliquer les fonctionnalités et rouages ). Malgré mon enthousiasme il n'en reste pas moins que certaines fonctions peuvent etre améliorées sans trop de difficultés , en tout cas pour ce qu'il me semble. Comme je ne suis pas la pour des 'feature's requests' et que je n'ai pas beaucoup de temps de lire l'intégralité des posts ici , il y en a au moins deux dont je souhaite parler et que je me propose d'ajouter , si et seulement si cela n'est pas au programme d'un développeur de l'équipe officielle. Dans tous les cas ce sont deux fonctionnalités que je me dois d'ajouter pour mon propre client , il va de soi donc qu'elles seront proposées ici avec plaisir. Voici , pour l'intro , maintenant pour les fonctionnalités : 1) L'arborescence des catégories dans le frame de gauche manque cruellement d'un classement personnalisé. Pour cela l'ajout s'un champ 'sortorder' à la table 'category' , puis l'implémentation de ce champ dans les 'order by' et l'ajout de tout ça dans la config ne me semble pas un super challenge. J'attends votre avis. 2) Pour moi c'est un bug mais je n'ai pas encore regardé le code source alors... mais en tout cas , si l'ajout d'un produit bénéficie d'un super éditeur de texte, sa modification apres création elle ne semble pas en bénéficier, et c'est très dommage à mon sens. Par ailleurs il semble que les retours chariots ne soient pas pris en compte , mais encore une fois , c'est peut être un bug connu, même peut être résolu (mais là j'ai cherché et rien trouvé) ou juste une méconnaissance de ma part. Voilà pour ce que j'aimerais pouvoir utiliser et donc , comme e le disais , ajouter , par souci de contribution et puisque dans tous les cas je dois le faire. Mais je ne suis pas du genre à réinventer la roue , alors si les devs ou les modos savent que cela est déja en main , inutile que je perde mon temps la dessus. Si au contraire c'est une bonne chose je serais ravi de m'y atteler et soumettre mon code ici . A tous , bien cordialement, Broceliande.
×
×
  • Create New...

Important Information

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