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
 }