Fixed: Create InstantAlias creates pointer records for all websites, Create
InstantAlias only crate pointer records for sites within the specific domain Fixed: delete instant alias to be ran twice to remove alias Fixed: Webhosting: Hostname support not enabled: only to show unallocated domains
This commit is contained in:
parent
01cab2916a
commit
97e4dce0e5
7 changed files with 111 additions and 48 deletions
|
@ -5855,6 +5855,61 @@ END
|
||||||
GO
|
GO
|
||||||
|
|
||||||
|
|
||||||
|
IF NOT EXISTS (SELECT * FROM sys.objects WHERE type_desc = N'SQL_STORED_PROCEDURE' AND name = N'GetExchangeOrganization')
|
||||||
|
BEGIN
|
||||||
|
EXEC sp_executesql N'CREATE PROCEDURE [dbo].[GetDomainByNameByPointer]
|
||||||
|
(
|
||||||
|
@ActorID int,
|
||||||
|
@DomainName nvarchar(100),
|
||||||
|
@IsDomainPointer bit
|
||||||
|
)
|
||||||
|
AS
|
||||||
|
|
||||||
|
SELECT
|
||||||
|
D.DomainID,
|
||||||
|
D.PackageID,
|
||||||
|
D.ZoneItemID,
|
||||||
|
D.DomainName,
|
||||||
|
D.HostingAllowed,
|
||||||
|
ISNULL(D.WebSiteID, 0) AS WebSiteID,
|
||||||
|
WS.ItemName AS WebSiteName,
|
||||||
|
ISNULL(D.MailDomainID, 0) AS MailDomainID,
|
||||||
|
MD.ItemName AS MailDomainName,
|
||||||
|
Z.ItemName AS ZoneName,
|
||||||
|
D.IsSubDomain,
|
||||||
|
D.IsInstantAlias,
|
||||||
|
D.IsDomainPointer
|
||||||
|
FROM Domains AS D
|
||||||
|
INNER JOIN Packages AS P ON D.PackageID = P.PackageID
|
||||||
|
LEFT OUTER JOIN ServiceItems AS WS ON D.WebSiteID = WS.ItemID
|
||||||
|
LEFT OUTER JOIN ServiceItems AS MD ON D.MailDomainID = MD.ItemID
|
||||||
|
LEFT OUTER JOIN ServiceItems AS Z ON D.ZoneItemID = Z.ItemID
|
||||||
|
WHERE
|
||||||
|
D.DomainName = @DomainName
|
||||||
|
AND D.IsDomainPointer = @IsDomainPointer
|
||||||
|
AND dbo.CheckActorPackageRights(@ActorID, P.PackageID) = 1
|
||||||
|
RETURN'
|
||||||
|
END
|
||||||
|
GO
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -793,6 +793,16 @@ namespace WebsitePanel.EnterpriseServer
|
||||||
new SqlParameter("@domainName", domainName));
|
new SqlParameter("@domainName", domainName));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public static IDataReader GetDomainByNameByPointer(int actorId, string domainName, bool isDomainPointer)
|
||||||
|
{
|
||||||
|
return SqlHelper.ExecuteReader(ConnectionString, CommandType.StoredProcedure,
|
||||||
|
ObjectQualifier + "GetDomainByNameByPointer",
|
||||||
|
new SqlParameter("@ActorId", actorId),
|
||||||
|
new SqlParameter("@domainName", domainName),
|
||||||
|
new SqlParameter("@isDomainPointer", isDomainPointer));
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
public static DataSet GetDomainsByZoneId(int actorId, int zoneId)
|
public static DataSet GetDomainsByZoneId(int actorId, int zoneId)
|
||||||
{
|
{
|
||||||
return SqlHelper.ExecuteDataset(ConnectionString, CommandType.StoredProcedure,
|
return SqlHelper.ExecuteDataset(ConnectionString, CommandType.StoredProcedure,
|
||||||
|
|
|
@ -1677,6 +1677,13 @@ namespace WebsitePanel.EnterpriseServer
|
||||||
DataProvider.GetDomainByName(SecurityContext.User.UserId, domainName));
|
DataProvider.GetDomainByName(SecurityContext.User.UserId, domainName));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public static DomainInfo GetDomainItem(string domainName, bool IsDomainPointer)
|
||||||
|
{
|
||||||
|
return ObjectUtils.FillObjectFromDataReader<DomainInfo>(
|
||||||
|
DataProvider.GetDomainByNameByPointer(SecurityContext.User.UserId, domainName, IsDomainPointer));
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
public static string GetDomainAlias(int packageId, string domainName)
|
public static string GetDomainAlias(int packageId, string domainName)
|
||||||
{
|
{
|
||||||
// load package settings
|
// load package settings
|
||||||
|
@ -2212,14 +2219,19 @@ namespace WebsitePanel.EnterpriseServer
|
||||||
}
|
}
|
||||||
|
|
||||||
// add web site pointer if required
|
// add web site pointer if required
|
||||||
List<WebSite> sites = WebServerController.GetWebSites(domain.PackageId, false);
|
List<DomainInfo> domains = GetDomainsByZoneId(domain.ZoneItemId);
|
||||||
foreach (WebSite w in sites)
|
foreach (DomainInfo d in domains)
|
||||||
{
|
{
|
||||||
WebServerController.AddWebSitePointer( w.Id,
|
if (d.WebSiteId > 0)
|
||||||
(w.Name.Replace("." + domain.ZoneName, "") == domain.ZoneName) ? "" : w.Name.Replace("." + domain.ZoneName, ""),
|
{
|
||||||
instantAlias.DomainId);
|
WebSite w = WebServerController.GetWebSite(d.WebSiteId);
|
||||||
|
|
||||||
|
WebServerController.AddWebSitePointer(d.WebSiteId,
|
||||||
|
(w.Name.Replace("." + domain.ZoneName, "") == domain.ZoneName) ? "" : w.Name.Replace("." + domain.ZoneName, ""),
|
||||||
|
instantAlias.DomainId);
|
||||||
|
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
// add mail domain pointer
|
// add mail domain pointer
|
||||||
if (domain.MailDomainId > 0 && instantAlias.MailDomainId == 0)
|
if (domain.MailDomainId > 0 && instantAlias.MailDomainId == 0)
|
||||||
|
@ -2259,7 +2271,7 @@ namespace WebsitePanel.EnterpriseServer
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
// load instant alias domain
|
// load instant alias domain
|
||||||
DomainInfo instantAlias = GetDomainItem(domain.InstantAliasName);
|
DomainInfo instantAlias = GetDomainItem(domain.InstantAliasName, false);
|
||||||
if (instantAlias == null)
|
if (instantAlias == null)
|
||||||
return 0;
|
return 0;
|
||||||
|
|
||||||
|
|
|
@ -5,12 +5,18 @@
|
||||||
</configSections>
|
</configSections>
|
||||||
<!-- Connection strings -->
|
<!-- Connection strings -->
|
||||||
<connectionStrings>
|
<connectionStrings>
|
||||||
<add name="EnterpriseServer" connectionString="Server=(local)\SQLExpress;Database=WebsitePanel;uid=sa;pwd=Password12" providerName="System.Data.SqlClient" />
|
<!--
|
||||||
|
<add name="EnterpriseServer" connectionString="server=HSTPROV01;database=WebsitePanelMerge;uid=WebsitePanel;pwd=aj7ep6fyhmw3b5qeth7c;" />
|
||||||
|
<add name="EnterpriseServer" connectionString="server=HSTWSP01;database=WebsitePanelMerge;uid=WebsitePanel;pwd=pserxfbnlc6hwmdedbp0;" providerName="System.Data.SqlClient" />
|
||||||
|
-->
|
||||||
|
<add name="EnterpriseServer" connectionString="server=HSTWSP01;database=WebsitePanelMerge;uid=WebsitePanel;pwd=pserxfbnlc6hwmdedbp0;" providerName="System.Data.SqlClient" />
|
||||||
</connectionStrings>
|
</connectionStrings>
|
||||||
<appSettings>
|
<appSettings>
|
||||||
<!-- Encryption util settings -->
|
<!--
|
||||||
<add key="WebsitePanel.CryptoKey" value="1234567890" />
|
<add key="WebsitePanel.CryptoKey" value="3x7eqt7zabc5n5afs6dg" />
|
||||||
<!-- A1D4KDHUE83NKHddF -->
|
<add key="WebsitePanel.CryptoKey" value="fr2ym4wn2gmbrj7dz336" />
|
||||||
|
-->
|
||||||
|
<add key="WebsitePanel.CryptoKey" value="fr2ym4wn2gmbrj7dz336" />
|
||||||
<add key="WebsitePanel.EncryptionEnabled" value="true" />
|
<add key="WebsitePanel.EncryptionEnabled" value="true" />
|
||||||
<!-- Web Applications -->
|
<!-- Web Applications -->
|
||||||
<add key="WebsitePanel.EnterpriseServer.WebApplicationsPath" value="~/WebApplications" />
|
<add key="WebsitePanel.EnterpriseServer.WebApplicationsPath" value="~/WebApplications" />
|
||||||
|
|
|
@ -19,7 +19,7 @@
|
||||||
</p>
|
</p>
|
||||||
|
|
||||||
<p id="SubDomainPanel" runat="server" style="padding: 15px 0 15px 5px;" visible="false">
|
<p id="SubDomainPanel" runat="server" style="padding: 15px 0 15px 5px;" visible="false">
|
||||||
<asp:TextBox ID="SubDomainName" runat="server" Width="150" CssClass="HugeTextBox"></asp:TextBox>
|
<asp:TextBox ID="SubDomainName" runat="server" Width="150" CssClass="TextBox100"></asp:TextBox>
|
||||||
.
|
.
|
||||||
<asp:DropDownList ID="DomainsList" Runat="server" CssClass="NormalTextBox" DataTextField="DomainName" DataValueField="DomainName"></asp:DropDownList>
|
<asp:DropDownList ID="DomainsList" Runat="server" CssClass="NormalTextBox" DataTextField="DomainName" DataValueField="DomainName"></asp:DropDownList>
|
||||||
<asp:RequiredFieldValidator id="SubDomainRequiredValidator" runat="server" meta:resourcekey="SubDomainRequiredValidator"
|
<asp:RequiredFieldValidator id="SubDomainRequiredValidator" runat="server" meta:resourcekey="SubDomainRequiredValidator"
|
||||||
|
|
|
@ -1,31 +1,3 @@
|
||||||
// Copyright (c) 2012, Outercurve Foundation.
|
|
||||||
// All rights reserved.
|
|
||||||
//
|
|
||||||
// Redistribution and use in source and binary forms, with or without modification,
|
|
||||||
// are permitted provided that the following conditions are met:
|
|
||||||
//
|
|
||||||
// - Redistributions of source code must retain the above copyright notice, this
|
|
||||||
// list of conditions and the following disclaimer.
|
|
||||||
//
|
|
||||||
// - Redistributions in binary form must reproduce the above copyright notice,
|
|
||||||
// this list of conditions and the following disclaimer in the documentation
|
|
||||||
// and/or other materials provided with the distribution.
|
|
||||||
//
|
|
||||||
// - Neither the name of the Outercurve Foundation nor the names of its
|
|
||||||
// contributors may be used to endorse or promote products derived from this
|
|
||||||
// software without specific prior written permission.
|
|
||||||
//
|
|
||||||
// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
|
|
||||||
// ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
|
|
||||||
// WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
|
|
||||||
// DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR
|
|
||||||
// ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
|
|
||||||
// (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
|
|
||||||
// LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
|
|
||||||
// ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
|
||||||
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
|
|
||||||
// SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
|
||||||
|
|
||||||
//------------------------------------------------------------------------------
|
//------------------------------------------------------------------------------
|
||||||
// <auto-generated>
|
// <auto-generated>
|
||||||
// This code was generated by a tool.
|
// This code was generated by a tool.
|
||||||
|
|
|
@ -110,9 +110,23 @@ namespace WebsitePanel.Portal
|
||||||
DomainInfo[] domains = ES.Services.Servers.GetMyDomains(PackageId);
|
DomainInfo[] domains = ES.Services.Servers.GetMyDomains(PackageId);
|
||||||
|
|
||||||
WebSite[] sites = null;
|
WebSite[] sites = null;
|
||||||
|
Hashtable htSites = new Hashtable();
|
||||||
if (HideWebSites)
|
if (HideWebSites)
|
||||||
|
{
|
||||||
sites = ES.Services.WebServers.GetWebSites(PackageId, false);
|
sites = ES.Services.WebServers.GetWebSites(PackageId, false);
|
||||||
|
|
||||||
|
foreach (WebSite w in sites)
|
||||||
|
{
|
||||||
|
if (htSites[w.Name.ToLower()] == null) htSites.Add(w.Name.ToLower(), 1);
|
||||||
|
|
||||||
|
DomainInfo[] pointers = ES.Services.WebServers.GetWebSitePointers(w.Id);
|
||||||
|
foreach (DomainInfo p in pointers)
|
||||||
|
{
|
||||||
|
if (htSites[p.DomainName.ToLower()] == null) htSites.Add(p.DomainName.ToLower(), 1);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
ddlDomains.Items.Clear();
|
ddlDomains.Items.Clear();
|
||||||
|
|
||||||
// add "select" item
|
// add "select" item
|
||||||
|
@ -128,16 +142,10 @@ namespace WebsitePanel.Portal
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
bool bFound = false;
|
if (htSites != null)
|
||||||
foreach (WebSite w in sites)
|
|
||||||
{
|
{
|
||||||
if (w.Name.ToLower() == domain.DomainName.ToLower())
|
if (htSites[domain.DomainName.ToLower()] != null) continue;
|
||||||
{
|
|
||||||
bFound = true;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
if (bFound) continue;
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else if (HideInstantAlias && domain.IsInstantAlias)
|
else if (HideInstantAlias && domain.IsInstantAlias)
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue