Пример #1
0
 /**
  * Get member and follower events
  *
  * @param string|array $status
  *
  * @return \Illuminate\Pagination\LengthAwarePaginator
  *
  * @throws \Exception
  */
 public function getByMemberId($status)
 {
     $user_id = $this->getParam(1);
     if ($user_id === null) {
         throw new \Exception('Empty user ID');
     }
     /**
      * Display my events
      */
     if ($user_id == 'my') {
         $user_id = (int) \Auth::user()->id;
     }
     $get_events_ids = Members::where('user_id', $user_id);
     if (is_array($status)) {
         $get_events_ids = $get_events_ids->whereIn('status', $status);
     } else {
         $get_events_ids = $get_events_ids->where('status', $status);
     }
     $get_events_ids = $get_events_ids->get();
     $ids = [];
     foreach ($get_events_ids as $event) {
         $ids[] = $event->getEventId();
     }
     return Events::where('status', '<>', 'draft')->whereIn('id', $ids)->orderBy('created_at', 'desc')->paginate($this->on_page);
 }