diff --git a/client/components/modals/item/EditModal.vue b/client/components/modals/item/EditModal.vue
index 232c32282..1b73f1844 100644
--- a/client/components/modals/item/EditModal.vue
+++ b/client/components/modals/item/EditModal.vue
@@ -6,8 +6,8 @@
-
-
+
+
@@ -245,8 +245,22 @@ export default {
this.processing = false
}
},
- libraryItemUpdated(expandedLibraryItem) {
- this.libraryItem = expandedLibraryItem
+ libraryItemUpdated(updatedLibraryItem) {
+ if (this.libraryItem && this.libraryItem.id === updatedLibraryItem.id) {
+ // The updated item from the server doesn't contain rating data, so we preserve it from the client-side model.
+ if (this.libraryItem.media) {
+ updatedLibraryItem.media = {
+ ...(updatedLibraryItem.media || {}),
+ myRating: this.libraryItem.media.myRating,
+ communityRating: this.libraryItem.media.communityRating,
+ myExplicitRating: this.libraryItem.media.myExplicitRating,
+ communityExplicitRating: this.libraryItem.media.communityExplicitRating,
+ }
+ }
+ this.libraryItem = updatedLibraryItem
+ } else {
+ this.libraryItem = updatedLibraryItem
+ }
},
init() {
this.fetchFull()
diff --git a/client/components/modals/item/tabs/Details.vue b/client/components/modals/item/tabs/Details.vue
index e099f2bb0..602962e70 100644
--- a/client/components/modals/item/tabs/Details.vue
+++ b/client/components/modals/item/tabs/Details.vue
@@ -169,6 +169,7 @@ export default {
if (updateResult) {
if (updateResult.updated) {
this.$toast.success(this.$strings.ToastItemDetailsUpdateSuccess)
+ this.$eventBus.$emit(`${this.libraryItemId}_updated`, updateResult.libraryItem)
return true
} else {
this.$toast.info(this.$strings.MessageNoUpdatesWereNecessary)
diff --git a/client/components/ui/FlameIcon.vue b/client/components/ui/FlameIcon.vue
new file mode 100644
index 000000000..47e2c77b8
--- /dev/null
+++ b/client/components/ui/FlameIcon.vue
@@ -0,0 +1,32 @@
+
+
+
+
+
\ No newline at end of file
diff --git a/client/components/ui/RatingInput.vue b/client/components/ui/RatingInput.vue
index 0c7c295bc..4c5e4a76b 100644
--- a/client/components/ui/RatingInput.vue
+++ b/client/components/ui/RatingInput.vue
@@ -1,32 +1,34 @@
-