mirror of
https://github.com/opensupports/opensupports.git
synced 2025-07-23 13:55:35 +02:00
(Guillermo) Add-email-sender-class
This commit is contained in:
parent
533e34c395
commit
48fe22c536
@ -5,7 +5,7 @@ class LoginController extends Controller {
|
|||||||
|
|
||||||
private $userInstance;
|
private $userInstance;
|
||||||
private $session;
|
private $session;
|
||||||
private $remembertoken;
|
private $rememberToken;
|
||||||
|
|
||||||
public function validations() {
|
public function validations() {
|
||||||
return [
|
return [
|
||||||
@ -38,6 +38,15 @@ class LoginController extends Controller {
|
|||||||
return ($this->getUserByInputCredentials() !== null);
|
return ($this->getUserByInputCredentials() !== null);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private function isTokenValid() {
|
||||||
|
$sessionCookie = SessionCookie::getDataStore(Controller::request('rememberToken'),'token');
|
||||||
|
$userid = Controller::request('userId');
|
||||||
|
if ($sessionCookie !== null && $userid === $sessionCookie->user->id) {
|
||||||
|
$this->userInstance = $sessionCookie->user;
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
private function createUserSession() {
|
private function createUserSession() {
|
||||||
$this->getSession()->createSession($this->userInstance->id);
|
$this->getSession()->createSession($this->userInstance->id);
|
||||||
}
|
}
|
||||||
@ -49,7 +58,7 @@ class LoginController extends Controller {
|
|||||||
'userId' => $userInstance->id,
|
'userId' => $userInstance->id,
|
||||||
'userEmail' => $userInstance->email,
|
'userEmail' => $userInstance->email,
|
||||||
'token' => $this->getSession()->getToken(),
|
'token' => $this->getSession()->getToken(),
|
||||||
'rememberToken' => $this->remembertoken
|
'rememberToken' => $this->rememberToken
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -71,25 +80,19 @@ class LoginController extends Controller {
|
|||||||
|
|
||||||
return $this->session;
|
return $this->session;
|
||||||
}
|
}
|
||||||
private function isTokenValid(){
|
|
||||||
$sessioncookie = SessionCookie::getDataStore(Controller::request('rememberToken'),'token');
|
|
||||||
if($sessioncookie !== null){
|
|
||||||
$this->userInstance = $sessioncookie->user;
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
private function createSessionCookie(){
|
private function createSessionCookie(){
|
||||||
$remember = Controller::request('remember');
|
$remember = Controller::request('remember');
|
||||||
if($remember){
|
if($remember){
|
||||||
$this->remembertoken = md5(uniqid(rand()));
|
$this->rememberToken = Hashing::generateRandomToken();
|
||||||
|
$sessionCookie = new SessionCookie();
|
||||||
|
|
||||||
$sessioncookie = new SessionCookie();
|
$sessionCookie->setProperties(array(
|
||||||
|
|
||||||
$sessioncookie->setProperties(array(
|
|
||||||
'user' => $this->userInstance->getBeanInstance(),
|
'user' => $this->userInstance->getBeanInstance(),
|
||||||
'token' => $this->remembertoken
|
'token' => $this->rememberToken,
|
||||||
|
'ip' => $_SERVER[‘REMOTE_ADDR’],
|
||||||
|
'creationDate' => date("d-m-Y (H:i:s)"
|
||||||
));
|
));
|
||||||
$sessioncookie->store();
|
$sessionCookie->store();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -7,4 +7,7 @@ class Hashing {
|
|||||||
public static function verifyPassword($password, $hash) {
|
public static function verifyPassword($password, $hash) {
|
||||||
return password_verify($password, $hash);
|
return password_verify($password, $hash);
|
||||||
}
|
}
|
||||||
|
public static function generateRandomToken() {
|
||||||
|
return md5(uniqid(rand()));
|
||||||
|
}
|
||||||
}
|
}
|
@ -65,6 +65,6 @@ class Session {
|
|||||||
}
|
}
|
||||||
|
|
||||||
private function generateToken() {
|
private function generateToken() {
|
||||||
return md5(uniqid(rand()));
|
return Hashing::generateRandomToken();;
|
||||||
}
|
}
|
||||||
}
|
}
|
@ -1,6 +1,6 @@
|
|||||||
<?php
|
<?php
|
||||||
|
|
||||||
class SessionCookie extends DataStore {
|
class sessioncookie extends DataStore {
|
||||||
const TABLE = 'session';
|
const TABLE = 'session';
|
||||||
|
|
||||||
public static function getProps() {
|
public static function getProps() {
|
||||||
@ -11,9 +11,7 @@ class SessionCookie extends DataStore {
|
|||||||
'creationDate',
|
'creationDate',
|
||||||
'expirationDate'
|
'expirationDate'
|
||||||
);
|
);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
protected function getDefaultProps() {
|
protected function getDefaultProps() {
|
||||||
return array();
|
return array();
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user