Skip to content

Commit

Permalink
Add resources licenses endpoint
Browse files Browse the repository at this point in the history
  • Loading branch information
partydragen committed Mar 9, 2024
1 parent ee01af4 commit 158fd22
Showing 1 changed file with 36 additions and 0 deletions.
@@ -0,0 +1,36 @@
<?php
class OAuth2ResourcesLicensesEndpoint extends AccessTokenAuthEndpoint {

public function __construct() {
$this->_route = 'oauth2/resources/licenses';
$this->_module = 'OAuth2';
$this->_description = 'Get user resource licenses';
$this->_method = 'GET';
}

public function execute(Nameless2API $api, AccessToken $token): void {
if (!$token->hasScope('resources.licenses')) {
$api->throwError('oauth2:missing_scope');
}

// Make sure user still exist
$user = $token->user();
if (!$user->exists()) {
$api->throwError(Nameless2API::ERROR_CANNOT_FIND_USER);
}

// Get user resource licenses
$resources_list = [];
$resources = DB::getInstance()->query('SELECT nl2_resources.id as id, nl2_resources.name as name FROM nl2_resources_payments LEFT JOIN nl2_resources ON nl2_resources.id = nl2_resources_payments.resource_id WHERE nl2_resources_payments.status = 1 AND nl2_resources_payments.user_id = ?', [$token->user()->data()->id]);
foreach ($resources->results() as $resource) {
$resources_list[] = [
'id' => $resource->id,
'name' => $resource->name
];
}

$api->returnArray([
'resources' => $resources_list
]);
}
}

0 comments on commit 158fd22

Please sign in to comment.