Beginning work on setup route & page

This commit is contained in:
gmemstr 2017-09-21 15:10:16 -07:00
parent a5f6cf3219
commit 99cb95d51b
5 changed files with 70 additions and 6 deletions

View file

@ -1,11 +1,11 @@
all: all:
go build src/webserver.go src/admin.go src/generate_rss.go go build src/webserver.go src/admin.go src/generate_rss.go src/setup.go
windows: src/admin.go src/webserver.go src/generate_rss.go windows: src/admin.go src/webserver.go src/generate_rss.go
go build -o pogoapp.exe src/webserver.go src/admin.go src/generate_rss.go go build -o pogoapp.exe src/webserver.go src/admin.go src/generate_rss.go src/setup.go
linux: src/admin.go src/webserver.go src/generate_rss.go linux: src/admin.go src/webserver.go src/generate_rss.go
go build -o pogoapp src/webserver.go src/admin.go src/generate_rss.go go build -o pogoapp src/webserver.go src/admin.go src/generate_rss.go src/setup.go
install: install:
go get github.com/gmemstr/feeds go get github.com/gmemstr/feeds
@ -17,5 +17,5 @@ docker:
docker build . docker build .
and run: and run:
go build src/webserver.go src/admin.go src/generate_rss.go go build src/webserver.go src/admin.go src/generate_rss.go src/setup.go
./pogoapp.exe ./pogoapp.exe

28
assets/setup.html Normal file
View file

@ -0,0 +1,28 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Pogo Setup</title>
<link rel="stylesheet" href="/assets/setup.css">
</head>
<body>
<h1>Let's get Pogo setup</h1>
<form action="setup" method="post" class="setupform">
<label for="podcastname">Podcast Name</label>
<input type="text" id="podcastname">
<label for="podcasthost">Podcast Host</label>
<input type="text" id="podcasthost">
<label for="podcastemail">Podcast Email</label>
<input type="text" id="podcastemail">
<label for="podcastdescription">Podcast Description</label>
<textarea name="" id="podcastdescription" cols="75" rows="5"></textarea>
</form>
</body>
</html>

23
assets/static/setup.css Normal file
View file

@ -0,0 +1,23 @@
body {
font-family: 'Roboto', Monospace;
background-color: #3c3c3c;
color: white;
}
.setupform {
text-align: center;
}
label {
display: block;
}
input,textarea {
margin-bottom: 10px;
padding: 10px;
border: 1px;
border-radius: 5px;
}
textarea {
resize: none;
}

View file

@ -1,12 +1,23 @@
package main package main
import ( import (
"fmt" "io/ioutil"
"net/http"
) )
// Serve setup.html and config parameters // Serve setup.html and config parameters
func ServeSetup(w http.ResponseWriter, r *http.Request) { func ServeSetup(w http.ResponseWriter, r *http.Request) {
if r.Method == "GET" {
data, err := ioutil.ReadFile("assets/setup.html")
if err != nil {
panic(err)
}
w.Write(data)
}
if r.Method == "POST" {
}
} }
// Write JSON config to file // Write JSON config to file

View file

@ -43,7 +43,7 @@ func JsonHandler(w http.ResponseWriter, r *http.Request) {
// Serve up homepage // Serve up homepage
func HomeHandler(w http.ResponseWriter, r *http.Request) { func HomeHandler(w http.ResponseWriter, r *http.Request) {
data, err := ioutil.ReadFile("assets/1index.html") data, err := ioutil.ReadFile("assets/index.html")
if err == nil { if err == nil {
w.Write(data) w.Write(data)
@ -123,6 +123,8 @@ func main() {
r.HandleFunc("/admin/delete", BasicAuth(RemoveEpisode)) r.HandleFunc("/admin/delete", BasicAuth(RemoveEpisode))
r.HandleFunc("/admin/css", BasicAuth(CustomCss)) r.HandleFunc("/admin/css", BasicAuth(CustomCss))
r.HandleFunc("/setup", ServeSetup)
// We're live! // We're live!
fmt.Println("Listening on port :8000") fmt.Println("Listening on port :8000")
log.Fatal(http.ListenAndServe(":8000", r)) log.Fatal(http.ListenAndServe(":8000", r))