コード例 #1
0
ファイル: AuthController.php プロジェクト: everdaniel/LaraBin
 public function resetPost(Requests\Auth\ResetPassword $request, AppMailer $mailer)
 {
     $email = $request->input('email');
     $user = User::where('email', $email)->first();
     if (!$user) {
         session()->flash('error', 'No account found with that email!');
         return redirect()->back()->withInput();
     }
     if (!$user->verified()) {
         session()->flash('error', 'You must confirm your email before resetting your password!');
         return redirect()->route('home');
     }
     if (!$user->passwordReset) {
         $reset = $user->passwordReset()->create(['token' => str_random(30), 'created_at' => Carbon::now()]);
         $mailer->sendPasswordResetTo($reset->user);
         session()->flash('success', 'Password reset email has been sent!');
         return redirect()->route('home');
     }
     if ($user->passwordReset->created_at > Carbon::now()->subMinutes(15)) {
         session()->flash('error', 'You must wait ' . $user->passwordReset->created_at->addMinutes(15)->diffForHumans() . ' before requesting a new reset email!');
         return redirect()->back()->withInput();
     }
     $user->passwordReset()->update(['token' => str_random(30), 'created_at' => Carbon::now()]);
     $mailer->sendPasswordResetTo($user);
     session()->flash('success', 'Password reset email has been resent!');
     return redirect()->route('home');
 }
コード例 #2
0
ファイル: UserController.php プロジェクト: bbashy/LaraBin
 public function show($username)
 {
     $user = User::where('username', $username)->first();
     if (!$user) {
         session()->flash('error', 'We cannot find a user with the username of [ <b>' . $username . '</b> ] Sorry.');
         return redirect()->route('home');
     }
     $bins = Bin::publicOnly()->where('user_id', $user->id)->orderBy('updated_at', 'DESC')->paginate(8);
     return view('user.show', compact('user', 'bins'));
 }
コード例 #3
0
ファイル: GithubController.php プロジェクト: bbashy/LaraBin
 private static function usernameCheck($nickname)
 {
     $cleaned = preg_replace('/[a-zA-Z0-9_]/', '', $nickname);
     $found = true;
     $count = 1;
     $cleanName = $cleaned;
     while ($found == true) {
         $addName = $count == 1 ? $nickname : $nickname . $count;
         $data = User::where('username', $addName)->first();
         $count++;
         if (!$data) {
             $cleanName = $addName;
             $found = false;
         }
     }
     return $cleanName;
 }
コード例 #4
0
ファイル: UserController.php プロジェクト: bbashy/LaraBin
 public function editPost($id, Requests\Admin\UpdateUser $request)
 {
     $user = User::where('id', $id)->whereNotIn('id', [1])->first();
     if (!$user) {
         session()->flash('error', 'User not found!');
         return redirect()->route('admin.users');
     }
     $user->name = $request->input('name');
     $user->username = $request->input('username');
     $user->email = $request->input('email');
     $user->save();
     $website = $request->has('website') && trim($request->input('website')) != '' ? $request->input('website') : null;
     $github_username = $request->has('github_username') && trim($request->input('github_username')) != '' ? $request->input('github_username') : null;
     $twitter_username = $request->has('twitter_username') && trim($request->input('twitter_username')) != '' ? $request->input('twitter_username') : null;
     $user->settings()->setMany(['website' => $website, 'github_username' => $github_username, 'twitter_username' => $twitter_username]);
     session()->flash('success', 'Account updated successfully!');
     return redirect()->route('admin.users');
 }
コード例 #5
0
 public function resendPost(Requests\Auth\ResendEmailConfirmation $request, AppMailer $mailer)
 {
     $email = $request->email;
     $user = User::where('email', $email)->first();
     if (!$user) {
         session()->flash('error', 'No account found with that email!');
         return redirect()->back()->withInput();
     }
     if ($user->verified()) {
         session()->flash('error', 'Your account is already confirmed! No need for confirmation.');
         return redirect()->route('login');
     }
     if ($user->emailVerification->created_at > Carbon::now()->subSeconds(2)) {
         session()->flash('error', 'You must wait ' . $user->emailVerification->created_at->addMinutes(15)->diffForHumans() . ' before requesting a new confirmation!');
         return back()->withInput();
     }
     $user->emailVerification->delete();
     $confirmation = $user->emailVerification()->create(['token' => str_random(30), 'created_at' => Carbon::now()]);
     $mailer->sendEmailConfirmationTo($confirmation->user);
     session()->flash('success', 'Email confirmation has been resent!<br>May take up to 15 minutes. Be sure to check Spam/Junk folders!');
     return redirect()->route('home');
 }