fitness-web/rest/controllers/RestController.php
Schneider Roland bf5a1f34ab restcontroller: auth :fix user nullpointer
add missing parameter to cutler env
2023-01-12 10:49:25 +01:00

45 lines
991 B
PHP

<?php
namespace rest\controllers;
use common\models\User;
use yii\filters\auth\HttpBasicAuth;
use yii\rest\Controller;
class RestController extends Controller
{
public function behaviors()
{
$behaviors = parent::behaviors();
$behaviors['authenticator'] = [
'class' => HttpBasicAuth::className(),
'auth' => [$this, 'auth']
];
return $behaviors;
}
public function auth($username, $password)
{
try {
$user = User::findOne(['username' => $username]);
if ( !isset($user ) ){
\Yii::error("User not found: ".$username);
return null;
}
if ($user->validatePassword($password)) {
return $user;
}
} catch (\Exception $e) {
\Yii::error("Failed to load user $username: " . $e->getMessage());
}
\Yii::error("User not found: ".$username);
return null;
}
}