76 lines
2.5 KiB
PHP
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 = Logifuture::$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;
|
|
}
|
|
}
|