From 985ac2d22ff7744656bf3de8e4bd18cf15c7d069 Mon Sep 17 00:00:00 2001 From: Da Silva Mendonca Thomas Date: Mon, 19 Feb 2024 16:58:41 +0100 Subject: [PATCH] Fix database initialization --- Config/module.xml | 2 +- Config/update/1.0.2.sql | 66 ----------------------------------------- GuaranteedOpinion.php | 7 +++++ 3 files changed, 8 insertions(+), 67 deletions(-) delete mode 100644 Config/update/1.0.2.sql diff --git a/Config/module.xml b/Config/module.xml index 8d08a7a..625d4ef 100644 --- a/Config/module.xml +++ b/Config/module.xml @@ -13,7 +13,7 @@ en_US fr_FR - 1.0.2 + 1.0.3 Chabreuil Antoine diff --git a/Config/update/1.0.2.sql b/Config/update/1.0.2.sql deleted file mode 100644 index b65660a..0000000 --- a/Config/update/1.0.2.sql +++ /dev/null @@ -1,66 +0,0 @@ -# This is a fix for InnoDB in MySQL >= 4.1.x -# It "suspends judgement" for fkey relationships until are tables are set. -SET FOREIGN_KEY_CHECKS = 0; - --- --------------------------------------------------------------------- --- guaranteed_opinion_product_review --- --------------------------------------------------------------------- - -DROP TABLE IF EXISTS `guaranteed_opinion_product_review`; - -CREATE TABLE `guaranteed_opinion_product_review` -( - `id` INTEGER NOT NULL AUTO_INCREMENT, - `product_review_id` VARCHAR(55) NOT NULL, - `name` VARCHAR(255), - `rate` DECIMAL(2,1) DEFAULT 0, - `review` VARBINARY(10000), - `review_date` DATETIME, - `product_id` INTEGER, - `order_id` VARCHAR(255), - `order_date` DATETIME, - `reply` VARCHAR(255), - `reply_date` DATETIME, - PRIMARY KEY (`id`), - UNIQUE INDEX `guaranteed_opinion_product_review_id_unique` (`product_review_id`) -) ENGINE=InnoDB; - --- --------------------------------------------------------------------- --- guaranteed_opinion_order_queue --- --------------------------------------------------------------------- - -DROP TABLE IF EXISTS `guaranteed_opinion_order_queue`; - -CREATE TABLE `guaranteed_opinion_order_queue` -( - `id` INTEGER NOT NULL AUTO_INCREMENT, - `order_id` INTEGER NOT NULL, - `treated_at` DATETIME, - `status` INTEGER, - PRIMARY KEY (`id`) -) ENGINE=InnoDB; - --- --------------------------------------------------------------------- --- guaranteed_opinion_site_review --- --------------------------------------------------------------------- - -DROP TABLE IF EXISTS `guaranteed_opinion_site_review`; - -CREATE TABLE `guaranteed_opinion_site_review` -( - `id` INTEGER NOT NULL AUTO_INCREMENT, - `site_review_id` INTEGER NOT NULL, - `name` VARCHAR(255), - `rate` DECIMAL(2,1) DEFAULT 0, - `review` VARBINARY(10000), - `review_date` DATETIME, - `order_id` VARCHAR(255), - `order_date` DATETIME, - `reply` VARCHAR(255), - `reply_date` DATETIME, - PRIMARY KEY (`id`,`site_review_id`), - UNIQUE INDEX `guaranteed_opinion_site_review_id_unique` (`site_review_id`) -) ENGINE=InnoDB; - -# This restores the fkey checks, after having unset them earlier -SET FOREIGN_KEY_CHECKS = 1; diff --git a/GuaranteedOpinion.php b/GuaranteedOpinion.php index ac705c4..0cff731 100644 --- a/GuaranteedOpinion.php +++ b/GuaranteedOpinion.php @@ -99,6 +99,13 @@ public static function log($msg): void public function postActivation(ConnectionInterface $con = null): void { + $database = new Database($con); + + if (!self::getConfigValue('is_initialized', false)) { + $database->insertSql(null, [__DIR__ . "/Config/TheliaMain.sql"]); + self::setConfigValue('is_initialized', true); + } + self::setConfigValue(self::SITE_REVIEW_HOOK_DISPLAY, 'main.content-bottom'); self::setConfigValue(self::PRODUCT_REVIEW_HOOK_DISPLAY, 'product.bottom'); }