Some small backend newsletter changes, we can now detect if there are any movies and/or tv shows, if there are none then we will no longer send out an empty newsletter.

Also fixed the issue where we were not escaping the sonarr root folders #1118
This commit is contained in:
Jamie.Rees 2017-03-16 14:55:26 +00:00
commit 2b8a5c6423
8 changed files with 73 additions and 24 deletions

View file

@ -77,7 +77,7 @@ namespace Ombi.Services.Jobs.RecentlyAddedNewsletter
private static readonly Logger Log = LogManager.GetCurrentClassLogger();
public string GetNewsletterHtml(bool test)
public Newsletter GetNewsletter(bool test)
{
try
{
@ -86,7 +86,7 @@ namespace Ombi.Services.Jobs.RecentlyAddedNewsletter
catch (Exception e)
{
Log.Error(e);
return string.Empty;
return null;
}
}
@ -97,11 +97,12 @@ namespace Ombi.Services.Jobs.RecentlyAddedNewsletter
public List<EmbyEpisodeInformation> EpisodeInformation { get; set; }
}
private string GetHtml(bool test)
private Newsletter GetHtml(bool test)
{
var sb = new StringBuilder();
var embySettings = EmbySettings.GetSettings();
var newsletter = new Newsletter();
var embySettings = EmbySettings.GetSettings();
var embyContent = Content.GetAll().ToList();
var series = embyContent.Where(x => x.Type == EmbyMediaType.Series).ToList();
@ -129,6 +130,7 @@ namespace Ombi.Services.Jobs.RecentlyAddedNewsletter
});
}
GenerateMovieHtml(info, sb);
newsletter.MovieCount = info.Count;
info.Clear();
foreach (var t in series)
@ -155,6 +157,7 @@ namespace Ombi.Services.Jobs.RecentlyAddedNewsletter
}
}
GenerateTvHtml(info, sb);
newsletter.TvCount = info.Count;
var template = new RecentlyAddedTemplate();
var html = template.LoadTemplate(sb.ToString());
@ -182,7 +185,8 @@ namespace Ombi.Services.Jobs.RecentlyAddedNewsletter
var escapedHtml = new string(html.Where(c => !char.IsControl(c)).ToArray());
Log.Debug(escapedHtml);
return escapedHtml;
newsletter.Html = escapedHtml;
return newsletter;
}
private void GenerateMovieHtml(IEnumerable<EmbyRecentlyAddedModel> recentlyAddedMovies, StringBuilder sb)