use new GetSettingValue() method

This commit is contained in:
sbwalker
2025-04-30 14:18:29 -04:00
parent 24b666a382
commit 6aff27778d

View File

@ -40,27 +40,26 @@ namespace Oqtane.Infrastructure
log += "Processing Notifications For Site: " + site.Name + "<br />"; log += "Processing Notifications For Site: " + site.Name + "<br />";
// get site settings // get site settings
List<Setting> sitesettings = settingRepository.GetSettings(EntityNames.Site, site.SiteId, EntityNames.Host, -1).ToList(); List<Setting> settings = settingRepository.GetSettings(EntityNames.Site, site.SiteId, EntityNames.Host, -1).ToList();
Dictionary<string, string> settings = GetSettings(sitesettings);
if (!site.IsDeleted && (!settings.ContainsKey("SMTPEnabled") || settings["SMTPEnabled"] == "True")) if (!site.IsDeleted && settingRepository.GetSettingValue(settings, "SMTPEnabled", "True") == "True")
{ {
if (settings.ContainsKey("SMTPHost") && settings["SMTPHost"] != "" && if (settingRepository.GetSettingValue(settings, "SMTPHost", "") != "" &&
settings.ContainsKey("SMTPPort") && settings["SMTPPort"] != "" && settingRepository.GetSettingValue(settings, "SMTPPort", "") != "" &&
settings.ContainsKey("SMTPSSL") && settings["SMTPSSL"] != "" && settingRepository.GetSettingValue(settings, "SMTPSender", "") != "")
settings.ContainsKey("SMTPSender") && settings["SMTPSender"] != "")
{ {
// construct SMTP Client // construct SMTP Client
var client = new SmtpClient() var client = new SmtpClient()
{ {
DeliveryMethod = SmtpDeliveryMethod.Network, DeliveryMethod = SmtpDeliveryMethod.Network,
UseDefaultCredentials = false, UseDefaultCredentials = false,
Host = settings["SMTPHost"], Host = settingRepository.GetSettingValue(settings, "SMTPHost", ""),
Port = int.Parse(settings["SMTPPort"]), Port = int.Parse(settingRepository.GetSettingValue(settings, "SMTPPort", "")),
EnableSsl = bool.Parse(settings["SMTPSSL"]) EnableSsl = bool.Parse(settingRepository.GetSettingValue(settings, "SMTPSSL", "False"))
}; };
if (settings["SMTPUsername"] != "" && settings["SMTPPassword"] != "") if (settingRepository.GetSettingValue(settings, "SMTPUsername", "") != "" && settingRepository.GetSettingValue(settings, "SMTPPassword", "") != "")
{ {
client.Credentials = new NetworkCredential(settings["SMTPUsername"], settings["SMTPPassword"]); client.Credentials = new NetworkCredential(settingRepository.GetSettingValue(settings, "SMTPUsername", ""), settingRepository.GetSettingValue(settings, "SMTPPassword", ""));
} }
// iterate through undelivered notifications // iterate through undelivered notifications
@ -100,7 +99,7 @@ namespace Oqtane.Infrastructure
MailMessage mailMessage = new MailMessage(); MailMessage mailMessage = new MailMessage();
// sender // sender
if (settings.ContainsKey("SMTPRelay") && settings["SMTPRelay"] == "True" && !string.IsNullOrEmpty(notification.FromEmail)) if (settingRepository.GetSettingValue(settings, "SMTPRelay", "False") == "True" && !string.IsNullOrEmpty(notification.FromEmail))
{ {
if (!string.IsNullOrEmpty(notification.FromDisplayName)) if (!string.IsNullOrEmpty(notification.FromDisplayName))
{ {
@ -113,7 +112,7 @@ namespace Oqtane.Infrastructure
} }
else else
{ {
mailMessage.From = new MailAddress(settings["SMTPSender"], (!string.IsNullOrEmpty(notification.FromDisplayName)) ? notification.FromDisplayName : site.Name); mailMessage.From = new MailAddress(settingRepository.GetSettingValue(settings, "SMTPSender", ""), (!string.IsNullOrEmpty(notification.FromDisplayName)) ? notification.FromDisplayName : site.Name);
} }
// recipient // recipient
@ -162,7 +161,7 @@ namespace Oqtane.Infrastructure
} }
else else
{ {
log += "SMTP Not Configured Properly In Site Settings - Host, Port, SSL, And Sender Are All Required" + "<br />"; log += "SMTP Not Configured Properly In Site Settings - Host, Port, And Sender Are All Required" + "<br />";
} }
} }
else else
@ -173,15 +172,5 @@ namespace Oqtane.Infrastructure
return log; return log;
} }
private Dictionary<string, string> GetSettings(List<Setting> settings)
{
Dictionary<string, string> dictionary = new Dictionary<string, string>();
foreach (Setting setting in settings.OrderBy(item => item.SettingName).ToList())
{
dictionary.Add(setting.SettingName, setting.SettingValue);
}
return dictionary;
}
} }
} }