public function searchAction() { $request = $this->getRequest(); $form = new Logic_User_Form_Search(); $form->getDecorator('Htmltag')->setOption('id', 'search_form'); $form->enableAddFilter(); $searchObj = new Logic_User_Search(new User(), 1); if ($request->isPost()) { if ($form->isCancelled($this->getRequest()->getPost())) { $this->_helper->redirector('index'); return; } else { $values = $request->getPost(); if ($form->isValid($values)) { if (!is_null($values['search'])) { $searchObj->saveFilterData($form->getValues()); } else { if (!is_null($values['addfilter'])) { $subForm = $form; unset($values['addfilter']); $filter['filters'] = serialize($values); if ($request->getParam('module') == 'marketingcampaign') { $filter['form_name'] = 'Logic_Marketingcampaign_Form_AssignUser'; } else { $filter['form_name'] = get_class($subForm); } $form = new Logic_Filter_Form_Generic(); $form->setDefaults($filter); } } } } } else { if ($filter_id = $request->getParam('filter')) { $filter_id = $this->_helper->IdConvert->hexToStr($filter_id); $filter = new Logic_Filter(); $tmp = $filter->useFilter($filter_id); $values = $tmp['Logic_User_Form_Search']; $form->setDefaults($this->_helper->FilterForm($form)); $searchObj->saveFilterData($values); } } if ($request->getParam('module') == 'marketingcampaign') { $this->view->filters = $form->getFilters("Logic_Marketingcampaign_Form_AssignUser"); } else { $this->view->filters = $form->getFilters(); } // $form->setDefaults($this->_helper->FilterForm($form)); $this->view->headers = $searchObj->getHeaders(); $this->view->form = $form; $this->view->paginator = $searchObj->paginator(); }
/** * addAction() - dodawanie nowego filtra * */ public function addAction() { $request = $this->getRequest(); $filtr = new Logic_Filter(); $form = new Logic_Filter_Form_Generic(); if ($request->isPost()) { if ($form->isCancelled($request->getPost())) { $this->_helper->redirector('index', null, null); return; } elseif (($defaults = $request->getParam('filter', null)) !== null) { $form->setDefaults($defaults); } elseif ($form->isValid($request->getPost())) { try { $filtr->createFilter($form); $this->_helper->messenger("success", 'Filter was successfully added.'); $this->_helper->redirector('index'); return; } catch (Logic_Kontakt_Exception $e) { $this->_helper->messenger('error', MSG_ERROR, $e); } } } $this->view->form = $form; }