diff --git a/server/dlna/list.go b/server/dlna/list.go
index 28fc268..9f42514 100644
--- a/server/dlna/list.go
+++ b/server/dlna/list.go
@@ -13,6 +13,7 @@ import (
"github.com/anacrolix/dms/upnpav"
"server/log"
+ mt "server/mimetype"
"server/settings"
"server/torr"
"server/torr/state"
@@ -124,6 +125,11 @@ func getTorrentMeta(path, host string) (ret interface{}) {
Title: "TorrServer",
Date: upnpav.Timestamp{Time: time.Now()},
Class: "object.container",
+ SearchXML: ` object.container
+ object.item.audioItem
+ object.item.imageItem
+ object.item.videoItem
+`,
}
// add Root Object
meta := upnpav.Container{Object: rootObj}
@@ -134,13 +140,12 @@ func getTorrentMeta(path, host string) (ret interface{}) {
ID: "%2FTR",
ParentID: "0",
Restricted: 1,
- Searchable: 1,
Title: "Torrents",
+ Class: "object.container.storageFolder",
Date: upnpav.Timestamp{Time: time.Now()},
- Class: "object.container",
}
- //vol := len(torr.ListTorrent())
- meta := upnpav.Container{Object: trObj}
+ vol := len(torr.ListTorrent())
+ meta := upnpav.Container{Object: trObj, ChildCount: vol}
return meta
}
@@ -165,8 +170,8 @@ func getTorrentMeta(path, host string) (ret interface{}) {
ParentID: "%2FTR",
Restricted: 1,
Title: torr.Title,
+ Class: "object.container.storageFolder",
Date: upnpav.Timestamp{Time: time.Now()},
- Class: "object.container",
}
meta := upnpav.Container{Object: obj}
return meta
@@ -180,10 +185,10 @@ func getTorrentMeta(path, host string) (ret interface{}) {
ID: parent + "%2FLD",
ParentID: parent,
Restricted: 1,
- Searchable: 1,
+ Searchable: 0,
Title: "Load Torrents",
+ Class: "object.container.storageFolder",
Date: upnpav.Timestamp{Time: time.Now()},
- Class: "object.container",
}
meta := upnpav.Container{Object: obj}
return meta
@@ -199,16 +204,15 @@ func getTorrentMeta(path, host string) (ret interface{}) {
ID: id,
ParentID: parent,
Restricted: 1,
- Searchable: 1,
Title: file,
- Date: upnpav.Timestamp{Time: time.Now()},
Class: "object.container",
+ Date: upnpav.Timestamp{Time: time.Now()},
}
meta := upnpav.Container{Object: obj}
return meta
}
- // for error response
- return nil
+ // nil for error
+ return
}
func loadTorrent(path, host string) (ret []interface{}) {
@@ -263,7 +267,7 @@ func getLink(host, path string) string {
func getObjFromTorrent(path, parent, host string, torr *torr.Torrent, file *state.TorrentFileStat) (ret interface{}) {
- mime, err := MimeTypeByPath(file.Path)
+ mime, err := mt.MimeTypeByPath(file.Path)
if err != nil {
if settings.BTsets.EnableDebug {
log.TLogln("Can't detect mime type", err)
diff --git a/server/go.mod b/server/go.mod
index df8352d..a28a2aa 100644
--- a/server/go.mod
+++ b/server/go.mod
@@ -3,7 +3,7 @@ module server
go 1.17
replace (
- github.com/anacrolix/dms v1.2.2 => github.com/tsynik/dms v0.0.0-20210911171915-d3d89ee99163
+ github.com/anacrolix/dms v1.2.2 => github.com/tsynik/dms v0.0.0-20210913075730-e41ecd88369c
github.com/anacrolix/torrent v1.31.0 => github.com/tsynik/torrent v1.2.7-0.20210907192509-2141ede9aa09
)
@@ -20,6 +20,7 @@ require (
github.com/pkg/browser v0.0.0-20210115035449-ce105d075bb4
github.com/pkg/errors v0.9.1
go.etcd.io/bbolt v1.3.6
+ golang.org/x/sys v0.0.0-20210809222454-d867a43fc93e
golang.org/x/time v0.0.0-20210723032227-1f47c861a9ac
)
@@ -66,7 +67,6 @@ require (
golang.org/x/crypto v0.0.0-20210711020723-a769d52b0f97 // indirect
golang.org/x/net v0.0.0-20210813160813-60bc85c4be6d // indirect
golang.org/x/sync v0.0.0-20210220032951-036812b2e83c // indirect
- golang.org/x/sys v0.0.0-20210809222454-d867a43fc93e // indirect
golang.org/x/text v0.3.6 // indirect
google.golang.org/protobuf v1.27.1 // indirect
gopkg.in/yaml.v2 v2.4.0 // indirect
diff --git a/server/go.sum b/server/go.sum
index 78338e8..36c0fa2 100644
--- a/server/go.sum
+++ b/server/go.sum
@@ -678,8 +678,8 @@ github.com/tinylib/msgp v1.1.1/go.mod h1:+d+yLhGm8mzTaHzB+wgMYrodPfmZrzkirds8fDW
github.com/tinylib/msgp v1.1.2/go.mod h1:+d+yLhGm8mzTaHzB+wgMYrodPfmZrzkirds8fDWklFE=
github.com/tinylib/msgp v1.1.5/go.mod h1:eQsjooMTnV42mHu917E26IogZ2930nFyBQdofk10Udg=
github.com/tmc/grpc-websocket-proxy v0.0.0-20170815181823-89b8d40f7ca8/go.mod h1:ncp9v5uamzpCO7NfCPTXjqaC+bZgJeR0sMTm6dMHP7U=
-github.com/tsynik/dms v0.0.0-20210911171915-d3d89ee99163 h1:qBZPOad8wOmvFe6rIx1d0U7VpymFalvbM5kjHeEx8Gs=
-github.com/tsynik/dms v0.0.0-20210911171915-d3d89ee99163/go.mod h1:oWW4QbQ9YGl+FJ1X8xcrUYVObfA/KdipoeBuTC4ltG8=
+github.com/tsynik/dms v0.0.0-20210913075730-e41ecd88369c h1:4yU1p5MmRu+233Hs2OhR8Kx9gOWw20KR2AY1py5pLvA=
+github.com/tsynik/dms v0.0.0-20210913075730-e41ecd88369c/go.mod h1:oWW4QbQ9YGl+FJ1X8xcrUYVObfA/KdipoeBuTC4ltG8=
github.com/tsynik/torrent v1.2.7-0.20210907192509-2141ede9aa09 h1:GHhNKxddZiYrWeiXqMQiPKcSIXKF+o/w1wrqHOgOFrk=
github.com/tsynik/torrent v1.2.7-0.20210907192509-2141ede9aa09/go.mod h1:E9gvoHzc58EtTudJbzZ2Ho7SKDCYk84734hB9ztBJS4=
github.com/ttacon/chalk v0.0.0-20160626202418-22c06c80ed31/go.mod h1:onvgF043R+lC5RZ8IT9rBXDaEDnpnw/Cl+HFiw+v/7Q=