public function actionIndex($mid = '', $f = 0)
 {
     $user = User::findIdentity(Yii::$app->user->id);
     $regFrm = new RegisterForm();
     $rstFrm = new RestorePswForm();
     $spOffs = new SpecialOffer();
     $spOffs = $spOffs->getAllSpecialOffers();
     if ($f) {
         $logFrm = new LoginForm(['scenario' => LoginForm::SCENARIO_LOGIN_CAPTCHA]);
     } else {
         $logFrm = new LoginForm(['scenario' => LoginForm::SCENARIO_LOGIN]);
     }
     $city = City::find()->all();
     $address = new Address();
     $distr = $address->getDistrict();
     $category = Category::find()->all();
     $brand = Brand::find()->all();
     $msg = '';
     switch ($mid) {
         case 1:
             $msg = Common::M_EMAIL_SEND;
             break;
         case 2:
             $msg = Common::M_PSW_EMAIL_SEND;
             break;
         case 3:
             $msg = Common::M_PSW_RESTORE_SUCCESS;
             break;
     }
     return $this->render('index', ['msg' => $msg, 'user' => $user, 'spOffs' => $spOffs, 'regFrm' => $regFrm, 'logFrm' => $logFrm, 'rstFrm' => $rstFrm, 'city' => $city, 'distr' => $distr, 'category' => $category, 'brand' => $brand]);
 }
 public function loadEmail()
 {
     $user = User::findIdentity(Yii::$app->user->id);
     if ($user) {
         $this->email = $user->email;
     }
 }
Example #3
0
 /**
  * @return int
  */
 public static function getDateFilterWithPayday()
 {
     $user_id = Yii::$app->user->getId();
     $user = User::findIdentity($user_id);
     $payday = $user->payday;
     if ($payday) {
         $currentDay = (int) date("d", time());
         $currentMonth = (int) date("m", time());
         $currentYear = (int) date("Y", time());
         if ($payday <= $currentDay) {
             $date = [$currentYear, $currentMonth, $payday];
         } else {
             // адо искать с прошлого месяца
             if ($currentMonth == 1) {
                 $prevMonth = 12;
                 $date = [$currentYear, $prevMonth, $payday];
             } else {
                 $date = [$currentYear, $currentMonth - 1, $payday];
             }
         }
         while (checkdate($date[1], $date[2], $date[0]) == false) {
             if ($date[2] == 1) {
                 return null;
             }
             //WTF
             $date[2]--;
         }
         return $date;
     } else {
         return null;
     }
 }
Example #4
0
 public function getUser()
 {
     if ($this->_user === false) {
         $this->_user = User::findIdentity($this->id);
     }
     return $this->_user;
 }
Example #5
0
 public function actionIndex()
 {
     $user_id = Yii::$app->user->getId();
     $user = User::findIdentity($user_id);
     $active_purse = Purse::find()->where(['user_id' => $user_id, 'active' => 1])->one();
     $purses = Purse::find()->where(['user_id' => $user_id])->all();
     if ($user->payday) {
         // если есть дата зп
         $datePayDay = DateComponent::getDateFilterWithPayday();
     } else {
         $datePayDay = [date('Y'), date("m"), 1];
         // иначе ставим 1 число текущего месяца
     }
     $operations = Expense::find()->orderBy('datetime desc')->limit(6)->all();
     $types = TypeExpense::find()->where(['user_id' => $user_id])->select(['type_expense.*', TypeExpense::SELECT_SUM])->innerJoinWith(['expenses' => function ($query) use($datePayDay) {
         $query->where('date(datetime)>=:date_before', [':date_before' => implode('-', $datePayDay)]);
     }])->where(['purse_id' => $active_purse->id])->groupBy('type_expense.id')->all();
     $arrTypes = [];
     $sum = 0;
     foreach ($types as $type) {
         $sum += $type->sum;
         array_push($arrTypes, ['value' => $type->sum, 'color' => ColorComponent::random_color(), 'label' => $type->name]);
     }
     //        var_dump($types->prepare(Yii::$app->db->queryBuilder)->createCommand()->rawSql);die;
     return $this->render('index', ['arrTypes' => $arrTypes, 'date' => $datePayDay[2] . "." . $datePayDay[1] . "." . $datePayDay[0], 'active_purse' => $active_purse, 'purses' => $purses, 'sum' => $sum, 'operations' => $operations]);
 }
Example #6
0
File: User.php Project: nesteant/i
 /**
  * Загружаем пользователя
  * @return UserModel
  */
 public function loadUser()
 {
     if ($this->_model == null) {
         $this->_model = UserModel::findIdentity($this->id);
     }
     return $this->_model;
 }
Example #7
0
 /**
  * @inheritdoc
  */
 public function beforeValidate()
 {
     if (parent::beforeValidate()) {
         if ($this->scenario == 'user-update') {
             // Верификация должностей и пользователей
             foreach ($this->position as $key => $positionId) {
                 if (!isset($this->user[$key])) {
                     continue;
                 }
                 if (!($position = Position::findOne($positionId))) {
                     continue;
                 }
                 if (is_numeric($this->user[$key])) {
                     $user = User::findIdentity($this->user[$key]);
                 } else {
                     $user = User::findByUsername(trim($this->user[$key]));
                 }
                 if (!$user) {
                     continue;
                 }
                 $this->_verifyPositions[] = ['positionId' => $position->id, 'userId' => $user->id];
             }
             if (empty($this->_verifyPositions)) {
                 $this->addError('position', 'Вы должны указать минимум одну должность');
             }
         }
         return true;
     }
     return false;
 }
 /**
  * Просмотр
  *
  * @param $id
  * @return string
  * @throws NotFoundHttpException
  */
 public function actionView($id)
 {
     $model = User::findIdentity($id);
     if (!$model) {
         throw new NotFoundHttpException();
     }
     return $this->render('view', ['model' => $model]);
 }
Example #9
0
 public function __construct($config = [])
 {
     if (Yii::$app->user->isGuest) {
         throw new Exception('Method not allowed to guest users.');
     }
     $this->_user = User::findIdentity(Yii::$app->user->id);
     parent::__construct($config);
 }
 public function actionUser()
 {
     if (Yii::$app->user->isGuest) {
         $this->goHome();
     }
     $user = User::findIdentity(Yii::$app->getUser()->getId());
     return $this->render('user', ['username' => $user->getUsername()]);
 }
 public function actionIndex()
 {
     $user = User::findIdentity(Yii::$app->user->id);
     $regFrm = new RegisterForm();
     $logFrm = new LoginForm();
     $rstFrm = new RestorePswForm();
     return $this->render('about', ['user' => $user, 'regFrm' => $regFrm, 'logFrm' => $logFrm, 'rstFrm' => $rstFrm]);
 }
 public function actionMe()
 {
     $user = User::findIdentity(Yii::$app->user->id);
     if (!$user) {
         return ['success' => 0, 'payload' => 'Some error occurred'];
     }
     return ['success' => 1, 'payload' => $user];
 }
Example #13
0
 public function actionIndex()
 {
     $user = new User();
     if (!\Yii::$app->user->isGuest) {
         $id = Yii::$app->user->id;
         $user = User::findIdentity($id);
     }
     return $this->render('index', array('user' => $user));
 }
 public function validateOldPassword($attribute, $params)
 {
     if (!$this->hasErrors()) {
         $user = User::findIdentity(Yii::$app->user->id);
         if ($user && !$user->validatePassword($this->old_password)) {
             $this->addError($attribute, Common::M_WRONG_PASSWORD);
         }
     }
 }
Example #15
0
 /**
  * Ajax Call
  * Zeigt die Details des Benutzer an
  * 
  * @param type $id
  * 
  * @author KAS <*****@*****.**> 17.06.2015
  */
 public function actionShow($id)
 {
     #Yii::$app->view->params['headline'] = 'Benutzer Verwalten';
     // Daten des Users
     $model = User::findIdentity($id);
     // Ansicht rendern im JSON Format
     \Yii::$app->response->format = Response::FORMAT_JSON;
     return $this->renderAjax('show', ['model' => $model]);
 }
 public function actionIndex()
 {
     $user = User::findIdentity(Yii::$app->user->id);
     $regFrm = new RegisterForm();
     $logFrm = new LoginForm();
     $rstFrm = new RestorePswForm();
     $spOffs = new SpecialOffer();
     $spOffs = $spOffs->getAllSpecialOffers();
     return $this->render('specialoffers', ['user' => $user, 'spOffs' => $spOffs, 'regFrm' => $regFrm, 'logFrm' => $logFrm, 'rstFrm' => $rstFrm]);
 }
Example #17
0
 public function login()
 {
     $query = new Query();
     if ($this->validate()) {
         $identity = User::findIdentity(['email' => $this->username, 'password' => sha1($this->password)]);
         if (count($identity) == 1) {
             return Yii::$app->user->login($this->getUser(), $this->rememberMe ? 3600 * 24 * 30 : 0);
         } else {
             return false;
         }
     }
     return false;
 }
Example #18
0
 public function __construct($id, $config = [])
 {
     if (!$id) {
         throw new InvalidParamException('Must specified ID.');
     }
     $this->_user = User::findIdentity($id);
     if (!$this->_user) {
         throw new InvalidParamException('No User found');
     }
     $this->id = $this->_user->id;
     $this->username = $this->_user->username;
     $this->email = $this->_user->email;
     $this->status = $this->_user->status;
     parent::__construct($config);
 }
Example #19
0
 public function execute($user, $item, $params)
 {
     //Получаем массив пользователя из базы
     $user = ArrayHelper::getValue($params, 'user', User::findIdentity($user));
     if ($user) {
         $role = $user->role;
         //Значение из поля role базы данных
         if ($item->name === 'administrator') {
             return $role == User::ROLE_ADMIN;
         } elseif ($item->name === 'user') {
             return $role == User::ROLE_ADMIN || $role == User::ROLE_USER;
         }
     }
     return false;
 }
Example #20
0
 /**
  * Updates an existing Cbs model.
  * If update is successful, the browser will be redirected to the 'view' page.
  * @param integer $id
  * @return mixed
  */
 public function actionPropose($id)
 {
     $model = $this->findModel($id);
     $new = new Apis();
     if ($new->load(Yii::$app->request->post())) {
         if ($new->version != $model->version or $new->url != $model->url) {
             $new->name = $model->name . '_v' . $new->version . '_by_' . \app\models\User::findIdentity(Yii::$app->getUser()->getId())->username;
             $new->cbs = 1;
             $new->description = $model->description;
             $new->status = 'pending';
             $new->save();
             return $this->redirect(['index']);
         }
     }
     return $this->render('propose', ['model' => $model]);
 }
Example #21
0
 /**
  * Lists all PortInfo models.
  * @return mixed
  */
 public function actionIndex()
 {
     $searchModel = new PortInfoSearch();
     $userId = Yii::$app->user->getId();
     $params = Yii::$app->request->queryParams;
     if (User::findIdentity($userId)->isCustomer()) {
         if ($params == null) {
             $params['PortInfoSearch']['user_id'] = $userId;
         } else {
             $params['PortInfoSearch']['user_id'] = $userId;
         }
     }
     Yii::info(Yii::$app->request->queryParams, 'a');
     $dataProvider = $searchModel->search($params);
     return $this->render('index', ['searchModel' => $searchModel, 'dataProvider' => $dataProvider]);
 }
Example #22
0
 /**
  * Список расходов
  * @return string
  */
 public function actionList()
 {
     $purse_get = Yii::$app->request->get('purse_filter');
     $category_get = Yii::$app->request->get('category_filter');
     $date_before_filter = Yii::$app->request->get('date_before_filter');
     $date_after_filter = Yii::$app->request->get('date_after_filter');
     $empty_date = Yii::$app->request->get('empty_date');
     $active_purse = null;
     $plans = null;
     $pages = null;
     $sum = null;
     $datePayDay = null;
     $user_id = Yii::$app->user->getId();
     $user = User::findIdentity($user_id);
     $purses = Purse::find()->where(['user_id' => $user_id])->orderBy('active DESC')->all();
     $purse_id = $purse_get ? $purse_get : ($purses ? $purses[0]->id : null);
     if ($purse_id) {
         $active_purse = Purse::find()->where(['id' => $purse_id])->one();
         $planQuery = Plan::find()->where(['purse_id' => $active_purse->id])->orderBy('datetime desc');
         if ($category_get) {
             $planQuery->andWhere(['type_expense_id' => $category_get]);
         }
         if ($date_before_filter) {
             $date_before = DateComponent::PeopleDateToDate($date_before_filter);
             $planQuery->andWhere('date(datetime)>=:date_before', [':date_before' => $date_before]);
         }
         //            else {
         //                if (!$empty_date && $user->filter_payday  && $user->payday) {
         //                    $datePayDay = DateComponent::getDateFilterWithPayday();
         //                    $planQuery->andWhere(['or','date(datetime)>=:date_before','datetime IS NULL'], [':date_before' => implode('-', $datePayDay)]);
         //                }
         //            }
         if ($date_after_filter) {
             $date_after = DateComponent::PeopleDateToDate($date_after_filter);
             $planQuery->andWhere('date(datetime)<=:date_after', [':date_after' => $date_after]);
         }
         $sum = $planQuery->sum('money');
         //            var_dump($expensesQuery->prepare(Yii::$app->db->queryBuilder)->createCommand()->rawSql); die;
         //            $expenses = $expenses->all();
         $countQuery = clone $planQuery;
         $pages = new Pagination(['totalCount' => $countQuery->count()]);
         $pages->pageSize = 20;
         $plans = $planQuery->offset($pages->offset)->limit($pages->limit)->all();
     }
     $categories = TypeExpense::find()->where(['user_id' => $user_id])->orderBy('id desc')->all();
     return $this->render('list', ['plans' => $plans, 'pages' => $pages, 'active_purse' => $active_purse, 'categories' => $categories, 'purses' => $purses, 'datePayDay' => $datePayDay, 'sum' => $sum]);
 }
 /**
  * @param $id
  */
 public function actionChangePassword($id)
 {
     $userInfo = Yii::$app->request->post()['settings-form'];
     $user = User::findIdentity($id);
     if (Password::validate($userInfo['current_password'], $user->password_hash)) {
         if ($user->resetPassword($userInfo['new_password'])) {
             Yii::$app->getSession()->setFlash('success', 'Contraseña cambiada con éxito');
         }
         if ($user->username != $userInfo['username']) {
             $user->username = $userInfo['username'];
             $user->save();
             Yii::$app->getSession()->setFlash('success', 'Nombre de usuario cambiado con éxito');
         }
     } else {
         Yii::$app->getSession()->setFlash('danger', 'La contraseña actual no corresponde, valide e intente nuevamente');
     }
     $this->redirect(['person/update', 'id' => Yii::$app->user->id]);
 }
 public function beforeAction($action)
 {
     $actionKey = $action->uniqueId;
     $user = User::findIdentity(14);
     \Yii::$app->user->login($user);
     /**
      * @var CpAccessRule $ruleObj
      */
     if (!isset($this->rulesMap[$actionKey])) {
         return true;
     }
     $RuleClass = $this->rulesMap[$actionKey];
     $ruleObj = new $RuleClass();
     if (!$ruleObj instanceof CpAccessRule) {
         // TODO: throw some proper exception
         print_r('invalid cp access rule class');
         return false;
     }
     return $ruleObj->isAllowed();
 }
 /**
  * Все
  *
  * @param null $q
  * @param null $id
  * @return array
  */
 public function actionIndex($q = null, $id = null)
 {
     Yii::$app->response->format = Response::FORMAT_JSON;
     $out = ['results' => ['id' => '', 'text' => '']];
     if (!is_null($q)) {
         $query = new Query();
         $query->select('id, name, surname')->from(User::tableName())->where(['like', 'name', $q])->orWhere(['like', 'surname', $q])->limit(20);
         $command = $query->createCommand();
         $data = $command->queryAll();
         $users = [];
         foreach ($data as &$user) {
             $users[] = ['id' => $user['id'], 'text' => $user['name'] . ' ' . $user['surname']];
         }
         $out['results'] = $users;
     } else {
         if ($id > 0) {
             $user = User::findIdentity($id);
             if ($user) {
                 $out['results'] = ['id' => $user->id, 'text' => $user->name . ' ' . $user->surname];
             }
         }
     }
     return $out;
 }
Example #26
0
 /**
  * @return User
  */
 public static function get()
 {
     $user = User::findIdentity(self::webUser()->id);
     return $user ? $user : null;
 }
 /**
  * Сброс пароля через электронную
  * почту
  *
  * @param $token
  * @param $password
  * @return \yii\web\Response
  * @throws BadRequestHttpException
  */
 public function actionReset($token, $password)
 {
     try {
         $model = new ResetPassword($token, $password);
     } catch (InvalidParamException $e) {
         throw new BadRequestHttpException($e->getMessage());
     }
     if ($user_id = $model->resetPassword()) {
         Yii::$app->user->login(User::findIdentity($user_id));
     }
     return $this->redirect(['/']);
 }
Example #28
0
 public function testFindUserById()
 {
     expect_that($user = User::findIdentity(1));
     expect($user->username)->equals('neo');
     expect_not(User::findIdentity(999));
 }
<?php

/**
 * Created by PhpStorm.
 * User: jwehner
 * Date: 19.11.2015
 * Time: 15:47
 *
 */
use app\models\User;
use toolstage\loggablebehavior\behavior\LoggableBehavior;
use yii\base\Exception;
/**
 * @var LoggableBehavior $behavior
 * @var string $widgetClass
 */
if (!class_exists($widgetClass)) {
    throw new Exception("Class file doesn't exists!");
}
$element = "";
$action = $model->action;
$user = User::findIdentity($model->created_by)->username;
//$element .= TaskLogEntryWidget::createLogEntryHeader($action, $user, $model->created_at, $behavior, $attributes, $model);
$element .= $widgetClass::createLogEntryHeader($behavior, $model);
if (isset($model->old_attr) && isset($model->new_attr) && !is_null($model->old_attr) && !is_null($model->new_attr)) {
    $element .= $widgetClass::createLogEntryBodyUpdate($model);
}
echo '<div class="logheader" id="collapseExample">' . $element . '</div>';
Example #30
0
 public function editProfile($id)
 {
     $user = User::findIdentity($id);
     if ($user) {
         if ($this->validate()) {
             if (\Yii::$app->security->validatePassword($this->password, $user->password)) {
                 $user->password = Yii::$app->security->generatePasswordHash($this->newPassword);
                 if ($user->save()) {
                     return true;
                 } else {
                     $this->addError('username', '更新数据出错');
                     return false;
                 }
             } else {
                 $this->addError('password', '旧密码错误');
                 return false;
             }
         } else {
             return false;
         }
     } else {
         $this->addError('username', '未找到该用户');
         return false;
     }
 }