/// <summary> /// Set base notification parameters (sender, recipient, isActive) /// </summary> /// <param name="notification"></param> /// <param name="changeEvent"></param> private void SetNotificationParameters(SubscriptionEmailNotificationBase notification, SubscriptionChangeEvent changeEvent) { var store = _storeService.GetById(changeEvent.ModifiedSubscription.StoreId); notification.Subscription = changeEvent.ModifiedSubscription; notification.Sender = store.Email; notification.IsActive = true; //Link notification to subscription to getting notification history for each subscription individually notification.ObjectId = changeEvent.ModifiedSubscription.Id; notification.ObjectTypeId = typeof(Subscription).Name; var member = _memberService.GetByIds(new[] { changeEvent.ModifiedSubscription.CustomerId }).FirstOrDefault(); if (member != null) { var email = member.Emails.FirstOrDefault(); if (!string.IsNullOrEmpty(email)) { notification.Recipient = email; } } if (string.IsNullOrEmpty(notification.Recipient)) { if (changeEvent.ModifiedSubscription.CustomerOrderPrototype.Addresses.Count > 0) { var address = changeEvent.ModifiedSubscription.CustomerOrderPrototype.Addresses.FirstOrDefault(); if (address != null) { notification.Recipient = address.Email; } } } }
/// <summary> /// Set base notification parameters (sender, recipient, isActive) /// </summary> protected virtual async Task SetNotificationParametersAsync(SubscriptionEmailNotificationBase notification, Subscription subscription) { var store = _storeService.GetById(subscription.StoreId); notification.Subscription = subscription; notification.Sender = store.Email; notification.IsActive = true; //Link notification to subscription to getting notification history for each subscription individually notification.ObjectId = subscription.Id; notification.ObjectTypeId = typeof(Subscription).Name; notification.Recipient = await GetSubscriptionRecipientEmailAsync(subscription); }
/// <summary> /// Set base notification parameters (sender, recipient, isActive) /// </summary> protected virtual async Task SetNotificationParametersAsync(SubscriptionEmailNotificationBase notification, Subscription subscription) { var store = await _storeService.GetByIdAsync(subscription.StoreId); notification.IsActive = true; notification.Subscription = subscription; notification.From = store.Email; notification.To = await GetSubscriptionRecipientEmailAsync(subscription); //Link notification to subscription to getting notification history for each subscription individually notification.TenantIdentity = new TenantIdentity(subscription.Id, typeof(Subscription).Name); }
/// <summary> /// Set base notification parameters (sender, recipient, isActive) /// </summary> protected virtual async Task SetNotificationParametersAsync(SubscriptionEmailNotificationBase notification, Subscription subscription) { var store = await _storeService.GetByIdAsync(subscription.StoreId, StoreResponseGroup.StoreInfo.ToString()); notification.Subscription = subscription; notification.From = store.Email; notification.To = await GetSubscriptionRecipientEmailAsync(subscription); notification.LanguageCode = subscription.CustomerOrderPrototype.LanguageCode; //Link notification to subscription to getting notification history for each subscription individually notification.TenantIdentity = new TenantIdentity(subscription.Id, typeof(Subscription).Name); }