This commit is contained in:
@@ -98,7 +98,7 @@ namespace AyaNova.Biz
|
||||
if (Subscription.DeliveryMethod == NotifyDeliveryMethod.App)
|
||||
await DeliverInApp(notifyevent, Subscription.AgeValue, ct);
|
||||
else if (Subscription.DeliveryMethod == NotifyDeliveryMethod.SMTP)
|
||||
await DeliverSMTP(notifyevent, Subscription.DeliveryAddress, ct);
|
||||
await DeliverSMTP(notifyevent, Subscription.AgeValue, Subscription.DeliveryAddress, ct);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -128,7 +128,7 @@ namespace AyaNova.Biz
|
||||
|
||||
|
||||
|
||||
private static async Task DeliverSMTP(NotifyEvent ne, string deliveryAddress, AyContext ct)
|
||||
private static async Task DeliverSMTP(NotifyEvent ne, TimeSpan ageValue, string deliveryAddress, AyContext ct)
|
||||
{
|
||||
try
|
||||
{
|
||||
@@ -147,6 +147,15 @@ namespace AyaNova.Biz
|
||||
TranslationKeysToFetch.Add("Server");
|
||||
var EventTypeTranslationKey = "NotifyEvent" + ne.EventType.ToString();
|
||||
TranslationKeysToFetch.Add(EventTypeTranslationKey);
|
||||
if (ageValue != TimeSpan.Zero)
|
||||
{
|
||||
TranslationKeysToFetch.Add("TimeSpanDays");
|
||||
TranslationKeysToFetch.Add("TimeSpanHours");
|
||||
TranslationKeysToFetch.Add("TimeSpanMinutes");
|
||||
TranslationKeysToFetch.Add("TimeSpanSeconds");
|
||||
}
|
||||
|
||||
//get translations
|
||||
var transid = await ct.UserOptions.AsNoTracking().Where(x => x.UserId == ne.UserId).Select(x => x.TranslationId).FirstOrDefaultAsync();
|
||||
var LT = await TranslationBiz.GetSubsetStaticAsync(TranslationKeysToFetch, transid);
|
||||
|
||||
@@ -165,17 +174,21 @@ namespace AyaNova.Biz
|
||||
|
||||
var subject = $"AY:{AyaTypeTranslated}:{name}:{SubscriptionTypeName}";
|
||||
|
||||
//Age relevant notification
|
||||
string AgeDisplay = "";
|
||||
if (ageValue != TimeSpan.Zero)
|
||||
AgeDisplay = $"({AyaNova.Util.DateUtil.FormatTimeSpan(ageValue, LT["TimeSpanDays"], LT["TimeSpanHours"], LT["TimeSpanMinutes"], LT["TimeSpanSeconds"])})\n";
|
||||
|
||||
//var test=AyaNova.Util.DateUtil.FormatTimeSpan(new TimeSpan(2,3,4,5), LT["TimeSpanDays"], LT["TimeSpanHours"], LT["TimeSpanMinutes"], LT["TimeSpanSeconds"]);
|
||||
|
||||
IMailer m = AyaNova.Util.ServiceProviderProvider.Mailer;
|
||||
|
||||
var body = "";
|
||||
//NOTE: if need any other exemptions besides backup status make a separate static function "CanOpen(NotifyEventType)"
|
||||
|
||||
|
||||
if (ne.ObjectId != 0 || ne.EventType == NotifyEventType.BackupStatus)
|
||||
{
|
||||
body = $"{AyaTypeTranslated}\n{OpenObjectUrlBuilder(ne.AyaType, ne.ObjectId, ne.EventType)}\n";
|
||||
body = $"{AgeDisplay}{AyaTypeTranslated}\n{OpenObjectUrlBuilder(ne.AyaType, ne.ObjectId, ne.EventType)}\n";
|
||||
}
|
||||
body += ne.Message;
|
||||
|
||||
@@ -196,6 +209,7 @@ namespace AyaNova.Biz
|
||||
await m.SendEmailAsync(deliveryAddress, subject, body, ServerGlobalOpsSettingsCache.Notify);
|
||||
}
|
||||
}
|
||||
await NotifyEventHelper.AddGeneralNotifyEvent(NotifyEventType.GeneralNotification, $"Test of general notification system", "Error", null, ne.UserId);
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user