Advertisement
Guest User

Untitled

a guest
Nov 4th, 2016
83
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.55 KB | None | 0 0
  1. public function loginUser($request, $response) {
  2. if (Security::isUser()) { return $this->redirect('home'); }
  3. $username = $request->getParam('username');
  4. $password = $request->getParam('password');
  5. $user = Security::authenticate($username, $password);
  6. if ($user) {
  7. Security::login($user->id);
  8. return $this->redirect('home');
  9. } else {
  10. $this->flash->addMessage('error', 'Invalid username and/or password.');
  11. return $this->redirect('login');
  12. }
  13. }
  14.  
  15. public static function hash($string) {
  16. return password_hash($string, PASSWORD_DEFAULT);
  17. }
  18.  
  19. public static function authenticate($username, $password) {
  20. $user = User::where('username', $username)->orWhere('email', $username)->first();
  21. if (password_verify($password, $user->password) && $user->banned === 0) { return $user; }
  22. else { return false; }
  23. }
  24.  
  25. public static function getUser() {
  26. if (isset($_SESSION['uid'])) {
  27. $user = User::where('id', $_SESSION['uid'])->first();
  28. if ($user->banned === 1) { return false; }
  29. else { return $user; }
  30. } else { return false; }
  31. }
  32.  
  33. public static function isUser() {
  34. if (!self::getUser()) { return false; } else { return true; }
  35. }
  36.  
  37. public static function isAdmin() {
  38. $user = self::getUser();
  39. if (!$user) { return false; }
  40. else if ($user->role === 'admin') { return true; }
  41. else { return false; }
  42. }
  43.  
  44. public static function login($uid) {
  45. session_regenerate_id();
  46. $_SESSION['uid'] = $uid;
  47. }
  48.  
  49. public static function logout() {
  50. session_unset();
  51. session_destroy();
  52. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement