/**
  * Store a newly created resource in storage.
  *
  * @return Response
  */
 public function store()
 {
     $tracker_ids = Request::get('tracker_ids');
     $tracker_id = explode(',', $tracker_ids);
     $usernameArray = [];
     $response = null;
     foreach ($tracker_id as $id) {
         if (trim($id) != 'null') {
             $username = null;
             if (is_numeric($id)) {
                 $user = User::where('mobile', '=', $id)->get(array('username'));
                 foreach ($user as $name) {
                     $username = $name->username;
                     array_push($usernameArray, $username);
                 }
             }
             $validate = TrackAssign::where('user_id', '=', Request::get('user_id'))->where('tracker_id', '=', $username)->first();
             if ($username != null) {
                 if ($validate == null) {
                     $assign = new TrackAssign();
                     $assign->user_id = Request::get('user_id');
                     $assign->tracker_id = $username;
                     $assign->status = 1;
                     $assign->save();
                     return $response = RestApi::trackNotification($username, Request::get('user_id'));
                 } else {
                     $validate->status = 1;
                     $validate->save();
                     return $response = RestApi::trackNotification($username, Request::get('user_id'));
                 }
             }
         }
     }
     //return $response;
     /*return Response::json(array(
     		"status" => "OK",
     		"users" => $usernameArray),
     		200);*/
 }
 public function start()
 {
     $username = Request::get('username');
     $user_track_id = uniqid('TR_');
     $trackers = array_filter(explode(',', Request::get('tracker_ids')));
     /* Check if username is alredy in track_id table
        if there, update the track_id field with new one
        else, create a new row with track_id and username
        */
     $track_id = TrackId::where('username', '=', $username)->first();
     if ($track_id) {
         $track_id->track_id = $user_track_id;
         $track_id->status = 1;
         $track_id->save();
     } else {
         $track_id = new TrackId();
         $track_id->track_id = $user_track_id;
         $track_id->username = $username;
         $track_id->status = 1;
         $track_id->save();
     }
     /*
         Assign the users to trackers
     */
     foreach ($trackers as $tracker) {
         $tracker_name = User::where('mobile', '=', $tracker)->first();
         if ($tracker_name) {
             $tracker_assign_name = TrackAssign::where('username', '=', $username)->where('tracker_id', '=', $tracker_name->username)->first();
             if (!$tracker_assign_name) {
                 $tracker_assign = new TrackAssign();
                 $tracker_assign->username = $username;
                 $tracker_assign->tracker_id = $tracker_name->username;
                 $tracker_assign->save();
             }
             /*
                 Send notification to trackers
             */
             $values = array($tracker_name->username, $user_track_id);
             RestApi::sendNotification('TR', $values);
         }
     }
     return Response::json(array('status' => 'OK', 'trackid' => $track_id));
 }