;
+}
diff --git a/src/photo/PhotoUploadWithStatus.tsx b/src/photo/PhotoUploadWithStatus.tsx
index df19173a..cedb38c7 100644
--- a/src/photo/PhotoUploadWithStatus.tsx
+++ b/src/photo/PhotoUploadWithStatus.tsx
@@ -1,7 +1,7 @@
'use client';
import { uploadPhotoFromClient } from '@/platforms/storage';
-import { useRouter } from 'next/navigation';
+import { usePathname, useRouter } from 'next/navigation';
import { PATH_ADMIN_UPLOADS, pathForAdminUploadUrl } from '@/app/paths';
import ImageInput from '../components/ImageInput';
import { clsx } from 'clsx/lite';
@@ -49,6 +49,8 @@ export default function PhotoUploadWithStatus({
const router = useRouter();
+ const pathname = usePathname();
+
useEffect(() => {
// Hide upload panel while button is shown
if (showButton) {
@@ -127,9 +129,14 @@ export default function PhotoUploadWithStatus({
if (isLastBlob) {
await onLastUpload?.();
shouldResetUploadStateAfterPending.current = true;
- startTransition(() => hasMultipleUploads
- ? router.push(PATH_ADMIN_UPLOADS)
- : router.push(pathForAdminUploadUrl(url)));
+ if (pathname === PATH_ADMIN_UPLOADS) {
+ setUploadState?.({ isUploading: false });
+ router.refresh();
+ } else {
+ startTransition(() => hasMultipleUploads
+ ? router.push(PATH_ADMIN_UPLOADS)
+ : router.push(pathForAdminUploadUrl(url)));
+ }
}
})
.catch(error => {
diff --git a/src/photo/form/PhotoForm.tsx b/src/photo/form/PhotoForm.tsx
index 32a3b685..f283316b 100644
--- a/src/photo/form/PhotoForm.tsx
+++ b/src/photo/form/PhotoForm.tsx
@@ -47,6 +47,7 @@ import PhotoFilmIcon from '@/film/PhotoFilmIcon';
import FieldsetFavs from './FieldsetFavs';
import FieldsetHidden from './FieldsetHidden';
import { useAppText } from '@/i18n/state/client';
+import IconAddUpload from '@/components/icons/IconAddUpload';
const THUMBNAIL_SIZE = 300;
@@ -469,12 +470,13 @@ export default function PhotoForm({
Cancel
}
disabled={!canFormBeSubmitted}
onFormStatusChange={onFormStatusChange}
onFormSubmit={invalidateSwr}
primary
>
- {type === 'create' ? 'Create' : 'Update'}
+ {type === 'create' ? 'Add' : 'Update'}
>
insightsIndicatorStatus?: InsightsIndicatorStatus
// UPLOAD
- startUpload?: (onStart?: () => void) => void
+ startUpload?: () => Promise
uploadInputRef?: RefObject
uploadState: UploadState
setUploadState?: (uploadState: Partial) => void