diff --git a/KwcShop/Kwc/Shop/Cart/Checkout/Update/20150309Legacy30179.sql b/KwcShop/Kwc/Shop/Cart/Checkout/Update/20150309Legacy30179.sql deleted file mode 100644 index 87071e2..0000000 --- a/KwcShop/Kwc/Shop/Cart/Checkout/Update/20150309Legacy30179.sql +++ /dev/null @@ -1,39 +0,0 @@ -ALTER TABLE `KwcShop_Kwc_Shop_orders` ADD `payment_component_id` VARCHAR( 200 ) NOT NULL AFTER `date` ; -ALTER TABLE `KwcShop_Kwc_Shop_orders` ADD `checkout_component_id` VARCHAR( 200 ) NOT NULL AFTER `payment_component_id` ; -ALTER TABLE `KwcShop_Kwc_Shop_orders` ADD `package_sent` DATE NULL , - ADD `payed` DATE NULL ; - -UPDATE KwcShop_Kwc_Shop_orders SET checkout_component_id='17_checkout'; - -CREATE TABLE `KwcShop_Kwc_Shop_product_prices` ( -`id` INT UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY , - `shop_product_id` INT UNSIGNED NOT NULL , - `price` DECIMAL( 10, 2 ) NOT NULL , - `valid_from` DATETIME NOT NULL , - INDEX ( `shop_product_id` ) -) ENGINE = INNODB; - -ALTER TABLE `KwcShop_Kwc_Shop_product_prices` ADD FOREIGN KEY ( `shop_product_id` ) REFERENCES `KwcShop_Kwc_Shop_products` ( -`id` -); - -INSERT INTO KwcShop_Kwc_Shop_product_prices (shop_product_id, price, valid_from) -SELECT id, price, NOW() FROM KwcShop_Kwc_Shop_products; - -ALTER TABLE `KwcShop_Kwc_Shop_products` DROP `price`; - -ALTER TABLE `KwcShop_Kwc_Shop_order_products` ADD `shop_product_price_id` INT UNSIGNED NOT NULL AFTER `shop_product_id` ; - -ALTER TABLE `KwcShop_Kwc_Shop_order_products` ADD INDEX ( `shop_product_price_id` ) ; - -UPDATE `KwcShop_Kwc_Shop_order_products` SET shop_product_price_id = (SELECT id FROM KwcShop_Kwc_Shop_product_prices WHERE KwcShop_Kwc_Shop_product_prices.shop_product_id=KwcShop_Kwc_Shop_order_products.shop_product_id LIMIT 1); - - --- #da gibts vielleicht ein problem: -ALTER TABLE `KwcShop_Kwc_Shop_order_products` DROP FOREIGN KEY `KwcShop_Kwc_Shop_order_products_ibfk_1` ; -ALTER TABLE `KwcShop_Kwc_Shop_order_products` DROP FOREIGN KEY `KwcShop_Kwc_Shop_order_products_ibfk_2` ; - -ALTER TABLE `KwcShop_Kwc_Shop_order_products` DROP `shop_product_id`; - -ALTER TABLE `KwcShop_Kwc_Shop_order_products` ADD FOREIGN KEY ( `shop_order_id` ) REFERENCES `KwcShop_Kwc_Shop_orders` (`id`); -ALTER TABLE `KwcShop_Kwc_Shop_order_products` ADD FOREIGN KEY ( `shop_product_price_id` ) REFERENCES `KwcShop_Kwc_Shop_product_prices` (`id`); diff --git a/KwcShop/Kwc/Shop/Cart/Checkout/Update/20150309Legacy30275.sql b/KwcShop/Kwc/Shop/Cart/Checkout/Update/20150309Legacy30275.sql deleted file mode 100644 index 93fdb1e..0000000 --- a/KwcShop/Kwc/Shop/Cart/Checkout/Update/20150309Legacy30275.sql +++ /dev/null @@ -1,6 +0,0 @@ -ALTER TABLE `KwcShop_Kwc_Shop_orders` ADD `canceled` TINYINT NOT NULL ; -ALTER TABLE `KwcShop_Kwc_Shop_orders` ADD `invoice_date` DATE NULL ; -ALTER TABLE `KwcShop_Kwc_Shop_orders` ADD number INT NOT NULL ; -UPDATE `KwcShop_Kwc_Shop_orders` SET number=id; -ALTER TABLE `KwcShop_Kwc_Shop_orders` CHANGE `package_sent` `shipped` DATE NULL DEFAULT NULL; -ALTER TABLE `KwcShop_Kwc_Shop_orders` ADD origin ENUM ('internet', 'phone') NOT NULL DEFAULT 'internet'; diff --git a/KwcShop/Kwc/Shop/Cart/Checkout/Update/20150309Legacy30372.sql b/KwcShop/Kwc/Shop/Cart/Checkout/Update/20150309Legacy30372.sql deleted file mode 100644 index 0258b55..0000000 --- a/KwcShop/Kwc/Shop/Cart/Checkout/Update/20150309Legacy30372.sql +++ /dev/null @@ -1,4 +0,0 @@ -ALTER TABLE `KwcShop_Kwc_Shop_orders` ADD `invoice_number` INT NULL ; -UPDATE `KwcShop_Kwc_Shop_orders` SET shipped = NOW(); - - diff --git a/KwcShop/Kwc/Shop/Cart/Checkout/Update/20150309Legacy30373.sql b/KwcShop/Kwc/Shop/Cart/Checkout/Update/20150309Legacy30373.sql deleted file mode 100644 index a00f6f8..0000000 --- a/KwcShop/Kwc/Shop/Cart/Checkout/Update/20150309Legacy30373.sql +++ /dev/null @@ -1 +0,0 @@ -ALTER TABLE KwcShop_Kwc_Shop_orders CHANGE origin origin ENUM( 'internet', 'phone', 'folder', 'fair' ) CHARACTER SET latin1 COLLATE latin1_swedish_ci NOT NULL DEFAULT 'internet'; diff --git a/KwcShop/Kwc/Shop/Cart/Checkout/Update/20150309Legacy30374.sql b/KwcShop/Kwc/Shop/Cart/Checkout/Update/20150309Legacy30374.sql deleted file mode 100644 index 1a43d3d..0000000 --- a/KwcShop/Kwc/Shop/Cart/Checkout/Update/20150309Legacy30374.sql +++ /dev/null @@ -1,2 +0,0 @@ -ALTER TABLE `KwcShop_Kwc_Shop_orders` ADD `cart_component_class` VARCHAR( 200 ) NOT NULL AFTER `checkout_component_id` ; -UPDATE KwcShop_Kwc_Shop_orders SET cart_component_class='Kwc_Babytuch_Shop_Cart_Component'; diff --git a/KwcShop/Kwc/Shop/Cart/Checkout/Update/20150309Legacy30375.sql b/KwcShop/Kwc/Shop/Cart/Checkout/Update/20150309Legacy30375.sql deleted file mode 100644 index 9dda5ae..0000000 --- a/KwcShop/Kwc/Shop/Cart/Checkout/Update/20150309Legacy30375.sql +++ /dev/null @@ -1 +0,0 @@ -ALTER TABLE `KwcShop_Kwc_Shop_orders` CHANGE `status` `status` ENUM( 'cart', 'processing', 'ordered', 'payed' ) NOT NULL; diff --git a/KwcShop/Kwc/Shop/Cart/Plugins/Voucher/Update/20150309Legacy00001.sql b/KwcShop/Kwc/Shop/Cart/Plugins/Voucher/Update/20150309Legacy00001.sql index 81e9c1b..6e6a40e 100644 --- a/KwcShop/Kwc/Shop/Cart/Plugins/Voucher/Update/20150309Legacy00001.sql +++ b/KwcShop/Kwc/Shop/Cart/Plugins/Voucher/Update/20150309Legacy00001.sql @@ -1,4 +1,4 @@ - CREATE TABLE `KwcShop_Kwc_Shop_vouchers` ( + CREATE TABLE `kwc_shop_vouchers` ( `id` INT NOT NULL AUTO_INCREMENT PRIMARY KEY , `code` VARCHAR( 20 ) NOT NULL , `amount` DECIMAL( 10, 2 ) NOT NULL , @@ -6,25 +6,25 @@ `comment` TEXT NOT NULL ) ENGINE = InnoDB; -ALTER TABLE `KwcShop_Kwc_Shop_vouchers` ADD UNIQUE (`code`) ; - ALTER TABLE `KwcShop_Kwc_Shop_vouchers` CHANGE `id` `id` INT( 11 ) UNSIGNED NOT NULL AUTO_INCREMENT ; +ALTER TABLE `kwc_shop_vouchers` ADD UNIQUE (`code`) ; + ALTER TABLE `kwc_shop_vouchers` CHANGE `id` `id` INT( 11 ) UNSIGNED NOT NULL AUTO_INCREMENT ; -CREATE TABLE `KwcShop_Kwc_Shop_voucher_history` ( +CREATE TABLE `kwc_shop_voucher_history` ( `id` INT UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY , `voucher_id` INT UNSIGNED NOT NULL , `order_id` INT UNSIGNED NULL , `amount` DECIMAL( 10, 2 ) NOT NULL , INDEX ( `voucher_id` ) ) ENGINE = InnoDB ; - ALTER TABLE `KwcShop_Kwc_Shop_voucher_history` ADD INDEX ( `order_id` ) ; -ALTER TABLE `KwcShop_Kwc_Shop_voucher_history` ADD `date` DATETIME NOT NULL , + ALTER TABLE `kwc_shop_voucher_history` ADD INDEX ( `order_id` ) ; +ALTER TABLE `kwc_shop_voucher_history` ADD `date` DATETIME NOT NULL , ADD `comment` TEXT NOT NULL ; - ALTER TABLE `KwcShop_Kwc_Shop_voucher_history` ADD FOREIGN KEY ( `voucher_id` ) REFERENCES `KwcShop_Kwc_Shop_vouchers` ( + ALTER TABLE `kwc_shop_voucher_history` ADD FOREIGN KEY ( `voucher_id` ) REFERENCES `kwc_shop_vouchers` ( `id` ); -ALTER TABLE `KwcShop_Kwc_Shop_voucher_history` ADD FOREIGN KEY ( `order_id` ) REFERENCES `KwcShop_Kwc_Shop_orders` ( +ALTER TABLE `kwc_shop_voucher_history` ADD FOREIGN KEY ( `order_id` ) REFERENCES `kwc_shop_orders` ( `id` ); - ALTER TABLE `KwcShop_Kwc_Shop_voucher_history` CHANGE `order_id` `order_id` INT( 10 ) UNSIGNED NULL ; + ALTER TABLE `kwc_shop_voucher_history` CHANGE `order_id` `order_id` INT( 10 ) UNSIGNED NULL ; diff --git a/KwcShop/Kwc/Shop/Cart/Update/20150309Legacy00001.sql b/KwcShop/Kwc/Shop/Cart/Update/20150309Legacy00001.sql deleted file mode 100644 index 3e0de18..0000000 --- a/KwcShop/Kwc/Shop/Cart/Update/20150309Legacy00001.sql +++ /dev/null @@ -1,68 +0,0 @@ -CREATE TABLE IF NOT EXISTS `KwcShop_Kwc_Shop_orders` ( - `id` int(10) unsigned NOT NULL AUTO_INCREMENT, - `status` enum('cart','ordered','payed') NOT NULL, - `ip` varchar(100) NOT NULL, - `date` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP, - `payment_component_id` varchar(200) NOT NULL, - `checkout_component_id` varchar(200) NOT NULL, - `cart_component_class` varchar(200) NOT NULL, - `data` text NOT NULL, - `shipped` date DEFAULT NULL, - `payed` date DEFAULT NULL, - `canceled` tinyint(4) NOT NULL, - `invoice_date` date DEFAULT NULL, - `number` int(11) NOT NULL, - `origin` enum('internet','phone','folder','fair') NOT NULL DEFAULT 'internet', - `firstname` varchar(200) NOT NULL, - `lastname` varchar(200) NOT NULL, - `city` varchar(200) NOT NULL, - `email` varchar(200) NOT NULL, - `zip` varchar(50) NOT NULL, - `payment` varchar(100) NOT NULL, - `invoice_number` int(11) NOT NULL, - PRIMARY KEY (`id`) -) ENGINE=InnoDB DEFAULT CHARSET=latin1; - -CREATE TABLE IF NOT EXISTS `KwcShop_Kwc_Shop_order_products` ( - `id` int(10) unsigned NOT NULL AUTO_INCREMENT, - `shop_order_id` int(10) unsigned NOT NULL, - `shop_product_price_id` int(10) unsigned DEFAULT NULL, - `amount` int(11) NOT NULL, - `pos` smallint(6) NOT NULL, - `add_component_id` varchar(200) NOT NULL, - `add_component_class` varchar(200) NOT NULL, - `data` text CHARACTER SET utf8 COLLATE utf8_bin NOT NULL, - PRIMARY KEY (`id`), - KEY `shop_order_id` (`shop_order_id`), - KEY `shop_product_price_id` (`shop_product_price_id`) -) ENGINE=InnoDB DEFAULT CHARSET=latin1; - -CREATE TABLE IF NOT EXISTS `KwcShop_Kwc_Shop_products` ( - `id` int(10) unsigned NOT NULL AUTO_INCREMENT, - `category` varchar(255) NOT NULL, - `pos` smallint(6) NOT NULL, - `title` varchar(200) NOT NULL, - `filename` varchar(100) NOT NULL, - `visible` tinyint(4) NOT NULL, - `max_amount` int(11) NOT NULL, - PRIMARY KEY (`id`) -) ENGINE=InnoDB DEFAULT CHARSET=latin1; - -CREATE TABLE IF NOT EXISTS `KwcShop_Kwc_Shop_product_prices` ( - `id` int(10) unsigned NOT NULL AUTO_INCREMENT, - `shop_product_id` int(10) unsigned NOT NULL, - `price` decimal(10,2) NOT NULL, - `valid_from` datetime NOT NULL, - PRIMARY KEY (`id`), - KEY `shop_product_id` (`shop_product_id`) -) ENGINE=InnoDB DEFAULT CHARSET=latin1; - -ALTER TABLE `KwcShop_Kwc_Shop_order_products` - ADD CONSTRAINT `KwcShop_Kwc_Shop_order_products_ibfk_1` FOREIGN KEY (`shop_order_id`) REFERENCES `KwcShop_Kwc_Shop_orders` (`id`), - ADD CONSTRAINT `KwcShop_Kwc_Shop_order_products_ibfk_2` FOREIGN KEY (`shop_product_price_id`) REFERENCES `KwcShop_Kwc_Shop_product_prices` (`id`); - -ALTER TABLE `KwcShop_Kwc_Shop_product_prices` - ADD CONSTRAINT `KwcShop_Kwc_Shop_product_prices_ibfk_1` FOREIGN KEY (`shop_product_id`) REFERENCES `KwcShop_Kwc_Shop_products` (`id`) ON DELETE CASCADE ON UPDATE CASCADE; - - -ALTER TABLE `KwcShop_Kwc_Shop_order_products` CHANGE `shop_product_price_id` `shop_product_price_id` INT( 10 ) UNSIGNED NULL; diff --git a/KwcShop/Kwc/Shop/Cart/Update/20150309Legacy00002.sql b/KwcShop/Kwc/Shop/Cart/Update/20150309Legacy00002.sql deleted file mode 100644 index 518db21..0000000 --- a/KwcShop/Kwc/Shop/Cart/Update/20150309Legacy00002.sql +++ /dev/null @@ -1,3 +0,0 @@ -ALTER TABLE `KwcShop_Kwc_Shop_order_products` ADD `add_component_class` VARCHAR( 200 ) NOT NULL ; -UPDATE KwcShop_Kwc_Shop_order_products SET add_component_class='Kwc_Babytuch_Shop_AddToCart_Component'; - diff --git a/KwcShop/Kwc/Shop/Cart/Update/20150309Legacy00003.sql b/KwcShop/Kwc/Shop/Cart/Update/20150309Legacy00003.sql deleted file mode 100644 index 846a29f..0000000 --- a/KwcShop/Kwc/Shop/Cart/Update/20150309Legacy00003.sql +++ /dev/null @@ -1,3 +0,0 @@ -ALTER TABLE `KwcShop_Kwc_Shop_order_products` ADD `data` TEXT CHARACTER SET utf8 COLLATE utf8_bin NOT NULL ; - ALTER TABLE `KwcShop_Kwc_Shop_order_products` CHANGE `size` `size_backup` TINYINT( 4 ) NOT NULL; - ALTER TABLE `KwcShop_Kwc_Shop_order_products` CHANGE `amount` `amount_backup` SMALLINT NOT NULL ; diff --git a/KwcShop/Kwc/Shop/Cart/Update/20150309Legacy00005.sql b/KwcShop/Kwc/Shop/Cart/Update/20150309Legacy00005.sql deleted file mode 100644 index 6b4c9cc..0000000 --- a/KwcShop/Kwc/Shop/Cart/Update/20150309Legacy00005.sql +++ /dev/null @@ -1 +0,0 @@ -ALTER TABLE `KwcShop_Kwc_Shop_products` ADD `component` VARCHAR( 255 ) NOT NULL AFTER `id` ; diff --git a/KwcShop/Kwc/Shop/Cart/Update/20150309Legacy00006.sql b/KwcShop/Kwc/Shop/Cart/Update/20150309Legacy00006.sql deleted file mode 100644 index 1890a5a..0000000 --- a/KwcShop/Kwc/Shop/Cart/Update/20150309Legacy00006.sql +++ /dev/null @@ -1,5 +0,0 @@ -ALTER TABLE `KwcShop_Kwc_Shop_product_prices` DROP FOREIGN KEY `KwcShop_Kwc_Shop_product_prices_ibfk_1` ; -ALTER TABLE `KwcShop_Kwc_Shop_product_prices` ADD FOREIGN KEY ( `shop_product_id` ) - REFERENCES `KwcShop_Kwc_Shop_products` ( - `id` - ) ON DELETE CASCADE ON UPDATE CASCADE ; diff --git a/KwcShop/Kwc/Shop/Cart/Update/20150309Legacy00007.php b/KwcShop/Kwc/Shop/Cart/Update/20150309Legacy00007.php deleted file mode 100644 index d5d4e07..0000000 --- a/KwcShop/Kwc/Shop/Cart/Update/20150309Legacy00007.php +++ /dev/null @@ -1,20 +0,0 @@ -query("ALTER TABLE `KwcShop_Kwc_Shop_products` ADD `component_id` VARCHAR( 255 ) NOT NULL AFTER `id`"); - Kwf_Registry::get('db')->query("ALTER TABLE `KwcShop_Kwc_Shop_products` ADD INDEX ( `component_id` );"); - } - - public function postUpdate() - { - $c = Kwf_Component_Data_Root::getInstance() - ->getComponentByClass('KwcShop_Kwc_Shop_Products_Directory_Component', array('limit'=>1, 'ignoreVisible'=>true)); -p($c); - if ($c) { - Kwf_Registry::get('db')->query("UPDATE KwcShop_Kwc_Shop_products SET component_id='$c->dbId'"); - } - } -} diff --git a/KwcShop/Kwc/Shop/Cart/Update/20150309Legacy00008.sql b/KwcShop/Kwc/Shop/Cart/Update/20150309Legacy00008.sql deleted file mode 100644 index c739b95..0000000 --- a/KwcShop/Kwc/Shop/Cart/Update/20150309Legacy00008.sql +++ /dev/null @@ -1 +0,0 @@ -ALTER TABLE `KwcShop_Kwc_Shop_orders` ADD `confirm_mail_sent` DATETIME NULL; diff --git a/KwcShop/Kwc/Shop/Category/Directory/Update/20150309Legacy00001.sql b/KwcShop/Kwc/Shop/Category/Directory/Update/20150309Legacy00001.sql index adfd3dd..408bfa3 100644 --- a/KwcShop/Kwc/Shop/Category/Directory/Update/20150309Legacy00001.sql +++ b/KwcShop/Kwc/Shop/Category/Directory/Update/20150309Legacy00001.sql @@ -1,4 +1,4 @@ -CREATE TABLE IF NOT EXISTS `KwcShop_Kwc_Shop_products_to_categories` ( +CREATE TABLE IF NOT EXISTS `kwc_shop_products_to_categories` ( `id` int(10) unsigned NOT NULL AUTO_INCREMENT, `product_id` int(10) unsigned NOT NULL, `category_id` smallint(5) unsigned NOT NULL, diff --git a/KwcShop/Kwc/Shop/Products/Directory/Trl/Update/20150309Legacy00001.sql b/KwcShop/Kwc/Shop/Products/Directory/Trl/Update/20150309Legacy00001.sql index 9fff9fe..355c199 100644 --- a/KwcShop/Kwc/Shop/Products/Directory/Trl/Update/20150309Legacy00001.sql +++ b/KwcShop/Kwc/Shop/Products/Directory/Trl/Update/20150309Legacy00001.sql @@ -1,4 +1,4 @@ -CREATE TABLE `KwcShop_Kwc_Shop_products_trl` ( +CREATE TABLE `kwc_shop_products_trl` ( `component_id` VARCHAR(255) NOT NULL , `title` VARCHAR( 200 ) NOT NULL , `visible` TINYINT NOT NULL , diff --git a/KwcShop/Kwc/Shop/Products/Directory/Update/20150309Shop00001.php b/KwcShop/Kwc/Shop/Products/Directory/Update/20150309Shop00001.php new file mode 100644 index 0000000..a7e17f4 --- /dev/null +++ b/KwcShop/Kwc/Shop/Products/Directory/Update/20150309Shop00001.php @@ -0,0 +1,80 @@ +fetchOne("SHOW tables LIKE 'kwc_shop_orders'"); + if ($executed) return; + + $db->query(" + CREATE TABLE IF NOT EXISTS `kwc_shop_orders` ( + `id` int(10) unsigned NOT NULL AUTO_INCREMENT, + `status` enum('cart','ordered','payed') NOT NULL, + `ip` varchar(100) NOT NULL, + `date` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP, + `payment_component_id` varchar(200) NOT NULL, + `checkout_component_id` varchar(200) NOT NULL, + `cart_component_class` varchar(200) NOT NULL, + `data` text NOT NULL, + `shipped` date DEFAULT NULL, + `payed` date DEFAULT NULL, + `canceled` tinyint(4) NOT NULL, + `invoice_date` date DEFAULT NULL, + `number` int(11) NOT NULL, + `origin` enum('internet','phone','folder','fair') NOT NULL DEFAULT 'internet', + `firstname` varchar(200) NOT NULL, + `lastname` varchar(200) NOT NULL, + `city` varchar(200) NOT NULL, + `email` varchar(200) NOT NULL, + `zip` varchar(50) NOT NULL, + `payment` varchar(100) NOT NULL, + `invoice_number` int(11) NOT NULL, + PRIMARY KEY (`id`) + ) ENGINE=InnoDB DEFAULT CHARSET=latin1; + + CREATE TABLE IF NOT EXISTS `kwc_shop_order_products` ( + `id` int(10) unsigned NOT NULL AUTO_INCREMENT, + `shop_order_id` int(10) unsigned NOT NULL, + `shop_product_price_id` int(10) unsigned DEFAULT NULL, + `amount` int(11) NOT NULL, + `pos` smallint(6) NOT NULL, + `add_component_id` varchar(200) NOT NULL, + `add_component_class` varchar(200) NOT NULL, + `data` text CHARACTER SET utf8 COLLATE utf8_bin NOT NULL, + PRIMARY KEY (`id`), + KEY `shop_order_id` (`shop_order_id`), + KEY `shop_product_price_id` (`shop_product_price_id`) + ) ENGINE=InnoDB DEFAULT CHARSET=latin1; + + CREATE TABLE IF NOT EXISTS `kwc_shop_products` ( + `id` int(10) unsigned NOT NULL AUTO_INCREMENT, + `category` varchar(255) NOT NULL, + `pos` smallint(6) NOT NULL, + `title` varchar(200) NOT NULL, + `filename` varchar(100) NOT NULL, + `visible` tinyint(4) NOT NULL, + `max_amount` int(11) NOT NULL, + PRIMARY KEY (`id`) + ) ENGINE=InnoDB DEFAULT CHARSET=latin1; + + CREATE TABLE IF NOT EXISTS `kwc_shop_product_prices` ( + `id` int(10) unsigned NOT NULL AUTO_INCREMENT, + `shop_product_id` int(10) unsigned NOT NULL, + `price` decimal(10,2) NOT NULL, + `valid_from` datetime NOT NULL, + PRIMARY KEY (`id`), + KEY `shop_product_id` (`shop_product_id`) + ) ENGINE=InnoDB DEFAULT CHARSET=latin1; + + ALTER TABLE `kwc_shop_order_products` + ADD CONSTRAINT `kwc_shop_order_products_ibfk_1` FOREIGN KEY (`shop_order_id`) REFERENCES `kwc_shop_orders` (`id`), + ADD CONSTRAINT `kwc_shop_order_products_ibfk_2` FOREIGN KEY (`shop_product_price_id`) REFERENCES `kwc_shop_product_prices` (`id`); + + ALTER TABLE `kwc_shop_product_prices` + ADD CONSTRAINT `kwc_shop_product_prices_ibfk_1` FOREIGN KEY (`shop_product_id`) REFERENCES `kwc_shop_products` (`id`) ON DELETE CASCADE ON UPDATE CASCADE; + + ALTER TABLE `kwc_shop_order_products` CHANGE `shop_product_price_id` `shop_product_price_id` INT( 10 ) UNSIGNED NULL; + "); + } +} diff --git a/KwcShop/Kwc/Shop/Products/Directory/Update/20150309Shop00002.php b/KwcShop/Kwc/Shop/Products/Directory/Update/20150309Shop00002.php new file mode 100644 index 0000000..18f4443 --- /dev/null +++ b/KwcShop/Kwc/Shop/Products/Directory/Update/20150309Shop00002.php @@ -0,0 +1,13 @@ +fetchOne("SHOW columns FROM `kwc_shop_order_products` LIKE 'add_component_class'"); + if ($executed) return; + + $db->query("ALTER TABLE `kwc_shop_order_products` ADD `add_component_class` VARCHAR( 200 ) NOT NULL"); + $db->query("UPDATE kwc_shop_order_products SET add_component_class='Kwc_Babytuch_Shop_AddToCart_Component'"); + } +} diff --git a/KwcShop/Kwc/Shop/Products/Directory/Update/20150309Shop00003.php b/KwcShop/Kwc/Shop/Products/Directory/Update/20150309Shop00003.php new file mode 100644 index 0000000..eabf3f7 --- /dev/null +++ b/KwcShop/Kwc/Shop/Products/Directory/Update/20150309Shop00003.php @@ -0,0 +1,14 @@ +fetchOne("SHOW columns FROM `kwc_shop_order_products` LIKE 'data'"); + if ($executed) return; + + $db->query("ALTER TABLE `kwc_shop_order_products` ADD `data` TEXT CHARACTER SET utf8 COLLATE utf8_bin NOT NULL"); + $db->query("ALTER TABLE `kwc_shop_order_products` CHANGE `size` `size_backup` TINYINT(4) NOT NULL"); + $db->query("ALTER TABLE `kwc_shop_order_products` CHANGE `amount` `amount_backup` SMALLINT NOT NULL"); + } +} diff --git a/KwcShop/Kwc/Shop/Cart/Update/20150309Legacy00004.php b/KwcShop/Kwc/Shop/Products/Directory/Update/20150309Shop00004.php similarity index 81% rename from KwcShop/Kwc/Shop/Cart/Update/20150309Legacy00004.php rename to KwcShop/Kwc/Shop/Products/Directory/Update/20150309Shop00004.php index 461bd86..f0e6414 100644 --- a/KwcShop/Kwc/Shop/Cart/Update/20150309Legacy00004.php +++ b/KwcShop/Kwc/Shop/Products/Directory/Update/20150309Shop00004.php @@ -1,5 +1,5 @@ fetchOne("SHOW columns FROM `kwc_shop_products` LIKE 'component'"); + if ($executed) return; + + $db->query("ALTER TABLE `kwc_shop_products` ADD `component` VARCHAR( 255 ) NOT NULL AFTER `id`"); + } +} diff --git a/KwcShop/Kwc/Shop/Products/Directory/Update/20150309Shop00006.sql b/KwcShop/Kwc/Shop/Products/Directory/Update/20150309Shop00006.sql new file mode 100644 index 0000000..4404f57 --- /dev/null +++ b/KwcShop/Kwc/Shop/Products/Directory/Update/20150309Shop00006.sql @@ -0,0 +1,5 @@ +ALTER TABLE `kwc_shop_product_prices` DROP FOREIGN KEY `kwc_shop_product_prices_ibfk_1` ; +ALTER TABLE `kwc_shop_product_prices` ADD FOREIGN KEY ( `shop_product_id` ) + REFERENCES `kwc_shop_products` ( + `id` + ) ON DELETE CASCADE ON UPDATE CASCADE ; diff --git a/KwcShop/Kwc/Shop/Products/Directory/Update/20150309Shop00007.php b/KwcShop/Kwc/Shop/Products/Directory/Update/20150309Shop00007.php new file mode 100644 index 0000000..b95d3fb --- /dev/null +++ b/KwcShop/Kwc/Shop/Products/Directory/Update/20150309Shop00007.php @@ -0,0 +1,24 @@ +fetchOne("SHOW columns FROM `kwc_shop_products` LIKE 'component_id'"); + if ($executed) return; + + $db->query("ALTER TABLE `kwc_shop_products` ADD `component_id` VARCHAR( 255 ) NOT NULL AFTER `id`"); + $db->query("ALTER TABLE `kwc_shop_products` ADD INDEX ( `component_id` )"); + } + + public function postUpdate() + { + $c = Kwf_Component_Data_Root::getInstance() + ->getComponentByClass('KwcShop_Kwc_Shop_Products_Directory_Component', array('limit'=>1, 'ignoreVisible'=>true)); + p($c); + if ($c) { + Kwf_Registry::get('db')->query("UPDATE kwc_shop_products SET component_id='$c->dbId'"); + } + } +} diff --git a/KwcShop/Kwc/Shop/Products/Directory/Update/20150309Shop00008.php b/KwcShop/Kwc/Shop/Products/Directory/Update/20150309Shop00008.php new file mode 100644 index 0000000..3784f34 --- /dev/null +++ b/KwcShop/Kwc/Shop/Products/Directory/Update/20150309Shop00008.php @@ -0,0 +1,12 @@ +fetchOne("SHOW columns FROM `kwc_shop_orders` LIKE 'confirm_mail_sent'"); + if ($executed) return; + + $db->query("ALTER TABLE `kwc_shop_orders` ADD `confirm_mail_sent` DATETIME NULL"); + } +} diff --git a/KwcShop/Kwc/Shop/Cart/Checkout/Payment/Wirecard/Update/20150309Legacy00001.sql b/KwcShop/Kwc/Shop/Products/Directory/Update/20150309Shop00009.sql similarity index 100% rename from KwcShop/Kwc/Shop/Cart/Checkout/Payment/Wirecard/Update/20150309Legacy00001.sql rename to KwcShop/Kwc/Shop/Products/Directory/Update/20150309Shop00009.sql diff --git a/KwcShop/Kwc/Shop/Products/Directory/Update/20150309Shop28185.sql b/KwcShop/Kwc/Shop/Products/Directory/Update/20150309Shop28185.sql new file mode 100644 index 0000000..865da3b --- /dev/null +++ b/KwcShop/Kwc/Shop/Products/Directory/Update/20150309Shop28185.sql @@ -0,0 +1 @@ +ALTER TABLE `kwc_shop_orders` CHANGE `status` `status` ENUM( 'cart', 'ordered', 'payed' ) CHARACTER SET latin1 COLLATE latin1_swedish_ci NOT NULL; diff --git a/KwcShop/Kwc/Shop/Products/Directory/Update/20150309Shop30179.php b/KwcShop/Kwc/Shop/Products/Directory/Update/20150309Shop30179.php new file mode 100644 index 0000000..2c51d70 --- /dev/null +++ b/KwcShop/Kwc/Shop/Products/Directory/Update/20150309Shop30179.php @@ -0,0 +1,51 @@ +fetchOne("SHOW columns FROM `kwc_shop_orders` LIKE 'payment_component_id'"); + if ($executed) return; + + $db->query(" + ALTER TABLE `kwc_shop_orders` ADD `payment_component_id` VARCHAR( 200 ) NOT NULL AFTER `date` ; + ALTER TABLE `kwc_shop_orders` ADD `checkout_component_id` VARCHAR( 200 ) NOT NULL AFTER `payment_component_id` ; + ALTER TABLE `kwc_shop_orders` ADD `package_sent` DATE NULL , + ADD `payed` DATE NULL; + + UPDATE kwc_shop_orders SET checkout_component_id='17_checkout'; + + CREATE TABLE `kwc_shop_product_prices` ( + `id` INT UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY , + `shop_product_id` INT UNSIGNED NOT NULL , + `price` DECIMAL( 10, 2 ) NOT NULL , + `valid_from` DATETIME NOT NULL , + INDEX ( `shop_product_id` ) + ) ENGINE = INNODB; + + ALTER TABLE `kwc_shop_product_prices` ADD FOREIGN KEY ( `shop_product_id` ) REFERENCES `kwc_shop_products` ( + `id` + ); + + INSERT INTO kwc_shop_product_prices (shop_product_id, price, valid_from) + SELECT id, price, NOW() FROM kwc_shop_products; + + ALTER TABLE `kwc_shop_products` DROP `price`; + + ALTER TABLE `kwc_shop_order_products` ADD `shop_product_price_id` INT UNSIGNED NOT NULL AFTER `shop_product_id` ; + + ALTER TABLE `kwc_shop_order_products` ADD INDEX ( `shop_product_price_id` ) ; + + UPDATE `kwc_shop_order_products` SET shop_product_price_id = (SELECT id FROM kwc_shop_product_prices WHERE kwc_shop_product_prices.shop_product_id=kwc_shop_order_products.shop_product_id LIMIT 1); + + -- #da gibts vielleicht ein problem: + ALTER TABLE `kwc_shop_order_products` DROP FOREIGN KEY `kwc_shop_order_products_ibfk_1` ; + ALTER TABLE `kwc_shop_order_products` DROP FOREIGN KEY `kwc_shop_order_products_ibfk_2` ; + + ALTER TABLE `kwc_shop_order_products` DROP `shop_product_id`; + + ALTER TABLE `kwc_shop_order_products` ADD FOREIGN KEY ( `shop_order_id` ) REFERENCES `kwc_shop_orders` (`id`); + ALTER TABLE `kwc_shop_order_products` ADD FOREIGN KEY ( `shop_product_price_id` ) REFERENCES `kwc_shop_product_prices` (`id`); + "); + } +} diff --git a/KwcShop/Kwc/Shop/Products/Directory/Update/20150309Shop30275.php b/KwcShop/Kwc/Shop/Products/Directory/Update/20150309Shop30275.php new file mode 100644 index 0000000..e5b66da --- /dev/null +++ b/KwcShop/Kwc/Shop/Products/Directory/Update/20150309Shop30275.php @@ -0,0 +1,20 @@ + +fetchOne("SHOW columns FROM `kwc_shop_orders` LIKE 'canceled'"); + if ($executed) return; + + $db->query(" + ALTER TABLE `kwc_shop_orders` ADD `canceled` TINYINT NOT NULL ; + ALTER TABLE `kwc_shop_orders` ADD `invoice_date` DATE NULL ; + ALTER TABLE `kwc_shop_orders` ADD number INT NOT NULL ; + UPDATE `kwc_shop_orders` SET number=id; + ALTER TABLE `kwc_shop_orders` CHANGE `package_sent` `shipped` DATE NULL DEFAULT NULL; + ALTER TABLE `kwc_shop_orders` ADD origin ENUM ('internet', 'phone') NOT NULL DEFAULT 'internet'; + "); + } +} diff --git a/KwcShop/Kwc/Shop/Cart/Checkout/Update/20150309Legacy30277.php b/KwcShop/Kwc/Shop/Products/Directory/Update/20150309Shop30277.php similarity index 69% rename from KwcShop/Kwc/Shop/Cart/Checkout/Update/20150309Legacy30277.php rename to KwcShop/Kwc/Shop/Products/Directory/Update/20150309Shop30277.php index 0324d4a..ae9f977 100644 --- a/KwcShop/Kwc/Shop/Cart/Checkout/Update/20150309Legacy30277.php +++ b/KwcShop/Kwc/Shop/Products/Directory/Update/20150309Shop30277.php @@ -1,47 +1,49 @@ fetchOne("SHOW columns FROM `kwc_shop_orders` LIKE 'firstname'"); + if ($executed) return; $this->_actions[] = new Kwf_Update_Action_Db_AddField(array( - 'table' => 'KwcShop_Kwc_Shop_orders', + 'table' => 'kwc_shop_orders', 'field' => 'firstname', 'type' => 'VARCHAR(200)', 'null' => false, 'default' => '' )); $this->_actions[] = new Kwf_Update_Action_Db_AddField(array( - 'table' => 'KwcShop_Kwc_Shop_orders', + 'table' => 'kwc_shop_orders', 'field' => 'lastname', 'type' => 'VARCHAR(200)', 'null' => false, 'default' => '' )); $this->_actions[] = new Kwf_Update_Action_Db_AddField(array( - 'table' => 'KwcShop_Kwc_Shop_orders', + 'table' => 'kwc_shop_orders', 'field' => 'city', 'type' => 'VARCHAR(200)', 'null' => false, 'default' => '' )); $this->_actions[] = new Kwf_Update_Action_Db_AddField(array( - 'table' => 'KwcShop_Kwc_Shop_orders', + 'table' => 'kwc_shop_orders', 'field' => 'email', 'type' => 'VARCHAR(200)', 'null' => false, 'default' => '' )); $this->_actions[] = new Kwf_Update_Action_Db_AddField(array( - 'table' => 'KwcShop_Kwc_Shop_orders', + 'table' => 'kwc_shop_orders', 'field' => 'zip', 'type' => 'VARCHAR(50)', 'null' => false, 'default' => '' )); $this->_actions[] = new Kwf_Update_Action_Db_AddField(array( - 'table' => 'KwcShop_Kwc_Shop_orders', + 'table' => 'kwc_shop_orders', 'field' => 'payment', 'type' => 'VARCHAR(100)', 'null' => false, @@ -49,13 +51,10 @@ protected function _init() )); $this->_actions[] = new Kwf_Update_Action_Db_ConvertFieldModel(array( - 'table' => 'KwcShop_Kwc_Shop_orders', + 'table' => 'kwc_shop_orders', 'fields' => array('firstname', 'lastname', 'payment', 'zip', 'email', 'city'), )); - } - public function update() - { parent::update(); - Kwf_Registry::get('db')->query("UPDATE `KwcShop_Kwc_Shop_orders` SET payment='prePayment' WHERE payment='prepayment'"); + Kwf_Registry::get('db')->query("UPDATE `kwc_shop_orders` SET payment='prePayment' WHERE payment='prepayment'"); } } diff --git a/KwcShop/Kwc/Shop/Products/Directory/Update/20150309Shop30372.php b/KwcShop/Kwc/Shop/Products/Directory/Update/20150309Shop30372.php new file mode 100644 index 0000000..08859fe --- /dev/null +++ b/KwcShop/Kwc/Shop/Products/Directory/Update/20150309Shop30372.php @@ -0,0 +1,15 @@ +fetchOne("SHOW columns FROM `kwc_shop_orders` LIKE 'invoice_number'"); + if ($executed) return; + + $db->query(" + ALTER TABLE `kwc_shop_orders` ADD `invoice_number` INT NULL ; + UPDATE `kwc_shop_orders` SET shipped = NOW(); + "); + } +} diff --git a/KwcShop/Kwc/Shop/Products/Directory/Update/20150309Shop30373.sql b/KwcShop/Kwc/Shop/Products/Directory/Update/20150309Shop30373.sql new file mode 100644 index 0000000..c26af0e --- /dev/null +++ b/KwcShop/Kwc/Shop/Products/Directory/Update/20150309Shop30373.sql @@ -0,0 +1 @@ +ALTER TABLE kwc_shop_orders CHANGE origin origin ENUM( 'internet', 'phone', 'folder', 'fair' ) CHARACTER SET latin1 COLLATE latin1_swedish_ci NOT NULL DEFAULT 'internet'; diff --git a/KwcShop/Kwc/Shop/Products/Directory/Update/20150309Shop30374.php b/KwcShop/Kwc/Shop/Products/Directory/Update/20150309Shop30374.php new file mode 100644 index 0000000..cf037c9 --- /dev/null +++ b/KwcShop/Kwc/Shop/Products/Directory/Update/20150309Shop30374.php @@ -0,0 +1,15 @@ +fetchOne("SHOW columns FROM `kwc_shop_orders` LIKE 'cart_component_class'"); + if ($executed) return; + + $db->query(" + ALTER TABLE `kwc_shop_orders` ADD `cart_component_class` VARCHAR( 200 ) NOT NULL AFTER `checkout_component_id` ; + UPDATE kwc_shop_orders SET cart_component_class='Kwc_Babytuch_Shop_Cart_Component'; + "); + } +} diff --git a/KwcShop/Kwc/Shop/Products/Directory/Update/20150309Shop30375.sql b/KwcShop/Kwc/Shop/Products/Directory/Update/20150309Shop30375.sql new file mode 100644 index 0000000..10dbd9b --- /dev/null +++ b/KwcShop/Kwc/Shop/Products/Directory/Update/20150309Shop30375.sql @@ -0,0 +1 @@ +ALTER TABLE `kwc_shop_orders` CHANGE `status` `status` ENUM( 'cart', 'processing', 'ordered', 'payed' ) NOT NULL; diff --git a/KwcShop/Kwc/Shop/Cart/Checkout/Payment/PayPal/Update/20150423Legacy00001.sql b/KwcShop/Kwc/Shop/Products/Directory/Update/20150423Shop00001.sql similarity index 100% rename from KwcShop/Kwc/Shop/Cart/Checkout/Payment/PayPal/Update/20150423Legacy00001.sql rename to KwcShop/Kwc/Shop/Products/Directory/Update/20150423Shop00001.sql diff --git a/KwcShop/Kwc/Shop/Cart/Checkout/Payment/Wirecard/Update/20150423Legacy00002.php b/KwcShop/Kwc/Shop/Products/Directory/Update/20150423Shop00002.php similarity index 83% rename from KwcShop/Kwc/Shop/Cart/Checkout/Payment/Wirecard/Update/20150423Legacy00002.php rename to KwcShop/Kwc/Shop/Products/Directory/Update/20150423Shop00002.php index 4974dd5..d9c696a 100644 --- a/KwcShop/Kwc/Shop/Cart/Checkout/Payment/Wirecard/Update/20150423Legacy00002.php +++ b/KwcShop/Kwc/Shop/Products/Directory/Update/20150423Shop00002.php @@ -1,9 +1,12 @@ fetchOne("SHOW columns FROM `kwc_wirecard_log` LIKE 'custom'"); + if ($executed) return; + $db->query('ALTER TABLE `kwc_wirecard_log` ADD `custom` varchar(255) NOT NULL'); $db->query('ALTER TABLE `kwc_wirecard_log` ADD `callback_success` tinyint(1) NOT NULL'); @@ -23,6 +26,5 @@ public function update() $db->query('ALTER TABLE `kwc_wirecard_log` DROP `custom_order_id`'); } - } diff --git a/KwcShop/Kwc/Shop/Update/20150309Legacy28185.sql b/KwcShop/Kwc/Shop/Update/20150309Legacy28185.sql deleted file mode 100644 index dcabe7b..0000000 --- a/KwcShop/Kwc/Shop/Update/20150309Legacy28185.sql +++ /dev/null @@ -1 +0,0 @@ -ALTER TABLE `KwcShop_Kwc_Shop_orders` CHANGE `status` `status` ENUM( 'cart', 'ordered', 'payed' ) CHARACTER SET latin1 COLLATE latin1_swedish_ci NOT NULL;