/** * Ensure that SearchForm selection remains populated. */ public function SearchForm() { $form = parent::SearchForm(); $query = $this->request->getVar('q'); if ($query && isset($query['Status'])) { $form->loadDataFrom(array('q' => array('Status' => implode(',', $query['Status'])))); } return $form; }
/** * Update the SearchForm to use dropdown fields for MessageType/Status filters * @return Form **/ public function SearchForm() { $form = parent::SearchForm(); $fields = $form->Fields(); $q = $this->getRequest()->requestVar('q'); $fields->removeByName('q[MessageType]'); $fields->push(DropdownField::create('q[MessageType]', 'Message Type', ArrayLib::valuekey(Config::inst()->get('TimedNotice', 'message_types')), isset($q['MessageType']) ? $q['MessageType'] : null)->setEmptyString(' ')); $fields->push(DropdownField::create('q[Status]', 'Status', ArrayLib::valuekey(Config::inst()->get('TimedNotice', 'status_options')), isset($q['Status']) ? $q['Status'] : null)->setEmptyString(' ')); return $form; }