/**
  * Returns CategoryList instance.
  *
  * @param ServiceLocatorInterface $serviceLocator
  * @return CategoryList
  * @override
  **/
 public function createService(ServiceLocatorInterface $serviceLocator)
 {
     /* @var $serviceLocator Zend\View\HelperPluginManager */
     $sm = $serviceLocator->getServiceLocator();
     $em = $sm->get('em');
     $service = new CategoryService($em);
     $categories = $service->getPublishedWithCount();
     $helper = new CategoryList();
     $helper->setCategories($categories);
     return $helper;
 }
 /**
  * Returns SearchController instance.
  *
  * @param ServiceLocatorInterface $serviceLocator
  * @return BlogController
  * @override
  **/
 public function createService(ServiceLocatorInterface $serviceLocator)
 {
     /* @var $serviceLocator Zend\Mvc\Controller\ControllerManager */
     $sm = $serviceLocator->getServiceLocator();
     $em = $sm->get('em');
     $categoryService = new CategoryService($em);
     $categories = $categoryService->getPublishedWithCount();
     $postService = new PostService($em);
     $years = $postService->getValidYears();
     $form = new SearchForm();
     $form->setCategoryList($categories);
     $form->setYearList($years);
     $service = new SearchService($em);
     $service->setForm($form);
     $controller = new SearchController();
     $controller->setService($service);
     return $controller;
 }