Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- bool(false)
- 1 exception(s):
- Exception #0 (Exception): Warning: Invalid argument supplied for foreach() in /var/www/html/primary/vendor/veriteworks/paygent-connect/src/PaygentConnect/Response/Parser.php on line 27
- Exception #0 (Exception): Warning: Invalid argument supplied for foreach() in /var/www/html/primary/vendor/veriteworks/paygent-connect/src/PaygentConnect/Response/Parser.php on line 27
- #0 /var/www/html/primary/vendor/veriteworks/paygent-connect/src/PaygentConnect/Response/Parser.php(27): MagentoFrameworkAppErrorHandler->handler(2, 'Invalid argumen...', '/var/www/html/p...', 27, Array)
- #1 /var/www/html/primary/vendor/veriteworks/paygent-connect/src/PaygentConnect/Client/Curl.php(109): PaygentConnectResponseParser->parse()
- #2 /var/www/html/primary/vendor/veriteworks/paygent-connect/src/PaygentConnect/PaygentConnect.php(93): PaygentConnectClientCurl->execute()
- #3 /var/www/html/primary/vendor/veriteworks/paygent/Model/Card/Lists.php(66): PaygentConnectPaygentConnect->post()
- #4 /var/www/html/primary/vendor/veriteworks/paygent/Model/Config/CcProvider.php(174): VeriteworksPaygentModelCardLists->loadRegisteredCards()
- #5 /var/www/html/primary/vendor/veriteworks/paygent/Model/Config/CcProvider.php(78): VeriteworksPaygentModelConfigCcProvider->loadCardInfo()
- #6 /var/www/html/primary/vendor/magento/framework/ObjectManager/Factory/AbstractFactory.php(111): VeriteworksPaygentModelConfigCcProvider->__construct(Object(MagentoPaymentModelCcConfig), Object(MagentoPaymentHelperDataInterceptor), Object(VeriteworksPaygentGatewayConfigCc), Object(VeriteworksPaygentHelperData), Object(VeriteworksPaygentModelSourcePaymentClass), Object(VeriteworksPaygentModelSourceSplitCount), Object(VeriteworksPaygentModelCardLists))
- #7 /var/www/html/primary/vendor/magento/framework/ObjectManager/Factory/Dynamic/Developer.php(66): MagentoFrameworkObjectManagerFactoryAbstractFactory->createObject('Veriteworks\Pay...', Array)
- #8 /var/www/html/primary/vendor/magento/framework/ObjectManager/ObjectManager.php(70): MagentoFrameworkObjectManagerFactoryDynamicDeveloper->create('Veriteworks\Pay...')
- #9 /var/www/html/primary/vendor/magento/framework/ObjectManager/Factory/AbstractFactory.php(180): MagentoFrameworkObjectManagerObjectManager->get('Veriteworks\Pay...')
- #10 /var/www/html/primary/vendor/magento/framework/ObjectManager/Factory/AbstractFactory.php(156): MagentoFrameworkObjectManagerFactoryAbstractFactory->parseArray(Array)
- #11 /var/www/html/primary/vendor/magento/framework/ObjectManager/Factory/AbstractFactory.php(230): MagentoFrameworkObjectManagerFactoryAbstractFactory->resolveArgument(Array, NULL, NULL, 'configProviders', 'Magento\Checkou...')
- #12 /var/www/html/primary/vendor/magento/framework/ObjectManager/Factory/Dynamic/Developer.php(34): MagentoFrameworkObjectManagerFactoryAbstractFactory->resolveArgumentsInRuntime('Magento\Checkou...', Array, Array)
- #13 /var/www/html/primary/vendor/magento/framework/ObjectManager/Factory/Dynamic/Developer.php(59): MagentoFrameworkObjectManagerFactoryDynamicDeveloper->_resolveArguments('Magento\Checkou...', Array, Array)
- #14 /var/www/html/primary/vendor/magento/framework/ObjectManager/ObjectManager.php(70): MagentoFrameworkObjectManagerFactoryDynamicDeveloper->create('Magento\Checkou...')
- #15 /var/www/html/primary/vendor/magento/framework/ObjectManager/Factory/AbstractFactory.php(144): MagentoFrameworkObjectManagerObjectManager->get('Magento\Checkou...')
- #16 /var/www/html/primary/vendor/magento/framework/ObjectManager/Factory/AbstractFactory.php(230): MagentoFrameworkObjectManagerFactoryAbstractFactory->resolveArgument(Array, 'Magento\Checkou...', NULL, 'configProvider', 'Magento\Checkou...')
- #17 /var/www/html/primary/vendor/magento/framework/ObjectManager/Factory/Dynamic/Developer.php(34): MagentoFrameworkObjectManagerFactoryAbstractFactory->resolveArgumentsInRuntime('Magento\Checkou...', Array, Array)
- #18 /var/www/html/primary/vendor/magento/framework/ObjectManager/Factory/Dynamic/Developer.php(59): MagentoFrameworkObjectManagerFactoryDynamicDeveloper->_resolveArguments('Magento\Checkou...', Array, Array)
- #19 /var/www/html/primary/vendor/magento/framework/ObjectManager/ObjectManager.php(56): MagentoFrameworkObjectManagerFactoryDynamicDeveloper->create('Magento\Checkou...', Array)
- #20 /var/www/html/primary/vendor/magento/framework/View/Element/BlockFactory.php(45): MagentoFrameworkObjectManagerObjectManager->create('Magento\Checkou...', Array)
- #21 /var/www/html/primary/vendor/magento/framework/View/Layout/Generator/Block.php(269): MagentoFrameworkViewElementBlockFactory->createBlock('Magento\Checkou...', Array)
- #22 /var/www/html/primary/vendor/magento/framework/View/Layout/Generator/Block.php(249): MagentoFrameworkViewLayoutGeneratorBlock->getBlockInstance('Magento\Checkou...', Array)
- #23 /var/www/html/primary/vendor/magento/framework/View/Layout/Generator/Block.php(227): MagentoFrameworkViewLayoutGeneratorBlock->createBlock('Magento\Checkou...', 'checkout.cart.s...', Array)
- #24 /var/www/html/primary/vendor/magento/framework/View/Layout/Generator/Block.php(135): MagentoFrameworkViewLayoutGeneratorBlock->generateBlock(Object(MagentoFrameworkViewLayoutScheduledStructure), Object(MagentoFrameworkViewLayoutDataStructure), 'checkout.cart.s...')
- #25 /var/www/html/primary/vendor/magento/framework/View/Layout/GeneratorPool.php(80): MagentoFrameworkViewLayoutGeneratorBlock->process(Object(MagentoFrameworkViewLayoutReaderContext), Object(MagentoFrameworkViewLayoutGeneratorContext))
- #26 /var/www/html/primary/vendor/magento/framework/View/Layout.php(343): MagentoFrameworkViewLayoutGeneratorPool->process(Object(MagentoFrameworkViewLayoutReaderContext), Object(MagentoFrameworkViewLayoutGeneratorContext))
- #27 /var/www/html/primary/generated/code/Magento/Framework/View/Layout/Interceptor.php(89): MagentoFrameworkViewLayout->generateElements()
- #28 /var/www/html/primary/vendor/magento/framework/View/Layout/Builder.php(129): MagentoFrameworkViewLayoutInterceptor->generateElements()
- #29 /var/www/html/primary/vendor/magento/framework/View/Page/Builder.php(55): MagentoFrameworkViewLayoutBuilder->generateLayoutBlocks()
- #30 /var/www/html/primary/vendor/magento/framework/View/Layout/Builder.php(65): MagentoFrameworkViewPageBuilder->generateLayoutBlocks()
- #31 /var/www/html/primary/vendor/magento/framework/View/Page/Config.php(208): MagentoFrameworkViewLayoutBuilder->build()
- #32 /var/www/html/primary/vendor/magento/framework/View/Page/Config.php(228): MagentoFrameworkViewPageConfig->build()
- #33 /var/www/html/primary/vendor/magento/module-checkout/Controller/Cart/Index.php(55): MagentoFrameworkViewPageConfig->getTitle()
- #34 /var/www/html/primary/vendor/magento/framework/Interception/Interceptor.php(58): MagentoCheckoutControllerCartIndex->execute()
- #35 /var/www/html/primary/vendor/magento/framework/Interception/Interceptor.php(138): MagentoCheckoutControllerCartIndexInterceptor->___callParent('execute', Array)
- #36 /var/www/html/primary/vendor/magento/framework/Interception/Interceptor.php(153): MagentoCheckoutControllerCartIndexInterceptor->MagentoFrameworkInterception{closure}()
- #37 /var/www/html/primary/generated/code/Magento/Checkout/Controller/Cart/Index/Interceptor.php(26): MagentoCheckoutControllerCartIndexInterceptor->___callPlugins('execute', Array, Array)
- #38 /var/www/html/primary/vendor/magento/framework/App/Action/Action.php(107): MagentoCheckoutControllerCartIndexInterceptor->execute()
- #39 /var/www/html/primary/vendor/magento/framework/Interception/Interceptor.php(58): MagentoFrameworkAppActionAction->dispatch(Object(MagentoFrameworkAppRequestHttp))
- #40 /var/www/html/primary/vendor/magento/framework/Interception/Interceptor.php(138): MagentoCheckoutControllerCartIndexInterceptor->___callParent('dispatch', Array)
- #41 /var/www/html/primary/vendor/magento/framework/Interception/Interceptor.php(153): MagentoCheckoutControllerCartIndexInterceptor->MagentoFrameworkInterception{closure}(Object(MagentoFrameworkAppRequestHttp))
- #42 /var/www/html/primary/generated/code/Magento/Checkout/Controller/Cart/Index/Interceptor.php(39): MagentoCheckoutControllerCartIndexInterceptor->___callPlugins('dispatch', Array, Array)
- #43 /var/www/html/primary/vendor/magento/framework/App/FrontController.php(55): MagentoCheckoutControllerCartIndexInterceptor->dispatch(Object(MagentoFrameworkAppRequestHttp))
- #44 /var/www/html/primary/vendor/magento/framework/Interception/Interceptor.php(58): MagentoFrameworkAppFrontController->dispatch(Object(MagentoFrameworkAppRequestHttp))
- #45 /var/www/html/primary/vendor/magento/framework/Interception/Interceptor.php(138): MagentoFrameworkAppFrontControllerInterceptor->___callParent('dispatch', Array)
- #46 /var/www/html/primary/vendor/magento/module-store/App/FrontController/Plugin/RequestPreprocessor.php(94): MagentoFrameworkAppFrontControllerInterceptor->MagentoFrameworkInterception{closure}(Object(MagentoFrameworkAppRequestHttp))
- #47 /var/www/html/primary/vendor/magento/framework/Interception/Interceptor.php(135): MagentoStoreAppFrontControllerPluginRequestPreprocessor->aroundDispatch(Object(MagentoFrameworkAppFrontControllerInterceptor), Object(Closure), Object(MagentoFrameworkAppRequestHttp))
- #48 /var/www/html/primary/vendor/magento/module-page-cache/Model/App/FrontController/BuiltinPlugin.php(69): MagentoFrameworkAppFrontControllerInterceptor->MagentoFrameworkInterception{closure}(Object(MagentoFrameworkAppRequestHttp))
- #49 /var/www/html/primary/vendor/magento/framework/Interception/Interceptor.php(135): MagentoPageCacheModelAppFrontControllerBuiltinPlugin->aroundDispatch(Object(MagentoFrameworkAppFrontControllerInterceptor), Object(Closure), Object(MagentoFrameworkAppRequestHttp))
- #50 /var/www/html/primary/app/code/Infortis/Cgen/Plugin/Magento/Framework/App/FrontController.php(32): MagentoFrameworkAppFrontControllerInterceptor->MagentoFrameworkInterception{closure}(Object(MagentoFrameworkAppRequestHttp))
- #51 /var/www/html/primary/vendor/magento/framework/Interception/Interceptor.php(135): InfortisCgenPluginMagentoFrameworkAppFrontController->aroundDispatch(Object(MagentoFrameworkAppFrontControllerInterceptor), Object(Closure), Object(MagentoFrameworkAppRequestHttp))
- #52 /var/www/html/primary/vendor/magento/framework/Interception/Interceptor.php(153): MagentoFrameworkAppFrontControllerInterceptor->MagentoFrameworkInterception{closure}(Object(MagentoFrameworkAppRequestHttp))
- #53 /var/www/html/primary/generated/code/Magento/Framework/App/FrontController/Interceptor.php(26): MagentoFrameworkAppFrontControllerInterceptor->___callPlugins('dispatch', Array, NULL)
- #54 /var/www/html/primary/vendor/magento/framework/App/Http.php(135): MagentoFrameworkAppFrontControllerInterceptor->dispatch(Object(MagentoFrameworkAppRequestHttp))
- #55 /var/www/html/primary/generated/code/Magento/Framework/App/Http/Interceptor.php(24): MagentoFrameworkAppHttp->launch()
- #56 /var/www/html/primary/vendor/magento/framework/App/Bootstrap.php(257): MagentoFrameworkAppHttpInterceptor->launch()
- #57 /var/www/html/primary/pub/index.php(37): MagentoFrameworkAppBootstrap->run(Object(MagentoFrameworkAppHttpInterceptor))
- #58 {main}
- namespace PaygentConnectClient;
- use PaygentConnectResponseValidator;
- use PaygentConnectConfigConfig;
- use PaygentConnectResponseParser;
- class Curl
- {
- /**
- *
- */
- const KEYSTORE_PASS = "changeit";
- /**
- * @var resource
- */
- private $client;
- /**
- * @var array
- */
- private $options = [];
- /**
- * @var string
- */
- private $data = '';
- private $config;
- private $result;
- /**
- * Curl constructor.
- * @param Config $config
- * @param Config $const
- * @param array $options
- */
- public function __construct(Config $config, $url, $options)
- {
- $this->config = $config;
- $this->options = $options;
- $result = true;
- $this->client = curl_init($url);
- $result = curl_setopt($this->client, CURLOPT_HTTP_VERSION, CURL_HTTP_VERSION_1_0 );
- $result = curl_setopt($this->client, CURLOPT_RETURNTRANSFER, true);
- $result = curl_setopt($this->client, CURLOPT_POST, true);
- $result = curl_setopt($this->client, CURLOPT_HEADER, true);
- $result = curl_setopt($this->client, CURLOPT_SSL_VERIFYHOST, false);
- //if(!$this->options['noCert']) {
- $result = curl_setopt($this->client, CURLOPT_SSLCERT, $this->options['clientCertificatePath']);
- $result = curl_setopt($this->client, CURLOPT_SSLKEYPASSWD, self::KEYSTORE_PASS);
- //}
- //if(!$this->options['noCaCert']) {
- // $result = curl_setopt($this->client, CURLOPT_SSL_VERIFYPEER, false);
- //} else {
- $result = curl_setopt($this->client, CURLOPT_SSL_VERIFYPEER, true);
- $result = curl_setopt($this->client, CURLOPT_CAINFO, $this->options['caCertificatePath']);
- //}
- $result = curl_setopt($this->client, CURLOPT_TIMEOUT, $this->options['timeout']);
- $result = curl_setopt($this->client, CURLOPT_CONNECTTIMEOUT, $this->options['proxyTimeout']);
- if(!$result) {
- throw new BadFunctionCallException('Connection client initialize error.');
- }
- }
- /**
- * @param $data
- * @return $this
- */
- public function setRequest($data)
- {
- $this->data = $data;
- return $this;
- }
- /**
- * @return mixed
- */
- public function execute()
- {
- $query = $this->data;
- $length = strlen($query);
- $header =[
- $this->options['contentType'],
- $this->options['encoding'],
- $this->options['contentLength'] . ': ' . $length,
- $this->options['userAgent'] . ": curl_php",
- ];
- curl_setopt($this->client, CURLOPT_HTTPHEADER, $header);
- curl_setopt($this->client, CURLOPT_POSTFIELDS, $query);
- $result = curl_exec($this->client);
- $validator = new Validator();
- $returnCode = '0';
- if($result === false && curl_errno($this->client) != 0) {
- $returnCode = $validator->validate($this->client);
- }
- $parser = new Parser($result);
- $parser->parse();
- $this->result = $parser->getBody();
- return $returnCode;
- }
- public function getResult()
- {
- return $this->result;
- }
- }
- class Parser
- {
- private $response;
- private $data;
- const LINE_DELIMITER = "rn";
- const INITIAL_HTTP_STATUS = '-1';
- public function __construct($response)
- {
- $this->response = $response;
- }
- public function parse()
- {
- $lines = mb_split(self::LINE_DELIMITER, $this->response);
- $bodyStart = 0;
- $returnCode = self::INITIAL_HTTP_STATUS;
- foreach($lines as $i => $line) {
- if (is_null($line) || strlen($line) == 0 || $line === '') {
- break;
- }
- $bodyStart += strlen($line) + strlen(self::LINE_DELIMITER);
- if ($returnCode === self::INITIAL_HTTP_STATUS) {
- $returnCode = $this->parseStatus($line);
- if ($returnCode === true) {
- continue;
- }
- return $returnCode;
- }
- if (!$this->parseHeader($line)) {
- continue;
- }
- }
- $body = substr($this->response, $bodyStart);
- $this->parseBody($body);
- return $returnCode;
- }
- public function getHeader()
- {
- return $this->data['header'];
- }
- public function getBody()
- {
- return $this->data['body'];
- }
- private function parseStatus($str)
- {
- return true;
- }
- private function parseHeader($str)
- {
- return true;
- }
- private function parseBody($str)
- {
- $str = mb_convert_encoding($str, 'utf-8', 'sjis-win');
- $body = explode("rn", $str);
- $headers = [];
- foreach ($body as $line) {
- if(preg_match('/_html/', $line)) {
- $pos = strpos($str, '_html');
- $length = strlen($str);
- $html = substr($str, $pos, $length);
- list($key, $value) = explode('=', $html, 2);
- list($key2, $value2) = explode('=', $line, 2);
- $this->data['body'][$key2] = $value;
- break;
- } else {
- if(preg_match('/=/', $line)) {
- list($key, $value) = explode('=', $line, 2);
- $this->data['body'][$key] = $value;
- } else {
- $line = preg_replace('/"/', '', $line);
- $lineArray = explode(',', $line);
- if(strlen($line) == 0) {
- continue;
- }
- if($lineArray[0] == 2) {
- $headers = $lineArray;
- continue;
- }
- if($lineArray[0] == 3) {
- $row = [];
- foreach($lineArray as $key => $field) {
- if($key == 0) {
- continue;
- }
- $row[$headers[$key]] = $field;
- }
- $this->data['body'][] = $row;
- }
- }
- }
- }
- return true;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement