/** * Function to set the Question,answer,interviewID,questionOrder to the database * @param $question * @param $answer * @param $interviewID * @param $qOrder * @return string */ public function setQuestionAnswer($question, $answer, $interviewID, $qOrder) { $return = 'success'; $interview = Interview::where('interviewID', $interviewID)->get(); if (sizeof($interview) == 1) { $this->question = $question; $this->answer = $answer; $this->interviewID = $interviewID; $this->qOrder = $qOrder; $this->save(); } else { $return = 'failure'; } return $return; }
Route::get('/gestion', ['middleware' => 'auth.basic', function () { return view('gestion', ['slots' => \App\Slot::all(), 'recruiters' => Recruiter::with(['interviews.candidate'])->get()]); }]); Route::get('/print', ['middleware' => 'auth.basic', function () { $pdfMaker = app('dompdf.wrapper'); $pdf = $pdfMaker->loadView('print', ['slots' => \App\Slot::all(), 'recruiters' => Recruiter::with(['interviews.candidate', 'interviews.slot'])->get()]); return $pdf->stream('entretiens_par_recruteurs.pdf'); }]); Route::post('/save-interview', function (SaveInterviewRequest $request) { return DB::transaction(function () use($request) { try { $candidate = Candidate::create(['firstname' => $request->input('firstname'), 'lastname' => $request->input('lastname'), 'email' => $request->input('email'), 'phone' => $request->input('phone'), 'promo' => $request->input('promo')]); $interview = Interview::findOrFail((int) $request->input('interview')); if (!is_null($interview->candidate_id)) { throw new Exception("Interview already taken!"); } $interview->candidate_id = $candidate->id; $interview->save(); return response()->json('Interview saved'); } catch (Exception $e) { return response()->json('Interview NOT saved', 500); } }); }); Route::post('/delete-interview', ['middleware' => 'auth.basic', function (DeleteInterviewRequest $request) { $interviewToDelete = Interview::with(['candidate', 'recruiter', 'slot'])->whereId($request->input('interview'))->firstOrFail(); $interviewToDelete->candidate_id = null; $interviewToDelete->save(); event(new InterviewWasDeleted($interviewToDelete)); return response()->json('Interview deleted'); }]);
/** * Function to get the complete Interview * @param Request $request */ public function getCompleteInterview(Request $request) { header('Access-Control-Allow-Origin: *'); $interviewID = $request->input('interviewID'); $interview = new Interview(); $userInterview = new UserInterview(); echo $interview->getInterview($interviewID); }
/** * Function to get the interview based on Interview ID * @param $interviewID * @return string */ public function getInterview($interviewID) { $questionAnswer = new QuestionAnswer(); $userInterview = new UserInterview(); $interview = Interview::where('interviewID', $interviewID)->get(); $user = new User(); $interviewUser = $user->getUserByID($interview[0]->userID); $category = new InterviewCategorie(); $category = $category->getCategory($interview[0]->categoryID); $userInterview->questionAnswers = $questionAnswer->getAllQuestions($interviewID); $userInterview->userFullname = $interviewUser->fullname; $userInterview->userProfilePic = $interviewUser->profilePic; $userInterview->interviewCategory = $category->category; return json_encode($userInterview); }