use mobiledevice as login object for mobile api

This commit is contained in:
2022-02-22 14:41:16 +01:00
parent 356fc1f0fd
commit 530accd8bf
8 changed files with 90 additions and 71 deletions

View File

@@ -4,6 +4,7 @@ namespace mobileapi\controllers;
use common\models\Customer;
use common\models\MobileDevice;
use Exception;
use Lcobucci\JWT\Token;
use mobileapi\components\ActivatedFilter;
@@ -33,7 +34,7 @@ class RestController extends Controller
/**
* This method will check the token
* @param Token $token
* @return Customer|null
* @return MobileDevice|null
*/
public function auth($token)
{
@@ -42,13 +43,13 @@ class RestController extends Controller
}
try {
$uid = (string) $token->getClaim('uid');
$customer = Customer::findOne(['id_customer' => $uid]);
if (isset($customer)) {
\Yii::$app->user->setIdentity($customer);
return $customer;
$mobileDevice = MobileDevice::findOne(['id' => $uid]);
if (isset($mobileDevice)) {
\Yii::$app->user->setIdentity($mobileDevice);
return $mobileDevice;
}
} catch (Exception $e) {
Yii::error('Failed to load customer: ' . $e->getMessage());
Yii::error('Failed to load mobile device: ' . $e->getMessage());
}
return null;
}