summaryrefslogtreecommitdiff
path: root/server.go
diff options
context:
space:
mode:
authorache <ache@ache.one>2019-02-14 04:10:52 +0100
committerache <ache@ache.one>2019-02-14 04:10:52 +0100
commitfdbb4eeedf8793e24903990742e8a847200cacb3 (patch)
tree5b5a3aae0c2af98d884d89249239046e6744c3e8 /server.go
parenttest PUT front-end (diff)
Grid CSS
Diffstat (limited to 'server.go')
-rw-r--r--server.go35
1 files changed, 27 insertions, 8 deletions
diff --git a/server.go b/server.go
index 6274934..d072342 100644
--- a/server.go
+++ b/server.go
@@ -40,10 +40,11 @@ func handleGet( w http.ResponseWriter, r *http.Request, headOnly bool) {
type Entry struct {
Name string
- Size int
+ Size int64
}
var files []Entry
+ var cols []Entry
f, err := os.Open(filename)
if err != nil {
@@ -68,16 +69,24 @@ func handleGet( w http.ResponseWriter, r *http.Request, headOnly bool) {
}
}
+
+ cols = append(cols, Entry{".", 0})
+ if filename != "." {
+ cols = append(cols, Entry{"..", 0})
+ }
for _, file := range fileInfo {
- files = append(files, Entry{file.Name(), 0})
+ if file.IsDir() {
+ cols = append(cols, Entry{file.Name(), 0})
+ } else {
+ files = append(files, Entry{file.Name(), file.Size()})
+ }
}
-
-
type Collection struct {
Name string
- ListEntries []Entry
+ ListCols []Entry
+ ListFiles []Entry
}
- tmpl.Execute(w, Collection{ "Title" , files})
+ tmpl.Execute(w, Collection{ "Title" , cols, files})
case stat.Mode().IsRegular():
if !headOnly {
@@ -161,13 +170,23 @@ func handleCopy( w http.ResponseWriter, r *http.Request) {
}
func handleMove( w http.ResponseWriter, r *http.Request) {
filename := r.URL.Path[1:]
- oups := ""
+ dest := r.Header.Get("Destination")
+ overwrite := "T"
+
+ if r.Header.Get("Overwrite") != "" {
+ overwrite = r.Header.Get("Overwrite")
+ }
+
if filename == "" || filename == "." {
w.WriteHeader(http.StatusBadRequest)
fmt.Fprintln(w, "Cannot move root directory")
return
}
- fmt.Printf("Trying to move [%s] to [%s]\n", filename, oups)
+
+ if tmpDir, err := os.Stat( path.Dir( dest ) ) ; err == nil && tmpDir.IsDir() {
+
+ }
+ fmt.Printf("Trying to move [%s] to [%s]\n", filename, dest)
}
func handleMethod( w http.ResponseWriter, r *http.Request) {