diff --git a/frontend/src/Activity/History/HistoryRow.js b/frontend/src/Activity/History/HistoryRow.js
index 2a0465e35..0c6a814fb 100644
--- a/frontend/src/Activity/History/HistoryRow.js
+++ b/frontend/src/Activity/History/HistoryRow.js
@@ -8,7 +8,8 @@ import IconButton from 'Components/Link/IconButton';
import RelativeDateCellConnector from 'Components/Table/Cells/RelativeDateCellConnector';
import TableRowCell from 'Components/Table/Cells/TableRowCell';
import TableRow from 'Components/Table/TableRow';
-import { icons } from 'Helpers/Props';
+import Tooltip from 'Components/Tooltip/Tooltip';
+import { icons, tooltipPositions } from 'Helpers/Props';
import formatPreferredWordScore from 'Utilities/Number/formatPreferredWordScore';
import HistoryDetailsModal from './Details/HistoryDetailsModal';
import HistoryEventTypeCell from './HistoryEventTypeCell';
@@ -57,6 +58,7 @@ class HistoryRow extends Component {
book,
quality,
customFormats,
+ customFormatScore,
qualityCutoffNotMet,
eventType,
sourceTitle,
@@ -177,7 +179,14 @@ class HistoryRow extends Component {
key={name}
className={styles.customFormatScore}
>
- {formatPreferredWordScore(data.customFormatScore)}
+ }
+ position={tooltipPositions.BOTTOM}
+ />
);
}
@@ -244,6 +253,7 @@ HistoryRow.propTypes = {
book: PropTypes.object,
quality: PropTypes.object.isRequired,
customFormats: PropTypes.arrayOf(PropTypes.object),
+ customFormatScore: PropTypes.number.isRequired,
qualityCutoffNotMet: PropTypes.bool.isRequired,
eventType: PropTypes.string.isRequired,
sourceTitle: PropTypes.string.isRequired,
@@ -257,4 +267,8 @@ HistoryRow.propTypes = {
onMarkAsFailedPress: PropTypes.func.isRequired
};
+HistoryRow.defaultProps = {
+ customFormats: []
+};
+
export default HistoryRow;
diff --git a/frontend/src/Activity/Queue/QueueRow.js b/frontend/src/Activity/Queue/QueueRow.js
index cb3f90ac8..017960c16 100644
--- a/frontend/src/Activity/Queue/QueueRow.js
+++ b/frontend/src/Activity/Queue/QueueRow.js
@@ -14,6 +14,7 @@ import TableRowCell from 'Components/Table/Cells/TableRowCell';
import TableSelectCell from 'Components/Table/Cells/TableSelectCell';
import TableRow from 'Components/Table/TableRow';
import Popover from 'Components/Tooltip/Popover';
+import Tooltip from 'Components/Tooltip/Tooltip';
import { icons, kinds, tooltipPositions } from 'Helpers/Props';
import InteractiveImportModal from 'InteractiveImport/InteractiveImportModal';
import formatBytes from 'Utilities/Number/formatBytes';
@@ -230,7 +231,14 @@ class QueueRow extends Component {
key={name}
className={styles.customFormatScore}
>
- {formatPreferredWordScore(customFormatScore)}
+ }
+ position={tooltipPositions.BOTTOM}
+ />
);
}
@@ -430,6 +438,7 @@ QueueRow.propTypes = {
};
QueueRow.defaultProps = {
+ customFormats: [],
isGrabbing: false,
isRemoving: false
};
diff --git a/src/Readarr.Api.V1/History/HistoryResource.cs b/src/Readarr.Api.V1/History/HistoryResource.cs
index 5ae690c13..b542871f7 100644
--- a/src/Readarr.Api.V1/History/HistoryResource.cs
+++ b/src/Readarr.Api.V1/History/HistoryResource.cs
@@ -17,6 +17,7 @@ public class HistoryResource : RestResource
public string SourceTitle { get; set; }
public QualityModel Quality { get; set; }
public List CustomFormats { get; set; }
+ public int CustomFormatScore { get; set; }
public bool QualityCutoffNotMet { get; set; }
public DateTime Date { get; set; }
public string DownloadId { get; set; }
@@ -38,6 +39,9 @@ public static HistoryResource ToResource(this EntityHistory model, ICustomFormat
return null;
}
+ var customFormats = formatCalculator.ParseCustomFormat(model, model.Author);
+ var customFormatScore = model.Author?.QualityProfile?.Value?.CalculateCustomFormatScore(customFormats) ?? 0;
+
return new HistoryResource
{
Id = model.Id,
@@ -46,7 +50,8 @@ public static HistoryResource ToResource(this EntityHistory model, ICustomFormat
AuthorId = model.AuthorId,
SourceTitle = model.SourceTitle,
Quality = model.Quality,
- CustomFormats = formatCalculator.ParseCustomFormat(model, model.Author).ToResource(false),
+ CustomFormats = customFormats.ToResource(false),
+ CustomFormatScore = customFormatScore,
//QualityCutoffNotMet
Date = model.Date,