public HttpResponseMessage UpdateSmtpSettings(UpdateSmtpSettingsRequest request) { try { var portalId = PortalSettings.Current.PortalId; PortalController.UpdatePortalSetting(portalId, "SMTPmode", request.SmtpServerMode, false); //admins can only change site settings PortalController.UpdatePortalSetting(portalId, "SMTPServer", request.SmtpServer, false); PortalController.UpdatePortalSetting(portalId, "SMTPConnectionLimit", request.SmtpConnectionLimit, false); PortalController.UpdatePortalSetting(portalId, "SMTPMaxIdleTime", request.SmtpMaxIdleTime, false); PortalController.UpdatePortalSetting(portalId, "SMTPAuthentication", request.SmtpAuthentication.ToString(), false); PortalController.UpdatePortalSetting(portalId, "SMTPUsername", request.SmtpUsername, false); PortalController.UpdateEncryptedString(portalId, "SMTPPassword", request.SmtpPassword, Config.GetDecryptionkey()); PortalController.UpdatePortalSetting(portalId, "SMTPEnableSSL", request.EnableSmtpSsl ? "Y" : "N", false); DataCache.ClearCache(); return(Request.CreateResponse(HttpStatusCode.OK, new { success = true })); } catch (Exception exc) { Logger.Error(exc); return(Request.CreateErrorResponse(HttpStatusCode.InternalServerError, exc)); } }
public HttpResponseMessage UpdateSmtpSettings(UpdateSmtpSettingsRequest request) { try { var portalId = PortalSettings.Current.PortalId; PortalController.UpdatePortalSetting(portalId, "SMTPmode", request.SmtpServerMode, false); if (request.SmtpServerMode == "h") { HostController.Instance.Update("SMTPServer", request.SmtpServer, false); HostController.Instance.Update("SMTPConnectionLimit", request.SmtpConnectionLimit, false); HostController.Instance.Update("SMTPMaxIdleTime", request.SmtpMaxIdleTime, false); HostController.Instance.Update("SMTPAuthentication", request.SmtpAuthentication.ToString(), false); HostController.Instance.Update("SMTPUsername", request.SmtpUsername, false); HostController.Instance.UpdateEncryptedString("SMTPPassword", request.SmtpPassword, Config.GetDecryptionkey()); HostController.Instance.Update("HostEmail", request.SmtpHostEmail); HostController.Instance.Update("SMTPEnableSSL", request.EnableSmtpSsl ? "Y" : "N", false); HostController.Instance.Update("MessageSchedulerBatchSize", request.MessageSchedulerBatchSize.ToString(), false); } else { PortalController.UpdatePortalSetting(portalId, "SMTPServer", request.SmtpServer, false); PortalController.UpdatePortalSetting(portalId, "SMTPConnectionLimit", request.SmtpConnectionLimit, false); PortalController.UpdatePortalSetting(portalId, "SMTPMaxIdleTime", request.SmtpMaxIdleTime, false); PortalController.UpdatePortalSetting(portalId, "SMTPAuthentication", request.SmtpAuthentication.ToString(), false); PortalController.UpdatePortalSetting(portalId, "SMTPUsername", request.SmtpUsername, false); PortalController.UpdateEncryptedString(portalId, "SMTPPassword", request.SmtpPassword, Config.GetDecryptionkey()); PortalController.UpdatePortalSetting(portalId, "SMTPEnableSSL", request.EnableSmtpSsl ? "Y" : "N", false); } DataCache.ClearCache(); return(this.Request.CreateResponse(HttpStatusCode.OK, new { success = true })); } catch (Exception exc) { Logger.Error(exc); return(this.Request.CreateErrorResponse(HttpStatusCode.InternalServerError, exc)); } }