New: Movie Editor in Movie Index (#3606)

* Fixed: Movie Editor in Movie Index

* Fixed: CSS Style Issues

* Fixed: Ensure only items shown are selected

* Fixed: Cleanup and Rename from Editor
This commit is contained in:
Qstick
2019-07-12 20:40:37 -04:00
committed by GitHub
parent b8f7ca0749
commit a20222fbef
78 changed files with 823 additions and 962 deletions

View File

@@ -61,7 +61,7 @@ const mapDispatchToProps = {
dispatchImportMovie: importMovie,
dispatchClearImportMovie: clearImportMovie,
dispatchFetchRootFolders: fetchRootFolders,
dispatchSetAddSeriesDefault: setAddMovieDefault
dispatchSetAddMovieDefault: setAddMovieDefault
};
class ImportMovieConnector extends Component {
@@ -74,7 +74,7 @@ class ImportMovieConnector extends Component {
qualityProfiles,
defaultQualityProfileId,
dispatchFetchRootFolders,
dispatchSetAddSeriesDefault
dispatchSetAddMovieDefault
} = this.props;
if (!this.props.rootFoldersPopulated) {
@@ -93,7 +93,7 @@ class ImportMovieConnector extends Component {
}
if (setDefaults) {
dispatchSetAddSeriesDefault(setDefaultPayload);
dispatchSetAddMovieDefault(setDefaultPayload);
}
}
@@ -105,7 +105,7 @@ class ImportMovieConnector extends Component {
// Listeners
onInputChange = (ids, name, value) => {
this.props.dispatchSetAddSeriesDefault({ [name]: value });
this.props.dispatchSetAddMovieDefault({ [name]: value });
ids.forEach((id) => {
this.props.dispatchSetImportMovieValue({
@@ -146,7 +146,7 @@ ImportMovieConnector.propTypes = {
dispatchImportMovie: PropTypes.func.isRequired,
dispatchClearImportMovie: PropTypes.func.isRequired,
dispatchFetchRootFolders: PropTypes.func.isRequired,
dispatchSetAddSeriesDefault: PropTypes.func.isRequired
dispatchSetAddMovieDefault: PropTypes.func.isRequired
};
export default connect(createMapStateToProps, mapDispatchToProps)(ImportMovieConnector);

View File

@@ -5,8 +5,8 @@ import { cancelLookupMovie } from 'Store/Actions/importMovieActions';
import ImportMovieFooter from './ImportMovieFooter';
function isMixed(items, selectedIds, defaultValue, key) {
return _.some(items, (series) => {
return selectedIds.indexOf(series.id) > -1 && series[key] !== defaultValue;
return _.some(items, (movie) => {
return selectedIds.indexOf(movie.id) > -1 && movie[key] !== defaultValue;
});
}

View File

@@ -23,7 +23,7 @@
min-width: 170px;
}
.series {
.movie {
composes: cell from '~Components/Table/Cells/VirtualTableRowCell.css';
flex: 0 1 400px;

View File

@@ -53,7 +53,7 @@ function ImportMovieRow(props) {
/>
</VirtualTableRowCell>
<VirtualTableRowCell className={styles.series}>
<VirtualTableRowCell className={styles.movie}>
<ImportMovieSelectMovieConnector
id={id}
isExistingMovie={isExistingMovie}

View File

@@ -66,23 +66,23 @@ class ImportMovieTable extends Component {
const isExistingMovie = !!selectedMovie &&
_.some(prevProps.allMovies, { tmdbId: selectedMovie.tmdbId });
// Props doesn't have a selected series or
// the selected series is an existing series.
// Props doesn't have a selected movie or
// the selected movie is an existing movie.
if ((!selectedMovie && prevItem.selectedMovie) || (isExistingMovie && !prevItem.selectedMovie)) {
onSelectedChange({ id, value: false });
return;
}
// State is selected, but a series isn't selected or
// the selected series is an existing series.
// State is selected, but a movie isn't selected or
// the selected movie is an existing movie.
if (isSelected && (!selectedMovie || isExistingMovie)) {
onSelectedChange({ id, value: false });
return;
}
// A series is being selected that wasn't previously selected.
// A movie is being selected that wasn't previously selected.
if (selectedMovie && selectedMovie !== prevItem.selectedMovie) {
onSelectedChange({ id, value: true });

View File

@@ -1,4 +1,4 @@
.series {
.movie {
padding: 10px 20px;
width: 100%;

View File

@@ -26,7 +26,7 @@ class ImportMovieSearchResult extends Component {
return (
<Link
className={styles.series}
className={styles.movie}
onPress={this.onPress}
>
<ImportMovieTitle

View File

@@ -259,7 +259,7 @@ class ImportMovieSelectMovie extends Component {
title={item.title}
year={item.year}
studio={item.studio}
onPress={this.onSeriesSelect}
onPress={this.onMovieSelect}
/>
);
})