diff --git a/frontend/src/Store/Actions/trackFileActions.js b/frontend/src/Store/Actions/trackFileActions.js index 06c842243..cf676ddd2 100644 --- a/frontend/src/Store/Actions/trackFileActions.js +++ b/frontend/src/Store/Actions/trackFileActions.js @@ -200,26 +200,30 @@ export const actionHandlers = handleThunks({ dispatch(set({ section, isSaving: true })); - const data = { + const requestData = { trackFileIds }; if (quality) { - data.quality = quality; + requestData.quality = quality; } const promise = createAjaxRequest({ url: '/trackFile/editor', method: 'PUT', dataType: 'json', - data: JSON.stringify(data) + data: JSON.stringify(requestData) }).request; - promise.done(() => { + promise.done((data) => { dispatch(batchActions([ ...trackFileIds.map((id) => { const props = {}; + const trackFile = data.find((file) => file.id === id); + + props.qualityCutoffNotMet = trackFile.qualityCutoffNotMet; + if (quality) { props.quality = quality; } diff --git a/frontend/src/TrackFile/Editor/TrackFileEditorModalContentConnector.js b/frontend/src/TrackFile/Editor/TrackFileEditorModalContentConnector.js index d4d11888e..26f1eba31 100644 --- a/frontend/src/TrackFile/Editor/TrackFileEditorModalContentConnector.js +++ b/frontend/src/TrackFile/Editor/TrackFileEditorModalContentConnector.js @@ -67,6 +67,7 @@ function createMapStateToProps() { return { path: trackFile.path, quality: trackFile.quality, + qualityCutoffNotMet: trackFile.qualityCutoffNotMet, ...track }; }); diff --git a/frontend/src/TrackFile/Editor/TrackFileEditorRow.js b/frontend/src/TrackFile/Editor/TrackFileEditorRow.js index b12f92409..a2e616de8 100644 --- a/frontend/src/TrackFile/Editor/TrackFileEditorRow.js +++ b/frontend/src/TrackFile/Editor/TrackFileEditorRow.js @@ -12,6 +12,7 @@ function TrackFileEditorRow(props) { trackNumber, path, quality, + qualityCutoffNotMet, isSelected, onSelectedChange } = props; @@ -35,6 +36,7 @@ function TrackFileEditorRow(props) { @@ -46,6 +48,7 @@ TrackFileEditorRow.propTypes = { trackNumber: PropTypes.string.isRequired, path: PropTypes.string.isRequired, quality: PropTypes.object.isRequired, + qualityCutoffNotMet: PropTypes.bool.isRequired, isSelected: PropTypes.bool, onSelectedChange: PropTypes.func.isRequired };