示例#1
0
 public function executeFuzzySearch(sfWebRequest $request)
 {
     if (!$request->hasParameter("query")) {
         $this->forward("search", "index");
     }
     $conn = Propel::getConnection();
     $query = $request->getParameter("query");
     $this->query = $query;
     $fuzzySearch = new fuzzySearch();
     try {
         $fuzzySearch->query($query, $conn);
     } catch (Exception $e) {
         $this->error = $e->getMessage();
         return;
     }
     $countCourseList = count($fuzzySearch->getCourseList());
     $countInstrList = count($fuzzySearch->getInstructorList());
     $countProgList = count($fuzzySearch->getProgramList());
     if ($countCourseList + $countInstrList + $countProgList < 1) {
         $this->error = "No result found.";
     } else {
         if ($countCourseList == 1) {
             $list = $fuzzySearch->getCourseList();
             $this->redirect("course/index?id=" . $list[0]->getId());
         } else {
             $this->courseList = $fuzzySearch->getCourseList();
             $this->instructorList = $fuzzySearch->getInstructorList();
             $this->programList = $fuzzySearch->getProgramList();
         }
     }
 }