HEX
Server: LiteSpeed
System: Linux s917.lon1.mysecurecloudhost.com 4.18.0-477.21.1.lve.1.el8.x86_64 #1 SMP Tue Sep 5 23:08:35 UTC 2023 x86_64
User: assibfaf (3034)
PHP: 7.4.33
Disabled: NONE
Upload Files
File: /home/assibfaf/public_html/prox-controllers/Api/Checkout.php
<?php 
/**
 * @package    Proxim
 * @author     Davison Pro <davisonpro.coder@gmail.com | https://davisonpro.dev>
 * @copyright  2019 Proxim
 * @version    1.0.0
 * @since      File available since Release 1.0.0
 */

namespace Proxim\Api;

use Db;
use Proxim\Database\DbQuery;
use Proxim\Route;
use Proxim\Configuration;
use Proxim\Tools;
use Proxim\Validate;
use Proxim\Currency;
use Proxim\Hook;
use Proxim\Mail;
use Proxim\Module\Module;
use Proxim\Site\Site;
use Proxim\User\Employee;
use Proxim\Order\Order;
use Proxim\User\Customer;
use Proxim\Order\PayPalPayment;
use Proxim\Order\AdditionalService;
use Proxim\Util\DateUtils;
use Proxim\Util\ArrayUtils;

class Checkout extends Route {
    public function verifyPayment( $paymentMethod ) {
        $app = $this->app;
        $payload = $app->request->post();
        $params = $app->request->get();

        $handle = ArrayUtils::has($payload, 'handle') ? ArrayUtils::get($payload, 'handle'): ArrayUtils::get($params, 'handle');
        $nodeId = ArrayUtils::has($payload, 'nodeId') ? ArrayUtils::get($payload, 'nodeId'): ArrayUtils::get($params, 'nodeId');

        $paymentModule = Module::getInstanceByName($paymentMethod);
        if(!Validate::isLoadedObject($paymentModule)) {
            return $app->response([
				"success" => false
			]);	
        }

        if(!$paymentModule->isActive()) {
            return $app->response([
				"error" => false
			]);
        }

        $payload['payment_method'] = $paymentMethod;

        if(method_exists($paymentModule, 'verifyPayment')) {
            $paymentModule->verifyPayment($nodeId, $handle, $payload);
        }
        
        return $app->response([
            'success' => true
        ]);
    }
}