refactor ScheduleController

This commit is contained in:
Nicolas Demangeat 2023-06-23 07:14:39 +00:00
parent 292d62af3f
commit 97c01c5962

View file

@ -28,6 +28,42 @@ class ScheduleController extends Controller
parent::__construct();
$this->middleware('is-admin');
}
/**
* Create the date
* @param \Illuminate\Http\Request $request
* @return \Carbon\CarbonImmutable|false
*/
private function dateCreation(Request $request)
{
$date = CarbonImmutable::now()->startOfWeek();
if ($request->p) {
$date = CarbonImmutable::createFromFormat('d/m/Y', $request->p)->startOfWeek();
}
return $date;
}
/**
* Create the users table.
* @param \Illuminate\Http\Request $request
* @return array
* @throws \Illuminate\Contracts\Container\BindingResolutionException BindingResolutionException.
*/
private function createUsers(Request $request)
{
$users = [];
if (!is_null($request->cookie('userAuthSchedule'))) {
$dbusers = User::where('id', auth()->user()->id)->get();
} else {
$dbusers = User::where('role', Role::developper())->get();
}
foreach ($dbusers as $user) {
$users[$user->id] = ['name' => $user->name];
}
return $users;
}
/**
* Display schedule.
* @param \Illuminate\Http\Request $request
@ -41,22 +77,10 @@ class ScheduleController extends Controller
return $this->showAllSchedules();
}
$date = CarbonImmutable::now()->startOfWeek();
$date = $this->dateCreation($request);
$nbweeks = config('schedules.shownWeeks');
if ($request->p) {
$date = CarbonImmutable::createFromFormat('d/m/Y', $request->p)->startOfWeek();
}
$users = $this->createUsers($request);
$users = [];
if (!is_null($request->cookie('userAuthSchedule'))) {
$dbusers = User::where('id', auth()->user()->id)->get();
} else {
$dbusers = User::where('role', Role::developper())->get();
}
foreach ($dbusers as $user) {
$users[$user->id] = ['name' => $user->name];
}
$schedules = Schedule::whereHas('user', function (Builder $query) use ($request) {
$query->where('deleted_at', null);
$query->where('role', Role::developper());
@ -97,7 +121,6 @@ class ScheduleController extends Controller
'type' => $schedule->activity,
'text' => $schedule->description,
'id_lie' => $id_lie,
// $schedule->id_lie,
'model_lie' => $model_lie,
),
)
@ -112,7 +135,6 @@ class ScheduleController extends Controller
'type' => $schedule->activity,
'text' => $schedule->description,
'id_lie' => $id_lie,
// $schedule->id_lie,
'model_lie' => $model_lie,
),
);
@ -125,14 +147,9 @@ class ScheduleController extends Controller
'type' => $schedule->activity,
'text' => $schedule->description,
'id_lie' => $id_lie,
// $schedule->id_lie,
'model_lie' => $model_lie,
);
}
// else {
// same date
// should never be here
// }.
}//end if
}//end if
$prevUserId = $schedule->user_id;