예제 #1
0
 /**
  * @param User $user
  * @param array $albums
  */
 public function assignAlbums(User $user, array $albums)
 {
     $user->albums->clear();
     $user->setAlbums($albums);
     $this->em->persist($user);
     $this->em->flush();
 }
예제 #2
0
 public function save($data)
 {
     $record = new UserEntity();
     foreach ($data as $key => $value) {
         $record->{$key} = $value;
     }
     return $record->save() ? $record : $this->throwModelExeception($record->getMessages());
 }
예제 #3
0
 /**
  * Generates new token for user.
  *
  * @param User $user
  * @return bool
  */
 public function generate($user)
 {
     $this->setUserId($user->getId())->setToken((new Security())->generateRandomString());
     if (!$this->save()) {
         return false;
     }
     \Yii::$app->trigger(self::EVENT_CREATED, new TokenEvent($this));
     return true;
 }
 /**
  * @param string $name
  */
 public function createComponentEditUserCollectionForm($name)
 {
     $form = new Form($this, $name);
     $albumsContainer = $form->addContainer('albums');
     $albums = $this->albumModel->getAll();
     /**
      * @var Album $album
      */
     foreach ($albums as $album) {
         $label = $album->getAlbumName() . '(' . $album->getArtist() . ', ' . $album->getYear() . ')';
         $albumsContainer->addCheckbox($album->getAlbumId(), $label);
     }
     foreach ($this->user->getAlbums() as $userAlbums) {
         $albumsContainer[$userAlbums->getAlbumId()]->setDefaultValue(TRUE);
     }
     $form->addSubmit('assign', 'Assign');
     $form->onSuccess[] = $this->successEditUserCollectionForm;
 }
 public function addNewSocialAccount($providerUser, $kind_social)
 {
     $account = new SocialAccount(['provider_user_id' => $providerUser->getID(), 'provider' => $kind_social]);
     $user = User::whereEmail($providerUser->getEmail())->first();
     if (!$user) {
         $user = User::create(['email' => $providerUser->getEmail(), 'last_name' => $providerUser->getName()]);
     }
     $account->user()->associate($user);
     $account->save();
     return $user;
 }
예제 #6
0
 public function testRemove()
 {
     $userId = null;
     \Yii::$app->on(User::EVENT_REMOVED, function ($event) use(&$userId) {
         $userId = $event->user->getId();
     });
     $user = User::find()->byId(1)->one();
     $this->assertInstanceOf(User::class, $user);
     $this->assertTrue($user->remove());
     $this->assertEquals($user->getId(), $userId);
     $this->assertNull(User::find()->byId(1)->one());
 }
 public function unlikeStatus($data)
 {
     $user = User::find($data['user_id']);
     if ($user[0]) {
         foreach ($user[0]->like as $like) {
             if ($like['id'] == $data['post_id']) {
                 $user[0]->like()->edge($like)->delete();
             }
         }
     } else {
         foreach ($user->like as $like) {
             if ($like['id'] == $data['post_id']) {
                 $user->like()->edge($like)->delete();
             }
         }
     }
     return 1;
 }
 public function init()
 {
     parent::init();
     $this->userTbl = User::tableName();
     $this->projectTbl = Project::tableName();
     $this->memberTbl = ProjectMember::tableName();
     $this->roleTbl = ProjectRole::tableName();
     $this->ticketTbl = Ticket::tableName();
     $this->ticketGroupTbl = TicketGroup::tableName();
     $this->tokenTbl = Token::tableName();
     $this->projectUserFk = $this->createFkData($this->projectTbl, 'owner_id', $this->userTbl, 'id', 'cascade', 'cascade');
     $this->memberUserFk = $this->createFkData($this->memberTbl, 'user_id', $this->userTbl, 'id', 'cascade', 'cascade');
     $this->memberRoleFk = $this->createFkData($this->memberTbl, 'role_id', $this->roleTbl, 'id', 'restrict', 'cascade');
     $this->memberProjectFk = $this->createFkData($this->memberTbl, 'project_id', $this->projectTbl, 'id', 'cascade', 'cascade');
     $this->ticketUserFk = $this->createFkData($this->ticketTbl, 'creator_id', $this->userTbl, 'id', 'cascade', 'cascade');
     $this->ticketGroupFk = $this->createFkData($this->ticketTbl, 'group_id', $this->ticketGroupTbl, 'id', 'restrict', 'cascade');
     $this->ticketProjectFk = $this->createFkData($this->ticketTbl, 'project_id', $this->projectTbl, 'id', 'cascade', 'cascade');
     $this->roleProjectFk = $this->createFkData($this->roleTbl, 'project_id', $this->projectTbl, 'id', 'cascade', 'cascade');
     $this->groupProjectFk = $this->createFkData($this->ticketGroupTbl, 'project_id', $this->projectTbl, 'id', 'cascade', 'cascade');
     $this->tokenUserFk = $this->createFkData($this->tokenTbl, 'user_id', $this->userTbl, 'id', 'cascade', 'cascade');
 }
 public function updateProfile($user_id, $data)
 {
     return $result = User::where('id', $user_id)->update($data);
 }
예제 #10
0
 /**
  * Create a new user instance after a valid registration.
  *
  * @param  array  $data
  * @return User
  */
 protected function create(array $data)
 {
     return User::create(['name' => $data['name'], 'email' => $data['email'], 'password' => bcrypt($data['password'])]);
 }
 /**
  * Tao mot user moi
  * @param $user: du lieu data cua user
  * @return ket qua cua create (user data)
  **/
 public function createUser($user)
 {
     $result_create = User::create(['last_name' => $user['l_name'], 'first_name' => $user['f_name'], 'email' => $user['email'], 'password' => bcrypt($user['password'])]);
     return $result_create;
 }
예제 #12
0
 /**
  * @api {post} /users/token Generate new token for user.
  * @apiName GenerateToken
  * @apiGroup Users
  *
  * @apiParam {String} email Email of user
  * @apiParam {String} password Password of user
  *
  * @apiSuccess {String} token New auth token
  * @apiSuccess {String} created_at Date created
  */
 public function actionGenerateToken()
 {
     $request = \Yii::$app->getRequest();
     $user = User::findByEmailAndPassword($request->post('email'), $request->post('password'));
     if (!$user) {
         throw new NotFoundHttpException();
     }
     $token = new Token();
     if ($token->generate($user)) {
         return $token;
     } else {
         throw new ModelValidateException($token);
     }
 }
예제 #13
0
 /**
  * Finds an identity by the given ID.
  *
  * @param string|integer $id the ID to be looked for
  * @return IdentityInterface the identity object that matches the given ID.
  * Null should be returned if such an identity cannot be found
  * or the identity is not in an active state (disabled, deleted, etc.)
  */
 public static function findIdentity($id)
 {
     return User::find()->byId($id)->one();
 }