コード例 #1
0
 /**
  * Execute the job.
  *
  * @return void
  */
 public function handle()
 {
     $columns = ['users.device_token', 'study_sessions.title', 'study_sessions.time_start', 'study_sessions.location', 'study_sessions.going_count', 'users.cruz_id', 'classes.class_name'];
     $justPassed = StudySession::join('user_classes', 'user_classes.class_id', '=', 'study_sessions.class_id')->join('users', 'user_classes.user_id', '=', 'users.id')->join('classes', 'classes.id', '=', 'user_classes.class_id')->where('user_classes.priority', '1')->where('study_sessions.id', $this->studySession->id)->select($columns)->get();
     $devs = [];
     foreach ($justPassed as $user) {
         $devs[] = PushNotification::Device($user->device_token);
     }
     $readableTime = date('g:i A', strtotime($user->time_start));
     $message = PushNotification::Message('There is a new ' . $user->class_name . ' session starting at ' . $readableTime . ' in ' . $user->location . '.');
     $collection = PushNotification::app('StudyCorner')->to(PushNotification::DeviceCollection($devs))->send($message);
 }
コード例 #2
0
 public function changeStatus(Request $request)
 {
     //user_id is autoincrement
     $data = $request->all();
     $info = ['user_id' => $data['user_id'], 'session_id' => $data['session_id'], 'status' => $data['status']];
     if (UserSessions::where('user_id', $info['user_id'])->where('session_id', $info['session_id'])->count() == 0) {
         $userSession = UserSessions::create($info);
         $changeCount = StudySession::where('id', '=', $info['session_id'])->increment('going_count');
     } else {
         if ($info['status'] == 1) {
             $changeCount = StudySession::where('id', '=', $info['session_id'])->increment('going_count');
         } else {
             $changeCount = StudySession::where('id', '=', $info['session_id'])->decrement('going_count');
         }
         UserSessions::where('user_id', $info['user_id'])->where('session_id', $info['session_id'])->update(['status' => $info['status']]);
     }
     $user = User::find($info['user_id']);
     return response()->json(['success' => 'true', 'cruz_id' => $user->cruz_id]);
 }