digest_type = $digest_type; $trip = (new TrackerController)->get_trip_data($trip_id); $cutoffDateTime = new DateTime(); switch ($this->digest_type) { case 'daily': $cutoffDateTime->modify('-1 day'); break; case 'weekly': $cutoffDateTime->modify('-1 week'); break; case 'fortnightly': $cutoffDateTime->modify('-2 weeks'); break; case 'monthly': $cutoffDateTime->modify('-1 month'); break; default: } $this->checkinsList = array_filter( $trip->checkins, function ($elem) use ($cutoffDateTime) { $elemDateTime = new DateTime($elem->created_at); return $elemDateTime > $cutoffDateTime; } ); } /** * Build the message. * * @return $this */ public function build() { return $this->view('emails.digest') ->subject("track.bengoldsworthy.net ".ucwords($this->digest_type)." Digest"); } }