AppUser::all()]); } public function create() { return view('app-users.create'); } public function store(StoreRequest $request) { $appUser = new AppUser(); $appUser->fill($request->validated()); $appUser->activated = $request->has('activated') ? 1 : 0; $appUser->save(); return redirect()->route('app-users.edit', ['app_user' => $appUser])->with('status', __('Utilisateur créé.')); } public function edit(AppUser $appUser) { return view('app-users.edit', ['app_user' => $appUser, 'folders' => $this->renderFolders(Directories::where('needAuthorization', 1)->get())]); } public function update(UpdateRequest $request, AppUser $appUser) { $appUser->fill($request->validated()); $appUser->activated = $request->has('activated') ? 1 : 0; $appUser->save(); return redirect()->route('app-users.edit', ['app_user' => $appUser])->with('status', __('Utilisateur enregistré.')); } /** * Delete an app user * * @param AppUser $app_user * @return response */ public function destroy(AppUser $app_user) { $app_user->delete(); return redirect()->route('app-users.index')->with('status', __('Utilisateur supprimé.')); } /** * Mass import by CSV * matricule;lastname;firstname;email * default = USER */ public function import(ImportRequest $request) { Excel::import(new UsersImport, $request->import, null, \Maatwebsite\Excel\Excel::CSV); return redirect()->route('app-users.index')->with('status', 'Import terminé.'); } /** * Render folders * * @param Collection $folders * @return array */ private function renderFolders(Collection $folders) { foreach ($folders as $k => $folder) { $name = ""; $folders[$k]['parents'] = $folder->parents; foreach ($folder->parents as $parent) $name .= json_decode($parent->name)->fr . " / "; $name .= json_decode($folder->name)->fr; $folders[$k]['name'] = $name; } return $folders; } }