Add ability to display feed

This commit is contained in:
2024-02-24 14:49:29 +01:00
parent 36f7a92a06
commit 49988edd82
5 changed files with 69 additions and 48 deletions

View File

@ -5,12 +5,13 @@ import (
"html/template"
"log"
"net/http"
"time"
"github.com/gorilla/feeds"
"streifling.com/jason/cpolis/cmd/data"
"streifling.com/jason/cpolis/cmd/feed"
)
func HandleLogin(db *data.DB) http.HandlerFunc {
func Login(db *data.DB) http.HandlerFunc {
return func(w http.ResponseWriter, r *http.Request) {
user := r.PostFormValue("username")
pass := r.PostFormValue("password")
@ -32,7 +33,7 @@ func HandleLogin(db *data.DB) http.HandlerFunc {
}
}
func HandleFinishedEdit(f *feed.Feed) http.HandlerFunc {
func FinishEdit(feed *data.Feed) http.HandlerFunc {
return func(w http.ResponseWriter, r *http.Request) {
title := r.PostFormValue("editor-title")
desc := r.PostFormValue("editor-desc")
@ -45,13 +46,25 @@ func HandleFinishedEdit(f *feed.Feed) http.HandlerFunc {
return
}
feed.AddToFeed(f, title, desc, content)
feed.SaveFeed(f, "tmp/rss.gob")
// template.Must(template.ParseFiles("web/templates/editor.html")).ExecuteTemplate(w, "html-result", rssItem)
feed.Add(&feeds.Item{
Title: title,
Created: time.Now(),
Description: desc,
Content: content,
})
feed.Save("tmp/rss.gob")
rss, err := feed.ToRss()
if err != nil {
log.Println(err)
http.Error(w, err.Error(), http.StatusInternalServerError)
return
}
template.Must(template.ParseFiles("web/templates/feed.rss")).ExecuteTemplate(w, "page-content", rss)
}
}
func HandleAddUser(db *data.DB) http.HandlerFunc {
func AddUser(db *data.DB) http.HandlerFunc {
return func(w http.ResponseWriter, r *http.Request) {
var writer, editor, admin bool