Compare commits

...
7 changed files with 7 additions and 51 deletions
-24
View File
@@ -218,7 +218,6 @@ App::post('/v1/account/sessions/email')
$dbForProject->updateDocument('users', $profile->getId(), $profile);
}
$dbForProject->deleteCachedDocument('users', $profile->getId());
$session = $dbForProject->createDocument('sessions', $session->setAttribute('$permissions', [
Permission::read(Role::user($profile->getId())),
@@ -456,7 +455,6 @@ App::get('/v1/account/sessions/oauth2/:provider/redirect')
$currentDocument = $dbForProject->getDocument('sessions', $current);
if (!$currentDocument->isEmpty()) {
$dbForProject->deleteDocument('sessions', $currentDocument->getId());
$dbForProject->deleteCachedDocument('users', $user->getId());
}
}
@@ -569,8 +567,6 @@ App::get('/v1/account/sessions/oauth2/:provider/redirect')
Permission::delete(Role::user($user->getId())),
]));
$dbForProject->deleteCachedDocument('users', $user->getId());
$session->setAttribute('expire', $expire);
$events
@@ -703,8 +699,6 @@ App::post('/v1/account/sessions/magic-url')
Permission::delete(Role::user($user->getId())),
]));
$dbForProject->deleteCachedDocument('users', $user->getId());
if (empty($url)) {
$url = $request->getProtocol() . '://' . $request->getHostname() . '/auth/magic-url';
}
@@ -812,7 +806,6 @@ App::put('/v1/account/sessions/magic-url')
Permission::delete(Role::user($user->getId())),
]));
$dbForProject->deleteCachedDocument('users', $user->getId());
$tokens = $user->getAttribute('tokens', []);
@@ -821,7 +814,6 @@ App::put('/v1/account/sessions/magic-url')
* the recovery token but actually we don't need it anymore.
*/
$dbForProject->deleteDocument('tokens', $token);
$dbForProject->deleteCachedDocument('users', $user->getId());
$user->setAttribute('emailVerification', true);
@@ -956,8 +948,6 @@ App::post('/v1/account/sessions/phone')
Permission::delete(Role::user($user->getId())),
]));
$dbForProject->deleteCachedDocument('users', $user->getId());
$messaging
->setRecipient($phone)
->setMessage($secret)
@@ -1049,14 +1039,11 @@ App::put('/v1/account/sessions/phone')
Permission::delete(Role::user($user->getId())),
]));
$dbForProject->deleteCachedDocument('users', $user->getId());
/**
* We act like we're updating and validating
* the recovery token but actually we don't need it anymore.
*/
$dbForProject->deleteDocument('tokens', $token);
$dbForProject->deleteCachedDocument('users', $user->getId());
$user->setAttribute('phoneVerification', true);
@@ -1200,8 +1187,6 @@ App::post('/v1/account/sessions/anonymous')
Permission::delete(Role::user($user->getId())),
]));
$dbForProject->deleteCachedDocument('users', $user->getId());
$events
->setParam('userId', $user->getId())
->setParam('sessionId', $session->getId())
@@ -1750,8 +1735,6 @@ App::delete('/v1/account/sessions/:sessionId')
;
}
$dbForProject->deleteCachedDocument('users', $user->getId());
$events
->setParam('userId', $user->getId())
->setParam('sessionId', $session->getId())
@@ -1831,8 +1814,6 @@ App::patch('/v1/account/sessions/:sessionId')
$dbForProject->updateDocument('sessions', $sessionId, $session);
$dbForProject->deleteCachedDocument('users', $user->getId());
$authDuration = $project->getAttribute('auths', [])['duration'] ?? Auth::TOKEN_EXPIRATION_LOGIN_LONG;
$session->setAttribute('expire', DateTime::addSeconds(new \DateTime($session->getCreatedAt()), $authDuration));
@@ -1902,8 +1883,6 @@ App::delete('/v1/account/sessions')
}
}
$dbForProject->deleteCachedDocument('users', $user->getId());
$events
->setParam('userId', $user->getId())
->setParam('sessionId', $session->getId());
@@ -2077,7 +2056,6 @@ App::put('/v1/account/recovery')
* the recovery token but actually we don't need it anymore.
*/
$dbForProject->deleteDocument('tokens', $recovery);
$dbForProject->deleteCachedDocument('users', $profile->getId());
$events
->setParam('userId', $profile->getId())
@@ -2226,7 +2204,6 @@ App::put('/v1/account/verification')
* the verification token but actually we don't need it anymore.
*/
$dbForProject->deleteDocument('tokens', $verification);
$dbForProject->deleteCachedDocument('users', $profile->getId());
$events
->setParam('userId', $user->getId())
@@ -2368,7 +2345,6 @@ App::put('/v1/account/verification/phone')
* We act like we're updating and validating the verification token but actually we don't need it anymore.
*/
$dbForProject->deleteDocument('tokens', $verification);
$dbForProject->deleteCachedDocument('users', $profile->getId());
$events
->setParam('userId', $user->getId())
-8
View File
@@ -125,9 +125,6 @@ function createAttribute(string $databaseId, string $collectionId, Document $att
throw new Exception(Exception::ATTRIBUTE_LIMIT_EXCEEDED, 'Attribute limit exceeded');
}
$dbForProject->deleteCachedDocument('database_' . $db->getInternalId(), $collectionId);
$dbForProject->deleteCachedCollection('database_' . $db->getInternalId() . '_collection_' . $collection->getInternalId());
$database
->setType(DATABASE_TYPE_CREATE_ATTRIBUTE)
->setDatabase($db)
@@ -1488,9 +1485,6 @@ App::delete('/v1/databases/:databaseId/collections/:collectionId/attributes/:key
$attribute = $dbForProject->updateDocument('attributes', $attribute->getId(), $attribute->setAttribute('status', 'deleting'));
}
$dbForProject->deleteCachedDocument('database_' . $db->getInternalId(), $collectionId);
$dbForProject->deleteCachedCollection('database_' . $db->getInternalId() . '_collection_' . $collection->getInternalId());
$database
->setType(DATABASE_TYPE_DELETE_ATTRIBUTE)
->setCollection($collection)
@@ -1813,8 +1807,6 @@ App::delete('/v1/databases/:databaseId/collections/:collectionId/indexes/:key')
$index = $dbForProject->updateDocument('indexes', $index->getId(), $index->setAttribute('status', 'deleting'));
}
$dbForProject->deleteCachedDocument('database_' . $db->getInternalId(), $collectionId);
$database
->setType(DATABASE_TYPE_DELETE_INDEX)
->setDatabase($db)
-4
View File
@@ -1374,7 +1374,6 @@ App::post('/v1/functions/:functionId/variables')
throw new Exception(Exception::VARIABLE_ALREADY_EXISTS);
}
$dbForProject->deleteCachedDocument('functions', $function->getId());
$response
->setStatusCode(Response::STATUS_CODE_CREATED)
@@ -1490,8 +1489,6 @@ App::put('/v1/functions/:functionId/variables/:variableId')
throw new Exception(Exception::VARIABLE_ALREADY_EXISTS);
}
$dbForProject->deleteCachedDocument('functions', $function->getId());
$response->dynamic($variable, Response::MODEL_VARIABLE);
});
@@ -1528,7 +1525,6 @@ App::delete('/v1/functions/:functionId/variables/:variableId')
}
$dbForProject->deleteDocument('variables', $variable->getId());
$dbForProject->deleteCachedDocument('functions', $function->getId());
$response->noContent();
});
-9
View File
@@ -108,7 +108,6 @@ App::post('/v1/teams')
]);
$membership = $dbForProject->createDocument('memberships', $membership);
$dbForProject->deleteCachedDocument('users', $user->getId());
}
$events->setParam('teamId', $team->getId());
@@ -420,7 +419,6 @@ App::post('/v1/teams/:teamId/memberships')
$team->setAttribute('total', $team->getAttribute('total', 0) + 1);
$team = Authorization::skip(fn() => $dbForProject->updateDocument('teams', $team->getId(), $team));
$dbForProject->deleteCachedDocument('users', $invitee->getId());
} else {
try {
$membership = $dbForProject->createDocument('memberships', $membership);
@@ -639,7 +637,6 @@ App::patch('/v1/teams/:teamId/memberships/:membershipId')
/**
* Replace membership on profile
*/
$dbForProject->deleteCachedDocument('users', $profile->getId());
$events
->setParam('teamId', $team->getId())
@@ -754,14 +751,10 @@ App::patch('/v1/teams/:teamId/memberships/:membershipId/status')
Permission::delete(Role::user($user->getId())),
]));
$dbForProject->deleteCachedDocument('users', $user->getId());
Authorization::setRole(Role::user($userId)->toString());
$membership = $dbForProject->updateDocument('memberships', $membership->getId(), $membership);
$dbForProject->deleteCachedDocument('users', $user->getId());
$team = Authorization::skip(fn() => $dbForProject->updateDocument('teams', $team->getId(), $team->setAttribute('total', $team->getAttribute('total', 0) + 1)));
$events
@@ -839,8 +832,6 @@ App::delete('/v1/teams/:teamId/memberships/:membershipId')
throw new Exception(Exception::GENERAL_SERVER_ERROR, 'Failed to remove membership from DB');
}
$dbForProject->deleteCachedDocument('users', $user->getId());
if ($membership->getAttribute('confirm')) { // Count only confirmed members
$team->setAttribute('total', \max($team->getAttribute('total', 0) - 1, 0));
Authorization::skip(fn() => $dbForProject->updateDocument('teams', $team->getId(), $team));
-3
View File
@@ -1000,7 +1000,6 @@ App::delete('/v1/users/:userId/sessions/:sessionId')
}
$dbForProject->deleteDocument('sessions', $session->getId());
$dbForProject->deleteCachedDocument('users', $user->getId());
$events
->setParam('userId', $user->getId())
@@ -1043,8 +1042,6 @@ App::delete('/v1/users/:userId/sessions')
//TODO: fix this
}
$dbForProject->deleteCachedDocument('users', $user->getId());
$events
->setParam('userId', $user->getId())
->setPayload($response->output($user, Response::MODEL_USER));
+7
View File
@@ -279,6 +279,8 @@ Database::addFilter(
return null;
},
function (mixed $value, Document $document, Database $database) {
$database->deleteCachedDocument('database_' . $database->getInternalId(), $document['collectionId']);
$database->deleteCachedCollection('database_' . $database->getInternalId() . '_collection_' . $document['collectionInternalId']);
return $database
->find('attributes', [
Query::equal('collectionInternalId', [$document->getInternalId()]),
@@ -294,6 +296,7 @@ Database::addFilter(
return null;
},
function (mixed $value, Document $document, Database $database) {
$database->deleteCachedDocument('database_' . $document->getInternalId(), $document['collectionId']);
return $database
->find('indexes', [
Query::equal('collectionInternalId', [$document->getInternalId()]),
@@ -365,6 +368,7 @@ Database::addFilter(
return null;
},
function (mixed $value, Document $document, Database $database) {
$database->deleteCachedDocument('users', $document->getId());
return Authorization::skip(fn () => $database->find('sessions', [
Query::equal('userInternalId', [$document->getInternalId()]),
Query::limit(APP_LIMIT_SUBQUERY),
@@ -378,6 +382,7 @@ Database::addFilter(
return null;
},
function (mixed $value, Document $document, Database $database) {
$database->deleteCachedDocument('users', $document->getId());
return Authorization::skip(fn() => $database
->find('tokens', [
Query::equal('userInternalId', [$document->getInternalId()]),
@@ -392,6 +397,7 @@ Database::addFilter(
return null;
},
function (mixed $value, Document $document, Database $database) {
$database->deleteCachedDocument('users', $document->getId());
return Authorization::skip(fn() => $database
->find('memberships', [
Query::equal('userInternalId', [$document->getInternalId()]),
@@ -406,6 +412,7 @@ Database::addFilter(
return null;
},
function (mixed $value, Document $document, Database $database) {
$database->deleteCachedDocument('functions', $document->getId());
return $database
->find('variables', [
Query::equal('functionInternalId', [$document->getInternalId()]),
-3
View File
@@ -233,8 +233,6 @@ class DatabaseV1 extends Worker
}
}
$dbForProject->deleteCachedDocument('database_' . $database->getInternalId(), $collectionId);
$dbForProject->deleteCachedCollection('database_' . $database->getInternalId() . '_collection_' . $collection->getInternalId());
}
/**
@@ -291,7 +289,6 @@ class DatabaseV1 extends Worker
);
}
$dbForProject->deleteCachedDocument('database_' . $database->getInternalId(), $collectionId);
}
/**