diff --git a/app/controllers/api/account.php b/app/controllers/api/account.php index 0016ad6660..baf4b3e92b 100644 --- a/app/controllers/api/account.php +++ b/app/controllers/api/account.php @@ -719,9 +719,7 @@ App::delete('/v1/account/sessions/:sessionId') continue; } - $dbForProject->withRequestTimestamp($requestTimestamp, function () use ($dbForProject, $session) { - return $dbForProject->deleteDocument('sessions', $session->getId()); - }); + $dbForProject->deleteDocument('sessions', $session->getId()); unset($sessions[$key]); @@ -2770,7 +2768,7 @@ App::patch('/v1/account/name') $user->setAttribute('name', $name); - $user = $dbForProject->withRequestTimestamp($requestTimestamp, fn () => $dbForProject->updateDocument('users', $user->getId(), $user)); + $user = $dbForProject->updateDocument('users', $user->getId(), $user); $queueForEvents->setParam('userId', $user->getId()); @@ -2845,7 +2843,7 @@ App::patch('/v1/account/password') ->setAttribute('hash', Auth::DEFAULT_ALGO) ->setAttribute('hashOptions', Auth::DEFAULT_ALGO_OPTIONS); - $user = $dbForProject->withRequestTimestamp($requestTimestamp, fn () => $dbForProject->updateDocument('users', $user->getId(), $user)); + $user = $dbForProject->updateDocument('users', $user->getId(), $user); $queueForEvents->setParam('userId', $user->getId()); @@ -2930,7 +2928,7 @@ App::patch('/v1/account/email') } try { - $user = $dbForProject->withRequestTimestamp($requestTimestamp, fn () => $dbForProject->updateDocument('users', $user->getId(), $user)); + $user = $dbForProject->updateDocument('users', $user->getId(), $user); /** * @var Document $oldTarget */ @@ -3016,7 +3014,7 @@ App::patch('/v1/account/phone') } try { - $user = $dbForProject->withRequestTimestamp($requestTimestamp, fn () => $dbForProject->updateDocument('users', $user->getId(), $user)); + $user = $dbForProject->updateDocument('users', $user->getId(), $user); /** * @var Document $oldTarget */ @@ -3066,7 +3064,7 @@ App::patch('/v1/account/prefs') $user->setAttribute('prefs', $prefs); - $user = $dbForProject->withRequestTimestamp($requestTimestamp, fn () => $dbForProject->updateDocument('users', $user->getId(), $user)); + $user = $dbForProject->updateDocument('users', $user->getId(), $user); $queueForEvents->setParam('userId', $user->getId()); @@ -3104,7 +3102,7 @@ App::patch('/v1/account/status') $user->setAttribute('status', false); - $user = $dbForProject->withRequestTimestamp($requestTimestamp, fn () => $dbForProject->updateDocument('users', $user->getId(), $user)); + $user = $dbForProject->updateDocument('users', $user->getId(), $user); $queueForEvents ->setParam('userId', $user->getId()) @@ -3868,7 +3866,7 @@ App::patch('/v1/account/mfa') $user->setAttribute('mfa', $mfa); - $user = $dbForProject->withRequestTimestamp($requestTimestamp, fn () => $dbForProject->updateDocument('users', $user->getId(), $user)); + $user = $dbForProject->updateDocument('users', $user->getId(), $user); if ($mfa) { $factors = $session->getAttribute('factors', []); diff --git a/app/controllers/api/databases.php b/app/controllers/api/databases.php index 703db56096..070b0ec867 100644 --- a/app/controllers/api/databases.php +++ b/app/controllers/api/databases.php @@ -3469,7 +3469,7 @@ App::post('/v1/databases/:databaseId/collections/:collectionId/documents') ->setContext('database', $database); // Add $collectionId and $databaseId for all documents - $processDocument = function (Document $collection, Document &$document) use (&$processDocument, $dbForProject, $database) { + $processDocument = function (Document $collection, Document $document) use (&$processDocument, $dbForProject, $database) { $document->removeAttribute('$collection'); $document->setAttribute('$databaseId', $database->getId()); $document->setAttribute('$collectionId', $collection->getId()); @@ -4122,13 +4122,10 @@ App::patch('/v1/databases/:databaseId/collections/:collectionId/documents/:docum $response->addHeader('X-Debug-Operations', $operations); try { - $document = $dbForProject->withRequestTimestamp( - $requestTimestamp, - fn () => $dbForProject->updateDocument( - 'database_' . $database->getInternalId() . '_collection_' . $collection->getInternalId(), - $document->getId(), - $newDocument - ) + $document = $dbForProject->updateDocument( + 'database_' . $database->getInternalId() . '_collection_' . $collection->getInternalId(), + $document->getId(), + $newDocument ); } catch (AuthorizationException) { throw new Exception(Exception::USER_UNAUTHORIZED); @@ -4175,8 +4172,6 @@ App::patch('/v1/databases/:databaseId/collections/:collectionId/documents/:docum $processDocument($collection, $document); - $response->dynamic($document, Response::MODEL_DOCUMENT); - $relationships = \array_map( fn ($document) => $document->getAttribute('key'), \array_filter( @@ -4192,6 +4187,8 @@ App::patch('/v1/databases/:databaseId/collections/:collectionId/documents/:docum ->setContext('collection', $collection) ->setContext('database', $database) ->setPayload($response->getPayload(), sensitive: $relationships); + + $response->dynamic($document, Response::MODEL_DOCUMENT); }); App::patch('/v1/databases/:databaseId/collections/:collectionId/documents') @@ -4420,12 +4417,10 @@ App::delete('/v1/databases/:databaseId/collections/:collectionId/documents/:docu } try { - $dbForProject->withRequestTimestamp($requestTimestamp, function () use ($dbForProject, $database, $collection, $documentId) { - $dbForProject->deleteDocument( - 'database_' . $database->getInternalId() . '_collection_' . $collection->getInternalId(), - $documentId - ); - }); + $dbForProject->deleteDocument( + 'database_' . $database->getInternalId() . '_collection_' . $collection->getInternalId(), + $documentId + ); } catch (NotFoundException $e) { throw new Exception(Exception::COLLECTION_NOT_FOUND); } @@ -4489,9 +4484,6 @@ App::delete('/v1/databases/:databaseId/collections/:collectionId/documents/:docu ->setContext('database', $database) ->setPayload($response->output($document, Response::MODEL_DOCUMENT), sensitive: $relationships); - $queueForStatsUsage - ->addMetric(str_replace(['{databaseInternalId}', '{collectionInternalId}'], [$database->getInternalId(), $collection->getInternalId()], METRIC_DATABASE_ID_COLLECTION_ID_STORAGE), 1); // per collection - $response->noContent(); }); diff --git a/app/controllers/api/teams.php b/app/controllers/api/teams.php index 2389a7d52e..dd64fe0768 100644 --- a/app/controllers/api/teams.php +++ b/app/controllers/api/teams.php @@ -322,9 +322,7 @@ App::put('/v1/teams/:teamId') ->setAttribute('name', $name) ->setAttribute('search', implode(' ', [$teamId, $name])); - $team = $dbForProject->withRequestTimestamp($requestTimestamp, function () use ($dbForProject, $team) { - return $dbForProject->updateDocument('teams', $team->getId(), $team); - }); + $team = $dbForProject->updateDocument('teams', $team->getId(), $team); $queueForEvents->setParam('teamId', $team->getId());