diff --git a/src/components/dialogs/UserDialog/UserDialog.vue b/src/components/dialogs/UserDialog/UserDialog.vue
index 11a6ec52..b91d6b44 100644
--- a/src/components/dialogs/UserDialog/UserDialog.vue
+++ b/src/components/dialogs/UserDialog/UserDialog.vue
@@ -1192,6 +1192,9 @@
{{
t('dialog.user.avatars.sort_by_update')
}}
+ {{
+ t('dialog.user.avatars.sort_by_uploaded')
+ }}
{{ t('dialog.user.avatars.group_by') }}
diff --git a/src/localization/en.json b/src/localization/en.json
index ebfeb3ea..9685b3a3 100644
--- a/src/localization/en.json
+++ b/src/localization/en.json
@@ -1066,6 +1066,7 @@
"sort_by": "Sort by:",
"sort_by_name": "Name",
"sort_by_update": "Updated",
+ "sort_by_uploaded": "Uploaded",
"all": "All",
"public": "Public",
"private": "Private",
diff --git a/src/stores/user.js b/src/stores/user.js
index d1df43c8..631ff013 100644
--- a/src/stores/user.js
+++ b/src/stores/user.js
@@ -6,6 +6,7 @@ import Noty from 'noty';
import {
arraysMatch,
+ compareByCreatedAt,
compareByDisplayName,
compareByLocationAt,
compareByName,
@@ -1162,6 +1163,8 @@ export const useUserStore = defineStore('User', () => {
const D = userDialog.value;
if (D.avatarSorting === 'update') {
array.sort(compareByUpdatedAt);
+ } else if (D.avatarSorting === 'createdAt') {
+ array.sort(compareByCreatedAt);
} else {
array.sort(compareByName);
}