Files
Watcher/watcher-monitoring/Controllers/HomeController.cs
triggermeelmo 4523867a61
All checks were successful
Gitea CI/CD / dotnet-build-and-test (push) Successful in 10m2s
Gitea CI/CD / Set Tag Name (push) Successful in 5s
Gitea CI/CD / docker-build-and-push (push) Successful in 11m30s
Gitea CI/CD / Create Tag (push) Successful in 5s
Added Container_Card to dashboard
2026-01-09 12:57:48 +01:00

57 lines
1.5 KiB
C#

using System.Diagnostics;
using Microsoft.AspNetCore.Authorization;
using Microsoft.AspNetCore.Mvc;
using watcher_monitoring.Models;
using watcher_monitoring.Data;
using System.Threading.Tasks;
using Microsoft.EntityFrameworkCore;
namespace watcher_monitoring.Controllers;
[Authorize]
public class HomeController : Controller
{
private readonly WatcherDbContext _context;
private readonly ILogger<HomeController> _logger;
public HomeController(ILogger<HomeController> logger, WatcherDbContext dbContext)
{
_logger = logger;
_context = dbContext;
}
// Dashboard
public async Task<IActionResult> Index()
{
List<Server> servers = await _context.Servers.ToListAsync();
List<Container> containers = await _context.Containers.ToListAsync();
ViewBag.Containers = containers;
ViewBag.ContainerCount = containers.Count();
ViewBag.TotalServers = servers.Count;
ViewBag.OnlineServers = servers.Count(s => s.IsOnline);
ViewBag.OfflineServers = servers.Count(s => !s.IsOnline);
ViewBag.Servers = servers;
return View();
}
public IActionResult Privacy()
{
return View();
}
public IActionResult SystemInformation()
{
return View();
}
[ResponseCache(Duration = 0, Location = ResponseCacheLocation.None, NoStore = true)]
public IActionResult Error()
{
return View(new ErrorViewModel { RequestId = Activity.Current?.Id ?? HttpContext.TraceIdentifier });
}
}