mirror of
https://github.com/Ernous/TorrServerJellyfin.git
synced 2025-12-20 05:56:10 +05:00
refactor and update
This commit is contained in:
@@ -14,6 +14,7 @@ import (
|
||||
type TorrentDB struct {
|
||||
*torrent.TorrentSpec
|
||||
|
||||
Name string `json:"name"`
|
||||
Title string `json:"title,omitempty"`
|
||||
Poster string `json:"poster,omitempty"`
|
||||
|
||||
|
||||
@@ -12,15 +12,26 @@ type Viewed struct {
|
||||
}
|
||||
|
||||
func SetViewed(vv *Viewed) {
|
||||
var indexes map[int]struct{}
|
||||
var err error
|
||||
|
||||
buf := tdb.Get("Viewed", vv.Hash)
|
||||
var indeces map[int]struct{}
|
||||
err := json.Unmarshal(buf, &indeces)
|
||||
if err == nil {
|
||||
indeces[vv.FileIndex] = struct{}{}
|
||||
buf, err = json.Marshal(indeces)
|
||||
if len(buf) == 0 {
|
||||
indexes = make(map[int]struct{})
|
||||
indexes[vv.FileIndex] = struct{}{}
|
||||
buf, err = json.Marshal(indexes)
|
||||
if err == nil {
|
||||
tdb.Set("Viewed", vv.Hash, buf)
|
||||
}
|
||||
} else {
|
||||
err = json.Unmarshal(buf, &indexes)
|
||||
if err == nil {
|
||||
indexes[vv.FileIndex] = struct{}{}
|
||||
buf, err = json.Marshal(indexes)
|
||||
if err == nil {
|
||||
tdb.Set("Viewed", vv.Hash, buf)
|
||||
}
|
||||
}
|
||||
}
|
||||
if err != nil {
|
||||
log.TLogln("Error set viewed:", err)
|
||||
@@ -65,7 +76,7 @@ func ListViewed(hash string) []*Viewed {
|
||||
err = json.Unmarshal(buf, &indeces)
|
||||
if err == nil {
|
||||
for i, _ := range indeces {
|
||||
ret = append(ret, &Viewed{hash, i})
|
||||
ret = append(ret, &Viewed{key, i})
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user