handleTopCategories(); $subCategories = $service->handleSubCategories(); $models = $service->handleModels(); $levels = $service->handleLevels(); $sorts = $service->handleSorts(); $params = $service->getParams(); $this->view->setVar('top_categories', $topCategories); $this->view->setVar('sub_categories', $subCategories); $this->view->setVar('models', $models); $this->view->setVar('levels', $levels); $this->view->setVar('sorts', $sorts); $this->view->setVar('params', $params); } /** * @Get("/pager", name="web.course.pager") */ public function pagerAction() { $service = new CourseListService(); $pager = $service->handle(); $pager->items = kg_array_object($pager->items); $pager->target = 'course-list'; $this->view->setRenderLevel(View::LEVEL_ACTION_VIEW); $this->view->pick('course/pager'); $this->view->setVar('pager', $pager); } /** * @Get("/{id:[0-9]+}", name="web.course.show") */ public function showAction($id) { $service = new CourseInfoService(); $course = $service->handle($id); $service = new RewardOptionList(); $rewards = $service->handle(); $this->siteSeo->prependTitle($course['title']); $this->siteSeo->setKeywords($course['keywords']); $this->siteSeo->setDescription($course['summary']); $this->view->setVar('course', $course); $this->view->setVar('rewards', $rewards); } /** * @Get("/{id:[0-9]+}/teachers", name="web.course.teachers") */ public function teachersAction($id) { $service = new CourseTeacherListService(); $teachers = $service->handle($id); $this->view->setRenderLevel(View::LEVEL_ACTION_VIEW); $this->view->pick('course/teachers'); $this->view->setVar('teachers', $teachers); } /** * @Get("/{id:[0-9]+}/chapters", name="web.course.chapters") */ public function chaptersAction($id) { $service = new CourseCatalogService(); $chapters = $service->handle($id); $this->view->setRenderLevel(View::LEVEL_ACTION_VIEW); $this->view->pick('course/chapters'); $this->view->setVar('chapters', $chapters); } /** * @Get("/{id:[0-9]+}/packages", name="web.course.packages") */ public function packagesAction($id) { $service = new CoursePackageListService(); $packages = $service->handle($id); $this->view->setRenderLevel(View::LEVEL_ACTION_VIEW); $this->view->pick('course/packages'); $this->view->setVar('packages', $packages); } /** * @Get("/{id:[0-9]+}/consults", name="web.course.consults") */ public function consultsAction($id) { $service = new CourseConsultListService(); $pager = $service->handle($id); $pager->items = kg_array_object($pager->items); $pager->target = 'tab-consults'; $this->view->setRenderLevel(View::LEVEL_ACTION_VIEW); $this->view->pick('course/consults'); $this->view->setVar('pager', $pager); } /** * @Get("/{id:[0-9]+}/reviews", name="web.course.reviews") */ public function reviewsAction($id) { $service = new CourseReviewListService(); $pager = $service->handle($id); $pager->items = kg_array_object($pager->items); $pager->target = 'tab-reviews'; $this->view->setRenderLevel(View::LEVEL_ACTION_VIEW); $this->view->pick('course/reviews'); $this->view->setVar('pager', $pager); } /** * @Get("/{id:[0-9]+}/recommended", name="web.course.recommended") */ public function recommendedAction($id) { $service = new CourseRecommendedListService(); $courses = $service->handle($id); $this->view->setRenderLevel(View::LEVEL_ACTION_VIEW); $this->view->pick('course/recommended'); $this->view->setVar('courses', $courses); } /** * @Get("/{id:[0-9]+}/related", name="web.course.related") */ public function relatedAction($id) { $service = new CourseRelatedListService(); $courses = $service->handle($id); $this->view->setRenderLevel(View::LEVEL_ACTION_VIEW); $this->view->pick('course/related'); $this->view->setVar('courses', $courses); } /** * @Get("/{id:[0-9]+}/topics", name="web.course.topics") */ public function topicsAction($id) { $service = new CourseTopicListService(); $topics = $service->handle($id); $this->view->setRenderLevel(View::LEVEL_ACTION_VIEW); $this->view->pick('course/topics'); $this->view->setVar('topics', $topics); } /** * @Post("/{id:[0-9]+}/favorite", name="web.course.favorite") */ public function favoriteAction($id) { $service = new CourseFavoriteService(); $favorite = $service->handle($id); $msg = $favorite->deleted == 0 ? '收藏成功' : '取消收藏成功'; return $this->jsonSuccess(['msg' => $msg]); } }