1
0
Fork 0
mirror of https://github.com/immich-app/immich.git synced 2024-12-29 15:11:58 +00:00

fix(web): show a clearer confirmation message when deleting an unnamed album (#11988)

* fix(web): show a different confirmation message when deleting an unnamed album

* Rename the function

* Fix formatting
This commit is contained in:
Snowknight26 2024-08-24 23:59:18 -05:00 committed by GitHub
parent 843345df4f
commit 7a4fccb1b2
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
4 changed files with 21 additions and 10 deletions

View file

@ -17,7 +17,7 @@
import { handleError } from '$lib/utils/handle-error';
import { downloadAlbum } from '$lib/utils/asset-utils';
import { normalizeSearchString } from '$lib/utils/string-utils';
import { getSelectedAlbumGroupOption, type AlbumGroup } from '$lib/utils/album-utils';
import { getSelectedAlbumGroupOption, type AlbumGroup, confirmAlbumDelete } from '$lib/utils/album-utils';
import type { ContextMenuPosition } from '$lib/utils/context-menu';
import { user } from '$lib/stores/user.store';
import {
@ -31,7 +31,6 @@
} from '$lib/stores/preferences.store';
import { goto } from '$app/navigation';
import { AppRoute } from '$lib/constants';
import { dialogController } from '$lib/components/shared-components/dialog/dialog';
import { t } from 'svelte-i18n';
export let ownedAlbums: AlbumResponseDto[] = [];
@ -302,9 +301,7 @@
return;
}
const isConfirmed = await dialogController.show({
prompt: $t('album_delete_confirmation', { values: { album: albumToDelete.albumName } }),
});
const isConfirmed = await confirmAlbumDelete(albumToDelete);
if (!isConfirmed) {
return;

View file

@ -335,7 +335,8 @@
"album_added": "Album added",
"album_added_notification_setting_description": "Receive an email notification when you are added to a shared album",
"album_cover_updated": "Album cover updated",
"album_delete_confirmation": "Are you sure you want to delete the album {album}?\nIf this album is shared, other users will not be able to access it anymore.",
"album_delete_confirmation": "Are you sure you want to delete the album {album}?",
"album_delete_confirmation_description": "If this album is shared, other users will not be able to access it anymore.",
"album_info_updated": "Album info updated",
"album_leave": "Leave album?",
"album_leave_confirmation": "Are you sure you want to leave {album}?",
@ -1189,6 +1190,7 @@
"unlink_oauth": "Unlink OAuth",
"unlinked_oauth_account": "Unlinked OAuth account",
"unnamed_album": "Unnamed Album",
"unnamed_album_delete_confirmation": "Are you sure you want to delete this album?",
"unnamed_share": "Unnamed Share",
"unsaved_change": "Unsaved change",
"unselect_all": "Unselect all",

View file

@ -1,4 +1,5 @@
import { goto } from '$app/navigation';
import { dialogController } from '$lib/components/shared-components/dialog/dialog';
import { AppRoute } from '$lib/constants';
import {
AlbumFilter,
@ -199,3 +200,16 @@ export const collapseAllAlbumGroups = (groupIds: string[]) => {
export const expandAllAlbumGroups = () => {
collapseAllAlbumGroups([]);
};
export const confirmAlbumDelete = async (album: AlbumResponseDto) => {
const $t = get(t);
const confirmation =
album.albumName.length > 0
? $t('album_delete_confirmation', { values: { album: album.albumName } })
: $t('unnamed_album_delete_confirmation');
const description = $t('album_delete_confirmation_description');
const prompt = `${confirmation} ${description}`;
return dialogController.show({ prompt });
};

View file

@ -82,9 +82,9 @@
} from '@mdi/js';
import { fly } from 'svelte/transition';
import type { PageData } from './$types';
import { dialogController } from '$lib/components/shared-components/dialog/dialog';
import { t } from 'svelte-i18n';
import { onDestroy } from 'svelte';
import { confirmAlbumDelete } from '$lib/utils/album-utils';
export let data: PageData;
@ -365,9 +365,7 @@
};
const handleRemoveAlbum = async () => {
const isConfirmed = await dialogController.show({
prompt: $t('album_delete_confirmation', { values: { album: album.albumName } }),
});
const isConfirmed = await confirmAlbumDelete(album);
if (!isConfirmed) {
viewMode = ViewMode.VIEW;