Change to query based uri, add new file, success page

This commit is contained in:
Wancat
2022-11-16 02:32:30 +08:00
parent f5ace34852
commit 64b7fa4f50
5 changed files with 15 additions and 22 deletions

1
.gitignore vendored
View File

@@ -3,3 +3,4 @@ test.txt
ledger-quicknote ledger-quicknote
*.txt *.txt
.htpasswd .htpasswd
data

View File

@@ -1,4 +0,0 @@
{{ .Date }} {{ with .Name }}{{ . }}{{ else }}{{ .Destination }}{{ end }}
{{ .Destination }} ${{ .Amount }}
{{ with .Source }}{{ . }}{{ else }}cash{{ end }}

View File

@@ -1,7 +1,6 @@
package main package main
import ( import (
"fmt"
"io/ioutil" "io/ioutil"
"log" "log"
"text/template" "text/template"
@@ -71,12 +70,8 @@ func router() *gin.Engine {
}) })
authZone.GET("/edit", func(c *gin.Context) { authZone.GET("/edit", func(c *gin.Context) {
c.Redirect(303, fmt.Sprintf("/edit/%s", DEFAULT_JOURNAL))
})
authZone.GET("/edit/:filename", func(c *gin.Context) {
user := getUser(c) user := getUser(c)
filename := c.Param("filename") filename := c.Query("filename")
list, err := user.List() list, err := user.List()
if err != nil { if err != nil {
panic(err) panic(err)
@@ -103,17 +98,18 @@ func router() *gin.Engine {
}) })
}) })
authZone.POST("/edit/:filename", func(c *gin.Context) { authZone.POST("/edit", func(c *gin.Context) {
user := getUser(c) user := getUser(c)
filename := c.Param("filename") filename := c.PostForm("filename")
data := c.PostForm("data") data := c.PostForm("data")
err := user.overwriteFile(filename, data) err := user.overwriteFile(filename, data)
if err != nil { if err != nil {
panic(err) panic(err)
} }
HTML(c, 200, "success.html", struct { HTML(c, 200, "success.html", gin.H{
Tx string "FileName": filename,
}{data}) "Tx": data,
})
}) })
authZone.GET("/download", func(c *gin.Context) { authZone.GET("/download", func(c *gin.Context) {

View File

@@ -1,18 +1,18 @@
{{ define "title" }}編輯{{ end }} {{ define "title" }}編輯{{ end }}
{{ define "main" }} {{ define "main" }}
<h1>編輯帳本</h1> <h1>編輯檔案</h1>
<aside> <aside>
<ul> <ul>
{{ range .FileList }} {{ range .FileList }}
<li><a href="/edit/{{ . }}">{{ . }}</a></li> <li><a href="/edit?filename={{ . }}">{{ . }}</a></li>
{{ end }} {{ end }}
</ul> </ul>
<p><a href="/edit">新檔案</a></p>
</aside> </aside>
<p>{{ .FileName }}{{ if not .Exists }} - New file{{ end }}</p> <form action="/edit" method="POST">
<label>Filename: <input type="text" name="filename" value="{{ .FileName }}"></label><br>
<form action="/edit/{{ .FileName }}" method="POST">
<textarea name="data" rows="15" cols="40">{{ .Data }}</textarea><br> <textarea name="data" rows="15" cols="40">{{ .Data }}</textarea><br>
<input type="submit" value="儲存"> <input type="submit" value="{{ if .Exists }}儲存{{ else }}新增{{ end }}">
</form> </form>
{{ end }} {{ end }}

View File

@@ -1,6 +1,6 @@
{{ define "title" }}Success{{ end }} {{ define "title" }}Success{{ end }}
{{ define "main" }} {{ define "main" }}
<p><strong>Success</strong></p> <p><strong>Success</strong></p>
<p><a href="/edit?filename={{ .FileName }}">繼續編輯</a></p>
<pre><code>{{ .Tx }}</code></pre> <pre><code>{{ .Tx }}</code></pre>
<p><a href="/dashboard">Back to home</a></p>
{{ end }} {{ end }}