Fixed: Status color for unreleased albums
This commit is contained in:
@@ -595,6 +595,7 @@ class AlbumDetails extends Component {
|
|||||||
key={medium.mediumNumber}
|
key={medium.mediumNumber}
|
||||||
albumId={id}
|
albumId={id}
|
||||||
albumMonitored={monitored}
|
albumMonitored={monitored}
|
||||||
|
albumReleaseDate={releaseDate}
|
||||||
{...medium}
|
{...medium}
|
||||||
isExpanded={expandedState[medium.mediumNumber]}
|
isExpanded={expandedState[medium.mediumNumber]}
|
||||||
onExpandPress={this.onExpandPress}
|
onExpandPress={this.onExpandPress}
|
||||||
|
|||||||
@@ -7,6 +7,7 @@ import Link from 'Components/Link/Link';
|
|||||||
import Table from 'Components/Table/Table';
|
import Table from 'Components/Table/Table';
|
||||||
import TableBody from 'Components/Table/TableBody';
|
import TableBody from 'Components/Table/TableBody';
|
||||||
import { icons, kinds, sizes } from 'Helpers/Props';
|
import { icons, kinds, sizes } from 'Helpers/Props';
|
||||||
|
import isAfter from 'Utilities/Date/isAfter';
|
||||||
import translate from 'Utilities/String/translate';
|
import translate from 'Utilities/String/translate';
|
||||||
import TrackRowConnector from './TrackRowConnector';
|
import TrackRowConnector from './TrackRowConnector';
|
||||||
import styles from './AlbumDetailsMedium.css';
|
import styles from './AlbumDetailsMedium.css';
|
||||||
@@ -31,11 +32,15 @@ function getMediumStatistics(tracks) {
|
|||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
function getTrackCountKind(monitored, trackFileCount, trackCount) {
|
function getTrackCountKind(monitored, releaseDate, trackFileCount, trackCount) {
|
||||||
if (trackFileCount === trackCount && trackCount > 0) {
|
if (trackFileCount === trackCount && trackCount > 0) {
|
||||||
return kinds.SUCCESS;
|
return kinds.SUCCESS;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (!releaseDate || isAfter(releaseDate)) {
|
||||||
|
return kinds.DISABLED;
|
||||||
|
}
|
||||||
|
|
||||||
if (!monitored) {
|
if (!monitored) {
|
||||||
return kinds.WARNING;
|
return kinds.WARNING;
|
||||||
}
|
}
|
||||||
@@ -90,6 +95,7 @@ class AlbumDetailsMedium extends Component {
|
|||||||
mediumNumber,
|
mediumNumber,
|
||||||
mediumFormat,
|
mediumFormat,
|
||||||
albumMonitored,
|
albumMonitored,
|
||||||
|
albumReleaseDate,
|
||||||
items,
|
items,
|
||||||
columns,
|
columns,
|
||||||
onTableOptionChange,
|
onTableOptionChange,
|
||||||
@@ -119,7 +125,7 @@ class AlbumDetailsMedium extends Component {
|
|||||||
|
|
||||||
<Label
|
<Label
|
||||||
title={translate('TotalTrackCountTracksTotalTrackFileCountTracksWithFilesInterp', [totalTrackCount, trackFileCount])}
|
title={translate('TotalTrackCountTracksTotalTrackFileCountTracksWithFilesInterp', [totalTrackCount, trackFileCount])}
|
||||||
kind={getTrackCountKind(albumMonitored, trackFileCount, trackCount)}
|
kind={getTrackCountKind(albumMonitored, albumReleaseDate, trackFileCount, trackCount)}
|
||||||
size={sizes.LARGE}
|
size={sizes.LARGE}
|
||||||
>
|
>
|
||||||
{
|
{
|
||||||
@@ -194,6 +200,7 @@ class AlbumDetailsMedium extends Component {
|
|||||||
AlbumDetailsMedium.propTypes = {
|
AlbumDetailsMedium.propTypes = {
|
||||||
albumId: PropTypes.number.isRequired,
|
albumId: PropTypes.number.isRequired,
|
||||||
albumMonitored: PropTypes.bool.isRequired,
|
albumMonitored: PropTypes.bool.isRequired,
|
||||||
|
albumReleaseDate: PropTypes.string,
|
||||||
mediumNumber: PropTypes.number.isRequired,
|
mediumNumber: PropTypes.number.isRequired,
|
||||||
mediumFormat: PropTypes.string.isRequired,
|
mediumFormat: PropTypes.string.isRequired,
|
||||||
items: PropTypes.arrayOf(PropTypes.object).isRequired,
|
items: PropTypes.arrayOf(PropTypes.object).isRequired,
|
||||||
|
|||||||
@@ -57,6 +57,7 @@ class AlbumDetailsMediumConnector extends Component {
|
|||||||
AlbumDetailsMediumConnector.propTypes = {
|
AlbumDetailsMediumConnector.propTypes = {
|
||||||
albumId: PropTypes.number.isRequired,
|
albumId: PropTypes.number.isRequired,
|
||||||
albumMonitored: PropTypes.bool.isRequired,
|
albumMonitored: PropTypes.bool.isRequired,
|
||||||
|
albumReleaseDate: PropTypes.string,
|
||||||
mediumNumber: PropTypes.number.isRequired,
|
mediumNumber: PropTypes.number.isRequired,
|
||||||
setTracksTableOption: PropTypes.func.isRequired,
|
setTracksTableOption: PropTypes.func.isRequired,
|
||||||
executeCommand: PropTypes.func.isRequired
|
executeCommand: PropTypes.func.isRequired
|
||||||
|
|||||||
@@ -10,15 +10,20 @@ import TableRowCell from 'Components/Table/Cells/TableRowCell';
|
|||||||
import TableRow from 'Components/Table/TableRow';
|
import TableRow from 'Components/Table/TableRow';
|
||||||
import { kinds, sizes } from 'Helpers/Props';
|
import { kinds, sizes } from 'Helpers/Props';
|
||||||
import formatTimeSpan from 'Utilities/Date/formatTimeSpan';
|
import formatTimeSpan from 'Utilities/Date/formatTimeSpan';
|
||||||
|
import isAfter from 'Utilities/Date/isAfter';
|
||||||
import formatBytes from 'Utilities/Number/formatBytes';
|
import formatBytes from 'Utilities/Number/formatBytes';
|
||||||
import translate from 'Utilities/String/translate';
|
import translate from 'Utilities/String/translate';
|
||||||
import styles from './AlbumRow.css';
|
import styles from './AlbumRow.css';
|
||||||
|
|
||||||
function getTrackCountKind(monitored, trackFileCount, trackCount) {
|
function getTrackCountKind(monitored, releaseDate, trackFileCount, trackCount) {
|
||||||
if (trackFileCount === trackCount && trackCount > 0) {
|
if (trackFileCount === trackCount && trackCount > 0) {
|
||||||
return kinds.SUCCESS;
|
return kinds.SUCCESS;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (!releaseDate || isAfter(releaseDate)) {
|
||||||
|
return kinds.DISABLED;
|
||||||
|
}
|
||||||
|
|
||||||
if (!monitored) {
|
if (!monitored) {
|
||||||
return kinds.WARNING;
|
return kinds.WARNING;
|
||||||
}
|
}
|
||||||
@@ -215,7 +220,7 @@ class AlbumRow extends Component {
|
|||||||
>
|
>
|
||||||
<Label
|
<Label
|
||||||
title={translate('TotalTrackCountTracksTotalTrackFileCountTracksWithFilesInterp', [totalTrackCount, trackFileCount])}
|
title={translate('TotalTrackCountTracksTotalTrackFileCountTracksWithFilesInterp', [totalTrackCount, trackFileCount])}
|
||||||
kind={getTrackCountKind(monitored, trackFileCount, trackCount)}
|
kind={getTrackCountKind(monitored, releaseDate, trackFileCount, trackCount)}
|
||||||
size={sizes.MEDIUM}
|
size={sizes.MEDIUM}
|
||||||
>
|
>
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -5,14 +5,19 @@ import RelativeDateCellConnector from 'Components/Table/Cells/RelativeDateCellCo
|
|||||||
import TableRowCell from 'Components/Table/Cells/TableRowCell';
|
import TableRowCell from 'Components/Table/Cells/TableRowCell';
|
||||||
import TableRow from 'Components/Table/TableRow';
|
import TableRow from 'Components/Table/TableRow';
|
||||||
import { kinds, sizes } from 'Helpers/Props';
|
import { kinds, sizes } from 'Helpers/Props';
|
||||||
|
import isAfter from 'Utilities/Date/isAfter';
|
||||||
import translate from 'Utilities/String/translate';
|
import translate from 'Utilities/String/translate';
|
||||||
import styles from './SelectAlbumRow.css';
|
import styles from './SelectAlbumRow.css';
|
||||||
|
|
||||||
function getTrackCountKind(monitored, trackFileCount, trackCount) {
|
function getTrackCountKind(monitored, releaseDate, trackFileCount, trackCount) {
|
||||||
if (trackFileCount === trackCount && trackCount > 0) {
|
if (trackFileCount === trackCount && trackCount > 0) {
|
||||||
return kinds.SUCCESS;
|
return kinds.SUCCESS;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (!releaseDate || isAfter(releaseDate)) {
|
||||||
|
return kinds.DISABLED;
|
||||||
|
}
|
||||||
|
|
||||||
if (!monitored) {
|
if (!monitored) {
|
||||||
return kinds.WARNING;
|
return kinds.WARNING;
|
||||||
}
|
}
|
||||||
@@ -99,7 +104,7 @@ class SelectAlbumRow extends Component {
|
|||||||
>
|
>
|
||||||
<Label
|
<Label
|
||||||
title={translate('TotalTrackCountTracksTotalTrackFileCountTracksWithFilesInterp', [totalTrackCount, trackFileCount])}
|
title={translate('TotalTrackCountTracksTotalTrackFileCountTracksWithFilesInterp', [totalTrackCount, trackFileCount])}
|
||||||
kind={getTrackCountKind(monitored, trackFileCount, trackCount)}
|
kind={getTrackCountKind(monitored, releaseDate, trackFileCount, trackCount)}
|
||||||
size={sizes.MEDIUM}
|
size={sizes.MEDIUM}
|
||||||
>
|
>
|
||||||
{
|
{
|
||||||
|
|||||||
Reference in New Issue
Block a user