public function editUserAction() { $this->view->postUrl = $this->getRequest()->getRequestUri(); $id = $this->_getParam('id'); $guid = $this->_getParam('guid'); $model1 = new Security_Model_User(); $model = $model1->fetchRow("id='{$id}' and row_guid='{$guid}'"); //$model = $model1->find($id); if (false === $model) { $this->_flashMessenger->addMessage(array('error' => 'Invalid request! Please try again.')); $this->_helper->_redirector->gotoUrl($this->view->seoUrl('/security/user/index')); } $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['phone'] = $model->getPhone(); $options['fax'] = $model->getFax(); $options['zip'] = $model->getZip(); $options['city'] = $model->getCity(); $options['state'] = $model->getState(); $options['address1'] = $model->getAddress1(); $options['address2'] = $model->getAddress2(); $options['organizationName'] = $model->getOrganizationName(); $options['groupId'] = $model->getGroupId(); $options['subGroupId'] = $model->getSubGroupId(); $options['roleId'] = $model->getRoleId(); $options['status'] = $model->getStatus(); $options['supervisorId'] = $model->getSupervisorId(); $this->view->username = $model->getUsername(); $request = $this->getRequest(); $form = new Security_Form_User(); $elements = $form->getElements(); $form->clearDecorators(); foreach ($elements as $element) { $element->removeDecorator('label'); //$element->removeDecorator('Errors'); } $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($this->view->postUrl)); } 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; }
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; }