Explorar o código

Update ApiV1Dot1Controller, fix username to id endpoint

Daniel Supernault hai 1 ano
pai
achega
4d6cea9aa4
Modificáronse 1 ficheiros con 6 adicións e 1 borrados
  1. 6 1
      app/Http/Controllers/Api/ApiV1Dot1Controller.php

+ 6 - 1
app/Http/Controllers/Api/ApiV1Dot1Controller.php

@@ -950,7 +950,7 @@ class ApiV1Dot1Controller extends Controller
     {
     {
         abort_if(! $request->user() || ! $request->user()->token() || ! $username, 403);
         abort_if(! $request->user() || ! $request->user()->token() || ! $username, 403);
         abort_unless($request->user()->tokenCan('read'), 403);
         abort_unless($request->user()->tokenCan('read'), 403);
-
+        $username = trim($username);
         $rateLimiting = (bool) config_cache('api.rate-limits.v1Dot1.accounts.usernameToId.enabled');
         $rateLimiting = (bool) config_cache('api.rate-limits.v1Dot1.accounts.usernameToId.enabled');
         $ipRateLimiting = (bool) config_cache('api.rate-limits.v1Dot1.accounts.usernameToId.ip_enabled');
         $ipRateLimiting = (bool) config_cache('api.rate-limits.v1Dot1.accounts.usernameToId.ip_enabled');
         if ($ipRateLimiting) {
         if ($ipRateLimiting) {
@@ -997,6 +997,11 @@ class ApiV1Dot1Controller extends Controller
                 'X-Rate-Limit-Reset' => RateLimiter::availableIn($userKey),
                 'X-Rate-Limit-Reset' => RateLimiter::availableIn($userKey),
             ];
             ];
         }
         }
+        if(str_ends_with($username, config_cache('pixelfed.domain.app'))) {
+            $pre = str_starts_with($username, '@') ? substr($username, 1) : $username;
+            $parts = explode('@', $pre);
+            $username = $parts[0];
+        }
         $accountId = AccountService::usernameToId($username, true);
         $accountId = AccountService::usernameToId($username, true);
         if (! $accountId) {
         if (! $accountId) {
             return [];
             return [];