diff --git a/frontend/src/AddMovie/AddNewMovie/AddNewMovieSearchResultConnector.js b/frontend/src/AddMovie/AddNewMovie/AddNewMovieSearchResultConnector.js index 859abb57a..02b833454 100644 --- a/frontend/src/AddMovie/AddNewMovie/AddNewMovieSearchResultConnector.js +++ b/frontend/src/AddMovie/AddNewMovie/AddNewMovieSearchResultConnector.js @@ -11,9 +11,9 @@ function createMapStateToProps() { createExclusionMovieSelector(), createDimensionsSelector(), (state) => state.queue.details.items, - (state) => state.tmdbId, - (isExistingMovie, isExclusionMovie, dimensions, queueItems, tmdbId) => { - const firstQueueItem = queueItems.find((q) => q.tmdbId === tmdbId); + (state, { internalId }) => internalId, + (isExistingMovie, isExclusionMovie, dimensions, queueItems, internalId) => { + const firstQueueItem = queueItems.find((q) => q.movieId === internalId && internalId > 0); return { isExistingMovie, diff --git a/frontend/src/Store/Actions/addMovieActions.js b/frontend/src/Store/Actions/addMovieActions.js index a4ac3fecb..928c0a540 100644 --- a/frontend/src/Store/Actions/addMovieActions.js +++ b/frontend/src/Store/Actions/addMovieActions.js @@ -88,6 +88,8 @@ export const actionHandlers = handleThunks({ abortCurrentRequest = abortRequest; request.done((data) => { + data = data.map((movie) => ({ ...movie, internalId: movie.id, id: movie.tmdbId })); + dispatch(batchActions([ update({ section, data }), @@ -116,6 +118,7 @@ export const actionHandlers = handleThunks({ const tmdbId = payload.tmdbId; const items = getState().addMovie.items; const newMovie = getNewMovie(_.cloneDeep(_.find(items, { tmdbId })), payload); + newMovie.id = 0; const promise = createAjaxRequest({ url: '/movie', @@ -125,8 +128,12 @@ export const actionHandlers = handleThunks({ }).request; promise.done((data) => { + const updatedItem = _.cloneDeep(data); + updatedItem.id = updatedItem.tmdbId; + dispatch(batchActions([ updateItem({ section: 'movies', ...data }), + updateItem({ section: 'addMovie', ...updatedItem }), set({ section,