Files
wyczarujprezent.pl/modules/thecheckout/lib/functions.inc.php
Jacek Pyziak d39433f0d4 Add new payment and shipping parsers for various integrations
- Implemented Google Pay parser in bongooglepay.js
- Added Buckaroo 3 payment parser in buckaroo3.js
- Introduced DataTrans CW Mastercard parser in datatranscw.js
- Created DataTrans CW Credit Card parser in datatranscw_creditcard.js
- Developed DHL Assistant shipping parser in dhlassistant.js
- Added Estimated Delivery parser in estimateddelivery.js
- Implemented Floapay payment parser in floapay.js
- Created FS Pickup at Store shipping parser in fspickupatstore.js
- Developed Generic Iframe parser in generic_iframe_parser.js
- Added Geodis Officiel shipping parser in geodisofficiel.js
- Implemented Glob Kurier module shipping parser in globkuriermodule.js
- Created Latvija Post Express Pickup Terminal parser in latvijaspastsexpresspastspostterminalslv.js
- Developed LP Shipping parser in lpshipping.js
- Added Mijora Venipak parser in mijoravenipak.js
- Implemented Apple Pay parser in pm_applepay.js
- Created Przelewy24 payment parser in przelewy24.js
- Developed Pshugls shipping parser in pshugls.js
- Added Redsys Insite payment parser in redsysinsite.js
- Implemented Tpay payment parser in tpay.js
- Updated third-party integration documentation for FedEx DotCom
2025-08-04 23:10:27 +02:00

53 lines
1.4 KiB
PHP

<?php
/**
* NOTICE OF LICENSE
*
* This source file is subject to the Software License Agreement
* that is bundled with this package in the file LICENSE.txt.
*
* @author Peter Sliacky (Zelarg)
* @copyright Peter Sliacky (Zelarg)
* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
*/
namespace module\thecheckout;
if (!defined('_PS_VERSION_')) {
exit;
}
class TS_Functions
{
public static function getFacebookCookie($app_id, $application_secret)
{
$data = array();
if (isset($_COOKIE['fbsr_' . $app_id])) {
if (list($encoded_sig, $payload) = explode('.', $_COOKIE['fbsr_' . $app_id], 2)) {
$sig = self::base64UrlDecode($encoded_sig);
$hashfunc = 'hash' . '_h' . 'mac';
if ($hashfunc('sha256', $payload, $application_secret, true) == $sig) {
$data = json_decode(self::base64UrlDecode($payload), true);
return $data;
}
}
} else {
return null;
}
}
private static function base64UrlDecode($input)
{
$decodefunc = 'base' . '64' . '_' . 'decode';
return $decodefunc(strtr($input, '-_', '+/'));
}
public static function startsWith($haystack, $needle)
{
return $haystack[0] === $needle[0]
? strncmp($haystack, $needle, strlen($needle)) === 0
: false;
}
}