Merge pull request #458 from writefreely/improve-gopher

Fix Gopher links and add blog info
This commit is contained in:
Matt Baer 2021-04-30 10:58:34 -04:00 committed by GitHub
commit a7c4a318f3
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 12 additions and 1 deletions

View File

@ -14,6 +14,7 @@ import (
"bytes" "bytes"
"fmt" "fmt"
"io" "io"
"net/url"
"regexp" "regexp"
"strings" "strings"
@ -31,7 +32,12 @@ func initGopher(apper Apper) {
// Utility function to strip the URL from the hostname provided by app.cfg.App.Host // Utility function to strip the URL from the hostname provided by app.cfg.App.Host
func stripHostProtocol(app *App) string { func stripHostProtocol(app *App) string {
return string(regexp.MustCompile("^.*://").ReplaceAll([]byte(app.cfg.App.Host), []byte(""))) u, err := url.Parse(app.cfg.App.Host)
if err != nil {
// Fall back to host, with scheme stripped
return string(regexp.MustCompile("^.*://").ReplaceAll([]byte(app.cfg.App.Host), []byte("")))
}
return u.Hostname()
} }
func handleGopher(app *App, w gopher.ResponseWriter, r *gopher.Request) error { func handleGopher(app *App, w gopher.ResponseWriter, r *gopher.Request) error {
@ -100,6 +106,11 @@ func handleGopherCollection(app *App, w gopher.ResponseWriter, r *gopher.Request
} }
c.hostName = app.cfg.App.Host c.hostName = app.cfg.App.Host
w.WriteInfo(c.DisplayTitle())
if c.Description != "" {
w.WriteInfo(c.Description)
}
posts, err := app.db.GetPosts(app.cfg, c, 0, false, false, false) posts, err := app.db.GetPosts(app.cfg, c, 0, false, false, false)
if err != nil { if err != nil {
return err return err