Domain Expiration task fixes
This commit is contained in:
parent
1fbacb828c
commit
f8f7f196c4
9 changed files with 52 additions and 49 deletions
|
@ -6154,29 +6154,29 @@ GO
|
||||||
|
|
||||||
-- Domain lookup tasks
|
-- Domain lookup tasks
|
||||||
|
|
||||||
IF NOT EXISTS (SELECT * FROM [dbo].[ScheduleTasks] WHERE [TaskID] = N'SCHEDULE_TASK_DOMAIN_LOOKUP')
|
--IF NOT EXISTS (SELECT * FROM [dbo].[ScheduleTasks] WHERE [TaskID] = N'SCHEDULE_TASK_DOMAIN_LOOKUP')
|
||||||
BEGIN
|
--BEGIN
|
||||||
INSERT [dbo].[ScheduleTasks] ([TaskID], [TaskType], [RoleID]) VALUES (N'SCHEDULE_TASK_DOMAIN_LOOKUP', N'WebsitePanel.EnterpriseServer.DomainLookupViewTask, WebsitePanel.EnterpriseServer.Code', 1)
|
--INSERT [dbo].[ScheduleTasks] ([TaskID], [TaskType], [RoleID]) VALUES (N'SCHEDULE_TASK_DOMAIN_LOOKUP', N'WebsitePanel.EnterpriseServer.DomainLookupViewTask, WebsitePanel.EnterpriseServer.Code', 1)
|
||||||
END
|
--END
|
||||||
GO
|
--GO
|
||||||
|
|
||||||
IF NOT EXISTS (SELECT * FROM [dbo].[ScheduleTaskViewConfiguration] WHERE [TaskID] = N'SCHEDULE_TASK_DOMAIN_LOOKUP')
|
--IF NOT EXISTS (SELECT * FROM [dbo].[ScheduleTaskViewConfiguration] WHERE [TaskID] = N'SCHEDULE_TASK_DOMAIN_LOOKUP')
|
||||||
BEGIN
|
--BEGIN
|
||||||
INSERT [dbo].[ScheduleTaskViewConfiguration] ([TaskID], [ConfigurationID], [Environment], [Description]) VALUES (N'SCHEDULE_TASK_DOMAIN_LOOKUP', N'ASP_NET', N'ASP.NET', N'~/DesktopModules/WebsitePanel/ScheduleTaskControls/DomainLookupView.ascx')
|
--INSERT [dbo].[ScheduleTaskViewConfiguration] ([TaskID], [ConfigurationID], [Environment], [Description]) VALUES (N'SCHEDULE_TASK_DOMAIN_LOOKUP', N'ASP_NET', N'ASP.NET', N'~/DesktopModules/WebsitePanel/ScheduleTaskControls/DomainLookupView.ascx')
|
||||||
END
|
--END
|
||||||
GO
|
--GO
|
||||||
|
|
||||||
IF NOT EXISTS (SELECT * FROM [dbo].[ScheduleTaskParameters] WHERE [TaskID] = N'SCHEDULE_TASK_DOMAIN_LOOKUP' AND [ParameterID]= N'DNS_SERVERS' )
|
--IF NOT EXISTS (SELECT * FROM [dbo].[ScheduleTaskParameters] WHERE [TaskID] = N'SCHEDULE_TASK_DOMAIN_LOOKUP' AND [ParameterID]= N'DNS_SERVERS' )
|
||||||
BEGIN
|
--BEGIN
|
||||||
INSERT [dbo].[ScheduleTaskParameters] ([TaskID], [ParameterID], [DataTypeID], [DefaultValue], [ParameterOrder]) VALUES (N'SCHEDULE_TASK_DOMAIN_LOOKUP', N'DNS_SERVERS', N'String', NULL, 1)
|
--INSERT [dbo].[ScheduleTaskParameters] ([TaskID], [ParameterID], [DataTypeID], [DefaultValue], [ParameterOrder]) VALUES (N'SCHEDULE_TASK_DOMAIN_LOOKUP', N'DNS_SERVERS', N'String', NULL, 1)
|
||||||
END
|
--END
|
||||||
GO
|
--GO
|
||||||
|
|
||||||
IF NOT EXISTS (SELECT * FROM [dbo].[ScheduleTaskParameters] WHERE [TaskID] = N'SCHEDULE_TASK_DOMAIN_LOOKUP' AND [ParameterID]= N'MAIL_TO' )
|
--IF NOT EXISTS (SELECT * FROM [dbo].[ScheduleTaskParameters] WHERE [TaskID] = N'SCHEDULE_TASK_DOMAIN_LOOKUP' AND [ParameterID]= N'MAIL_TO' )
|
||||||
BEGIN
|
--BEGIN
|
||||||
INSERT [dbo].[ScheduleTaskParameters] ([TaskID], [ParameterID], [DataTypeID], [DefaultValue], [ParameterOrder]) VALUES (N'SCHEDULE_TASK_DOMAIN_LOOKUP', N'MAIL_TO', N'String', NULL, 2)
|
--INSERT [dbo].[ScheduleTaskParameters] ([TaskID], [ParameterID], [DataTypeID], [DefaultValue], [ParameterOrder]) VALUES (N'SCHEDULE_TASK_DOMAIN_LOOKUP', N'MAIL_TO', N'String', NULL, 2)
|
||||||
END
|
--END
|
||||||
GO
|
--GO
|
||||||
|
|
||||||
-- Domain Expiration Task
|
-- Domain Expiration Task
|
||||||
|
|
||||||
|
@ -6253,14 +6253,15 @@ GO
|
||||||
CREATE TABLE ScheduleTasksEmailTemplates
|
CREATE TABLE ScheduleTasksEmailTemplates
|
||||||
(
|
(
|
||||||
[TaskID] [nvarchar](100) NOT NULL,
|
[TaskID] [nvarchar](100) NOT NULL,
|
||||||
[ParameterID] [nvarchar](100) NOT NULL,
|
[From] [nvarchar](100) NOT NULL,
|
||||||
[Value] [nvarchar](Max) NULL
|
[Subject] [nvarchar](Max) NULL,
|
||||||
|
[Template] [nvarchar](Max) NULL
|
||||||
)
|
)
|
||||||
GO
|
GO
|
||||||
|
|
||||||
IF NOT EXISTS (SELECT * FROM [dbo].[ScheduleTasksEmailTemplates] WHERE [TaskID] = N'SCHEDULE_TASK_DOMAIN_EXPIRATION' AND [ParameterID]= N'MAIL_BODY' )
|
IF NOT EXISTS (SELECT * FROM [dbo].[ScheduleTasksEmailTemplates] WHERE [TaskID] = N'SCHEDULE_TASK_DOMAIN_EXPIRATION')
|
||||||
BEGIN
|
BEGIN
|
||||||
INSERT [dbo].[ScheduleTasksEmailTemplates] ([TaskID], [ParameterID], [Value]) VALUES (N'SCHEDULE_TASK_DOMAIN_EXPIRATION', N'MAIL_BODY', N'
|
INSERT [dbo].[ScheduleTasksEmailTemplates] ([TaskID], [From], [Subject], [Template]) VALUES (N'SCHEDULE_TASK_DOMAIN_EXPIRATION', N'wsp-scheduler@noreply.net', N'Domain expiration notification', N'
|
||||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||||
<head>
|
<head>
|
||||||
<title>Domain Expiration Information</title>
|
<title>Domain Expiration Information</title>
|
||||||
|
@ -6354,15 +6355,15 @@ DROP PROCEDURE GetScheduleTaskEmailTemplate
|
||||||
GO
|
GO
|
||||||
CREATE PROCEDURE [dbo].GetScheduleTaskEmailTemplate
|
CREATE PROCEDURE [dbo].GetScheduleTaskEmailTemplate
|
||||||
(
|
(
|
||||||
@TaskID [nvarchar](100) ,
|
@TaskID [nvarchar](100)
|
||||||
@ParameterID [nvarchar](100)
|
|
||||||
)
|
)
|
||||||
AS
|
AS
|
||||||
SELECT
|
SELECT
|
||||||
[TaskID],
|
[TaskID],
|
||||||
[ParameterID],
|
[From] ,
|
||||||
[Value]
|
[Subject] ,
|
||||||
FROM [dbo].[ScheduleTasksEmailTemplates] where [TaskID] = @TaskID AND [ParameterID] = @ParameterID
|
[Template]
|
||||||
|
FROM [dbo].[ScheduleTasksEmailTemplates] where [TaskID] = @TaskID
|
||||||
GO
|
GO
|
||||||
|
|
||||||
IF EXISTS (SELECT * FROM SYS.OBJECTS WHERE type = 'P' AND name = 'GetDomainDnsRecords')
|
IF EXISTS (SELECT * FROM SYS.OBJECTS WHERE type = 'P' AND name = 'GetDomainDnsRecords')
|
||||||
|
|
|
@ -4757,14 +4757,13 @@ namespace WebsitePanel.EnterpriseServer
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
public static IDataReader GetScheduleTaskEmailTemplate(string taskId, string parameterId)
|
public static IDataReader GetScheduleTaskEmailTemplate(string taskId)
|
||||||
{
|
{
|
||||||
return SqlHelper.ExecuteReader(
|
return SqlHelper.ExecuteReader(
|
||||||
ConnectionString,
|
ConnectionString,
|
||||||
CommandType.StoredProcedure,
|
CommandType.StoredProcedure,
|
||||||
"GetScheduleTaskEmailTemplate",
|
"GetScheduleTaskEmailTemplate",
|
||||||
new SqlParameter("@taskId", taskId),
|
new SqlParameter("@taskId", taskId)
|
||||||
new SqlParameter("@parameterId", parameterId)
|
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -116,19 +116,21 @@ namespace WebsitePanel.EnterpriseServer
|
||||||
{
|
{
|
||||||
BackgroundTask topTask = TaskManager.TopTask;
|
BackgroundTask topTask = TaskManager.TopTask;
|
||||||
|
|
||||||
var bodyTemplate = ObjectUtils.FillObjectFromDataReader<ScheduleTaskEmailTemplate>(DataProvider.GetScheduleTaskEmailTemplate(TaskId, MailBodyTemplateParameter));
|
var template = ObjectUtils.FillObjectFromDataReader<ScheduleTaskEmailTemplate>(DataProvider.GetScheduleTaskEmailTemplate(TaskId));
|
||||||
|
|
||||||
// input parameters
|
// input parameters
|
||||||
string mailFrom = "wsp-scheduler@noreply.net";
|
string mailFrom = template.From;
|
||||||
string mailTo = (string)topTask.GetParamValue("MAIL_TO");
|
string mailTo = (string)topTask.GetParamValue("MAIL_TO");
|
||||||
string mailSubject = "Domain expiration notification";
|
string mailSubject = template.Subject;
|
||||||
|
|
||||||
Hashtable items = new Hashtable();
|
Hashtable items = new Hashtable();
|
||||||
|
|
||||||
items["user"] = user;
|
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
|
// send mail message
|
||||||
MailHelper.SendMessage(mailFrom, mailTo, mailSubject, mailBody, true);
|
MailHelper.SendMessage(mailFrom, mailTo, mailSubject, mailBody, true);
|
||||||
|
|
|
@ -204,8 +204,8 @@ namespace WebsitePanel.EnterpriseServer
|
||||||
{
|
{
|
||||||
BackgroundTask topTask = TaskManager.TopTask;
|
BackgroundTask topTask = TaskManager.TopTask;
|
||||||
|
|
||||||
var bodyTempalte = ObjectUtils.FillObjectFromDataReader<ScheduleTaskEmailTemplate>(DataProvider.GetScheduleTaskEmailTemplate(TaskId, MailBodyTemplateParameter));
|
var bodyTempalte = ObjectUtils.FillObjectFromDataReader<ScheduleTaskEmailTemplate>(DataProvider.GetScheduleTaskEmailTemplate(TaskId));
|
||||||
var domainRecordTemplate = ObjectUtils.FillObjectFromDataReader<ScheduleTaskEmailTemplate>(DataProvider.GetScheduleTaskEmailTemplate(TaskId, MailBodyDomainRecordTemplateParameter));
|
var domainRecordTemplate = ObjectUtils.FillObjectFromDataReader<ScheduleTaskEmailTemplate>(DataProvider.GetScheduleTaskEmailTemplate(TaskId));
|
||||||
|
|
||||||
// input parameters
|
// input parameters
|
||||||
string mailFrom = "wsp-scheduler@noreply.net";
|
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))
|
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, "dns", dnsChanged.DnsServer);
|
||||||
tableRow = Utils.ReplaceStringVariable(tableRow, "recordType", record.Type.ToString());
|
tableRow = Utils.ReplaceStringVariable(tableRow, "recordType", record.Type.ToString());
|
||||||
tableRow = Utils.ReplaceStringVariable(tableRow, "dbRecord", record.DbRecord != null ? record.DbRecord.Value : "-");
|
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
|
// send mail message
|
||||||
MailHelper.SendMessage(mailFrom, mailTo, mailSubject, mailBody, true);
|
MailHelper.SendMessage(mailFrom, mailTo, mailSubject, mailBody, true);
|
||||||
|
|
|
@ -5,11 +5,11 @@
|
||||||
</configSections>
|
</configSections>
|
||||||
<!-- Connection strings -->
|
<!-- Connection strings -->
|
||||||
<connectionStrings>
|
<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>
|
</connectionStrings>
|
||||||
<appSettings>
|
<appSettings>
|
||||||
<!-- Encryption util settings -->
|
<!-- Encryption util settings -->
|
||||||
<add key="WebsitePanel.CryptoKey" value="jj2n22t2kje035cg4l77" />
|
<add key="WebsitePanel.CryptoKey" value="1234567890"/>
|
||||||
<!-- A1D4KDHUE83NKHddF -->
|
<!-- A1D4KDHUE83NKHddF -->
|
||||||
<add key="WebsitePanel.EncryptionEnabled" value="true"/>
|
<add key="WebsitePanel.EncryptionEnabled" value="true"/>
|
||||||
<!-- Web Applications -->
|
<!-- Web Applications -->
|
||||||
|
|
|
@ -8,7 +8,8 @@ namespace WebsitePanel.Providers.DomainLookup
|
||||||
public class ScheduleTaskEmailTemplate
|
public class ScheduleTaskEmailTemplate
|
||||||
{
|
{
|
||||||
public string TaskId { get; set; }
|
public string TaskId { get; set; }
|
||||||
public string ParameterID { get; set; }
|
public string From { get; set; }
|
||||||
public string Value { get; set; }
|
public string Subject { get; set; }
|
||||||
|
public string Template { get; set; }
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -8,7 +8,7 @@
|
||||||
</startup>
|
</startup>
|
||||||
<appSettings>
|
<appSettings>
|
||||||
<!-- Encryption util settings -->
|
<!-- Encryption util settings -->
|
||||||
<add key="WebsitePanel.CryptoKey" value="jj2n22t2kje035cg4l77"/>
|
<add key="WebsitePanel.CryptoKey" value="0123456789"/>
|
||||||
<!-- A1D4KDHUE83NKHddF -->
|
<!-- A1D4KDHUE83NKHddF -->
|
||||||
<add key="WebsitePanel.EncryptionEnabled" value="true" />
|
<add key="WebsitePanel.EncryptionEnabled" value="true" />
|
||||||
</appSettings>
|
</appSettings>
|
||||||
|
|
|
@ -50,7 +50,7 @@
|
||||||
<!-- Perform security check -->
|
<!-- Perform security check -->
|
||||||
<enabled value="true" />
|
<enabled value="true" />
|
||||||
<!-- Server password -->
|
<!-- Server password -->
|
||||||
<password value="TaIF+82DBVpZ/Ix216bG/o02fUE=" />
|
<password value="+uxnDOdf55yuH6iZYXgYAxsfIBw=" />
|
||||||
</security>
|
</security>
|
||||||
</websitepanel.server>
|
</websitepanel.server>
|
||||||
<system.web>
|
<system.web>
|
||||||
|
|
|
@ -24,7 +24,7 @@
|
||||||
<asp:Label ID="lblDayBeforeNotify" runat="server" meta:resourcekey="lblDayBeforeNotify" Text="Notify before:"></asp:Label>
|
<asp:Label ID="lblDayBeforeNotify" runat="server" meta:resourcekey="lblDayBeforeNotify" Text="Notify before:"></asp:Label>
|
||||||
</td>
|
</td>
|
||||||
<td class="Normal" width="100%">
|
<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>
|
<asp:Label ID="lblDayBeforeNotifyHint" runat="server" meta:resourcekey="lblDayBeforeNotifyHint" Text="Number of days before expiration date"></asp:Label>
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue