* @copyright (c), Thread */ class ArticleController extends BackendController { public $model = Article::class; public $modelLang = ArticleLang::class; public $filterModel = filterArticleModel::class; public $title = 'Article'; public $name = 'article'; /** * @return array */ public function actions() { return ArrayHelper::merge( parent::actions(), [ 'create' => [ 'afterSaveCallback' => function ($m) { return true; } ], 'update' => [ 'afterSaveCallback' => function ($m) { return true; } ], 'fileupload' => [ 'class' => UploadAction::class, 'unique' => true, 'fileNameSave' => function ($m) { $model_id = Yii::$app->getRequest()->get('model_id'); $model = Article::getById($model_id); $m->model = $model; return ($m->model === null) ? '' : $m->model->alias . '_' . uniqid(); } ], 'attribute-save' => [ 'class' => EditableAttributeSaveLang::class, 'modelClass' => $this->modelLang, 'attribute' => 'title', ], 'attribute-save-group' => [ 'class' => EditableAttributeSave::class, 'modelClass' => $this->model, 'attribute' => 'group_id', 'returnValue' => function ($model) { return $model['group']['lang']['title'] ?? '---'; } ] ] ); } }