public function indexAction() { $mainLayout = $this->initializeAdminArea(); $id = $this->params()->fromRoute('id'); $lang = $this->params()->fromRoute('lang'); $languageSelection = $this->params()->fromRoute('languageSelection'); $modulename = $this->params()->fromRoute('modulename'); $modulenameLabel = str_replace('-', ' ', $modulename); $em = $this->getServiceLocator()->get('doctrine.entitymanager.orm_default'); $helper = new SezioniControllerHelper(); $recordFromDb = $helper->recoverWrapperRecordsById(new SezioniGetterWrapper(new SezioniGetter($em)), array('id' => $id, 'limit' => 1), $id); $helper->setLanguagesGetterWrapper(new LanguagesGetterWrapper(new LanguagesGetter($em))); $languagesRecordsForDropdown = $helper->formatForDropwdown($helper->recoverWrapperRecords($helper->getLanguagesGetterWrapper(), array('status' => 1)), 'id', 'name'); $form = new SezioniForm(); $form->addIconImage(); $form->addLingue($languagesRecordsForDropdown); $form->addOptions(); // $form->addModule(); $form->addBlocco(); if (!empty($recordFromDb)) { $form->setData($recordFromDb[0]); $submitButtonValue = 'Modifica'; $formTitle = $recordFromDb[0]['nome']; $formAction = $this->url()->fromRoute('admin/sezioni-update', array('lang' => $lang, 'languageSelection' => $languageSelection, 'modulename' => $modulename)); } else { $form->setData(array('posizione' => 1, 'lingua' => 1, 'isAmmTrasparente' => $modulename != 'contenuti' ? 1 : 0)); $formTitle = 'Nuova sezione'; $submitButtonValue = 'Inserisci'; $formAction = $this->url()->fromRoute('admin/sezioni-insert', array('lang' => $lang, 'languageSelection' => $languageSelection, 'modulename' => $modulename)); } $this->layout()->setVariables(array('form' => $form, 'formAction' => $formAction, 'formTitle' => $formTitle, 'formDescription' => 'Le sezioni rappresentano i blocchi principali sui quali costruire le basi degli articoli. <strong>ATTENZIONE:</strong> se non sono presenti sottosezioni e\\o relativi articoli, le sezioni non saranno visibili sul sito pubblico.', 'submitButtonValue' => $submitButtonValue, 'formBreadCrumbCategory' => array(array('href' => '#', 'label' => ucfirst($modulenameLabel), 'title' => 'Elenco ' . $modulename), array('href' => $this->url()->fromRoute('admin/sezioni-summary', array('lang' => $lang, 'languageSelection' => $languageSelection, 'modulename' => $modulename)), 'label' => 'Sezioni', 'title' => 'Sezioni ' . $modulenameLabel)), 'templatePartial' => self::formTemplate)); $this->layout()->setTemplate($mainLayout); }
/** * @param $formDataSample * @return SezioniForm */ protected function setupForm($formDataSample) { $form = new SezioniForm(); $form->addLingue(array('it' => 'Italiano', 'en' => 'English')); $form->addIconImage(); $form->addOptions(); $inputFilter = new SezioniFormInputFilter(); $form->setInputFilter($inputFilter->getInputFilter()); $form->setData($formDataSample); return $form; }
/** * Load data fixtures with the passed EntityManager * * @param ObjectManager $manager */ public function load(ObjectManager $manager) { $form = new SezioniForm(); $form->addOptions(); $form->addLingue(array('it' => 'Italian', 'en' => 'English')); $form->addIconImage(); $form->setData(array('titolo' => 'My Content Title', 'sommario' => 'My Content SubTitle', 'testo' => 'My Large Text', 'sottosezione' => 1, 'dataInserimento' => '2015-05-28 01:01:00', 'dataScadenza' => '2015-05-28 01:01:00', 'attivo' => 1, 'home' => 1, 'rss' => 1, 'utente' => 1, 'id' => 1)); $inputFilter = new ContenutiFormInputFilter(); $form->setInputFilter($inputFilter); if ($form->isValid()) { $inputFilter->exchangeArray($form->getData()); $helper = new SezioniControllerHelper(); $helper->setEntityManager($this->recoverEntityManager()); $helper->setConnection($this->recoverConnection()); $helper->insert($inputFilter); } }