Esempio n. 1
0
 public function exams($type, Request $request)
 {
     $user = User::find($request->user()->id);
     $this->data['type'] = $type;
     $this->data['exams'] = Exams::where(['type' => ucwords(strtolower($type))])->orderBy('created_at', 'desc')->get()->toArray();
     // Custom Create Mc Burger Exam
     if (Exams::where('code', 'mcburger')->count() < 1) {
         $exam = Exams::create(['code' => 'mcburger', 'title' => 'Mc Burger Assembly', 'items' => 6, 'attempts' => 3, 'type' => 'Interactive', 'status' => 1]);
         $this->data['exams'][] = $exam->toArray();
     }
     // Custom Create Grill Station
     if (Exams::where('code', 'grill')->count() < 1) {
         $exam = Exams::create(['code' => 'grill', 'title' => 'Grill Station', 'items' => 4, 'attempts' => 3, 'type' => 'Interactive', 'status' => 1]);
         $this->data['exams'][] = $exam->toArray();
     }
     // Custom Create Spaghetti Station
     if (Exams::where('code', 'spaghetti')->count() < 1) {
         $exam = Exams::create(['code' => 'spaghetti', 'title' => 'Spaghetti Station', 'items' => 3, 'attempts' => 3, 'type' => 'Interactive', 'status' => 1]);
         $this->data['exams'][] = $exam->toArray();
     }
     // Custom Create Fries Station
     if (Exams::where('code', 'fries')->count() < 1) {
         $exam = Exams::create(['code' => 'fries', 'title' => 'Fries Station', 'items' => 5, 'attempts' => 3, 'type' => 'Interactive', 'status' => 1]);
         $this->data['exams'][] = $exam->toArray();
     }
     foreach ($this->data['exams'] as $k => $v) {
         $this->data['exams'][$k]['questions'] = Exams::find($v['id'])->firstOrFail()->questions()->count();
         $this->data['exams'][$k]['trials'] = User::find($user->id)->assessment()->where(['exam_id' => $v['id'], 'status' => 1])->count();
         $lastAssessment = User::find($user->id)->assessment()->where(['exam_id' => $v['id'], 'status' => 1])->get()->last();
         $this->data['exams'][$k]['score'] = false;
         if ($lastAssessment) {
             $this->data['exams'][$k]['score'] = $lastAssessment->score;
         }
     }
     return view('home.exams', $this->data);
 }