aboutsummaryrefslogtreecommitdiff
path: root/src/Costasdev.Busurbano.ServiceViewer/Controllers/StylesheetController.cs
diff options
context:
space:
mode:
authorAriel Costas Guerrero <ariel@costas.dev>2025-10-21 15:34:24 +0200
committerAriel Costas Guerrero <ariel@costas.dev>2025-12-12 10:24:53 +0100
commit661cccc2da9a6c32b7b56c60313787282a9084ea (patch)
tree8176720aa99b80281a8351ae74170238c50b59cc /src/Costasdev.Busurbano.ServiceViewer/Controllers/StylesheetController.cs
parented023a4b5ee257c0c367357b6d83f9778e2cf536 (diff)
Begin implementing
Diffstat (limited to 'src/Costasdev.Busurbano.ServiceViewer/Controllers/StylesheetController.cs')
-rw-r--r--src/Costasdev.Busurbano.ServiceViewer/Controllers/StylesheetController.cs39
1 files changed, 39 insertions, 0 deletions
diff --git a/src/Costasdev.Busurbano.ServiceViewer/Controllers/StylesheetController.cs b/src/Costasdev.Busurbano.ServiceViewer/Controllers/StylesheetController.cs
new file mode 100644
index 0000000..00654db
--- /dev/null
+++ b/src/Costasdev.Busurbano.ServiceViewer/Controllers/StylesheetController.cs
@@ -0,0 +1,39 @@
+using System.Text;
+using Costasdev.ServiceViewer.Data;
+using Microsoft.AspNetCore.Mvc;
+using Microsoft.EntityFrameworkCore;
+
+namespace Costasdev.ServiceViewer.Controllers;
+
+[Controller]
+[Route("")]
+public class StylesheetController : Controller
+{
+ private readonly AppDbContext _db;
+ public StylesheetController(AppDbContext db)
+ {
+ _db = db;
+ }
+
+ [HttpGet("stylesheets/routecolours.css")]
+ public IActionResult GetRouteColoursSheet()
+ {
+ var routeColours = _db.Routes
+ .Select(r => new { Id = r.SafeId, r.Color, r.TextColor })
+ .ToListAsync();
+
+ StringBuilder sb = new();
+ foreach (var route in routeColours.Result)
+ {
+ sb.Append($".route-{route.Id} {{");
+ sb.Append($"--route-color: #{route.Color};");
+ sb.Append($"--route-text: #{route.TextColor};");
+ sb.Append($"--route-color-semi: #{route.Color}4d;");
+ sb.Append($"--route-text-semi: #{route.TextColor}4d;");
+ sb.Append('}');
+ }
+ sb.Append('}');
+
+ return Content(sb.ToString(), "text/css", Encoding.UTF8);
+ }
+}