You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 

29 lines
858 B

<?php
namespace App\Http\Controllers;
use App\User;
use Carbon\Carbon;
use Illuminate\Support\Facades\DB;
class BirthdayController extends Controller
{
public function index()
{
$userBirthdayQuery = User::whereNotNull('dob')
->select('users.name',
'users.dob',
'users.id as user_id'
);
$currentMonth = Carbon::now()->format('m');
$nextMonth = Carbon::now()->addMonth()->format('m');
$userBirthdayQuery->whereIn(DB::raw("month(dob)"), [$currentMonth, $nextMonth]);
$users = $userBirthdayQuery->get()->filter(function ($user) {
return $user->birthday_remaining < 60 && $user->birthday_remaining >= 0;
})->sortBy('birthday_remaining');
return view('birthdays.index', compact('users', 'currentMonth', 'nextMonth'));
}
}