Merge
This commit is contained in:
commit
16ec7fc2b6
11 changed files with 254 additions and 46 deletions
|
@ -979,6 +979,8 @@ namespace WebsitePanel.EnterpriseServer
|
||||||
new SqlParameter("@ClusterId", clusterId),
|
new SqlParameter("@ClusterId", clusterId),
|
||||||
new SqlParameter("@comments", comments));
|
new SqlParameter("@comments", comments));
|
||||||
|
|
||||||
|
UpdateServerPackageServices(serverId);
|
||||||
|
|
||||||
return Convert.ToInt32(prmServiceId.Value);
|
return Convert.ToInt32(prmServiceId.Value);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1559,6 +1561,8 @@ namespace WebsitePanel.EnterpriseServer
|
||||||
// read identity
|
// read identity
|
||||||
packageId = Convert.ToInt32(prmPackageId.Value);
|
packageId = Convert.ToInt32(prmPackageId.Value);
|
||||||
|
|
||||||
|
DistributePackageServices(actorId, packageId);
|
||||||
|
|
||||||
return ds;
|
return ds;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1660,6 +1664,33 @@ namespace WebsitePanel.EnterpriseServer
|
||||||
new SqlParameter("@PackageAddonID", packageAddonId));
|
new SqlParameter("@PackageAddonID", packageAddonId));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public static void UpdateServerPackageServices(int serverId)
|
||||||
|
{
|
||||||
|
// FIXME
|
||||||
|
int defaultActorID = 1;
|
||||||
|
|
||||||
|
// get server packages
|
||||||
|
IDataReader packagesReader = SqlHelper.ExecuteReader(ConnectionString, CommandType.Text,
|
||||||
|
@"SELECT PackageID FROM Packages WHERE ServerID = @ServerID",
|
||||||
|
new SqlParameter("@ServerID", serverId)
|
||||||
|
);
|
||||||
|
|
||||||
|
// call DistributePackageServices for all packages on this server
|
||||||
|
while (packagesReader.Read())
|
||||||
|
{
|
||||||
|
int packageId = (int) packagesReader["PackageID"];
|
||||||
|
DistributePackageServices(defaultActorID, packageId);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public static void DistributePackageServices(int actorId, int packageId)
|
||||||
|
{
|
||||||
|
SqlHelper.ExecuteNonQuery(ConnectionString, CommandType.StoredProcedure,
|
||||||
|
ObjectQualifier + "DistributePackageServices",
|
||||||
|
new SqlParameter("@ActorId", actorId),
|
||||||
|
new SqlParameter("@PackageID", packageId));
|
||||||
|
}
|
||||||
|
|
||||||
#endregion
|
#endregion
|
||||||
|
|
||||||
#region Packages Settings
|
#region Packages Settings
|
||||||
|
@ -3932,15 +3963,16 @@ namespace WebsitePanel.EnterpriseServer
|
||||||
return packageId;
|
return packageId;
|
||||||
}
|
}
|
||||||
|
|
||||||
public static int GetServiceIdByProviderForServer(int providerId, int serverId)
|
public static int GetServiceIdByProviderForServer(int providerId, int packageId)
|
||||||
{
|
{
|
||||||
IDataReader reader = SqlHelper.ExecuteReader(ConnectionString, CommandType.Text,
|
IDataReader reader = SqlHelper.ExecuteReader(ConnectionString, CommandType.Text,
|
||||||
@"SELECT TOP 1
|
@"SELECT TOP 1
|
||||||
ServiceID
|
PackageServices.ServiceID
|
||||||
FROM Services
|
FROM PackageServices
|
||||||
WHERE ProviderID = @ProviderID AND ServerID = @ServerID",
|
LEFT JOIN Services ON Services.ServiceID = PackageServices.ServiceID
|
||||||
|
WHERE PackageServices.PackageID = @PackageID AND Services.ProviderID = @ProviderID",
|
||||||
new SqlParameter("@ProviderID", providerId),
|
new SqlParameter("@ProviderID", providerId),
|
||||||
new SqlParameter("@ServerID", serverId));
|
new SqlParameter("@PackageID", packageId));
|
||||||
|
|
||||||
if (reader.Read())
|
if (reader.Read())
|
||||||
{
|
{
|
||||||
|
@ -4049,6 +4081,26 @@ namespace WebsitePanel.EnterpriseServer
|
||||||
return reader;
|
return reader;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public static int GetServiceIdForProviderIdAndPackageId(int providerId, int packageId)
|
||||||
|
{
|
||||||
|
IDataReader reader = SqlHelper.ExecuteReader(ConnectionString, CommandType.Text,
|
||||||
|
@"SELECT PackageServices.ServiceID
|
||||||
|
FROM PackageServices
|
||||||
|
INNER JOIN Services ON PackageServices.ServiceID = Services.ServiceID
|
||||||
|
WHERE Services.ProviderID = @ProviderID and PackageID = @PackageID",
|
||||||
|
new SqlParameter("@ProviderID", providerId),
|
||||||
|
new SqlParameter("@PackageID", packageId)
|
||||||
|
);
|
||||||
|
|
||||||
|
if (reader.Read())
|
||||||
|
{
|
||||||
|
return (int)reader["ServiceID"];
|
||||||
|
}
|
||||||
|
|
||||||
|
return -1;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
public static int GetServerIdForPackage(int packageId)
|
public static int GetServerIdForPackage(int packageId)
|
||||||
{
|
{
|
||||||
IDataReader reader = SqlHelper.ExecuteReader(ConnectionString, CommandType.Text,
|
IDataReader reader = SqlHelper.ExecuteReader(ConnectionString, CommandType.Text,
|
||||||
|
|
|
@ -76,6 +76,31 @@ namespace WebsitePanel.EnterpriseServer
|
||||||
|
|
||||||
public static ShortHeliconZooEngine[] GetAllowedHeliconZooQuotasForPackage(int packageId)
|
public static ShortHeliconZooEngine[] GetAllowedHeliconZooQuotasForPackage(int packageId)
|
||||||
{
|
{
|
||||||
|
// first, check IsEnginesAllowed for this server
|
||||||
|
|
||||||
|
// get helicon zoo provider serviceId
|
||||||
|
int heliconZooProviderId, heliconZooGroupId;
|
||||||
|
DataProvider.GetHeliconZooProviderAndGroup("HeliconZoo", out heliconZooProviderId, out heliconZooGroupId);
|
||||||
|
|
||||||
|
// get helicon zoo service id for heliconZooProviderId and packageId
|
||||||
|
int serviceId = DataProvider.GetServiceIdForProviderIdAndPackageId(heliconZooProviderId, packageId);
|
||||||
|
|
||||||
|
if (serviceId > 0)
|
||||||
|
{
|
||||||
|
if (IsEnginesEnabled(serviceId))
|
||||||
|
{
|
||||||
|
// all engines allowed by default
|
||||||
|
return new ShortHeliconZooEngine[]
|
||||||
|
{
|
||||||
|
new ShortHeliconZooEngine{Name = "*", DisplayName = "*", Enabled = true}
|
||||||
|
};
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
// all engines is not allowed
|
||||||
|
// get allowed engines from hosting plan quotas
|
||||||
|
|
||||||
List<ShortHeliconZooEngine> allowedEngines = new List<ShortHeliconZooEngine>();
|
List<ShortHeliconZooEngine> allowedEngines = new List<ShortHeliconZooEngine>();
|
||||||
|
|
||||||
IDataReader reader = DataProvider.GetEnabledHeliconZooQuotasForPackage(packageId);
|
IDataReader reader = DataProvider.GetEnabledHeliconZooQuotasForPackage(packageId);
|
||||||
|
@ -236,7 +261,7 @@ namespace WebsitePanel.EnterpriseServer
|
||||||
}
|
}
|
||||||
|
|
||||||
// get Helicon Zoo service for site
|
// get Helicon Zoo service for site
|
||||||
int serviceId = DataProvider.GetServiceIdByProviderForServer(heliconZooProviderId, serverId);
|
int serviceId = DataProvider.GetServiceIdByProviderForServer(heliconZooProviderId, packageId);
|
||||||
return serviceId;
|
return serviceId;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -229,6 +229,8 @@ namespace WebsitePanel.EnterpriseServer
|
||||||
if (result.ExceedingQuotas.Tables[0].Rows.Count > 0)
|
if (result.ExceedingQuotas.Tables[0].Rows.Count > 0)
|
||||||
result.Result = BusinessErrorCodes.ERROR_PACKAGE_QUOTA_EXCEED;
|
result.Result = BusinessErrorCodes.ERROR_PACKAGE_QUOTA_EXCEED;
|
||||||
|
|
||||||
|
DataProvider.DistributePackageServices(SecurityContext.User.UserId, plan.PackageId);
|
||||||
|
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -781,6 +783,8 @@ namespace WebsitePanel.EnterpriseServer
|
||||||
|
|
||||||
// Update the Hard quota on home folder in case it was enabled and in case there was a change in disk space
|
// Update the Hard quota on home folder in case it was enabled and in case there was a change in disk space
|
||||||
UpdatePackageHardQuota(package.PackageId);
|
UpdatePackageHardQuota(package.PackageId);
|
||||||
|
|
||||||
|
DataProvider.DistributePackageServices(SecurityContext.User.UserId, package.PackageId);
|
||||||
}
|
}
|
||||||
finally
|
finally
|
||||||
{
|
{
|
||||||
|
|
|
@ -34,8 +34,25 @@ using System.ComponentModel;
|
||||||
|
|
||||||
namespace WebsitePanel.Providers.Web
|
namespace WebsitePanel.Providers.Web
|
||||||
{
|
{
|
||||||
|
public enum HttpErrorsMode
|
||||||
|
{
|
||||||
|
DetailedLocalOnly = 0,
|
||||||
|
Custom = 1,
|
||||||
|
Detailed = 2
|
||||||
|
}
|
||||||
|
|
||||||
|
public enum HttpErrorsExistingResponse
|
||||||
|
{
|
||||||
|
Auto = 0,
|
||||||
|
Replace = 1,
|
||||||
|
PassThrough = 2
|
||||||
|
}
|
||||||
|
|
||||||
public class HttpError
|
public class HttpError
|
||||||
{
|
{
|
||||||
|
public const HttpErrorsMode DefaultHttpErrorsMode = HttpErrorsMode.DetailedLocalOnly;
|
||||||
|
public const HttpErrorsExistingResponse DefaultHttpErrorsExistingResponse = HttpErrorsExistingResponse.Auto;
|
||||||
|
|
||||||
private string errorCode;
|
private string errorCode;
|
||||||
private string errorSubcode;
|
private string errorSubcode;
|
||||||
private string handlerType;
|
private string handlerType;
|
||||||
|
|
|
@ -61,6 +61,8 @@ namespace WebsitePanel.Providers.Web
|
||||||
private string defaultDocs;
|
private string defaultDocs;
|
||||||
private string httpRedirect;
|
private string httpRedirect;
|
||||||
private HttpError[] httpErrors;
|
private HttpError[] httpErrors;
|
||||||
|
private HttpErrorsMode errorMode;
|
||||||
|
private HttpErrorsExistingResponse existingResponse;
|
||||||
private MimeMap[] mimeMaps;
|
private MimeMap[] mimeMaps;
|
||||||
private HttpHeader[] httpHeaders;
|
private HttpHeader[] httpHeaders;
|
||||||
private bool aspInstalled;
|
private bool aspInstalled;
|
||||||
|
@ -122,6 +124,18 @@ namespace WebsitePanel.Providers.Web
|
||||||
set { httpErrors = value; }
|
set { httpErrors = value; }
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public HttpErrorsMode ErrorMode
|
||||||
|
{
|
||||||
|
get { return errorMode; }
|
||||||
|
set { errorMode = value; }
|
||||||
|
}
|
||||||
|
|
||||||
|
public HttpErrorsExistingResponse ExistingResponse
|
||||||
|
{
|
||||||
|
get { return existingResponse; }
|
||||||
|
set { existingResponse = value; }
|
||||||
|
}
|
||||||
|
|
||||||
public string ApplicationPool
|
public string ApplicationPool
|
||||||
{
|
{
|
||||||
get { return this.applicationPool; }
|
get { return this.applicationPool; }
|
||||||
|
|
|
@ -54,6 +54,9 @@ namespace WebsitePanel.Providers.Web.Iis.WebObjects
|
||||||
var config = srvman.GetWebConfiguration(virtualDir.FullQualifiedPath);
|
var config = srvman.GetWebConfiguration(virtualDir.FullQualifiedPath);
|
||||||
//
|
//
|
||||||
var httpErrorsSection = config.GetSection(Constants.HttpErrorsSection);
|
var httpErrorsSection = config.GetSection(Constants.HttpErrorsSection);
|
||||||
|
|
||||||
|
virtualDir.ErrorMode = (HttpErrorsMode)httpErrorsSection.GetAttributeValue("errorMode");
|
||||||
|
virtualDir.ExistingResponse = (HttpErrorsExistingResponse)httpErrorsSection.GetAttributeValue("existingResponse");
|
||||||
//
|
//
|
||||||
var errorsCollection = httpErrorsSection.GetCollection();
|
var errorsCollection = httpErrorsSection.GetCollection();
|
||||||
//
|
//
|
||||||
|
@ -87,10 +90,6 @@ namespace WebsitePanel.Providers.Web.Iis.WebObjects
|
||||||
}
|
}
|
||||||
#endregion
|
#endregion
|
||||||
|
|
||||||
// Http errors list is either empty or not set so defaults to the parent
|
|
||||||
if (virtualDir.HttpErrors == null || virtualDir.HttpErrors.Length == 0)
|
|
||||||
return;
|
|
||||||
|
|
||||||
#region Put the change in effect
|
#region Put the change in effect
|
||||||
using (var srvman = GetServerManager())
|
using (var srvman = GetServerManager())
|
||||||
{
|
{
|
||||||
|
@ -98,10 +97,20 @@ namespace WebsitePanel.Providers.Web.Iis.WebObjects
|
||||||
//
|
//
|
||||||
var section = config.GetSection(Constants.HttpErrorsSection);
|
var section = config.GetSection(Constants.HttpErrorsSection);
|
||||||
|
|
||||||
// enable custom errors
|
// set error mode
|
||||||
section.SetAttributeValue("errorMode", "Custom");
|
section.SetAttributeValue("errorMode", virtualDir.ErrorMode);
|
||||||
|
if (virtualDir.ErrorMode == HttpErrorsMode.Detailed)
|
||||||
|
{
|
||||||
|
section.SetAttributeValue("existingResponse", HttpErrorsExistingResponse.PassThrough);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
section.SetAttributeValue("existingResponse", HttpErrorsExistingResponse.Auto);
|
||||||
|
}
|
||||||
|
|
||||||
//
|
// save custom errors
|
||||||
|
if (virtualDir.HttpErrors != null && virtualDir.HttpErrors.Length > 0)
|
||||||
|
{
|
||||||
var errorsCollection = section.GetCollection();
|
var errorsCollection = section.GetCollection();
|
||||||
//
|
//
|
||||||
foreach (var item in virtualDir.HttpErrors)
|
foreach (var item in virtualDir.HttpErrors)
|
||||||
|
@ -124,6 +133,8 @@ namespace WebsitePanel.Providers.Web.Iis.WebObjects
|
||||||
//
|
//
|
||||||
errorsCollection.Add(item2Add);
|
errorsCollection.Add(item2Add);
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
//
|
//
|
||||||
srvman.CommitChanges();
|
srvman.CommitChanges();
|
||||||
}
|
}
|
||||||
|
|
|
@ -156,4 +156,7 @@
|
||||||
<data name="IIS7.Redirect" xml:space="preserve">
|
<data name="IIS7.Redirect" xml:space="preserve">
|
||||||
<value>Redirect</value>
|
<value>Redirect</value>
|
||||||
</data>
|
</data>
|
||||||
|
<data name="lblErrorMode.Text">
|
||||||
|
<value xml:space="preserve">Error Mode</value>
|
||||||
|
</data>
|
||||||
</root>
|
</root>
|
|
@ -1,4 +1,19 @@
|
||||||
<%@ Control Language="C#" AutoEventWireup="true" CodeBehind="WebSitesCustomErrorsControl.ascx.cs" Inherits="WebsitePanel.Portal.WebSitesCustomErrorsControl" %>
|
<%@ Control Language="C#" AutoEventWireup="true" CodeBehind="WebSitesCustomErrorsControl.ascx.cs" Inherits="WebsitePanel.Portal.WebSitesCustomErrorsControl" %>
|
||||||
|
|
||||||
|
|
||||||
|
<div style="padding: 20; margin-bottom: 10px;">
|
||||||
|
<table cellpadding="4">
|
||||||
|
<tr id="rowAspNet" runat="server">
|
||||||
|
<td class="SubHead">
|
||||||
|
<asp:Label ID="lblErrorMode" runat="server" meta:resourcekey="lblErrorMode"></asp:Label>:
|
||||||
|
</td>
|
||||||
|
<td class="Normal">
|
||||||
|
<asp:DropDownList ID="ddlErrorMode" runat="server" CssClass="NormalTextBox"></asp:DropDownList>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</table>
|
||||||
|
</div>
|
||||||
|
|
||||||
<div class="FormButtonsBar">
|
<div class="FormButtonsBar">
|
||||||
<asp:Button id="btnAdd" runat="server" meta:resourcekey="btnAddError" Text="Add Custom Error" CssClass="Button3" OnClick="btnAdd_Click" CausesValidation="False"></asp:Button>
|
<asp:Button id="btnAdd" runat="server" meta:resourcekey="btnAddError" Text="Add Custom Error" CssClass="Button3" OnClick="btnAdd_Click" CausesValidation="False"></asp:Button>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
@ -63,16 +63,29 @@ namespace WebsitePanel.Portal
|
||||||
{
|
{
|
||||||
IIs7 = item.IIs7;
|
IIs7 = item.IIs7;
|
||||||
|
|
||||||
// bind data
|
// bind error mode
|
||||||
|
ddlErrorMode.Items.Add(HttpErrorsMode.DetailedLocalOnly.ToString());
|
||||||
|
ddlErrorMode.Items.Add(HttpErrorsMode.Custom.ToString());
|
||||||
|
ddlErrorMode.Items.Add(HttpErrorsMode.Detailed.ToString());
|
||||||
|
|
||||||
|
ddlErrorMode.SelectedValue = item.ErrorMode.ToString();
|
||||||
|
|
||||||
|
// bind errors list
|
||||||
gvErrorPages.DataSource = item.HttpErrors;
|
gvErrorPages.DataSource = item.HttpErrors;
|
||||||
gvErrorPages.DataBind();
|
gvErrorPages.DataBind();
|
||||||
}
|
}
|
||||||
|
|
||||||
public void SaveWebItem(WebVirtualDirectory item)
|
public void SaveWebItem(WebVirtualDirectory item)
|
||||||
{
|
{
|
||||||
|
item.ErrorMode = GetSelectedErrorMode();
|
||||||
item.HttpErrors = CollectFormData(false).ToArray();
|
item.HttpErrors = CollectFormData(false).ToArray();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private HttpErrorsMode GetSelectedErrorMode()
|
||||||
|
{
|
||||||
|
return (HttpErrorsMode)Enum.Parse(typeof (HttpErrorsMode), ddlErrorMode.SelectedValue);
|
||||||
|
}
|
||||||
|
|
||||||
public List<HttpError> CollectFormData(bool includeEmpty)
|
public List<HttpError> CollectFormData(bool includeEmpty)
|
||||||
{
|
{
|
||||||
List<HttpError> errors = new List<HttpError>();
|
List<HttpError> errors = new List<HttpError>();
|
||||||
|
|
|
@ -1,7 +1,34 @@
|
||||||
|
// 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.
|
||||||
// Runtime Version:2.0.50727.3074
|
|
||||||
//
|
//
|
||||||
// Changes to this file may cause incorrect behavior and will be lost if
|
// Changes to this file may cause incorrect behavior and will be lost if
|
||||||
// the code is regenerated.
|
// the code is regenerated.
|
||||||
|
@ -13,6 +40,33 @@ namespace WebsitePanel.Portal {
|
||||||
|
|
||||||
public partial class WebSitesCustomErrorsControl {
|
public partial class WebSitesCustomErrorsControl {
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// rowAspNet control.
|
||||||
|
/// </summary>
|
||||||
|
/// <remarks>
|
||||||
|
/// Auto-generated field.
|
||||||
|
/// To modify move field declaration from designer file to code-behind file.
|
||||||
|
/// </remarks>
|
||||||
|
protected global::System.Web.UI.HtmlControls.HtmlTableRow rowAspNet;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// lblErrorMode control.
|
||||||
|
/// </summary>
|
||||||
|
/// <remarks>
|
||||||
|
/// Auto-generated field.
|
||||||
|
/// To modify move field declaration from designer file to code-behind file.
|
||||||
|
/// </remarks>
|
||||||
|
protected global::System.Web.UI.WebControls.Label lblErrorMode;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// ddlErrorMode control.
|
||||||
|
/// </summary>
|
||||||
|
/// <remarks>
|
||||||
|
/// Auto-generated field.
|
||||||
|
/// To modify move field declaration from designer file to code-behind file.
|
||||||
|
/// </remarks>
|
||||||
|
protected global::System.Web.UI.WebControls.DropDownList ddlErrorMode;
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// btnAdd control.
|
/// btnAdd control.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
|
|
|
@ -58,8 +58,6 @@ namespace WebsitePanel.Portal
|
||||||
Array.Sort(allowedEngineArray, new ShortHeliconZooEngineComparer());
|
Array.Sort(allowedEngineArray, new ShortHeliconZooEngineComparer());
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
// get enabled engines for this site from applicationHost.config
|
// get enabled engines for this site from applicationHost.config
|
||||||
string[] enabledEngineNames = ES.Services.HeliconZoo.GetEnabledEnginesForSite(site.SiteId, site.PackageId);
|
string[] enabledEngineNames = ES.Services.HeliconZoo.GetEnabledEnginesForSite(site.SiteId, site.PackageId);
|
||||||
ViewState["EnabledEnginesNames"] = enabledEngineNames;
|
ViewState["EnabledEnginesNames"] = enabledEngineNames;
|
||||||
|
@ -68,10 +66,9 @@ namespace WebsitePanel.Portal
|
||||||
ViewState["IsZooWebConsoleEnabled"] = enabledEngineNames.Contains("console", StringComparer.OrdinalIgnoreCase);
|
ViewState["IsZooWebConsoleEnabled"] = enabledEngineNames.Contains("console", StringComparer.OrdinalIgnoreCase);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
List<ShortHeliconZooEngine> allowedEngines = new List<ShortHeliconZooEngine>(allowedEngineArray);
|
List<ShortHeliconZooEngine> allowedEngines = new List<ShortHeliconZooEngine>(allowedEngineArray);
|
||||||
|
|
||||||
|
// fix engine name and check is web console enabled
|
||||||
foreach (ShortHeliconZooEngine engine in allowedEngines)
|
foreach (ShortHeliconZooEngine engine in allowedEngines)
|
||||||
{
|
{
|
||||||
engine.Name = engine.Name.Replace("HeliconZoo.", "");
|
engine.Name = engine.Name.Replace("HeliconZoo.", "");
|
||||||
|
@ -82,7 +79,6 @@ namespace WebsitePanel.Portal
|
||||||
//console allowed in hosting plan
|
//console allowed in hosting plan
|
||||||
ViewState["IsZooWebConsoleEnabled"] = engine.Enabled;
|
ViewState["IsZooWebConsoleEnabled"] = engine.Enabled;
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
ViewState["AllowedEngines"] = allowedEngines;
|
ViewState["AllowedEngines"] = allowedEngines;
|
||||||
|
@ -146,7 +142,11 @@ namespace WebsitePanel.Portal
|
||||||
continue; //skip
|
continue; //skip
|
||||||
}
|
}
|
||||||
|
|
||||||
if (string.Equals(appEngine, engine.KeywordedName, StringComparison.OrdinalIgnoreCase))
|
if (
|
||||||
|
string.Equals(appEngine, engine.KeywordedName, StringComparison.OrdinalIgnoreCase)
|
||||||
|
||
|
||||||
|
engine.Name == "*"
|
||||||
|
)
|
||||||
{
|
{
|
||||||
|
|
||||||
filteredApplications.Add(application);
|
filteredApplications.Add(application);
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue