minor bug fixes; improvements, final-beta-pre-stable

This commit is contained in:
Mukhtar Akere
2025-05-07 18:25:09 +01:00
parent 21354529e7
commit 0deb88e265
16 changed files with 151 additions and 258 deletions

View File

@@ -3,7 +3,6 @@ package alldebrid
import (
"fmt"
"github.com/goccy/go-json"
"github.com/puzpuzpuz/xsync/v3"
"github.com/rs/zerolog"
"github.com/sirrobot01/decypharr/internal/config"
"github.com/sirrobot01/decypharr/internal/logger"
@@ -13,7 +12,6 @@ import (
"net/http"
gourl "net/url"
"path/filepath"
"slices"
"strconv"
"sync"
"time"
@@ -23,7 +21,8 @@ type AllDebrid struct {
Name string
Host string `json:"host"`
APIKey string
DownloadKeys *xsync.MapOf[string, types.Account]
accounts map[string]types.Account
accountsMu sync.RWMutex
DownloadUncached bool
client *request.Client
@@ -46,20 +45,20 @@ func New(dc config.Debrid) *AllDebrid {
request.WithProxy(dc.Proxy),
)
accounts := xsync.NewMapOf[string, types.Account]()
accounts := make(map[string]types.Account)
for idx, key := range dc.DownloadAPIKeys {
id := strconv.Itoa(idx)
accounts.Store(id, types.Account{
accounts[id] = types.Account{
Name: key,
ID: id,
Token: key,
})
}
}
return &AllDebrid{
Name: "alldebrid",
Host: "http://api.alldebrid.com/v4.1",
APIKey: dc.APIKey,
DownloadKeys: accounts,
accounts: accounts,
DownloadUncached: dc.DownloadUncached,
client: client,
MountPath: dc.Folder,
@@ -273,7 +272,7 @@ func (ad *AllDebrid) CheckStatus(torrent *types.Torrent, isSymlink bool) (*types
}
}
break
} else if slices.Contains(ad.GetDownloadingStatus(), status) {
} else if utils.Contains(ad.GetDownloadingStatus(), status) {
if !torrent.DownloadUncached {
return torrent, fmt.Errorf("torrent: %s not cached", torrent.Name)
}