ST fixes
This commit is contained in:
parent
df814794a2
commit
a5120e14b2
6 changed files with 242 additions and 213 deletions
|
@ -6249,7 +6249,7 @@ Please, find below details of your domain expiration information.
|
|||
<tr>
|
||||
<td>#Domain.DomainName#</td>
|
||||
<td>#Domain.Customer#</td>
|
||||
<td>Expired</td>
|
||||
<td>#Domain.ExpirationDate#</td>
|
||||
</tr>
|
||||
</ad:foreach>
|
||||
</tbody>
|
||||
|
@ -6313,7 +6313,7 @@ Please, find below details of your domain expiration information.
|
|||
<ad:foreach collection="#Domains#" var="Domain" index="i">
|
||||
Domain: #Domain.DomainName#
|
||||
Customer: #Domain.Customer#
|
||||
Expiration Date: Expired
|
||||
Expiration Date: #Domain.ExpirationDate#
|
||||
|
||||
</ad:foreach>
|
||||
|
||||
|
@ -6385,7 +6385,7 @@ Please, find below details of MX and NS changes.
|
|||
</p>
|
||||
|
||||
<ad:foreach collection="#Domains#" var="Domain" index="i">
|
||||
<h2>#Domain.DomainName#</h2>
|
||||
<h2>#Domain.DomainName# - #DomainUsers[Domain.PackageId].FirstName# #DomainUsers[Domain.PackageId].LastName#</h2>
|
||||
|
||||
<table>
|
||||
<thead>
|
||||
|
@ -6394,7 +6394,7 @@ Please, find below details of MX and NS changes.
|
|||
<th>Type</th>
|
||||
<th>Status</th>
|
||||
<th>Old Value</th>
|
||||
<th>New Value</th>
|
||||
<th>New Value</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
|
@ -6403,8 +6403,8 @@ Please, find below details of MX and NS changes.
|
|||
<td>#DnsChange.DnsServer#</td>
|
||||
<td>#DnsChange.Type#</td>
|
||||
<td>#DnsChange.Status#</td>
|
||||
<td>#DnsChange.OldRecord.Value#</td>
|
||||
<td>#DnsChange.NewRecord.Value#</td>
|
||||
<td>#DnsChange.OldRecord.Value#</td>
|
||||
<td>#DnsChange.NewRecord.Value#</td>
|
||||
</tr>
|
||||
</ad:foreach>
|
||||
</tbody>
|
||||
|
@ -6440,20 +6440,19 @@ INSERT [dbo].[UserSettings] ([UserID], [SettingsName], [PropertyName], [Property
|
|||
Hello #user.FirstName#,
|
||||
</ad:if>
|
||||
|
||||
Please, find below MX and NS Changes Information.
|
||||
|
||||
Please, find below details of MX and NS changes.
|
||||
|
||||
|
||||
<ad:foreach collection="#Domains#" var="Domain" index="i">
|
||||
|
||||
#Domain.DomainName#
|
||||
#Domain.DomainName# - #DomainUsers[Domain.PackageId].FirstName# #DomainUsers[Domain.PackageId].LastName#
|
||||
|
||||
<ad:foreach collection="#Domain.DnsChanges#" var="DnsChange" index="j">
|
||||
DNS: #DnsChange.DnsServer#
|
||||
Type: #DnsChange.Type#
|
||||
Status: #DnsChange.Status#
|
||||
Old Value: #DnsChange.OldRecord.Value#
|
||||
New Value: #DnsChange.NewRecord.Value#
|
||||
DNS: #DnsChange.DnsServer#
|
||||
Type: #DnsChange.Type#
|
||||
Status: #DnsChange.Status#
|
||||
Old Value: #DnsChange.OldRecord.Value#
|
||||
New Value: #DnsChange.NewRecord.Value#
|
||||
|
||||
</ad:foreach>
|
||||
</ad:foreach>
|
||||
|
@ -6501,7 +6500,7 @@ Hello #user.FirstName#,
|
|||
</ad:if>
|
||||
|
||||
<p>
|
||||
No MX and NS changes have been founded.
|
||||
No MX and NS changes have been found.
|
||||
</p>
|
||||
|
||||
<p>
|
||||
|
|
|
@ -32,7 +32,7 @@ namespace WebsitePanel.EnterpriseServer
|
|||
var checkedDomains = new List<int>();
|
||||
var expiredDomains = new List<DomainInfo>();
|
||||
var nonExistenDomains = new List<DomainInfo>();
|
||||
var subDomains = new List<DomainInfo>();
|
||||
var allDomains = new List<DomainInfo>();
|
||||
var allTopLevelDomains = new List<DomainInfo>();
|
||||
|
||||
// get input parameters
|
||||
|
@ -58,7 +58,7 @@ namespace WebsitePanel.EnterpriseServer
|
|||
{
|
||||
var domains = ServerController.GetDomains(package.PackageId);
|
||||
|
||||
subDomains.AddRange(domains.Where(x => x.IsSubDomain));
|
||||
allDomains.AddRange(domains);
|
||||
|
||||
domains = domains.Where(x => !x.IsSubDomain && !x.IsDomainPointer).ToList(); //Selecting top-level domains
|
||||
|
||||
|
@ -96,17 +96,24 @@ namespace WebsitePanel.EnterpriseServer
|
|||
}
|
||||
}
|
||||
|
||||
subDomains = subDomains.GroupBy(p => p.DomainId).Select(g => g.First()).ToList();
|
||||
var subDomains = allDomains.Where(x => x.ExpirationDate == null || CheckDomainExpiration(x.ExpirationDate, daysBeforeNotify)).GroupBy(p => p.DomainId).Select(g => g.First()).ToList();
|
||||
allTopLevelDomains = allTopLevelDomains.GroupBy(p => p.DomainId).Select(g => g.First()).ToList();
|
||||
|
||||
foreach (var subDomain in subDomains)
|
||||
{
|
||||
var mainDomain = allTopLevelDomains.Where(x => subDomain.DomainName.ToLowerInvariant().Contains(x.DomainName.ToLowerInvariant())).OrderByDescending(s => s.DomainName.Length).FirstOrDefault(); ;
|
||||
var mainDomain = allTopLevelDomains.Where(x => subDomain.DomainId != x.DomainId && subDomain.DomainName.ToLowerInvariant().Contains(x.DomainName.ToLowerInvariant())).OrderByDescending(s => s.DomainName.Length).FirstOrDefault(); ;
|
||||
|
||||
if (mainDomain != null)
|
||||
{
|
||||
ServerController.UpdateDomainRegistrationData(subDomain, mainDomain.CreationDate, mainDomain.ExpirationDate);
|
||||
|
||||
var nonExistenDomain = nonExistenDomains.FirstOrDefault(x => subDomain.DomainId == x.DomainId);
|
||||
|
||||
if (nonExistenDomain != null)
|
||||
{
|
||||
nonExistenDomains.Remove(nonExistenDomain);
|
||||
}
|
||||
|
||||
Thread.Sleep(100);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -32,6 +32,7 @@ namespace WebsitePanel.EnterpriseServer
|
|||
BackgroundTask topTask = TaskManager.TopTask;
|
||||
|
||||
List<DomainDnsChanges> domainsChanges = new List<DomainDnsChanges>();
|
||||
var domainUsers = new Dictionary<int, UserInfo>();
|
||||
|
||||
// get input parameters
|
||||
string dnsServersString = (string)topTask.GetParamValue(DnsServersParameter);
|
||||
|
@ -83,8 +84,16 @@ namespace WebsitePanel.EnterpriseServer
|
|||
continue;
|
||||
}
|
||||
|
||||
if (!domainUsers.ContainsKey(domain.PackageId))
|
||||
{
|
||||
var domainUser = UserController.GetUser(packages.First(x=>x.PackageId == domain.PackageId).UserId);
|
||||
|
||||
domainUsers.Add(domain.PackageId, domainUser);
|
||||
}
|
||||
|
||||
DomainDnsChanges domainChanges = new DomainDnsChanges();
|
||||
domainChanges.DomainName = domain.DomainName;
|
||||
domainChanges.PackageId = domain.PackageId;
|
||||
|
||||
var dbDnsRecords = ObjectUtils.CreateListFromDataReader<DnsRecordInfo>(DataProvider.GetDomainAllDnsRecords(domain.DomainId));
|
||||
|
||||
|
@ -109,7 +118,7 @@ namespace WebsitePanel.EnterpriseServer
|
|||
|
||||
var changedDomains = FindDomainsWithChangedRecords(domainsChanges);
|
||||
|
||||
SendMailMessage(user, changedDomains);
|
||||
SendMailMessage(user, changedDomains, domainUsers);
|
||||
}
|
||||
|
||||
|
||||
|
@ -252,7 +261,7 @@ namespace WebsitePanel.EnterpriseServer
|
|||
Thread.Sleep(100);
|
||||
}
|
||||
|
||||
private void SendMailMessage(UserInfo user, IEnumerable<DomainDnsChanges> domainsChanges)
|
||||
private void SendMailMessage(UserInfo user, IEnumerable<DomainDnsChanges> domainsChanges, Dictionary<int, UserInfo> domainUsers)
|
||||
{
|
||||
BackgroundTask topTask = TaskManager.TopTask;
|
||||
|
||||
|
@ -286,6 +295,7 @@ namespace WebsitePanel.EnterpriseServer
|
|||
Hashtable items = new Hashtable();
|
||||
|
||||
items["user"] = user;
|
||||
items["DomainUsers"] = domainUsers;
|
||||
items["Domains"] = domainsChanges;
|
||||
|
||||
body = PackageController.EvaluateTemplate(body, items);
|
||||
|
|
|
@ -8,6 +8,7 @@ namespace WebsitePanel.Providers.DomainLookup
|
|||
public class DomainDnsChanges
|
||||
{
|
||||
public string DomainName { get; set; }
|
||||
public int PackageId { get; set; }
|
||||
|
||||
public List<DnsRecordInfoChange> DnsChanges { get; set; }
|
||||
|
||||
|
|
|
@ -213,4 +213,7 @@
|
|||
<data name="DomainExpirationDate.NotExist" xml:space="preserve">
|
||||
<value>Non-Existent</value>
|
||||
</data>
|
||||
<data name="DomainLookup.TooltipHeader" xml:space="preserve">
|
||||
<value>Current Real DNS Values</value>
|
||||
</data>
|
||||
</root>
|
|
@ -39,6 +39,7 @@ using System.Web.UI.HtmlControls;
|
|||
using System.Linq;
|
||||
|
||||
using WebsitePanel.EnterpriseServer;
|
||||
using System.Collections.Generic;
|
||||
|
||||
namespace WebsitePanel.Portal
|
||||
{
|
||||
|
@ -160,7 +161,15 @@ namespace WebsitePanel.Portal
|
|||
return "No Dns Records";
|
||||
}
|
||||
|
||||
return string.Join("\r\n", records.Select(x=>string.Format("{0}: {1}", x.RecordType, x.Value)));
|
||||
var header = GetLocalizedString("DomainLookup.TooltipHeader");
|
||||
|
||||
var tooltipLines = new List<string>();
|
||||
|
||||
tooltipLines.Add(header);
|
||||
tooltipLines.Add(" ");
|
||||
tooltipLines.AddRange( records.Select(x=>string.Format("{0}: {1}", x.RecordType, x.Value)));
|
||||
|
||||
return string.Join("\r\n", tooltipLines);
|
||||
}
|
||||
|
||||
protected void odsDomainsPaged_Selected(object sender, ObjectDataSourceStatusEventArgs e)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue