From 835aabc531e9249a3614442f492b452ba7c939b7 Mon Sep 17 00:00:00 2001 From: Isabelle Date: Mon, 9 Feb 2026 11:39:50 +0100 Subject: [PATCH] Project init --- .gitignore | 2 ++ composer.json | 29 ++++++++++++++++ composer.lock | 20 +++++++++++ config/services.yml | 0 config_nl.xml | 11 ++++++ index.php | 35 +++++++++++++++++++ logo.png | Bin 0 -> 2067 bytes src/Module/Install.php | 12 +++++++ src/Module/displayHooks.php | 14 ++++++++ views/templates/front/hello.tpl | 2 ++ ws_faqAccordion.php | 59 ++++++++++++++++++++++++++++++++ 11 files changed, 184 insertions(+) create mode 100644 .gitignore create mode 100644 composer.json create mode 100644 composer.lock create mode 100644 config/services.yml create mode 100644 config_nl.xml create mode 100644 index.php create mode 100644 logo.png create mode 100644 src/Module/Install.php create mode 100644 src/Module/displayHooks.php create mode 100644 views/templates/front/hello.tpl create mode 100644 ws_faqAccordion.php diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..ff0608a --- /dev/null +++ b/.gitignore @@ -0,0 +1,2 @@ + +vendor/ diff --git a/composer.json b/composer.json new file mode 100644 index 0000000..0975cb5 --- /dev/null +++ b/composer.json @@ -0,0 +1,29 @@ +{ + "name": "dewebsmid/ws_faqaccordion", + "description": "Displays your info as a FAQ accordion.", + "authors": [ + { + "name": "Isabelle Oving-Anno", + "email": "isabelle@dewebsmid.nl" + } + ], + "require": { + "php": ">=8.2.0" + }, + "autoload": { + "psr-4": { + "WsfaqAccordion\\": "src/" + }, + "classmap": [ + "ws_faqAccordion.php" + ], + "exclude-from-classmap": [] + }, + "config": { + "preferred-install": "dist", + "prepend-autoloader": false + }, + "type": "prestashop-module", + "author": "Isabelle Oving-Anno", + "license": "AFL-3.0" +} diff --git a/composer.lock b/composer.lock new file mode 100644 index 0000000..b68d89f --- /dev/null +++ b/composer.lock @@ -0,0 +1,20 @@ +{ + "_readme": [ + "This file locks the dependencies of your project to a known state", + "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies", + "This file is @generated automatically" + ], + "content-hash": "14a8801fe935c090041cfc25afe6829f", + "packages": [], + "packages-dev": [], + "aliases": [], + "minimum-stability": "stable", + "stability-flags": {}, + "prefer-stable": false, + "prefer-lowest": false, + "platform": { + "php": ">=8.2.0" + }, + "platform-dev": {}, + "plugin-api-version": "2.6.0" +} diff --git a/config/services.yml b/config/services.yml new file mode 100644 index 0000000..e69de29 diff --git a/config_nl.xml b/config_nl.xml new file mode 100644 index 0000000..28c4ef9 --- /dev/null +++ b/config_nl.xml @@ -0,0 +1,11 @@ + + + ws_faqAccordion + + + + + + 0 + 0 + \ No newline at end of file diff --git a/index.php b/index.php new file mode 100644 index 0000000..dedd77e --- /dev/null +++ b/index.php @@ -0,0 +1,35 @@ + + * @copyright Since 2007 PrestaShop SA and Contributors + * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0) + */ + +header("Expires: Mon, 26 Jul 1997 05:00:00 GMT"); +header("Last-Modified: ".gmdate("D, d M Y H:i:s")." GMT"); + +header("Cache-Control: no-store, no-cache, must-revalidate"); +header("Cache-Control: post-check=0, pre-check=0", false); +header("Pragma: no-cache"); + +header("Location: ../"); +exit; diff --git a/logo.png b/logo.png new file mode 100644 index 0000000000000000000000000000000000000000..d0df3a7b6fae6eb0bdb19e8274efe41d564a4aa6 GIT binary patch literal 2067 zcmaJ?X;f2Z8V&_niYS{P0`?|A0g;3R5=bNjNZ3h$ut+PVX1PGnn;UWi3DHteQDBsz zgPz)vQvsD_WD`Y^9SX7uG9xI9s8tZq)TKhHfH;X2+aJT+bMO6@^E}V{zTf+t^JRy! z{PaHE_9+U5(hKlsu$3dA`m{Bbe?%^yR}N+ppJ+)q94C=-#30Ix4|72v0OG`hY>>lG zP3i^RQ7CncAR<~4%?zgSU2a6eu$-9Q85V;iHL&3Nu^S()ENtl<8gR0nXJ+v5FC{VM)6 zb_;}jSc=%c$1|Cf03jmb2zg)tgNjiqU(_F8@z1ab2#;3Xn({nE{FgDInih3`4;Ck|~1qb0Ms&_kqh_ zKNsh9xj1DqI8|f+(&)7M%sk_J78(|m518t6&V*$@gAM2M~v{g zCks02)!^`S(HA2p4Tp@)(^=8MpZ!!+4J-#uXZ4O0ARF>Fn@v?DqucX+a;?jfOncO5 zJ-5^R2O5eJ=!VU6dUh}GaU}+avj#32RG4I(IC{8tkJZV0#;(kefta#m<_}soMnt>i zo-_BnM1qCSkN&5mrN+W8uBi3ay!y>^6e}mD0?mg*=D+k=< z`lY||B0LIK8qB=alkX0dY|G4@W+V;y`+0qG-hC?IlJ%&*d3n~?)TM2nVGW1tAAe@> zH_gs}Xg(@fMk#)6eB2$IIo7{;k=q-rUZwNTgK~rK^`+G|o`j79QxWsWQfzF4Z2f5a z;>#yPVzP0bu8v*sBmcDH9pl}(+mDQnHivz_^==;-vwCw&d!^SVlKo1J#j98|@;$Xe z?Y|qr6^PFDFOE1QZ4BuMI_EczPQ5(U5N$E;Q)hFvAJYyFT7_75>KAYPj(pCzR0Cca z%RJxs?bJ*3(BtP6OqblV`l9D&YqF;TT><@Qm=7`cMKZ?B^vx-+vb2Cs=G3Hp*YWV{!O1lDV{W0CD{x{ zBp=izea#P%50cWIQ}Va$LQBzUPY4S+p2nAq@SORKm&U{78TTsi~SZ-0=<-&Gi*V2>Iz9({s!cE|gr>l{o!4cuE zA)SKLl(V_lV}UoA_EqU?I&PKSr)BZ6>C(LV)@$>+?dcfw^?`egvi%wn5pRnt_ zmZKTlh;F1cxw^!prZz3x13tQEdD|^rK*;giB@5%bo1=Q1*|?k?x9HpJC!e`p-D!9v zP~0=KcsE8ZWZG_4r~AxOLG#G<>21a|Hx0L$0rXj~;R;4<&w;&RjN#cA^!bFGEwyKK zui?A6IhlUp&T}nU2`>9hkJsIPw@9rSeUvqMregisterHook('displayHomeAccordion'); + } +} \ No newline at end of file diff --git a/src/Module/displayHooks.php b/src/Module/displayHooks.php new file mode 100644 index 0000000..65c5d77 --- /dev/null +++ b/src/Module/displayHooks.php @@ -0,0 +1,14 @@ +context->smarty->assign('message', $message); + return $this->fetch('module:ws_faqAccordion/views/templates/front/hello.tpl'); + } +} \ No newline at end of file diff --git a/views/templates/front/hello.tpl b/views/templates/front/hello.tpl new file mode 100644 index 0000000..227fd22 --- /dev/null +++ b/views/templates/front/hello.tpl @@ -0,0 +1,2 @@ + +

{$message}

diff --git a/ws_faqAccordion.php b/ws_faqAccordion.php new file mode 100644 index 0000000..c299aa0 --- /dev/null +++ b/ws_faqAccordion.php @@ -0,0 +1,59 @@ + + * @copyright 2007-2026 De Websmid BV + * @license Valid for 1 website (or project) for each purchase of license + * International Registered Trademark & Property of De Websmid BV + */ +use WsFaqAccordion\Module\Install; +use WsFaqAccordion\Module\displayHooks; + + +if (!defined('_PS_VERSION_')) { + exit; +} + +if (file_exists(__DIR__ . '/vendor/autoload.php')) { + require_once __DIR__ . '/vendor/autoload.php'; +} + +class ws_faqAccordion extends Module +{ + use Install; + use displayHooks; + + public function __construct() + { + $this->name = 'ws_faqAccordion'; + $this->tab = 'other'; + $this->version = '1.0.0'; + $this->author = 'Isabelle Oving-Anno | De Websmid b.v.'; + $this->need_instance = 0; + $this->ps_versions_compliancy = [ + 'min' => '1.7.0', + 'max' => '9.99.99', + ]; + $this -> bootstrap = true; + + parent::__construct(); + + $this->displayName = $this->l('FAQ Accordion'); + $this->description = $this->l('Displays your info as a FAQ accordion'); + } + + +} \ No newline at end of file