The last push before release (#2696)
Co-authored-by: Robbie Davis <robbie@therobbiedavis.com>
This commit is contained in:
parent
2227dc354b
commit
033dc61d54
15 changed files with 681 additions and 433 deletions
|
|
@ -20,10 +20,11 @@ namespace API.Services;
|
|||
|
||||
internal class EmailOptionsDto
|
||||
{
|
||||
public IList<string> ToEmails { get; set; }
|
||||
public string Subject { get; set; }
|
||||
public string Body { get; set; }
|
||||
public IList<KeyValuePair<string, string>> PlaceHolders { get; set; }
|
||||
public required IList<string> ToEmails { get; set; }
|
||||
public required string Subject { get; set; }
|
||||
public required string Body { get; set; }
|
||||
public required string Preheader { get; set; }
|
||||
public IList<KeyValuePair<string, string>>? PlaceHolders { get; set; }
|
||||
/// <summary>
|
||||
/// Filenames to attach
|
||||
/// </summary>
|
||||
|
|
@ -81,7 +82,6 @@ public class EmailService : IEmailService
|
|||
return result;
|
||||
}
|
||||
|
||||
// TODO: Come back and update the template. We can't do it with the v0.8.0 release
|
||||
var placeholders = new List<KeyValuePair<string, string>>
|
||||
{
|
||||
new ("{{Host}}", settings.HostName),
|
||||
|
|
@ -91,8 +91,9 @@ public class EmailService : IEmailService
|
|||
{
|
||||
var emailOptions = new EmailOptionsDto()
|
||||
{
|
||||
Subject = "KavitaEmail Test",
|
||||
Subject = "Kavita - Email Test",
|
||||
Body = UpdatePlaceHolders(await GetEmailBody("EmailTest"), placeholders),
|
||||
Preheader = "Kavita - Email Test",
|
||||
ToEmails = new List<string>()
|
||||
{
|
||||
adminEmail
|
||||
|
|
@ -127,6 +128,7 @@ public class EmailService : IEmailService
|
|||
{
|
||||
Subject = UpdatePlaceHolders("Your email has been changed on {{InvitingUser}}'s Server", placeholders),
|
||||
Body = UpdatePlaceHolders(await GetEmailBody("EmailChange"), placeholders),
|
||||
Preheader = UpdatePlaceHolders("Your email has been changed on {{InvitingUser}}'s Server", placeholders),
|
||||
ToEmails = new List<string>()
|
||||
{
|
||||
data.EmailAddress
|
||||
|
|
@ -182,6 +184,7 @@ public class EmailService : IEmailService
|
|||
{
|
||||
Subject = UpdatePlaceHolders("You've been invited to join {{InvitingUser}}'s Server", placeholders),
|
||||
Body = UpdatePlaceHolders(await GetEmailBody("EmailConfirm"), placeholders),
|
||||
Preheader = UpdatePlaceHolders("You've been invited to join {{InvitingUser}}'s Server", placeholders),
|
||||
ToEmails = new List<string>()
|
||||
{
|
||||
data.EmailAddress
|
||||
|
|
@ -207,6 +210,7 @@ public class EmailService : IEmailService
|
|||
{
|
||||
Subject = UpdatePlaceHolders("A password reset has been requested", placeholders),
|
||||
Body = UpdatePlaceHolders(await GetEmailBody("EmailPasswordReset"), placeholders),
|
||||
Preheader = "A password reset has been requested",
|
||||
ToEmails = new List<string>()
|
||||
{
|
||||
dto.EmailAddress
|
||||
|
|
@ -225,6 +229,7 @@ public class EmailService : IEmailService
|
|||
var emailOptions = new EmailOptionsDto()
|
||||
{
|
||||
Subject = "Send file from Kavita",
|
||||
Preheader = "File(s) sent from Kavita",
|
||||
ToEmails = new List<string>()
|
||||
{
|
||||
data.DestinationEmail
|
||||
|
|
@ -249,7 +254,8 @@ public class EmailService : IEmailService
|
|||
// Inject the body into the base template
|
||||
var fullBody = UpdatePlaceHolders(await GetEmailBody("base"), new List<KeyValuePair<string, string>>()
|
||||
{
|
||||
new ("{{Body}}", userEmailOptions.Body)
|
||||
new ("{{Body}}", userEmailOptions.Body),
|
||||
new ("{{Preheader}}", userEmailOptions.Preheader),
|
||||
});
|
||||
|
||||
var body = new BodyBuilder
|
||||
|
|
@ -320,7 +326,7 @@ public class EmailService : IEmailService
|
|||
return body;
|
||||
}
|
||||
|
||||
private static string UpdatePlaceHolders(string text, IList<KeyValuePair<string, string>> keyValuePairs)
|
||||
private static string UpdatePlaceHolders(string text, IList<KeyValuePair<string, string>>? keyValuePairs)
|
||||
{
|
||||
if (string.IsNullOrEmpty(text) || keyValuePairs == null) return text;
|
||||
|
||||
|
|
|
|||
|
|
@ -531,8 +531,24 @@ public class ReaderService : IReaderService
|
|||
if (!await _unitOfWork.AppUserProgressRepository.AnyUserProgressForSeriesAsync(seriesId, userId))
|
||||
{
|
||||
// I think i need a way to sort volumes last
|
||||
return volumes.OrderBy(v => v.MinNumber.ToString(CultureInfo.InvariantCulture).AsDouble(), _chapterSortComparer).First().Chapters
|
||||
.OrderBy(c => c.Number.AsFloat()).First();
|
||||
var chapters = volumes.OrderBy(v => v.MinNumber, _chapterSortComparer).First().Chapters
|
||||
.OrderBy(c => c.Number.AsFloat())
|
||||
.ToList();
|
||||
|
||||
// If there are specials, then return the first Non-special
|
||||
if (chapters.Exists(c => c.IsSpecial))
|
||||
{
|
||||
var firstChapter = chapters.FirstOrDefault(c => !c.IsSpecial);
|
||||
if (firstChapter == null)
|
||||
{
|
||||
// If there is no non-special chapter, then return first chapter
|
||||
return chapters[0];
|
||||
}
|
||||
|
||||
return firstChapter;
|
||||
}
|
||||
// Else use normal logic
|
||||
return chapters[0];
|
||||
}
|
||||
|
||||
// Loop through all chapters that are not in volume 0
|
||||
|
|
|
|||
|
|
@ -130,7 +130,7 @@ public class VersionUpdaterService : IVersionUpdaterService
|
|||
{
|
||||
if (update == null) return;
|
||||
|
||||
var updateVersion = new Version(update.CurrentVersion);
|
||||
var updateVersion = new Version(update.UpdateVersion);
|
||||
|
||||
if (BuildInfo.Version < updateVersion)
|
||||
{
|
||||
|
|
@ -138,12 +138,6 @@ public class VersionUpdaterService : IVersionUpdaterService
|
|||
await _eventHub.SendMessageAsync(MessageFactory.UpdateAvailable, MessageFactory.UpdateVersionEvent(update),
|
||||
true);
|
||||
}
|
||||
else if (Environment.GetEnvironmentVariable("ASPNETCORE_ENVIRONMENT") == Environments.Development)
|
||||
{
|
||||
_logger.LogWarning("Server is up to date. Current: {CurrentVersion}", BuildInfo.Version);
|
||||
await _eventHub.SendMessageAsync(MessageFactory.UpdateAvailable, MessageFactory.UpdateVersionEvent(update),
|
||||
true);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue