Skip to content

Commit 71fe969

Browse files
peglahmvdkleijn
andauthored
Auth method use API (#825)
* Auth method use API * Remove whitespace issues --------- Co-authored-by: Martijn van der Kleijn <[email protected]>
1 parent 60f8b48 commit 71fe969

3 files changed

Lines changed: 55 additions & 31 deletions

File tree

Autobrr/Autobrr.php

Lines changed: 38 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -6,33 +6,57 @@ class Autobrr extends \App\SupportedApps implements \App\EnhancedApps
66
{
77
public $config;
88

9-
//protected $login_first = true; // Uncomment if api requests need to be authed first
10-
//protected $method = 'POST'; // Uncomment if requests to the API should be set by POST
11-
12-
public function __construct()
13-
{
14-
//$this->jar = new \GuzzleHttp\Cookie\CookieJar; // Uncomment if cookies need to be set
15-
}
16-
179
public function test()
1810
{
19-
$test = parent::appTest($this->url('status'));
11+
$headers = [
12+
'headers' => [
13+
'X-API-Token' => $this->config->apikey,
14+
],
15+
];
16+
17+
$test = parent::appTest($this->url('healthz/liveness'), $headers);
2018
echo $test->status;
2119
}
2220

2321
public function livestats()
2422
{
2523
$status = 'inactive';
26-
$res = parent::execute($this->url('status'));
27-
$details = json_decode($res->getBody());
24+
$headers = [
25+
'headers' => [
26+
'X-API-Token' => $this->config->apikey,
27+
],
28+
];
29+
30+
$filtersRes = parent::execute($this->url('filters'), $headers);
31+
$filters = json_decode($filtersRes->getBody(), true);
32+
$filterCount = is_array($filters) ? count($filters) : 0;
33+
34+
$ircRes = parent::execute($this->url('irc'), $headers);
35+
$irc = json_decode($ircRes->getBody(), true);
36+
$ircCount = 0;
37+
38+
if (is_array($irc)) {
39+
foreach ($irc as $conn) {
40+
if (!empty($conn['connected'])) {
41+
$ircCount++;
42+
}
43+
}
44+
}
45+
46+
$data = [
47+
'Filters' => $filterCount,
48+
'IRC' => $ircCount,
49+
];
50+
51+
if ($filterCount > 0 || $ircCount > 0) {
52+
$status = 'active';
53+
}
2854

29-
$data = [];
3055
return parent::getLiveStats($status, $data);
3156
}
3257

3358
public function url($endpoint)
3459
{
35-
$api_url = parent::normaliseurl($this->config->url) . $endpoint;
36-
return $api_url;
60+
return parent::normaliseurl($this->config->url) . 'api/' . $endpoint;
3761
}
3862
}

Autobrr/config.blade.php

Lines changed: 3 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -2,18 +2,13 @@
22
<div class="items">
33
<div class="input">
44
<label>{{ strtoupper(__('app.url')) }}</label>
5-
{!! Form::text('config[override_url]', null, array('placeholder' => __('app.apps.override'), 'id' => 'override_url', 'class' => 'form-control')) !!}
5+
{!! Form::text('config[override_url]', isset($item) ? $item->getconfig()->override_url : null, ['placeholder' => __('app.apps.override'), 'id' => 'override_url', 'class' => 'form-control']) !!}
66
</div>
77
<div class="input">
8-
<label>{{ __('app.apps.username') }}</label>
9-
{!! Form::text('config[username]', null, array('placeholder' => __('app.apps.username'), 'data-config' => 'username', 'class' => 'form-control config-item')) !!}
10-
</div>
11-
<div class="input">
12-
<label>{{ __('app.apps.password') }}</label>
13-
{!! Form::input('password', 'config[password]', '', ['placeholder' => __('app.apps.password'), 'data-config' => 'password', 'class' => 'form-control config-item']) !!}
8+
<label>{{ __('app.apps.apikey') }}</label>
9+
{!! Form::text('config[apikey]', isset($item) ? $item->getconfig()->apikey : null, ['placeholder' => __('app.apps.apikey'), 'data-config' => 'apikey', 'class' => 'form-control config-item']) !!}
1410
</div>
1511
<div class="input">
1612
<button style="margin-top: 32px;" class="btn test" id="test_config">Test</button>
1713
</div>
1814
</div>
19-

Autobrr/livestats.blade.php

Lines changed: 14 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,15 @@
11
<ul class="livestats">
2-
<li>
3-
<span class="title">Queue</span>
4-
<strong>{!! $queue_size !!}</strong>
5-
</li>
6-
<li>
7-
<span class="title">Speed</span>
8-
<strong>{!! $current_speed !!}</strong>
9-
</li>
10-
</ul>
2+
@if (isset($data['Filters']))
3+
<li>
4+
<span class="title">Filters</span>
5+
<strong>{{ $data['Filters'] }}</strong>
6+
</li>
7+
@endif
8+
@if (isset($data['IRC']))
9+
<li>
10+
<span class="title">IRC</span>
11+
<strong>{{ $data['IRC'] }}</strong>
12+
</li>
13+
@endif
14+
</ul>
15+

0 commit comments

Comments
 (0)