mirror of https://github.com/Xhofe/alist
parent
a6325967d0
commit
65c5ec0c34
|
@ -53,6 +53,14 @@ func (d *Cloudreve) List(ctx context.Context, dir model.Obj, args model.ListArgs
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
|
if src.Type == "dir" && d.EnableThumbAndFolderSize {
|
||||||
|
var dprop DirectoryProp
|
||||||
|
err = d.request(http.MethodGet, "/object/property/"+src.Id+"?is_folder=true", nil, &dprop)
|
||||||
|
if err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
src.Size = dprop.Size
|
||||||
|
}
|
||||||
return objectToObj(src, thumb), nil
|
return objectToObj(src, thumb), nil
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
|
@ -9,11 +9,12 @@ type Addition struct {
|
||||||
// Usually one of two
|
// Usually one of two
|
||||||
driver.RootPath
|
driver.RootPath
|
||||||
// define other
|
// define other
|
||||||
Address string `json:"address" required:"true"`
|
Address string `json:"address" required:"true"`
|
||||||
Username string `json:"username"`
|
Username string `json:"username"`
|
||||||
Password string `json:"password"`
|
Password string `json:"password"`
|
||||||
Cookie string `json:"cookie"`
|
Cookie string `json:"cookie"`
|
||||||
CustomUA string `json:"custom_ua"`
|
CustomUA string `json:"custom_ua"`
|
||||||
|
EnableThumbAndFolderSize bool `json:"enable_thumb_and_folder_size"`
|
||||||
}
|
}
|
||||||
|
|
||||||
var config = driver.Config{
|
var config = driver.Config{
|
||||||
|
|
|
@ -44,6 +44,10 @@ type Object struct {
|
||||||
SourceEnabled bool `json:"source_enabled"`
|
SourceEnabled bool `json:"source_enabled"`
|
||||||
}
|
}
|
||||||
|
|
||||||
|
type DirectoryProp struct {
|
||||||
|
Size int `json:"size"`
|
||||||
|
}
|
||||||
|
|
||||||
func objectToObj(f Object, t model.Thumbnail) *model.ObjThumb {
|
func objectToObj(f Object, t model.Thumbnail) *model.ObjThumb {
|
||||||
return &model.ObjThumb{
|
return &model.ObjThumb{
|
||||||
Object: model.Object{
|
Object: model.Object{
|
||||||
|
|
|
@ -151,6 +151,9 @@ func convertSrc(obj model.Obj) map[string]interface{} {
|
||||||
}
|
}
|
||||||
|
|
||||||
func (d *Cloudreve) GetThumb(file Object) (model.Thumbnail, error) {
|
func (d *Cloudreve) GetThumb(file Object) (model.Thumbnail, error) {
|
||||||
|
if !d.Addition.EnableThumbAndFolderSize {
|
||||||
|
return model.Thumbnail{}, nil
|
||||||
|
}
|
||||||
ua := d.CustomUA
|
ua := d.CustomUA
|
||||||
if ua == "" {
|
if ua == "" {
|
||||||
ua = base.UserAgent
|
ua = base.UserAgent
|
||||||
|
|
Loading…
Reference in New Issue