-
+
|
diff --git a/Oqtane.Client/Themes/Controls/LoginBase.cs b/Oqtane.Client/Themes/Controls/LoginBase.cs
index a4282c08..60bbb781 100644
--- a/Oqtane.Client/Themes/Controls/LoginBase.cs
+++ b/Oqtane.Client/Themes/Controls/LoginBase.cs
@@ -35,7 +35,7 @@ namespace Oqtane.Themes.Controls
var interop = new Interop(jsRuntime);
string antiforgerytoken = await interop.GetElementByName("__RequestVerificationToken");
var fields = new { __RequestVerificationToken = antiforgerytoken, returnurl = (PageState.Alias.Path + "/" + PageState.Page.Path) };
- await interop.SubmitForm("/pages/logout/", fields);
+ await interop.SubmitForm($"/{PageState.Alias.AliasId}/pages/logout/", fields);
}
else
{
diff --git a/Oqtane.Client/UI/SiteRouter.razor b/Oqtane.Client/UI/SiteRouter.razor
index 070e872f..a384fc58 100644
--- a/Oqtane.Client/UI/SiteRouter.razor
+++ b/Oqtane.Client/UI/SiteRouter.razor
@@ -471,7 +471,7 @@
}
private Runtime GetRuntime()
- => RuntimeInformation.IsOSPlatform(OSPlatform.Create("WEBASSEMBLY"))
+ => RuntimeInformation.IsOSPlatform(OSPlatform.Create("BROWSER"))
? Runtime.WebAssembly
: Runtime.Server;
}
diff --git a/Oqtane.Server/Controllers/AliasController.cs b/Oqtane.Server/Controllers/AliasController.cs
index 46dff2de..0bbdde97 100644
--- a/Oqtane.Server/Controllers/AliasController.cs
+++ b/Oqtane.Server/Controllers/AliasController.cs
@@ -14,7 +14,7 @@ using Microsoft.AspNetCore.Http;
namespace Oqtane.Controllers
{
- [Route("{site}/api/[controller]")]
+ [Route("{alias}/api/[controller]")]
public class AliasController : Controller
{
private readonly IAliasRepository _aliases;
diff --git a/Oqtane.Server/Controllers/FileController.cs b/Oqtane.Server/Controllers/FileController.cs
index d6e94644..6c3223c9 100644
--- a/Oqtane.Server/Controllers/FileController.cs
+++ b/Oqtane.Server/Controllers/FileController.cs
@@ -21,7 +21,7 @@ using Oqtane.Repository;
namespace Oqtane.Controllers
{
- [Route("{site}/api/[controller]")]
+ [Route("{alias}/api/[controller]")]
public class FileController : Controller
{
private readonly IWebHostEnvironment _environment;
diff --git a/Oqtane.Server/Controllers/FolderController.cs b/Oqtane.Server/Controllers/FolderController.cs
index d8c06445..68a01e23 100644
--- a/Oqtane.Server/Controllers/FolderController.cs
+++ b/Oqtane.Server/Controllers/FolderController.cs
@@ -14,7 +14,7 @@ using System.IO;
namespace Oqtane.Controllers
{
- [Route("{site}/api/[controller]")]
+ [Route("{alias}/api/[controller]")]
public class FolderController : Controller
{
private readonly IFolderRepository _folders;
diff --git a/Oqtane.Server/Controllers/InstallationController.cs b/Oqtane.Server/Controllers/InstallationController.cs
index b930db48..b16f54f6 100644
--- a/Oqtane.Server/Controllers/InstallationController.cs
+++ b/Oqtane.Server/Controllers/InstallationController.cs
@@ -7,7 +7,7 @@ using Oqtane.Infrastructure;
namespace Oqtane.Controllers
{
- [Route("{site}/api/[controller]")]
+ [Route("{alias}/api/[controller]")]
public class InstallationController : Controller
{
private readonly IConfigurationRoot _config;
diff --git a/Oqtane.Server/Controllers/JobController.cs b/Oqtane.Server/Controllers/JobController.cs
index 6d5c5c7b..8e1993aa 100644
--- a/Oqtane.Server/Controllers/JobController.cs
+++ b/Oqtane.Server/Controllers/JobController.cs
@@ -12,7 +12,7 @@ using Oqtane.Repository;
namespace Oqtane.Controllers
{
- [Route("{site}/api/[controller]")]
+ [Route("{alias}/api/[controller]")]
public class JobController : Controller
{
private readonly IJobRepository _jobs;
diff --git a/Oqtane.Server/Controllers/JobLogController.cs b/Oqtane.Server/Controllers/JobLogController.cs
index 15b2714b..0c3f8bc5 100644
--- a/Oqtane.Server/Controllers/JobLogController.cs
+++ b/Oqtane.Server/Controllers/JobLogController.cs
@@ -9,7 +9,7 @@ using Oqtane.Repository;
namespace Oqtane.Controllers
{
- [Route("{site}/api/[controller]")]
+ [Route("{alias}/api/[controller]")]
public class JobLogController : Controller
{
private readonly IJobLogRepository _jobLogs;
diff --git a/Oqtane.Server/Controllers/LogController.cs b/Oqtane.Server/Controllers/LogController.cs
index 9e62bd0c..8cccfd12 100644
--- a/Oqtane.Server/Controllers/LogController.cs
+++ b/Oqtane.Server/Controllers/LogController.cs
@@ -9,7 +9,7 @@ using Oqtane.Shared;
namespace Oqtane.Controllers
{
- [Route("{site}/api/[controller]")]
+ [Route("{alias}/api/[controller]")]
public class LogController : Controller
{
private readonly ILogManager _logger;
diff --git a/Oqtane.Server/Controllers/ModuleController.cs b/Oqtane.Server/Controllers/ModuleController.cs
index e87a7a5a..1afc13d6 100644
--- a/Oqtane.Server/Controllers/ModuleController.cs
+++ b/Oqtane.Server/Controllers/ModuleController.cs
@@ -11,7 +11,7 @@ using Oqtane.Security;
namespace Oqtane.Controllers
{
- [Route("{site}/api/[controller]")]
+ [Route("{alias}/api/[controller]")]
public class ModuleController : Controller
{
private readonly IModuleRepository _modules;
diff --git a/Oqtane.Server/Controllers/ModuleDefinitionController.cs b/Oqtane.Server/Controllers/ModuleDefinitionController.cs
index 673e42b3..7ef9f7e1 100644
--- a/Oqtane.Server/Controllers/ModuleDefinitionController.cs
+++ b/Oqtane.Server/Controllers/ModuleDefinitionController.cs
@@ -17,7 +17,7 @@ using Microsoft.Extensions.DependencyInjection;
namespace Oqtane.Controllers
{
- [Route("{site}/api/[controller]")]
+ [Route("{alias}/api/[controller]")]
public class ModuleDefinitionController : Controller
{
private readonly IModuleDefinitionRepository _moduleDefinitions;
diff --git a/Oqtane.Server/Controllers/NotificationController.cs b/Oqtane.Server/Controllers/NotificationController.cs
index ebf7489b..5310f5c7 100644
--- a/Oqtane.Server/Controllers/NotificationController.cs
+++ b/Oqtane.Server/Controllers/NotificationController.cs
@@ -10,7 +10,7 @@ using Oqtane.Security;
namespace Oqtane.Controllers
{
- [Route("{site}/api/[controller]")]
+ [Route("{alias}/api/[controller]")]
public class NotificationController : Controller
{
private readonly INotificationRepository _notifications;
diff --git a/Oqtane.Server/Controllers/PackageController.cs b/Oqtane.Server/Controllers/PackageController.cs
index a6ea13ef..51194245 100644
--- a/Oqtane.Server/Controllers/PackageController.cs
+++ b/Oqtane.Server/Controllers/PackageController.cs
@@ -15,7 +15,7 @@ using Oqtane.Shared;
namespace Oqtane.Controllers
{
- [Route("{site}/api/[controller]")]
+ [Route("{alias}/api/[controller]")]
public class PackageController : Controller
{
private readonly IWebHostEnvironment _environment;
diff --git a/Oqtane.Server/Controllers/PageController.cs b/Oqtane.Server/Controllers/PageController.cs
index 09210bce..16afb06e 100644
--- a/Oqtane.Server/Controllers/PageController.cs
+++ b/Oqtane.Server/Controllers/PageController.cs
@@ -13,7 +13,7 @@ using Oqtane.Repository;
namespace Oqtane.Controllers
{
- [Route("{site}/api/[controller]")]
+ [Route("{alias}/api/[controller]")]
public class PageController : Controller
{
private readonly IPageRepository _pages;
diff --git a/Oqtane.Server/Controllers/PageModuleController.cs b/Oqtane.Server/Controllers/PageModuleController.cs
index d4712be6..f2c0d489 100644
--- a/Oqtane.Server/Controllers/PageModuleController.cs
+++ b/Oqtane.Server/Controllers/PageModuleController.cs
@@ -11,7 +11,7 @@ using Oqtane.Security;
namespace Oqtane.Controllers
{
- [Route("{site}/api/[controller]")]
+ [Route("{alias}/api/[controller]")]
public class PageModuleController : Controller
{
private readonly IPageModuleRepository _pageModules;
diff --git a/Oqtane.Server/Controllers/ProfileController.cs b/Oqtane.Server/Controllers/ProfileController.cs
index aad21208..aa1158ac 100644
--- a/Oqtane.Server/Controllers/ProfileController.cs
+++ b/Oqtane.Server/Controllers/ProfileController.cs
@@ -9,7 +9,7 @@ using Oqtane.Repository;
namespace Oqtane.Controllers
{
- [Route("{site}/api/[controller]")]
+ [Route("{alias}/api/[controller]")]
public class ProfileController : Controller
{
private readonly IProfileRepository _profiles;
diff --git a/Oqtane.Server/Controllers/RoleController.cs b/Oqtane.Server/Controllers/RoleController.cs
index 956fad8f..418382c5 100644
--- a/Oqtane.Server/Controllers/RoleController.cs
+++ b/Oqtane.Server/Controllers/RoleController.cs
@@ -9,7 +9,7 @@ using Oqtane.Repository;
namespace Oqtane.Controllers
{
- [Route("{site}/api/[controller]")]
+ [Route("{alias}/api/[controller]")]
public class RoleController : Controller
{
private readonly IRoleRepository _roles;
diff --git a/Oqtane.Server/Controllers/SettingController.cs b/Oqtane.Server/Controllers/SettingController.cs
index 44437344..e9be3798 100644
--- a/Oqtane.Server/Controllers/SettingController.cs
+++ b/Oqtane.Server/Controllers/SettingController.cs
@@ -10,7 +10,7 @@ using Oqtane.Repository;
namespace Oqtane.Controllers
{
- [Route("{site}/api/[controller]")]
+ [Route("{alias}/api/[controller]")]
public class SettingController : Controller
{
private readonly ISettingRepository _settings;
diff --git a/Oqtane.Server/Controllers/SiteController.cs b/Oqtane.Server/Controllers/SiteController.cs
index e619e67f..c358ea3c 100644
--- a/Oqtane.Server/Controllers/SiteController.cs
+++ b/Oqtane.Server/Controllers/SiteController.cs
@@ -10,7 +10,7 @@ using Oqtane.Repository;
namespace Oqtane.Controllers
{
- [Route("{site}/api/[controller]")]
+ [Route("{alias}/api/[controller]")]
public class SiteController : Controller
{
private readonly ISiteRepository _sites;
diff --git a/Oqtane.Server/Controllers/SiteTemplateController.cs b/Oqtane.Server/Controllers/SiteTemplateController.cs
index c74e69a4..2f709fb1 100644
--- a/Oqtane.Server/Controllers/SiteTemplateController.cs
+++ b/Oqtane.Server/Controllers/SiteTemplateController.cs
@@ -5,7 +5,7 @@ using Oqtane.Repository;
namespace Oqtane.Controllers
{
- [Route("{site}/api/[controller]")]
+ [Route("{alias}/api/[controller]")]
public class SiteTemplateController : Controller
{
private readonly ISiteTemplateRepository _siteTemplates;
diff --git a/Oqtane.Server/Controllers/SqlController.cs b/Oqtane.Server/Controllers/SqlController.cs
index a884ab35..5bce5a92 100644
--- a/Oqtane.Server/Controllers/SqlController.cs
+++ b/Oqtane.Server/Controllers/SqlController.cs
@@ -14,7 +14,7 @@ using System;
namespace Oqtane.Controllers
{
- [Route("{site}/api/[controller]")]
+ [Route("{alias}/api/[controller]")]
public class SqlController : Controller
{
private readonly ITenantRepository _tenants;
diff --git a/Oqtane.Server/Controllers/SystemController.cs b/Oqtane.Server/Controllers/SystemController.cs
index bfd8d97a..2f5d7339 100644
--- a/Oqtane.Server/Controllers/SystemController.cs
+++ b/Oqtane.Server/Controllers/SystemController.cs
@@ -7,7 +7,7 @@ using Microsoft.AspNetCore.Hosting;
namespace Oqtane.Controllers
{
- [Route("{site}/api/[controller]")]
+ [Route("{alias}/api/[controller]")]
public class SystemController : Controller
{
private readonly IWebHostEnvironment _environment;
diff --git a/Oqtane.Server/Controllers/TenantController.cs b/Oqtane.Server/Controllers/TenantController.cs
index bfacbd1c..0f76fc78 100644
--- a/Oqtane.Server/Controllers/TenantController.cs
+++ b/Oqtane.Server/Controllers/TenantController.cs
@@ -9,7 +9,7 @@ using Oqtane.Repository;
namespace Oqtane.Controllers
{
- [Route("{site}/api/[controller]")]
+ [Route("{alias}/api/[controller]")]
public class TenantController : Controller
{
private readonly ITenantRepository _tenants;
diff --git a/Oqtane.Server/Controllers/ThemeController.cs b/Oqtane.Server/Controllers/ThemeController.cs
index 5f516851..fa182dfa 100644
--- a/Oqtane.Server/Controllers/ThemeController.cs
+++ b/Oqtane.Server/Controllers/ThemeController.cs
@@ -15,7 +15,7 @@ using Oqtane.Repository;
namespace Oqtane.Controllers
{
- [Route("{site}/api/[controller]")]
+ [Route("{alias}/api/[controller]")]
public class ThemeController : Controller
{
private readonly IThemeRepository _themes;
diff --git a/Oqtane.Server/Controllers/UserController.cs b/Oqtane.Server/Controllers/UserController.cs
index 14ff6f60..fce08020 100644
--- a/Oqtane.Server/Controllers/UserController.cs
+++ b/Oqtane.Server/Controllers/UserController.cs
@@ -16,7 +16,7 @@ using Oqtane.Repository;
namespace Oqtane.Controllers
{
- [Route("{site}/api/[controller]")]
+ [Route("{alias}/api/[controller]")]
public class UserController : Controller
{
private readonly IUserRepository _users;
diff --git a/Oqtane.Server/Controllers/UserRoleController.cs b/Oqtane.Server/Controllers/UserRoleController.cs
index ca1d1929..b4398aa9 100644
--- a/Oqtane.Server/Controllers/UserRoleController.cs
+++ b/Oqtane.Server/Controllers/UserRoleController.cs
@@ -9,7 +9,7 @@ using Oqtane.Repository;
namespace Oqtane.Controllers
{
- [Route("{site}/api/[controller]")]
+ [Route("{alias}/api/[controller]")]
public class UserRoleController : Controller
{
private readonly IUserRoleRepository _userRoles;
diff --git a/Oqtane.Server/Modules/HtmlText/Controllers/HtmlTextController.cs b/Oqtane.Server/Modules/HtmlText/Controllers/HtmlTextController.cs
index 5eb6f37f..fc9495fc 100644
--- a/Oqtane.Server/Modules/HtmlText/Controllers/HtmlTextController.cs
+++ b/Oqtane.Server/Modules/HtmlText/Controllers/HtmlTextController.cs
@@ -11,7 +11,7 @@ using Oqtane.Infrastructure;
namespace Oqtane.Modules.HtmlText.Controllers
{
- [Route("{site}/api/[controller]")]
+ [Route("{alias}/api/[controller]")]
public class HtmlTextController : Controller
{
private readonly IHtmlTextRepository _htmlText;
diff --git a/Oqtane.Server/Pages/Login.cshtml b/Oqtane.Server/Pages/Login.cshtml
index f2eab15f..92433015 100644
--- a/Oqtane.Server/Pages/Login.cshtml
+++ b/Oqtane.Server/Pages/Login.cshtml
@@ -1,3 +1,3 @@
-@page "/pages/login"
+@page "/{alias}/pages/login"
@namespace Oqtane.Pages
@model Oqtane.Pages.LoginModel
diff --git a/Oqtane.Server/Pages/Logout.cshtml b/Oqtane.Server/Pages/Logout.cshtml
index f114ee1e..d477046c 100644
--- a/Oqtane.Server/Pages/Logout.cshtml
+++ b/Oqtane.Server/Pages/Logout.cshtml
@@ -1,3 +1,3 @@
-@page "/pages/logout"
+@page "/{alias}/pages/logout"
@namespace Oqtane.Pages
@model Oqtane.Pages.LogoutModel
diff --git a/Oqtane.Server/Repository/TenantResolver.cs b/Oqtane.Server/Repository/TenantResolver.cs
index 47f0e0bd..cd273b3a 100644
--- a/Oqtane.Server/Repository/TenantResolver.cs
+++ b/Oqtane.Server/Repository/TenantResolver.cs
@@ -27,7 +27,7 @@ namespace Oqtane.Repository
if (accessor.HttpContext != null)
{
string[] segments = accessor.HttpContext.Request.Path.Value.Split(new[] { '/' }, StringSplitOptions.RemoveEmptyEntries);
- if (segments.Length > 1 && segments[1] == "api" && segments[0] != "~")
+ if (segments.Length > 1 && (segments[1] == "api" || segments[1] == "pages") && segments[0] != "~")
{
aliasId = int.Parse(segments[0]);
}
|