Наследование: implements App\Interfaces\UserInterface
Пример #1
0
 /**
  * Display the specified user.
  *
  * @param  int $id
  *
  * @return Response
  */
 public function show($id, UserRepository $userRepository, FeedRepository $feedRepository)
 {
     $currentUser = $this->currentUser;
     $user = $userRepository->findById($id);
     $feeds = $feedRepository->getPublishedByUser($user);
     return view('users.show', compact('currentUser', 'user', 'feeds'));
 }
 /**
  * Display a listing of the resource.
  *
  * @return Response
  */
 public function index(FriendRequestRepository $friendRequestRepository, UserRepository $userRepository)
 {
     $user = $this->currentUser;
     $requesterIds = $friendRequestRepository->getIdsThatSentRequestToCurrentUser($user->id);
     $userObjects = $userRepository->findManyById($requesterIds);
     $usersWhoRequested = new LengthAwarePaginator($userObjects, count($userObjects), 10, 1, ['path' => '/friend-requests']);
     return view('friend-requests.index', compact('user', 'usersWhoRequested'));
 }
Пример #3
0
 /**
  * Execute the command.
  *
  * @param UserRepository $userRepository
  *
  * @param ResponseRepository $responseRepository
  *
  * @return void
  */
 public function handle(UserRepository $userRepository, MessageRepository $messageRepository)
 {
     $message = Message::createMessage($this->body, $this->senderId, $this->senderProfileImage, $this->senderName);
     $response = MessageResponse::createMessageResponse($this->body, $this->senderId, $this->receiverId, $this->senderProfileImage, $this->senderName);
     $userRepository->findById($this->receiverId)->messages()->save($message);
     $messageRepository->findById($message->id)->messageResponses()->save($response);
     $userRepository->findById($this->receiverId)->messageResponses()->save($response);
     return true;
 }
Пример #4
0
 /**
  * Execute the command.
  *
  * @param FriendRepository $friendRepository
  *
  * @return void
  */
 public function handle(UserRepository $userRepository)
 {
     $otherUser = $userRepository->findById($this->userId);
     $currentUser = Auth::user();
     $currentUser->finishFriendshipWith($this->userId);
     $otherUser->finishFriendshipWith(Auth::user()->id);
     $this->socketClient->updateChatListFriendRemoved($otherUser->id, 24, $currentUser->id, $otherUser->friends()->count());
     return true;
 }
 /**
  * Execute the command.
  *
  * @param UserRepository $userRepository
  *
  * @return void
  */
 public function handle(UserRepository $userRepository)
 {
     $requestedUser = $userRepository->findById($this->requestedId);
     $requesterUser = Auth::user();
     $friendRequest = FriendRequest::prepareFriendRequest($requesterUser->id);
     $requestedUser->friendRequests()->save($friendRequest);
     event(new FriendRequestWasSent($requestedUser, $requesterUser));
     return true;
 }
Пример #6
0
 /**
  * Send chat message to another user.
  *
  * @param Request $request
  *
  * @return mixed
  */
 public function sendMessage(Request $request, UserRepository $userRepository)
 {
     $validator = Validator::make($request->all(), ['receiverId' => 'required', 'message' => 'required']);
     if ($validator->fails()) {
         if ($validator->fails()) {
             return abort(403);
         }
     } else {
         $this->dispatchFrom(SendChatMessageCommand::class, $request);
         return response()->json(['response' => 'success', 'availableToChat' => $userRepository->findById($request->receiverId)->chatstatus]);
     }
 }
Пример #7
0
 /**
  * Store a newly created friend
  *
  * @param Request $request
  *
  * @return Response
  */
 public function store(Request $request, UserRepository $repository)
 {
     $validator = Validator::make($request->all(), ['userId' => 'required']);
     if ($validator->fails()) {
         return response()->json(['response' => 'failed', 'message' => 'Something went wrong please try again.']);
     } else {
         $this->currentUser->createFriendShipWith($request->userId);
         $repository->findById($request->userId)->createFriendShipWith($this->currentUser->id);
         FriendRequest::where('user_id', $this->currentUser->id)->where('requester_id', $request->userId)->delete();
         $friendRequestCount = $this->currentUser->friendRequests()->count();
         return response()->json(['response' => 'success', 'count' => $friendRequestCount, 'message' => 'Friend request accepted.']);
     }
 }
 /**
  * Execute the command.
  *
  * @param UserRepository, $userRepository
  *
  * @param EmailRepository $emailRepository
  *
  * @return void
  */
 public function handle(UserRepository $userRepository, MessageRepository $messageRepository)
 {
     $user = $userRepository->findById($this->receiverId);
     $message = $messageRepository->findById($this->messageId);
     if (!$message->belongsToUser($this->receiverId)) {
         $user->messages()->save($message);
     }
     if ($this->receiverId == $this->senderId) {
         $userIdToSaveTo = $message->getLastReceiverId();
         $messageResponse = MessageResponse::createMessageResponse($this->body, $this->senderId, $userIdToSaveTo, $this->senderProfileImage, $this->senderName);
         $messageRepository->findById($this->messageId)->messageResponses()->save($messageResponse);
         $userRepository->findById($userIdToSaveTo)->messageResponses()->save($messageResponse);
     } else {
         $messageResponse = MessageResponse::createMessageResponse($this->body, $this->senderId, $this->receiverId, $this->senderProfileImage, $this->senderName);
         $messageRepository->findById($this->messageId)->messageResponses()->save($messageResponse);
         $user->messageResponses()->save($messageResponse);
     }
 }
Пример #9
0
 /**
  * Show the form for creating a new resource.
  *
  * @return Response
  */
 public function create($id, UserRepository $userRepository)
 {
     $currentUser = $this->currentUser;
     $user = $userRepository->findById($id);
     return view('messages.create', compact('currentUser', 'user'));
 }
 /**
  * Remove the specified resource from storage.
  *
  * @param $id
  *
  * @return mixed
  */
 public function destroy($id)
 {
     return $this->user->delete($id);
 }