コード例 #1
0
ファイル: UserController.php プロジェクト: knatorski/SMS
 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();
 }
コード例 #2
0
ファイル: FilterController.php プロジェクト: knatorski/SMS
 public function shareAction()
 {
     $request = $this->getRequest();
     $id = $request->getParam('id');
     $id = $this->_helper->IdConvert->hexToStr($id);
     $logic = new Logic_Filter();
     $form = new Logic_Filter_Form_Roles();
     if ($request->isPost()) {
         if ($form->isCancelled($this->getRequest()->getPost())) {
             $this->_helper->redirector('index', null, null);
             return;
         } elseif ($form->isValid($request->getPost())) {
             try {
                 $logic->shareFilter($form, $id);
                 $this->_helper->messenger("success", 'Successfully edited roles having access to the filter.');
                 $this->_helper->redirector('index');
                 return;
             } catch (Logic_User_Exception $e) {
                 $this->_helper->messenger('error', MSG_ERROR, $e);
             }
         }
     } else {
         $defaults = $logic->getRolesForFilter($id);
         $form->setDefaults($defaults);
     }
     $this->view->form = $form;
 }