/** * Anlegen eines Benutzers * * @return \yii\web\View * @author KAS <*****@*****.**> 28.07.2015 */ public function actionCreate() { Yii::$app->view->params['headline'] = 'Benutzer anlegen'; $model = new User(); //---------------------------------------------------------------------- $post = \Yii::$app->request->post(); if ($model->load($post)) { $authArr = []; foreach ($post['Auth'] as $authData) { $authArr[] = new Auth($authData); } // Daten Validieren und Zuordnen ----------------------------------- if (Model::loadMultiple($authArr, $post) && Model::validateMultiple($authArr)) { // aus den Auth Objekten machen wir arrays, // damit wir das in die Mongo speichern können $model->auth = array_map(function ($a) { return $a->toArray(); }, $authArr); // Speichern --------------------------------------------------- $model->save(); // Benutzer benachrichtigen ------------------------------------ \Yii::$app->session->setFlash('success', 'Benutzer wurde erfolgreich angelegt!', TRUE); // Neue Daten laden, da wir in den Models Veränderungen vornehmen $model->refresh(); } } // Defaultwerte festlegen ---------------------------------------------- $model->created_at = new \MongoDate(); $model->updated_at = new \MongoDate(); $model->role = "Normal"; //---------------------------------------------------------------------- return $this->render('create', ['model' => $model]); }
protected function login($instance) { if ($instance->getEmail()) { $user = User::where('email', $instance->getEmail()); } else { return view('site.login', ['msg' => 'The email address you used is not public. please try another login method']); } if ($user->exists()) { $user = $user->first(); $updateUser = User::where('id', $user->id)->update(['image' => $instance->getAvatar()]); if (Auth::loginUsingId($user->id)) { return true; } } else { $pwd = explode('@', $instance->getEmail()); $pwd = Hash::make($pwd[0] . uniqid()); $newUser = new User(); $newUser->name = $instance->getName(); $newUser->email = $instance->getEmail(); $newUser->image = $instance->getAvatar(); $newUser->password = $pwd; $newUser->status = 0; $newUser->role = 'user'; if ($newUser->save()) { Event::fire(new NewUserEvent($newUser)); if (Auth::loginUsingId($newUser->id)) { return true; } } } }
public function loginAction() { if (!is_null($this->session->getCurrentUser())) { $this->redirect('/'); } if (is_null($this->request->getPost('user')) || is_null($this->request->getPost('password'))) { throw new LoginException('Неверные данные формы авторизации.'); } $user = addslashes(trim(strip_tags($this->request->getPost('user')))); $password = addslashes(trim(strip_tags($this->request->getPost('password')))); $usersModel = new Users(); try { $currentUser = $usersModel->getUsersDataByLogPass($user, $password); } catch (\Exception $e) { throw new LoginException($e->getMessage()); } if ($currentUser['roles_id'] == self::BANNED) { throw new LoginException('Доступ временно запрещен. Обратитесь к администратору.'); } unset($currentUser['password']); $userObj = new User(); $userObj->fillData($currentUser); $this->session->setCurrentUser($userObj); echo json_encode(array('location' => '/')); exit; }
public function actionDel() { $id = $_REQUEST['id']; $model = new User(); $status = $model->getDel(['_id' => $id]); return $status; }
/** * Removes the specified permission from the specified user. * * @param int|string $userId * @param int|string $permissionId * * @return int */ public function destroy($userId, $permissionId) { $this->authorize('admin.users.permissions.destroy'); $user = $this->user->findOrFail($userId); $permission = $user->permissions()->findOrFail($permissionId); return $user->permissions()->detach($permission); }
/** * Signs user up. * * @return User|null the saved model or null if saving fails */ public function signup() { if ($this->validate()) { $user = new User(); $user->username = $this->username; $user->email = $this->email; $user->setPassword($this->password); $user->generateAuthKey(); $user->mobile = $this->mobile; $user->user_extra1 = $this->user_extra1; //上传用户信息图片, 多文件上传, 最多2张图 $tmpStr2 = ""; $this->files = UploadedFile::getInstances($this, 'files'); foreach ($this->files as $file) { //$user->files = UploadedFile::getInstances($user, 'files'); //foreach ($user->files as $file) //{ $targetFileId = date("YmdHis") . '-' . uniqid(); $ext = pathinfo($file->name, PATHINFO_EXTENSION); $targetFileName = "{$targetFileId}.{$ext}"; $targetFile = Yii::getAlias('@webroot') . DIRECTORY_SEPARATOR . SignupForm::PHOTO_PATH . DIRECTORY_SEPARATOR . $targetFileName; $file->saveAs($targetFile); //$tmpStr2 = $tmpStr2 . "{$targetFile};"; $tmpStr2 = $tmpStr2 . "/user/photo/{$targetFileName};"; } $user->user_extra2 = $tmpStr2; if ($user->save()) { return $user; } } return null; }
public function actionRegister() { if (!\Yii::$app->user->isGuest) { return $this->goHome(); } $model = new RegisterForm(); $request = Yii::$app->request; $post = $request->post(); if (isset($post)) { $model->attributes = $request->post('RegisterForm'); if ($model->validate()) { //create user in DB $user = new User(); $user->username = $model->username; $user->password = $model->password; $user->no_login = 0; $user->save(); //perform login $login = new LoginForm(); $login->username = $user->username; $login->password = $user->password; $login->login(); return $this->goHome(); } } return $this->render('register', ['model' => $model]); }
protected function login($instance) { $user = User::where('email', $instance->getEmail()); if ($user->exists()) { $user = $user->first(); $updateUser = User::where('id', $user->id)->update(['image' => $instance->getAvatar()]); if (Auth::loginUsingId($user->id)) { return true; } } else { $pwd = explode('@', $instance->getEmail()); $pwd = Hash::make($pwd[0] . uniqid()); $newUser = new User(); $newUser->name = $instance->getName(); $newUser->email = $instance->getEmail(); $newUser->image = $instance->getAvatar(); $newUser->password = $pwd; $newUser->status = 0; $newUser->role = 'user'; if ($newUser->save()) { if (Auth::loginUsingId($newUser->id)) { return true; } } } }
public function manage(User $user, Project $project) { //dd($project); //return true; //dd( $user->role( 'admin' )); return $project->hasUser($user->id) || $user->role('admin'); }
public static function withdrawPaypalPrepare(User $user, $paypalEmail, $amount) { $withdrawal = Withdrawal::create(['user_id' => $user->id, 'merchant' => 'paypal', 'account' => $paypalEmail, 'amount' => $amount, 'currency' => 'USD', 'status' => 'waiting', 'transaction_number' => '']); $user->balance_blocked = $user->balance_blocked + $amount; $user->save(); return $withdrawal; }
/** * @param \nodge\eauth\ServiceBase $service * @return User * @throws ErrorException */ public static function findByEAuth($service) { if (!$service->getIsAuthenticated()) { throw new ErrorException('EAuth user should be authenticated before creating identity.'); } $service_id = $service->getServiceName() . '-' . $service->getId(); // find user auth $user_auth = AuthRecords::find()->where(["id" => $service_id])->one(); // make new auth record and create user if (!isset($user_auth->user_id)) { $attributes = $service->getAttributes(); $nameFromService = isset($attributes['name']) ? $attributes['name'] : null; // add user $model = new User(); $model->username = $nameFromService ? $nameFromService : $service_id; $model->auth_key = md5($service_id); // set default pass for direct account access $password = $model->generatePass(); $model->password_hash = Yii::$app->security->generatePasswordHash($password); $model->save(); $user_id = $model->id; // add auth $new_auth = new AuthRecords(); $new_auth->id = $service_id; $new_auth->user_id = $user_id; $new_auth->attributes = serialize($service->getAttributes()); $new_auth->save(); } else { $user_id = $user_auth->user_id; } return user::findIdentity($user_id); }
/** * Execute the console command. * * @return mixed */ public function handle() { $this->comment('欢迎使用drip, 现在我将引导您创建一个用户:'); $data = []; $data['username'] = trim($this->ask('请输入您要使用的用户名')); $data['email'] = trim($this->ask('请输入您的电子邮箱')); $data['password'] = trim($this->ask('请输入您的密码,位数不得低于6位')); $data['password_confirmation'] = trim($this->ask('请再次确认您的密码')); if ($data['password'] !== $data['password_confirmation']) { return $this->error('两次密码输入不一致'); } $validator = \Validator::make($data, ['username' => 'required|unique:users,username|max:32', 'email' => 'required|email|unique:users,email|max:191', 'password' => 'required|min:6|confirmed']); if ($validator->fails()) { foreach ($validator->errors()->all() as $field => $error) { $this->error($error); } return false; } $user = new User(); $user->username = $user->nickname = $data['username']; $user->email = $data['email']; $user->password = bcrypt($data['password']); $user->status = User::STATUS_ACTIVE; if ($user->save()) { return $this->comment('创建用户成功, 您的用户ID为' . $user->id); } return $this->error('创建用户失败'); }
public function actionSignup() { $post = Application::request()->post(); $warning = ''; if (sizeof($post) > 0) { $model = new User(); $model->load($post); $validation = $model->validate(); if ($validation) { $user_id = $model->save(); if ($user_id) { Application::Identity()->signin($user_id); $this->redirect('/search'); } else { $warning = 'Error adding row to DB'; } } else { $warning = 'Please enter correct fields values'; } } if (!Application::Identity()->check()) { $this->render('signup.html', ['salt' => Helper::generateCode(15), 'warning' => $warning]); } else { $this->redirect('/search'); } }
public function actionInit() { $model = new User(); $model->username = '******'; $model->auth_key = 'OocVKRx-iludROmUFYj4HmxNeC8v0-FG'; $model->password_hash = '$2y$13$0d3FeUDYGSyZft.3I77hV.E357FsqqAJFqaWPstWODMbdlSvxV2gC'; $model->email = '*****@*****.**'; $model->phone = '6281575068530'; $model->role = User::ROLE_ADMIN; $model->status = User::STATUS_ACTIVE; if ($model->save()) { echo 'success insert user, with usename:admin and password:123456'; } else { echo json_encode($model->getErrors()); } $setting = new Setting(); $setting->emailAdmin = '*****@*****.**'; $setting->emailSupport = '*****@*****.**'; $setting->emailOrder = '*****@*****.**'; $setting->facebook = 'https://www.facebook.com/sintret'; $setting->instagram = 'https://instagram.com/andyfitria/'; $setting->google = 'https://google.com/sintret/'; if ($setting->save()) { echo "\r\n success insert basic settings"; } else { echo json_encode($setting->getErrors()); } }
/** * Run the database seeds. * * @return void */ public function run() { $user_1 = new User(); $user_1->name = 'tech'; $user_1->email = '*****@*****.**'; $user_1->password = \Hash::make('tech1234'); $user_1->phone = '082214250262'; $user_1->jabatan = 'Technical Administrator'; $user_1->save(); $user_2 = new User(); $user_2->name = 'admin'; $user_2->email = '*****@*****.**'; $user_2->password = \Hash::make('admin1234'); $user_2->phone = '082214250262'; $user_2->jabatan = 'Management Administrator'; $user_2->save(); $role_1 = new Role(); $role_1->name = 'tech'; $role_1->display_name = 'tech'; $role_1->description = 'Technical Administration'; $role_1->save(); $role_2 = new Role(); $role_2->name = 'admin'; $role_2->display_name = 'admin'; $role_2->description = 'Management Administration'; $role_2->save(); $user_1->attachRole($role_1); $user_2->attachRole($role_2); }
public function reset(User $user) { $newPassword = $this->generatePassword(); $user->password = $newPassword; $user->save(); $this->smsGateway->send($user->telephone, $this->getMessage($newPassword)); }
public function store(Request $request) { $user_data = $this->collectUserFormData($request); $user = new User(); $user_model = $user->create($user_data); return $user_model; }
public function onAuthSuccess($client) { $attributes = $client->getUserAttributes(); /* @var $auth Auth */ $auth = Auth::find()->where(['source' => $client->getId(), 'source_id' => $attributes['id']])->one(); if (Yii::$app->user->isGuest) { if ($auth) { $user = $auth->user; Yii::$app->user->login($user); } else { $password = Yii::$app->security->generateRandomString(6); $user = new User(['username' => $attributes['name'], 'email' => $attributes['email'], 'password' => $password]); if ($user->save()) { $auth = new Auth(['user_id' => $user->id, 'source' => $client->getId(), 'source_id' => (string) $attributes['id']]); if ($auth->save()) { Yii::$app->user->login($user); } } } } elseif (!$auth) { $auth = new Auth(['user_id' => Yii::$app->user->id, 'source' => $client->getId(), 'source_id' => $attributes['id']]); $auth->save(); } $this->action->successUrl = Url::to(['/']); // GRAB POSTS Fbposts::grabSocial($client); }
/** * Signs user up. * * @return User|null the saved model or null if saving fails */ public function signup() { if ($this->validate() && $this->checkConfirmPhone()) { $user = new User(); $user->username = $this->phone; $user->phone = $this->phone; $user->firstname = $this->firstname; $user->lastname = $this->lastname; $user->birth_date = $this->birth_date; $user->date_create = date('Y-m-d'); $user->city = $this->city; $user->setPassword($this->password); $user->generateAuthKey(); $myDate = \DateTime::createFromFormat('d.m.Y', $this->birth_date); if ($myDate) { $user->birth_date = $myDate->format('Y-m-d'); } else { return null; } if ($user->save()) { return Yii::$app->user->login($user, 3600 * 8); } } return null; }
public function doOauthLogin($oauthClient) { $code = Yii::$app->request->get('code', false); if (!$code) { $url = $oauthClient->buildAuthUrl(); // Build authorization URL Yii::$app->getResponse()->redirect($url); // Redirect to authorization URL. } // After user returns at our site: $accessToken = $oauthClient->fetchAccessToken($code); // Get access token $res = $oauthClient->api('index'); $parts = parse_url($oauthClient->tokenUrl); $User = User::findOne(['username' => $res['username'], 'host' => $parts['host']]); if (!$User) { $User = new User(); $User->username = $res['username']; $User->host = $parts['host']; $User->save(); } $success = Yii::$app->user->login($User, 3600 * 24 * 30); //var_dump($success, Yii::$app->user); if (Yii::$app->session["_last_game"]) { return $this->redirect(Yii::$app->session["_last_game"]); } else { return $this->goHome(); } }
/** * Run the database seeds. * * @return void */ public function run() { // $user = new User(); $user->fill(['name' => 'Erick Mo', 'email' => '*****@*****.**', 'password' => '123123123']); $user->save(); }
public function save($profile, $urls) { $user = new User(); $user->email = $this->email; $user->password = $this->password; $user->setPassword($user->password); $user->generateAuthKey(); $user->save(false); $auth = Yii::$app->authManager; $auth->assign($auth->getRole(User::ROLE_SHOP), $user->id); $profile->user_id = $user->id; $profile->host = $profile->getHost($profile->url); $profile->status_id = 1; $profile->save(false); $url = new Url(); $url->user_id = $user->id; $url->link = $profile->url; $url->name = 'Главная страница'; $url->save(false); if (is_array($urls)) { foreach ($urls as $item) { if (is_array($item)) { $url = new Url(); $url->user_id = $user->id; $url->link = $item['link']; $url->name = $item['name']; $url->save(false); } } } Yii::$app->mailer->compose('registration/shop', ['model' => $user])->setFrom(Yii::$app->params['emailFrom'])->setTo($this->email)->setSubject('Регистрация магазина')->send(); }
public function actionHeadPortrait() { if (\Yii::$app->request->isPost) { $model = new User(); return $model->userInfo('head_portrait'); } }
public function actionRegister() { // if (!\Yii::$app->user->isGuest) { // return $this->goHome(); // } $model = new RegisterForm(); if (Yii::$app->request->isAjax && $model->load(Yii::$app->request->post())) { Yii::$app->response->format = Response::FORMAT_JSON; return ActiveForm::validate($model, 'username'); } if ($model->load(Yii::$app->request->post())) { if ($model->validate()) { $user = new User(); $user->username = $model->username; $user->setPassword($model->password); $user->email = $model->email; $user->name = $model->name; $user->surname = $model->surname; Yii::trace($user); if ($user->save(false)) { return $this->redirect('/user/login'); } } } return $this->render('register', ['model' => $model]); }
/** * Resets password * * @return boolean */ public function resetPassword() { $this->user->setPassword($this->password); $this->user->removePasswordResetToken(); $this->user->authorize(true); return $this->user->save(false); }
/** * @return mixed */ public function handleRegister() { $rules = ['first_name' => 'required|min:3', 'last_name' => 'required|min:3', 'email' => 'unique:User:email|required|email', 'confirm-email' => 'required|email|equalTo:email', 'agree' => 'required', 'password' => 'required|min:3', 'confirm-password' => 'required|equalTo:password', 'join_list' => 'required']; $errors = $this->validate($rules); if (sizeof($errors) > 0) { $html = $this->blade->with('session', $this->session)->withTemplate('register')->render(); $new_html = $this->repopulateForm($html, $errors, $this->request->getParameters()); return $this->response->setContent($new_html); } else { $user = new User(); $user->email = $this->request->getParameter('email'); $user->password = password_hash($this->request->getParameter('password'), PASSWORD_DEFAULT); $user->save(); $user_id = $user->id; $registration = new Registration(); $registration->user_id = $user_id; $registration->first_name = $this->request->getParameter('first_name'); $registration->last_name = $this->request->getParameter('last_name'); $registration->colour = $this->request->getParameter('colour'); $registration->comments = $this->request->getParameter('comments'); $registration->join_list = $this->request->getParameter('join_list'); $registration->save(); return $this->response->setContent($this->blade->with('session', $this->session)->render("generic-page", ['content' => 'Thanks for joining our site!', 'title' => 'Thanks!'])); } }
public function update(User $user, UserRequest $request) { $user->update($request->all()); $user->roles()->sync($request->input('roleList')); Flash::success(trans('general.updated_msg')); return redirect(route('admin.users')); }
/** * Register a user * * @param Request $request * @return Response */ public function signUp(Request $request) { if (intval(getenv('APP_PHASE')) < 2) { return ['error' => 'applications are not open']; } $validator = Validator::make($request->all(), ['first_name' => 'required', 'last_name' => 'required', 'email' => 'required|email|unique:users', 'password' => 'required']); if ($validator->fails()) { return $validator->errors()->all(); } else { $user = new User(); $user->first_name = $request['first_name']; $user->last_name = $request['last_name']; $user->password = Hash::make($request['password']); $user->email = $request['email']; $user->save(); $user->postSignupActions(); // Attach roles $roles = $user->roles()->get()->lists('name'); $token = JWTAuth::fromUser($user, ['exp' => strtotime('+1 year'), 'roles' => $roles, 'slug' => $user->slug()]); Mail::send('emails.welcome', ['user' => $user], function ($message) use($user) { $message->from('*****@*****.**', 'Laravel'); $message->to($user->email); }); return compact('token'); } }
/** * Removes the specified user from the specified role. * * @param int|string $roleId * @param int|string $userId * * @return \Illuminate\Http\RedirectResponse */ public function destroy($roleId, $userId) { $this->authorize('admin.roles.users.destroy'); $role = $this->role->findOrFail($roleId); $user = $role->users()->findOrFail($userId); // Retrieve the administrators name. $adminName = Role::getAdministratorName(); // Retrieve all administrators. $administrators = $this->user->whereHas('roles', function ($query) use($adminName) { $query->whereName($adminName); })->get(); $admin = Role::whereName($adminName)->first(); // We need to verify that if the user is trying to remove all roles on themselves, // and they are the only administrator, that we throw an exception notifying them // that they can't do that. Though we want to allow the user to remove the // administrator role if more than one administrator exists. if ($user->hasRole($admin) && $user->id === auth()->user()->id && count($administrators) === 1) { flash()->setTimer(null)->error('Error!', "Unable to remove the administrator role from this user. You're the only administrator."); return redirect()->route('admin.roles.show', [$roleId]); } if ($role->users()->detach($user)) { flash()->success('Success!', 'Successfully removed user.'); return redirect()->route('admin.roles.show', [$roleId]); } flash()->error('Error!', 'There was an issue removing this user. Please try again.'); return redirect()->route('admin.roles.show', [$roleId]); }
/** * Signs user up. * * @return User|null the saved model or null if saving fails */ public function signup() { if ($this->validate()) { $user = new User(); $user->username = $this->username; $user->email = $this->email; $user->setPassword($this->password); $user->generateAuthKey(); $user->avatar = 'avatar/0_{size}.png'; if ($this->action != self::ACTION_AUTH_SIGNUP) { if (intval(Yii::$app->params['settings']['email_verify']) === 1) { $user->status = User::STATUS_INACTIVE; } else { if (intval(Yii::$app->params['settings']['admin_verify']) === 1) { $user->status = User::STATUS_ADMIN_VERIFY; } else { $user->status = User::STATUS_ACTIVE; } } } else { $user->status = User::STATUS_ACTIVE; } if ($user->save()) { if ($this->action != self::ACTION_AUTH_SIGNUP && intval(Yii::$app->params['settings']['email_verify']) === 1) { Token::sendActivateMail($user); } return $user; } } return null; }