Files
nuhodds_fi4/app/Console/Commands/Grapper/Logifuture/Tools/Authentication.php
T
2026-10-04 15:25:03 +02:00

76 lines
2.5 KiB
PHP

<?php
namespace App\Console\Commands\Grapper\Logifuture\Tools;
use App\Console\Commands\Grapper\Logifuture;
use App\Console\Commands\Nuh;
use App\Utilities\Notice;
class Authentication
{
public static function authenticate()
{
$debug = Nuh::$options['d'] ?? 0;
$url = Nuh::$options['base_url'].'/v1/authentication/token';
if (config('env.app_env') == 'local') {
/*************************************************
* PROXY
*************************************************/
if ($debug) {
Notice::note('AUTH with PROXY'.PHP_EOL.$url, 'p');
}
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, 'https://prox1.nuhodds.com/proxy_logi_auth.php');
curl_setopt($ch, CURLOPT_TIMEOUT, 30);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 30);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, ['url' => $url, 'password' => config('env.logifuture_token')]);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, [
'Proxy-Auth: AIkcoRnipSgMK88WMQhOQQN3LKDrNDCIebNfPnEayJdmDeTigx',
]);
} else {
/*************************************************
* DIRECT
*************************************************/
if ($debug) {
Notice::note('AUTH direct'.PHP_EOL.$url, 'b');
}
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 30);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode([
'username' => 'nuhodds',
'password' => config('env.logifuture_token'),
]));
curl_setopt($ch, CURLOPT_HTTPHEADER, [
'accept: application/json',
'content-type: application/json',
]);
}
$file = curl_exec($ch);
$data = json_decode($file, true);
$header = [];
$header[] = 'Authorization: Bearer '.$data['token'];
$header[] = 'accept: application/json';
$header[] = 'content-type: application/json';
Logifuture::$auth_header = $header;
}
}