예제 #1
0
 /**
  * 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;
 }
예제 #2
0
파일: routes.php 프로젝트: VP42/PIMs
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);
 }
예제 #4
0
 /**
  * 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);
 }