mirror of
https://github.com/Ombi-app/Ombi.git
synced 2025-08-20 13:23:20 -07:00
feat(notifications): Add more curly variables for partially available notification
* feat: Add more curly variables for partially available notification * test: Fix newly added test
This commit is contained in:
parent
29fb614efd
commit
66aa101019
7 changed files with 25 additions and 1 deletions
|
@ -292,6 +292,8 @@ namespace Ombi.Notifications.Tests
|
||||||
|
|
||||||
notificationOptions.Substitutes.Add("Season", "1");
|
notificationOptions.Substitutes.Add("Season", "1");
|
||||||
notificationOptions.Substitutes.Add("Episodes", "1, 2");
|
notificationOptions.Substitutes.Add("Episodes", "1, 2");
|
||||||
|
notificationOptions.Substitutes.Add("EpisodesCount", "2");
|
||||||
|
notificationOptions.Substitutes.Add("SeasonEpisodes", "1x1, 1x2");
|
||||||
var req = F.Build<ChildRequests>()
|
var req = F.Build<ChildRequests>()
|
||||||
.With(x => x.RequestType, RequestType.TvShow)
|
.With(x => x.RequestType, RequestType.TvShow)
|
||||||
.With(x => x.Available, true)
|
.With(x => x.Available, true)
|
||||||
|
@ -324,6 +326,8 @@ namespace Ombi.Notifications.Tests
|
||||||
Assert.That("name", Is.EqualTo(sut.ApplicationName));
|
Assert.That("name", Is.EqualTo(sut.ApplicationName));
|
||||||
Assert.That(sut.PartiallyAvailableEpisodeNumbers, Is.EqualTo("1, 2"));
|
Assert.That(sut.PartiallyAvailableEpisodeNumbers, Is.EqualTo("1, 2"));
|
||||||
Assert.That(sut.PartiallyAvailableSeasonNumber, Is.EqualTo("1"));
|
Assert.That(sut.PartiallyAvailableSeasonNumber, Is.EqualTo("1"));
|
||||||
|
Assert.That(sut.PartiallyAvailableEpisodeCount, Is.EqualTo("2"));
|
||||||
|
Assert.That(sut.PartiallyAvailableEpisodesList, Is.EqualTo("1x1, 1x2"));
|
||||||
}
|
}
|
||||||
|
|
||||||
[Test]
|
[Test]
|
||||||
|
|
|
@ -186,6 +186,14 @@ namespace Ombi.Notifications
|
||||||
{
|
{
|
||||||
PartiallyAvailableEpisodeNumbers = epNumber;
|
PartiallyAvailableEpisodeNumbers = epNumber;
|
||||||
}
|
}
|
||||||
|
if (opts.Substitutes.TryGetValue("EpisodesCount", out var epCount))
|
||||||
|
{
|
||||||
|
PartiallyAvailableEpisodeCount = epCount;
|
||||||
|
}
|
||||||
|
if (opts.Substitutes.TryGetValue("SeasonEpisodes", out var sEpisodes))
|
||||||
|
{
|
||||||
|
PartiallyAvailableEpisodesList = sEpisodes;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -295,6 +303,8 @@ namespace Ombi.Notifications
|
||||||
public string ProviderId { get; set; }
|
public string ProviderId { get; set; }
|
||||||
public string PartiallyAvailableEpisodeNumbers { get; set; }
|
public string PartiallyAvailableEpisodeNumbers { get; set; }
|
||||||
public string PartiallyAvailableSeasonNumber { get; set; }
|
public string PartiallyAvailableSeasonNumber { get; set; }
|
||||||
|
public string PartiallyAvailableEpisodeCount { get; set; }
|
||||||
|
public string PartiallyAvailableEpisodesList { get; set; }
|
||||||
|
|
||||||
// System Defined
|
// System Defined
|
||||||
private string LongDate => DateTime.Now.ToString("D");
|
private string LongDate => DateTime.Now.ToString("D");
|
||||||
|
@ -336,6 +346,8 @@ namespace Ombi.Notifications
|
||||||
{ nameof(ProviderId), ProviderId },
|
{ nameof(ProviderId), ProviderId },
|
||||||
{ nameof(PartiallyAvailableEpisodeNumbers), PartiallyAvailableEpisodeNumbers },
|
{ nameof(PartiallyAvailableEpisodeNumbers), PartiallyAvailableEpisodeNumbers },
|
||||||
{ nameof(PartiallyAvailableSeasonNumber), PartiallyAvailableSeasonNumber },
|
{ nameof(PartiallyAvailableSeasonNumber), PartiallyAvailableSeasonNumber },
|
||||||
|
{ nameof(PartiallyAvailableEpisodesList), PartiallyAvailableEpisodesList },
|
||||||
|
{ nameof(PartiallyAvailableEpisodeCount), PartiallyAvailableEpisodeCount },
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
}
|
}
|
|
@ -212,6 +212,8 @@ namespace Ombi.Schedule.Jobs.Radarr
|
||||||
};
|
};
|
||||||
notification.Substitutes.Add("Season", availableEpisode.First().SeasonNumber.ToString());
|
notification.Substitutes.Add("Season", availableEpisode.First().SeasonNumber.ToString());
|
||||||
notification.Substitutes.Add("Episodes", string.Join(", ", availableEpisode.Select(x => x.EpisodeNumber)));
|
notification.Substitutes.Add("Episodes", string.Join(", ", availableEpisode.Select(x => x.EpisodeNumber)));
|
||||||
|
notification.Substitutes.Add("EpisodesCount", $"{availableEpisode.Count}");
|
||||||
|
notification.Substitutes.Add("SeasonEpisodes", string.Join(", ", availableEpisode.Select(x => $"{x.SeasonNumber}x{x.EpisodeNumber}" )));
|
||||||
await _notification.Notify(notification);
|
await _notification.Notify(notification);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -227,6 +227,8 @@ namespace Ombi.Schedule.Jobs.Emby
|
||||||
};
|
};
|
||||||
notification.Substitutes.Add("Season", availableEpisode.First().SeasonNumber.ToString());
|
notification.Substitutes.Add("Season", availableEpisode.First().SeasonNumber.ToString());
|
||||||
notification.Substitutes.Add("Episodes", string.Join(", ", availableEpisode.Select(x => x.EpisodeNumber)));
|
notification.Substitutes.Add("Episodes", string.Join(", ", availableEpisode.Select(x => x.EpisodeNumber)));
|
||||||
|
notification.Substitutes.Add("EpisodesCount", $"{availableEpisode.Count}");
|
||||||
|
notification.Substitutes.Add("SeasonEpisodes", string.Join(", ", availableEpisode.Select(x => $"{x.SeasonNumber}x{x.EpisodeNumber}" )));
|
||||||
await _notificationService.Notify(notification);
|
await _notificationService.Notify(notification);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -253,6 +253,8 @@ namespace Ombi.Schedule.Jobs.Jellyfin
|
||||||
};
|
};
|
||||||
notification.Substitutes.Add("Season", availableEpisode.First().SeasonNumber.ToString());
|
notification.Substitutes.Add("Season", availableEpisode.First().SeasonNumber.ToString());
|
||||||
notification.Substitutes.Add("Episodes", string.Join(", ", availableEpisode.Select(x => x.EpisodeNumber)));
|
notification.Substitutes.Add("Episodes", string.Join(", ", availableEpisode.Select(x => x.EpisodeNumber)));
|
||||||
|
notification.Substitutes.Add("EpisodesCount", $"{availableEpisode.Count}");
|
||||||
|
notification.Substitutes.Add("SeasonEpisodes", string.Join(", ", availableEpisode.Select(x => $"{x.SeasonNumber}x{x.EpisodeNumber}" )));
|
||||||
await _notificationService.Notify(notification);
|
await _notificationService.Notify(notification);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -174,6 +174,8 @@ namespace Ombi.Schedule.Jobs.Plex
|
||||||
};
|
};
|
||||||
notification.Substitutes.Add("Season", availableEpisode.First().SeasonNumber.ToString());
|
notification.Substitutes.Add("Season", availableEpisode.First().SeasonNumber.ToString());
|
||||||
notification.Substitutes.Add("Episodes", string.Join(", " ,availableEpisode.Select(x => x.EpisodeNumber)));
|
notification.Substitutes.Add("Episodes", string.Join(", " ,availableEpisode.Select(x => x.EpisodeNumber)));
|
||||||
|
notification.Substitutes.Add("EpisodesCount", $"{availableEpisode.Count}");
|
||||||
|
notification.Substitutes.Add("SeasonEpisodes", string.Join(", ", availableEpisode.Select(x => $"{x.SeasonNumber}x{x.EpisodeNumber}" )));
|
||||||
await _notificationService.Notify(notification);
|
await _notificationService.Notify(notification);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -213,7 +213,7 @@ namespace Ombi.Store.Context
|
||||||
notificationToAdd = new NotificationTemplates
|
notificationToAdd = new NotificationTemplates
|
||||||
{
|
{
|
||||||
NotificationType = notificationType,
|
NotificationType = notificationType,
|
||||||
Message = "Your TV request for {Title} is now partially available! Season {PartiallyAvailableSeasonNumber} Episodes {PartiallyAvailableEpisodeNumbers}!",
|
Message = "Your TV request for {Title} is now partially available! Episodes {PartiallyAvailableEpisodesList}!",
|
||||||
Subject = "{ApplicationName}: Partially Available Request!",
|
Subject = "{ApplicationName}: Partially Available Request!",
|
||||||
Agent = agent,
|
Agent = agent,
|
||||||
Enabled = true,
|
Enabled = true,
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue