diff --git a/src/Orchard.Web/Modules/Orchard.MultiTenancy/Extensions/UrlHelperExtensions.cs b/src/Orchard.Web/Modules/Orchard.MultiTenancy/Extensions/UrlHelperExtensions.cs index d05d0d77d..cd59c0f24 100644 --- a/src/Orchard.Web/Modules/Orchard.MultiTenancy/Extensions/UrlHelperExtensions.cs +++ b/src/Orchard.Web/Modules/Orchard.MultiTenancy/Extensions/UrlHelperExtensions.cs @@ -1,26 +1,30 @@ -using System.Web.Mvc; +using System; +using System.Linq; +using System.Web.Mvc; using Orchard.Environment.Configuration; namespace Orchard.MultiTenancy.Extensions { public static class UrlHelperExtensions { public static string Tenant(this UrlHelper urlHelper, ShellSettings tenantShellSettings) { + + var requestUrlHost = tenantShellSettings.RequestUrlHost.Split(new[] { "," }, StringSplitOptions.RemoveEmptyEntries).First(); + //info: (heskew) might not keep the port/vdir insertion around beyond... var port = string.Empty; - string host = urlHelper.RequestContext.HttpContext.Request.Headers["Host"]; + var host = urlHelper.RequestContext.HttpContext.Request.Headers["Host"]; if (host.Contains(":")) port = host.Substring(host.IndexOf(":")); - var result = string.Format("{0}://{1}", - urlHelper.RequestContext.HttpContext.Request.Url.Scheme, - !string.IsNullOrEmpty(tenantShellSettings.RequestUrlHost) - ? tenantShellSettings.RequestUrlHost + port : host); + var result = String.Format("{0}://{1}", + urlHelper.RequestContext.HttpContext.Request.Url.Scheme, + !String.IsNullOrEmpty(requestUrlHost) ? requestUrlHost + port : host); var applicationPath = urlHelper.RequestContext.HttpContext.Request.ApplicationPath; - if (!string.IsNullOrEmpty(applicationPath) && !string.Equals(applicationPath, "/")) + if (!String.IsNullOrEmpty(applicationPath) && applicationPath != "/") result += applicationPath; - if (!string.IsNullOrEmpty(tenantShellSettings.RequestUrlPrefix)) + if (!String.IsNullOrEmpty(tenantShellSettings.RequestUrlPrefix)) result += "/" + tenantShellSettings.RequestUrlPrefix; return result; diff --git a/src/Orchard.Web/Modules/Orchard.MultiTenancy/Views/Admin/Edit.cshtml b/src/Orchard.Web/Modules/Orchard.MultiTenancy/Views/Admin/Edit.cshtml index a5c9d699f..79173af63 100644 --- a/src/Orchard.Web/Modules/Orchard.MultiTenancy/Views/Admin/Edit.cshtml +++ b/src/Orchard.Web/Modules/Orchard.MultiTenancy/Views/Admin/Edit.cshtml @@ -5,7 +5,7 @@ Layout.Title = T("Edit Tenant").ToString(); Script.Require("jQuery").AtFoot(); - Script.Include(Url.Content("~/Themes/TheAdmin/Scripts/admin.js")).AtFoot(); + Script.Include(Url.Content("~/Themes/TheAdmin/Scripts/admin.js")).AtFoot(); Script.Include("multi-tenancy.admin.js").AtFoot(); } @@ -16,9 +16,9 @@