aboutsummaryrefslogtreecommitdiff
path: root/cmd/web/index.go
diff options
context:
space:
mode:
Diffstat (limited to 'cmd/web/index.go')
-rw-r--r--cmd/web/index.go56
1 files changed, 56 insertions, 0 deletions
diff --git a/cmd/web/index.go b/cmd/web/index.go
new file mode 100644
index 0000000..1a2c344
--- /dev/null
+++ b/cmd/web/index.go
@@ -0,0 +1,56 @@
+package main
+
+import (
+ "net/http"
+ "html/template"
+)
+
+var (
+ Templ = template.Must(template.New("index").Parse(`
+<!DOCTYPE html>
+<html lang="en">
+<head>
+ <meta charset="UTF-8">
+ <link id="maincss" rel="stylesheet" href="/style.css" defer>
+ <meta name="viewport" content="width=device-width, initial-scale=1.0">
+ <title>Steam Game index</title>
+</head>
+<body>
+<nav>
+ <a href="/">Home</a>
+ <div style="display: block; float: right;">
+ <!-- <a href="">Right Aligned</a> -->
+ </div>
+</nav>
+
+<h2>Library: {{.Folder}}</h2>
+
+<p>
+Installed games:
+</p>
+
+<ul>
+{{ range $key, $val := .Games }}
+<li>
+<a href="/download/{{$key}}">{{$key}}</a>
+</li>
+{{ end }}
+</ul>
+
+Install a game from a URL:
+
+<form action="/install" method="GET">
+ <input type="text" name="url" />
+ <input type="submit" value="Install">
+</form>
+
+</body>
+`))
+)
+
+func index(w http.ResponseWriter, r *http.Request) {
+ err := Templ.ExecuteTemplate(w, "index", Lib)
+ if err != nil {
+ Logger.Printf("While Rendering template: %s", err)
+ }
+}