function postUpdateUser($id = 0, &$data) { // check validate $validate = Validator::make(Input::all(), User::getUpdateUserRules(), User::getUpdateUserLangs()); $flag = $this->checkValidatePass($this->data); if ($validate->passes() && $flag == TRUE) { $username = Input::get('username'); $password = Input::get('re-password'); $groupID = (int) Input::get('role'); $firstName = Input::get('first_name'); $lastName = Input::get('last_name'); $activated = Input::get('status'); $email = Input::get('email'); $address = Input::get('address'); $country = Input::get('country'); $phone = Input::get('phone'); $contact_phone = Input::get('contact_phone'); if ($id == 0) { // INSERT try { $user = Sentry::createUser(array('username' => $username, 'password' => $password, 'first_name' => $firstName, 'last_name' => $lastName, 'email' => $email, 'activated' => TRUE, 'address' => $address, 'country_id' => $country, 'phone' => $phone, 'phone_contact' => $contact_phone)); if ($groupID != 0 && is_numeric($groupID)) { $groupItem = Sentry::findGroupById($groupID); $permissions = $groupItem->getPermissions(); $user->addGroup($groupItem); $user->permissions = $permissions; $user->save(); } $data['id'] = $user->id; return TRUE; } catch (\Cartalyst\Sentry\Users\UserExistsException $e) { $data['message'] = 'Login name already exists. Please enter the log in different'; } } else { // UPDATE try { $userData = Sentry::findUserById($id); $userData->username = $username; if ($password != "") { $userData->password = $password; } $userData->email = $email; $userData->first_name = $firstName; $userData->last_name = $lastName; $userData->activated = $activated; $userData->address = $address; $userData->country_id = $country; $userData->phone = $phone; $userData->phone_contact = $contact_phone; if ($groupID != 0 && is_numeric($groupID)) { $groupItem = Sentry::findGroupById($groupID); $permissions = $groupItem->getPermissions(); $userData->addGroup($groupItem); $userData->permissions = $permissions; } if ($userData->save()) { $data['id'] = $userData->id; return TRUE; } } catch (\Cartalyst\Sentry\Users\WrongPasswordException $e) { $data['message'] = "Passwords do not exactly"; } } } else { $data['validate'] = $validate->messages(); } return FALSE; }
public function myProfile($idu = '') { $currentUser = $this->user; $this->data['item'] = $currentUser; $id = $currentUser->id; //get list country $countryModel = new CountryBaseModel(); $this->data['itemCountry'] = $countryModel->getAll(); if (Request::isMethod('post')) { // check validate $validate = Validator::make(Input::all(), User::getUpdateUserRules(), User::getUpdateUserLangs()); $flag = $this->checkValidatePass($this->data); if ($validate->passes() && $flag == TRUE) { $username = Input::get('username'); $password = Input::get('re-password'); $firstName = Input::get('first_name'); $lastName = Input::get('last_name'); $email = Input::get('email'); $address = Input::get('address'); $country = Input::get('country'); $phone = Input::get('phone'); $contact_phone = Input::get('contact_phone'); try { $userData = Sentry::findUserById($id); $userData->username = $username; if ($password != "") { $userData->password = $password; } $userData->email = $email; $userData->first_name = $firstName; $userData->last_name = $lastName; $userData->address = $address; $userData->country_id = $country; $userData->phone = $phone; $userData->phone_contact = $contact_phone; if ($userData->save()) { $data['id'] = $userData->id; $messages = trans("backend::publisher/text.update_success"); Session::flash('mess', $messages); if ($idu != 0) { $url = Route('ToolAdvertiserManagerShowUpdate', $id); } else { $url = Route('ToolAdvertiserManagerProfile'); } return Redirect::to($url); } } catch (\Cartalyst\Sentry\Users\WrongPasswordException $e) { $this->data['message'] = "Passwords do not exactly"; } } else { $this->data['validate'] = $validate->messages(); } } $this->layout->content = View::make('myProfile', $this->data); }