#18685, #18673: Fixing multi tenancy actions (edit and disable)

Work Items: 18673, 18685

--HG--
branch : 1.x
This commit is contained in:
Sebastien Ros
2012-07-02 10:57:40 -07:00
parent aa7360b94e
commit 2b95730530

View File

@@ -229,8 +229,9 @@ namespace Orchard.Environment {
/// </summary>
void IShellSettingsManagerEventHandler.Saved(ShellSettings settings) {
lock (_syncLock) {
// if a tenant has been altered, and is not disabled or invalid, reload it
if (settings.State.CurrentState != TenantState.State.Disabled && settings.State.CurrentState != TenantState.State.Invalid) {
// if a tenant has been altered, and is not invalid, reload it
if (settings.State.CurrentState != TenantState.State.Invalid) {
_tenantsToRestart = _tenantsToRestart.Where(x => x.Name != settings.Name).Union(new[] { settings });
}
}
@@ -240,8 +241,8 @@ namespace Orchard.Environment {
// look for the associated shell context
var shellContext = _shellContexts.FirstOrDefault(c => c.Settings.Name == settings.Name);
// is this is a new tenant ?
if (shellContext == null) {
// is this is a new tenant ? or is it a tenant waiting for setup ?
if (shellContext == null || settings.State.CurrentState == TenantState.State.Uninitialized) {
// create the Shell
var context = CreateShellContext(settings);