/** * Shows user's profile. * * @param int $id * * @return \yii\web\Response * @throws \yii\web\NotFoundHttpException */ public function actionShow($id) { $profile = Profile::find()->byId($id)->one(); if ($profile === null) { throw new NotFoundHttpException(); } return $this->render('show', ['profile' => $profile]); }
/** * Shows profile settings form. * * @return string|\yii\web\Response */ public function actionProfile() { $model = Profile::find()->byId(Yii::$app->user->identity->getId())->one(); if ($model == null) { $model = Yii::createObject(Profile::className()); $model->link('user', Yii::$app->user->identity); } $event = $this->getProfileEvent($model); $this->performAjaxValidation($model); $this->trigger(self::EVENT_BEFORE_PROFILE_UPDATE, $event); if ($model->load(Yii::$app->request->post()) && $model->save()) { Yii::$app->getSession()->setFlash('success', Yii::t('users', 'Your profile has been updated')); $this->trigger(self::EVENT_AFTER_PROFILE_UPDATE, $event); return $this->refresh(); } return $this->render('profile', ['model' => $model]); }