Initial import
This commit is contained in:
@@ -0,0 +1,57 @@
|
||||
<?php
|
||||
|
||||
namespace app\services;
|
||||
|
||||
use app\models\UserPublic;
|
||||
|
||||
class Auth
|
||||
{
|
||||
|
||||
/**
|
||||
* @return \app\models\UserPublic|null
|
||||
*/
|
||||
public static function getUser()
|
||||
{
|
||||
if (isset($_SESSION['public_user']))
|
||||
return UserPublic::find()->where(['email' => $_SESSION['public_user']])->one();
|
||||
return null;
|
||||
}
|
||||
|
||||
public static function checkUserExists($user)
|
||||
{
|
||||
$exists = UserPublic::find()->where(['email' => $user])->one();
|
||||
|
||||
if (!$exists) {
|
||||
header('Location: ' . \Yii::$app->params['portal']);
|
||||
exit;
|
||||
}
|
||||
}
|
||||
|
||||
public static function setUser($username = null)
|
||||
{
|
||||
if ($username) {
|
||||
$_SESSION['public_user'] = $username;
|
||||
} else {
|
||||
if (!empty($_SESSION['public_user'])) {
|
||||
unset($_SESSION['public_user']);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public static function getUserByToken($get_token = null)
|
||||
{
|
||||
if ($get_token) {
|
||||
$token = $get_token;
|
||||
} else {
|
||||
$headers = getallheaders();
|
||||
$token = !empty($headers['Auth']) && $headers['Auth'] != 'undefined' ? $headers['Auth'] : null;
|
||||
}
|
||||
if ($token) {
|
||||
$decode = JWT::decode($token, JWT::SECRET_KEY);
|
||||
if ($decode->id) {
|
||||
return UserPublic::findOne($decode->id);
|
||||
}
|
||||
}
|
||||
return null;
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user