This commit is contained in:
2018-12-18 00:19:05 +00:00
parent c2fd0918df
commit 2dd1271cce

View File

@@ -3,6 +3,7 @@ using Microsoft.Extensions.Logging;
using System; using System;
using AyaNova.Util; using AyaNova.Util;
using AyaNova.Biz; using AyaNova.Biz;
using AyaNova.Api.ControllerHelpers;
namespace AyaNova.Api.Controllers namespace AyaNova.Api.Controllers
{ {
@@ -13,16 +14,18 @@ namespace AyaNova.Api.Controllers
[Route("api/v{version:apiVersion}/")] [Route("api/v{version:apiVersion}/")]
public class ApiMetaController : Controller public class ApiMetaController : Controller
{ {
private readonly ApiServerState serverState;
private readonly ILogger<ApiMetaController> _log; private readonly ILogger<ApiMetaController> _log;
/// <summary> /// <summary>
/// ///
/// </summary> /// </summary>
/// <param name="logger"></param> /// <param name="logger"></param>
public ApiMetaController(ILogger<ApiMetaController> logger) /// <param name="apiServerState"></param>
public ApiMetaController(ILogger<ApiMetaController> logger, ApiServerState apiServerState)
{ {
_log = logger; _log = logger;
serverState = apiServerState;
} }
/// <summary> /// <summary>
@@ -32,15 +35,21 @@ namespace AyaNova.Api.Controllers
[HttpGet] [HttpGet]
public ContentResult Index() public ContentResult Index()
{ {
var errorBlock = string.Empty;
if (serverState.IsSystemLocked){
errorBlock=$@"<div style=""color: #D8000C;background-color: #FFD2D2""><h2>SERVER ERROR</h2><p>{serverState.Reason}</p></div>";
}
var resp = $@"<html lang=""en""> var resp = $@"<html lang=""en"">
<head> <head>
<meta charset=""utf-8""> <meta charset=""utf-8"">
<meta name=""viewport"" content=""width=device-width, initial-scale=1, shrink-to-fit=no""> <meta name=""viewport"" content=""width=device-width, initial-scale=1, shrink-to-fit=no"">
<title>AyaNova server</title> <title>AyaNova server</title>
</head> </head>
<body > <body >
<div style=""text-align: center;""> <div style=""text-align: center;"">
{errorBlock}
<div style=""display: inline-block;text-align:left;""> <div style=""display: inline-block;text-align:left;"">
<h1>{AyaNovaVersion.FullNameAndVersion}</h1> <h1>{AyaNovaVersion.FullNameAndVersion}</h1>
<a href=""/"" target=""_blank"">AyaNova App</a><br/><br/> <a href=""/"" target=""_blank"">AyaNova App</a><br/><br/>
@@ -58,7 +67,7 @@ namespace AyaNova.Api.Controllers
<pre>{TimeZoneInfo.Local.Id}</pre> <pre>{TimeZoneInfo.Local.Id}</pre>
<h4>Server logs</h4> <h4>Server logs</h4>
<pre>{ServerBootConfig.AYANOVA_LOG_PATH}</pre> <pre>{ServerBootConfig.AYANOVA_LOG_PATH}</pre>
</div> </div>
</div> </div>
</body> </body>
</html>"; </html>";