refactor and remove useless stuff
parent
6e04c97bb9
commit
06c4e4d58b
|
@ -13,8 +13,8 @@ import (
|
|||
"os"
|
||||
)
|
||||
|
||||
// checksum calculates the hash of a file. Supports MD5, SHA1, SHA256 and SHA512.
|
||||
func checksum(c *requestContext, w http.ResponseWriter, r *http.Request) (int, error) {
|
||||
// serveChecksum calculates the hash of a file. Supports MD5, SHA1, SHA256 and SHA512.
|
||||
func serveChecksum(c *requestContext, w http.ResponseWriter, r *http.Request) (int, error) {
|
||||
query := r.URL.Query().Get("checksum")
|
||||
|
||||
file, err := os.Open(c.fi.Path)
|
||||
|
|
|
@ -139,7 +139,7 @@ func (m FileManager) WebDavURL() string {
|
|||
|
||||
// SetPrefixURL updates the prefixURL of a File
|
||||
// Manager object.
|
||||
func (m FileManager) SetPrefixURL(url string) {
|
||||
func (m *FileManager) SetPrefixURL(url string) {
|
||||
url = strings.TrimPrefix(url, "/")
|
||||
url = strings.TrimSuffix(url, "/")
|
||||
url = "/" + url
|
||||
|
@ -322,7 +322,7 @@ func (m *FileManager) ServeHTTP(w http.ResponseWriter, r *http.Request) (int, er
|
|||
case r.URL.Query().Get("download") != "":
|
||||
code, err = download(c, w, r)
|
||||
case !f.IsDir && r.URL.Query().Get("checksum") != "":
|
||||
code, err = checksum(c, w, r)
|
||||
code, err = serveChecksum(c, w, r)
|
||||
case r.URL.Query().Get("raw") == "true" && !f.IsDir:
|
||||
http.ServeFile(w, r, f.Path)
|
||||
code, err = 0, nil
|
||||
|
|
|
@ -5,26 +5,18 @@ import (
|
|||
"net/http"
|
||||
"strconv"
|
||||
"strings"
|
||||
|
||||
"github.com/mholt/caddy/caddyhttp/httpserver"
|
||||
)
|
||||
|
||||
// serveListing presents the user with a listage of a directory folder.
|
||||
func serveListing(c *requestContext, w http.ResponseWriter, r *http.Request) (int, error) {
|
||||
var err error
|
||||
|
||||
// Loads the content of the directory
|
||||
// Loads the content of the directory.
|
||||
listing, err := getListing(c.us, c.fi.VirtualPath, c.fm.RootURL()+r.URL.Path)
|
||||
if err != nil {
|
||||
return errorToHTTP(err, true), err
|
||||
}
|
||||
|
||||
listing.Context = httpserver.Context{
|
||||
Root: http.Dir(c.us.scope),
|
||||
Req: r,
|
||||
URL: r.URL,
|
||||
}
|
||||
|
||||
cookieScope := c.fm.RootURL()
|
||||
if cookieScope == "" {
|
||||
cookieScope = "/"
|
||||
|
|
|
@ -7,8 +7,6 @@ import (
|
|||
"path"
|
||||
"sort"
|
||||
"strings"
|
||||
|
||||
"github.com/mholt/caddy/caddyhttp/httpserver"
|
||||
)
|
||||
|
||||
// A listing is the context used to fill out a template.
|
||||
|
@ -28,8 +26,7 @@ type listing struct {
|
|||
// And which order.
|
||||
Order string
|
||||
// If ≠0 then Items have been limited to that many elements.
|
||||
ItemsLimitedTo int
|
||||
httpserver.Context `json:"-"`
|
||||
ItemsLimitedTo int
|
||||
}
|
||||
|
||||
// getListing gets the information about a specific directory and its files.
|
||||
|
|
Loading…
Reference in New Issue