using Microsoft.AspNetCore.Authorization;
using Microsoft.AspNetCore.Mvc;
using WeatherForecast.Models;
namespace WeatherForecast.Controllers;
///
///
///
[ApiController]
[AllowAnonymous]
[Route("api/[controller]")]
public class StaticContentController : ControllerBase {
private readonly ILogger _logger;
///
///
///
///
public StaticContentController(
ILogger logger
) {
_logger = logger;
}
///
///
///
///
[HttpGet]
public IActionResult Get([FromQuery] string? locale = "en-US") {
var routes = new List {
new RouteModel ("/", "Home"),
new RouteModel ("/home", "Home")
};
var shopRoute = new RouteModel("/shop",
new List {
new RouteModel ("", "ShopCatalog"),
new RouteModel (":page", "ShopCatalog"),
new RouteModel (":page", new List {
new RouteModel (":slug", "ShopItem")
})
});
var blogRoute = new RouteModel("/blog",
new List {
new RouteModel ("", "BlogCatalog"),
new RouteModel (":page", "BlogCatalog"),
new RouteModel (":page", new List {
new RouteModel (":slug", "BlogItem")
})
});
routes.Add(shopRoute);
routes.Add(blogRoute);
var demoRoutes = new List {
new RouteModel ("/counter", "Counter"),
new RouteModel ("/fetch-data", new List {
new RouteModel ("", "FetchData"),
new RouteModel (":startDateIndex", "FetchData")
})
};
routes = routes.Concat(demoRoutes).ToList();
var adminRoutes = new List {
new RouteModel ("/admin", "AdminHome")
};
var serviceRoutes = new List {
new RouteModel ("/signin", "Signin"),
new RouteModel ("/signup", "Signup"),
new RouteModel ("*", "Error")
};
var topMenu = new List {
new MenuItemModel ("Home", "/"),
new MenuItemModel ("Shop", "/shop"),
new MenuItemModel ("Blog", "/blog"),
new MenuItemModel ("Signin", "/signin"),
new MenuItemModel ("Sognout", "/signout")
};
var sideMenu = new List {
new MenuItemModel ("alert-triangle", "Home", "/admin"),
new MenuItemModel ("activity", "Page", new List {
new MenuItemModel ("activity", "Page-1", "Page-1"),
new MenuItemModel ("activity", "Page-2", "Page-2"),
new MenuItemModel ("activity", "Page-3", "Page-3")
}),
new MenuItemModel ("Counter", "/counter"),
new MenuItemModel ("Fetch data", "/fetch-data")
};
var blogItems = new List();
for (int i = 0; i < 3; i++) {
var blogItemModel = new BlogItemModel {
Id = Guid.NewGuid(),
Slug = "blog-post-title",
Image = new ImageModel { Src = "https://dummyimage.com/600x350/ced4da/6c757d", Alt = "..." },
Badge = "news",
Title = "Blog post title",
ShortText = "Lorem ipsum, dolor sit amet consectetur adipisicing elit. Eaque fugit ratione dicta mollitia. Officiis ad...",
Text = "",
Author = new AuthorModel {
Id = Guid.NewGuid(),
Image = new ImageModel { Src = "https://dummyimage.com/40x40/ced4da/6c757d", Alt = "..." },
NickName = "Admin"
},
Created = DateTime.UtcNow,
Tags = new List { "react", "redux", "webapi" },
ReadTime = 10,
Likes = 200,
};
blogItems.Add(blogItemModel);
}
var pages = new List