Compare commits

...

3 Commits

5 changed files with 30 additions and 0 deletions

View File

@@ -49,6 +49,7 @@ export interface SonarrSeries {
languageProfileId: number;
seasonFolder: boolean;
monitored: boolean;
monitorNewItems: 'all' | 'none';
useSceneNumbering: boolean;
runtime: number;
tvdbId: number;
@@ -98,6 +99,7 @@ export interface AddSeriesOptions {
tags?: number[];
seriesType: SonarrSeries['seriesType'];
monitored?: boolean;
monitorNewItems?: SonarrSeries['monitorNewItems'];
searchNow?: boolean;
}
@@ -241,6 +243,7 @@ class SonarrAPI extends ServarrBase<{
tags: options.tags,
seasonFolder: options.seasonFolder,
monitored: options.monitored,
monitorNewItems: options.monitorNewItems,
rootFolderPath: options.rootFolderPath,
seriesType: options.seriesType,
addOptions: {

View File

@@ -93,6 +93,7 @@ export interface SonarrSettings extends DVRSettings {
activeLanguageProfileId?: number;
animeTags?: number[];
enableSeasonFolders: boolean;
monitorNewItems: 'all' | 'none';
}
interface Quota {

View File

@@ -664,6 +664,7 @@ export class MediaRequestSubscriber
seriesType,
tags,
monitored: true,
monitorNewItems: sonarrSettings.monitorNewItems,
searchNow: !sonarrSettings.preventSearch,
};

View File

@@ -78,6 +78,7 @@ const messages = defineMessages('components.Settings.SonarrModal', {
animeTags: 'Anime Tags',
notagoptions: 'No tags.',
selecttags: 'Select tags',
monitorNewItems: 'Monitor New Seasons',
});
interface SonarrModalProps {
@@ -247,6 +248,7 @@ const SonarrModal = ({ onClose, sonarr, onSave }: SonarrModalProps) => {
syncEnabled: sonarr?.syncEnabled ?? false,
enableSearch: !sonarr?.preventSearch,
tagRequests: sonarr?.tagRequests ?? false,
monitorNewItems: sonarr?.monitorNewItems ?? 'all',
}}
validationSchema={SonarrSettingsSchema}
onSubmit={async (values) => {
@@ -290,6 +292,7 @@ const SonarrModal = ({ onClose, sonarr, onSave }: SonarrModalProps) => {
syncEnabled: values.syncEnabled,
preventSearch: !values.enableSearch,
tagRequests: values.tagRequests,
monitorNewItems: values.monitorNewItems,
};
if (!sonarr) {
await axios.post('/api/v1/settings/sonarr', submission);
@@ -964,6 +967,27 @@ const SonarrModal = ({ onClose, sonarr, onSave }: SonarrModalProps) => {
/>
</div>
</div>
<div className="form-row">
<label htmlFor="monitorNewItems" className="text-label">
{intl.formatMessage(messages.monitorNewItems)}
</label>
<div className="form-input-area">
<div className="form-input-field">
<Field
as="select"
id="monitorNewItems"
name="monitorNewItems"
disabled={!isValidated || isTesting}
>
<option value="all">All</option>
<option value="none">None</option>
</Field>
</div>
</div>
{errors.monitorNewItems && touched.monitorNewItems && (
<div className="error">{errors.monitorNewItems}</div>
)}
</div>
<div className="form-row">
<label htmlFor="externalUrl" className="text-label">
{intl.formatMessage(messages.externalUrl)}

View File

@@ -1063,6 +1063,7 @@
"components.Settings.SonarrModal.loadinglanguageprofiles": "Loading language profiles…",
"components.Settings.SonarrModal.loadingprofiles": "Loading quality profiles…",
"components.Settings.SonarrModal.loadingrootfolders": "Loading root folders…",
"components.Settings.SonarrModal.monitorNewItems": "Monitor New Seasons",
"components.Settings.SonarrModal.notagoptions": "No tags.",
"components.Settings.SonarrModal.port": "Port",
"components.Settings.SonarrModal.qualityprofile": "Quality Profile",