public function actionPermissions($id) { //$model= DatabasesPerm::findOne($id); $model = new DatabasesPerm(); $model->scenario = 'search'; //$model->unsetAttributes(); // clear any default values $model->database_id = $id; $user = new DatabasesPerm(); $user->database_id = $id; if ($user->load(Yii::$app->request->post())) { $user->save(); //if($model->save()) // $this->redirect(array('index')); } return $this->render('permissions', array('model' => $model, 'user' => $user)); }
public function save($runValidation = true, $attributes = NULL) { $a = parent::save($runValidation, $attributes); if ($this->prefix == '') { $this->string = Yii::$app->dbMain->dsn; //$chars = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789"; $this->prefix = "CA" . $this->id . "_"; //got prefix $a = parent::save($runValidation, $attributes); } //if tables config notexsits Yii::$app->db->close(); Yii::$app->db->dsn = $this->string; Yii::$app->db->tablePrefix = $this->prefix; Yii::$app->db->open(); //needs to clear accounts if (Yii::$app->db->schema->getTableSchema('{{config}}') === null) { // //create tables $this->createDb(); Yii::$app->db->close(); Yii::$app->db->dsn = $this->string; Yii::$app->db->tablePrefix = $this->prefix; Yii::$app->db->open(); \app\helpers\Linet3Helper::setSetting('company.path', $this->prefix); //update path by prefix //$yiiBasepath = Yii::$app->basePath; //add permisstions } else { //else //table version //upgrade } $perm = new DatabasesPerm(); $perm->user_id = Yii::$app->user->id; $perm->database_id = $this->id; $perm->level_id = 1; $perm->save(); return $a; }