Add overview page
This commit is contained in:
@@ -25,8 +25,114 @@ namespace UCS_Status_Monitor.Controllers
|
||||
[HttpGet]
|
||||
public IActionResult Settings()
|
||||
{
|
||||
//IEnumerable<Models.UCSSystem> systems = dbContext.UCSSystems.Include(d => d.Devices).OrderBy(o => o.ComputerName);
|
||||
return View();
|
||||
}
|
||||
|
||||
[HttpGet]
|
||||
public IActionResult Overview(string sortOrder)
|
||||
{
|
||||
IEnumerable<Models.UCSSystem> systems = dbContext.UCSSystems.Include(d => d.Devices).OrderBy(o => o.ComputerName);
|
||||
|
||||
if (sortOrder != null)
|
||||
{
|
||||
switch (sortOrder)
|
||||
{
|
||||
case "system_asc":
|
||||
systems = systems.OrderBy(s => s.ComputerName);
|
||||
break;
|
||||
case "system_desc":
|
||||
systems = systems.OrderByDescending(s => s.ComputerName);
|
||||
break;
|
||||
|
||||
case "configfile_asc":
|
||||
systems = systems.OrderBy(s => s.ConfigFileName);
|
||||
break;
|
||||
case "configfile_desc":
|
||||
systems = systems.OrderByDescending(s => s.ConfigFileName);
|
||||
break;
|
||||
|
||||
case "uptime_asc":
|
||||
systems = systems.OrderBy(s => s.Uptime);
|
||||
break;
|
||||
case "uptime_desc":
|
||||
systems = systems.OrderByDescending(s => s.Uptime);
|
||||
break;
|
||||
|
||||
case "systemuptime_asc":
|
||||
systems = systems.OrderBy(s => s.SystemUptime);
|
||||
break;
|
||||
case "systemuptime_desc":
|
||||
systems = systems.OrderByDescending(s => s.SystemUptime);
|
||||
break;
|
||||
|
||||
case "ucsversion_asc":
|
||||
systems = systems.OrderBy(s => s.UCSVersion);
|
||||
break;
|
||||
case "ucsversion_desc":
|
||||
systems = systems.OrderByDescending(s => s.UCSVersion);
|
||||
break;
|
||||
|
||||
case "osversion_asc":
|
||||
systems = systems.OrderBy(s => s.OSVersion);
|
||||
break;
|
||||
case "osversion_desc":
|
||||
systems = systems.OrderByDescending(s => s.OSVersion);
|
||||
break;
|
||||
|
||||
case "dotnetversion_asc":
|
||||
systems = systems.OrderBy(s => s.DotNetVersion);
|
||||
break;
|
||||
case "dotnetversion_desc":
|
||||
systems = systems.OrderByDescending(s => s.DotNetVersion);
|
||||
break;
|
||||
|
||||
case "axisversion_asc":
|
||||
systems = systems.OrderBy(s => s.AxisVersion);
|
||||
break;
|
||||
case "axisversion_desc":
|
||||
systems = systems.OrderByDescending(s => s.AxisVersion);
|
||||
break;
|
||||
|
||||
case "boschversion_asc":
|
||||
systems = systems.OrderBy(s => s.BoschVersion);
|
||||
break;
|
||||
case "boschversion_desc":
|
||||
systems = systems.OrderByDescending(s => s.BoschVersion);
|
||||
break;
|
||||
|
||||
case "vlcversion_asc":
|
||||
systems = systems.OrderBy(s => s.VLCVersion);
|
||||
break;
|
||||
case "vlcversion_desc":
|
||||
systems = systems.OrderByDescending(s => s.VLCVersion);
|
||||
break;
|
||||
|
||||
default:
|
||||
systems = systems.OrderBy(s => s.UCSSystemId);
|
||||
break;
|
||||
}
|
||||
}
|
||||
return View(systems);
|
||||
}
|
||||
|
||||
[HttpGet]
|
||||
public IActionResult Delete(int? id)
|
||||
{
|
||||
if (id == null)
|
||||
{
|
||||
return BadRequest("No id to delete");
|
||||
}
|
||||
var system = dbContext.UCSSystems.Where(i => i.UCSSystemId == id).Include(d => d.Devices).SingleOrDefault();
|
||||
if (system == null)
|
||||
{
|
||||
return BadRequest("Not found in the database");
|
||||
}
|
||||
|
||||
dbContext.UCSDevices.RemoveRange(system.Devices);
|
||||
dbContext.UCSSystems.Remove(system);
|
||||
dbContext.SaveChanges();
|
||||
|
||||
return RedirectToAction("Overview", "Home");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -62,6 +62,7 @@ namespace UCS_Status_Monitor.Controllers
|
||||
StartTime = telemetry.StartTime != null ? DateTime.Parse(telemetry.StartTime) : DateTime.MinValue,
|
||||
LastMessageClient = telemetry.Date != null ? DateTime.Parse(telemetry.StartTime) : DateTime.MinValue,
|
||||
Uptime = telemetry.Uptime ?? "??",
|
||||
SystemUptime = telemetry.SystemUptime ?? "??",
|
||||
OSVersion = telemetry.OSVersion ?? "??",
|
||||
DotNetVersion = telemetry.DotNetVersion ?? "??"
|
||||
};
|
||||
@@ -91,6 +92,7 @@ namespace UCS_Status_Monitor.Controllers
|
||||
system.LastMessageClient = telemetry.Date != null ? DateTime.Parse(telemetry.StartTime) : DateTime.MinValue;
|
||||
system.ConfigFileName = telemetry.ConfigFileName ?? "??";
|
||||
system.Uptime = telemetry.Uptime ?? "??";
|
||||
system.SystemUptime = telemetry.SystemUptime ?? "??";
|
||||
system.OSVersion = telemetry.OSVersion ?? "??";
|
||||
system.DotNetVersion = telemetry.DotNetVersion ?? "??";
|
||||
if (telemetry.SoftwareVersion == null)
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
using System.ComponentModel.DataAnnotations.Schema;
|
||||
using System.Linq;
|
||||
using System.Threading.Tasks;
|
||||
@@ -7,20 +8,47 @@ using System.Threading.Tasks;
|
||||
namespace UCS_Status_Monitor.Models
|
||||
{
|
||||
public class UCSSystem
|
||||
{
|
||||
{
|
||||
public int UCSSystemId { get; set; }
|
||||
public Boolean ConnectionState { get; set; }
|
||||
|
||||
[Display(Name = "System")]
|
||||
public string ComputerName { get; set; }
|
||||
|
||||
[Display(Name = "UCS start date")]
|
||||
public DateTime StartTime { get; set; }
|
||||
|
||||
[Display(Name = "Last status date")]
|
||||
public DateTime LastMessageTime { get; set; }
|
||||
|
||||
[Display(Name = "OS Version")]
|
||||
public DateTime LastMessageClient { get; set; }
|
||||
|
||||
[Display(Name = "UCS uptime")]
|
||||
public string Uptime { get; set; }
|
||||
|
||||
[Display(Name = "System uptime")]
|
||||
public string SystemUptime { get; set; }
|
||||
|
||||
[Display(Name = "Configfile")]
|
||||
public string ConfigFileName { get; set; }
|
||||
|
||||
[Display(Name = "UCS Version")]
|
||||
public string UCSVersion { get; set; }
|
||||
|
||||
[Display(Name = "Axis Version")]
|
||||
public string AxisVersion { get; set; }
|
||||
|
||||
[Display(Name = "Bosch Version")]
|
||||
public string BoschVersion { get; set; }
|
||||
|
||||
[Display(Name = "VLC Version")]
|
||||
public string VLCVersion { get; set; }
|
||||
|
||||
[Display(Name = "OS Version")]
|
||||
public string OSVersion { get; set; }
|
||||
|
||||
[Display(Name = ".Net Version")]
|
||||
public string DotNetVersion { get; set; }
|
||||
|
||||
public virtual List<UCSDevice> Devices { get; set; }
|
||||
|
||||
@@ -10,6 +10,7 @@ namespace UCS_Status_Monitor.Models
|
||||
public String Date { get; set; }
|
||||
public String StartTime { get; set; }
|
||||
public String Uptime { get; set; }
|
||||
public String SystemUptime { get; set; }
|
||||
public String ComputerName { get; set; }
|
||||
public String ConfigFileName { get; set; }
|
||||
public UCSVersion SoftwareVersion { get; set; }
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
using Microsoft.Extensions.Hosting;
|
||||
using Microsoft.Extensions.Configuration;
|
||||
using Microsoft.Extensions.Hosting;
|
||||
using Microsoft.Extensions.Logging;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
@@ -13,24 +14,14 @@ namespace UCS_Status_Monitor
|
||||
public class MonitorWorker : BackgroundService
|
||||
{
|
||||
private readonly ILogger<MonitorWorker> _logger;
|
||||
private readonly IConfiguration _configuration;
|
||||
|
||||
public MonitorWorker(ILogger<MonitorWorker> logger)
|
||||
public MonitorWorker(ILogger<MonitorWorker> logger, IConfiguration configuration)
|
||||
{
|
||||
_logger = logger;
|
||||
_configuration = configuration;
|
||||
}
|
||||
|
||||
//public override async Task StartAsync(CancellationToken stoppingToken)
|
||||
//{
|
||||
// Debug.WriteLine("StartAsync");
|
||||
// using var dbContext = new MonitorDbContext();
|
||||
// dbContext.Database.EnsureCreated();
|
||||
//}
|
||||
|
||||
//public override async Task StopAsync(CancellationToken stoppingToken)
|
||||
//{
|
||||
// Debug.WriteLine("StopAsync");
|
||||
//}
|
||||
|
||||
protected override async Task ExecuteAsync(CancellationToken stoppingToken)
|
||||
{
|
||||
using var dbContext = new MonitorDbContext();
|
||||
@@ -40,6 +31,7 @@ namespace UCS_Status_Monitor
|
||||
{
|
||||
//_logger.LogInformation("Worker running at: {time}", DateTimeOffset.Now);
|
||||
Debug.WriteLine($"Worker running at: {DateTimeOffset.Now}");
|
||||
//Debug.WriteLine($"Time out (min): {_configuration["TimeOutMinutes"]}");
|
||||
|
||||
foreach (var system in dbContext.UCSSystems)
|
||||
{
|
||||
@@ -48,7 +40,7 @@ namespace UCS_Status_Monitor
|
||||
continue;
|
||||
}
|
||||
var minutes = (DateTime.Now - system.LastMessageTime).Minutes;
|
||||
if (minutes > 35)
|
||||
if (minutes > _configuration.GetValue<int>("TimeOutMinutes", 35))
|
||||
{
|
||||
system.ConnectionState = false;
|
||||
dbContext.Update(system);
|
||||
@@ -56,7 +48,7 @@ namespace UCS_Status_Monitor
|
||||
}
|
||||
dbContext.SaveChanges();
|
||||
|
||||
await Task.Delay(60000, stoppingToken);
|
||||
await Task.Delay(10000, stoppingToken);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -1,30 +1,14 @@
|
||||
@model IEnumerable<UCS_Status_Monitor.Models.UCSSystem>
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<title>UCS Status Monitor</title>
|
||||
<meta charset="utf-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
@*<link rel="stylesheet" href="~/css/bootstrap.min.css">*@
|
||||
<link rel="stylesheet" href="~/css/darkly/bootstrap.min.css">
|
||||
@*<link rel="stylesheet" href="~/css/Custom.css">*@
|
||||
<script src="~/js/jquery.min.js"></script>
|
||||
<script src="~/js/bootstrap.min.js"></script>
|
||||
</head>
|
||||
<body>
|
||||
<div class="container">
|
||||
<h1>UCS Status Monitor</h1>
|
||||
@Html.ActionLink("Settings", "Settings", "Home")
|
||||
</div>
|
||||
@{
|
||||
Layout = "_Layout";
|
||||
}
|
||||
|
||||
@*<div class="container">*@
|
||||
<div class="container-fluid">
|
||||
<div class="row">
|
||||
|
||||
@foreach (var system in Model)
|
||||
{
|
||||
|
||||
<div class="col">
|
||||
<div class="card @(system.ConnectionState == true ? "bg-success" : "bg-danger")" style="width: 18rem;">
|
||||
<div class="col mb-4">
|
||||
<div class="card @(system.ConnectionState == true ? "bg-success" : "bg-danger") rounded" style="width: 18rem;">
|
||||
<div class="card-body">
|
||||
<h5 class="card-title">@system.ComputerName</h5>
|
||||
<p class="card-text">@system.UCSVersion</p>
|
||||
@@ -37,53 +21,6 @@
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!--<div class="col">
|
||||
<div class="alert alert-danger" role="alert">
|
||||
@system.ComputerName
|
||||
</div>
|
||||
</div>
|
||||
<div class="col">
|
||||
<div class="alert alert-danger" role="alert">
|
||||
@system.ComputerName
|
||||
</div>
|
||||
</div>
|
||||
<div class="col">
|
||||
<div class="alert alert-danger" role="alert">
|
||||
@system.ComputerName
|
||||
</div>
|
||||
</div>
|
||||
<div class="col">
|
||||
<div class="alert alert-danger" role="alert">
|
||||
@system.ComputerName
|
||||
</div>
|
||||
</div>-->
|
||||
@*<div class="w-100"></div>*@
|
||||
<!--<div class="col">
|
||||
<div class="alert alert-danger" role="alert">
|
||||
@system.ComputerName
|
||||
</div>
|
||||
</div>
|
||||
<div class="col">
|
||||
<div class="alert alert-danger" role="alert">
|
||||
@system.ComputerName
|
||||
</div>
|
||||
</div>
|
||||
<div class="col">
|
||||
<div class="alert alert-danger" role="alert">
|
||||
@system.ComputerName
|
||||
</div>
|
||||
</div>
|
||||
<div class="col">
|
||||
<div class="alert alert-danger" role="alert">
|
||||
@system.ComputerName
|
||||
</div>
|
||||
</div>
|
||||
<div class="col">
|
||||
<div class="alert alert-danger" role="alert">
|
||||
@system.ComputerName
|
||||
</div>
|
||||
</div>-->
|
||||
|
||||
|
||||
<!-- Device Modal -->
|
||||
<div class="modal fade" id="@("DeviceModal" + system.UCSSystemId)" tabindex="-1" role="dialog" aria-labelledby="exampleModalLabel" aria-hidden="true">
|
||||
@@ -146,6 +83,10 @@
|
||||
<td>Up Time</td>
|
||||
<td>@system.Uptime</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>System Up Time</td>
|
||||
<td>@system.SystemUptime</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Last Message Time</td>
|
||||
<td>@system.LastMessageTime</td>
|
||||
@@ -188,9 +129,5 @@
|
||||
</div>
|
||||
</div>
|
||||
}
|
||||
|
||||
</div>
|
||||
@*</div>*@
|
||||
|
||||
</body>
|
||||
</html>
|
||||
</div>
|
||||
127
UCS_Status_Monitor/Views/Home/Overview.cshtml
Normal file
127
UCS_Status_Monitor/Views/Home/Overview.cshtml
Normal file
@@ -0,0 +1,127 @@
|
||||
@model IEnumerable<UCS_Status_Monitor.Models.UCSSystem>
|
||||
@{
|
||||
Layout = "_Layout";
|
||||
}
|
||||
|
||||
<table class="table table-hover">
|
||||
<thead>
|
||||
<tr>
|
||||
<th></th>
|
||||
<th>
|
||||
@Html.DisplayNameFor(model => model.ComputerName)
|
||||
<a href="@Url.Action(null,"Home", new { sortOrder = "system_desc" })">
|
||||
<i class="bi-caret-up"></i>
|
||||
</a>
|
||||
<a href="@Url.Action(null,"Home", new { sortOrder = "system_asc" })">
|
||||
<i class="bi-caret-down"></i>
|
||||
</a>
|
||||
</th>
|
||||
<th>
|
||||
@Html.DisplayNameFor(model => model.ConfigFileName)
|
||||
<a href="@Url.Action(null,"Home", new { sortOrder = "configfile_desc" })">
|
||||
<i class="bi-caret-up"></i>
|
||||
</a>
|
||||
<a href="@Url.Action(null,"Home", new { sortOrder = "configfile_asc" })">
|
||||
<i class="bi-caret-down"></i>
|
||||
</a>
|
||||
</th>
|
||||
<th>
|
||||
@Html.DisplayNameFor(model => model.Uptime)
|
||||
<a href="@Url.Action(null,"Home", new { sortOrder = "uptime_desc" })">
|
||||
<i class="bi-caret-up"></i>
|
||||
</a>
|
||||
<a href="@Url.Action(null,"Home", new { sortOrder = "uptime_asc" })">
|
||||
<i class="bi-caret-down"></i>
|
||||
</a>
|
||||
</th>
|
||||
<th>
|
||||
@Html.DisplayNameFor(model => model.SystemUptime)
|
||||
<a href="@Url.Action(null,"Home", new { sortOrder = "systemuptime_desc" })">
|
||||
<i class="bi-caret-up"></i>
|
||||
</a>
|
||||
<a href="@Url.Action(null,"Home", new { sortOrder = "systemuptime_asc" })">
|
||||
<i class="bi-caret-down"></i>
|
||||
</a>
|
||||
</th>
|
||||
<th>
|
||||
@Html.DisplayNameFor(model => model.UCSVersion)
|
||||
<a href="@Url.Action(null,"Home", new { sortOrder = "ucsversion_desc" })">
|
||||
<i class="bi-caret-up"></i>
|
||||
</a>
|
||||
<a href="@Url.Action(null,"Home", new { sortOrder = "ucsversion_asc" })">
|
||||
<i class="bi-caret-down"></i>
|
||||
</a>
|
||||
</th>
|
||||
<th>
|
||||
@Html.DisplayNameFor(model => model.OSVersion)
|
||||
<a href="@Url.Action(null,"Home", new { sortOrder = "osversion_desc" })">
|
||||
<i class="bi-caret-up"></i>
|
||||
</a>
|
||||
<a href="@Url.Action(null,"Home", new { sortOrder = "osversion_asc" })">
|
||||
<i class="bi-caret-down"></i>
|
||||
</a>
|
||||
</th>
|
||||
<th>
|
||||
@Html.DisplayNameFor(model => model.DotNetVersion)
|
||||
<a href="@Url.Action(null,"Home", new { sortOrder = "dotnetversion_desc" })">
|
||||
<i class="bi-caret-up"></i>
|
||||
</a>
|
||||
<a href="@Url.Action(null,"Home", new { sortOrder = "dotnetversion_asc" })">
|
||||
<i class="bi-caret-down"></i>
|
||||
</a>
|
||||
</th>
|
||||
<th>
|
||||
@Html.DisplayNameFor(model => model.AxisVersion)
|
||||
<a href="@Url.Action(null,"Home", new { sortOrder = "axisversion_desc" })">
|
||||
<i class="bi-caret-up"></i>
|
||||
</a>
|
||||
<a href="@Url.Action(null,"Home", new { sortOrder = "axisversion_asc" })">
|
||||
<i class="bi-caret-down"></i>
|
||||
</a>
|
||||
</th>
|
||||
<th>
|
||||
@Html.DisplayNameFor(model => model.BoschVersion)
|
||||
<a href="@Url.Action(null,"Home", new { sortOrder = "boschversion_desc" })">
|
||||
<i class="bi-caret-up"></i>
|
||||
</a>
|
||||
<a href="@Url.Action(null,"Home", new { sortOrder = "boschversion_asc" })">
|
||||
<i class="bi-caret-down"></i>
|
||||
</a>
|
||||
</th>
|
||||
<th>
|
||||
@Html.DisplayNameFor(model => model.VLCVersion)
|
||||
<a href="@Url.Action(null,"Home", new { sortOrder = "vlcversion_desc" })">
|
||||
<i class="bi-caret-up"></i>
|
||||
</a>
|
||||
<a href="@Url.Action(null,"Home", new { sortOrder = "vlcversion_asc" })">
|
||||
<i class="bi-caret-down"></i>
|
||||
</a>
|
||||
</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
@foreach (var system in Model)
|
||||
{
|
||||
<tr class="@(system.ConnectionState == true ? "table-success" : "table-danger") ">
|
||||
|
||||
<td>
|
||||
<a href="@Url.Action("Delete","Home", new { id = system.UCSSystemId })">
|
||||
<i class="bi-trash" style="color: black;"></i>
|
||||
</a>
|
||||
</td>
|
||||
<td>@system.ComputerName</td>
|
||||
<td>@system.ConfigFileName</td>
|
||||
<td>@system.Uptime</td>
|
||||
<td>@system.SystemUptime</td>
|
||||
<td>@system.UCSVersion</td>
|
||||
<td>@system.OSVersion</td>
|
||||
<td>@system.DotNetVersion</td>
|
||||
<td>@system.AxisVersion</td>
|
||||
<td>@system.BoschVersion</td>
|
||||
<td>@system.VLCVersion</td>
|
||||
</tr>
|
||||
}
|
||||
</tbody>
|
||||
</table>
|
||||
@*</body>
|
||||
</html>*@
|
||||
@@ -1,22 +1,9 @@
|
||||
@*@model IEnumerable<UCS_Status_Monitor.Models.UCSSystem>*@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<title>UCS Status Monitor</title>
|
||||
<meta charset="utf-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
@*<link rel="stylesheet" href="~/css/bootstrap.min.css">*@
|
||||
<link rel="stylesheet" href="~/css/darkly/bootstrap.min.css">
|
||||
@*<link rel="stylesheet" href="~/css/Custom.css">*@
|
||||
<script src="~/js/jquery.min.js"></script>
|
||||
<script src="~/js/bootstrap.min.js"></script>
|
||||
</head>
|
||||
<body>
|
||||
<div class="container">
|
||||
<h1>UCS Status Monitor settings</h1>
|
||||
</div>
|
||||
@{
|
||||
Layout = "_Layout";
|
||||
}
|
||||
|
||||
|
||||
<div class="container-fluid">
|
||||
|
||||
</body>
|
||||
</html>
|
||||
|
||||
</div>
|
||||
37
UCS_Status_Monitor/Views/Shared/_Layout.cshtml
Normal file
37
UCS_Status_Monitor/Views/Shared/_Layout.cshtml
Normal file
@@ -0,0 +1,37 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<title>UCS Status Monitor</title>
|
||||
<meta charset="utf-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
<link rel="stylesheet" href="~/css/darkly/bootstrap.min.css">
|
||||
<link rel="stylesheet" href="~/css/bootstrap-icons.css">
|
||||
<script src="~/js/jquery.min.js"></script>
|
||||
<script src="~/js/bootstrap.min.js"></script>
|
||||
</head>
|
||||
<body>
|
||||
<nav class="navbar navbar-expand-lg navbar-dark bg-dark mb-4">
|
||||
<div class="container-fluid">
|
||||
<a class="navbar-brand" href="#">UCS Status Monitor</a>
|
||||
<button class="navbar-toggler" type="button" data-bs-toggle="collapse" data-bs-target="#navbarNav" aria-controls="navbarNav" aria-expanded="false" aria-label="Toggle navigation">
|
||||
<span class="navbar-toggler-icon"></span>
|
||||
</button>
|
||||
<div class="collapse navbar-collapse" id="navbarNav">
|
||||
<ul class="navbar-nav">
|
||||
<li class="nav-item">
|
||||
@Html.ActionLink("Home", "Index", "Home", null, new { @class = "nav-link" })
|
||||
</li>
|
||||
<li class="nav-item">
|
||||
@Html.ActionLink("Overview", "Overview", "Home", null, new { @class = "nav-link" })
|
||||
</li>
|
||||
<li class="nav-item">
|
||||
@Html.ActionLink("Settings", "Settings", "Home", null, new { @class = "nav-link" })
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</nav>
|
||||
|
||||
@RenderBody()
|
||||
</body>
|
||||
</html>
|
||||
@@ -6,5 +6,6 @@
|
||||
"Microsoft.Hosting.Lifetime": "Information"
|
||||
}
|
||||
},
|
||||
"AllowedHosts": "*"
|
||||
"AllowedHosts": "*",
|
||||
"TimeOutMinutes": 35
|
||||
}
|
||||
|
||||
@@ -1,3 +0,0 @@
|
||||
html body {
|
||||
background-color: rgba(0,0,0,1.00);
|
||||
}
|
||||
1221
UCS_Status_Monitor/wwwroot/css/bootstrap-icons.css
vendored
Normal file
1221
UCS_Status_Monitor/wwwroot/css/bootstrap-icons.css
vendored
Normal file
File diff suppressed because it is too large
Load Diff
BIN
UCS_Status_Monitor/wwwroot/css/fonts/bootstrap-icons.woff
Normal file
BIN
UCS_Status_Monitor/wwwroot/css/fonts/bootstrap-icons.woff
Normal file
Binary file not shown.
BIN
UCS_Status_Monitor/wwwroot/css/fonts/bootstrap-icons.woff2
Normal file
BIN
UCS_Status_Monitor/wwwroot/css/fonts/bootstrap-icons.woff2
Normal file
Binary file not shown.
Reference in New Issue
Block a user