public function actionLeafEdit($id = null) { $model = null; if (null !== $id) { $model = OrderStageLeaf::findOne(['id' => $id]); } if (Yii::$app->request->isPost) { if (empty($model)) { $model = new OrderStageLeaf(); $model->loadDefaultValues(); } if ($model->load(Yii::$app->request->post())) { if ($model->validate() && $model->save()) { return $this->redirect(Url::to(['', 'id' => $model->id])); } else { Yii::$app->session->setFlash('error', 'Error saving data.'); } } else { Yii::$app->session->setFlash('error', 'Error loading data.'); } } if (empty($model)) { $model = new OrderStageLeaf(); $model->loadDefaultValues(); } $stages = array_reduce(OrderStage::find()->all(), function ($result, $item) { $result[$item->id] = $item->name; return $result; }, []); $events = array_reduce(Events::find()->all(), function ($result, $item) { /** @var Events $item */ $result[$item->event_name] = $item->event_name; return $result; }, ['' => '']); return $this->render('leaf-edit', ['model' => $model, 'stages' => $stages, 'events' => $events]); }
public function up() { $event = \app\modules\core\models\Events::find()->where(['event_name' => 'order_calculate', 'event_class_name' => 'app\\modules\\shop\\events\\OrderCalculateEvent'])->one(); $this->insert('{{%event_handlers}}', ['event_id' => $event->id, 'sort_order' => -5, 'handler_class_name' => 'app\\modules\\shop\\helpers\\PriceHandlers', 'handler_function_name' => 'handleSaveDelivery', 'is_active' => 1, 'non_deletable' => 0, 'triggering_type' => 'application_trigger']); }