Page MenuHomePhorge

D7406.1767338259.diff
No OneTemporary

Size
1 KB
Referenced Files
None
Subscribers
None

D7406.1767338259.diff

diff --git a/keyserver/src/updaters/account-updaters.js b/keyserver/src/updaters/account-updaters.js
--- a/keyserver/src/updaters/account-updaters.js
+++ b/keyserver/src/updaters/account-updaters.js
@@ -1,5 +1,6 @@
// @flow
+import invariant from 'invariant';
import bcrypt from 'twin-bcrypt';
import type {
@@ -18,6 +19,7 @@
import { createUpdates } from '../creators/update-creator.js';
import { dbQuery, SQL } from '../database/database.js';
+import { getUploadURL } from '../fetchers/upload-fetchers.js';
import type { Viewer } from '../session/viewer.js';
async function accountUpdater(
@@ -148,15 +150,34 @@
);
COMMIT;
+
+ SELECT id AS upload_id, secret AS upload_secret
+ FROM uploads
+ WHERE id = ${mediaID}
+ AND uploader = ${viewer.userID}
+ AND container = ${viewer.userID};
`;
- await dbQuery(query, { multipleStatements: true });
+ const [resultSet] = await dbQuery(query, { multipleStatements: true });
+ const selectResult = resultSet.pop();
- if (request.type === 'remove' || request.type === 'image') {
- // TODO: Handle construction of `ClientImageAvatar` when `type === 'image'`
+ if (request.type === 'remove') {
return null;
+ } else if (request.type !== 'image') {
+ return request;
+ } else {
+ const [{ upload_id, upload_secret }] = selectResult;
+ const uploadID = upload_id.toString();
+ invariant(
+ uploadID === request.uploadID,
+ 'uploadID of upload should match uploadID of UpdateUserAvatarRequest',
+ );
+
+ return {
+ type: 'image',
+ uri: getUploadURL(uploadID, upload_secret),
+ };
}
- return request;
}
export {

File Metadata

Mime Type
text/plain
Expires
Fri, Jan 2, 7:17 AM (4 h, 12 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
5878658
Default Alt Text
D7406.1767338259.diff (1 KB)

Event Timeline