Example #1
0
 public function destroySession()
 {
     AuthFacade::save(['remember_token' => $this->security->getToken()]);
     SessionFacade::remove('auth');
     CookieFacade::get('auth[email]')->delete();
     CookieFacade::get('auth[token]')->delete();
 }
Example #2
0
 protected function getTagsKey(Users $user = null)
 {
     if ($user == null) {
         $user = AuthFacade::getService();
     }
     return $this->getPrefix() . 'users:' . $user->id . ':tags';
 }
Example #3
0
 public function addTag(Tags $tag)
 {
     $user = AuthFacade::getService();
     $this->deleteCacheTags();
     $taggables = $this->getTaggable($tag);
     foreach ($taggables as $t) {
         if ($t->user_id == $user->id) {
             return $this;
         }
         //如果当前用户已经加过该taggable,则直接返回
     }
     $data = ['tag_id' => $tag->id, 'taggable_type' => get_class($this), 'taggable_id' => $this->id, 'user_id' => $user->id];
     $taggable = new Taggables();
     $taggable->save($data);
     $meta = $tag->getTagmetaOrNew();
     $meta->save(['taggableCount' => $meta->taggableCount + 1]);
     if ($taggables->count() == 0) {
         $tag->increaseCount('taggableCount');
     }
     return $this;
 }
Example #4
0
 public function deleteByCurrentUser()
 {
     $user = AuthFacade::getService();
     $taggables = Taggables::query()->where('tag_id = :tag:', ['tag' => $this->id])->andWhere('user_id = :user:'******'user' => $user->id])->execute();
     $taggables->delete();
     //        dd($taggables);
     $meta = $this->getTagmetaOrNew();
     //        dd($meta);
     $meta->delete();
     if ($taggables->count() == 0) {
         $this->delete();
     }
 }