-- +--------------------------------------------------------------------+
-- | Copyright CiviCRM LLC. All rights reserved.                        |
-- |                                                                    |
-- | This work is published under the GNU AGPLv3 license with some      |
-- | permitted exceptions and without any warranty. For full license    |
-- | and copyright information, see https://civicrm.org/licensing       |
-- +--------------------------------------------------------------------+
--
-- Generated from schema.tpl
-- DO NOT EDIT.  Generated by CRM_Core_CodeGen
--
-- /*******************************************************
-- *
-- * Clean up the existing tables - this section generated from drop.tpl
-- *
-- *******************************************************/

SET FOREIGN_KEY_CHECKS=0;

DROP TABLE IF EXISTS `civicrm_twingle_product`;
DROP TABLE IF EXISTS `civicrm_twingle_shop`;

SET FOREIGN_KEY_CHECKS=1;
-- /*******************************************************
-- *
-- * Create new tables
-- *
-- *******************************************************/

-- /*******************************************************
-- *
-- * civicrm_twingle_shop
-- *
-- * This table contains the Twingle Shop data. Each Twingle Shop is linked to a corresponding Price Set.
-- *
-- *******************************************************/
CREATE TABLE `civicrm_twingle_shop` (
                                      `id` int unsigned NOT NULL AUTO_INCREMENT COMMENT 'Unique TwingleShop ID',
                                      `project_identifier` varchar(32) NOT NULL COMMENT 'Twingle Project Identifier',
                                      `numerical_project_id` int unsigned NOT NULL COMMENT 'Numerical Twingle Project Identifier',
                                      `price_set_id` int unsigned COMMENT 'FK to Price Set',
                                      `name` varchar(64) NOT NULL COMMENT 'name of the shop',
                                      PRIMARY KEY (`id`),
                                      CONSTRAINT FK_civicrm_twingle_shop_price_set_id FOREIGN KEY (`price_set_id`) REFERENCES `civicrm_price_set`(`id`) ON DELETE CASCADE
)
  ENGINE=InnoDB;

-- /*******************************************************
-- *
-- * civicrm_twingle_product
-- *
-- * This table contains the Twingle Product data.
-- *
-- *******************************************************/
CREATE TABLE `civicrm_twingle_product` (
                                         `id` int unsigned NOT NULL AUTO_INCREMENT COMMENT 'Unique TwingleProduct ID',
                                         `external_id` int unsigned NOT NULL COMMENT 'The ID of this product in the Twingle database',
                                         `price_field_id` int unsigned NOT NULL COMMENT 'FK to Price Field',
                                         `twingle_shop_id` int unsigned COMMENT 'FK to Twingle Shop',
                                         `created_at` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT 'Timestamp of when the product was created in the database',
                                         `updated_at` datetime NOT NULL COMMENT 'Timestamp of when the product was last updated in the Twingle database',
                                         PRIMARY KEY (`id`),
                                         CONSTRAINT FK_civicrm_twingle_product_price_field_id FOREIGN KEY (`price_field_id`) REFERENCES `civicrm_price_field`(`id`) ON DELETE CASCADE,
                                         CONSTRAINT FK_civicrm_twingle_product_twingle_shop_id FOREIGN KEY (`twingle_shop_id`) REFERENCES `civicrm_twingle_shop`(`id`) ON DELETE CASCADE
)
  ENGINE=InnoDB;
