130 lines
5.1 KiB
Plaintext
130 lines
5.1 KiB
Plaintext
|
|
|
|
static public function apilo_product_search()
|
|
{
|
|
global $mdb, $settings, $config;
|
|
|
|
$sku = $mdb -> get( 'pp_shop_products', 'sku', [ 'id' => \S::get( 'product_id' ) ] );
|
|
$ean = $mdb -> get( 'pp_shop_products', 'ean', [ 'id' => \S::get( 'product_id' ) ] );
|
|
|
|
if ( !$sku and !$ean )
|
|
{
|
|
echo json_encode( [ 'status' => 'error', 'msg' => 'Podany produkt nie posiada kodu SKU ani EAN.' ] );
|
|
exit;
|
|
}
|
|
|
|
$url = "https://projectpro.apilo.com/rest/api/warehouse/product/";
|
|
|
|
$params = [];
|
|
if ($sku) {
|
|
$params['sku'] = $sku;
|
|
}
|
|
// if ($ean) {
|
|
// $params['ean'] = $ean;
|
|
// }
|
|
|
|
$url .= '?' . http_build_query($params);
|
|
|
|
$ch = curl_init($url);
|
|
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
|
|
curl_setopt($ch, CURLOPT_HTTPHEADER, [
|
|
"Authorization: Bearer " . $config['apilo']['access-token'],
|
|
"Accept: application/json"
|
|
]);
|
|
|
|
$response = curl_exec($ch);
|
|
$responseData = json_decode($response, true);
|
|
|
|
if (curl_errno($ch)) {
|
|
echo 'Błąd cURL: ' . curl_error($ch);
|
|
} else {
|
|
if ($responseData && isset($responseData['products'])) {
|
|
foreach ($responseData['products'] as $product) {
|
|
echo "Nazwa produktu: " . $product['name'] . "<br>";
|
|
echo "SKU: " . $product['sku'] . "<br>";
|
|
echo "EAN: " . $product['ean'] . "<br><hr>";
|
|
}
|
|
} else {
|
|
echo "Brak wyników dla podanego SKU lub EAN.";
|
|
}
|
|
}
|
|
|
|
curl_close($ch);
|
|
exit;
|
|
|
|
// $refreshUrl = "https://projectpro.apilo.com/rest/auth/token/?grant_type=refresh_token&refresh_token=eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJwcm9qZWN0cHJvLmFwaWxvLmNvbSIsImV4cCI6MTcwNDA2NDE3MywianRpIjoiZTJjZDI4MWItZmU3NS01YTIyLWI4MGYtM2MyNTI3MmViZjVjIiwidHlwZSI6InJlZnJlc2hfdG9rZW4iLCJjbGllbnRfaWQiOjIsInBsYXRmb3JtX2lkIjoyLCJpYXQiOjE2OTg3OTM3NzN9.QUXHq9_9ERSrTqtbx50ZE_h_uN32ai112k-JqmSD9TZg4RsJxyzA13PeIulAWVa2ZeEJolvB-X2XyU7Ok__dhRYtNEUs-2HQgoa9sX1LAUlnUyABkY5hXOMpRNztrZ_BJMl_Ttj4GkwEOGlP8Ze0JNXaqmio0d1Bbbc6DtYfzHtkqgzl_mImIBtIXmBpypP3nVgz9GtKq9eOxfczQsWsUv5OBmCBDSF3O6yJA9r7jLOgSo1_MOH1MYai6xd_23FFlTcOvQUUwmnI6EMe3ytIpfuegEPuhXMPY8FCa0tWGhuBx2jtPBzQRQdJW7dzk3rEQX495lhE3cwK_T0PPjDBJ6HaYUoA5sTiF-9S1JfysS5D-Jd7z-m2KNVW8FPz1Zz200U2k2wfAs64NT9NeDPVkEcBJ5GFmOFvCGw4ywosWuQVQx0YxfzF65becLKxddPRS1MC9_-NxxL4ergClbPA2_e2Qwkg2EXWhil6cAwGy2G7C80t2NGN5aP1UL_uH2FQZ8VBdW_R5KvAXZDJsWSJqvn7pinLqTollMoMipbyQA02jaUvIk7senIF-h3f4DHbj90I97dekyzUUcbppKVhBfF6ZsfeFUojbT-GUapjakOwz3uL2dNEXOENUQMn3bsnQmkQABsGQrhQZjnPc-mdEm0PJJz0rK8QdZ2cQHYgo4g";
|
|
|
|
// $ch = curl_init($refreshUrl);
|
|
// curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
|
|
// curl_setopt($ch, CURLOPT_HTTPHEADER, [
|
|
// "Authorization: Basic " . base64_encode($config['apilo']['client-id'] . ":" . $config['apilo']['client-secret']),
|
|
// "Accept: application/json"
|
|
// ]);
|
|
|
|
// $refreshResponse = curl_exec($ch);
|
|
|
|
// if (curl_errno($ch)) {
|
|
// echo 'Błąd cURL: ' . curl_error($ch);
|
|
// } else {
|
|
// $newTokens = json_decode($refreshResponse, true);
|
|
// echo "Nowy access token: " . $newTokens['accessToken'];
|
|
|
|
// // Zapisz nowy access token i refresh token w sesji lub bazie danych
|
|
// // $_SESSION['accessToken'] = $newTokens['accessToken'];
|
|
// // $_SESSION['refreshToken'] = $newTokens['refreshToken'];
|
|
// }
|
|
|
|
// curl_close($ch);
|
|
// exit;
|
|
|
|
// $url = "https://projectpro.apilo.com/rest/auth/token/?grant_type=authorization_code&code=" . $config['apilo']['authorization-code'];
|
|
|
|
// $ch = curl_init( $url );
|
|
// curl_setopt( $ch, CURLOPT_RETURNTRANSFER, true );
|
|
// curl_setopt( $ch, CURLOPT_HTTPHEADER, [
|
|
// "Authorization: Basic " . base64_encode( $config['apilo']['client-id'] . ":" . $config['apilo']['client-secret'] ),
|
|
// "Accept: application/json"
|
|
// ] );
|
|
|
|
// $response = curl_exec($ch);
|
|
|
|
// if( curl_errno( $ch ) ) {
|
|
// echo 'Błąd cURL: ' . curl_error( $ch );
|
|
// } else {
|
|
// echo $response;
|
|
// }
|
|
|
|
// curl_close( $ch );
|
|
|
|
// $data = json_decode($response, true);
|
|
|
|
// $currentDateTime = new DateTime();
|
|
// $tokenExpiryDateTime = DateTime::createFromFormat( DateTime::ATOM, $data['accessTokenExpireAt']);
|
|
|
|
// // Sprawdzamy czy accessToken wygasł
|
|
// if ( $tokenExpiryDateTime <= $currentDateTime) {
|
|
// // Token wygasł, odświeżamy go używając refreshToken
|
|
// // $refreshUrl = "https://projectpro.apilo.com/rest/auth/token/?grant_type=refresh_token&refresh_token=" . $data['refreshToken'];
|
|
|
|
// // curl_setopt( $ch, CURLOPT_URL, $refreshUrl );
|
|
// // curl_setopt( $ch, CURLOPT_HTTPHEADER, [
|
|
// // "Authorization: Basic " . base64_encode( $config['apilo']['client-id'] . ":" . $config['apilo']['client-secret'] ),
|
|
// // "Accept: application/json"
|
|
// // ] );
|
|
|
|
// // $refreshResponse = curl_exec($ch);
|
|
|
|
// // if (curl_errno($ch)) {
|
|
// // echo 'Błąd cURL podczas odświeżania: ' . curl_error($ch);
|
|
// // exit;
|
|
// // }
|
|
|
|
// // $refreshedData = json_decode($refreshResponse, true);
|
|
// echo "Odświeżony token: " . $refreshedData['accessToken'];
|
|
// } else {
|
|
// echo "Token jest ważny.";
|
|
// }
|
|
|
|
// curl_close($ch);
|
|
exit;
|
|
} |