Advertisement
Guest User

Untitled

a guest
Oct 28th, 2017
371
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.75 KB | None | 0 0
  1. <?php
  2.  
  3. // Namespace
  4. namespace Leximo\User;
  5.  
  6. /**
  7. * Login
  8. * @author Jan Doušek <mail@jandousek.cz>
  9. */
  10.  
  11. class Login {
  12. use \Nette\SmartObject;
  13.  
  14. /* @var string */
  15. private $username = null;
  16.  
  17. /* @var string */
  18. private $password = null;
  19.  
  20. /* @var boolean */
  21. private $remember = false;
  22.  
  23. /* @var string|boolean */
  24. private $secure = false;
  25.  
  26. /* @var object */
  27. private $user = null;
  28.  
  29. /* @var object */
  30. private $error = null;
  31.  
  32. /**
  33. * Constructor
  34. * @param array $data
  35. * @param string|bool $secure
  36. * @return void
  37. */
  38.  
  39. public function __construct($username, $password, $remember = false, $secure = '') {
  40.  
  41. // Set username
  42. $this->username = $username;
  43.  
  44. // Set password
  45. $this->password = $password;
  46.  
  47. // Set remember
  48. $this->remember = (bool) $remember;
  49.  
  50. // Set secure
  51. $this->secure = $secure;
  52.  
  53. // Set user
  54. $this->setUser();
  55.  
  56. }
  57.  
  58. /**
  59. * Set user
  60. * @param void
  61. * @return void
  62. */
  63.  
  64. private function setUser() {
  65.  
  66. // Login user
  67. $login = wp_signon(['user_login' => $this->username, 'user_password' => $this->password, 'remember' => $this->remember], $this->secure);
  68.  
  69. // Check and set data
  70. if(!is_wp_error($login)) {
  71. $this->user = new UserItem($login);
  72. } else {
  73. $this->error = $login;
  74. }
  75.  
  76. }
  77.  
  78. /**
  79. * Get user
  80. * @param void
  81. * @return object
  82. */
  83.  
  84. public function getUser() {
  85. return $this->user;
  86. }
  87.  
  88. /**
  89. * Get error
  90. * @param void
  91. * @return string|object
  92. */
  93.  
  94. public function getError() {
  95. return $this->error;
  96. }
  97.  
  98. /**
  99. * Succeed
  100. * @param void
  101. * @return bool
  102. */
  103.  
  104. public function succeed() {
  105. return empty($this->error);
  106. }
  107.  
  108. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement