/** * Delete an existing User model. If deletion is successful, the browser * will be redirected to the 'index' page. * @param string $id * @return mixed */ public function actionDelete($id) { // delete profile and userTokens first to handle foreign key constraint $user = $this->findModel($id); $profile = $user->profile; UserToken::deleteAll(['user_id' => $user->id]); UserAuth::deleteAll(['user_id' => $user->id]); $profile->delete(); $user->delete(); return $this->redirect(['index']); }
/** * Delete an existing User model. If deletion is successful, the browser * will be redirected to the 'index' page. * @param string $id * @return mixed */ public function actionDelete($id) { if ((Yii::$app->user->can("delete-user") || Yii::$app->user->can("user")) && $id != 1) { //Guarda a mensagem $mensagem = ""; $transaction = \Yii::$app->db->beginTransaction(); try { // delete profile and userTokens first to handle foreign key constraint $user = $this->findModel($id); $profile = $user->profile; UserToken::deleteAll(['user_id' => $user->id]); UserAuth::deleteAll(['user_id' => $user->id]); $profile->delete(); if ($user->delete()) { $transaction->commit(); } } catch (\Exception $exception) { $transaction->rollBack(); $mensagem = "Ocorreu uma falha inesperada ao tentar salvar "; } /** @var \amnah\yii2\user\models\search\UserSearch $searchModel */ $searchModel = $this->module->model("UserSearch"); $dataProvider = $searchModel->search(Yii::$app->request->getQueryParams()); return $this->render('index', compact('searchModel', 'dataProvider')); } else { throw new ForbiddenHttpException("Acesso negado!"); } }