/** * Determine if the user is authorized to make this request. * * @return bool */ public function authorize() { $requests = CourseUser::where('user_id', $this->user)->where('course_id', $this->course)->get(); if (count($requests) < 1) { return true; } else { return false; } }
public function cancel(Request $request, $course_id) { $course = Course::find($course_id); $user = User::find($request->id); $pivot = CourseUser::where('user_id', $user->id)->where('course_id', $course_id)->where('level', 1)->first(); if (!empty($pivot)) { $pivot->delete(); } CourseModification::create(['author_id' => Auth::user()->id, 'user_id' => $user->id, 'course_id' => $course_id, 'value' => 2]); $user->sendNotification('Votre de demande d\'inscription au cours « ' . ucfirst($course->name) . ' » a été <b>refusée</b>.', 'courses/show/' . $course->slug); return Redirect::back(); }
/** * Determine if the user is authorized to make this request. * * @return bool */ public function authorize() { return CourseUser::where('user_id', Auth::id())->where('course_id', $this->course)->exists(); }
public function userManagement(Request $request) { $course_id = $request->course_id; $user_id = $request->user_id; $value = $request->value; $course = Course::find($course_id); $user = User::find($user_id); // dd($request->all()); if ($request->value < 0) { $level = $request->value * -1 - 1; if (Hash::check($request->password, $user->password)) { $userCourse = CourseUser::where('course_id', $course_id)->where('user_id', $user_id)->where('level', $level)->first(); if ($userCourse->delete()) { $course->leaveNotification($level, $user); makeCourseModification($user_id, $course_id, 2); Flash::success('Vous avez bien été retiré de ce cours.'); return Redirect::back(); } } Flash::error('Action impossible : mauvais mot de passe.'); return Redirect::back(); } $array = ['user_id' => 'required|integer', 'course_id' => 'required|integer', 'message' => 'max:255']; $validator = Validator::make($request->all(), $array); if ($validator->fails()) { Flash::error('Action impossible. Veuillez réessayer, si le problème persiste, contactez un administrateur.'); return Redirect::back(); } $message = $request->message; $level = $request->value - 1; CourseUser::create(['user_id' => $user_id, 'course_id' => $course_id, 'level' => $level, 'message' => $message]); $course->joinNotification(); makeCourseModification($user_id, $course_id, 0); Flash::success('Votre demande a bien été prise en compte.'); return Redirect::back(); }