From 900ea8cfbc28b71e5c0a470a118a9ccb2970a6c4 Mon Sep 17 00:00:00 2001 From: Shaun Walker Date: Sun, 6 Jun 2021 10:36:13 -0400 Subject: [PATCH] allow host to view tenant information in Site Settings --- Oqtane.Client/Modules/Admin/Site/Index.razor | 62 ++++++++++++++----- Oqtane.Server/Controllers/TenantController.cs | 4 +- 2 files changed, 50 insertions(+), 16 deletions(-) diff --git a/Oqtane.Client/Modules/Admin/Site/Index.razor b/Oqtane.Client/Modules/Admin/Site/Index.razor index 91630ccf..eb291714 100644 --- a/Oqtane.Client/Modules/Admin/Site/Index.razor +++ b/Oqtane.Client/Modules/Admin/Site/Index.razor @@ -3,6 +3,7 @@ @inject NavigationManager NavigationManager @inject ISiteService SiteService @inject ITenantService TenantService +@inject IDatabaseService DatabaseService @inject IAliasService AliasService @inject IThemeService ThemeService @inject ISettingService SettingService @@ -20,14 +21,6 @@ - - - - - - - - @@ -215,7 +208,37 @@ - + @if (UserSecurity.IsAuthorized(PageState.User, RoleNames.Host)) + { +
+ + + + + + + + + + + + + +
+ + + +
+ + + +
+ + + +
+
+ }
@@ -230,8 +253,6 @@ private List _themes = new List(); private List _containers = new List(); private string _name = string.Empty; - private List _tenantList; - private string _tenant = string.Empty; private List _aliasList; private string _urls = string.Empty; private int _logofileid = -1; @@ -253,6 +274,9 @@ private FileManager _pwaappiconfilemanager; private int _pwasplashiconfileid = -1; private FileManager _pwasplashiconfilemanager; + private string _tenant = string.Empty; + private string _database = string.Empty; + private string _connectionstring = string.Empty; private string _createdby; private DateTime _createdon; private string _modifiedby; @@ -273,8 +297,6 @@ if (site != null) { _name = site.Name; - _tenantList = await TenantService.GetTenantsAsync(); - _tenant = _tenantList.Find(item => item.TenantId == site.TenantId).Name; foreach (Alias alias in _aliasList.Where(item => item.SiteId == site.SiteId && item.TenantId == site.TenantId).ToList()) { _urls += alias.Name + ","; @@ -327,6 +349,19 @@ _pwasplashiconfileid = site.PwaSplashIconFileId.Value; } + if (UserSecurity.IsAuthorized(PageState.User, RoleNames.Host)) + { + var tenants = await TenantService.GetTenantsAsync(); + var _databases = await DatabaseService.GetDatabasesAsync(); + var tenant = tenants.Find(item => item.TenantId == site.TenantId); + if (_tenant != null) + { + _tenant = tenant.Name; + _database = _databases.Find(item => item.DBType == tenant.DBType)?.Name; + _connectionstring = tenant.DBConnectionString; + } + } + _createdby = site.CreatedBy; _createdon = site.CreatedOn; _modifiedby = site.ModifiedBy; @@ -545,6 +580,5 @@ { AddModuleMessage(Localizer["You Must Specify The SMTP Host, Port, And Sender"], MessageType.Warning); } - } } diff --git a/Oqtane.Server/Controllers/TenantController.cs b/Oqtane.Server/Controllers/TenantController.cs index b6ef064d..6f6fb4e8 100644 --- a/Oqtane.Server/Controllers/TenantController.cs +++ b/Oqtane.Server/Controllers/TenantController.cs @@ -23,7 +23,7 @@ namespace Oqtane.Controllers // GET: api/ [HttpGet] - [Authorize(Roles = RoleNames.Admin)] + [Authorize(Roles = RoleNames.Host)] public IEnumerable Get() { return _tenants.GetTenants(); @@ -31,7 +31,7 @@ namespace Oqtane.Controllers // GET api//5 [HttpGet("{id}")] - [Authorize(Roles = RoleNames.Admin)] + [Authorize(Roles = RoleNames.Host)] public Tenant Get(int id) { return _tenants.GetTenant(id);