Plugin Directory

Changeset 3029959


Ignore:
Timestamp:
02/01/2024 10:10:18 AM (2 years ago)
Author:
patsatech
Message:
  • Updated the url as per the notification from Elavon.
  • Updated to add support WooCommerce HPOS system.
Location:
sagepay-direct-gateway-for-woocommerce/trunk
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • sagepay-direct-gateway-for-woocommerce/trunk/readme.txt

    r2158322 r3029959  
    22Contributors: patsatech
    33Tags: ecommerce, payment gateway, wordpress, woocommerce,sagepay direct,sagepay go
    4 Requires at least: 4.0
    5 Tested up to: 5.2.3
    6 Stable tag: 1.3.0
     4Requires at least: 6.0
     5Tested up to: 6.4.3
     6Stable tag: 1.3.1
    77License: GPLv2 or later
    88
     
    4343* Updated the plugin to support latest version of WooCommerce 3.7+ and Wordpress 5.2+
    4444* Added support for SagePay Payment Services Directive 2, Strong Customer Authentication and 3D Secure v2
     45
     46= 1.3.1 =
     47* Updated the url as per the notification from Elavon.
     48* Updated to add support WooCommerce HPOS system.
  • sagepay-direct-gateway-for-woocommerce/trunk/sagepaydirect.php

    r2158322 r3029959  
    11<?php
    22/**
    3  * Plugin Name: SagePay Direct Gateway for WooCommerce
     3 * Plugin Name: PatSaTECH's Opayo Direct Gateway for WooCommerce
    44 * Plugin URI: http://www.patsatech.com/
    55 * Description: WooCommerce Plugin for accepting payment through SagePay Direct Gateway.
    6  * Version: 1.3.0
     6 * Version: 1.3.1
    77 * Author: PatSaTECH
    88 * Author URI: http://www.patsatech.com
    99 * Contributors: patsatech
    10  * Requires at least: 4.5
    11  * Tested up to: 5.2.3
    12  * WC requires at least: 3.0.0
    13  * WC tested up to: 3.7.0
     10 * Requires at least: 6.0
     11 * Tested up to: 6.4.3
     12 * WC requires at least: 6.0.0
     13 * WC tested up to: 8.2.2
    1414 *
    1515 * Text Domain: woo-sagepay-patsatech
     
    305305            global $woocommerce;
    306306
    307             $order = new WC_Order($order_id);
     307            $order = wc_get_order( $order_id );
    308308
    309309            if( !empty( WC()->session->get('sagepay_pareq') ) ){
     
    316316              $sagepaydirect_args = array(
    317317                'creq'                => WC()->session->get('sagepay_creq'),
    318                 'threeDSSessionData'  => WC()->session->get('sagepay_vpstxid'),
     318                'threeDSSessionData'  => str_replace(array("{", "}"), "", WC()->session->get('sagepay_vpstxid')),
    319319                'TermUrl'             => $this->notify_url
    320320              );
     
    364364            global $woocommerce;
    365365
    366             $order = new WC_Order($order_id);
     366            $order = wc_get_order( $order_id );
    367367
    368368            $credit_card = preg_replace('/(?<=\d)\s+(?=\d)/', '', trim($_POST['sagepaydirect-card-number']));
     
    517517
    518518            if ($this->mode == 'test') {
    519                 $gateway_url = 'https://test.sagepay.com/gateway/service/vspdirect-register.vsp';
     519                $gateway_url = 'https://sandbox.opayo.eu.elavon.com/gateway/service/vspdirect-register.vsp';
    520520            } elseif ($this->mode == 'live') {
    521                 $gateway_url = 'https://live.sagepay.com/gateway/service/vspdirect-register.vsp';
     521                $gateway_url = 'https://live.opayo.eu.elavon.com/gateway/service/vspdirect-register.vsp';
    522522            }
    523523
     
    543543
    544544                if (isset($resp['Status'])) {
    545                     update_post_meta($order->id, 'Status', $resp['Status']);
     545                    $order->update_meta_data( 'Status', $resp['Status']);
    546546                }
    547547                if (isset($resp['StatusDetail'])) {
    548                     update_post_meta($order->id, 'StatusDetail', $resp['StatusDetail']);
     548                    $order->update_meta_data( 'StatusDetail', $resp['StatusDetail']);
    549549                }
    550550                if (isset($resp['VPSTxId'])) {
    551                     update_post_meta($order->id, 'VPSTxId', $resp['VPSTxId']);
     551                    $order->update_meta_data( 'VPSTxId', $resp['VPSTxId']);
    552552                    WC()->session->set('sagepay_vpstxid', $resp['VPSTxId']);
    553553                }
    554554                if (isset($resp['CAVV'])) {
    555                     update_post_meta($order->id, 'CAVV', $resp['CAVV']);
     555                    $order->update_meta_data( 'CAVV', $resp['CAVV']);
    556556                }
    557557                if (isset($resp['SecurityKey'])) {
    558                     update_post_meta($order->id, 'SecurityKey', $resp['SecurityKey']);
     558                    $order->update_meta_data( 'SecurityKey', $resp['SecurityKey']);
    559559                }
    560560                if (isset($resp['TxAuthNo'])) {
    561                     update_post_meta($order->id, 'TxAuthNo', $resp['TxAuthNo']);
     561                    $order->update_meta_data( 'TxAuthNo', $resp['TxAuthNo']);
    562562                }
    563563                if (isset($resp['AVSCV2'])) {
    564                     update_post_meta($order->id, 'AVSCV2', $resp['AVSCV2']);
     564                    $order->update_meta_data( 'AVSCV2', $resp['AVSCV2']);
    565565                }
    566566                if (isset($resp['AddressResult'])) {
    567                     update_post_meta($order->id, 'AddressResult', $resp['AddressResult']);
     567                    $order->update_meta_data( 'AddressResult', $resp['AddressResult']);
    568568                }
    569569                if (isset($resp['PostCodeResult'])) {
    570                     update_post_meta($order->id, 'PostCodeResult', $resp['PostCodeResult']);
     570                    $order->update_meta_data( 'PostCodeResult', $resp['PostCodeResult']);
    571571                }
    572572                if (isset($resp['CV2Result'])) {
    573                     update_post_meta($order->id, 'CV2Result', $resp['CV2Result']);
     573                    $order->update_meta_data( 'CV2Result', $resp['CV2Result']);
    574574                }
    575575                if (isset($resp['3DSecureStatus'])) {
    576                     update_post_meta($order->id, '3DSecureStatus', $resp['3DSecureStatus']);
     576                    $order->update_meta_data( '3DSecureStatus', $resp['3DSecureStatus']);
    577577                }
    578578                if(isset($orderid)){
    579                     update_post_meta($order_id, 'VendorTxCode', $orderid );
    580                 }
     579                    $order->update_meta_data( 'VendorTxCode', $orderid );
     580                }
     581
     582                $order->save(); // Don't forget to save the changes.
    581583
    582584                if ($resp['Status'] == "OK" || $resp['Status'] == "REGISTERED" || $resp['Status'] == "AUTHENTICATED") {
     
    644646
    645647            if ( ( isset($_REQUEST['MD']) && isset($_REQUEST['PaRes']) ) || isset($_REQUEST['cres']) ) {
    646                 $order = new WC_Order(WC()->session->get('sagepay_oid'));
     648                $order = wc_get_order( WC()->session->get('sagepay_oid') );
    647649
    648650                if( isset($_REQUEST['cres']) ){
     
    668670
    669671                if ($this->mode == 'test') {
    670                     $gateway_url = 'https://test.sagepay.com/gateway/service/direct3dcallback.vsp';
     672                    $gateway_url = 'https://sandbox.opayo.eu.elavon.com/gateway/service/direct3dcallback.vsp';
    671673                } elseif ($this->mode == 'live') {
    672                     $gateway_url = 'https://live.sagepay.com/gateway/service/direct3dcallback.vsp';
     674                    $gateway_url = 'https://live.opayo.eu.elavon.com/gateway/service/direct3dcallback.vsp';
    673675                }
    674676
     
    690692
    691693                    if (isset($resp['Status'])) {
    692                         update_post_meta($order->id, 'Status', $resp['Status']);
     694                        $order->update_meta_data( 'Status', $resp['Status']);
    693695                    }
    694696                    if (isset($resp['StatusDetail'])) {
    695                         update_post_meta($order->id, 'StatusDetail', $resp['StatusDetail']);
     697                        $order->update_meta_data( 'StatusDetail', $resp['StatusDetail']);
    696698                    }
    697699                    if (isset($resp['VPSTxId'])) {
    698                         update_post_meta($order->id, 'VPSTxId', $resp['VPSTxId']);
     700                        $order->update_meta_data( 'VPSTxId', $resp['VPSTxId']);
    699701                    }
    700702                    if (isset($resp['CAVV'])) {
    701                         update_post_meta($order->id, 'CAVV', $resp['CAVV']);
     703                        $order->update_meta_data( 'CAVV', $resp['CAVV']);
    702704                    }
    703705                    if (isset($resp['SecurityKey'])) {
    704                         update_post_meta($order->id, 'SecurityKey', $resp['SecurityKey']);
     706                        $order->update_meta_data( 'SecurityKey', $resp['SecurityKey']);
    705707                    }
    706708                    if (isset($resp['TxAuthNo'])) {
    707                         update_post_meta($order->id, 'TxAuthNo', $resp['TxAuthNo']);
     709                        $order->update_meta_data( 'TxAuthNo', $resp['TxAuthNo']);
    708710                    }
    709711                    if (isset($resp['AVSCV2'])) {
    710                         update_post_meta($order->id, 'AVSCV2', $resp['AVSCV2']);
     712                        $order->update_meta_data( 'AVSCV2', $resp['AVSCV2']);
    711713                    }
    712714                    if (isset($resp['AddressResult'])) {
    713                         update_post_meta($order->id, 'AddressResult', $resp['AddressResult']);
     715                        $order->update_meta_data( 'AddressResult', $resp['AddressResult']);
    714716                    }
    715717                    if (isset($resp['PostCodeResult'])) {
    716                         update_post_meta($order->id, 'PostCodeResult', $resp['PostCodeResult']);
     718                        $order->update_meta_data( 'PostCodeResult', $resp['PostCodeResult']);
    717719                    }
    718720                    if (isset($resp['CV2Result'])) {
    719                         update_post_meta($order->id, 'CV2Result', $resp['CV2Result']);
     721                        $order->update_meta_data( 'CV2Result', $resp['CV2Result']);
    720722                    }
    721723                    if (isset($resp['3DSecureStatus'])) {
    722                         update_post_meta($order->id, '3DSecureStatus', $resp['3DSecureStatus']);
     724                        $order->update_meta_data( '3DSecureStatus', $resp['3DSecureStatus']);
    723725                    }
    724726                    if (WC()->session->get('sagepay_vtc') != '') {
    725                         update_post_meta($order->id, 'VendorTxCode', WC()->session->get('sagepay_vtc'));
    726                     }
     727                        $order->update_meta_data( 'VendorTxCode', WC()->session->get('sagepay_vtc'));
     728                    }
     729
     730                    $order->save(); // Don't forget to save the changes.
    727731
    728732                    if ($resp['Status'] == "OK" || $resp['Status'] == "REGISTERED" || $resp['Status'] == "AUTHENTICATED") {
     
    922926    }
    923927    add_filter('woocommerce_payment_gateways', 'add_sagepaydirect_gateway');
     928
     929
     930    add_action('before_woocommerce_init', function(){
     931
     932        if ( class_exists( \Automattic\WooCommerce\Utilities\FeaturesUtil::class ) ) {
     933            \Automattic\WooCommerce\Utilities\FeaturesUtil::declare_compatibility( 'custom_order_tables', __FILE__, true );
     934   
     935        }
     936   
     937    });
    924938}
Note: See TracChangeset for help on using the changeset viewer.