{"id":1571,"date":"2017-07-11T14:02:45","date_gmt":"2017-07-11T12:02:45","guid":{"rendered":"https:\/\/www.h-hennes.fr\/blog\/?p=1571"},"modified":"2018-11-22T18:11:54","modified_gmt":"2018-11-22T16:11:54","slug":"module-catpcha-pour-prestashop-1-7","status":"publish","type":"post","link":"https:\/\/www.h-hennes.fr\/blog\/2017\/07\/11\/module-catpcha-pour-prestashop-1-7\/","title":{"rendered":"Module Catpcha pour prestashop 1.7"},"content":{"rendered":"<p>Je viens enfin de rendre compatible mon module de captcha <strong>eicaptcha<\/strong> avec la version 1.7 de prestashop \ud83d\ude42<br \/>\nEn raison des nombreux changements sur l&rsquo;infrastructure j&rsquo;ai quasiment proc\u00e9d\u00e9 \u00e0 une r\u00e9\u00e9criture compl\u00e8te du module.<\/p>\n<p>Celui-ci permets d&rsquo;ajouter un captcha sur le <span style=\"text-decoration: underline;\">formulaire de contact<\/span>, et sur le <span style=\"text-decoration: underline;\">formulaire de cr\u00e9ation de compte<\/span>.<br \/>\n( La possibilit\u00e9 de le rajouter sur le formulaire de commentaire produit, et envoyer \u00e0 un ami est supprim\u00e9e pour l&rsquo;instant )<\/p>\n<p><strong>Aper\u00e7u :<\/strong><\/p>\n<p><strong>Formulaire de contact<\/strong><\/p>\n<p><img decoding=\"async\" class=\"alignnone size-large wp-image-1568\" src=\"https:\/\/www.h-hennes.fr\/blog\/wp-content\/uploads\/2017\/07\/eicaptcha-17-contact-1024x501.jpg\" alt=\"\" width=\"780\" srcset=\"https:\/\/www.h-hennes.fr\/blog\/wp-content\/uploads\/2017\/07\/eicaptcha-17-contact-1024x501.jpg 1024w, https:\/\/www.h-hennes.fr\/blog\/wp-content\/uploads\/2017\/07\/eicaptcha-17-contact-300x147.jpg 300w, https:\/\/www.h-hennes.fr\/blog\/wp-content\/uploads\/2017\/07\/eicaptcha-17-contact-768x376.jpg 768w, https:\/\/www.h-hennes.fr\/blog\/wp-content\/uploads\/2017\/07\/eicaptcha-17-contact.jpg 1157w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/p>\n<p><strong>Formulaire de cr\u00e9ation de compte<\/strong><\/p>\n<p><img decoding=\"async\" class=\"alignnone size-full wp-image-1567\" src=\"https:\/\/www.h-hennes.fr\/blog\/wp-content\/uploads\/2017\/07\/eicaptcha-17-account.jpg\" alt=\"\" width=\"780\" srcset=\"https:\/\/www.h-hennes.fr\/blog\/wp-content\/uploads\/2017\/07\/eicaptcha-17-account.jpg 932w, https:\/\/www.h-hennes.fr\/blog\/wp-content\/uploads\/2017\/07\/eicaptcha-17-account-300x254.jpg 300w, https:\/\/www.h-hennes.fr\/blog\/wp-content\/uploads\/2017\/07\/eicaptcha-17-account-768x651.jpg 768w\" sizes=\"(max-width: 932px) 100vw, 932px\" \/><\/p>\n<p>&nbsp;<\/p>\n<p><strong>R\u00e9cup\u00e9ration du module :<\/strong><\/p>\n<p><strong>Via ssh :<br \/>\n<\/strong><\/p>\n<pre lang=\"bash\">git clone https:\/\/github.com\/nenes25\/eicaptcha.git -b 17\r\ncd eicaptcha\r\ncomposer install\r\n<\/pre>\n<p><strong>T\u00e9l\u00e9charger une archive compl\u00e8te :<\/strong><\/p>\n<p>Pour \u00eatre s\u00fbrs de r\u00e9cup\u00e9rer la derni\u00e8re version consultez la page <a href=\"https:\/\/github.com\/nenes25\/eicaptcha\/releases\" target=\"_blank\" rel=\"noopener\">https:\/\/github.com\/nenes25\/eicaptcha\/releases<\/a><br \/>\nT\u00e9l\u00e9chargez la derni\u00e8re release tagu\u00e9e <strong>2.0.x<\/strong><\/p>\n<p>Vous pourrez ensuite l&rsquo;installer via l&rsquo;administration ou par ftp<\/p>\n<p>Attention ce module n\u00e9cessite au pr\u00e9alable l&rsquo;installation du module \u00ab\u00a0contactform\u00a0\u00bb de prestashop, il faut donc penser \u00e0 l&rsquo;installer avant \ud83d\ude09<br \/>\n( il est gratuit et disponible par d\u00e9faut sur toutes les versions )<\/p>\n<p><strong>Changements techniques :<\/strong><\/p>\n<p>La gestion du formulaire de contact est g\u00e9r\u00e9 dans prestashop 1.7 via un widget du module <strong>contactform<\/strong>.<br \/>\nCe module surcharge donc le module contactform pour v\u00e9rifier la compl\u00e9tion du captcha via un nouveau hook <strong>actionContactFormSubmitBefore<\/strong>.<\/p>\n<pre lang=\"php\" escaped=\"true\">context-&gt;controller-&gt;errors)) {\r\n           parent::sendMessage();\r\n       }\r\n    }\r\n<\/pre>\n<p>Lors de la cr\u00e9ation de compte la gestion du hook natif <strong>actionSubmitAccountBefore<\/strong> a \u00e9t\u00e9 chang\u00e9e.<br \/>\nDe ce fait je n&rsquo;ai pas pu l&rsquo;utiliser et j&rsquo;ai du surcharger \u00e9galement le fichier AuthController pour rajouter un nouveau hook personnalis\u00e9 pour g\u00e9rer la v\u00e9rification du captcha.<\/p>\n<p>&nbsp;<\/p>\n<p>Le module est fonctionnel, des changements et des optimisations sont encore possibles dans les prochains jours \/ semaines, n&rsquo;h\u00e9sitez pas donc pas \u00e0 remonter des issues sur github.<br \/>\n<a href=\"https:\/\/github.com\/nenes25\/eicaptcha\">https:\/\/github.com\/nenes25\/eicaptcha<\/a><\/p>\n<p>Le code est disponible sur la branche 17 du d\u00e9p\u00f4t.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Je viens enfin de rendre compatible mon module de captcha eicaptcha avec la version 1.7 de prestashop \ud83d\ude42 En raison des nombreux changements sur l&rsquo;infrastructure j&rsquo;ai quasiment proc\u00e9d\u00e9 \u00e0 une r\u00e9\u00e9criture compl\u00e8te du module. Celui-ci permets d&rsquo;ajouter un captcha sur le formulaire de contact, et sur le formulaire de cr\u00e9ation de compte. ( La possibilit\u00e9 [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"site-sidebar-layout":"default","site-content-layout":"","ast-site-content-layout":"default","site-content-style":"default","site-sidebar-style":"default","ast-global-header-display":"","ast-banner-title-visibility":"","ast-main-header-display":"","ast-hfb-above-header-display":"","ast-hfb-below-header-display":"","ast-hfb-mobile-header-display":"","site-post-title":"","ast-breadcrumbs-content":"","ast-featured-img":"","footer-sml-layout":"","ast-disable-related-posts":"","theme-transparent-header-meta":"","adv-header-id-meta":"","stick-header-meta":"","header-above-stick-meta":"","header-main-stick-meta":"","header-below-stick-meta":"","astra-migrate-meta-layouts":"default","ast-page-background-enabled":"default","ast-page-background-meta":{"desktop":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"ast-content-background-meta":{"desktop":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"footnotes":""},"categories":[245],"tags":[260,104,483],"class_list":["post-1571","post","type-post","status-publish","format-standard","hentry","category-prestashop-2","tag-captcha","tag-prestashop","tag-prestashop-1-7","prestashop-1-4","prestashop-1-5","prestashop-1-6","prestashop-1-7","prestashop-1-7-2","prestashop-1-7-3","prestashop-1-7-4","prestashop-1-7-5","prestashop-1-7-6","prestashop-1-7-7","prestashop-1-7-8","prestashop-8-0","prestashop-8-1"],"aioseo_notices":[],"_links":{"self":[{"href":"https:\/\/www.h-hennes.fr\/blog\/wp-json\/wp\/v2\/posts\/1571","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.h-hennes.fr\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.h-hennes.fr\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.h-hennes.fr\/blog\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/www.h-hennes.fr\/blog\/wp-json\/wp\/v2\/comments?post=1571"}],"version-history":[{"count":7,"href":"https:\/\/www.h-hennes.fr\/blog\/wp-json\/wp\/v2\/posts\/1571\/revisions"}],"predecessor-version":[{"id":1708,"href":"https:\/\/www.h-hennes.fr\/blog\/wp-json\/wp\/v2\/posts\/1571\/revisions\/1708"}],"wp:attachment":[{"href":"https:\/\/www.h-hennes.fr\/blog\/wp-json\/wp\/v2\/media?parent=1571"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.h-hennes.fr\/blog\/wp-json\/wp\/v2\/categories?post=1571"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.h-hennes.fr\/blog\/wp-json\/wp\/v2\/tags?post=1571"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}