/** * Get member admin by role ID * * @param int $id * @return void */ public function getByRoleId($id) { $member = Table\Members::findBy(['role_id' => $id]); if (isset($member->id)) { $this->data = array_merge($this->data, $member->getColumns()); } }
/** * Add action method * * @return void */ public function add() { $this->prepareView('members/admin/add.phtml'); $this->view->title = 'Members Admin : Add'; $fields = $this->application->config()['forms']['Phire\\Members\\Form\\MembersAdmin']; $roles = \Phire\Table\Roles::findAll(); foreach ($roles->rows() as $role) { $dupe = Table\Members::findBy(['role_id' => $role->id]); if (!isset($dupe->id)) { $fields[0]['role_id']['value'][$role->id] = $role->name; } } $fields[1]['name']['attributes']['onkeyup'] = "phire.createSlug('/' + this.value, '#uri');"; $this->view->form = new Form\MembersAdmin($fields); if ($this->request->isPost()) { $this->view->form->addFilter('htmlentities', [ENT_QUOTES, 'UTF-8'])->setFieldValues($this->request->getPost()); if ($this->view->form->isValid()) { $this->view->form->clearFilters()->addFilter('html_entity_decode', [ENT_QUOTES, 'UTF-8'])->filter(); $member = new Model\MembersAdmin(); $member->save($this->view->form->getFields()); $this->view->id = $member->id; $this->sess->setRequestValue('saved', true); $this->redirect(BASE_PATH . APP_URI . '/members/edit/' . $member->id); } } $this->send(); }