summaryrefslogtreecommitdiff
path: root/SovereignDemesneAzure/SovereignDemesneRazor/Pages/Index.cshtml.cs
blob: d4513f406ad186eefe60c0861d3689625bdc79f2 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
using Microsoft.AspNetCore.Mvc.RazorPages;

namespace SovereignDemesneRazor.Pages;

public sealed class IndexModel : PageModel
{
    private readonly ILogger<IndexModel> _logger;

    public record LinkItem(string Text, string Url, string? Description = null);
    public record LinkSection(string Title, IReadOnlyList<LinkItem> Links);

    public IReadOnlyList<LinkSection> Sections { get; private set; } = default!;
    public LinkSection LargeSection { get; private set; } = default!;

    public IndexModel(ILogger<IndexModel> logger)
    {
        _logger = logger;
    }

    public void OnGet()
    {
        Sections =
        [
            new LinkSection("Content",
            [
                new LinkItem("Code", "https://git.dwalker.xyz"),
                new LinkItem("Web Feed", "https://rss.dwalker.xyz"),
                new LinkItem("RSS Bridge", "https://bridge.dwalker.xyz"),
                new LinkItem("Budget", "https://budget.dwalker.xyz"),
                new LinkItem("FoundryVTT", "https://foundry.dwalker.xyz"),
                new LinkItem("Static Website", "https://dwalker.xyz"),
            ]),
            new LinkSection("Links",
            [
                new LinkItem("Build your own Website", "https://landchad.net"),
                new LinkItem("Grand Sumo", "https://www.sumo.or.jp/En/"),
                new LinkItem("Suckless Software", "https://suckless.org"),
                new LinkItem("Weather", "https://wttr.in"),
                new LinkItem("1MB Club", "https://1mb.club"),
                new LinkItem("Translations", "https://simplytranslate.org"),
                new LinkItem("Homesteader's Chronicle", "https://thehomesteaderschronicle.com/"),
                new LinkItem("Luke Smith", "https://lukesmith.xyz"),
            ]),
        ];
        LargeSection = new LinkSection("Local Goods & Services",
        [
            new LinkItem("Brown's Orchard", "https://brownsorchards.com"),
            new LinkItem("Godfrey Brothers Meats", "https://godfreymeats.com"),
            new LinkItem("Hiwwe wie Driwwe", "https://hiwwe-wie-driwwe.com/"),
            new LinkItem("Maple Lawn Farms", "https://maplelawnfarms.com/"),
            new LinkItem("Miller Plant Farm", "https://millerplantfarm.com"),
            new LinkItem("Christmastime in Loganville", "https://christmastimeinloganville.com"),
            new LinkItem("Perrydell Dairy Farm", "https://perrydellfarm.com"),
            new LinkItem("Roburritos", "https://roburritos.com"),
            new LinkItem("Shaw Orchards", "http://shaworchards.com"),
            new LinkItem("Sonnewald Natural Goods", "https://sonnewald.org"),
            new LinkItem("Jeff's Subs", "https://jeffssubs.com"),
            new LinkItem("Flinchbaugh's Farm Market", "https://flinchbaughsorchard.com"),
            new LinkItem("Adventurer's Academy", "https://theadventurersacademy.com/"),
            new LinkItem("Comics Closet", "https://www.thecomicscloset.com/"),
        ]);
    }
}