Example #1
3
 /**
  * {@inheritdoc}
  * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
  */
 public function install(SchemaSetupInterface $setup, ModuleContextInterface $context)
 {
     $installer = $setup;
     $installer->startSetup();
     if (!$installer->tableExists('gemtoo_blog_article')) {
         $table = $installer->getConnection()->newTable($installer->getTable('gemtoo_blog_article'));
         $table->addColumn('article_id', Table::TYPE_INTEGER, null, ['identity' => true, 'unsigned' => true, 'nullable' => false, 'primary' => true], 'Article ID')->addColumn('name', Table::TYPE_TEXT, 255, ['nullable' => false], 'Article Name')->addColumn('url_key', Table::TYPE_TEXT, 255, ['nullable' => false], 'Article Url Key')->addColumn('content', Table::TYPE_TEXT, '2M', [], 'Article Content')->addColumn('dop', Table::TYPE_DATE, null, [], 'Article Date')->addColumn('type', Table::TYPE_INTEGER, null, [], 'Article Type')->addColumn('image', Table::TYPE_TEXT, 255, [], 'Article Image')->addColumn('file', Table::TYPE_TEXT, 255, [], 'Article File')->addColumn('meta_title', Table::TYPE_TEXT, 255, [], 'Article Meta Title')->addColumn('meta_description', Table::TYPE_TEXT, '2M', [], 'Article Meta Description')->addColumn('meta_keywords', Table::TYPE_TEXT, '2M', [], 'Article Meta Keywords')->addColumn('is_active', Table::TYPE_INTEGER, null, ['nullable' => false, 'default' => '1'], 'Is Article Active')->addColumn('in_rss', Table::TYPE_INTEGER, null, ['nullable' => false, 'default' => '1'], 'Show in rss')->addColumn('updated_at', Table::TYPE_TIMESTAMP, null, [], 'Update at')->addColumn('created_at', Table::TYPE_TIMESTAMP, null, [], 'Creation Time')->setComment('Blog articles');
         $installer->getConnection()->createTable($table);
         $installer->getConnection()->addIndex($installer->getTable('gemtoo_blog_article'), $setup->getIdxName($installer->getTable('gemtoo_blog_article'), ['name', 'photo'], AdapterInterface::INDEX_TYPE_FULLTEXT), ['name', 'content', 'url_key', 'file', 'meta_title', 'meta_keywords', 'meta_description'], AdapterInterface::INDEX_TYPE_FULLTEXT);
     }
     //Create Articles to Store table
     if (!$installer->tableExists('gemtoo_blog_article_store')) {
         $table = $installer->getConnection()->newTable($installer->getTable('gemtoo_blog_article_store'));
         $table->addColumn('article_id', Table::TYPE_INTEGER, null, ['unsigned' => true, 'nullable' => false, 'primary' => true], 'Article ID')->addColumn('store_id', Table::TYPE_SMALLINT, null, ['unsigned' => true, 'nullable' => false, 'primary' => true], 'Store ID')->addIndex($installer->getIdxName('gemtoo_blog_article_store', ['store_id']), ['store_id'])->addForeignKey($installer->getFkName('gemtoo_blog_article_store', 'article_id', 'gemtoo_blog_article', 'article_id'), 'article_id', $installer->getTable('gemtoo_blog_article'), 'article_id', Table::ACTION_CASCADE)->addForeignKey($installer->getFkName('gemtoo_blog_article_store', 'store_id', 'store', 'store_id'), 'store_id', $installer->getTable('store'), 'store_id', Table::ACTION_CASCADE)->setComment('Article To Store Link Table');
         $installer->getConnection()->createTable($table);
     }
     if (!$installer->tableExists('gemtoo_blog_article_product')) {
         $table = $installer->getConnection()->newTable($installer->getTable('gemtoo_blog_article_product'));
         $table->addColumn('article_id', Table::TYPE_INTEGER, null, ['unsigned' => true, 'nullable' => false, 'primary' => true], 'Article ID')->addColumn('product_id', Table::TYPE_INTEGER, null, ['unsigned' => true, 'nullable' => false, 'primary' => true], 'Product ID')->addColumn('position', Table::TYPE_INTEGER, null, ['nullable' => false, 'default' => '0'], 'Position')->addIndex($installer->getIdxName('gemtoo_blog_article_product', ['product_id']), ['product_id'])->addForeignKey($installer->getFkName('gemtoo_blog_article_product', 'article_id', 'gemtoo_blog_article', 'article_id'), 'article_id', $installer->getTable('gemtoo_blog_article'), 'article_id', Table::ACTION_CASCADE)->addForeignKey($installer->getFkName('gemtoo_blog_article_product', 'product_id', 'catalog_product_entity', 'entity_id'), 'product_id', $installer->getTable('catalog_product_entity'), 'entity_id', Table::ACTION_CASCADE)->addIndex($installer->getIdxName('gemtoo_blog_article_product', ['article_id', 'product_id'], AdapterInterface::INDEX_TYPE_UNIQUE), ['article_id', 'product_id'], ['type' => AdapterInterface::INDEX_TYPE_UNIQUE])->setComment('Article To product Link Table');
         $installer->getConnection()->createTable($table);
     }
     if (!$installer->tableExists('gemtoo_blog_article_category')) {
         $table = $installer->getConnection()->newTable($installer->getTable('gemtoo_blog_article_category'));
         $table->addColumn('article_id', Table::TYPE_INTEGER, null, ['unsigned' => true, 'nullable' => false, 'primary' => true], 'Article ID')->addColumn('category_id', Table::TYPE_INTEGER, null, ['unsigned' => true, 'nullable' => false, 'primary' => true], 'Category ID')->addColumn('position', Table::TYPE_INTEGER, null, ['nullable' => false, 'default' => '0'], 'Position')->addIndex($installer->getIdxName('gemtoo_blog_article_category', ['category_id']), ['category_id'])->addForeignKey($installer->getFkName('gemtoo_blog_article_category', 'article_id', 'gemtoo_blog_article', 'article_id'), 'article_id', $installer->getTable('gemtoo_blog_article'), 'article_id', Table::ACTION_CASCADE)->addForeignKey($installer->getFkName('gemtoo_blog_article_category', 'category_id', 'catalog_category_entity', 'entity_id'), 'category_id', $installer->getTable('catalog_category_entity'), 'entity_id', Table::ACTION_CASCADE)->addIndex($installer->getIdxName('gemtoo_blog_article_category', ['article_id', 'category_id'], AdapterInterface::INDEX_TYPE_UNIQUE), ['article_id', 'category_id'], ['type' => AdapterInterface::INDEX_TYPE_UNIQUE])->setComment('Article To category Link Table');
         $installer->getConnection()->createTable($table);
     }
 }
 /**
  * {@inheritdoc}
  * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
  */
 public function install(SchemaSetupInterface $setup, ModuleContextInterface $context)
 {
     $installer = $setup;
     $installer->startSetup();
     /**
      * Create table 'cataloginventory_stock'
      */
     $table = $installer->getConnection()->newTable($installer->getTable('cataloginventory_stock'))->addColumn('stock_id', \Magento\Framework\DB\Ddl\Table::TYPE_SMALLINT, null, ['identity' => true, 'unsigned' => true, 'nullable' => false, 'primary' => true], 'Stock Id')->addColumn('website_id', \Magento\Framework\DB\Ddl\Table::TYPE_SMALLINT, 5, ['unsigned' => true, 'nullable' => false], 'Website Id')->addColumn('stock_name', \Magento\Framework\DB\Ddl\Table::TYPE_TEXT, 255, [], 'Stock Name')->addIndex($setup->getIdxName($installer->getTable('cataloginventory_stock'), ['website_id'], \Magento\Framework\DB\Adapter\AdapterInterface::INDEX_TYPE_INDEX), ['website_id'], \Magento\Framework\DB\Adapter\AdapterInterface::INDEX_TYPE_INDEX)->setComment('Cataloginventory Stock');
     $installer->getConnection()->createTable($table);
     /**
      * Create table 'cataloginventory_stock_item'
      */
     $table = $installer->getConnection()->newTable($installer->getTable('cataloginventory_stock_item'))->addColumn('item_id', \Magento\Framework\DB\Ddl\Table::TYPE_INTEGER, null, ['identity' => true, 'unsigned' => true, 'nullable' => false, 'primary' => true], 'Item Id')->addColumn('product_id', \Magento\Framework\DB\Ddl\Table::TYPE_INTEGER, null, ['unsigned' => true, 'nullable' => false, 'default' => '0'], 'Product Id')->addColumn('stock_id', \Magento\Framework\DB\Ddl\Table::TYPE_SMALLINT, null, ['unsigned' => true, 'nullable' => false, 'default' => '0'], 'Stock Id')->addColumn('qty', \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL, '12,4', ['unsigned' => false, 'nullable' => true, 'default' => null], 'Qty')->addColumn('min_qty', \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL, '12,4', ['nullable' => false, 'default' => '0.0000'], 'Min Qty')->addColumn('use_config_min_qty', \Magento\Framework\DB\Ddl\Table::TYPE_SMALLINT, null, ['unsigned' => true, 'nullable' => false, 'default' => '1'], 'Use Config Min Qty')->addColumn('is_qty_decimal', \Magento\Framework\DB\Ddl\Table::TYPE_SMALLINT, null, ['unsigned' => true, 'nullable' => false, 'default' => '0'], 'Is Qty Decimal')->addColumn('backorders', \Magento\Framework\DB\Ddl\Table::TYPE_SMALLINT, null, ['unsigned' => true, 'nullable' => false, 'default' => '0'], 'Backorders')->addColumn('use_config_backorders', \Magento\Framework\DB\Ddl\Table::TYPE_SMALLINT, null, ['unsigned' => true, 'nullable' => false, 'default' => '1'], 'Use Config Backorders')->addColumn('min_sale_qty', \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL, '12,4', ['nullable' => false, 'default' => '1.0000'], 'Min Sale Qty')->addColumn('use_config_min_sale_qty', \Magento\Framework\DB\Ddl\Table::TYPE_SMALLINT, null, ['unsigned' => true, 'nullable' => false, 'default' => '1'], 'Use Config Min Sale Qty')->addColumn('max_sale_qty', \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL, '12,4', ['nullable' => false, 'default' => '0.0000'], 'Max Sale Qty')->addColumn('use_config_max_sale_qty', \Magento\Framework\DB\Ddl\Table::TYPE_SMALLINT, null, ['unsigned' => true, 'nullable' => false, 'default' => '1'], 'Use Config Max Sale Qty')->addColumn('is_in_stock', \Magento\Framework\DB\Ddl\Table::TYPE_SMALLINT, null, ['unsigned' => true, 'nullable' => false, 'default' => '0'], 'Is In Stock')->addColumn('low_stock_date', \Magento\Framework\DB\Ddl\Table::TYPE_TIMESTAMP, null, [], 'Low Stock Date')->addColumn('notify_stock_qty', \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL, '12,4', [], 'Notify Stock Qty')->addColumn('use_config_notify_stock_qty', \Magento\Framework\DB\Ddl\Table::TYPE_SMALLINT, null, ['unsigned' => true, 'nullable' => false, 'default' => '1'], 'Use Config Notify Stock Qty')->addColumn('manage_stock', \Magento\Framework\DB\Ddl\Table::TYPE_SMALLINT, null, ['unsigned' => true, 'nullable' => false, 'default' => '0'], 'Manage Stock')->addColumn('use_config_manage_stock', \Magento\Framework\DB\Ddl\Table::TYPE_SMALLINT, null, ['unsigned' => true, 'nullable' => false, 'default' => '1'], 'Use Config Manage Stock')->addColumn('stock_status_changed_auto', \Magento\Framework\DB\Ddl\Table::TYPE_SMALLINT, null, ['unsigned' => true, 'nullable' => false, 'default' => '0'], 'Stock Status Changed Automatically')->addColumn('use_config_qty_increments', \Magento\Framework\DB\Ddl\Table::TYPE_SMALLINT, null, ['unsigned' => true, 'nullable' => false, 'default' => '1'], 'Use Config Qty Increments')->addColumn('qty_increments', \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL, '12,4', ['nullable' => false, 'default' => '0.0000'], 'Qty Increments')->addColumn('use_config_enable_qty_inc', \Magento\Framework\DB\Ddl\Table::TYPE_SMALLINT, null, ['unsigned' => true, 'nullable' => false, 'default' => '1'], 'Use Config Enable Qty Increments')->addColumn('enable_qty_increments', \Magento\Framework\DB\Ddl\Table::TYPE_SMALLINT, null, ['unsigned' => true, 'nullable' => false, 'default' => '0'], 'Enable Qty Increments')->addColumn('is_decimal_divided', \Magento\Framework\DB\Ddl\Table::TYPE_SMALLINT, 5, ['unsigned' => true, 'nullable' => false, 'default' => '0'], 'Is Divided into Multiple Boxes for Shipping')->addColumn('website_id', \Magento\Framework\DB\Ddl\Table::TYPE_SMALLINT, 5, ['unsigned' => true, 'nullable' => false, 'default' => 0], 'Is Divided into Multiple Boxes for Shipping')->addIndex($installer->getIdxName('cataloginventory_stock_item', ['product_id', 'website_id'], \Magento\Framework\DB\Adapter\AdapterInterface::INDEX_TYPE_UNIQUE), ['product_id', 'website_id'], ['type' => \Magento\Framework\DB\Adapter\AdapterInterface::INDEX_TYPE_UNIQUE])->addIndex($installer->getIdxName('cataloginventory_stock_item', ['website_id'], \Magento\Framework\DB\Adapter\AdapterInterface::INDEX_TYPE_INDEX), ['website_id'], ['type' => \Magento\Framework\DB\Adapter\AdapterInterface::INDEX_TYPE_INDEX])->addIndex($installer->getIdxName('cataloginventory_stock_item', ['stock_id']), ['stock_id'])->addForeignKey($installer->getFkName('cataloginventory_stock_item', 'product_id', 'catalog_product_entity', 'entity_id'), 'product_id', $installer->getTable('catalog_product_entity'), 'entity_id', \Magento\Framework\DB\Ddl\Table::ACTION_CASCADE)->addForeignKey($installer->getFkName('cataloginventory_stock_item', 'stock_id', 'cataloginventory_stock', 'stock_id'), 'stock_id', $installer->getTable('cataloginventory_stock'), 'stock_id', \Magento\Framework\DB\Ddl\Table::ACTION_CASCADE)->setComment('Cataloginventory Stock Item');
     $installer->getConnection()->createTable($table);
     /**
      * Create table 'cataloginventory_stock_status'
      */
     $table = $installer->getConnection()->newTable($installer->getTable('cataloginventory_stock_status'))->addColumn('product_id', \Magento\Framework\DB\Ddl\Table::TYPE_INTEGER, null, ['unsigned' => true, 'nullable' => false, 'primary' => true], 'Product Id')->addColumn('website_id', \Magento\Framework\DB\Ddl\Table::TYPE_SMALLINT, null, ['unsigned' => true, 'nullable' => false, 'primary' => true], 'Website Id')->addColumn('stock_id', \Magento\Framework\DB\Ddl\Table::TYPE_SMALLINT, null, ['unsigned' => true, 'nullable' => false, 'primary' => true], 'Stock Id')->addColumn('qty', \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL, '12,4', ['nullable' => false, 'default' => '0.0000'], 'Qty')->addColumn('stock_status', \Magento\Framework\DB\Ddl\Table::TYPE_SMALLINT, null, ['unsigned' => true, 'nullable' => false], 'Stock Status')->addIndex($installer->getIdxName('cataloginventory_stock_status', ['stock_id']), ['stock_id'])->addIndex($installer->getIdxName('cataloginventory_stock_status', ['website_id']), ['website_id'])->setComment('Cataloginventory Stock Status');
     $installer->getConnection()->createTable($table);
     /**
      * Create table 'cataloginventory_stock_status_idx'
      */
     $table = $installer->getConnection()->newTable($installer->getTable('cataloginventory_stock_status_idx'))->addColumn('product_id', \Magento\Framework\DB\Ddl\Table::TYPE_INTEGER, null, ['unsigned' => true, 'nullable' => false, 'primary' => true], 'Product Id')->addColumn('website_id', \Magento\Framework\DB\Ddl\Table::TYPE_SMALLINT, null, ['unsigned' => true, 'nullable' => false, 'primary' => true], 'Website Id')->addColumn('stock_id', \Magento\Framework\DB\Ddl\Table::TYPE_SMALLINT, null, ['unsigned' => true, 'nullable' => false, 'primary' => true], 'Stock Id')->addColumn('qty', \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL, '12,4', ['nullable' => false, 'default' => '0.0000'], 'Qty')->addColumn('stock_status', \Magento\Framework\DB\Ddl\Table::TYPE_SMALLINT, null, ['unsigned' => true, 'nullable' => false], 'Stock Status')->addIndex($installer->getIdxName('cataloginventory_stock_status_idx', ['stock_id']), ['stock_id'])->addIndex($installer->getIdxName('cataloginventory_stock_status_idx', ['website_id']), ['website_id'])->setComment('Cataloginventory Stock Status Indexer Idx');
     $installer->getConnection()->createTable($table);
     /**
      * Create table 'cataloginventory_stock_status_tmp'
      */
     $table = $installer->getConnection()->newTable($installer->getTable('cataloginventory_stock_status_tmp'))->addColumn('product_id', \Magento\Framework\DB\Ddl\Table::TYPE_INTEGER, null, ['unsigned' => true, 'nullable' => false, 'primary' => true], 'Product Id')->addColumn('website_id', \Magento\Framework\DB\Ddl\Table::TYPE_SMALLINT, null, ['unsigned' => true, 'nullable' => false, 'primary' => true], 'Website Id')->addColumn('stock_id', \Magento\Framework\DB\Ddl\Table::TYPE_SMALLINT, null, ['unsigned' => true, 'nullable' => false, 'primary' => true], 'Stock Id')->addColumn('qty', \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL, '12,4', ['nullable' => false, 'default' => '0.0000'], 'Qty')->addColumn('stock_status', \Magento\Framework\DB\Ddl\Table::TYPE_SMALLINT, null, ['unsigned' => true, 'nullable' => false], 'Stock Status')->addIndex($installer->getIdxName('cataloginventory_stock_status_tmp', ['stock_id']), ['stock_id'])->addIndex($installer->getIdxName('cataloginventory_stock_status_tmp', ['website_id']), ['website_id'])->setOption('type', \Magento\Framework\DB\Adapter\Pdo\Mysql::ENGINE_MEMORY)->setComment('Cataloginventory Stock Status Indexer Tmp');
     $installer->getConnection()->createTable($table);
     $installer->endSetup();
 }
 /**
  * {@inheritdoc}
  * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
  */
 public function install(SchemaSetupInterface $setup, ModuleContextInterface $context)
 {
     $installer = $setup;
     $installer->startSetup();
     /**
      * Create table 'cms_block'
      */
     $table = $installer->getConnection()->newTable($installer->getTable('cms_block'))->addColumn('block_id', \Magento\Framework\DB\Ddl\Table::TYPE_SMALLINT, null, ['identity' => true, 'nullable' => false, 'primary' => true], 'Block ID')->addColumn('title', \Magento\Framework\DB\Ddl\Table::TYPE_TEXT, 255, ['nullable' => false], 'Block Title')->addColumn('identifier', \Magento\Framework\DB\Ddl\Table::TYPE_TEXT, 255, ['nullable' => false], 'Block String Identifier')->addColumn('content', \Magento\Framework\DB\Ddl\Table::TYPE_TEXT, '2M', [], 'Block Content')->addColumn('creation_time', \Magento\Framework\DB\Ddl\Table::TYPE_TIMESTAMP, null, ['nullable' => false, 'default' => \Magento\Framework\DB\Ddl\Table::TIMESTAMP_INIT], 'Block Creation Time')->addColumn('update_time', \Magento\Framework\DB\Ddl\Table::TYPE_TIMESTAMP, null, ['nullable' => false, 'default' => \Magento\Framework\DB\Ddl\Table::TIMESTAMP_INIT_UPDATE], 'Block Modification Time')->addColumn('is_active', \Magento\Framework\DB\Ddl\Table::TYPE_SMALLINT, null, ['nullable' => false, 'default' => '1'], 'Is Block Active')->addIndex($setup->getIdxName($installer->getTable('cms_block'), ['title', 'identifier', 'content'], AdapterInterface::INDEX_TYPE_FULLTEXT), ['title', 'identifier', 'content'], ['type' => AdapterInterface::INDEX_TYPE_FULLTEXT])->setComment('CMS Block Table');
     $installer->getConnection()->createTable($table);
     /**
      * Create table 'cms_block_store'
      */
     $table = $installer->getConnection()->newTable($installer->getTable('cms_block_store'))->addColumn('block_id', \Magento\Framework\DB\Ddl\Table::TYPE_SMALLINT, null, ['nullable' => false, 'primary' => true], 'Block ID')->addColumn('store_id', \Magento\Framework\DB\Ddl\Table::TYPE_SMALLINT, null, ['unsigned' => true, 'nullable' => false, 'primary' => true], 'Store ID')->addIndex($installer->getIdxName('cms_block_store', ['store_id']), ['store_id'])->addForeignKey($installer->getFkName('cms_block_store', 'block_id', 'cms_block', 'block_id'), 'block_id', $installer->getTable('cms_block'), 'block_id', \Magento\Framework\DB\Ddl\Table::ACTION_CASCADE)->addForeignKey($installer->getFkName('cms_block_store', 'store_id', 'store', 'store_id'), 'store_id', $installer->getTable('store'), 'store_id', \Magento\Framework\DB\Ddl\Table::ACTION_CASCADE)->setComment('CMS Block To Store Linkage Table');
     $installer->getConnection()->createTable($table);
     /**
      * Create table 'cms_page'
      */
     $table = $installer->getConnection()->newTable($installer->getTable('cms_page'))->addColumn('page_id', \Magento\Framework\DB\Ddl\Table::TYPE_SMALLINT, null, ['identity' => true, 'nullable' => false, 'primary' => true], 'Page ID')->addColumn('title', \Magento\Framework\DB\Ddl\Table::TYPE_TEXT, 255, ['nullable' => true], 'Page Title')->addColumn('page_layout', \Magento\Framework\DB\Ddl\Table::TYPE_TEXT, 255, ['nullable' => true], 'Page Layout')->addColumn('meta_keywords', \Magento\Framework\DB\Ddl\Table::TYPE_TEXT, '64k', ['nullable' => true], 'Page Meta Keywords')->addColumn('meta_description', \Magento\Framework\DB\Ddl\Table::TYPE_TEXT, '64k', ['nullable' => true], 'Page Meta Description')->addColumn('identifier', \Magento\Framework\DB\Ddl\Table::TYPE_TEXT, 100, ['nullable' => true, 'default' => null], 'Page String Identifier')->addColumn('content_heading', \Magento\Framework\DB\Ddl\Table::TYPE_TEXT, 255, ['nullable' => true], 'Page Content Heading')->addColumn('content', \Magento\Framework\DB\Ddl\Table::TYPE_TEXT, '2M', [], 'Page Content')->addColumn('creation_time', \Magento\Framework\DB\Ddl\Table::TYPE_TIMESTAMP, null, ['nullable' => false, 'default' => \Magento\Framework\DB\Ddl\Table::TIMESTAMP_INIT], 'Page Creation Time')->addColumn('update_time', \Magento\Framework\DB\Ddl\Table::TYPE_TIMESTAMP, null, ['nullable' => false, 'default' => \Magento\Framework\DB\Ddl\Table::TIMESTAMP_INIT_UPDATE], 'Page Modification Time')->addColumn('is_active', \Magento\Framework\DB\Ddl\Table::TYPE_SMALLINT, null, ['nullable' => false, 'default' => '1'], 'Is Page Active')->addColumn('sort_order', \Magento\Framework\DB\Ddl\Table::TYPE_SMALLINT, null, ['nullable' => false, 'default' => '0'], 'Page Sort Order')->addColumn('layout_update_xml', \Magento\Framework\DB\Ddl\Table::TYPE_TEXT, '64k', ['nullable' => true], 'Page Layout Update Content')->addColumn('custom_theme', \Magento\Framework\DB\Ddl\Table::TYPE_TEXT, 100, ['nullable' => true], 'Page Custom Theme')->addColumn('custom_root_template', \Magento\Framework\DB\Ddl\Table::TYPE_TEXT, 255, ['nullable' => true], 'Page Custom Template')->addColumn('custom_layout_update_xml', \Magento\Framework\DB\Ddl\Table::TYPE_TEXT, '64k', ['nullable' => true], 'Page Custom Layout Update Content')->addColumn('custom_theme_from', \Magento\Framework\DB\Ddl\Table::TYPE_DATE, null, ['nullable' => true], 'Page Custom Theme Active From Date')->addColumn('custom_theme_to', \Magento\Framework\DB\Ddl\Table::TYPE_DATE, null, ['nullable' => true], 'Page Custom Theme Active To Date')->addIndex($installer->getIdxName('cms_page', ['identifier']), ['identifier'])->addIndex($setup->getIdxName($installer->getTable('cms_page'), ['title', 'meta_keywords', 'meta_description', 'identifier', 'content'], AdapterInterface::INDEX_TYPE_FULLTEXT), ['title', 'meta_keywords', 'meta_description', 'identifier', 'content'], ['type' => AdapterInterface::INDEX_TYPE_FULLTEXT])->setComment('CMS Page Table');
     $installer->getConnection()->createTable($table);
     /**
      * Create table 'cms_page_store'
      */
     $table = $installer->getConnection()->newTable($installer->getTable('cms_page_store'))->addColumn('page_id', \Magento\Framework\DB\Ddl\Table::TYPE_SMALLINT, null, ['nullable' => false, 'primary' => true], 'Page ID')->addColumn('store_id', \Magento\Framework\DB\Ddl\Table::TYPE_SMALLINT, null, ['unsigned' => true, 'nullable' => false, 'primary' => true], 'Store ID')->addIndex($installer->getIdxName('cms_page_store', ['store_id']), ['store_id'])->addForeignKey($installer->getFkName('cms_page_store', 'page_id', 'cms_page', 'page_id'), 'page_id', $installer->getTable('cms_page'), 'page_id', \Magento\Framework\DB\Ddl\Table::ACTION_CASCADE)->addForeignKey($installer->getFkName('cms_page_store', 'store_id', 'store', 'store_id'), 'store_id', $installer->getTable('store'), 'store_id', \Magento\Framework\DB\Ddl\Table::ACTION_CASCADE)->setComment('CMS Page To Store Linkage Table');
     $installer->getConnection()->createTable($table);
     $installer->endSetup();
 }
Example #4
0
 /**
  * {@inheritdoc}
  * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
  */
 public function install(SchemaSetupInterface $setup, ModuleContextInterface $context)
 {
     $installer = $setup;
     $installer->startSetup();
     if (!$installer->tableExists('signifyd_connect_case')) {
         $table = $installer->getConnection()->newTable($installer->getTable('signifyd_connect_case'));
         $table->addColumn('order_increment', Table::TYPE_TEXT, 255, ['nullable' => false, 'primary' => true], 'Order ID')->addColumn('signifyd_status', Table::TYPE_TEXT, 255, ['nullable' => false, 'default' => 'PENDING'], 'Signifyd Status')->addColumn('code', Table::TYPE_TEXT, 255, ['nullable' => false], 'Code')->addColumn('score', Table::TYPE_FLOAT, null, [], 'Score')->addColumn('guarantee', Table::TYPE_TEXT, 64, ['nullable' => false, 'default' => 'N/A'], 'Guarantee Status')->addColumn('entries_text', Table::TYPE_TEXT, null, ['nullable' => false], 'Entries')->addColumn('created', Table::TYPE_TIMESTAMP, null, [], 'Creation Time')->addColumn('updated', Table::TYPE_TIMESTAMP, null, [], 'Update Time')->setComment('Signifyd Cases');
         $installer->getConnection()->createTable($table);
     }
     // Retry table, stores orders that fail to pose as cases
     if (!$installer->tableExists('signifyd_connect_retries')) {
         $table = $installer->getConnection()->newTable($installer->getTable('signifyd_connect_retries'));
         $table->addColumn('order_increment', Table::TYPE_TEXT, 255, ['nullable' => false, 'primary' => true], 'Order ID')->addColumn('created', Table::TYPE_TIMESTAMP, null, [], 'Creation Time')->addColumn('updated', Table::TYPE_TIMESTAMP, null, [], 'Last Attempt')->setComment('Signifyd Retries');
         $installer->getConnection()->createTable($table);
     }
     // The plan here is to add the signifyd case data directly to the order tables
     $tableName = $setup->getTable('sales_order');
     $gridTableName = $setup->getTable('sales_order_grid');
     if ($installer->getConnection()->isTableExists($tableName)) {
         $columns = ['signifyd_score' => ['type' => Table::TYPE_FLOAT, 'default' => null, 'comment' => 'Score'], 'signifyd_guarantee' => ['type' => Table::TYPE_TEXT, 'LENGTH' => 64, 'default' => 'N/A', 'nullable' => false, 'comment' => 'Guarantee Status'], 'signifyd_code' => ['type' => Table::TYPE_TEXT, 'LENGTH' => 255, 'default' => '', 'nullable' => false, 'comment' => 'Code']];
         $connection = $setup->getConnection();
         foreach ($columns as $name => $definition) {
             $connection->dropColumn($tableName, $name);
             $connection->addColumn($tableName, $name, $definition);
             $connection->dropColumn($gridTableName, $name);
             $connection->addColumn($gridTableName, $name, $definition);
         }
     }
 }
 public function uninstall(SchemaSetupInterface $setup, ModuleContextInterface $context)
 {
     $setup->startSetup();
     $connection = $setup->getConnection();
     $connection->dropTable($setup->getTable('algoliasearch_queue'));
     $setup->endSetup();
 }
Example #6
0
 /**
  * {@inheritdoc}
  * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
  */
 public function install(SchemaSetupInterface $setup, ModuleContextInterface $context)
 {
     $installer = $setup;
     $installer->startSetup();
     if (!$installer->tableExists('sample_news_author')) {
         $table = $installer->getConnection()->newTable($installer->getTable('sample_news_author'));
         $table->addColumn('author_id', Table::TYPE_INTEGER, null, ['identity' => true, 'unsigned' => true, 'nullable' => false, 'primary' => true], 'Author ID')->addColumn('name', Table::TYPE_TEXT, 255, ['nullable' => false], 'Author Name')->addColumn('url_key', Table::TYPE_TEXT, 255, ['nullable' => false], 'Author Url Key')->addColumn('biography', Table::TYPE_TEXT, '2M', [], 'Author Biography')->addColumn('dob', Table::TYPE_DATE, null, [], 'Author Birth date')->addColumn('awards', Table::TYPE_TEXT, '2M', [], 'Author Awards')->addColumn('type', Table::TYPE_INTEGER, null, [], 'Author Type')->addColumn('avatar', Table::TYPE_TEXT, 255, [], 'Author Avatar')->addColumn('resume', Table::TYPE_TEXT, 255, [], 'Author Resume')->addColumn('country', Table::TYPE_TEXT, 2, [], 'Author Country')->addColumn('meta_title', Table::TYPE_TEXT, 255, [], 'Author Meta Title')->addColumn('meta_description', Table::TYPE_TEXT, '2M', [], 'Author Meta Description')->addColumn('meta_keywords', Table::TYPE_TEXT, '2M', [], 'Author Meta Keywords')->addColumn('is_active', Table::TYPE_INTEGER, null, ['nullable' => false, 'default' => '1'], 'Is Author Active')->addColumn('in_rss', Table::TYPE_INTEGER, null, ['nullable' => false, 'default' => '1'], 'Show in rss')->addColumn('updated_at', Table::TYPE_TIMESTAMP, null, [], 'Update at')->addColumn('created_at', Table::TYPE_TIMESTAMP, null, [], 'Creation Time')->setComment('News authors');
         $installer->getConnection()->createTable($table);
         $installer->getConnection()->addIndex($installer->getTable('sample_news_author'), $setup->getIdxName($installer->getTable('sample_news_author'), ['name', 'photo'], AdapterInterface::INDEX_TYPE_FULLTEXT), ['name', 'biography', 'url_key', 'resume', 'country', 'meta_title', 'meta_keywords', 'meta_description'], AdapterInterface::INDEX_TYPE_FULLTEXT);
     }
     //Create Authors to Store table
     if (!$installer->tableExists('sample_news_author_store')) {
         $table = $installer->getConnection()->newTable($installer->getTable('sample_news_author_store'));
         $table->addColumn('author_id', Table::TYPE_INTEGER, null, ['unsigned' => true, 'nullable' => false, 'primary' => true], 'Author ID')->addColumn('store_id', Table::TYPE_SMALLINT, null, ['unsigned' => true, 'nullable' => false, 'primary' => true], 'Store ID')->addIndex($installer->getIdxName('sample_news_author_store', ['store_id']), ['store_id'])->addForeignKey($installer->getFkName('sample_news_author_store', 'author_id', 'sample_news_author', 'author_id'), 'author_id', $installer->getTable('sample_news_author'), 'author_id', Table::ACTION_CASCADE)->addForeignKey($installer->getFkName('sample_news_author_store', 'store_id', 'store', 'store_id'), 'store_id', $installer->getTable('store'), 'store_id', Table::ACTION_CASCADE)->setComment('Author To Store Link Table');
         $installer->getConnection()->createTable($table);
     }
     if (!$installer->tableExists('sample_news_author_product')) {
         $table = $installer->getConnection()->newTable($installer->getTable('sample_news_author_product'));
         $table->addColumn('author_id', Table::TYPE_INTEGER, null, ['unsigned' => true, 'nullable' => false, 'primary' => true], 'Author ID')->addColumn('product_id', Table::TYPE_INTEGER, null, ['unsigned' => true, 'nullable' => false, 'primary' => true], 'Product ID')->addColumn('position', Table::TYPE_INTEGER, null, ['nullable' => false, 'default' => '0'], 'Position')->addIndex($installer->getIdxName('sample_news_author_product', ['product_id']), ['product_id'])->addForeignKey($installer->getFkName('sample_news_author_product', 'author_id', 'sample_news_author', 'author_id'), 'author_id', $installer->getTable('sample_news_author'), 'author_id', Table::ACTION_CASCADE)->addForeignKey($installer->getFkName('sample_news_author_product', 'product_id', 'catalog_product_entity', 'entity_id'), 'product_id', $installer->getTable('catalog_product_entity'), 'entity_id', Table::ACTION_CASCADE)->addIndex($installer->getIdxName('sample_news_author_product', ['author_id', 'product_id'], AdapterInterface::INDEX_TYPE_UNIQUE), ['author_id', 'product_id'], ['type' => AdapterInterface::INDEX_TYPE_UNIQUE])->setComment('Author To product Link Table');
         $installer->getConnection()->createTable($table);
     }
     if (!$installer->tableExists('sample_news_author_category')) {
         $table = $installer->getConnection()->newTable($installer->getTable('sample_news_author_category'));
         $table->addColumn('author_id', Table::TYPE_INTEGER, null, ['unsigned' => true, 'nullable' => false, 'primary' => true], 'Author ID')->addColumn('category_id', Table::TYPE_INTEGER, null, ['unsigned' => true, 'nullable' => false, 'primary' => true], 'Category ID')->addColumn('position', Table::TYPE_INTEGER, null, ['nullable' => false, 'default' => '0'], 'Position')->addIndex($installer->getIdxName('sample_news_author_category', ['category_id']), ['category_id'])->addForeignKey($installer->getFkName('sample_news_author_category', 'author_id', 'sample_news_author', 'author_id'), 'author_id', $installer->getTable('sample_news_author'), 'author_id', Table::ACTION_CASCADE)->addForeignKey($installer->getFkName('sample_news_author_category', 'category_id', 'catalog_category_entity', 'entity_id'), 'category_id', $installer->getTable('catalog_category_entity'), 'entity_id', Table::ACTION_CASCADE)->addIndex($installer->getIdxName('sample_news_author_category', ['author_id', 'category_id'], AdapterInterface::INDEX_TYPE_UNIQUE), ['author_id', 'category_id'], ['type' => AdapterInterface::INDEX_TYPE_UNIQUE])->setComment('Author To category Link Table');
         $installer->getConnection()->createTable($table);
     }
 }
 /**
  * {@inheritdoc}
  * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
  * @SuppressWarnings(PHPMD.CyclomaticComplexity)
  * @SuppressWarnings(PHPMD.NPathComplexity)
  */
 public function install(SchemaSetupInterface $setup, ModuleContextInterface $context)
 {
     $installer = $setup;
     /**
      * update columns created_at and updated_at in sales entities tables
      */
     $tables = ['sales_order', 'quote'];
     /** @var \Magento\Framework\DB\Adapter\AdapterInterface $connection */
     $connection = $installer->getConnection();
     foreach ($tables as $table) {
         $columns = $connection->describeTable($installer->getTable($table));
         if (!isset($columns['customer_lastnamekana'])) {
             $setup->getConnection()->addColumn($table, 'customer_lastnamekana', ['type' => Table::TYPE_TEXT, 'length' => 255, 'comment' => 'Customer Lastname Kana']);
         }
         if (!isset($columns['customer_firstnamekana'])) {
             $setup->getConnection()->addColumn($table, 'customer_firstnamekana', ['type' => Table::TYPE_TEXT, 'length' => 255, 'comment' => 'Customer Firstname Kana']);
         }
     }
     $tables = ['sales_order_address', 'quote_address'];
     foreach ($tables as $table) {
         $columns = $connection->describeTable($installer->getTable($table));
         if (!isset($columns['lastnamekana'])) {
             $setup->getConnection()->addColumn($table, 'lastnamekana', ['type' => Table::TYPE_TEXT, 'length' => 255, 'comment' => 'Customer Lastname Kana']);
         }
         if (!isset($columns['firstnamekana'])) {
             $setup->getConnection()->addColumn($table, 'firstnamekana', ['type' => Table::TYPE_TEXT, 'length' => 255, 'comment' => 'Customer Firstname Kana']);
         }
     }
 }
 public function install(SchemaSetupInterface $setup, ModuleContextInterface $context)
 {
     $tableName = 'jcowie_featuretoggle';
     $table = $setup->getConnection()->newTable($tableName);
     $table->addColumn('featuretoggle_id', Table::TYPE_INTEGER, null, ['unsigned' => true, 'identity' => true, 'primary' => true])->addColumn('name', Table::TYPE_TEXT, 255, ['nullable' => false])->addColumn('status', Table::TYPE_TEXT, 255, ['nullable' => false]);
     $setup->getConnection()->createTable($table);
 }
 /**
  * {@inheritdoc}
  */
 public function upgrade(SchemaSetupInterface $setup, ModuleContextInterface $context)
 {
     $setup->startSetup();
     if (version_compare($context->getVersion(), '2.7.0', '<')) {
         $setup->getConnection()->addColumn($setup->getTable('barbanet_samplemodule'), 'description', ['type' => \Magento\Framework\DB\Ddl\Table::TYPE_TEXT, 'length' => 255, 'nullable' => false, 'comment' => 'Row description']);
     }
     $setup->endSetup();
 }
 /**
  * Installs DB schema for BuyerReview module
  *
  * @param SchemaSetupInterface $setup
  * @param ModuleContextInterface $context
  * @return void
  */
 public function install(SchemaSetupInterface $setup, ModuleContextInterface $context)
 {
     $installer = $setup;
     $installer->startSetup();
     /* Add index on product_id field in sales_order_item table */
     $installer->getConnection()->addIndex($installer->getTable('sales_order_item'), $setup->getIdxName($installer->getTable('sales_order_item'), ['product_id']), ['product_id']);
     $installer->endSetup();
 }
 public function upgrade(SchemaSetupInterface $setup, ModuleContextInterface $context)
 {
     $setup->startSetup();
     if (version_compare($context->getVersion(), '1.0.1') < 0) {
         $this->createMailMainTable($setup);
     }
     $setup->endSetup();
 }
Example #12
0
 /**
  * @inheritdoc
  */
 public function install(SchemaSetupInterface $setup, ModuleContextInterface $context)
 {
     $this->_context = $context;
     $setup->startSetup();
     /* perform module specific operations */
     $this->_setup();
     $setup->endSetup();
 }
 public function upgrade(SchemaSetupInterface $setup, ModuleContextInterface $context)
 {
     $setup->startSetup();
     if (version_compare($context->getVersion(), '1.1.2', '<')) {
         $this->createTables($setup);
     }
     $setup->endSetup();
 }
 /**
  * {@inheritdoc}
  */
 public function upgrade(SchemaSetupInterface $setup, ModuleContextInterface $context)
 {
     $connection = $setup->getConnection();
     if (version_compare($context->getVersion(), '2.0.1', '<')) {
         $column = ['type' => Table::TYPE_SMALLINT, 'length' => 6, 'nullable' => false, 'comment' => 'Applied mode', 'default' => '0'];
         $connection->addColumn($setup->getTable('checkout_agreement'), 'mode', $column);
     }
 }
 public function install(SchemaSetupInterface $setup, ModuleContextInterface $context)
 {
     $installer = $setup;
     $setup->startSetup();
     $table = $installer->getConnection()->newTable($installer->getTable('genmato_multistoresearchfields_attribute_search_store'))->addColumn('attribute_id', \Magento\Framework\DB\Ddl\Table::TYPE_SMALLINT, null, ['unsigned' => true, 'nullable' => false], 'Attribute ID')->addColumn('store_id', \Magento\Framework\DB\Ddl\Table::TYPE_SMALLINT, null, ['unsigned' => true, 'nullable' => false, 'default' => '0'], 'Store ID')->addIndex($installer->getIdxName('genmato_multistoresearchfields_attribute_search_store', ['store_id']), ['store_id'])->addForeignKey($installer->getFkName('genmato_multistoresearchfields_attribute_search_store', 'store_id', 'store', 'store_id'), 'store_id', $installer->getTable('store'), 'store_id', \Magento\Framework\DB\Ddl\Table::ACTION_CASCADE, \Magento\Framework\DB\Ddl\Table::ACTION_CASCADE)->addForeignKey($installer->getFkName('genmato_multistoresearchfields_attribute_search_store', 'attribute_id', 'eav_attribute', 'attribute_id'), 'attribute_id', $installer->getTable('eav_attribute'), 'attribute_id', \Magento\Framework\DB\Ddl\Table::ACTION_CASCADE, \Magento\Framework\DB\Ddl\Table::ACTION_CASCADE)->setComment('Attribute Advanced Search Store');
     $installer->getConnection()->createTable($table);
     $installer->endSetup();
 }
 /**
  * {@inheritdoc}
  * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
  */
 public function upgrade(SchemaSetupInterface $setup, ModuleContextInterface $context)
 {
     $installer = $setup;
     $connection = $installer->getConnection();
     if (version_compare($context->getVersion(), '2.0.1') < 0) {
         $connection->dropIndex($setup->getTable('search_query'), $installer->getIdxName('search_query', ['query_text', 'store_id']));
         $connection->addIndex($setup->getTable('search_query'), $installer->getIdxName('search_query', ['query_text', 'store_id'], \Magento\Framework\DB\Adapter\AdapterInterface::INDEX_TYPE_UNIQUE), ['query_text', 'store_id'], \Magento\Framework\DB\Adapter\AdapterInterface::INDEX_TYPE_UNIQUE);
     }
 }
Example #17
0
 /**
  * Append decimal display related columns to attribute table
  *
  * @param \Magento\Framework\Setup\SchemaSetupInterface $setup The setup instance
  */
 private function appendDecimalDisplayConfiguration(SchemaSetupInterface $setup)
 {
     $connection = $setup->getConnection();
     $table = $setup->getTable('catalog_eav_attribute');
     // Append a column 'display_pattern' into the db.
     $connection->addColumn($table, 'display_pattern', ['type' => \Magento\Framework\DB\Ddl\Table::TYPE_TEXT, 'nullable' => true, 'default' => null, 'length' => 10, 'comment' => 'The pattern to display facet values']);
     // Append a column 'display_precision' into the db.
     $connection->addColumn($table, 'display_precision', ['type' => \Magento\Framework\DB\Ddl\Table::TYPE_INTEGER, 'nullable' => true, 'default' => 0, 'comment' => 'Attribute decimal precision for display']);
 }
Example #18
0
 /**
  * Remove Sub Product Discounts
  * @param SchemaSetupInterface $setup
  * @return void
  */
 private function removeSubProductDiscounts(SchemaSetupInterface $setup)
 {
     $connection = $setup->getConnection();
     $data = ['catalogrule' => ['sub_is_enable', 'sub_simple_action', 'sub_discount_amount'], 'catalogrule_product' => ['sub_simple_action', 'sub_discount_amount']];
     foreach ($data as $table => $fields) {
         foreach ($fields as $field) {
             $connection->dropColumn($setup->getTable($table), $field);
         }
     }
 }
 public function install(SchemaSetupInterface $setup, ModuleContextInterface $context)
 {
     $setup->startSetup();
     /**
      * Create table 'tudock_helloworld'
      */
     $table = $setup->getConnection()->newTable($setup->getTable('tudock_helloworld'))->addColumn('id', Table::TYPE_INTEGER, null, ['unsigned' => true, 'nullable' => false, 'default' => '0', 'primary' => true], 'ID of text')->addColumn('product', Table::TYPE_INTEGER, null, ['unsigned' => true, 'nullable' => false, 'default' => '0'], 'Product ID')->addColumn('text', Table::TYPE_TEXT, 255, ['unsigned' => true, 'nullable' => false, 'default' => '0'], 'Text')->setComment('HelloWorld demo table')->addIndex($setup->getIdxName('tudock_helloworld', 'id', \Magento\Framework\DB\Adapter\AdapterInterface::INDEX_TYPE_UNIQUE), 'id', ['type' => \Magento\Framework\DB\Adapter\AdapterInterface::INDEX_TYPE_UNIQUE])->addIndex($setup->getIdxName('tudock_helloworld', 'product'), 'product')->addForeignKey($setup->getFkName('tudock_helloworld', 'product', 'catalog_product_entity', 'entity_id'), 'product', $setup->getTable('catalog_product_entity'), 'entity_id', Table::ACTION_CASCADE);
     $setup->getConnection()->createTable($table);
     $setup->endSetup();
 }
 /**
  * {@inheritdoc}
  */
 public function upgrade(SchemaSetupInterface $setup, ModuleContextInterface $context)
 {
     $setup->startSetup();
     if (version_compare($context->getVersion(), '0.1.1', '<')) {
         $connection = $setup->getConnection();
         $column = ['type' => Table::TYPE_SMALLINT, 'length' => 6, 'nullable' => false, 'comment' => 'Is Visible', 'default' => '1'];
         $connection->addColumn($setup->getTable('genmato_demo'), 'is_visible', $column);
     }
     $setup->endSetup();
 }
 /**
  * {@inheritdoc}
  */
 public function upgrade(SchemaSetupInterface $setup, ModuleContextInterface $context)
 {
     $setup->startSetup();
     $connection = $setup->getConnection();
     if (version_compare($context->getVersion(), '1.1.0', '<')) {
         //remove quote table
         $connection->dropTable($setup->getTable('email_quote'));
     }
     $setup->endSetup();
 }
 public function upgrade(SchemaSetupInterface $setup, ModuleContextInterface $context)
 {
     $setup->startSetup();
     if (version_compare($context->getVersion(), '1.1.2', '<')) {
         // Get module table
         $tableName = $setup->getTable('lr_addresses');
         // Check if the table already exists
         if ($setup->getConnection()->isTableExists($tableName) == true) {
             // Declare data
             $columns = ['country' => ['type' => \Magento\Framework\DB\Ddl\Table::TYPE_TEXT, 'nullable' => false, 'comment' => 'country name']];
             $connection = $setup->getConnection();
             foreach ($columns as $name => $definition) {
                 $connection->addColumn($tableName, $name, $definition);
             }
         }
         // Get module table
         $tableNameExtendedProfile = $setup->getTable('lr_extended_profile_data');
         // Check if the table already exists
         if ($setup->getConnection()->isTableExists($tableNameExtendedProfile) == true) {
             // Declare data
             $columnsAdd = ['no_of_login' => ['type' => \Magento\Framework\DB\Ddl\Table::TYPE_TEXT, 'nullable' => false, 'comment' => 'no of login']];
             $connectionData = $setup->getConnection();
             foreach ($columnsAdd as $name => $definition) {
                 $connectionData->addColumn($tableNameExtendedProfile, $name, $definition);
             }
         }
     }
     $setup->endSetup();
 }
Example #23
0
 /**
  * {@inheritdoc}
  */
 public function upgrade(SchemaSetupInterface $setup, ModuleContextInterface $context)
 {
     $setup->startSetup();
     if (version_compare($context->getVersion(), '1.0.0.1', '<')) {
         $this->updateSchemaVersion1001($setup);
     }
     if (version_compare($context->getVersion(), '1.0.0.2', '<')) {
         $this->updateSchemaVersion1002($setup);
     }
     $setup->endSetup();
 }
 /**
  * {@inheritdoc}
  * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
  */
 public function install(SchemaSetupInterface $setup, ModuleContextInterface $context)
 {
     $installer = $setup;
     $installer->startSetup();
     /**
      * Create table 'samplemodule_table'
      */
     $table = $installer->getConnection()->newTable($installer->getTable('barbanet_samplemodule'))->addColumn('row_id', \Magento\Framework\DB\Ddl\Table::TYPE_SMALLINT, null, ['identity' => true, 'nullable' => false, 'primary' => true], 'Row ID')->addColumn('title', \Magento\Framework\DB\Ddl\Table::TYPE_TEXT, 255, ['nullable' => false], 'Row Title')->addColumn('content', \Magento\Framework\DB\Ddl\Table::TYPE_TEXT, '2M', [], 'Row Content')->addColumn('creation_time', \Magento\Framework\DB\Ddl\Table::TYPE_TIMESTAMP, null, ['nullable' => false, 'default' => \Magento\Framework\DB\Ddl\Table::TIMESTAMP_INIT], 'Row Creation Time')->addColumn('update_time', \Magento\Framework\DB\Ddl\Table::TYPE_TIMESTAMP, null, ['nullable' => false, 'default' => \Magento\Framework\DB\Ddl\Table::TIMESTAMP_INIT_UPDATE], 'Row Modification Time')->addColumn('is_active', \Magento\Framework\DB\Ddl\Table::TYPE_SMALLINT, null, ['nullable' => false, 'default' => '1'], 'Is Row Active')->addIndex($setup->getIdxName($installer->getTable('barbanet_samplemodule'), ['title', 'content'], AdapterInterface::INDEX_TYPE_FULLTEXT), ['title', 'content'], ['type' => AdapterInterface::INDEX_TYPE_FULLTEXT])->setComment('Barbanet SampleModule Table');
     $installer->getConnection()->createTable($table);
     $installer->endSetup();
 }
 public function install(SchemaSetupInterface $setup, ModuleContextInterface $context)
 {
     $installer = $setup;
     $installer->startSetup();
     /**
      * Create table 'genmato_demo'
      */
     $table = $installer->getConnection()->newTable($installer->getTable('genmato_demo'))->addColumn('demo_id', \Magento\Framework\DB\Ddl\Table::TYPE_SMALLINT, null, ['identity' => true, 'nullable' => false, 'primary' => true], 'Demo ID')->addColumn('title', \Magento\Framework\DB\Ddl\Table::TYPE_TEXT, 255, ['nullable' => false], 'Demo Title')->addColumn('creation_time', \Magento\Framework\DB\Ddl\Table::TYPE_TIMESTAMP, null, [], 'Creation Time')->addColumn('update_time', \Magento\Framework\DB\Ddl\Table::TYPE_TIMESTAMP, null, [], 'Modification Time')->addColumn('is_active', \Magento\Framework\DB\Ddl\Table::TYPE_SMALLINT, null, ['nullable' => false, 'default' => '1'], 'Is Active')->addIndex($setup->getIdxName($installer->getTable('genmato_demo'), ['title'], AdapterInterface::INDEX_TYPE_FULLTEXT), ['title'], ['type' => AdapterInterface::INDEX_TYPE_FULLTEXT])->setComment('Demo Table');
     $installer->getConnection()->createTable($table);
     $installer->endSetup();
 }
Example #26
0
 public function upgrade(SchemaSetupInterface $setup, ModuleContextInterface $context)
 {
     $installer = $setup;
     $setup->startSetup();
     $tableName = $setup->getTable('rapidmage_rules');
     if ($installer->getConnection()->isTableExists($tableName) != true) {
         $table = $installer->getConnection()->newTable($tableName)->addColumn('id', Table::TYPE_INTEGER, null, ['identity' => true, 'unsigned' => true, 'nullable' => false, 'primary' => true], 'ID')->addColumn('who', Table::TYPE_TEXT, '2M', ['nullable' => false, 'default' => ''], 'Who')->addColumn('request', Table::TYPE_TEXT, null, ['nullable' => false, 'default' => ''], 'Request')->addColumn('what', Table::TYPE_TEXT, null, [['nullable' => false, 'default' => 0]], 'What')->addColumn('why', Table::TYPE_TEXT, null, ['nullable' => false], 'Why')->addColumn('level', Table::TYPE_TEXT, null, ['nullable' => false], 'Level')->addColumn('enabled', Table::TYPE_INTEGER, null, ['nullable' => false], 'Enabled')->addColumn('edited_at', Table::TYPE_DATETIME, null, ['nullable' => false], 'Edited At')->addColumn('updated_at', Table::TYPE_DATETIME, null, ['nullable' => false], 'Updated At')->setComment('Firewall Rules list')->setOption('type', 'InnoDB')->setOption('charset', 'utf8');
         $installer->getConnection()->createTable($table);
     }
     $setup->endSetup();
 }
Example #27
0
 /**
  * Called when run the command: php bin/magento module:uninstall UOL_PagSeguro
  * to uninstall UOL_PagSeguro data from the DB
  * @param Magento\Framework\Setup\SchemaSetupInterface $setup
  * @param Magento\Framework\Setup\ModuleContextInterface $context
  */
 public function uninstall(SchemaSetupInterface $setup, ModuleContextInterface $context)
 {
     $statuses = ['pagseguro_iniciado', 'pagseguro_aguardando_pagamento', 'pagseguro_cancelada', 'pagseguro_chargeback_debitado', 'pagseguro_devolvida', 'pagseguro_disponivel', 'pagseguro_em_analise', 'pagseguro_em_contestacao', 'pagseguro_em_disputa', 'pagseguro_paga'];
     $paths = ['pagseguro/store/reference', 'payment/pagseguro/active', 'payment/pagseguro/title', 'payment/pagseguro/email', 'payment/pagseguro/token', 'payment/pagseguro/redirect', 'payment/pagseguro/notification', 'payment/pagseguro/charset', 'payment/pagseguro/log', 'payment/pagseguro/log_file', 'payment/pagseguro/checkout', 'payment/pagseguro/environment', 'payment/pagseguro/abandoned_active'];
     $setup->startSetup();
     $this->dropPagSeguroOrdersTable($setup);
     $this->dropColumnsFromSalesOrderGrid($setup);
     $this->removeDataFromSalesOrderStatus($setup, $statuses);
     $this->removeDataFromSalesOrderStatusState($setup, $statuses);
     $this->removeDataFromCoreConfigData($setup, $paths);
     $setup->endSetup();
 }
Example #28
0
 /**
  * {@inheritdoc}
  * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
  * @SuppressWarnings(PHPMD.CyclomaticComplexity)
  * @SuppressWarnings(PHPMD.NPathComplexity)
  */
 public function upgrade(SchemaSetupInterface $setup, ModuleContextInterface $context)
 {
     $installer = $setup;
     $connection = $installer->getConnection();
     if (version_compare($context->getVersion(), '2.0.1') < 0) {
         /**
          * Modifying length of 'interface_locale' column of admin_user table.
          */
         $table = $setup->getTable('admin_user');
         $connection->modifyColumn($table, 'interface_locale', ['type' => Table::TYPE_TEXT, 'length' => 16, 'nullable' => false, 'default' => 'en_US', 'comment' => 'Backend interface locale']);
     }
 }
Example #29
0
 /**
  * {@inheritdoc}
  */
 public function upgrade(SchemaSetupInterface $setup, ModuleContextInterface $context)
 {
     $setup->startSetup();
     $connection = $setup->getConnection();
     if (version_compare($context->getVersion(), '2.0.1', '<')) {
         $fields = [['table' => 'catalog_product_index_price_bundle_opt_idx', 'column' => 'alt_group_price'], ['table' => 'catalog_product_index_price_bundle_opt_tmp', 'column' => 'alt_group_price'], ['table' => 'catalog_product_index_price_bundle_idx', 'column' => 'base_group_price'], ['table' => 'catalog_product_index_price_bundle_tmp', 'column' => 'base_group_price'], ['table' => 'catalog_product_index_price_bundle_idx', 'column' => 'group_price'], ['table' => 'catalog_product_index_price_bundle_opt_idx', 'column' => 'group_price'], ['table' => 'catalog_product_index_price_bundle_opt_tmp', 'column' => 'group_price'], ['table' => 'catalog_product_index_price_bundle_sel_idx', 'column' => 'group_price'], ['table' => 'catalog_product_index_price_bundle_sel_tmp', 'column' => 'group_price'], ['table' => 'catalog_product_index_price_bundle_tmp', 'column' => 'group_price'], ['table' => 'catalog_product_index_price_bundle_idx', 'column' => 'group_price_percent'], ['table' => 'catalog_product_index_price_bundle_tmp', 'column' => 'group_price_percent']];
         foreach ($fields as $filedInfo) {
             $connection->dropColumn($setup->getTable($filedInfo['table']), $filedInfo['column']);
         }
     }
     $setup->endSetup();
 }
 /**
  * {@inheritdoc}
  */
 public function upgrade(SchemaSetupInterface $setup, ModuleContextInterface $context)
 {
     $setup->startSetup();
     $connection = $setup->getConnection();
     if (version_compare($context->getVersion(), '1.1.0', '<')) {
         //remove quote table
         $connection->dropTable($setup->getTable('email_quote'));
     }
     if (version_compare($context->getVersion(), '2.0.6', '<')) {
         //modify email_campaign table
         $campaignTable = $setup->getTable('email_campaign');
         //add columns
         $connection->addColumn($campaignTable, 'send_id', ['type' => \Magento\Framework\DB\Ddl\Table::TYPE_TEXT, 'nullable' => false, 'default' => '', 'comment' => 'Campaign Send Id']);
         $connection->addColumn($campaignTable, 'send_status', ['type' => \Magento\Framework\DB\Ddl\Table::TYPE_SMALLINT, 'nullable' => false, 'default' => 0, 'comment' => 'Send Status']);
         if ($connection->tableColumnExists($campaignTable, 'is_sent')) {
             //update table with historical send values
             $select = $connection->select();
             //join
             $select->joinLeft(['oc' => $campaignTable], "oc.id = nc.id", ['send_status' => new \Zend_Db_Expr(\Dotdigitalgroup\Email\Model\Campaign::SENT)])->where('oc.is_sent =?', 1);
             //update query from select
             $updateSql = $select->crossUpdateFromSelect(['nc' => $campaignTable]);
             //run query
             $connection->query($updateSql);
             //remove column
             $connection->dropColumn($campaignTable, 'is_sent');
         }
         //add index
         $connection->addIndex($campaignTable, $setup->getIdxName($campaignTable, ['send_status']), ['send_status']);
     }
     if (version_compare($context->getVersion(), '2.1.0', '<')) {
         $couponTable = $setup->getTable('salesrule_coupon');
         $connection->addColumn($couponTable, 'generated_by_dotmailer', ['type' => \Magento\Framework\DB\Ddl\Table::TYPE_SMALLINT, 'nullable' => true, 'default' => null, 'comment' => '1 = Generated by dotmailer']);
     }
     $setup->endSetup();
 }