Heimdall-Apps/Prowlarr/Prowlarr.php
Steve Lambe 633c9f19f0
fix: Fix *arr url creation (#788)
* Update Radarr.php

Radarr was using normaliseurl (which strips the trailing `/`) without passing true to re-add said `/` as needed.

* Update Sonarr.php

Sonarr as well was using normaliseurl (which strips the trailing `/`) without passing true to re-add said `/` as needed.

* Update Readarr.php

Readarr  as well was using normaliseurl (which strips the trailing `/`) without passing true to re-add said `/` as needed.

* Update Lidarr.php

Lidarr as well was using normaliseurl (which strips the trailing `/`) without passing true to re-add said `/` as needed.

* Update Bazarr.php

Bazarr as well was using normaliseurl (which strips the trailing `/`) without passing true to re-add said `/` as needed.

* Update Prowlarr.php

Prowlarr as well was using normaliseurl (which strips the trailing `/`) without passing true to re-add said `/` as needed.
2024-10-18 12:12:39 +02:00

57 lines
1.5 KiB
PHP

<?php
namespace App\SupportedApps\Prowlarr;
class Prowlarr extends \App\SupportedApps implements \App\EnhancedApps
{
public $config;
//protected $login_first = true; // Uncomment if api requests need to be authed first
//protected $method = 'POST'; // Uncomment if requests to the API should be set by POST
public function __construct()
{
//$this->jar = new \GuzzleHttp\Cookie\CookieJar; // Uncomment if cookies need to be set
}
public function test()
{
$test = parent::appTest($this->url("system/status"));
echo $test->status;
}
public function livestats()
{
$status = "inactive";
$indexers = json_decode(
parent::execute($this->url("indexer"))->getBody()
);
$failures = json_decode(
parent::execute($this->url("indexerstatus"))->getBody()
);
$collect = collect($indexers);
$enabled = $collect->where("enable", true);
$data = [];
if ($indexers || $failures) {
$data["enabled_count"] = $enabled->count() ?? 0;
$data["indexer_count"] = count($indexers) ?? 0;
$data["failure_count"] = count($failures) ?? 0;
}
return parent::getLiveStats($status, $data);
}
public function url($endpoint)
{
$api_url =
parent::normaliseurl($this->config->url, true) .
"api/v1/" .
$endpoint .
"?apikey=" .
$this->config->apikey;
return $api_url;
}
}