Plugin Directory

Changeset 3060848


Ignore:
Timestamp:
03/28/2024 11:57:46 PM (12 months ago)
Author:
kilbot
Message:

Update to version 1.4.16 from GitHub

Location:
woocommerce-pos
Files:
16 edited
1 copied

Legend:

Unmodified
Added
Removed
  • woocommerce-pos/tags/1.4.16/includes/Form_Handler.php

    r3053833 r3060848  
    3636        global $wp;
    3737
    38         if ( woocommerce_pos_request() && isset( $_POST['woocommerce_pay'], $_GET['key'], $_GET['token'] ) ) {
     38        if ( woocommerce_pos_request() && isset( $_POST['woocommerce_pay'], $_GET['key'] ) ) {
    3939            $order_id  = absint( $wp->query_vars['order-pay'] );
    4040            $order     = wc_get_order( $order_id );
     
    5959            }
    6060
     61            // Check for 'wcpos_jwt' and fall back to 'token' if not present.
     62            // remove 'token' when wcpos_jwt is fully implemented.
     63            $token_key = isset( $_GET['wcpos_jwt'] ) ? 'wcpos_jwt' : ( isset( $_GET['token'] ) ? 'token' : null );
     64
     65            if ( $token_key === null || ! isset( $_GET[ $token_key ] ) ) {
     66                wp_die(
     67                    esc_html__( 'Token not provided.', 'woocommerce-pos' ),
     68                    esc_html__( 'Error', 'woocommerce-pos' ),
     69                    array( 'response' => 403 )
     70                );
     71            }
     72
    6173            // Verify the cashier is authorized to access the order.
    62             $provided_token = sanitize_text_field( wp_unslash( $_GET['token'] ) );
     74            $provided_token = sanitize_text_field( wp_unslash( $_GET[ $token_key ] ) );
    6375            $auth = AuthService::instance();
    6476            $user = $auth->validate_token( $provided_token );
  • woocommerce-pos/tags/1.4.16/includes/Templates/Payment.php

    r3020668 r3060848  
    154154             */
    155155            wp_set_current_user( $order->get_customer_id() );
     156            add_filter( 'nonce_user_logged_out', array( $this, 'nonce_user_logged_out' ), 10, 2 );
    156157
    157158            // create nonce for customer
     
    251252
    252253    /**
     254     * Fix: when checking out as Guest on the desktop application, WordPress gets a $uid from the
     255     * session, eg: 't_8b04f8283e7edc5aeee2867c89dd06'. This causes the nonce check to fail.
     256     */
     257    public function nonce_user_logged_out( $uid, $action ) {
     258        if ( $action === 'woocommerce-pay' ) {
     259            return 0;
     260        }
     261        return $uid;
     262    }
     263
     264    /**
    253265     * Custom version of wp_create_nonce that uses the customer ID.
    254266     */
  • woocommerce-pos/tags/1.4.16/readme.txt

    r3057893 r3060848  
    44Requires at least: 5.6
    55Tested up to: 6.5
    6 Stable tag: 1.4.15
     6Stable tag: 1.4.16
    77License: GPL-3.0
    88License URI: http://www.gnu.org/licenses/gpl-3.0.html
     
    8080
    8181= 1.4.16 - 2024/03/22 =
    82 * Fix: namespace checkout token, this may help some situations where checkout is not completing
     82* Fix: nonce check failing for Guest orders when checking out with the desktop application
    8383
    8484= 1.4.15 - 2024/03/20 =
  • woocommerce-pos/tags/1.4.16/vendor/autoload.php

    r3055706 r3060848  
    2323require_once __DIR__ . '/composer/autoload_real.php';
    2424
    25 return ComposerAutoloaderInitead8fb0d3bd5df28b924c8b8d86975cd::getLoader();
     25return ComposerAutoloaderInitad4433f3e98ff755eb071679fbd4aec4::getLoader();
  • woocommerce-pos/tags/1.4.16/vendor/composer/autoload_real.php

    r3055706 r3060848  
    33// autoload_real.php @generated by Composer
    44
    5 class ComposerAutoloaderInitead8fb0d3bd5df28b924c8b8d86975cd
     5class ComposerAutoloaderInitad4433f3e98ff755eb071679fbd4aec4
    66{
    77    private static $loader;
     
    2323        }
    2424
    25         spl_autoload_register(array('ComposerAutoloaderInitead8fb0d3bd5df28b924c8b8d86975cd', 'loadClassLoader'), true, true);
     25        spl_autoload_register(array('ComposerAutoloaderInitad4433f3e98ff755eb071679fbd4aec4', 'loadClassLoader'), true, true);
    2626        self::$loader = $loader = new \Composer\Autoload\ClassLoader(\dirname(__DIR__));
    27         spl_autoload_unregister(array('ComposerAutoloaderInitead8fb0d3bd5df28b924c8b8d86975cd', 'loadClassLoader'));
     27        spl_autoload_unregister(array('ComposerAutoloaderInitad4433f3e98ff755eb071679fbd4aec4', 'loadClassLoader'));
    2828
    2929        require __DIR__ . '/autoload_static.php';
    30         call_user_func(\Composer\Autoload\ComposerStaticInitead8fb0d3bd5df28b924c8b8d86975cd::getInitializer($loader));
     30        call_user_func(\Composer\Autoload\ComposerStaticInitad4433f3e98ff755eb071679fbd4aec4::getInitializer($loader));
    3131
    3232        $loader->register(true);
    3333
    34         $filesToLoad = \Composer\Autoload\ComposerStaticInitead8fb0d3bd5df28b924c8b8d86975cd::$files;
     34        $filesToLoad = \Composer\Autoload\ComposerStaticInitad4433f3e98ff755eb071679fbd4aec4::$files;
    3535        $requireFile = \Closure::bind(static function ($fileIdentifier, $file) {
    3636            if (empty($GLOBALS['__composer_autoload_files'][$fileIdentifier])) {
  • woocommerce-pos/tags/1.4.16/vendor/composer/autoload_static.php

    r3055706 r3060848  
    55namespace Composer\Autoload;
    66
    7 class ComposerStaticInitead8fb0d3bd5df28b924c8b8d86975cd
     7class ComposerStaticInitad4433f3e98ff755eb071679fbd4aec4
    88{
    99    public static $files = array (
     
    330330    {
    331331        return \Closure::bind(function () use ($loader) {
    332             $loader->prefixLengthsPsr4 = ComposerStaticInitead8fb0d3bd5df28b924c8b8d86975cd::$prefixLengthsPsr4;
    333             $loader->prefixDirsPsr4 = ComposerStaticInitead8fb0d3bd5df28b924c8b8d86975cd::$prefixDirsPsr4;
    334             $loader->prefixesPsr0 = ComposerStaticInitead8fb0d3bd5df28b924c8b8d86975cd::$prefixesPsr0;
    335             $loader->classMap = ComposerStaticInitead8fb0d3bd5df28b924c8b8d86975cd::$classMap;
     332            $loader->prefixLengthsPsr4 = ComposerStaticInitad4433f3e98ff755eb071679fbd4aec4::$prefixLengthsPsr4;
     333            $loader->prefixDirsPsr4 = ComposerStaticInitad4433f3e98ff755eb071679fbd4aec4::$prefixDirsPsr4;
     334            $loader->prefixesPsr0 = ComposerStaticInitad4433f3e98ff755eb071679fbd4aec4::$prefixesPsr0;
     335            $loader->classMap = ComposerStaticInitad4433f3e98ff755eb071679fbd4aec4::$classMap;
    336336
    337337        }, null, ClassLoader::class);
  • woocommerce-pos/tags/1.4.16/vendor/composer/installed.php

    r3055706 r3060848  
    22    'root' => array(
    33        'name' => 'wcpos/woocommerce-pos',
    4         'pretty_version' => 'v1.4.15',
    5         'version' => '1.4.15.0',
    6         'reference' => '0e20731b158cf9c09378807a37f0e4208d68a5e5',
     4        'pretty_version' => 'v1.4.16',
     5        'version' => '1.4.16.0',
     6        'reference' => '4a1217212e913f8ef7fefb3a6aa79d97f9ab6a73',
    77        'type' => 'wordpress-plugin',
    88        'install_path' => __DIR__ . '/../../',
     
    9090        ),
    9191        'wcpos/woocommerce-pos' => array(
    92             'pretty_version' => 'v1.4.15',
    93             'version' => '1.4.15.0',
    94             'reference' => '0e20731b158cf9c09378807a37f0e4208d68a5e5',
     92            'pretty_version' => 'v1.4.16',
     93            'version' => '1.4.16.0',
     94            'reference' => '4a1217212e913f8ef7fefb3a6aa79d97f9ab6a73',
    9595            'type' => 'wordpress-plugin',
    9696            'install_path' => __DIR__ . '/../../',
  • woocommerce-pos/tags/1.4.16/woocommerce-pos.php

    r3055706 r3060848  
    44 * Plugin URI:        https://wordpress.org/plugins/woocommerce-pos/
    55 * Description:       A simple front-end for taking WooCommerce orders at the Point of Sale. Requires <a href="http://wordpress.org/plugins/woocommerce/">WooCommerce</a>.
    6  * Version:           1.4.15
     6 * Version:           1.4.16
    77 * Author:            kilbot
    88 * Author URI:        http://wcpos.com
     
    1212 * Domain Path:       /languages
    1313 * Requires at least: 5.6
     14 * Tested up to:      6.5
    1415 * Requires PHP:      7.4
    1516 * Requires Plugins:  woocommerce
    16  * Tested up to:      6.5
    17  * WC tested up to:   8.6
     17 * WC tested up to:   8.7
    1818 * WC requires at least: 5.3
    1919 *
     
    2727
    2828// Define plugin constants.
    29 const VERSION     = '1.4.15';
     29const VERSION     = '1.4.16';
    3030const PLUGIN_NAME = 'woocommerce-pos';
    3131const SHORT_NAME  = 'wcpos';
  • woocommerce-pos/trunk/includes/Form_Handler.php

    r3053833 r3060848  
    3636        global $wp;
    3737
    38         if ( woocommerce_pos_request() && isset( $_POST['woocommerce_pay'], $_GET['key'], $_GET['token'] ) ) {
     38        if ( woocommerce_pos_request() && isset( $_POST['woocommerce_pay'], $_GET['key'] ) ) {
    3939            $order_id  = absint( $wp->query_vars['order-pay'] );
    4040            $order     = wc_get_order( $order_id );
     
    5959            }
    6060
     61            // Check for 'wcpos_jwt' and fall back to 'token' if not present.
     62            // remove 'token' when wcpos_jwt is fully implemented.
     63            $token_key = isset( $_GET['wcpos_jwt'] ) ? 'wcpos_jwt' : ( isset( $_GET['token'] ) ? 'token' : null );
     64
     65            if ( $token_key === null || ! isset( $_GET[ $token_key ] ) ) {
     66                wp_die(
     67                    esc_html__( 'Token not provided.', 'woocommerce-pos' ),
     68                    esc_html__( 'Error', 'woocommerce-pos' ),
     69                    array( 'response' => 403 )
     70                );
     71            }
     72
    6173            // Verify the cashier is authorized to access the order.
    62             $provided_token = sanitize_text_field( wp_unslash( $_GET['token'] ) );
     74            $provided_token = sanitize_text_field( wp_unslash( $_GET[ $token_key ] ) );
    6375            $auth = AuthService::instance();
    6476            $user = $auth->validate_token( $provided_token );
  • woocommerce-pos/trunk/includes/Templates/Payment.php

    r3020668 r3060848  
    154154             */
    155155            wp_set_current_user( $order->get_customer_id() );
     156            add_filter( 'nonce_user_logged_out', array( $this, 'nonce_user_logged_out' ), 10, 2 );
    156157
    157158            // create nonce for customer
     
    251252
    252253    /**
     254     * Fix: when checking out as Guest on the desktop application, WordPress gets a $uid from the
     255     * session, eg: 't_8b04f8283e7edc5aeee2867c89dd06'. This causes the nonce check to fail.
     256     */
     257    public function nonce_user_logged_out( $uid, $action ) {
     258        if ( $action === 'woocommerce-pay' ) {
     259            return 0;
     260        }
     261        return $uid;
     262    }
     263
     264    /**
    253265     * Custom version of wp_create_nonce that uses the customer ID.
    254266     */
  • woocommerce-pos/trunk/readme.txt

    r3057893 r3060848  
    44Requires at least: 5.6
    55Tested up to: 6.5
    6 Stable tag: 1.4.15
     6Stable tag: 1.4.16
    77License: GPL-3.0
    88License URI: http://www.gnu.org/licenses/gpl-3.0.html
     
    8080
    8181= 1.4.16 - 2024/03/22 =
    82 * Fix: namespace checkout token, this may help some situations where checkout is not completing
     82* Fix: nonce check failing for Guest orders when checking out with the desktop application
    8383
    8484= 1.4.15 - 2024/03/20 =
  • woocommerce-pos/trunk/vendor/autoload.php

    r3055706 r3060848  
    2323require_once __DIR__ . '/composer/autoload_real.php';
    2424
    25 return ComposerAutoloaderInitead8fb0d3bd5df28b924c8b8d86975cd::getLoader();
     25return ComposerAutoloaderInitad4433f3e98ff755eb071679fbd4aec4::getLoader();
  • woocommerce-pos/trunk/vendor/composer/autoload_real.php

    r3055706 r3060848  
    33// autoload_real.php @generated by Composer
    44
    5 class ComposerAutoloaderInitead8fb0d3bd5df28b924c8b8d86975cd
     5class ComposerAutoloaderInitad4433f3e98ff755eb071679fbd4aec4
    66{
    77    private static $loader;
     
    2323        }
    2424
    25         spl_autoload_register(array('ComposerAutoloaderInitead8fb0d3bd5df28b924c8b8d86975cd', 'loadClassLoader'), true, true);
     25        spl_autoload_register(array('ComposerAutoloaderInitad4433f3e98ff755eb071679fbd4aec4', 'loadClassLoader'), true, true);
    2626        self::$loader = $loader = new \Composer\Autoload\ClassLoader(\dirname(__DIR__));
    27         spl_autoload_unregister(array('ComposerAutoloaderInitead8fb0d3bd5df28b924c8b8d86975cd', 'loadClassLoader'));
     27        spl_autoload_unregister(array('ComposerAutoloaderInitad4433f3e98ff755eb071679fbd4aec4', 'loadClassLoader'));
    2828
    2929        require __DIR__ . '/autoload_static.php';
    30         call_user_func(\Composer\Autoload\ComposerStaticInitead8fb0d3bd5df28b924c8b8d86975cd::getInitializer($loader));
     30        call_user_func(\Composer\Autoload\ComposerStaticInitad4433f3e98ff755eb071679fbd4aec4::getInitializer($loader));
    3131
    3232        $loader->register(true);
    3333
    34         $filesToLoad = \Composer\Autoload\ComposerStaticInitead8fb0d3bd5df28b924c8b8d86975cd::$files;
     34        $filesToLoad = \Composer\Autoload\ComposerStaticInitad4433f3e98ff755eb071679fbd4aec4::$files;
    3535        $requireFile = \Closure::bind(static function ($fileIdentifier, $file) {
    3636            if (empty($GLOBALS['__composer_autoload_files'][$fileIdentifier])) {
  • woocommerce-pos/trunk/vendor/composer/autoload_static.php

    r3055706 r3060848  
    55namespace Composer\Autoload;
    66
    7 class ComposerStaticInitead8fb0d3bd5df28b924c8b8d86975cd
     7class ComposerStaticInitad4433f3e98ff755eb071679fbd4aec4
    88{
    99    public static $files = array (
     
    330330    {
    331331        return \Closure::bind(function () use ($loader) {
    332             $loader->prefixLengthsPsr4 = ComposerStaticInitead8fb0d3bd5df28b924c8b8d86975cd::$prefixLengthsPsr4;
    333             $loader->prefixDirsPsr4 = ComposerStaticInitead8fb0d3bd5df28b924c8b8d86975cd::$prefixDirsPsr4;
    334             $loader->prefixesPsr0 = ComposerStaticInitead8fb0d3bd5df28b924c8b8d86975cd::$prefixesPsr0;
    335             $loader->classMap = ComposerStaticInitead8fb0d3bd5df28b924c8b8d86975cd::$classMap;
     332            $loader->prefixLengthsPsr4 = ComposerStaticInitad4433f3e98ff755eb071679fbd4aec4::$prefixLengthsPsr4;
     333            $loader->prefixDirsPsr4 = ComposerStaticInitad4433f3e98ff755eb071679fbd4aec4::$prefixDirsPsr4;
     334            $loader->prefixesPsr0 = ComposerStaticInitad4433f3e98ff755eb071679fbd4aec4::$prefixesPsr0;
     335            $loader->classMap = ComposerStaticInitad4433f3e98ff755eb071679fbd4aec4::$classMap;
    336336
    337337        }, null, ClassLoader::class);
  • woocommerce-pos/trunk/vendor/composer/installed.php

    r3055706 r3060848  
    22    'root' => array(
    33        'name' => 'wcpos/woocommerce-pos',
    4         'pretty_version' => 'v1.4.15',
    5         'version' => '1.4.15.0',
    6         'reference' => '0e20731b158cf9c09378807a37f0e4208d68a5e5',
     4        'pretty_version' => 'v1.4.16',
     5        'version' => '1.4.16.0',
     6        'reference' => '4a1217212e913f8ef7fefb3a6aa79d97f9ab6a73',
    77        'type' => 'wordpress-plugin',
    88        'install_path' => __DIR__ . '/../../',
     
    9090        ),
    9191        'wcpos/woocommerce-pos' => array(
    92             'pretty_version' => 'v1.4.15',
    93             'version' => '1.4.15.0',
    94             'reference' => '0e20731b158cf9c09378807a37f0e4208d68a5e5',
     92            'pretty_version' => 'v1.4.16',
     93            'version' => '1.4.16.0',
     94            'reference' => '4a1217212e913f8ef7fefb3a6aa79d97f9ab6a73',
    9595            'type' => 'wordpress-plugin',
    9696            'install_path' => __DIR__ . '/../../',
  • woocommerce-pos/trunk/woocommerce-pos.php

    r3055706 r3060848  
    44 * Plugin URI:        https://wordpress.org/plugins/woocommerce-pos/
    55 * Description:       A simple front-end for taking WooCommerce orders at the Point of Sale. Requires <a href="http://wordpress.org/plugins/woocommerce/">WooCommerce</a>.
    6  * Version:           1.4.15
     6 * Version:           1.4.16
    77 * Author:            kilbot
    88 * Author URI:        http://wcpos.com
     
    1212 * Domain Path:       /languages
    1313 * Requires at least: 5.6
     14 * Tested up to:      6.5
    1415 * Requires PHP:      7.4
    1516 * Requires Plugins:  woocommerce
    16  * Tested up to:      6.5
    17  * WC tested up to:   8.6
     17 * WC tested up to:   8.7
    1818 * WC requires at least: 5.3
    1919 *
     
    2727
    2828// Define plugin constants.
    29 const VERSION     = '1.4.15';
     29const VERSION     = '1.4.16';
    3030const PLUGIN_NAME = 'woocommerce-pos';
    3131const SHORT_NAME  = 'wcpos';
Note: See TracChangeset for help on using the changeset viewer.