feat(download-client): add support for Porla (#553)

* Add support for the 'Test' button to work

* Make Porla show up in filter actions select

* Add an empty Porla action

* Make Porla action find download client

* Make implementation actually add torrent to Porla

* Fix qBittorrent import

* Finish up Porla action

* Check length on commitish before slicing

* Move Porla to the other DL clients

* Add Porla to type name map

* Move Porla to beneath the other download clients
This commit is contained in:
Viktor Elofsson 2023-01-29 18:17:01 +01:00 committed by GitHub
parent b95c1e6913
commit 870e109f6c
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
12 changed files with 271 additions and 2 deletions

30
pkg/porla/client.go Normal file
View file

@ -0,0 +1,30 @@
package porla
import (
"log"
"github.com/autobrr/autobrr/pkg/jsonrpc"
)
type Client struct {
Name string
Hostname string
rpcClient jsonrpc.Client
}
type Settings struct {
Hostname string
AuthToken string
Log *log.Logger
}
func NewClient(settings Settings) *Client {
c := &Client{
rpcClient: jsonrpc.NewClientWithOpts(settings.Hostname+"/api/v1/jsonrpc", &jsonrpc.ClientOpts{
Headers: map[string]string{
"Authorization": "Bearer " + settings.AuthToken,
},
}),
}
return c
}