public function store(Request $request) { $ids = $request->input('ids'); foreach ($ids as $id) { $interval = ClassroomInterval::find($id); $interval->enable_excuses = $request->has('excuses_' . $id); $interval->enable_attendances = $request->has('attendance_' . $id); $interval->save(); } return redirect()->route('classrooms.settings.index')->with('success', trans('classrooms::settings.settings_updated')); }
public function store(CreateClassroomSessionRequest $request) { $session = new ClassroomSession(); $interval = ClassroomInterval::find($request->input('interval_id')); $session->fill($request->all()); $session->title = $interval->title; $session->interval_id = $interval->id; if ($session->save()) { $this->dispatch(new CreateVirtualClassroomJob($session)); return redirect()->route('classrooms.sessions.index'); } }
public function register() { //Classroom Classroom::created(function ($classroom) { UserLog::create(['operation' => 'create', 'user_id' => user() ? user()->id : NULL, 'reference_key' => 'classrooms', 'reference_id' => $classroom->id]); }); Classroom::updated(function ($classroom) { UserLog::create(['operation' => 'update', 'user_id' => user() ? user()->id : NULL, 'reference_key' => 'classrooms', 'reference_id' => $classroom->id]); }); Classroom::deleted(function ($classroom) { UserLog::create(['operation' => 'delete', 'user_id' => user() ? user()->id : NULL, 'reference_key' => 'classrooms', 'reference_id' => $classroom->id]); }); //ClassroomInterval ClassroomInterval::created(function ($classroominterval) { UserLog::create(['operation' => 'create', 'user_id' => user() ? user()->id : NULL, 'reference_key' => 'classroom_intervals', 'reference_id' => $classroominterval->id]); }); ClassroomInterval::updated(function ($classroominterval) { UserLog::create(['operation' => 'update', 'user_id' => user() ? user()->id : NULL, 'reference_key' => 'classroom_intervals', 'reference_id' => $classroominterval->id]); }); ClassroomInterval::deleted(function ($classroominterval) { UserLog::create(['operation' => 'delete', 'user_id' => user() ? user()->id : NULL, 'reference_key' => 'classroom_intervals', 'reference_id' => $classroominterval->id]); }); //ClassroomSessionExcuse ClassroomSessionExcuse::created(function ($classroomsessionexcuses) { UserLog::create(['operation' => 'create', 'user_id' => user() ? user()->id : NULL, 'reference_key' => 'classroom_session_excuses', 'reference_id' => $classroomsessionexcuses->id]); }); ClassroomSessionExcuse::updated(function ($classroomsessionexcuses) { UserLog::create(['operation' => 'update', 'user_id' => user() ? user()->id : NULL, 'reference_key' => 'classroom_session_excuses', 'reference_id' => $classroomsessionexcuses->id]); }); ClassroomSessionExcuse::deleted(function ($classroomsessionexcuses) { UserLog::create(['operation' => 'delete', 'user_id' => user() ? user()->id : NULL, 'reference_key' => 'classroom_session_excuses', 'reference_id' => $classroomsessionexcuses->id]); }); //ClassroomSession ClassroomSession::created(function ($classroomsession) { UserLog::create(['operation' => 'create', 'user_id' => user() ? user()->id : NULL, 'reference_key' => 'classroom_sessions', 'reference_id' => $classroomsession->id]); }); ClassroomSession::updated(function ($classroomsession) { UserLog::create(['operation' => 'update', 'user_id' => user() ? user()->id : NULL, 'reference_key' => 'classroom_sessions', 'reference_id' => $classroomsession->id]); }); ClassroomSession::deleted(function ($classroomsession) { UserLog::create(['operation' => 'delete', 'user_id' => user() ? user()->id : NULL, 'reference_key' => 'classroom_sessions', 'reference_id' => $classroomsession->id]); }); }
public function weekly(Request $request) { $sessions = ClassroomSession::with(['teacher', 'subject'])->select(DB::raw('teacher_id , subject_subject_id , count(classroom_id) as count_classroom_id, count(id) as count_session, sum(details_is_in_time) as count_details_is_in_time, sum(details_is_teacher_absent) as count_details_is_teacher_absent, sum(details_is_tech_problem) as count_details_is_tech_problem, sum(details_is_delayed) as count_details_is_delayed, sum(details_is_board_used) as count_details_is_board_used, sum(details_is_camera_used) as count_details_is_camera_used, sum(details_teacher_level_summary) as details_teacher_level_summary, sum(details_teacher_level_tech) as details_teacher_level_tech '))->groupBy('teacher_id', 'subject_subject_id'); if ($request->has('interval_id')) { $sessions->where('interval_id', $request->input('interval_id')); } $sessions = $sessions->get(); $intervals = ClassroomInterval::Done()->where('semester_id', semester()->id)->pluck('title', 'id')->toArray(); return view('classrooms::reports.weekly', compact('intervals', 'sessions')); }
public function regiserEvents() { Classroom::creating(function ($classroom) { $classroom->semester_id = semester()->id; }); ClassroomInterval::creating(function ($interval) { $interval->semester_id = semester()->id; }); ClassroomSession::creating(function ($session) { $session->semester_id = semester()->id; }); }
private function checkIntervalsConflict(Request $request, $interval_id = 0) { $intervals = ClassroomInterval::whereHas('classrooms', function ($query) { $query->whereIn('classroom_id', request('classroom_id')); })->where('classroom_intervals.id', '!=', $interval_id)->whereRaw("'" . $request->from_date . "' < classroom_intervals.to_date\n\t\t\t\t\tAND classroom_intervals.from_date < '" . $request->to_date . "'")->get(); return $intervals->count(); }