Plugin Directory

Changeset 2931032


Ignore:
Timestamp:
06/26/2023 04:17:56 PM (3 years ago)
Author:
liquidpoll
Message:

Fix issues

Location:
wp-poll
Files:
298 added
6 edited

Legend:

Unmodified
Added
Removed
  • wp-poll/trunk/assets/admin/js/scripts.js

    r2927562 r2931032  
    279279    $(document).on('click', '.liquidpoll-activate-addon', function () {
    280280
    281         let addOnID = $(this).data('addon-id');
     281        let addOnID = $(this).data('addon-id'),
     282            addOnNonce = $(this).data('addon-nonce'),
     283            nonceName = $(this).data('addon-nonce-name');
    282284
    283285        if (typeof addOnID === 'undefined') {
     
    297299                'action': 'liquidpoll-activate-addon',
    298300                'addon_id': addOnID,
     301                'addon_nonce': addOnNonce,
     302                'addon_nonce_name': nonceName,
    299303            },
    300304            success: function (response) {
    301                 if(response.success){
     305                if (response.success) {
    302306                    $(this).removeClass('liquidpoll-activate-addon').addClass('active').removeAttr('data-addon-id');
    303                     loader.css('display','none')
     307                    loader.css('display', 'none')
    304308                    $(this).parent().parent().parent().append(loader)
    305309                    $(this).text("Active");
  • wp-poll/trunk/includes/addons/class-addons.php

    r2881022 r2931032  
    139139                    printf( '<button class="link" disabled>%s</button>', esc_html__( 'Coming soon', 'wp-poll' ) );
    140140                } else {
    141                     printf( '<button class="link liquidpoll-activate-addon" data-addon-id="%s">%s</button>', $addon_id, esc_html__( 'Install & Activate', 'wp-poll' ) );
     141                    printf( '<button class="link liquidpoll-activate-addon" data-addon-nonce-name="addon-nonce" data-addon-nonce="%s" data-addon-id="%s">%s</button>', wp_create_nonce( 'addon-nonce' ), $addon_id, esc_html__( 'Install & Activate', 'wp-poll' ) );
    142142                }
    143143
  • wp-poll/trunk/includes/classes/class-hooks.php

    r2927562 r2931032  
    7070         */
    7171        function activate_addon() {
    72             $addon_id = isset( $_POST['addon_id'] ) ? sanitize_text_field( $_POST['addon_id'] ) : '';
    73 
    74             if ( empty( $addon_id ) ) {
     72            $addon_id         = isset( $_POST['addon_id'] ) ? sanitize_text_field( $_POST['addon_id'] ) : '';
     73            $addon_nonce      = isset( $_POST['addon_nonce'] ) ? sanitize_text_field( $_POST['addon_nonce'] ) : '';
     74            $addon_nonce_name = isset( $_POST['addon_nonce_name'] ) ? sanitize_text_field( $_POST['addon_nonce_name'] ) : '';
     75
     76            if ( empty( $addon_id ) || empty( $addon_nonce_name ) ) {
    7577                return;
    7678            }
    7779
    78             // Include required libs for installation
    79             require_once( ABSPATH . 'wp-admin/includes/plugin-install.php' );
    80             require_once( ABSPATH . 'wp-admin/includes/class-wp-upgrader.php' );
    81             require_once( ABSPATH . 'wp-admin/includes/class-wp-ajax-upgrader-skin.php' );
    82             require_once( ABSPATH . 'wp-admin/includes/class-plugin-upgrader.php' );
    83 
    84             // Get Plugin Info
    85             $api      = plugins_api( 'plugin_information',
    86                 array(
    87                     'slug'   => $addon_id,
    88                     'fields' => array(
    89                         'short_description' => false,
    90                         'sections'          => false,
    91                         'requires'          => false,
    92                         'rating'            => false,
    93                         'ratings'           => false,
    94                         'downloaded'        => false,
    95                         'last_updated'      => false,
    96                         'added'             => false,
    97                         'tags'              => false,
    98                         'compatibility'     => false,
    99                         'homepage'          => false,
    100                         'donate_link'       => false,
    101                     ),
    102                 )
    103             );
    104             $skin     = new WP_Ajax_Upgrader_Skin();
    105             $upgrader = new Plugin_Upgrader( $skin );
    106             $upgrader->install( $api->download_link );
    107 
    108             defined( 'WP_ADMIN' ) || define( 'WP_ADMIN', true );
    109             defined( 'WP_NETWORK_ADMIN' ) || define( 'WP_NETWORK_ADMIN', true ); // Need for Multisite
    110             defined( 'WP_USER_ADMIN' ) || define( 'WP_USER_ADMIN', true );
    111 
    112             // Include required libs for activation
    113             require_once( '../wp-load.php' );
    114             require_once( '../wp-admin/includes/admin.php' );
    115             require_once( '../wp-admin/includes/plugin.php' );
    116             $plugin   = "{$api->slug}/{$api->slug}.php";
    117             $response = activate_plugin( $plugin );
    118 
    119             wp_send_json_success( $response );
     80            if ( current_user_can( 'activate_plugins' ) && wp_verify_nonce( $addon_nonce, $addon_nonce_name ) ) {
     81
     82
     83                // Include required libs for installation
     84                require_once( ABSPATH . 'wp-admin/includes/plugin-install.php' );
     85                require_once( ABSPATH . 'wp-admin/includes/class-wp-upgrader.php' );
     86                require_once( ABSPATH . 'wp-admin/includes/class-wp-ajax-upgrader-skin.php' );
     87                require_once( ABSPATH . 'wp-admin/includes/class-plugin-upgrader.php' );
     88
     89                // Get Plugin Info
     90                $api      = plugins_api( 'plugin_information',
     91                    array(
     92                        'slug'   => $addon_id,
     93                        'fields' => array(
     94                            'short_description' => false,
     95                            'sections'          => false,
     96                            'requires'          => false,
     97                            'rating'            => false,
     98                            'ratings'           => false,
     99                            'downloaded'        => false,
     100                            'last_updated'      => false,
     101                            'added'             => false,
     102                            'tags'              => false,
     103                            'compatibility'     => false,
     104                            'homepage'          => false,
     105                            'donate_link'       => false,
     106                        ),
     107                    )
     108                );
     109                $skin     = new WP_Ajax_Upgrader_Skin();
     110                $upgrader = new Plugin_Upgrader( $skin );
     111                $upgrader->install( $api->download_link );
     112
     113                defined( 'WP_ADMIN' ) || define( 'WP_ADMIN', true );
     114                defined( 'WP_NETWORK_ADMIN' ) || define( 'WP_NETWORK_ADMIN', true ); // Need for Multisite
     115                defined( 'WP_USER_ADMIN' ) || define( 'WP_USER_ADMIN', true );
     116
     117                // Include required libs for activation
     118                require_once( '../wp-load.php' );
     119                require_once( '../wp-admin/includes/admin.php' );
     120                require_once( '../wp-admin/includes/plugin.php' );
     121                $plugin   = "{$api->slug}/{$api->slug}.php";
     122                $response = activate_plugin( $plugin );
     123
     124                wp_send_json_success( $response );
     125            }
    120126        }
    121127
  • wp-poll/trunk/includes/classes/class-shortcodes.php

    r2927562 r2931032  
    130130        public function display_poll_archive( $atts, $content = null ) {
    131131
    132             $atts      = (array) $atts;
    133             $atts      = array_filter( $atts );
    134             $poll_id   = empty( $atts['id'] ) ? '' : $atts['id'];
    135             $poll      = liquidpoll_get_poll( $poll_id );
     132            $atts    = (array) $atts;
     133            $atts    = array_filter( $atts );
     134            $poll_id = empty( $atts['id'] ) ? '' : $atts['id'];
     135            $poll    = liquidpoll_get_poll( $poll_id );
     136
     137            if ( ! $poll instanceof LIQUIDPOLL_Poll ) {
     138                return false;
     139            }
     140
    136141            $view_type = empty( $atts['view_type'] ) ? '' : $atts['view_type'];
    137142            $styles    = empty( $atts['styles'] ) ? '1' : $atts['styles'];
     
    152157            ob_start();
    153158
    154             if ( 'reviews' == $poll->get_type() && $view_type && $styles && defined('LIQUIDPOLL_PRO_PLUGIN_DIR') ) {
    155                 liquidpoll_get_template( "archive-reviews/{$view_type}-widget-{$styles}.php", $args,'' ,LIQUIDPOLL_PRO_PLUGIN_DIR . 'templates/',true);
     159            if ( 'reviews' == $poll->get_type() && $view_type && $styles && defined( 'LIQUIDPOLL_PRO_PLUGIN_DIR' ) ) {
     160                liquidpoll_get_template( "archive-reviews/{$view_type}-widget-{$styles}.php", $args, '', LIQUIDPOLL_PRO_PLUGIN_DIR . 'templates/', true );
    156161            } else {
    157162                liquidpoll_get_template( 'archive-poll.php', $args );
  • wp-poll/trunk/readme.txt

    r2928081 r2931032  
    55    Requires at least: 4.6
    66    Tested up to: 6.2.2
    7     Stable tag: 3.3.68
     7    Stable tag: 3.3.69
    88    License: GPLv2 or later
    99    License URI: http://www.gnu.org/licenses/gpl-2.0.html
     
    374374* 19/06/2023 - FIX - Update on reviews settings.
    375375
     376= 3.3.69 =
     377* 26/06/2023 - FIX - Fix issues.
     378
  • wp-poll/trunk/wp-poll.php

    r2928081 r2931032  
    44 * Plugin URI: https://liquidpoll.com
    55 * Description: It allows user to poll in your website with many awesome features.
    6  * Version: 3.3.68
     6 * Version: 3.3.69
    77 * Author: LiquidPoll
    88 * Text Domain: wp-poll
     
    2828defined( 'LIQUIDPOLL_TICKET_URL' ) || define( 'LIQUIDPOLL_TICKET_URL', 'https://www.liquidpoll.com/my-account/' );
    2929defined( 'LIQUIDPOLL_COMMUNITY_URL' ) || define( 'LIQUIDPOLL_COMMUNITY_URL', 'https://www.facebook.com/groups/liquidpoll/' );
    30 defined( 'LIQUIDPOLL_VERSION' ) || define( 'LIQUIDPOLL_VERSION', '3.3.68' );
     30defined( 'LIQUIDPOLL_VERSION' ) || define( 'LIQUIDPOLL_VERSION', '3.3.69' );
    3131
    3232if ( ! class_exists( 'LIQUIDPOLL_Main' ) ) {
     
    155155            wp_enqueue_script( 'slick-slider', plugins_url( 'assets/front/js/slick.min.js', __FILE__ ), array( 'jquery' ), $version, $load_in_footer );
    156156            wp_enqueue_script( 'masonry', plugins_url( 'assets/front/js/masonry.pkgd.min.js', __FILE__ ), array( 'jquery' ), $version, $load_in_footer );
     157            wp_enqueue_script( 'apexcharts_front', plugins_url( 'assets/apexcharts.js', __FILE__ ), array( 'jquery' ), $version, $load_in_footer );
    157158            wp_enqueue_script( 'liquidpoll-front', plugins_url( 'assets/front/js/scripts.js', __FILE__ ), array( 'jquery' ), $version, $load_in_footer );
    158159            wp_localize_script( 'liquidpoll-front', 'liquidpoll_object', $this->localize_scripts_data() );
Note: See TracChangeset for help on using the changeset viewer.