numerico Posted May 28, 2013 Share Posted May 28, 2013 Salut Je suis arrivé à créer un compte vendeur sur PrestaShop mais je n'arrive pas à comprendre comment offrir mon module sur PrestaBox aussi. La documentation dit que tous les module ne seront pas compatibles avec PrestaBox, mais ne spécifiant pas si cela est dû, par example, aux versions de PrestaShop ou si, par le contraire, il faut faire des développements spécifiques pour ceci. Quelqu'un aura-t-il des idées au sujet? Merci d'avance. Link to comment Share on other sites More sharing options...
J. Danse Posted May 28, 2013 Share Posted May 28, 2013 Un module PrestaBox se base sur un PrestaShop 1.4 et ne peut contenir aucune modification de la base de données, aucunes copies de fichiers/overrides, pas de fonctions liés à la sécurité (comme un exec()), ... Link to comment Share on other sites More sharing options...
numerico Posted May 28, 2013 Author Share Posted May 28, 2013 Merci de répondre. C'est dommage... justement je pensais utiliser exec pour invoquer une API. L'idée est qu'étant exécutable, cette invocation retournerait immédiatement le contrôle au browser, de facon a ce que l'utilisateur n'aie pas à attendre ou que l'achat ne s'interrompe pas en cas d'erreur. Suis-je le premier à essayer une telle chose? Link to comment Share on other sites More sharing options...
J. Danse Posted May 28, 2013 Share Posted May 28, 2013 La réponse à la question, je ne l'ai pas. Maintenant, c'est donc l'une des causes qui fait que ce n'est pas supporté/compatible PrestaBox, donc ;-) Link to comment Share on other sites More sharing options...
numerico Posted May 28, 2013 Author Share Posted May 28, 2013 bien entendu, merci quand même en tout cas, j'immagine que c'est PrestaShop >= 1.4, n'est-ce pas? cette information n'est-elle vraiment pas publiée? faudrait peut-être la suggérer aux dévelopeurs... Link to comment Share on other sites More sharing options...
Prestaspirit Posted May 29, 2013 Share Posted May 29, 2013 exec() pour invoquer une API ??? Je te le conseil pas cette fonction est désactivé sur la plupart des hébergeur mutualisé, tout comme system(), passthru() pour des raisons évidente de sécurité, tu risque d'avoir beaucoup de retour Tu peut pas utiliser Curl pour ton API? Link to comment Share on other sites More sharing options...
numerico Posted May 29, 2013 Author Share Posted May 29, 2013 Pour invoquer l'API j'utilise curl en effet. C'est pour faire l'appel dans un procès indépendant que je pense a exec, de facon a ce que le navigateur n'aie pas de temps d'attente. Link to comment Share on other sites More sharing options...
jeckyl Posted June 1, 2013 Share Posted June 1, 2013 Bonjour, Perso je n'ai jamais su comment avoir un module compatible Prestabox et ceux depuis plusieurs années. Link to comment Share on other sites More sharing options...
J. Danse Posted June 1, 2013 Share Posted June 1, 2013 Tout un tas de conditions dont celles que j'ai cites plus haut ;-) Link to comment Share on other sites More sharing options...
jeckyl Posted June 1, 2013 Share Posted June 1, 2013 C'est justement toutes les autres qui m'intéresse car la majorité de mes modules ne touche à aucune de celles que tu as cité. Donc je ne cherche plus surement que Prestashop ne veut pas que nous puissions proposer des services compatibles Prestabox puisque nous ne pouvons connaitre les conditions d'acceptation. Link to comment Share on other sites More sharing options...
J. Danse Posted June 1, 2013 Share Posted June 1, 2013 Je pense qu'il est possible de le demander directement a PrestaShop. ;-) Link to comment Share on other sites More sharing options...
jeckyl Posted June 1, 2013 Share Posted June 1, 2013 Je n'ai pas du trouver le bon interlocuteur alors depuis le temps mais étonnamment il y a combien de module compatibles Prestabox sur addons et combien par des prestataires externes ? Link to comment Share on other sites More sharing options...
J. Danse Posted June 1, 2013 Share Posted June 1, 2013 Ce n'est pas impossible, ca oui. Il y en a en tout cas ;-) Link to comment Share on other sites More sharing options...
ftardivel Posted June 7, 2013 Share Posted June 7, 2013 Bonjour à tous, Merci à numerico d'avoir lancé la discussion ! Je suis Florent Tardivel, chef de projet PrestaBox. Vous avez du voir passer une newsletter, début avril, au sujet du lancement d'une nouvelle version de PrestaBox. Cette nouvelle version sortie, nous pouvons désormais nous lancer dans le chantier "compatibilité Addons". Nous avons démarré cela avec 2 contributeurs pilotes et souhaitons désormais accélérer. L'objectif étant évidemment de rendre compatibles un maximum de modules avec l'offre PrestaBox : nous avons tous à y gagner ! Voici donc la liste des prérequis techniques pour que les modules soient considérés comme compatibles PrestaBox : - La nouvelle version de PrestaBox est développée sur la base d'une version 1.4.8 de PrestaShop : votre module doit donc a minima être compatible avec la 1.4.8 de PrestaShop - Un module doit prendre en compte le NDD du FO et non celui du BO qui, pour les boutiques PrestaBox est par exemple http:/nomdelaboutique.admin.prestabox.com - Les CGI (scripts n'étant pas en php : PERL, binaires...) ne sont pas exécutables sur les boutiques PrestaBox, mis à part ceux que nous avons déployé nous-mêmes => lorsqu'un module nécessite l'exécution d'un CGI, il doit être déployé sur les serveurs PrestaBox. Vous devez donc nous le signaler au préalable ! - Performances : si le module effectue un gros export de BDD, cela peut être problématique. Time-out à 30 secondes et memory-limit à 128 ou 256 Mb. Nous sommes donc très vigilants sur ce type de modules. - Modules impliquant une modification du coeur (ajout de javascripts dans les templates...) => nous pouvons alors intervenir de notre côté, mais cela se fait sur demande, au cas par cas. A voir en fonction du module et de l'importance de la demande. - Modules générant des mails : a priori non compatibles car nous avons supprimé la conf des mails dans le BO de la v2 PrestaBox. - Enfin, le module ne doit modifier ni les classes, ni les controllers, ni les overrides Si vos modules actuels ne respectent pas ces règles, nous vous demanderons de les retravailler afin de les rendre parfaitement compatibles. Au-delà de ces règles, nous insistons sur trois points de forme : - L'expérience utilisateur : les utilisateurs PrestaBox ne sont pas développeurs. Le jargon technique doit donc être proscrit et les étapes de configuration du module parfaitement explicites. N'oubliez pas non plus qu'un client PrestaBox n'a pas accès à son FTP : l'ensemble de la configuration doit se faire depuis son Back-Office. - Un module ne doit en aucun cas générer la création d'un nouvel onglet ou sous-onglet. - Un module doit parfaitement respecter les règles définies par Addons pour valider un module : https://addons.prestashop.com/docs/reussir_ses_contributions_addons_2011_2012.pdf Une fois le module retravaillé, il reste une dernière étape : le test en condition réelle. Pour cela, je vous invite à me faire parvenir un mail (florent[point]tardivel[at]prestashop[point]com) afin de m'informer que votre module est OK. Nous ferons ensuite le nécessaire avec les équipes Addons pour finaliser la validation de ce module.. Cela vous semble-t-il clair ? Sinon, l'équipe PrestaBox est à votre disposition pour répondre à vos questions. A bientôt, Florent et toute l'équipe PrestaBox Link to comment Share on other sites More sharing options...
numerico Posted June 7, 2013 Author Share Posted June 7, 2013 Merci Florent pour une réponse très complète. Je prends note. Il n'y a qu'un dernier doute qui reste. Vous dites que les fichiers n'étant pas en php ne sont pas exécutables, mais qu'en est-il des scripts php eux mêmes. Pourrait-on les appeller avec exec? J. Danse plus haut signale exec comme l'un des motifs pour lesquels un module pourrait être rejetté. Est-ce que cette limitation existe pour PrestaBox en particulier? saluts Link to comment Share on other sites More sharing options...
jeckyl Posted June 9, 2013 Share Posted June 9, 2013 Bonjour, Que veut dire : - Modules impliquant une modification du coeur (ajout de javascripts dans les templates...) Vous parlez d,intervention directe dans le template pas de l'utilisation de addjs(). Pour les mail, cela veut il dire que la fonction Mail::send() ne fonctionne pas sur Prestabox ? Link to comment Share on other sites More sharing options...
ftardivel Posted June 12, 2013 Share Posted June 12, 2013 Bonjour à vous 2 @ numerico : en fait c'est la commande exec elle-même qui est interdite. @ jeckyl : vous pouvez utiliser le hook header pour cela ; la fonction mail::send() fonctionne bien sur PrestaBox A dispo si vous avez d'autres questions, Florent Link to comment Share on other sites More sharing options...
jeckyl Posted June 12, 2013 Share Posted June 12, 2013 Donc tous mes modules ou au moins à 99% doivent être compatible Prestabox. Link to comment Share on other sites More sharing options...
coeos.pro Posted June 12, 2013 Share Posted June 12, 2013 Donc tous mes modules ou au moins à 99% doivent être compatible Prestabox. donc moins d'1 % de tes modules utilisent l'override Link to comment Share on other sites More sharing options...
jeckyl Posted June 12, 2013 Share Posted June 12, 2013 donc moins d'1 % de tes modules utilisent l'override non Link to comment Share on other sites More sharing options...
numerico Posted June 12, 2013 Author Share Posted June 12, 2013 Excellente communauté que celle-ci! Merci à nouveau. 1 Link to comment Share on other sites More sharing options...
Divine Posted June 13, 2013 Share Posted June 13, 2013 - L'expérience utilisateur : les utilisateurs PrestaBox ne sont pas développeurs. Le jargon technique doit donc être proscrit et les étapes de configuration du module parfaitement explicites. N'oubliez pas non plus qu'un client PrestaBox n'a pas accès à son FTP : l'ensemble de la configuration doit se faire depuis son Back-Office. - Un module ne doit en aucun cas générer la création d'un nouvel onglet ou sous-onglet. Bonjour, Pour le premier point, qu'en est-il de l'aspect du module ? Le client peut-il accéder aux fichiers CSS des modules depuis le back-office ? Concernant le second point, pourquoi un module ne doit pas générer la création d'un nouvel onglet ou sous-onglet ? A partir du moment où la procédure est correctement effectuée (création de l'onglet lors de l'installation du module et suppression de l'onglet lors de la désinstallation du module), je ne vois pas ce qui peut poser problème ? Link to comment Share on other sites More sharing options...
ftardivel Posted June 13, 2013 Share Posted June 13, 2013 Bonjour Divine, Dans la mesure du possible il faut rendre éditable depuis l'interface du module l'ensemble des paramètres du module. Sinon, il est possible d'avoir accès à un éditeur de thème. Concernant le 2nd point, c'est une question de cohérence du Back-Office : nous avons fait un gros travail d'ergonomie et d'organisation du BO dans la nouvelle version de PrestaBox. Un nouvel onglet / sous-onglet vient casse cette organisation, sans compter qu'il peut poser des soucis d'affichage. @Jekyl : bonne nouvelle. Je vous laisse donc suivre la procédure pour que nous validions vos modules. A bientôt, Florent Link to comment Share on other sites More sharing options...
Divine Posted June 13, 2013 Share Posted June 13, 2013 Ok merci pour ces précisions Link to comment Share on other sites More sharing options...
numerico Posted July 5, 2013 Author Share Posted July 5, 2013 (edited) Qu'en est-il des modifications à la base de données? J Danse les cite plus haut. Cependant, elles n'apparaissent pas dans la réponse de Florent @ftardivel. Fault-il supposer qu'elles ne possent pas de problème, d'autant plus qu'on peut les écrire dans la méthode d'installation? Je parle d'ajouter une table, par example, pas de tout restructurer bien entendu XD Edited July 19, 2013 by numerico (see edit history) Link to comment Share on other sites More sharing options...
Recommended Posts