Plugin Directory

Changeset 3444716


Ignore:
Timestamp:
01/22/2026 10:55:48 AM (7 weeks ago)
Author:
wpconnectco
Message:

Update to version 1.7.1

Location:
wp-sync-for-notion/trunk
Files:
11 edited

Legend:

Unmodified
Added
Removed
  • wp-sync-for-notion/trunk/changelog.txt

    r3420188 r3444716  
    11== Changelog ==
    22=== WP Sync for Notion - Notion to WordPress ===
     3
     4= 1.7.1 =
     5*Release Date: 20th Jan. 2026*
     6
     7* Security: Fix Broken Access Control ; add missing user capability check on ajax request
    38
    49= 1.7.0 =
  • wp-sync-for-notion/trunk/includes/admin/metaboxes/class-notion-wp-sync-metabox-global-settings.php

    r3420188 r3444716  
    9292        // Nonce check.
    9393        check_ajax_referer( 'notion-wp-sync-ajax', 'nonce' );
     94        Notion_WP_Sync_Helpers::check_ajax_admin_user_access();
    9495
    9596        // Data check.
  • wp-sync-for-notion/trunk/includes/admin/metaboxes/class-notion-wp-sync-metabox-import-infos.php

    r3420188 r3444716  
    5959        // Nonce check.
    6060        check_ajax_referer( 'notion-wp-sync-trigger-update', 'nonce' );
     61        Notion_WP_Sync_Helpers::check_ajax_admin_user_access();
    6162
    6263        $importer_id = (int) $_POST['importer'] ?? 0;
     
    101102        // Nonce check.
    102103        check_ajax_referer( 'notion-wp-sync-trigger-update', 'nonce' );
     104        Notion_WP_Sync_Helpers::check_ajax_admin_user_access();
    103105
    104106        $importer_id = (int) $_POST['importer'] ?? 0;
     
    181183        // Nonce check.
    182184        check_ajax_referer( 'notion-wp-sync-trigger-update', 'nonce' );
     185        Notion_WP_Sync_Helpers::check_ajax_admin_user_access();
    183186
    184187        $importer_id = (int) $_POST['importer'] ?? 0;
  • wp-sync-for-notion/trunk/includes/class-notion-wp-sync-helpers.php

    r3420188 r3444716  
    254254        return $value;
    255255    }
     256
     257    /**
     258     * Check user access.
     259     *
     260     * @param string $error_key Error key for the response.
     261     *
     262     * @return void
     263     */
     264    public static function check_ajax_admin_user_access( $error_key = 'feedback' ) {
     265        if ( ! current_user_can( apply_filters( 'notionwpsync/manage_options_capability', 'manage_options' ) ) ) {
     266            wp_send_json_error(
     267                array(
     268                    'status'   => 'error',
     269                    $error_key => array( __( 'Unauthorized', 'wp-sync-for-notion' ) ),
     270                ),
     271                403
     272            );
     273        }
     274    }
    256275}
  • wp-sync-for-notion/trunk/notion-wp-sync.php

    r3420188 r3444716  
    44 * Plugin URI: https://wpconnect.co/notion-wordpress-integration/
    55 * Description: Swiftly sync Notion to your WordPress website!
    6  * Version: 1.7.0
     6 * Version: 1.7.1
    77 * Requires at least: 5.7
    88 * Tested up to: 6.9
     
    2323}
    2424
    25 define( 'NOTION_WP_SYNC_VERSION', '1.7.0' );
     25define( 'NOTION_WP_SYNC_VERSION', '1.7.1' );
    2626define( 'NOTION_WP_SYNC_PLUGIN_DIR', plugin_dir_path( __FILE__ ) );
    2727define( 'NOTION_WP_SYNC_PLUGIN_FILE', __FILE__ );
  • wp-sync-for-notion/trunk/readme.txt

    r3420188 r3444716  
    66Tested up to: 6.9
    77Requires PHP: 7.0
    8 Stable tag: 1.7.0
     8Stable tag: 1.7.1
    99License: GPLv2 or later
    1010License URI: https://www.gnu.org/licenses/gpl-2.0.html
  • wp-sync-for-notion/trunk/vendor/autoload.php

    r3420188 r3444716  
    55require_once __DIR__ . '/composer/autoload_real.php';
    66
    7 return ComposerAutoloaderInit8bffe91e5584c123fe4a1e4274cb796b::getLoader();
     7return ComposerAutoloaderInit66ccb7787ccead367e188926ea1a2f98::getLoader();
  • wp-sync-for-notion/trunk/vendor/composer/InstalledVersions.php

    r3420188 r3444716  
    321321
    322322        $installed = array();
    323         $copiedLocalDir = false;
    324323
    325324        if (self::$canGetVendors) {
     
    328327                    $installed[] = self::$installedByVendor[$vendorDir];
    329328                } elseif (is_file($vendorDir.'/composer/installed.php')) {
    330                     /** @var array{root: array{name: string, pretty_version: string, version: string, reference: string|null, type: string, install_path: string, aliases: string[], dev: bool}, versions: array<string, array{pretty_version?: string, version?: string, reference?: string|null, type?: string, install_path?: string, aliases?: string[], dev_requirement: bool, replaced?: string[], provided?: string[]}>} $required */
    331                     $required = require $vendorDir.'/composer/installed.php';
    332                     self::$installedByVendor[$vendorDir] = $required;
    333                     $installed[] = $required;
    334                     if (strtr($vendorDir.'/composer', '\\', '/') === strtr(__DIR__, '\\', '/')) {
    335                         self::$installed = $required;
    336                         $copiedLocalDir = true;
     329                    $installed[] = self::$installedByVendor[$vendorDir] = require $vendorDir.'/composer/installed.php';
     330                    if (null === self::$installed && strtr($vendorDir.'/composer', '\\', '/') === strtr(__DIR__, '\\', '/')) {
     331                        self::$installed = $installed[count($installed) - 1];
    337332                    }
    338333                }
     
    344339            // and not from its source location in the composer/composer package, see https://github.com/composer/composer/issues/9937
    345340            if (substr(__DIR__, -8, 1) !== 'C') {
    346                 /** @var array{root: array{name: string, pretty_version: string, version: string, reference: string|null, type: string, install_path: string, aliases: string[], dev: bool}, versions: array<string, array{pretty_version?: string, version?: string, reference?: string|null, type?: string, install_path?: string, aliases?: string[], dev_requirement: bool, replaced?: string[], provided?: string[]}>} $required */
    347                 $required = require __DIR__ . '/installed.php';
    348                 self::$installed = $required;
     341                self::$installed = require __DIR__ . '/installed.php';
    349342            } else {
    350343                self::$installed = array();
    351344            }
    352345        }
    353 
    354         if (self::$installed !== array() && !$copiedLocalDir) {
    355             $installed[] = self::$installed;
    356         }
     346        $installed[] = self::$installed;
    357347
    358348        return $installed;
  • wp-sync-for-notion/trunk/vendor/composer/autoload_real.php

    r3420188 r3444716  
    33// autoload_real.php @generated by Composer
    44
    5 class ComposerAutoloaderInit8bffe91e5584c123fe4a1e4274cb796b
     5class ComposerAutoloaderInit66ccb7787ccead367e188926ea1a2f98
    66{
    77    private static $loader;
     
    2323        }
    2424
    25         spl_autoload_register(array('ComposerAutoloaderInit8bffe91e5584c123fe4a1e4274cb796b', 'loadClassLoader'), true, true);
     25        spl_autoload_register(array('ComposerAutoloaderInit66ccb7787ccead367e188926ea1a2f98', 'loadClassLoader'), true, true);
    2626        self::$loader = $loader = new \Composer\Autoload\ClassLoader(\dirname(\dirname(__FILE__)));
    27         spl_autoload_unregister(array('ComposerAutoloaderInit8bffe91e5584c123fe4a1e4274cb796b', 'loadClassLoader'));
     27        spl_autoload_unregister(array('ComposerAutoloaderInit66ccb7787ccead367e188926ea1a2f98', 'loadClassLoader'));
    2828
    2929        $useStaticLoader = PHP_VERSION_ID >= 50600 && !defined('HHVM_VERSION') && (!function_exists('zend_loader_file_encoded') || !zend_loader_file_encoded());
     
    3131            require __DIR__ . '/autoload_static.php';
    3232
    33             call_user_func(\Composer\Autoload\ComposerStaticInit8bffe91e5584c123fe4a1e4274cb796b::getInitializer($loader));
     33            call_user_func(\Composer\Autoload\ComposerStaticInit66ccb7787ccead367e188926ea1a2f98::getInitializer($loader));
    3434        } else {
    3535            $map = require __DIR__ . '/autoload_namespaces.php';
  • wp-sync-for-notion/trunk/vendor/composer/autoload_static.php

    r3420188 r3444716  
    55namespace Composer\Autoload;
    66
    7 class ComposerStaticInit8bffe91e5584c123fe4a1e4274cb796b
     7class ComposerStaticInit66ccb7787ccead367e188926ea1a2f98
    88{
    99    public static $classMap = array (
     
    1414    {
    1515        return \Closure::bind(function () use ($loader) {
    16             $loader->classMap = ComposerStaticInit8bffe91e5584c123fe4a1e4274cb796b::$classMap;
     16            $loader->classMap = ComposerStaticInit66ccb7787ccead367e188926ea1a2f98::$classMap;
    1717
    1818        }, null, ClassLoader::class);
  • wp-sync-for-notion/trunk/vendor/composer/installed.php

    r3420188 r3444716  
    66        'install_path' => __DIR__ . '/../../',
    77        'aliases' => array(),
    8         'reference' => 'a0dcdd65c01b7354265aad9ff75abfcf170368a6',
     8        'reference' => 'b91d15f58371724e56bd91d65c27ea3da402a4c0',
    99        'name' => '__root__',
    1010        'dev' => true,
     
    1717            'install_path' => __DIR__ . '/../../',
    1818            'aliases' => array(),
    19             'reference' => 'a0dcdd65c01b7354265aad9ff75abfcf170368a6',
     19            'reference' => 'b91d15f58371724e56bd91d65c27ea3da402a4c0',
    2020            'dev_requirement' => false,
    2121        ),
Note: See TracChangeset for help on using the changeset viewer.