Domain Expiration task fixes

This commit is contained in:
vfedosevich 2014-12-08 06:10:22 -08:00
parent 1fbacb828c
commit f8f7f196c4
9 changed files with 52 additions and 49 deletions

View file

@ -4757,14 +4757,13 @@ namespace WebsitePanel.EnterpriseServer
);
}
public static IDataReader GetScheduleTaskEmailTemplate(string taskId, string parameterId)
public static IDataReader GetScheduleTaskEmailTemplate(string taskId)
{
return SqlHelper.ExecuteReader(
ConnectionString,
CommandType.StoredProcedure,
"GetScheduleTaskEmailTemplate",
new SqlParameter("@taskId", taskId),
new SqlParameter("@parameterId", parameterId)
new SqlParameter("@taskId", taskId)
);
}

View file

@ -116,19 +116,21 @@ namespace WebsitePanel.EnterpriseServer
{
BackgroundTask topTask = TaskManager.TopTask;
var bodyTemplate = ObjectUtils.FillObjectFromDataReader<ScheduleTaskEmailTemplate>(DataProvider.GetScheduleTaskEmailTemplate(TaskId, MailBodyTemplateParameter));
var template = ObjectUtils.FillObjectFromDataReader<ScheduleTaskEmailTemplate>(DataProvider.GetScheduleTaskEmailTemplate(TaskId));
// input parameters
string mailFrom = "wsp-scheduler@noreply.net";
string mailFrom = template.From;
string mailTo = (string)topTask.GetParamValue("MAIL_TO");
string mailSubject = "Domain expiration notification";
string mailSubject = template.Subject;
Hashtable items = new Hashtable();
items["user"] = user;
items["Domains"] = domains.Select(x => new { DomainName = x.DomainName, ExpirationDate = x.ExpirationDate, Customer = string.Format("{0} {1}", domainUsers[x.PackageId].FirstName, domainUsers[x.PackageId].LastName) });
items["Domains"] = domains.Select(x => new { DomainName = x.DomainName,
ExpirationDate = x.ExpirationDate,
Customer = string.Format("{0} {1}", domainUsers[x.PackageId].FirstName, domainUsers[x.PackageId].LastName) });
var mailBody = PackageController.EvaluateTemplate(bodyTemplate.Value, items);
var mailBody = PackageController.EvaluateTemplate(template.Template, items);
// send mail message
MailHelper.SendMessage(mailFrom, mailTo, mailSubject, mailBody, true);

View file

@ -204,8 +204,8 @@ namespace WebsitePanel.EnterpriseServer
{
BackgroundTask topTask = TaskManager.TopTask;
var bodyTempalte = ObjectUtils.FillObjectFromDataReader<ScheduleTaskEmailTemplate>(DataProvider.GetScheduleTaskEmailTemplate(TaskId, MailBodyTemplateParameter));
var domainRecordTemplate = ObjectUtils.FillObjectFromDataReader<ScheduleTaskEmailTemplate>(DataProvider.GetScheduleTaskEmailTemplate(TaskId, MailBodyDomainRecordTemplateParameter));
var bodyTempalte = ObjectUtils.FillObjectFromDataReader<ScheduleTaskEmailTemplate>(DataProvider.GetScheduleTaskEmailTemplate(TaskId));
var domainRecordTemplate = ObjectUtils.FillObjectFromDataReader<ScheduleTaskEmailTemplate>(DataProvider.GetScheduleTaskEmailTemplate(TaskId));
// input parameters
string mailFrom = "wsp-scheduler@noreply.net";
@ -228,7 +228,7 @@ namespace WebsitePanel.EnterpriseServer
{
foreach (var record in dnsChanged.DnsRecordsCompare.Where(x=>x.Status != DomainDnsRecordStatuses.NotChanged))
{
var tableRow = Utils.ReplaceStringVariable(domainRecordTemplate.Value, "domain", domain.Domain);
var tableRow = Utils.ReplaceStringVariable(domainRecordTemplate.Template, "domain", domain.Domain);
tableRow = Utils.ReplaceStringVariable(tableRow, "dns", dnsChanged.DnsServer);
tableRow = Utils.ReplaceStringVariable(tableRow, "recordType", record.Type.ToString());
tableRow = Utils.ReplaceStringVariable(tableRow, "dbRecord", record.DbRecord != null ? record.DbRecord.Value : "-");
@ -240,7 +240,7 @@ namespace WebsitePanel.EnterpriseServer
}
var mailBody = Utils.ReplaceStringVariable(bodyTempalte.Value, "RecordRow", string.Join(" ", tableRecords));
var mailBody = Utils.ReplaceStringVariable(bodyTempalte.Template, "RecordRow", string.Join(" ", tableRecords));
// send mail message
MailHelper.SendMessage(mailFrom, mailTo, mailSubject, mailBody, true);

View file

@ -5,11 +5,11 @@
</configSections>
<!-- Connection strings -->
<connectionStrings>
<add name="EnterpriseServer" connectionString="server=dev-sql;database=WebsitePanel;uid=WebsitePanel;pwd=sbbk40q85dc7jzj8b5kn;" providerName="System.Data.SqlClient" />
<add name="EnterpriseServer" connectionString="Server=(local)\SQLExpress;Database=WebsitePanel;uid=sa;pwd=Password12" providerName="System.Data.SqlClient"/>
</connectionStrings>
<appSettings>
<!-- Encryption util settings -->
<add key="WebsitePanel.CryptoKey" value="jj2n22t2kje035cg4l77" />
<add key="WebsitePanel.CryptoKey" value="1234567890"/>
<!-- A1D4KDHUE83NKHddF -->
<add key="WebsitePanel.EncryptionEnabled" value="true"/>
<!-- Web Applications -->

View file

@ -8,7 +8,8 @@ namespace WebsitePanel.Providers.DomainLookup
public class ScheduleTaskEmailTemplate
{
public string TaskId { get; set; }
public string ParameterID { get; set; }
public string Value { get; set; }
public string From { get; set; }
public string Subject { get; set; }
public string Template { get; set; }
}
}

View file

@ -8,7 +8,7 @@
</startup>
<appSettings>
<!-- Encryption util settings -->
<add key="WebsitePanel.CryptoKey" value="jj2n22t2kje035cg4l77"/>
<add key="WebsitePanel.CryptoKey" value="0123456789"/>
<!-- A1D4KDHUE83NKHddF -->
<add key="WebsitePanel.EncryptionEnabled" value="true" />
</appSettings>

View file

@ -50,7 +50,7 @@
<!-- Perform security check -->
<enabled value="true" />
<!-- Server password -->
<password value="TaIF+82DBVpZ/Ix216bG/o02fUE=" />
<password value="+uxnDOdf55yuH6iZYXgYAxsfIBw=" />
</security>
</websitepanel.server>
<system.web>

View file

@ -24,7 +24,7 @@
<asp:Label ID="lblDayBeforeNotify" runat="server" meta:resourcekey="lblDayBeforeNotify" Text="Notify before:"></asp:Label>
</td>
<td class="Normal" width="100%">
<asp:TextBox ID="txtDaysBeforeNotify" runat="server" Width="95%" CssClass="NormalTextBox" MaxLength="1000"></asp:TextBox><br />
<asp:TextBox ID="txtDaysBeforeNotify" runat="server" Width="95%" CssClass="NormalTextBox" MaxLength="1000"></asp:TextBox>
<asp:Label ID="lblDayBeforeNotifyHint" runat="server" meta:resourcekey="lblDayBeforeNotifyHint" Text="Number of days before expiration date"></asp:Label>
</td>
</tr>