Example #1
0
 function get_all_curriculums()
 {
     $curriculums = false;
     $CI =& get_instance();
     $CI->load->model("curriculum_model");
     $curriculuminfo = new Curriculum_Model();
     $query = $CI->db->select("*")->from($curriculuminfo->table_name)->get();
     if ($query && $query->num_rows() > 0) {
         $curriculums = array();
         foreach ($query->result() as $rwi => $rw) {
             $curriculuminfo = new Curriculum_Model();
             $curriculuminfo->setCurriculumid($rw->curriculum_id);
             $curriculuminfo->setCourseid($rw->course_id);
             $curriculuminfo->setMajorid($rw->major_id);
             $curriculuminfo->setCurriculumtypeid($rw->curriculum_type_id);
             $curriculuminfo->setDescription($rw->description);
             $curriculuminfo->setYear($rw->year);
             $curriculuminfo->setSchoolyearstart($rw->schoolyear_start);
             $curriculuminfo->setCreatedon($rw->created_on);
             $curriculuminfo->setLastupdate($rw->last_update);
             $curriculums[] = $curriculuminfo;
         }
     }
     return $curriculums;
 }
Example #2
0
 public function setCurriculum($name = NULL, $type = NULL)
 {
     //get arguments
     if ($name == NULL) {
         $name = $this->input->post('name');
     }
     if ($type == NULL) {
         $type = $this->input->post('type');
     }
     //set curriculum name
     $curriculum = new Curriculum_model();
     if (isset($_SESSION['curriculum'])) {
         $curriculum->fromSerializedString($_SESSION['curriculum']);
     }
     $curriculum->setName($name);
     //set curriculum type
     if ($type == "Degree") {
         $curriculum->setCurriculumType(1);
     } else {
         if ($type == "Minor") {
             $curriculum->setCurriculumType(2);
         } else {
             if ($type == "Concentration") {
                 $curriculum->setCurriculumType(3);
             }
         }
     }
     //save curriculum
     if (isset($_SESSION['curriculumCreationMethod'])) {
         if ($_SESSION['curriculumCreationMethod'] == "edit") {
             $curriculum->update();
         } else {
             $curriculum->create();
         }
         //create a new entry for clone/new
     }
     //find all current pre/coreqs and
     $newCurr = new Curriculum_Model();
     $newCurr->loadPropertiesFromPrimaryKey($curriculum->getCurriculumID());
     $courseSlots = $newCurr->getCurriculumCourseSlots();
     //find and delete old reqs and save new ones
     if (isset($_SESSION['reqs'])) {
         foreach ($_SESSION['reqs'] as $reqs) {
             $reqSlot = new Curriculum_course_slot_model();
             $reqSlot->fromSerializedString($reqs['slot']);
             $reqSlotIndex = $reqSlot->getCurriculumIndex();
             foreach ($courseSlots as $slot) {
                 //find the right course slot
                 if ($slot->getCurriculumIndex() == $reqSlotIndex) {
                     $previousPrereqSlots = $slot->getPrequisiteCourseSlots();
                     $previousCoreqSlots = $slot->getCorequisiteCourseSlots();
                     //find and delete old prereqs
                     if (!empty($previousPrereqSlots)) {
                         // and !empty($reqs['prereqs']))
                         foreach ($previousPrereqSlots as $previousSlot) {
                             $slot->removeCourseSlotRequisite($previousSlot);
                         }
                     }
                     //delete any old corequisites
                     if (!empty($previousCoreqSlots)) {
                         // and !empty($reqs['coreqs']))
                         foreach ($previousCoreqSlots as $previousSlot) {
                             $slot->removeCourseSlotRequisite($previousSlot);
                         }
                     }
                     //save new coreqs
                     if (!empty($reqs['coreqs'])) {
                         $co = new Curriculum_course_slot_model();
                         foreach ($reqs['coreqs'] as $r) {
                             $co->fromSerializedString($r);
                             $slot->addCourseSlotCorequisite($co);
                         }
                     }
                     //save new prereqs
                     //need to make sure you can't make one slot a co and pre
                     if (!empty($reqs['prereqs'])) {
                         $pre = new Curriculum_course_slot_model();
                         foreach ($reqs['prereqs'] as $r) {
                             $pre->fromSerializedString($r);
                             $slot->addCourseSlotPrerequisite($pre);
                         }
                     }
                     break;
                 }
             }
         }
     }
     $curriculum->update();
     //update current curriculum for edit
     unset($_SESSION['curriculum']);
     unset($_SESSION['courseSlot']);
     unset($_SESSION['curriculumCreationMethod']);
     unset($_SESSION['curriculumCourseSlotMethod']);
     unset($_SESSION['maxCurriculumIndex']);
     unset($_SESSION['reqs']);
     $this->index();
 }
 private function createCurriculum()
 {
     $return = false;
     $this->form_validation->set_rules("curriculumType", "Curriculum type", "trim|required|xss_clean");
     $this->form_validation->set_rules("curriculumCourse", "Curriculum course", "trim|required|xss_clean");
     $this->form_validation->set_rules("curriculumMajor", "Curriculum major", "trim|xss_clean");
     $this->form_validation->set_rules("curriculumDescription", "Curriculum description", "trim|xss_clean");
     $this->form_validation->set_rules("curriculumYear", "Curriculum year", "trim|xss_clean");
     if ($this->form_validation->run() == FALSE) {
         if (form_error("curriculumType")) {
             set_has_error("curriculumType", true);
             set_message("curriculumType", form_error("curriculumType", " ", " "));
         }
         if (form_error("curriculumCourse")) {
             set_has_error("curriculumCourse", true);
             set_message("curriculumCourse", form_error("curriculumCourse", " ", " "));
         }
         if (form_error("curriculumMajor")) {
             set_has_error("curriculumMajor", true);
             set_message("curriculumMajor", form_error("curriculumMajor", " ", " "));
         }
         if (form_error("curriculumDescription")) {
             set_has_error("curriculumDescription", true);
             set_message("curriculumDescription", form_error("curriculumDescription", " ", " "));
         }
         if (form_error("curriculumYear")) {
             set_has_error("curriculumYear", true);
             set_message("curriculumYear", form_error("curriculumYear", " ", " "));
         }
     } else {
         $newcurriculuminfo = new Curriculum_Model();
         $ctype = $this->input->post("curriculumType");
         $ccourse = $this->input->post("curriculumCourse");
         $cmajor = $this->input->post("curriculumMajor");
         $cdesc = $this->input->post("curriculumDescription");
         $cyear = $this->input->post("curriculumYear");
         if ($ctype && is_curriculum_type_exist($ctype)) {
             $newcurriculuminfo->setCurriculumtypeid($ctype);
             if ($ccourse && (int) $ccourse > 0 && is_course_exist($ccourse)) {
                 $errorz = 0;
                 $newcurriculuminfo->setCourseid($ccourse);
                 if ($cmajor) {
                     if ((int) $cmajor > 0 && is_major_exist($cmajor)) {
                         $newcurriculuminfo->setMajorid($cmajor);
                     } else {
                         set_has_error("curriculumMajor", true);
                         set_message("curriculumMajor", "Invalid major selected.");
                     }
                 }
                 if ($cdesc) {
                     $newcurriculuminfo->setDescription($cdesc);
                 }
                 if ($cyear) {
                     $ystart = 1970;
                     $now = mdate("%Y", now());
                     $yend = $now + 10;
                     if ((int) $cyear >= $ystart && (int) $cyear <= $yend) {
                         $newcurriculuminfo->setYear($cyear);
                     } else {
                         $errorz++;
                         set_has_error("curriculumYear", true);
                         set_message("curriculumYear", "Invalid Year.");
                     }
                 }
                 if ($errorz == 0) {
                     $return = $newcurriculuminfo->saveasnew();
                 }
             } else {
                 set_has_error("curriculumCourse", true);
                 set_message("curriculumCourse", "Invalid course selected.");
             }
         } else {
             set_has_error("curriculumType", true);
             set_message("curriculumType", "Invalid type selected.");
         }
     }
     return $return;
 }