Ejemplo n.º 1
0
 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()));
 }
Ejemplo n.º 2
0
 /**
  * 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);
     }
 }