Beispiel #1
0
 public function UpdateProfile(Profile $profile)
 {
     $data = $profile->GetArrayCopy();
     //
     //  Remove any null values and unset the username just in case
     //
     foreach ($data as $key => $datum) {
         if (is_null($datum)) {
             unset($data[$key]);
         }
     }
     if (isset($data['username'])) {
         unset($data['username']);
     }
     $this->tableGateway->update($data, array('id' => $profile->id));
 }
 public function editAction()
 {
     $request = $this->getRequest();
     if ($request->isPost()) {
         $profile = new Profile();
         $profileForm = new ProfileForm();
         $profileForm->setInputFilter($profile->getInputFilter());
         if ($request->getPost('new_password') === $request->getPost('confirm_password')) {
             $postData = $request->getPost();
             $postData['new_pasword'] = sha1($postData['new_password']);
             $profileForm->setData($postData);
             if ($profileForm->isValid()) {
                 $profile->ExchangeArray($profileForm->getData());
                 $this->GetProfileModel()->UpdateProfile($profile);
                 return new JsonModel(array('success' => true, 'id' => $profile->id, 'username' => $profile->username, 'id_default_role' => $profile->id_default_role));
             } else {
                 return new JsonModel(array('success' => false, 'message' => $profileForm->getMessages()));
             }
         }
         return new JsonModel(array('success' => false, 'message' => 'Password and Password Confirmation do not match'));
     }
 }