diff --git a/composer.json b/composer.json index 661318d..24d79d1 100644 --- a/composer.json +++ b/composer.json @@ -12,7 +12,7 @@ }, "autoload": { "psr-4": { - "Module\\WsOrderreference\\": "src/" + "Websmid\\WsOrderReference\\": "src/" }, "classmap": [ "ws_orderreference.php", diff --git a/config/services.yml b/config/services.yml index 1974f82..05d9fb3 100644 --- a/config/services.yml +++ b/config/services.yml @@ -3,17 +3,15 @@ services: autowire: true autoconfigure: true - Module\WsOrderreference\Controller\: - resource: "../src/Controller/*" # Repository - this makes it available via dependency injection - Module\WsOrderreference\Repository\OrderReferenceRepository: + Websmid\WsOrderReference\Repository\OrderReferenceRepository: public: true factory: ["@doctrine.orm.default_entity_manager", getRepository] arguments: - - Module\WsOrderreference\Entity\OrderReference + - Websmid\WsOrderReference\Entity\OrderReference # Database installer - Module\WsOrderreference\Database\ReferenceInstaller: + Websmid\WsOrderReference\Database\ReferenceInstaller: public: true arguments: - "@doctrine.dbal.default_connection" diff --git a/src/Controller/OrderReferenceController.php b/src/Controller/OrderReferenceController.php new file mode 100644 index 0000000..2ceacf3 --- /dev/null +++ b/src/Controller/OrderReferenceController.php @@ -0,0 +1,19 @@ + $id_order, + 'customReference' => 'DUMMY-REF-12345', + 'status' => 'This is a test response' + ]); + } +} \ No newline at end of file diff --git a/src/Database/ReferenceInstaller.php b/src/Database/ReferenceInstaller.php index 2c33c4f..b10f753 100644 --- a/src/Database/ReferenceInstaller.php +++ b/src/Database/ReferenceInstaller.php @@ -14,7 +14,7 @@ declare(strict_types=1); -namespace Module\WsOrderreference\Database; +namespace Websmid\WsOrderReference\Database; use Doctrine\DBAL\Connection; use Doctrine\DBAL\Exception as DBALException; diff --git a/src/Entity/OrderReference.php b/src/Entity/OrderReference.php index 5389805..9eb0a29 100644 --- a/src/Entity/OrderReference.php +++ b/src/Entity/OrderReference.php @@ -10,13 +10,13 @@ declare(strict_types=1); -namespace Module\WsOrderreference\Entity; +namespace Websmid\WsOrderReference\Entity; use Doctrine\ORM\Mapping as ORM; /** * @ORM\Table() - * @ORM\Entity(repositoryClass="Module\WsOrderreference\Repository\OrderReferenceRepository") + * @ORM\Entity(repositoryClass="Websmid\WsOrderReference\Repository\OrderReferenceRepository") */ class OrderReference { diff --git a/src/Module/Install.php b/src/Module/Install.php index bf229e7..dd44f13 100644 --- a/src/Module/Install.php +++ b/src/Module/Install.php @@ -1,16 +1,28 @@ installTables() - && parent::install() - && $this->registerHook('displayShoppingCart') + if (!parent::install()) { + return false; + } + if (!$this->installTables()){ + return false; + } + if (!$this->registerHooks()){ + return false; + } + + return true; + } + + public function registerHooks(){ + return $this->registerHook('displayShoppingCart') && $this->registerHook('displayPDFDeliverySlip') && $this->registerHook('addWebserviceResources') && $this->registerHook('actionFrontControllerSetMedia'); diff --git a/src/Module/actionHooks.php b/src/Module/actionHooks.php index ba8a3ad..f605cc5 100644 --- a/src/Module/actionHooks.php +++ b/src/Module/actionHooks.php @@ -1,6 +1,6 @@ id_order; - $orderReferenceRepo = \PrestaShop\PrestaShop\Adapter\SymfonyContainer::getInstance()->get('Module\WsOrderreference\Repository\OrderReferenceRepository'); + $orderReferenceRepo = \PrestaShop\PrestaShop\Adapter\SymfonyContainer::getInstance()->get('Websmid\WsOrderReference\Repository\OrderReferenceRepository'); $orderReference = $orderReferenceRepo->customRefByOrderId($orderId); $this->context->smarty->assign('orderReference', $orderReference); diff --git a/src/Repository/OrderReferenceRepository.php b/src/Repository/OrderReferenceRepository.php index bfd336d..cf385ee 100644 --- a/src/Repository/OrderReferenceRepository.php +++ b/src/Repository/OrderReferenceRepository.php @@ -9,10 +9,10 @@ declare(strict_types=1); -namespace Module\WsOrderreference\Repository; +namespace Websmid\WsOrderReference\Repository; use Doctrine\ORM\EntityRepository; -use Module\WsOrderreference\Entity\OrderReference; +use Websmid\WsOrderReference\Entity\OrderReference; class OrderReferenceRepository extends EntityRepository { diff --git a/ws_orderreference.php b/ws_orderreference.php index 3845b2c..c4c8ca9 100644 --- a/ws_orderreference.php +++ b/ws_orderreference.php @@ -4,17 +4,14 @@ if (!defined('_PS_VERSION_')) { exit; } -use Module\WsOrderreference\Module\Install; -use Module\WsOrderreference\Module\displayHooks; -use Module\WsOrderreference\Module\actionHooks; - +use Websmid\WsOrderReference\Module\Install; +use Websmid\WsOrderReference\Module\displayHooks; +use Websmid\WsOrderReference\Module\actionHooks; if (file_exists(__DIR__ . '/vendor/autoload.php')) { require_once __DIR__ . '/vendor/autoload.php'; } -require_once __DIR__ . '/classes/WebserviceSpecificManagementOrderreference.php'; - class Ws_OrderReference extends Module { /** @var OrderReferenceRepository */ @@ -24,6 +21,7 @@ class Ws_OrderReference extends Module use displayHooks; use actionHooks; + public function __construct() { $this->name = 'ws_orderreference';