public function run() { $this->skin = Yii::app()->user->isGuest ? 'user_auth' : 'user_info'; if (Yii::app()->user->isGuest) { Yii::import('mod.users.forms.UserLoginForm'); $model = new UserLoginForm(); if (isset($_POST['UserLoginForm'])) { $model->attributes = $_POST['UserLoginForm']; if ($model->validate()) { CIntegrationForums::instance()->check_user($model->login, $model->password); $duration = $model->rememberMe ? Yii::app()->settings->get('core', 'cookie_time') : 0; $model->authenticate(); if (Yii::app()->user->login($model->getIdentity(), $duration)) { Yii::app()->controller->refresh(); } else { Yii::app()->user->setFlash('login-error', 'Login error'); } } else { Yii::app()->user->setFlash('login-error', 'No validate'); } } } else { $model = false; } $this->render($this->skin, array('model' => $model, 'online' => Session::online())); }
/** * Display profile start page */ public function actionIndex() { if (!Yii::app()->user->isGuest) { $this->pageName = Yii::t('UsersModule.default', 'PROFILE'); $this->pageTitle = $this->pageName; $this->breadcrumbs = array($this->pageName); Yii::import('mod.users.forms.ChangePasswordForm'); $request = Yii::app()->request; $user = Yii::app()->user->getModel(); // if(!isset($user->service)){ $oldAvatar = $user->avatar; $changePasswordForm = new ChangePasswordForm(); $changePasswordForm->user = $user; if (isset($_POST['User'])) { $user->attributes = $_POST['User']; //$user->email = isset($_POST['User']['email']) ? $_POST['User']['email'] : null; if ($user->validate()) { /* $file = CUploadedFile::getInstance($user, 'avatar'); if (isset($file) && !empty($file)) { var_dump($file); $path = Yii::getPathOfAlias('webroot.uploads.users.avatar'); if (isset($oldAvatar) && file_exists($path . DS . $oldAvatar)) { unlink($path . DS . $oldAvatar); } $newFile = time() . "." . $file->getExtensionName(); Yii::app()->img ->load($file->tempName) ->thumb(100, 100) ->save($path . DS . $newFile, false, 100); $user->avatar = $newFile; }else{ $user->avatar = $oldAvatar; } */ $user->uploadFile('avatar', 'webroot.uploads.users.avatar', $oldAvatar); $user->save(); // $this->refresh(); } } if ($request->getPost('ChangePasswordForm')) { $changePasswordForm->attributes = $request->getPost('ChangePasswordForm'); if ($changePasswordForm->validate()) { $user->password = User::encodePassword($changePasswordForm->new_password); if ($user->save(false, false, false)) { $forum = new CIntegrationForums(); $forum->changepassword($user->login, $changePasswordForm->new_password, $user->email); } $this->addFlashMessage(Yii::t('UsersModule.default', 'Пароль успешно изменен.')); $this->redirect('post/read', array('#' => 'chagepass')); } } $uConfig = Yii::app()->settings->get('users'); $tabsArray = array(Yii::t('UsersModule.default', 'PROFILE') => array('content' => $this->renderPartial('_profile', array('user' => $user), true), 'id' => 'profile', 'visible' => true), Yii::t('UsersModule.default', 'CHANGE_PASSWORD') => array('content' => $this->renderPartial('_changepass', array('changePasswordForm' => $changePasswordForm), true), 'id' => 'changepass', 'visible' => true), Yii::t('UsersModule.default', 'FAVORITES') => array('ajax' => $this->createAbsoluteUrl('favorites/index'), 'id' => 'favorites', 'visible' => $uConfig['favorites'] && false)); $tabs = array(); foreach ($tabsArray as $k => $tab) { if ($tabsArray[$k]['visible']) { $tabs[$k] = $tabsArray[$k]; } } $this->render('index', array('user' => $user, 'tabs' => $tabs, 'changePasswordForm' => $changePasswordForm)); } else { $this->redirect(Yii::app()->user->returnUrl); } }