Enable guest photo deletion and ownership flags
This commit is contained in:
@@ -223,6 +223,20 @@ export default function UploadScreen() {
|
||||
[optimizeMaxEdge, optimizeTargetBytes, t]
|
||||
);
|
||||
|
||||
const persistMyPhotoId = React.useCallback((photoId: number) => {
|
||||
if (!photoId) return;
|
||||
try {
|
||||
const raw = localStorage.getItem('my-photo-ids');
|
||||
const parsed = raw ? JSON.parse(raw) : [];
|
||||
const list = Array.isArray(parsed) ? parsed.filter((value) => Number.isFinite(Number(value))) : [];
|
||||
if (!list.includes(photoId)) {
|
||||
localStorage.setItem('my-photo-ids', JSON.stringify([photoId, ...list]));
|
||||
}
|
||||
} catch (error) {
|
||||
console.warn('Failed to persist my-photo-ids', error);
|
||||
}
|
||||
}, []);
|
||||
|
||||
const uploadFiles = React.useCallback(
|
||||
async (files: File[]) => {
|
||||
if (!token || files.length === 0) return;
|
||||
@@ -260,6 +274,7 @@ export default function UploadScreen() {
|
||||
}
|
||||
pushGuestToast({ text: t('uploadV2.toast.uploaded', 'Upload complete.'), type: 'success' });
|
||||
void loadPending();
|
||||
persistMyPhotoId(photoId);
|
||||
if (autoApprove && photoId) {
|
||||
redirectPhotoId = photoId;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user