From b68925de421ca6aa2e0a9b912b5360aaffa9824b Mon Sep 17 00:00:00 2001 From: LD-Reborn Date: Sun, 14 Dec 2025 18:37:46 +0100 Subject: [PATCH] Added basic searchdomain info view --- .../Controllers/Frontend/HomeController.cs | 10 +- src/Server/Models/HomeViewModels.cs | 6 + src/Server/Views/Home/Index.cshtml | 217 +++++++++++++++++- src/Server/wwwroot/css/site.css | 25 ++ 4 files changed, 253 insertions(+), 5 deletions(-) create mode 100644 src/Server/Models/HomeViewModels.cs diff --git a/src/Server/Controllers/Frontend/HomeController.cs b/src/Server/Controllers/Frontend/HomeController.cs index f0467ab..4ee52ec 100644 --- a/src/Server/Controllers/Frontend/HomeController.cs +++ b/src/Server/Controllers/Frontend/HomeController.cs @@ -4,6 +4,7 @@ using Microsoft.AspNetCore.Mvc; using Server.Helper; using Shared.Models; using Server.Exceptions; +using Server.Models; namespace Server.Controllers; [ApiController] @@ -11,15 +12,22 @@ namespace Server.Controllers; public class HomeController : Controller { private readonly ILogger _logger; + private readonly SearchdomainManager _domainManager; + public HomeController(ILogger logger, IConfiguration config, SearchdomainManager domainManager, SearchdomainHelper searchdomainHelper, DatabaseHelper databaseHelper) { _logger = logger; + _domainManager = domainManager; } [Authorize] [HttpGet("/")] public IActionResult Index() { - return View(); + HomeIndexViewModel viewModel = new() + { + Searchdomains = _domainManager.ListSearchdomains() + }; + return View(viewModel); } } \ No newline at end of file diff --git a/src/Server/Models/HomeViewModels.cs b/src/Server/Models/HomeViewModels.cs new file mode 100644 index 0000000..0accb93 --- /dev/null +++ b/src/Server/Models/HomeViewModels.cs @@ -0,0 +1,6 @@ +namespace Server.Models; + +public class HomeIndexViewModel +{ + public required List Searchdomains { get; set; } +} \ No newline at end of file diff --git a/src/Server/Views/Home/Index.cshtml b/src/Server/Views/Home/Index.cshtml index f8821f2..e1781b0 100644 --- a/src/Server/Views/Home/Index.cshtml +++ b/src/Server/Views/Home/Index.cshtml @@ -1,8 +1,217 @@ -@{ +@using Server.Models +@using System.Web +@model HomeIndexViewModel +@{ ViewData["Title"] = "Home Page"; + int i = 0; + Dictionary domains = []; + Model.Searchdomains.ForEach(domain => + { + domains[i++] = domain; + }); } -
-

Welcome

-

Learn about building Web apps with ASP.NET Core.

+
+
+ + + + + +
+ +
+
+ + +
+

Searchdomain1

+
+ + +
+
+ + +
+
+ + +
+
+ +
+
+ + +
+
+ Cache utilization: 2.47MiB +
+ +
+ + +
+
+
+ Recent queries + +
+ + @*
+ Some test query + +
+
+ Some other test query + +
*@ +
+
+ + +
+
+
+ Entities + +
+
+ + + + + + + + + +
NameAction
+ + @*
+ Someentity + +
+
+ Some other test query + +
*@ +
+
+ +
+
+ +
+
+ + \ No newline at end of file diff --git a/src/Server/wwwroot/css/site.css b/src/Server/wwwroot/css/site.css index f8a013d..44eaade 100644 --- a/src/Server/wwwroot/css/site.css +++ b/src/Server/wwwroot/css/site.css @@ -19,4 +19,29 @@ html { body { margin-bottom: 60px; +} + +/* Throbber */ +.spinner-container { + display: flex; + align-items: center; + gap: 8px; + margin: 10px 0; +} + +.spinner { + width: 20px; + height: 20px; + border: 3px solid #ccc; + border-top: 3px solid #0d6efd; + border-radius: 50%; + animation: spin 0.8s linear infinite; +} + +@keyframes spin { + to { transform: rotate(360deg); } +} + +.d-none { + display: none; } \ No newline at end of file