diff --git a/readme.txt b/readme.txt index a76525b3..45b5d902 100644 --- a/readme.txt +++ b/readme.txt @@ -3,8 +3,8 @@ Contributors: stiofansisland, paoltaia, ayecode, ismiaini Donate link: https://www.ko-fi.com/stiofan Tags: login form, registration, registration form, user profile, user registration, members, membership Requires at least: 4.9 -Tested up to: 6.6 -Stable tag: 1.2.19 +Tested up to: 6.7 +Stable tag: 1.2.20 License: GPLv3 License URI: http://www.gnu.org/licenses/gpl-3.0.html @@ -146,7 +146,7 @@ Yes, you can customize it with Elementor, but also with Gutenberg, Divi, Beaver == Changelog == -= 1.2.20 - TBD = += 1.2.20 - 2024-10-10 = * Elementor compatibility error on Events demo site import - FIXED * Delete account field with default key was not deleting column from our usermeta table - FIXED diff --git a/userswp.php b/userswp.php index a617e5b1..ef7728b2 100644 --- a/userswp.php +++ b/userswp.php @@ -3,7 +3,7 @@ Plugin Name: UsersWP Plugin URI: https://userswp.io/ Description: The only lightweight user profile plugin for WordPress. UsersWP features front end user profile, users directory, a registration and a login form. -Version: 1.2.19 +Version: 1.2.20 Author: AyeCode Ltd Author URI: https://userswp.io License: GPL-2.0+ @@ -11,7 +11,7 @@ Text Domain: userswp Domain Path: /languages Requires at least: 4.9 -Tested up to: 6.6 +Tested up to: 6.7 */ // If this file is called directly, abort. @@ -24,7 +24,7 @@ } if ( ! defined( 'USERSWP_VERSION' ) ) { - define( 'USERSWP_VERSION', '1.2.19' ); + define( 'USERSWP_VERSION', '1.2.20' ); } if ( ! defined( 'USERSWP_PATH' ) ) { diff --git a/vendor/ayecode/wp-ayecode-ui/ayecode-ui-loader.php b/vendor/ayecode/wp-ayecode-ui/ayecode-ui-loader.php index 2ac67605..0a8bdd7e 100644 --- a/vendor/ayecode/wp-ayecode-ui/ayecode-ui-loader.php +++ b/vendor/ayecode/wp-ayecode-ui/ayecode-ui-loader.php @@ -15,7 +15,7 @@ */ add_action('after_setup_theme', function () { global $ayecode_ui_version,$ayecode_ui_file_key; - $this_version = "0.2.25"; + $this_version = "0.2.26"; if(empty($ayecode_ui_version) || version_compare($this_version , $ayecode_ui_version, '>')){ $ayecode_ui_version = $this_version ; $ayecode_ui_file_key = wp_hash( __FILE__ ); diff --git a/vendor/ayecode/wp-ayecode-ui/change-log.txt b/vendor/ayecode/wp-ayecode-ui/change-log.txt index 58f197f7..1b5b5e02 100644 --- a/vendor/ayecode/wp-ayecode-ui/change-log.txt +++ b/vendor/ayecode/wp-ayecode-ui/change-log.txt @@ -1,3 +1,6 @@ += 0.2.26 - 2024-09-12 = +* Primary color setting not working after update - FIXED + = 0.2.25 - 2024-09-05 = * Don't apply custom colors to wp-admin - CHANGED diff --git a/vendor/ayecode/wp-ayecode-ui/includes/ayecode-ui-settings.php b/vendor/ayecode/wp-ayecode-ui/includes/ayecode-ui-settings.php index 3e429eab..19285365 100644 --- a/vendor/ayecode/wp-ayecode-ui/includes/ayecode-ui-settings.php +++ b/vendor/ayecode/wp-ayecode-ui/includes/ayecode-ui-settings.php @@ -35,7 +35,7 @@ class AyeCode_UI_Settings { * * @var string */ - public $version = '0.2.25'; + public $version = '0.2.26'; /** * Class textdomain. diff --git a/vendor/ayecode/wp-super-duper/change-log.txt b/vendor/ayecode/wp-super-duper/change-log.txt index 296b0687..7b2ba772 100644 --- a/vendor/ayecode/wp-super-duper/change-log.txt +++ b/vendor/ayecode/wp-super-duper/change-log.txt @@ -1,3 +1,17 @@ += 1.2.13 - 2024-10-10 = +* sd_template_page_options() not allowing child page selection - FIXED +* Filter added `sd_template_page_options_limit` to adjust the 500 pages limit - ADDED +* Multiple blocks with taxonomy linking feature can cause ajax query to loop and freeze browser - FIXED +* __experimentalGetPreviewDeviceType is deprecated - FIXED + += 1.2.10 - 2024-10-08 = +* Selecting multiple similar blocks with different settings can cause editor to freeze - FIXED +* Blocks with content already set will not call a refresh on load - CHANGED +* New shortcode param could cause some blocks to call the render callback twice on each change - FIXED + += 1.2.9 - 2024-09-12 = +* Template get_pages call changed to custom query for better memory management - CHANGED + = 1.2.7 - 2024-08-29 = * Fix conflicts with UpSolution Core plugin - FIXED diff --git a/vendor/ayecode/wp-super-duper/sd-functions.php b/vendor/ayecode/wp-super-duper/sd-functions.php index 40d48b7e..83bce0aa 100644 --- a/vendor/ayecode/wp-super-duper/sd-functions.php +++ b/vendor/ayecode/wp-super-duper/sd-functions.php @@ -3165,18 +3165,20 @@ function sd_visibility_output_options() { * @return array Template page options. */ function sd_template_page_options( $args = array() ) { - global $sd_tmpl_page_options; + global $wpdb, $sd_tmpl_page_options; - if ( ! empty( $sd_tmpl_page_options ) ) { + $defaults = array( + 'nocache' => false, + 'with_slug' => false, + 'default_label' => __( 'Select Page...', 'ayecode-connect' ) + ); + + $args = wp_parse_args( $args, $defaults ); + + if ( ! empty( $sd_tmpl_page_options ) && empty( $args['nocache'] ) ) { return $sd_tmpl_page_options; } - $args = wp_parse_args( $args, array( - 'child_of' => 0, - 'sort_column' => 'post_title', - 'sort_order' => 'ASC' - ) ); - $exclude_pages = array(); if ( $page_on_front = get_option( 'page_on_front' ) ) { $exclude_pages[] = $page_on_front; @@ -3186,24 +3188,50 @@ function sd_template_page_options( $args = array() ) { $exclude_pages[] = $page_for_posts; } + $exclude_pages_placeholders = ''; + if ( ! empty( $exclude_pages ) ) { + // Sanitize the array of excluded pages and implode it for the SQL query. + $exclude_pages_placeholders = implode( ',', array_fill( 0, count( $exclude_pages ), '%d' ) ); + } + + // Prepare the base SQL query. + $sql = "SELECT ID, post_title, post_name FROM " . $wpdb->posts . " WHERE post_type = 'page' AND post_status = 'publish'"; + + // Add the exclusion if there are pages to exclude if ( ! empty( $exclude_pages ) ) { - $args['exclude'] = $exclude_pages; + $sql .= " AND ID NOT IN ($exclude_pages_placeholders)"; } - $pages = get_pages( $args ); + // Add sorting. + $sql .= " ORDER BY post_title ASC"; + + // Add a limit. + $limit = (int) apply_filters( 'sd_template_page_options_limit', 500, $args ); + + if ( $limit > 0 ) { + $sql .= " LIMIT " . (int) $limit; + } + + // Prepare the SQL query to include the excluded pages only if we have placeholders. + $pages = $exclude_pages_placeholders ? $wpdb->get_results( $wpdb->prepare( $sql, ...$exclude_pages ) ) : $wpdb->get_results( $sql ); + + if ( ! empty( $args['default_label'] ) ) { + $options = array( '' => $args['default_label'] ); + } else { + $options = array(); + } - $options = array( '' => __( 'Select Page...', 'ayecode-connect' ) ); if ( ! empty( $pages ) ) { foreach ( $pages as $page ) { - if ( ! empty( $page->ID ) && ! empty( $page->post_title ) ) { - $options[ $page->ID ] = $page->post_title . ' (#' . $page->ID . ')'; - } + $title = ! empty( $args['with_slug'] ) ? $page->post_title . ' (' . $page->post_name . ')' : ( $page->post_title . ' (#' . $page->ID . ')' ); + + $options[ $page->ID ] = $title; } } $sd_tmpl_page_options = $options; - return apply_filters( 'sd_template_page_options', $options ); + return apply_filters( 'sd_template_page_options', $options, $args ); } /** diff --git a/vendor/ayecode/wp-super-duper/sd-plugin.php b/vendor/ayecode/wp-super-duper/sd-plugin.php index 7e49ea57..e5072a3a 100644 --- a/vendor/ayecode/wp-super-duper/sd-plugin.php +++ b/vendor/ayecode/wp-super-duper/sd-plugin.php @@ -5,7 +5,7 @@ * @wordpress-plugin * Plugin Name: Super Duper - Examples * Description: This is a Hello World test plugin for WP Super Duper Class. - * Version: 1.2.7 + * Version: 1.2.13 * Author: AyeCode * Author URI: https://ayecode.io * Text Domain: super-duper diff --git a/vendor/ayecode/wp-super-duper/wp-super-duper.php b/vendor/ayecode/wp-super-duper/wp-super-duper.php index 1cb25c81..a378779a 100644 --- a/vendor/ayecode/wp-super-duper/wp-super-duper.php +++ b/vendor/ayecode/wp-super-duper/wp-super-duper.php @@ -5,7 +5,7 @@ if ( ! class_exists( 'WP_Super_Duper' ) ) { - define( 'SUPER_DUPER_VER', '1.2.7' ); + define( 'SUPER_DUPER_VER', '1.2.13' ); /** * A Class to be able to create a Widget, Shortcode or Block to be able to output content for WordPress. @@ -1787,7 +1787,15 @@ function sd_show_view_options($this){ } function sd_set_view_type($device){ - wp.data.dispatch('core/edit-site') ? wp.data.dispatch('core/edit-site').__experimentalSetPreviewDeviceType($device) : wp.data.dispatch('core/edit-post').__experimentalSetPreviewDeviceType($device); + const wpVersion = ''; + if (parseFloat(wpVersion) < 6.5) { + wp.data.dispatch('core/edit-site') ? wp.data.dispatch('core/edit-site').__experimentalSetPreviewDeviceType($device) : wp.data.dispatch('core/edit-post').__experimentalSetPreviewDeviceType($device); + } else { + const editorDispatch = wp.data.dispatch('core/editor'); + if (editorDispatch) { + editorDispatch.setDeviceType($device); + } + } } jQuery(function(){ @@ -2672,6 +2680,7 @@ function sd_get_class_build_keys(){ // The "edit" property must be a valid function. edit: function (props) { + const selectedBlock = wp.data.select('core/block-editor').getSelectedBlock(); arguments['post_type']) && isset($this->arguments['category']) && !empty($this->arguments['category']['post_type_linked']) ){ ?> - if(typeof(prev_attributes[props.clientId]) != 'undefined'){ + if(typeof(prev_attributes[props.clientId]) != 'undefined' && selectedBlock && selectedBlock.clientId === props.clientId){ $pt = props.attributes.post_type; if(post_type_rest_slugs.length){ $value = post_type_rest_slugs[0][$pt]; @@ -2881,29 +2890,58 @@ function hasSelectedInnerBlock(props) { }else{ ?> /** Get device type const. */ -const { deviceType } = wp.data.useSelect != 'undefined' ? wp.data.useSelect(select => { - const { __experimentalGetPreviewDeviceType } = select('core/edit-site') ? select('core/edit-site') : select('core/edit-post') ? select('core/edit-post') : ''; // For sie editor https://github.com/WordPress/gutenberg/issues/39248 - return { - deviceType: __experimentalGetPreviewDeviceType(), - } +const wpVersion = ''; +const { deviceType } = typeof wp.data.useSelect !== 'undefined' ? wp.data.useSelect(select => { + if (parseFloat(wpVersion) < 6.5) { + const { __experimentalGetPreviewDeviceType } = select('core/edit-site') ? select('core/edit-site') : select('core/edit-post') ? select('core/edit-post') : ''; + return { + deviceType: __experimentalGetPreviewDeviceType(), + }; + } else { + const editorSelect = select('core/editor'); + if (editorSelect) { + return { + deviceType: editorSelect.getDeviceType(), + }; + } else { + return { + deviceType: 'Desktop', // Default value if device type is not available + }; + } + } }, []) : ''; var content = props.attributes.content; + //console.log(props.attributes); var shortcode = ''; function onChangeContent($type) { -// console.log(deviceType); + $refresh = false; // Set the old content the same as the new one so we only compare all other attributes if(typeof(prev_attributes[props.clientId]) != 'undefined'){ prev_attributes[props.clientId].content = props.attributes.content; + + // don't compare the sd_shortcode as it is changed later + prev_attributes[props.clientId].sd_shortcode = props.attributes.sd_shortcode; }else if(props.attributes.content === ""){ // if first load and content empty then refresh $refresh = true; + + }else{ + + // if not new and has content then set it so we dont go fetch it + if(props.attributes.content && props.attributes.content !== 'Please select the attributes in the block settings'){ + prev_attributes[props.clientId] = props.attributes; + } + } + + if ( ( !is_fetching && JSON.stringify(prev_attributes[props.clientId]) != JSON.stringify(props.attributes) ) || $refresh ) { + is_fetching = true; var data = { @@ -3002,7 +3040,11 @@ function onChangeContent($type) { if(shortcode){ - props.setAttributes({sd_shortcode: shortcode}); + // can cause a react exception when selecting multile blocks of the same type when the settings are not the same + if (props.attributes.sd_shortcode !== shortcode) { + props.setAttributes({ sd_shortcode: shortcode }); + } + options['nested-block']) || !empty($this->arguments['html']) ){ diff --git a/vendor/composer/installed.json b/vendor/composer/installed.json index 44a42efd..7ed4ff52 100644 --- a/vendor/composer/installed.json +++ b/vendor/composer/installed.json @@ -59,20 +59,20 @@ }, { "name": "ayecode/wp-ayecode-ui", - "version": "0.2.25", - "version_normalized": "0.2.25.0", + "version": "0.2.26", + "version_normalized": "0.2.26.0", "source": { "type": "git", "url": "https://github.com/AyeCode/wp-ayecode-ui.git", - "reference": "1fc1d0e5826988954a297ffc30a5d37486822509" + "reference": "0c3b7f0c6693ae51da2b40ccbbbb52eab09f40bb" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/AyeCode/wp-ayecode-ui/zipball/1fc1d0e5826988954a297ffc30a5d37486822509", - "reference": "1fc1d0e5826988954a297ffc30a5d37486822509", + "url": "https://api.github.com/repos/AyeCode/wp-ayecode-ui/zipball/0c3b7f0c6693ae51da2b40ccbbbb52eab09f40bb", + "reference": "0c3b7f0c6693ae51da2b40ccbbbb52eab09f40bb", "shasum": "" }, - "time": "2024-09-05T14:29:37+00:00", + "time": "2024-09-12T15:31:54+00:00", "type": "library", "installation-source": "dist", "autoload": { @@ -101,7 +101,7 @@ ], "support": { "issues": "https://github.com/AyeCode/wp-ayecode-ui/issues", - "source": "https://github.com/AyeCode/wp-ayecode-ui/tree/0.2.25" + "source": "https://github.com/AyeCode/wp-ayecode-ui/tree/0.2.26" }, "install-path": "../ayecode/wp-ayecode-ui" }, @@ -206,24 +206,24 @@ }, { "name": "ayecode/wp-super-duper", - "version": "1.2.7", - "version_normalized": "1.2.7.0", + "version": "1.2.13", + "version_normalized": "1.2.13.0", "source": { "type": "git", "url": "https://github.com/AyeCode/wp-super-duper.git", - "reference": "077bbe648ab7b3a9cc77068d2e0c326dfe1a6849" + "reference": "9b7216a5175c4d12b030d28a87a05aaed91c4eea" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/AyeCode/wp-super-duper/zipball/077bbe648ab7b3a9cc77068d2e0c326dfe1a6849", - "reference": "077bbe648ab7b3a9cc77068d2e0c326dfe1a6849", + "url": "https://api.github.com/repos/AyeCode/wp-super-duper/zipball/9b7216a5175c4d12b030d28a87a05aaed91c4eea", + "reference": "9b7216a5175c4d12b030d28a87a05aaed91c4eea", "shasum": "" }, "require": { "composer/installers": "~1.0", "php": ">=5.4.0" }, - "time": "2024-08-29T16:44:21+00:00", + "time": "2024-10-10T13:21:28+00:00", "type": "library", "installation-source": "dist", "autoload": { @@ -255,7 +255,7 @@ ], "support": { "issues": "https://github.com/AyeCode/wp-super-duper/issues", - "source": "https://github.com/AyeCode/wp-super-duper/tree/1.2.7" + "source": "https://github.com/AyeCode/wp-super-duper/tree/1.2.13" }, "install-path": "../ayecode/wp-super-duper" }, diff --git a/vendor/composer/installed.php b/vendor/composer/installed.php index e0a32981..9464d756 100644 --- a/vendor/composer/installed.php +++ b/vendor/composer/installed.php @@ -3,7 +3,7 @@ 'name' => 'uswerwp/userswp', 'pretty_version' => 'dev-master', 'version' => 'dev-master', - 'reference' => '178c50cdabf2123c359f2a11fbae430b1f06c762', + 'reference' => '224f1a34cdc305c6da2f8baf26fa4ed895e9ee59', 'type' => 'project', 'install_path' => __DIR__ . '/../../', 'aliases' => array(), @@ -20,9 +20,9 @@ 'dev_requirement' => false, ), 'ayecode/wp-ayecode-ui' => array( - 'pretty_version' => '0.2.24', - 'version' => '0.2.24.0', - 'reference' => '2f38efde33ec4d76610f020c42a56687fa0f201c', + 'pretty_version' => '0.2.26', + 'version' => '0.2.26.0', + 'reference' => '0c3b7f0c6693ae51da2b40ccbbbb52eab09f40bb', 'type' => 'library', 'install_path' => __DIR__ . '/../ayecode/wp-ayecode-ui', 'aliases' => array(), @@ -47,9 +47,9 @@ 'dev_requirement' => false, ), 'ayecode/wp-super-duper' => array( - 'pretty_version' => '1.2.7', - 'version' => '1.2.7.0', - 'reference' => '077bbe648ab7b3a9cc77068d2e0c326dfe1a6849', + 'pretty_version' => '1.2.13', + 'version' => '1.2.13.0', + 'reference' => '9b7216a5175c4d12b030d28a87a05aaed91c4eea', 'type' => 'library', 'install_path' => __DIR__ . '/../ayecode/wp-super-duper', 'aliases' => array(), @@ -79,7 +79,7 @@ 'uswerwp/userswp' => array( 'pretty_version' => 'dev-master', 'version' => 'dev-master', - 'reference' => '178c50cdabf2123c359f2a11fbae430b1f06c762', + 'reference' => '224f1a34cdc305c6da2f8baf26fa4ed895e9ee59', 'type' => 'project', 'install_path' => __DIR__ . '/../../', 'aliases' => array(),