public function changePasswordAction() { $request = $this->getRequest(); $form = new Security_Form_User(); $userM = new Security_Model_User(); $arrUser = $userM->getAllUsers(); $form->addElement('select', 'userId', array('label' => 'Username:'******'required' => true, 'validators' => array(array('NotEmpty', true, array('messages' => array('isEmpty' => 'Please select username.')))), 'decorators' => array('ViewHelper', array('Errors', array('class' => 'input-notification-ul-li error png_bg')), array(array('data' => 'HtmlTag'), array('tag' => 'td', 'class' => 'element')), array('Label', array('tag' => 'td')), array(array('row' => 'HtmlTag'), array('tag' => 'tr'))), 'filters' => array('StringTrim'), 'MultiOptions' => $arrUser)); $elements = $form->getElements(); $form->clearDecorators(); foreach ($elements as $element) { $element->removeDecorator('label'); //$element->removeDecorator('Errors'); if ($element->getName() != "password" && $element->getName() != "confirmPassword" && $element->getName() != "userId" && $element->getName() != "submit") { $form->removeElement($element->getName()); } } if ($request->isPost()) { $options = $request->getPost(); if ($form->isValid($options)) { // $usersNs = new Zend_Session_Namespace("members"); $user = new Security_Model_User(); $model = $user->find($options['userId']); $model->setPassword(md5($options['password'])); $model->save(); $this->_flashMessenger->addMessage(array('success' => 'Password has been changed successfully!')); $this->_helper->_redirector->gotoUrl($this->view->seoUrl('/security/user/change-password')); } else { $form->reset(); $form->populate($options); } } // Assign the form to the view $this->view->form = $form; }
public function editUserAction() { $id = $this->_getParam('id'); $this->view->user_id = $id; $model1 = new Security_Model_User(); $model = $model1->find($id); if (false === $model) { $this->_flashMessenger->addMessage(array('error' => 'Invalid request! Please try again.')); $this->_helper->_redirector->gotoUrl($this->view->seoUrl('/admin/user')); } $options['firstName'] = $model->getFirstName(); $options['middleName'] = $model->getMiddleName(); $options['lastName'] = $model->getLastName(); $options['email'] = $model->getEmail(); $options['dob'] = $model->getDob(); $options['sex'] = $model->getSex(); $options['mobile'] = $model->getMobile(); $options['groupId'] = $model->getGroupId(); $options['subGroupId'] = $model->getSubGroupId(); $options['roleId'] = $model->getRoleId(); $options['status'] = $model->getStatus(); $options['correspondenceAddress'] = $model->getCorrespondenceAddress(); $this->view->username = $model->getUsername(); $request = $this->getRequest(); $form = new Security_Form_User(); //remove fields do not need to display in Edit //$form->removeElement('employeeCode'); //$form->getElement('employeeCode')->setAttrib("readonly", "true"); $form->removeElement('username'); $form->removeElement('password'); $form->removeElement('confirmPassword'); $usersNs = new Zend_Session_Namespace("members"); if ($usersNs->userId == $id) { //$form->removeElement('groupId'); //$form->removeElement('subGroupId'); //$form->removeElement('roleId'); $form->removeElement('status'); } $modelP = new Base_Security_Privilege(); $arrSubgroup = $modelP->getSubGroupArray($model->getGroupId()); $form->getElement("subGroupId")->addMultiOptions($arrSubgroup); $form->populate($options); $arrUserRole = $modelP->getRoleArray($model->getSubGroupId()); $form->getElement("roleId")->addMultiOptions($arrUserRole); $form->populate($options); $options = $request->getPost(); if ($request->isPost()) { /*---- email validation ----*/ if ($options['email'] != $model->getEmail()) { $form->getElement('email')->addValidators(array(array('Db_NoRecordExists', false, array('table' => 'user', 'field' => 'email', 'messages' => 'Email already exists, Please choose another email address.')))); } /*-------------------------*/ $modelP = new Base_Security_Privilege(); $arrSubgroup = $modelP->getSubGroupArray($options['groupId']); $form->getElement("subGroupId")->addMultiOptions($arrSubgroup); $form->populate($options); $arrUserRole = $modelP->getRoleArray($options['subGroupId']); $form->getElement("roleId")->addMultiOptions($arrUserRole); if ($form->isValid($options)) { $model->setOptions($options); $model->save(); /*--------- Upload image START -------------------------*/ $model->uploadProfilePicture($id, $options); /*--------- Upload image END -------------------------*/ $this->_flashMessenger->addMessage(array('success' => 'User information has been updated successfully!')); $this->_helper->_redirector->gotoUrl($this->view->seoUrl('/security/user/edit-user/id/' . $id)); } else { $this->_flashMessenger->addMessage(array('error' => 'Unable to save the data. Please provide valid inputs and try again.')); $form->reset(); $form->populate($options); } } $this->view->profile_image = $model->getProfileImage(); $this->view->form = $form; }