broke out a lot of base bits of the frame as configurable options

This commit is contained in:
2026-03-04 22:36:00 -07:00
parent 137536923d
commit 95aee6cf75
4 changed files with 44 additions and 26 deletions
+9 -2
View File
@@ -59,14 +59,21 @@ func (*AmCLI) Version() string {
// AmConfig holds the configuration of the application as read from YAML.
type AmConfig struct {
Site struct {
BaseURL string `yaml:"baseURL"`
Title string `yaml:"title"`
BaseURL string `yaml:"baseURL"`
Title string `yaml:"title"`
SiteIcon struct {
Path string `yaml:"path"`
Type string `yaml:"type"`
} `yaml:"siteIcon"`
SiteShortcutIcon string `yaml:"siteShortcutIcon"`
SiteLogo string `yaml:"siteLogo"`
TopRefresh int `yaml:"topRefresh"`
LoginCookieName string `yaml:"loginCookieName"`
LoginCookieAge int `yaml:"loginCookieAge"`
SessionExpire string `yaml:"sessionExpire"`
UserAgreementResource string `yaml:"userAgreementResource"`
PolicyResource string `yaml:"policyResource"`
FooterTemplate string `yaml:"footerTemplate"`
} `yaml:"site"`
Database struct {
Driver string `yaml:"driver"`
+6
View File
@@ -9,12 +9,18 @@
site:
baseURL: "http://localhost:1323"
title: "Amsterdam Web Communities System"
siteIcon:
path: "/img/builtin/AmsterdamIcon32.png"
type: "image/png"
siteShortcutIcon: "/img/builtin/AmsterdamIcon32.ico"
siteLogo: "/img/builtin/powered-by-amsterdam.png"
topRefresh: 300
loginCookieName: AmsterdamAuth
loginCookieAge: 365
sessionExpire: "3h"
userAgreementResource: "useragreement.html"
policyResource: "policy.html"
footerTemplate: "footer.jet"
database:
driver: "mysql"
dsn: "amsdb:x00yes2k@tcp(localhost)/amsterdam?parseTime=true&loc=UTC"
+24
View File
@@ -0,0 +1,24 @@
{*
* Amsterdam Web Communities System
* Copyright (c) 2025-2026 Erbosoft Metaverse Design Solutions, All Rights Reserved
*
* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at https://mozilla.org/MPL/2.0/.
*}
<div class="flex justify-center items-start gap-6">
<div class="text-right text-xs text-black leading-relaxed">
All trademarks and copyrights on this page are owned by their respective companies.<br>
All messages posted by users on this page are owned by those users.<br>
The rest: Copyright © {{ AmsterdamCopyright }}
<a href="https://www.erbosoft.com/" class="text-blue-700 hover:text-blue-900">Erbosoft Metaverse Design Solutions</a>,
All Rights Reserved.<br>
See our <a href="/policy" class="text-blue-700 hover:text-blue-900">Policy Page</a>
for our copyright and privacy policies.
</div>
<div class="flex-shrink-0">
<a href="https://git.erbosoft.com/amy/amsterdam" target="_blank">
<img src="/img/builtin/powered-by-amsterdam.png" alt="Powered By Amsterdam" class="w-32 h-26">
</a>
</div>
</div>
+5 -24
View File
@@ -1,6 +1,6 @@
{*
* Amsterdam Web Communities System
* Copyright (c) 2025 Erbosoft Metaverse Design Solutions, All Rights Reserved
* Copyright (c) 2025-2026 Erbosoft Metaverse Design Solutions, All Rights Reserved
*
* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
@@ -13,8 +13,8 @@
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>{{ .FrameTitle() | raw }} - {{ GlobalConfig.Site.Title }}</title>
<link rel="icon" href="/img/builtin/AmsterdamIcon32.png" type="image/png" />
<link rel="shortcut icon" href="/img/builtin/AmsterdamIcon32.ico" />
<link rel="icon" href="{{ GlobalConfig.Site.SiteIcon.Path }}" type="{{ GlobalConfig.Site.SiteIcon.Type }}" />
<link rel="shortcut icon" href="{{ GlobalConfig.Site.SiteShortcutIcon }}" />
{{ range k, v := .FrameMetadata(0) }}
<meta http-equiv="{{ k }}" content="{{ v }}">
{{ end }}
@@ -28,11 +28,7 @@
<div class="flex items-center justify-between px-2 py-2">
<!-- Site Logo -->
<div class="w-1/5">
<a href="/">
<img src="/img/builtin/powered-by-amsterdam.png"
alt="{{ GlobalConfig.Site.Title }}"
class="w-35 h-20 mx-2 my-2">
</a>
<a href="/"><img src="{{ GlobalConfig.Site.SiteLogo }}" alt="{{ GlobalConfig.Site.Title }}" class="w-35 h-20 mx-2 my-2"></a>
</div>
<!-- Navigation Links -->
@@ -117,22 +113,7 @@
<div class="w-48 bg-blue-400">&nbsp;</div>
<div class="flex-1 bg-white p-4">
<hr class="border-gray-400 w-4/5 mx-auto mb-4">
<div class="flex justify-center items-start gap-6">
<div class="text-right text-xs text-black leading-relaxed">
All trademarks and copyrights on this page are owned by their respective companies.<br>
All messages posted by users on this page are owned by those users.<br>
The rest: Copyright © {{ AmsterdamCopyright }}
<a href="https://www.erbosoft.com/" class="text-blue-700 hover:text-blue-900">Erbosoft Metaverse Design Solutions</a>,
All Rights Reserved.<br>
See our <a href="/TODO/policypage" class="text-blue-700 hover:text-blue-900">Policy Page</a>
for our copyright and privacy policies.
</div>
<div class="flex-shrink-0">
<a href="https://git.erbosoft.com/amy/amsterdam" target="_blank">
<img src="/img/builtin/powered-by-amsterdam.png" alt="Powered By Amsterdam" class="w-32 h-26">
</a>
</div>
</div>
{{ include GlobalConfig.Site.FooterTemplate }}
</div>
</div>
</body>