diff --git a/zero.Core/Paths.cs b/zero.Core/Paths.cs
index 116e8681..7d6a350f 100644
--- a/zero.Core/Paths.cs
+++ b/zero.Core/Paths.cs
@@ -1,4 +1,5 @@
-using System;
+using Microsoft.AspNetCore.Hosting;
+using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
@@ -8,10 +9,14 @@ namespace zero.Core
{
public class Paths : IPaths
{
- public string Root { get; set; }
+ public string WebRoot { get; set; }
+
+ public string ContentRoot { get; set; }
public string Media { get; set; }
+ protected IWebHostEnvironment Env { get; set; }
+
private bool IsDebug { get; set; }
public const string MEDIA_FOLDER = "Uploads";
@@ -29,11 +34,13 @@ namespace zero.Core
};
- public Paths(string root, bool isDebug)
+ public Paths(IWebHostEnvironment env, bool isDebug)
{
+ Env = env;
IsDebug = isDebug;
- Root = root;
- Media = Path.Combine(root, MEDIA_FOLDER);
+ WebRoot = env.WebRootPath;
+ ContentRoot = env.ContentRootPath;
+ Media = Path.Combine(WebRoot, MEDIA_FOLDER);
}
@@ -42,7 +49,7 @@ namespace zero.Core
///
public string Map(string path)
{
- return Path.Combine(Root, path);
+ return Path.Combine(WebRoot, path);
}
///
@@ -50,7 +57,7 @@ namespace zero.Core
///
public string Map(params string[] paths)
{
- return Path.Combine(Root, Path.Combine(paths));
+ return Path.Combine(WebRoot, Path.Combine(paths));
}
@@ -116,7 +123,9 @@ namespace zero.Core
public interface IPaths
{
- string Root { get; set; }
+ string ContentRoot { get; set; }
+
+ string WebRoot { get; set; }
string Media { get; set; }
diff --git a/zero.Web.UI/App/components/tables/table.scss b/zero.Web.UI/App/components/tables/table.scss
index 7eabba27..eb2acd1b 100644
--- a/zero.Web.UI/App/components/tables/table.scss
+++ b/zero.Web.UI/App/components/tables/table.scss
@@ -249,7 +249,7 @@ a.ui-table-row:hover, button.ui-table-row:hover
.ui-table-cell .-minor
{
- color: var(--color-text-dim-one);
+ color: var(--color-text-dim);
font-weight: 400;
font-size: var(--font-size-xs);
}
diff --git a/zero.Web/Controllers/MediaController.cs b/zero.Web/Controllers/MediaController.cs
index 3d61e1d0..fb9fee98 100644
--- a/zero.Web/Controllers/MediaController.cs
+++ b/zero.Web/Controllers/MediaController.cs
@@ -97,7 +97,7 @@ namespace zero.Web.Controllers
return File(content, contentType, DateTimeOffset.Now, EntityTagHeaderValue.Any);
}
- string fullPath = Path.Combine(Paths.Root, path?.Trim('/') ?? String.Empty);
+ string fullPath = Path.Combine(Paths.WebRoot, path?.Trim('/') ?? String.Empty);
if (path == null || !System.IO.File.Exists(fullPath))
{
diff --git a/zero.Web/ZeroBuilder.cs b/zero.Web/ZeroBuilder.cs
index 2433ea7a..42089ec7 100644
--- a/zero.Web/ZeroBuilder.cs
+++ b/zero.Web/ZeroBuilder.cs
@@ -118,11 +118,7 @@ namespace zero.Web
Services.AddHttpContextAccessor();
Services.AddTransient();
- Services.AddTransient(factory =>
- {
- IWebHostEnvironment env = factory.GetService();
- return new Paths(env.WebRootPath, true);
- });
+ Services.AddScoped(factory => new Paths(factory.GetService(), true));
Services.AddTransient();