private void AddOrUpdateEmailTemplateSettings(EmailTemplateSettings emailTemplateSettings, string subject, string senderName, string senderAddress, string toAddresses, string ccAddresses, string bccAddresses, string templateFile, long?languageId = null) { if (!string.IsNullOrEmpty(subject) || !string.IsNullOrEmpty(senderName) || !string.IsNullOrEmpty(senderAddress) || !string.IsNullOrEmpty(toAddresses) || !string.IsNullOrEmpty(ccAddresses) || !string.IsNullOrEmpty(bccAddresses) || !string.IsNullOrEmpty(templateFile)) { if (emailTemplateSettings == null) { emailTemplateSettings = new EmailTemplateSettings(); emailTemplateSettings.LanguageId = languageId; emailTemplate.Settings.Add(emailTemplateSettings); } emailTemplateSettings.Subject = subject; emailTemplateSettings.SenderName = senderName; emailTemplateSettings.SenderAddress = senderAddress; emailTemplateSettings.ToAddresses = new List <string>(toAddresses.Split(new char[] { ';' }, StringSplitOptions.RemoveEmptyEntries)); emailTemplateSettings.CcAddresses = new List <string>(ccAddresses.Split(new char[] { ';' }, StringSplitOptions.RemoveEmptyEntries)); emailTemplateSettings.BccAddresses = new List <string>(bccAddresses.Split(new char[] { ';' }, StringSplitOptions.RemoveEmptyEntries)); emailTemplateSettings.TemplateFile = templateFile; } else { //Remove it - if it's empty if (emailTemplateSettings != null) { emailTemplate.Settings.Remove(emailTemplateSettings); } } }
protected override void OnLoad(EventArgs e) { if (!IsPostBack) { TemplateFileSelectorControl.LoadTemplateFiles(); TxtName.Text = emailTemplate.Name; TxtAlias.Text = emailTemplate.Alias; ChkShouldClientReceiveEmail.Checked = emailTemplate.SendEmailToCustomer; EmailTemplateSettings defaultSettings = emailTemplate.Settings.SingleOrDefault(s => s.LanguageId == null); if (defaultSettings != null) { TxtSubject.Text = defaultSettings.Subject; TxtSenderName.Text = defaultSettings.SenderName; TxtSenderAddress.Text = defaultSettings.SenderAddress; TxtToAddresses.Text = string.Join(";", defaultSettings.ToAddresses); TxtCCAddresses.Text = string.Join(";", defaultSettings.CcAddresses); TxtBCCAddresses.Text = string.Join(";", defaultSettings.BccAddresses); TemplateFileSelectorControl.Items.TrySelectByValue(defaultSettings.TemplateFile); } foreach (Language language in umbracoLanguages) { TemplateFileSelector templateFileSelectorControl = CurrentTabView.FindControl <TemplateFileSelector>("TemplateFileSelectorControl" + language.id); templateFileSelectorControl.LoadTemplateFiles(); EmailTemplateSettings emailTemplateSettings = emailTemplate.Settings.SingleOrDefault(s => s.LanguageId == language.id); if (emailTemplateSettings != null) { TextBox txtSubject = CurrentTabView.FindControl <TextBox>("TxtSubject" + language.id); TextBox txtSenderName = CurrentTabView.FindControl <TextBox>("TxtSenderName" + language.id); TextBox txtSenderAddress = CurrentTabView.FindControl <TextBox>("TxtSenderAddress" + language.id); TextBox txtToAddresses = CurrentTabView.FindControl <TextBox>("TxtToAddresses" + language.id); TextBox txtCCAddresses = CurrentTabView.FindControl <TextBox>("TxtCCAddresses" + language.id); TextBox txtBCCAddresses = CurrentTabView.FindControl <TextBox>("TxtBCCAddresses" + language.id); txtSubject.Text = emailTemplateSettings.Subject; txtSenderName.Text = emailTemplateSettings.SenderName; txtSenderAddress.Text = emailTemplateSettings.SenderAddress; txtToAddresses.Text = string.Join(";", emailTemplateSettings.ToAddresses); txtCCAddresses.Text = string.Join(";", emailTemplateSettings.CcAddresses); txtBCCAddresses.Text = string.Join(";", emailTemplateSettings.BccAddresses); foreach (ListItem item in templateFileSelectorControl.Items) { item.Selected = item.Value == emailTemplateSettings.TemplateFile; if (item.Selected) { break; } } } } } base.OnLoad(e); }
public EmailNotificationsSettingsService(EmailTemplateSettings p2PSuccessForSenderTemplateSettings, EmailTemplateSettings p2PSuccessForReceiverTemplateSettings, EmailTemplateSettings p2PFailureForSenderTemplateSettings) { P2PSuccessForSenderTemplateSettings = p2PSuccessForSenderTemplateSettings; P2PSuccessForReceiverTemplateSettings = p2PSuccessForReceiverTemplateSettings; P2PFailureForSenderTemplateSettings = p2PFailureForSenderTemplateSettings; }
public EmailService( IEmailTemplatesManager emailTemplatesManager, IEmailManager emailManager, IEmailTemplateParser emailTemplateParser, IOptions <EmailTemplateSettings> emailTemplatesOptions) { this.emailTemplatesManager = emailTemplatesManager; this.emailManager = emailManager; this.emailTemplateParser = emailTemplateParser; this.emailTemplateSettings = emailTemplatesOptions.Value; }
public EmailNotificationsSettingsService(EmailTemplateSettings p2PSuccessForSenderTemplateSettings, EmailTemplateSettings p2PSuccessForReceiverTemplateSettings, EmailTemplateSettings p2PFailureForSenderTemplateSettings, EmailTemplateSettings paymentTransferAcceptedTemplateSettings, EmailTemplateSettings paymentTransferRejectedTemplateSettings) { P2PSuccessForSenderTemplateSettings = p2PSuccessForSenderTemplateSettings; P2PSuccessForReceiverTemplateSettings = p2PSuccessForReceiverTemplateSettings; P2PFailureForSenderTemplateSettings = p2PFailureForSenderTemplateSettings; PaymentTransferAcceptedTemplateSettings = paymentTransferAcceptedTemplateSettings; PaymentTransferRejectedTemplateSettings = paymentTransferRejectedTemplateSettings; }
public SendBankDetailsRepeatReminderEmailCommandHandler(ICommandPublisher commandPublisher, IOptions <EmailTemplateSettings> emailTemplates, IAccountDomainRepository accountDomainRepository, IHashingService hashingService, IOptions <ApplicationSettings> applicationSettings) { _commandPublisher = commandPublisher; _emailTemplates = emailTemplates.Value; _accountDomainRepository = accountDomainRepository; _hashingService = hashingService; _applicationSettings = applicationSettings.Value; }
public void Arrange() { _fixture = new Fixture(); _commandPublisher = new Mock <ICommandPublisher>(); _settings = new Mock <IOptions <EmailTemplateSettings> >(); _templates = new EmailTemplateSettings { BankDetailsRequired = new EmailTemplate { TemplateId = Guid.NewGuid().ToString() } }; _settings.Setup(x => x.Value).Returns(_templates); _sut = new SendBankDetailsRequiredEmailCommandHandler(_commandPublisher.Object, _settings.Object); }
public void Arrange() { _fixture = new Fixture(); _commandPublisher = new Mock <ICommandPublisher>(); _emailSettings = new Mock <IOptions <EmailTemplateSettings> >(); _templates = new EmailTemplateSettings { BankDetailsRepeatReminder = new EmailTemplate { TemplateId = Guid.NewGuid().ToString() } }; _emailSettings.Setup(x => x.Value).Returns(_templates); _accountRepository = new Mock <IAccountDomainRepository>(); _applicationSettings = new Mock <IOptions <ApplicationSettings> >(); _hashingService = new Mock <IHashingService>(); }
private static IDictionary<string, IEnumerable<string>> GetTemplateParameters(EmailTemplateSettings template, IDictionary<string, IEnumerable<string>> parameters) => (parameters?.Any() == true ? parameters.ToDictionary(x => x.Key, x => x.Value) : template.Parameters?.ToDictionary(x => x.Name, x => x.Values.AsEnumerable())) ?? new Dictionary<string, IEnumerable<string>>();
private void AddOrUpdateEmailTemplateSettings( EmailTemplateSettings emailTemplateSettings, string subject, string senderName, string senderAddress, string toAddresses, string ccAddresses, string bccAddresses, string templateFile, long? languageId = null ) { if ( !string.IsNullOrEmpty( subject ) || !string.IsNullOrEmpty( senderName ) || !string.IsNullOrEmpty( senderAddress ) || !string.IsNullOrEmpty( toAddresses ) || !string.IsNullOrEmpty( ccAddresses ) || !string.IsNullOrEmpty( bccAddresses ) || !string.IsNullOrEmpty( templateFile ) ) { if ( emailTemplateSettings == null ) { emailTemplateSettings = new EmailTemplateSettings(); emailTemplateSettings.LanguageId = languageId; emailTemplate.Settings.Add( emailTemplateSettings ); } emailTemplateSettings.Subject = subject; emailTemplateSettings.SenderName = senderName; emailTemplateSettings.SenderAddress = senderAddress; emailTemplateSettings.ToAddresses = new List<string>( toAddresses.Split( new char[] { ';' }, StringSplitOptions.RemoveEmptyEntries ) ); emailTemplateSettings.CcAddresses = new List<string>( ccAddresses.Split( new char[] { ';' }, StringSplitOptions.RemoveEmptyEntries ) ); emailTemplateSettings.BccAddresses = new List<string>( bccAddresses.Split( new char[] { ';' }, StringSplitOptions.RemoveEmptyEntries ) ); emailTemplateSettings.TemplateFile = templateFile; } else { //Remove it - if it's empty if ( emailTemplateSettings != null ) { emailTemplate.Settings.Remove( emailTemplateSettings ); } } }
protected void BtnCreate_Click(object sender, EventArgs e) { if (Page.IsValid) { Store store = new Store(TxtName.Text); store.Save(); //Give permissions to the current logged in user Permissions permissions = PermissionService.Instance.GetCurrentLoggedInUserPermissions(); if (permissions != null && !permissions.IsUserSuperAdmin) { StoreSpecificPermissionType storePermissions = StoreSpecificPermissionType.None; foreach (StoreSpecificPermissionType permissionType in Enum.GetValues(typeof(StoreSpecificPermissionType)).Cast <StoreSpecificPermissionType>()) { storePermissions |= permissionType; } permissions.StoreSpecificPermissions.Add(store.Id, storePermissions); permissions.Save(); } const string editOrderFilePath = @"macroScripts\tea-commerce\edit-order.cshtml"; if (File.Exists(HostingEnvironment.MapPath("~" + Path.DirectorySeparatorChar + editOrderFilePath))) { store.UISettings.EditOrderUiFile = editOrderFilePath; store.Save(); } if (store.GeneralSettings.ConfirmationEmailTemplateId != null) { const string emailTemplateFile = @"macroScripts\tea-commerce\email-template-confirmation.cshtml"; if (File.Exists(HostingEnvironment.MapPath("~" + Path.DirectorySeparatorChar + emailTemplateFile))) { EmailTemplate emailTemplate = EmailTemplateService.Instance.Get(store.Id, store.GeneralSettings.ConfirmationEmailTemplateId.Value); EmailTemplateSettings defaultSettings = emailTemplate.Settings.SingleOrDefault(s => s.LanguageId == null); if (defaultSettings != null) { defaultSettings.TemplateFile = emailTemplateFile; } emailTemplate.Save(); } } if (store.GeneralSettings.PaymentInconsistencyEmailTemplateId != null) { const string emailTemplateFile = @"macroScripts\tea-commerce\email-template-payment-inconsistency.cshtml"; if (File.Exists(HostingEnvironment.MapPath("~" + Path.DirectorySeparatorChar + emailTemplateFile))) { EmailTemplate emailTemplate = EmailTemplateService.Instance.Get(store.Id, store.GeneralSettings.PaymentInconsistencyEmailTemplateId.Value); EmailTemplateSettings defaultSettings = emailTemplate.Settings.SingleOrDefault(s => s.LanguageId == null); if (defaultSettings != null) { defaultSettings.TemplateFile = emailTemplateFile; } emailTemplate.Save(); } } Redirect(WebUtils.GetPageUrl(Constants.Pages.EditStore) + "?id=" + store.Id); } }
public SendBankDetailsReminderEmailCommandHandler(ICommandPublisher commandPublisher, IOptions <EmailTemplateSettings> emailTemplates) { _commandPublisher = commandPublisher; _emailTemplates = emailTemplates.Value; }
private static IDictionary <string, IEnumerable <string> > GetTemplateParameters(EmailTemplateSettings template, IDictionary <string, IEnumerable <string> > parameters) => (parameters?.Any() == true ? parameters.ToDictionary(x => x.Key, x => x.Value) : template.Parameters?.ToDictionary(x => x.Name, x => x.Values.AsEnumerable())) ?? new Dictionary <string, IEnumerable <string> >();