public function store(Request $request, $user_id = null) { $this->dispatch(new PracticeSessionStarted(Auth::user())); $practice_session = PracticeSession::create(['user_id' => $user_id, 'started_at' => date('Y-m-d H:i:s')]); if ($practice_session) { $practiceSessionToolbox = new PracticeSessionToolbox($user_id, $practice_session->id); $sessionMaterial = $practiceSessionToolbox->getSessionMaterial(); if (!$sessionMaterial) { return $this->respondNotFound('Unable to start session. Make sure you have facts with questions! Call!'); } $material_id = PracticeMaterial::create($sessionMaterial)->id; $sessionMaterial['material_id'] = $material_id; return $this->respond(['data' => [$sessionMaterial]]); } }
public function validateSessionMaterial($user_id, $session_id, $material_id) { $session = PracticeSession::find($session_id); if ($session) { if ($session->user_id == $user_id) { $material = PracticeMaterial::find($material_id); if ($material) { if ($material->session_id == $session->id) { return TRUE; } } } } return FALSE; // $session_id == $material->session_id }