/**
  * Store a newly created resource in storage.
  *
  * @param CreateProgramRequest|Request $request
  * @return Response
  */
 public function store(CreateProgramRequest $request)
 {
     //
     ProgramsModel::create($request->all());
     $sub1 = new SubjectRequiredModel();
     $sub = new SubjectRequiredModel();
     $sub1->program_code = $request->program_code;
     $sub1->subject_code = $request->required_subject_1;
     $sub1->save();
     $sub->program_code = $request->program_code;
     $sub->subject_code = $request->required_subject_2;
     $sub->save();
     return redirect('admin/programs');
 }
Example #2
0
 private function checkRequiredSubjects()
 {
     $rs = array();
     //if you didn't pass any subject, why bother?
     if ($this->passed_subjects != 0) {
         //loop through all the draft programs
         for ($i = 0; $i < count($this->programs_draft); $i++) {
             //Get all the required subjects
             $requiredSubjects = SubjectRequiredModel::where('program_code', $this->programs_draft[$i]['program_code'])->get()->toArray();
             //loop again
             for ($s = 0; $s < count($requiredSubjects); $s++) {
                 for ($p = 0; $p < count($this->passed_subjects); $p++) {
                     $array[] = $this->passed_subjects[$p]['subject_code'];
                 }
                 if (!in_array($requiredSubjects[$s]['subject_code'], $array)) {
                     if (!in_array($requiredSubjects[$s]['subject_code'], array("None1", "None2"))) {
                         //flag as failed required subject failed
                         //$rs[] = $requiredSubjects[$s]['subject_code'];
                         //dd($this->passed_subjects);
                         $tmp = SubjectModel::where('subject_code', $requiredSubjects[$s]['subject_code'])->get()->toArray();
                         $rs[] = $tmp[0]['subject_name'];
                     }
                 }
             }
             $this->programs_draft[$i]['subject_required'] = $rs;
             $rs = array();
         }
     }
 }