This commit is contained in:
ruslanht 2012-12-24 13:03:37 +02:00
commit f2bdb13d34
7 changed files with 48 additions and 39 deletions

View file

@ -1230,7 +1230,15 @@ GO
-- Remove ExchangeHostedEdition Quotas
DELETE FROM HostingPlanQuotas WHERE QuotaID = 340
GO
DELETE FROM HostingPlanQuotas WHERE QuotaID = 341
GO
DELETE FROM HostingPlanQuotas WHERE QuotaID = 342
GO
DELETE FROM HostingPlanQuotas WHERE QuotaID = 343
GO
-- Remove ExchangeHostedEdition Quotas
@ -1243,6 +1251,8 @@ GO
DELETE FROM Quotas WHERE QuotaID = 343
GO
DELETE FROM HostingPlanResources WHERE GroupID = 33
GO
-- Remove ExchangeHostedEdition ServiceItemType
DELETE FROM ServiceItemTypes WHERE ItemTypeID = 40

View file

@ -39,7 +39,7 @@ using WebsitePanel.Server.Utils;
using WebsitePanel.Providers.Utils;
using WebsitePanel.Providers;
using System.Reflection;
using System.Data.Common;
namespace WebsitePanel.Providers.Database
{
@ -129,49 +129,36 @@ namespace WebsitePanel.Providers.Database
static System.Reflection.Assembly CurrentDomain_AssemblyResolve(object sender, ResolveEventArgs args)
{
//
//
if (!args.Name.Contains("MySql.Data"))
return null;
if (args.Name.Contains("MySql.Data.resources"))
return null;
//
string connectorKeyName = "SOFTWARE\\MySQL AB\\MySQL Connector/Net";
string connectorLocation = String.Empty;
string connectorVersion = String.Empty;
//
if (PInvoke.RegistryHive.HKLM.SubKeyExists_x86(connectorKeyName))
{
connectorLocation = PInvoke.RegistryHive.HKLM.GetSubKeyValue_x86(connectorKeyName, "Location");
connectorVersion = PInvoke.RegistryHive.HKLM.GetSubKeyValue_x86(connectorKeyName, "Version");
}
//
if (String.IsNullOrEmpty(connectorLocation))
{
Log.WriteInfo("Connector location is either null or empty");
return null;
}
string assemblyFile = args.Name.Split(',')[0] + ".dll";
// 1st location
string assemblyPath = Path.Combine(connectorLocation, @"Binaries\.NET 2.0\" + assemblyFile);
if (!File.Exists(assemblyPath))
string assemblyFullName = string.Format("MySql.Data, Version={0}.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d", connectorVersion);
if (assemblyFullName == args.Name)
{
// 2nd location
assemblyPath = Path.Combine(connectorLocation, @"Assemblies\" + assemblyFile);
if (!File.Exists(assemblyPath))
{
// 3rd location
assemblyPath = Path.Combine(connectorLocation, @"Assemblies\v2.0" + assemblyFile);
if (!File.Exists(assemblyPath))
{
Log.WriteInfo("Connector assembly could not be found or does not exist");
return null; // sorry, cannot find
}
}
return null; //avoid of stack overflow
}
return Assembly.LoadFrom(assemblyPath);
return Assembly.Load(assemblyFullName);
}
#endregion
@ -185,8 +172,14 @@ namespace WebsitePanel.Providers.Database
public virtual bool CheckConnectivity(string databaseName, string username, string password)
{
MySqlConnection conn = new MySqlConnection(String.Format("server={0};port={1};database={2};uid={3};password={4}",
ServerName, ServerPort, databaseName, username, password));
MySqlConnection conn = new MySqlConnection(
String.Format("server={0};port={1};database={2};uid={3};password={4}",
ServerName,
ServerPort,
databaseName,
username,
password)
);
try
{
conn.Open();

View file

@ -32,7 +32,7 @@ using System.Text;
using System.Text.RegularExpressions;
using System.Data;
using Microsoft.Win32;
using MySql.Data.MySqlClient;
//using MySql.Data.MySqlClient;
using System.IO;
using WebsitePanel.Server.Utils;

View file

@ -4868,7 +4868,7 @@
<value>Web site "{1}" was not found</value>
</data>
<data name="Warning.WAG_CANNOT_INSTALL_APPLICATION" xml:space="preserve">
<value>Selected application cannot be installed.</value>
<value>Following dependencies may be missing:</value>
</data>
<data name="WebAppGallery.AspNet20Required" xml:space="preserve">
<value>ASP.NET 2.0</value>

View file

@ -223,7 +223,7 @@ namespace WebsitePanel.Portal.ProviderControls
wpiEditFeedsList.Value = settings["FeedUrls"];
FilteredAppIds = settings["GalleryAppsFilter"];
radioFilterAppsList.SelectedIndex = Utils.ParseInt(settings["GalleryAppsFilterMode"], 0);
chkGalleryAppsAlwaysIgnoreDependencies.Checked = Utils.ParseBool(settings["GalleryAppsAlwaysIgnoreDependencies"], true);
chkGalleryAppsAlwaysIgnoreDependencies.Checked = Utils.ParseBool(settings["GalleryAppsAlwaysIgnoreDependencies"], false);
}
public void SaveSettings(StringDictionary settings)

View file

@ -16,7 +16,8 @@
<asp:CheckBox ID="chIgnoreDependencies" runat="server"
Text="Ignore dependency fail and install selected product anyway." Visible="false" AutoPostBack="True"
oncheckedchanged="chIgnoreDependencies_CheckedChanged" />
</div>
<div class="FormFooter">
<asp:Button ID="btnInstall" runat="server" meta:resourcekey="btnInstall" Text="Install" CssClass="Button1" OnClick="btnInstall_Click" OnClientClick="ShowProgressDialog('Installing application...');"/>

View file

@ -64,9 +64,14 @@ namespace WebsitePanel.Portal
if (appResult.ErrorCodes.Count > 0)
{
// app does not meet requirements
if (appResult.ErrorCodes.Count > 1)
{
// remove "- Your hosting package does not meet..." message
appResult.ErrorCodes.RemoveAt(0);
}
messageBox.ShowMessage(appResult, "WAG_CANNOT_INSTALL_APPLICATION", "WebAppGallery");
chIgnoreDependencies.Visible = true;
btnInstall.Enabled = false;
chIgnoreDependencies.Visible = false;
btnInstall.Enabled = true;
}
}
catch (Exception ex)