diff options
author | Antoni Sawicki <tenox@google.com> | 2022-09-12 02:34:40 -0700 |
---|---|---|
committer | Antoni Sawicki <tenox@google.com> | 2022-09-12 02:34:40 -0700 |
commit | 172eb8ef292087199b8dea9a822258983ebb80b0 (patch) | |
tree | f9d42cddcbd5056d9fb516289a797990205bc1c4 | |
parent | 3a4fb1eeb02ecaff57aab9af44ee43d8246fc968 (diff) | |
download | wfm-172eb8ef292087199b8dea9a822258983ebb80b0.tar.gz |
handle file disp with just url spec
-rw-r--r-- | fileio.go | 15 | ||||
-rw-r--r-- | handlers.go | 2 |
2 files changed, 16 insertions, 1 deletions
@@ -300,3 +300,18 @@ func (r *wfmRequest) deleteFiles(uFilePaths []string) { } redirect(r.w, *wfmPfx+"?dir="+url.PathEscape(r.uDir)+"&sort="+r.eSort) } + +func (r *wfmRequest) dispOrDir(hi string) { + f, err := os.Stat(r.uDir) + if err != nil { + htErr(r.w, "error checking file", err) + return + } + if f.IsDir() { + r.listFiles(hi) + return + } + r.uFbn = filepath.Base(r.uDir) + r.uDir = filepath.Dir(r.uDir) + r.dispFile() +} diff --git a/handlers.go b/handlers.go index 7ce4e02..223bafe 100644 --- a/handlers.go +++ b/handlers.go @@ -141,7 +141,7 @@ func wfmMain(w http.ResponseWriter, r *http.Request) { case "about": wfm.about(r.UserAgent()) default: - wfm.listFiles(filepath.Base(r.FormValue("hi"))) + wfm.dispOrDir(filepath.Base(r.FormValue("hi"))) } } |