public function up() { $menu = \app\backend\models\BackendMenu::findOne(['name' => 'Shop']); if (!is_null($menu)) { $this->insert(\app\backend\models\BackendMenu::tableName(), ['parent_id' => $menu->id, 'name' => 'Discounts', 'route' => '/shop/backend-discount/index', 'icon' => 'shekel', 'sort_order' => '10', 'added_by_ext' => 'core', 'rbac_check' => 'shop manage', 'css_class' => '', 'translation_category' => 'app']); } }
public function down() { $errorMonitor = BackendMenu::findOne(['name' => 'Error monitoring']); $this->batchInsert(BackendMenu::tableName(), ['parent_id', 'name', 'route', 'icon', 'added_by_ext', 'rbac_check'], [[$errorMonitor->id, 'Monitor', 'backend/error-monitor/index', 'flash', 'core', 'setting manage'], [$errorMonitor->id, 'Config', 'backend/error-monitor/config', 'gear', 'core', 'setting manage']]); $errorMonitor->route = ''; $errorMonitor->save(); }
public function up() { $shop = \app\backend\models\BackendMenu::findOne(['name' => 'Shop']); if (!is_null($shop)) { $item = new \app\backend\models\BackendMenu(); $item->attributes = ['parent_id' => $shop->id, 'name' => 'Categories groups', 'route' => 'backend/category-group/index', 'icon' => 'tag', 'sort_order' => 0, 'added_by_ext' => 'core', 'rbac_check' => 'category manage', 'css_class' => '', 'translation_category' => 'shop']; $item->save(); } }
public function down() { $parent = BackendMenu::findOne(['parent_id' => 1, 'name' => 'Reviews']); foreach ($parent->children as $child) { /** @var $child BackendMenu */ $child->delete(); } $parent->route = 'backend/review/index'; $parent->save(true, ['route']); }
public function actionIndex($parent_id = 1) { $searchModel = new BackendMenu(); $searchModel->parent_id = $parent_id; $params = Yii::$app->request->get(); $dataProvider = $searchModel->search($params); $model = null; if ($parent_id > 0) { $model = BackendMenu::findOne($parent_id); } return $this->render('index', ['dataProvider' => $dataProvider, 'searchModel' => $searchModel, 'model' => $model]); }
public function up() { $tableOptions = $this->db->driverName === 'mysql' ? 'CHARACTER SET utf8 COLLATE utf8_unicode_ci ENGINE=InnoDB' : null; $tblMenu = \app\backend\models\BackendMenu::tableName(); $ordersMenuItem = \app\backend\models\BackendMenu::findOne(['name' => 'Orders', 'route' => 'shop/backend-order/index']); /** @var \app\backend\models\BackendMenu $ordersMenuItem */ if (null === $ordersMenuItem) { echo 'Where is the Orders menu item?'; return false; } $this->batchInsert($tblMenu, ['parent_id', 'name', 'route', 'icon', 'sort_order', 'added_by_ext', 'rbac_check', 'css_class', 'translation_category'], [[$ordersMenuItem->id, 'Orders', '/shop/backend-order/index', 'list-alt', 0, 'shop', 'order manage', '', 'app'], [$ordersMenuItem->id, 'Customers', '/shop/backend-customer/index', 'user', 1, 'shop', 'order manage', '', 'app'], [$ordersMenuItem->id, 'Contragents', '/shop/backend-contragent/index', 'user', 2, 'shop', 'order manage', '', 'app']]); }
public function up() { $tableOptions = 'CHARACTER SET utf8 COLLATE utf8_general_ci ENGINE=InnoDB'; $this->createTable(Measure::tableName(), ['id' => 'INT UNSIGNED NOT NULL PRIMARY KEY AUTO_INCREMENT', 'name' => 'VARCHAR(255) NOT NULL', 'symbol' => 'VARCHAR(255) NOT NULL', 'nominal' => 'FLOAT NOT NULL'], $tableOptions); $this->insert(Measure::tableName(), ['name' => Yii::t('app', 'Pieces'), 'symbol' => Yii::t('app', 'pcs'), 'nominal' => 1]); $this->addColumn(Product::tableName(), 'measure_id', 'INT UNSIGNED NOT NULL'); $this->update(Product::tableName(), ['measure_id' => $this->db->lastInsertID]); /** @var BackendMenu $menu */ $menu = BackendMenu::findOne(['name' => 'Shop']); if (!is_null($menu)) { $this->insert(BackendMenu::tableName(), ['parent_id' => $menu->id, 'name' => 'Measures', 'route' => '/shop/backend-measure/index', 'icon' => 'calculator', 'sort_order' => '9', 'added_by_ext' => 'core', 'rbac_check' => 'shop manage', 'css_class' => '', 'translation_category' => 'app']); } }
public function up() { $tblMenu = '{{%backend_menu}}'; $settingsMenuItem = \app\backend\models\BackendMenu::findOne(['name' => 'Settings']); /** @var \app\backend\models\BackendMenu $settingsMenuItem */ if (null === $settingsMenuItem) { echo 'Where is the Settings menu item?'; return false; } $this->batchInsert($tblMenu, ['parent_id', 'name', 'route', 'icon', 'sort_order', 'added_by_ext', 'rbac_check', 'css_class', 'translation_category'], [[$settingsMenuItem->id, 'Extensions', 'core/backend-extensions/index', 'puzzle-piece', 0, 'core', 'setting manage', '', 'app']]); \yii\caching\TagDependency::invalidate(Yii::$app->cache, [\devgroup\TagDependencyHelper\ActiveRecordHelper::getCommonTag(\app\backend\models\BackendMenu::className())]); return true; }
public function up() { $tableOptions = $this->db->driverName === 'mysql' ? 'CHARACTER SET utf8 COLLATE utf8_unicode_ci ENGINE=MyISAM' : null; $this->insert('{{%object}}', ['name' => 'Addon', 'object_class' => Addon::className(), 'object_table_name' => Yii::$app->db->schema->getRawTableName(Addon::tableName()), 'column_properties_table_name' => Yii::$app->db->schema->getRawTableName('{{%addon_property}}'), 'eav_table_name' => Yii::$app->db->schema->getRawTableName('{{%addon_eav}}'), 'categories_table_name' => Yii::$app->db->schema->getRawTableName('{{%addon_category}}'), 'link_slug_category' => Yii::$app->db->schema->getRawTableName('{{%addon_category_full_slug}}'), 'link_slug_static_value' => Yii::$app->db->schema->getRawTableName('{{%addon_static_value_category}}'), 'object_slug_attribute' => 'slug']); $this->createTable('{{%addon}}', ['id' => $this->primaryKey(), 'name' => $this->text()->notNull(), 'price' => $this->float()->notNull()->defaultValue(0), 'currency_id' => $this->integer()->notNull()->defaultValue(0), 'price_is_multiplier' => $this->boolean()->notNull()->defaultValue(0), 'is_product_id' => $this->integer()->notNull()->defaultValue(0), 'add_to_order' => $this->boolean()->notNull()->defaultValue(0), 'addon_category_id' => $this->integer()->notNull(), 'can_change_quantity' => $this->boolean()->notNull()->defaultValue(0), 'measure_id' => $this->integer()->notNull()->defaultValue(1)], $tableOptions); $this->createIndex('by_category', '{{%addon}}', ['addon_category_id']); if ($this->db->driverName === 'mysql') { // add fulltext index in mysql for name column :-) $this->execute("ALTER TABLE {{%addon}} ADD FULLTEXT(`name`)"); } $this->createTable('{{%addon_category}}', ['id' => $this->primaryKey(), 'name' => $this->text()->notNull()]); // real bindings of addons to objects $this->createTable('{{%addon_bindings}}', ['id' => $this->primaryKey(), 'addon_id' => $this->integer()->notNull(), 'appliance_object_id' => $this->integer()->notNull(), 'object_model_id' => $this->integer()->notNull(), 'sort_order' => $this->integer()->notNull()->defaultValue(0)], $tableOptions); $this->createIndex('addons4object', '{{%addon_bindings}}', ['appliance_object_id', 'object_model_id']); $this->addColumn('{{%order_item}}', 'addon_id', $this->integer()->notNull()->defaultValue(0)); $tblMenu = '{{%backend_menu}}'; /** @var BackendMenu $shopMenuItem */ $shopMenuItem = BackendMenu::findOne(['name' => 'Shop']); $this->batchInsert($tblMenu, ['parent_id', 'name', 'route', 'icon', 'sort_order', 'added_by_ext', 'rbac_check', 'css_class', 'translation_category'], [[$shopMenuItem->id, 'Addons', 'shop/backend-addons/index', 'cart-plus', 0, 'core', 'product manage', '', 'app']]); \yii\caching\TagDependency::invalidate(Yii::$app->cache, [\devgroup\TagDependencyHelper\ActiveRecordHelper::getCommonTag(\app\backend\models\BackendMenu::className())]); }
public function up() { $shopMenuItem = BackendMenu::findOne(['name' => 'Settings']); $this->insert(BackendMenu::tableName(), ['parent_id' => $shopMenuItem->id, 'name' => 'Google Merchants', 'route' => '/shop/backend-google-feed/settings', 'icon' => 'google', 'sort_order' => '0', 'added_by_ext' => 'core', 'rbac_check' => 'content manage', 'css_class' => Null, 'translation_category' => 'app']); }
public function down() { $data = BackendMenu::findOne(['name' => 'Data']); $data->route = '/data/file/index'; $data->save(); }
public function up() { $shopMenuItem = BackendMenu::findOne(['name' => 'Settings']); $this->insert(BackendMenu::tableName(), ['parent_id' => $shopMenuItem->id, 'name' => 'Wysiwyg editors', 'route' => '/core/backend-wysiwyg/index', 'icon' => 'pencil-square-o', 'sort_order' => '0', 'added_by_ext' => 'core', 'rbac_check' => 'content manage', 'css_class' => Null, 'translation_category' => 'app']); }