Compare commits

..

3 Commits

Author SHA1 Message Date
470624552d login pages for certain apps 2024-06-28 09:23:38 -06:00
02181e53e1 app links in alpha order 2024-06-28 09:09:41 -06:00
002800d381 App Links Open in New Window 2024-06-28 08:59:05 -06:00
6 changed files with 31 additions and 11 deletions

View File

@ -1,5 +1,10 @@
package main package main
import (
"slices"
"strings"
)
type AppLink struct { type AppLink struct {
Title string Title string
Url string Url string
@ -8,24 +13,34 @@ type AppLink struct {
} }
func getAppLinks(tier, baseUri string) []AppLink { func getAppLinks(tier, baseUri string) []AppLink {
var output []AppLink
//Get Links Based on Tier
if tier == "enterprise" { if tier == "enterprise" {
return getEnterpriseLinks(baseUri) output = getEnterpriseLinks(baseUri)
} else if tier == "creator" { } else if tier == "creator" {
return getCreatorLinks(baseUri) output = getCreatorLinks(baseUri)
} else if tier == "teams" { } else if tier == "teams" {
return getTeamsLinks(baseUri) output = getTeamsLinks(baseUri)
} else {
output = getStarterLinks(baseUri)
} }
return getStarterLinks(baseUri) //Sort in alphabetical order
slices.SortFunc(output, func(a, b AppLink) int {
return strings.Compare(a.Title, b.Title)
})
return output
} }
func getStarterLinks(baseUri string) []AppLink { func getStarterLinks(baseUri string) []AppLink {
return []AppLink { return []AppLink {
{ {
Title: "User Management", Title: "User Management",
Description: "Create users and manage their access", Description: "Create and Manage Users",
Image: "/static/img/users.png", Image: "/static/img/users.png",
Url: "https://panel." + baseUri, Url: "https://panel." + baseUri + "/log_in/",
}, },
{ {
Title: "Nextcloud", Title: "Nextcloud",
@ -60,7 +75,7 @@ func getCreatorLinks(baseUri string) []AppLink {
Title: "Wordpress", Title: "Wordpress",
Description: "Your website", Description: "Your website",
Image: "/static/img/wordpress.png", Image: "/static/img/wordpress.png",
Url: "https://" + baseUri, Url: "https://" + baseUri + "/wp-admin",
}, },
} }
@ -122,7 +137,7 @@ func getEnterpriseLinks(baseUri string) []AppLink {
Title: "Castopod", Title: "Castopod",
Description: "Podcast Distribution", Description: "Podcast Distribution",
Image: "/static/img/castopod.png", Image: "/static/img/castopod.png",
Url: "https://castopod." + baseUri, Url: "https://castopod." + baseUri + "/cp-auth/login",
}, },
} }

View File

@ -5,8 +5,10 @@ import (
) )
func (app *application) home(writer http.ResponseWriter, request *http.Request) { func (app *application) home(writer http.ResponseWriter, request *http.Request) {
appLinks := getAppLinks(app.tier, app.host)
data := templateData{ data := templateData{
AppLinks: getAppLinks(app.tier, app.host), AppLinks: appLinks,
Tier: app.tier, Tier: app.tier,
BaseUri: app.host, BaseUri: app.host,
} }

View File

@ -19,6 +19,7 @@
{{template "main" .}} {{template "main" .}}
</main> </main>
<footer class="footer main-grid"> <footer class="footer main-grid">
<img class="footer__kitty" src="/static/img/kitty.png" alt="">
<p class="footer__excerpt">Powered by <a href="https://www.federated.computer">Federated Computer</a></p> <p class="footer__excerpt">Powered by <a href="https://www.federated.computer">Federated Computer</a></p>
</footer> </footer>
</body> </body>

View File

@ -6,7 +6,7 @@
<div class="app-links-container"> <div class="app-links-container">
<!-- LOOP HERE --> <!-- LOOP HERE -->
{{range .AppLinks}} {{range .AppLinks}}
<a href="{{.Url}}" class="app-link-card-link"> <a href="{{.Url}}" class="app-link-card-link" target="_blank">
<div class="app-link-card"> <div class="app-link-card">
<img src="{{.Image}}" alt="" class="app-link-card__image"> <img src="{{.Image}}" alt="" class="app-link-card__image">
<h3 class="app-link-card__title">{{.Title}}</h3> <h3 class="app-link-card__title">{{.Title}}</h3>

View File

@ -150,6 +150,8 @@ h1 {
text-align: center; text-align: center;
} }
.footer__excerpt { .footer__excerpt,
.footer__kitty {
grid-column: 2/3; grid-column: 2/3;
justify-self: center;
} }

BIN
ui/static/img/kitty.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.2 KiB