From c029e70783e77d6d50ec7cf97ae60dc2a26aec26 Mon Sep 17 00:00:00 2001 From: Shaun Walker Date: Sat, 12 Oct 2019 16:32:47 -0400 Subject: [PATCH] CSS separation, multi-tenancy fixes --- Oqtane.Client/Modules/Admin/Files/Add.razor | 11 +- Oqtane.Client/Modules/Admin/Files/Index.razor | 2 +- Oqtane.Client/Modules/Admin/Login/Index.razor | 4 +- .../Modules/Admin/ModuleDefinitions/Add.razor | 12 +- .../Admin/ModuleDefinitions/Edit.razor | 4 +- .../Modules/Admin/Modules/Import.razor | 2 +- Oqtane.Client/Modules/Admin/Pages/Add.razor | 6 +- .../Modules/Admin/Pages/Delete.razor | 4 +- Oqtane.Client/Modules/Admin/Pages/Edit.razor | 6 +- .../Modules/Admin/Profile/Index.razor | 6 +- .../Modules/Admin/Register/Index.razor | 16 +- Oqtane.Client/Modules/Admin/Roles/Add.razor | 2 +- .../Modules/Admin/Roles/Delete.razor | 4 +- Oqtane.Client/Modules/Admin/Roles/Edit.razor | 4 +- Oqtane.Client/Modules/Admin/Sites/Add.razor | 235 +++++++++++----- .../Modules/Admin/Sites/Delete.razor | 12 +- Oqtane.Client/Modules/Admin/Sites/Edit.razor | 16 +- Oqtane.Client/Modules/Admin/Sites/Index.razor | 27 +- Oqtane.Client/Modules/Admin/Tenants/Add.razor | 5 +- .../Modules/Admin/Tenants/Delete.razor | 2 +- .../Modules/Admin/Tenants/Edit.razor | 2 +- Oqtane.Client/Modules/Admin/Themes/Add.razor | 12 +- .../Modules/Admin/Upgrade/Index.razor | 12 +- Oqtane.Client/Modules/Admin/Users/Add.razor | 6 +- .../Modules/Admin/Users/Delete.razor | 4 +- Oqtane.Client/Modules/Admin/Users/Edit.razor | 4 +- Oqtane.Client/Modules/Admin/Users/Roles.razor | 10 +- Oqtane.Client/Modules/HtmlText/Edit.razor | 4 +- Oqtane.Client/Modules/HtmlText/Index.razor | 2 +- Oqtane.Client/Modules/ModuleBase.cs | 25 +- .../Services/Interfaces/ISiteService.cs | 5 + .../Services/Interfaces/IUserService.cs | 2 + Oqtane.Client/Services/ServiceBase.cs | 7 +- Oqtane.Client/Services/SiteService.cs | 22 ++ Oqtane.Client/Services/UserService.cs | 12 + Oqtane.Client/Shared/Installer.razor | 4 +- Oqtane.Client/Shared/Interop.cs | 19 +- Oqtane.Client/Shared/ModuleInstance.razor | 25 +- Oqtane.Client/Shared/Pane.razor | 10 +- Oqtane.Client/Shared/PaneLayout.razor | 4 +- Oqtane.Client/Shared/SiteRouter.razor | 5 +- Oqtane.Client/Shared/ThemeBuilder.razor | 12 +- Oqtane.Client/Shared/Utilities.cs | 5 - Oqtane.Client/Themes/AdminContainer.razor | 6 +- .../Default.razor} | 11 +- .../Themes/{Theme2 => BlazorTheme}/Theme.cs | 4 +- Oqtane.Client/Themes/ContainerBase.cs | 10 - .../Themes/Controls/ControlPanel.razor | 6 +- Oqtane.Client/Themes/Controls/Logo.razor | 4 +- .../Themes/Controls/ModuleActions.razor | 2 +- Oqtane.Client/Themes/ILayoutControl.cs | 7 + Oqtane.Client/Themes/IThemeControl.cs | 3 +- Oqtane.Client/Themes/LayoutBase.cs | 18 ++ .../Container.razor} | 2 +- .../Default.razor} | 20 +- .../Horizontal.razor} | 5 +- .../Layouts.razor} | 10 +- .../Themes/{Theme1 => OqtaneTheme}/Theme.cs | 4 +- .../Vertical.razor} | 5 +- Oqtane.Client/Themes/Theme1/Container1.razor | 13 - Oqtane.Client/Themes/Theme3/Theme.cs | 20 -- Oqtane.Client/Themes/ThemeBase.cs | 5 +- .../wwwroot/css/app.css | 166 +---------- Oqtane.Client/wwwroot/css/site.css | 259 ------------------ Oqtane.Client/wwwroot/index.html | 2 +- Oqtane.Client/wwwroot/js/interop.js | 16 +- .../Controllers/InstallationController.cs | 14 + Oqtane.Server/Pages/_Host.cshtml | 2 +- .../Repository/Context/TenantDBContext.cs | 2 +- Oqtane.Server/Repository/SiteRepository.cs | 30 +- Oqtane.Server/Repository/TenantResolver.cs | 4 +- Oqtane.Server/Repository/ThemeRepository.cs | 28 +- Oqtane.Server/Scripts/Master.sql | 16 +- .../Oqtane.Themes.BlazorTheme/Theme.css | 135 +++++++++ .../Oqtane.Themes.OqtaneTheme/Theme.css | 135 +++++++++ Oqtane.Server/wwwroot/css/app.css | 124 +++++++++ Oqtane.Server/wwwroot/js/interop.js | 16 +- Oqtane.Server/wwwroot/js/site.js | 17 -- Oqtane.Shared/Models/Alias.cs | 27 -- Oqtane.Shared/Models/ApplicationVersion.cs | 11 + Oqtane.Shared/Models/Tenant.cs | 1 + Oqtane.Shared/Shared/Constants.cs | 15 +- 82 files changed, 957 insertions(+), 811 deletions(-) rename Oqtane.Client/Themes/{Theme2/Theme2.razor => BlazorTheme/Default.razor} (66%) rename Oqtane.Client/Themes/{Theme2 => BlazorTheme}/Theme.cs (82%) create mode 100644 Oqtane.Client/Themes/ILayoutControl.cs create mode 100644 Oqtane.Client/Themes/LayoutBase.cs rename Oqtane.Client/Themes/{Theme2/Container2.razor => OqtaneTheme/Container.razor} (89%) rename Oqtane.Client/Themes/{Theme1/Theme1.razor => OqtaneTheme/Default.razor} (50%) rename Oqtane.Client/Themes/{Theme3/HorizontalLayout.razor => OqtaneTheme/Horizontal.razor} (65%) rename Oqtane.Client/Themes/{Theme3/Theme3.razor => OqtaneTheme/Layouts.razor} (54%) rename Oqtane.Client/Themes/{Theme1 => OqtaneTheme}/Theme.cs (82%) rename Oqtane.Client/Themes/{Theme3/VerticalLayout.razor => OqtaneTheme/Vertical.razor} (60%) delete mode 100644 Oqtane.Client/Themes/Theme1/Container1.razor delete mode 100644 Oqtane.Client/Themes/Theme3/Theme.cs rename Oqtane.Server/wwwroot/css/site.css => Oqtane.Client/wwwroot/css/app.css (51%) delete mode 100644 Oqtane.Client/wwwroot/css/site.css create mode 100644 Oqtane.Server/wwwroot/Themes/Oqtane.Themes.BlazorTheme/Theme.css create mode 100644 Oqtane.Server/wwwroot/Themes/Oqtane.Themes.OqtaneTheme/Theme.css create mode 100644 Oqtane.Server/wwwroot/css/app.css create mode 100644 Oqtane.Shared/Models/ApplicationVersion.cs diff --git a/Oqtane.Client/Modules/Admin/Files/Add.razor b/Oqtane.Client/Modules/Admin/Files/Add.razor index 04fc81ea..ffe3edcb 100644 --- a/Oqtane.Client/Modules/Admin/Files/Add.razor +++ b/Oqtane.Client/Modules/Admin/Files/Add.razor @@ -16,7 +16,6 @@ Cancel - @code { public override SecurityAccessLevel SecurityAccessLevel { get { return SecurityAccessLevel.Admin; } } @@ -29,23 +28,25 @@ { try { + ShowProgressIndicator(); + if (await FileService.UploadFilesAsync(PageState.Site.SiteRootPath, files, "")) { - ModuleInstance.AddModuleMessage("Files Uploaded Successfully", MessageType.Success); + AddModuleMessage("Files Uploaded Successfully", MessageType.Success); } else { - ModuleInstance.AddModuleMessage("Upload Failed", MessageType.Error); + AddModuleMessage("Upload Failed", MessageType.Error); } } catch (Exception ex) { - ModuleInstance.AddModuleMessage("Upload Failed. " + ex.Message, MessageType.Error); + AddModuleMessage("Upload Failed. " + ex.Message, MessageType.Error); } } else { - ModuleInstance.AddModuleMessage("You Must Select Some Files To Upload", MessageType.Warning); + AddModuleMessage("You Must Select Some Files To Upload", MessageType.Warning); } } } diff --git a/Oqtane.Client/Modules/Admin/Files/Index.razor b/Oqtane.Client/Modules/Admin/Files/Index.razor index 5f94d0ac..f8a4ebf1 100644 --- a/Oqtane.Client/Modules/Admin/Files/Index.razor +++ b/Oqtane.Client/Modules/Admin/Files/Index.razor @@ -39,6 +39,6 @@ else { await FileService.DeleteFileAsync(PageState.Site.SiteRootPath, filename); Files = await FileService.GetFilesAsync(PageState.Site.SiteRootPath); - ModuleInstance.AddModuleMessage("File Deleted", MessageType.Success); + AddModuleMessage("File Deleted", MessageType.Success); } } \ No newline at end of file diff --git a/Oqtane.Client/Modules/Admin/Login/Index.razor b/Oqtane.Client/Modules/Admin/Login/Index.razor index 40c461a1..411c0d8d 100644 --- a/Oqtane.Client/Modules/Admin/Login/Index.razor +++ b/Oqtane.Client/Modules/Admin/Login/Index.razor @@ -64,7 +64,7 @@ } else { - ModuleInstance.AddModuleMessage("Login Failed. Please Remember That Passwords Are Case Sensitive.", MessageType.Error); + AddModuleMessage("Login Failed. Please Remember That Passwords Are Case Sensitive.", MessageType.Error); } } else @@ -82,7 +82,7 @@ } else { - ModuleInstance.AddModuleMessage("Login Failed. Please Remember That Passwords Are Case Sensitive.", MessageType.Error); + AddModuleMessage("Login Failed. Please Remember That Passwords Are Case Sensitive.", MessageType.Error); } } } diff --git a/Oqtane.Client/Modules/Admin/ModuleDefinitions/Add.razor b/Oqtane.Client/Modules/Admin/ModuleDefinitions/Add.razor index e1cbedba..4235eb10 100644 --- a/Oqtane.Client/Modules/Admin/ModuleDefinitions/Add.razor +++ b/Oqtane.Client/Modules/Admin/ModuleDefinitions/Add.razor @@ -76,28 +76,28 @@ { if (await FileService.UploadFilesAsync("Modules", files, "")) { - ModuleInstance.AddModuleMessage("Module Uploaded Successfully. Click Install To Complete Installation.", MessageType.Success); + AddModuleMessage("Module Uploaded Successfully. Click Install To Complete Installation.", MessageType.Success); uploaded = true; StateHasChanged(); } else { - ModuleInstance.AddModuleMessage("Module Upload Failed.", MessageType.Error); + AddModuleMessage("Module Upload Failed.", MessageType.Error); } } catch (Exception ex) { - ModuleInstance.AddModuleMessage("Module Upload Failed. " + ex.Message, MessageType.Error); + AddModuleMessage("Module Upload Failed. " + ex.Message, MessageType.Error); } } else { - ModuleInstance.AddModuleMessage("Invalid Module Package", MessageType.Error); + AddModuleMessage("Invalid Module Package", MessageType.Error); } } else { - ModuleInstance.AddModuleMessage("You Must Select A Module To Upload", MessageType.Warning); + AddModuleMessage("You Must Select A Module To Upload", MessageType.Warning); } } @@ -110,7 +110,7 @@ private async Task DownloadModule(string moduledefinitionname, string version) { await PackageService.DownloadPackageAsync(moduledefinitionname, version, "Modules"); - ModuleInstance.AddModuleMessage("Module Downloaded Successfully. Click Install To Complete Installation.", MessageType.Success); + AddModuleMessage("Module Downloaded Successfully. Click Install To Complete Installation.", MessageType.Success); uploaded = true; StateHasChanged(); } diff --git a/Oqtane.Client/Modules/Admin/ModuleDefinitions/Edit.razor b/Oqtane.Client/Modules/Admin/ModuleDefinitions/Edit.razor index e9d389a0..2f2a2a85 100644 --- a/Oqtane.Client/Modules/Admin/ModuleDefinitions/Edit.razor +++ b/Oqtane.Client/Modules/Admin/ModuleDefinitions/Edit.razor @@ -58,7 +58,7 @@ } catch (Exception ex) { - ModuleInstance.AddModuleMessage(ex.Message, MessageType.Error); + AddModuleMessage(ex.Message, MessageType.Error); } } @@ -73,7 +73,7 @@ } catch (Exception ex) { - ModuleInstance.AddModuleMessage(ex.Message, MessageType.Error); + AddModuleMessage(ex.Message, MessageType.Error); } } } diff --git a/Oqtane.Client/Modules/Admin/Modules/Import.razor b/Oqtane.Client/Modules/Admin/Modules/Import.razor index 3728cdd7..abcaff32 100644 --- a/Oqtane.Client/Modules/Admin/Modules/Import.razor +++ b/Oqtane.Client/Modules/Admin/Modules/Import.razor @@ -35,7 +35,7 @@ } else { - ModuleInstance.AddModuleMessage("You Must Enter Some Content To Import", MessageType.Warning); + AddModuleMessage("You Must Enter Some Content To Import", MessageType.Warning); } } } diff --git a/Oqtane.Client/Modules/Admin/Pages/Add.razor b/Oqtane.Client/Modules/Admin/Pages/Add.razor index 469fb51a..da1c9069 100644 --- a/Oqtane.Client/Modules/Admin/Pages/Add.razor +++ b/Oqtane.Client/Modules/Admin/Pages/Add.razor @@ -173,7 +173,7 @@ } catch (Exception ex) { - ModuleInstance.AddModuleMessage(ex.Message, MessageType.Error); + AddModuleMessage(ex.Message, MessageType.Error); } } @@ -194,7 +194,7 @@ } catch (Exception ex) { - ModuleInstance.AddModuleMessage(ex.Message, MessageType.Error); + AddModuleMessage(ex.Message, MessageType.Error); } } @@ -273,7 +273,7 @@ } catch (Exception ex) { - ModuleInstance.AddModuleMessage(ex.Message, MessageType.Error); + AddModuleMessage(ex.Message, MessageType.Error); } } diff --git a/Oqtane.Client/Modules/Admin/Pages/Delete.razor b/Oqtane.Client/Modules/Admin/Pages/Delete.razor index 0f1e9cc8..d5db21d3 100644 --- a/Oqtane.Client/Modules/Admin/Pages/Delete.razor +++ b/Oqtane.Client/Modules/Admin/Pages/Delete.razor @@ -165,7 +165,7 @@ } catch (Exception ex) { - ModuleInstance.AddModuleMessage(ex.Message, MessageType.Error); + AddModuleMessage(ex.Message, MessageType.Error); } } @@ -178,7 +178,7 @@ } catch (Exception ex) { - ModuleInstance.AddModuleMessage(ex.Message, MessageType.Error); + AddModuleMessage(ex.Message, MessageType.Error); } } } diff --git a/Oqtane.Client/Modules/Admin/Pages/Edit.razor b/Oqtane.Client/Modules/Admin/Pages/Edit.razor index ed070e91..498417dc 100644 --- a/Oqtane.Client/Modules/Admin/Pages/Edit.razor +++ b/Oqtane.Client/Modules/Admin/Pages/Edit.razor @@ -233,7 +233,7 @@ } catch (Exception ex) { - ModuleInstance.AddModuleMessage(ex.Message, MessageType.Error); + AddModuleMessage(ex.Message, MessageType.Error); } } @@ -262,7 +262,7 @@ } catch (Exception ex) { - ModuleInstance.AddModuleMessage(ex.Message, MessageType.Error); + AddModuleMessage(ex.Message, MessageType.Error); } } @@ -365,7 +365,7 @@ } catch (Exception ex) { - ModuleInstance.AddModuleMessage(ex.Message, MessageType.Error); + AddModuleMessage(ex.Message, MessageType.Error); } } } diff --git a/Oqtane.Client/Modules/Admin/Profile/Index.razor b/Oqtane.Client/Modules/Admin/Profile/Index.razor index a6180677..4e87f52e 100644 --- a/Oqtane.Client/Modules/Admin/Profile/Index.razor +++ b/Oqtane.Client/Modules/Admin/Profile/Index.razor @@ -94,12 +94,12 @@ } else { - ModuleInstance.AddModuleMessage("Current User Is Not Logged In", MessageType.Warning); + AddModuleMessage("Current User Is Not Logged In", MessageType.Warning); } } catch (Exception ex) { - ModuleInstance.AddModuleMessage(ex.Message, MessageType.Error); + AddModuleMessage(ex.Message, MessageType.Error); } } @@ -124,7 +124,7 @@ } catch (Exception ex) { - ModuleInstance.AddModuleMessage(ex.Message, MessageType.Error); + AddModuleMessage(ex.Message, MessageType.Error); } } diff --git a/Oqtane.Client/Modules/Admin/Register/Index.razor b/Oqtane.Client/Modules/Admin/Register/Index.razor index cf56cc10..af68c17d 100644 --- a/Oqtane.Client/Modules/Admin/Register/Index.razor +++ b/Oqtane.Client/Modules/Admin/Register/Index.razor @@ -39,17 +39,25 @@ user.DisplayName = Username; user.Email = Email; user.Password = Password; - await UserService.AddUserAsync(user); - NavigationManager.NavigateTo(NavigateUrl("")); + user = await UserService.AddUserAsync(user); + + if (user != null) + { + NavigationManager.NavigateTo(NavigateUrl("")); + } + else + { + AddModuleMessage("Error Adding User. Please Ensure Password Meets Complexity Requirements And Username Is Not Already In Use.", MessageType.Error); + } } else { - ModuleInstance.AddModuleMessage("You Must Provide A Username, Password, and Email Address", MessageType.Warning); + AddModuleMessage("You Must Provide A Username, Password, and Email Address", MessageType.Warning); } } catch (Exception ex) { - ModuleInstance.AddModuleMessage(ex.Message, MessageType.Error); + AddModuleMessage(ex.Message, MessageType.Error); } } diff --git a/Oqtane.Client/Modules/Admin/Roles/Add.razor b/Oqtane.Client/Modules/Admin/Roles/Add.razor index aa8ff585..f7b35408 100644 --- a/Oqtane.Client/Modules/Admin/Roles/Add.razor +++ b/Oqtane.Client/Modules/Admin/Roles/Add.razor @@ -70,7 +70,7 @@ } catch (Exception ex) { - ModuleInstance.AddModuleMessage(ex.Message, MessageType.Error); + AddModuleMessage(ex.Message, MessageType.Error); } } diff --git a/Oqtane.Client/Modules/Admin/Roles/Delete.razor b/Oqtane.Client/Modules/Admin/Roles/Delete.razor index ccfd66c4..efb6b38b 100644 --- a/Oqtane.Client/Modules/Admin/Roles/Delete.razor +++ b/Oqtane.Client/Modules/Admin/Roles/Delete.razor @@ -71,7 +71,7 @@ } catch (Exception ex) { - ModuleInstance.AddModuleMessage(ex.Message, MessageType.Error); + AddModuleMessage(ex.Message, MessageType.Error); } } @@ -84,7 +84,7 @@ } catch (Exception ex) { - ModuleInstance.AddModuleMessage(ex.Message, MessageType.Error); + AddModuleMessage(ex.Message, MessageType.Error); } } diff --git a/Oqtane.Client/Modules/Admin/Roles/Edit.razor b/Oqtane.Client/Modules/Admin/Roles/Edit.razor index 74ec0899..91d0e4d7 100644 --- a/Oqtane.Client/Modules/Admin/Roles/Edit.razor +++ b/Oqtane.Client/Modules/Admin/Roles/Edit.razor @@ -71,7 +71,7 @@ } catch (Exception ex) { - ModuleInstance.AddModuleMessage(ex.Message, MessageType.Error); + AddModuleMessage(ex.Message, MessageType.Error); } } @@ -92,7 +92,7 @@ } catch (Exception ex) { - ModuleInstance.AddModuleMessage(ex.Message, MessageType.Error); + AddModuleMessage(ex.Message, MessageType.Error); } } diff --git a/Oqtane.Client/Modules/Admin/Sites/Add.razor b/Oqtane.Client/Modules/Admin/Sites/Add.razor index f22bfae0..e6914987 100644 --- a/Oqtane.Client/Modules/Admin/Sites/Add.razor +++ b/Oqtane.Client/Modules/Admin/Sites/Add.razor @@ -5,6 +5,7 @@ @inject IAliasService AliasService @inject ISiteService SiteService @inject IThemeService ThemeService +@inject IUserService UserService @if (tenants == null) { @@ -12,74 +13,93 @@ } else { - +
+ + + + + + + + + + +
+ + + +
+ + + +
+ + +