public function indexAction() { $mainLayout = $this->initializeFrontendWebsite(); $em = $this->getServiceLocator()->get('doctrine.entitymanager.orm_default'); $lang = $this->layout()->getVariable('lang'); $configurations = $this->layout()->getVariable('configurations'); try { $helper = new HomePageHelper(); $homePageWrapper = $helper->recoverWrapper(new HomePageGetterWrapper(new HomePageGetter($em)), array('onlyActiveModules' => 1, 'orderBy' => 'homePageBlocks.position ASC', 'languageAbbreviation' => $lang)); $homePageRecords = $homePageWrapper->getRecords(); $helper->checkRecords($homePageRecords, 'Nessun elemento in home page'); $sortedHomePageRecordsPerModuleCode = $helper->gatherReferenceIds($homePageWrapper->formatPerModuleCode($homePageRecords)); $helper->checkClassMapFromRecords($sortedHomePageRecordsPerModuleCode); $homePageElements = array(); foreach ($sortedHomePageRecordsPerModuleCode as $key => $value) { $obj = $helper->recoverClassMapKey($key); if (!empty($obj)) { /** * @var \ModelModule\Model\HomePage\HomePageBuilderAbstract $builder */ $builder = new $obj(); $builder->setEntityManager($em); $builder->setModuleRelatedRecords($value); $homePageElements[$key] = $builder->recoverHomePageElements(); } } } catch (NullException $e) { $logWriter = new LogWriter($em->getConnection()); $logWriter->writeLog(array('user_id' => 0, 'module_id' => ModulesContainer::contenuti_id, 'message' => "Errore visualizzazione home page", 'description' => $e->getMessage(), 'reference_id' => 0, 'type' => 'error', 'backend' => 0)); } $this->layout()->setVariables(array('configuraitions' => $configurations, 'homepage' => !empty($homePageElements) ? $homePageElements : null, 'templatePartial' => 'homepage/homepage.phtml')); $this->layout()->setTemplate($mainLayout); }
public function indexAction() { $mainLayout = $this->initializeAdminArea(); $em = $this->getServiceLocator()->get('doctrine.entitymanager.orm_default'); $configurations = $this->layout()->getVariable('configurations'); $lang = $this->layout()->getVariable('lang'); try { $helper = new HomePageHelper(); $homePageWrapper = $helper->recoverWrapper(new HomePageGetterWrapper(new HomePageGetter($em)), array('onlyActiveModules' => 1, 'orderBy' => 'homePageBlocks.position ASC', 'languageAbbreviation' => $lang)); $homePageRecords = $homePageWrapper->getRecords(); $helper->checkRecords($homePageRecords, 'Nessun elemento in home page'); $sortedHomePageRecordsPerModuleCode = $helper->gatherReferenceIds($homePageWrapper->formatPerModuleCode($homePageRecords)); $helper->checkClassMapFromRecords($sortedHomePageRecordsPerModuleCode); $homePageElements = array(); foreach ($sortedHomePageRecordsPerModuleCode as $key => $value) { $obj = $helper->recoverClassMapKey($key); /** * @var \ModelModule\Model\HomePage\HomePageBuilderAbstract $builder */ $builder = new $obj(); $builder->setEntityManager($em); $builder->setModuleRelatedRecords($value); $records = $builder->recoverHomePageElements($value); $i = 0; foreach ($records as &$record) { $record = array_merge($record, array('homepageId' => $value[$i]['homepageId'], 'languageId' => $value[$i]['languageId'], 'referenceId' => $value[$i]['referenceId'], 'moduleName' => $value[$i]['moduleName'], 'blockId' => $value[$i]['blockId'])); $i++; } $homePageElements[$key] = $records; } $this->layout()->setVariables(array('configurations' => $configurations, 'records' => !empty($homePageElements) ? $homePageElements : null, 'templatePartial' => 'homepage/homepage-manager.phtml')); } catch (\Exception $e) { $this->layout()->setVariables(array('messageType' => 'warning', 'messageTitle' => 'Problema verificato', 'messageText' => $e->getMessage(), 'templatePartial' => 'message.phtml')); } $this->layout()->setTemplate($mainLayout); }