Plugin Directory

Changeset 3254461


Ignore:
Timestamp:
03/12/2025 06:10:57 AM (11 months ago)
Author:
ultradevs
Message:

Update to version 2.0.1 from GitHub

Location:
ultra-elementor-addons
Files:
12 added
4 deleted
26 edited
1 copied

Legend:

Unmodified
Added
Removed
  • ultra-elementor-addons/tags/2.0.1/README.txt

    r3252875 r3254461  
    44Tags: elementor, elementor addons, elementor widgets
    55Requires at least: 4.4
    6 Tested up to: 6.7.2
    7 Stable tag: 2.0.0
    8 Requires PHP: 5.6
     6Tested up to: 6.7
     7Stable tag: 2.0.1
     8Requires PHP: 7.0
    99License: GPLv2 or later
    1010License URI: https://www.gnu.org/licenses/gpl-2.0.html
     
    6060== Changelog ==
    6161
     62= 2.0.1 - 12 March 2025 =
     63* Fixed WP Coding Standard Issues.
     64
    6265= 2.0.0 - 09 March 2025 =
    6366* Refactor the code
  • ultra-elementor-addons/tags/2.0.1/includes/class-dashboard.php

    r3252875 r3254461  
    8585            }
    8686
    87             add_submenu_page( self::PAGE_SLUG, sprintf( __( '%s - Ultra Elementor Addons', 'ultra-elementor-addons' ), $value['title'] ), $value['title'], 'manage_options', self::PAGE_SLUG . '#' . $key, [ __CLASS__, 'view_main' ] );
     87            add_submenu_page(
     88                self::PAGE_SLUG,
     89                sprintf(
     90                    /* translators: %s: Page Title */
     91                    __( '%s - Ultra Elementor Addons', 'ultra-elementor-addons' ),
     92                    $value['title']
     93                ),
     94                $value['title'],
     95                'manage_options',
     96                self::PAGE_SLUG . '#' . $key,
     97                [ __CLASS__, 'view_main' ]
     98            );
    8899        }
    89100    }
  • ultra-elementor-addons/tags/2.0.1/includes/class-widgets-base.php

    r3252875 r3254461  
    3737                [
    3838                    'type' => Controls_Manager::RAW_HTML,
    39                     'raw'  => __( sprintf( 'Upgrade to <a href="%s" target="_blank">Pro Version</a> for more features, customization options & widgets!', ultra_addons_fs()->get_upgrade_url() ), 'ultra-elementor-addons' ),
     39                    'raw'  => sprintf(
     40                        /* translators: 1: Upgrade URL */
     41                        __( 'Upgrade to <a href="%s" target="_blank">Pro Version</a> for more features, customization options & widgets!', 'ultra-elementor-addons' ),
     42                        ultra_addons_fs()->get_upgrade_url()
     43                    ),
    4044                ]
    4145            );
  • ultra-elementor-addons/tags/2.0.1/includes/widgets/class-accordion.php

    r3252875 r3254461  
    463463
    464464        ?>
    465         <div class="ua-accordion accordion-<?php echo esc_attr( $this->get_id() ); ?>" <?php echo 'data-accordion-id="' . esc_attr( $this->get_id() ) . '"'; ?> data-speed="<?php echo $settings[ self::W_NAME . 'speed' ]; ?>" <?php echo $this->get_render_attribute_string( 'ua_accordion' ); ?>>
     465        <div class="ua-accordion accordion-<?php echo esc_attr( $this->get_id() ); ?>" <?php echo 'data-accordion-id="' . esc_attr( $this->get_id() ) . '"'; ?> data-speed="<?php echo esc_attr( $settings[ self::W_NAME . 'speed' ] ); ?>" <?php echo esc_attr( $this->get_render_attribute_string( 'ua_accordion' ) ); ?>>
    466466            <?php
    467467            foreach ( $settings[ self::W_NAME . 'accordions' ] as $key => $accordion ) {
     
    469469
    470470                ?>
    471                 <div class="ua-accordion__item" <?php echo $this->get_render_attribute_string( self::W_NAME . 'item' ); ?>>
     471                <div class="ua-accordion__item" <?php $this->print_render_attribute_string( self::W_NAME . 'item' ); ?>>
    472472                    <div class="ua-accordion-header
    473473                    <?php
     
    475475                        echo 'ua-a-active';}
    476476                    ?>
    477                     " <?php echo $this->get_render_attribute_string( self::W_NAME . 'title' ); ?>>
    478                         <?php echo $accordion[ self::W_NAME . 'title' ]; ?>
     477                    " <?php $this->print_render_attribute_string( self::W_NAME . 'title' ); ?>>
     478                        <?php echo esc_html( $accordion[ self::W_NAME . 'title' ] ); ?>
    479479                        <div class="ua-accordion-icon"><i class="eicon-plus-circle-o"></i></div>
    480480                    </div>
     
    484484                        echo 'style="display:block;"';}
    485485                    ?>
    486                     <?php echo $this->get_render_attribute_string( self::W_NAME . 'contents' ); ?>>
    487                         <?php echo $accordion[ self::W_NAME . 'contents' ]; ?>
     486                    <?php $this->print_render_attribute_string( self::W_NAME . 'contents' ); ?>>
     487                        <?php echo esc_html( $accordion[ self::W_NAME . 'contents' ] ); ?>
    488488                    </div>
    489489                </div>
  • ultra-elementor-addons/tags/2.0.1/includes/widgets/class-animated-headlines.php

    r3252875 r3254461  
    319319        <div class="ua-animated-heading" id="ua-animated-heading-<?php echo esc_attr( $this->get_id() ); ?>">
    320320            <div class="ua-a-h-wrapper">
    321                 <<?php echo $settings['ua_a_h_title_tag']; ?> class="ua-a-h-title <?php echo $settings[ self::W_NAME . 'a_style' ]; ?>">
     321                <<?php echo esc_attr( $settings['ua_a_h_title_tag'] ); ?> class="ua-a-h-title <?php echo esc_attr( $settings[ self::W_NAME . 'a_style' ] ); ?>">
    322322                    <span class="ua-a-t-first">
    323                         <?php echo $settings['ua_a_h_first_heading']; ?>
     323                        <?php echo esc_html( $settings['ua_a_h_first_heading'] ); ?>
    324324                    </span>
    325325                    <span class="ua-a-t-second">
     
    328328                            ?>
    329329                            <b class="ua-a-h-s-h <?php echo ( $key == 0 ) ? 'is-visible' : ''; ?>">
    330                                 <?php echo $tab['ua_a_h_second_heading']; ?>
     330                                <?php echo esc_html( $tab['ua_a_h_second_heading'] ); ?>
    331331                            </b>
    332332                            <?php
     
    334334                        ?>
    335335                    </span>
    336                 </<?php echo $settings['ua_a_h_title_tag']; ?>>
     336                </<?php echo esc_attr( $settings['ua_a_h_title_tag'] ); ?>>
    337337            </div>
    338338        </div>
  • ultra-elementor-addons/tags/2.0.1/includes/widgets/class-box.php

    r3252875 r3254461  
    8585            self::W_NAME . 'box_content_sections',
    8686            [
    87                 'label' => __( 'Content' ),
     87                'label' => __( 'Content', 'ultra-elementor-addons' ),
    8888            ]
    8989        );
     
    539539                } else {
    540540                    ?>
    541                     <i class="<?php echo $settings['icon']; ?>" aria-hidden="true"></i>
     541                    <i class="<?php echo esc_html( $settings['icon'] ); ?>" aria-hidden="true"></i>
    542542                    <?php
    543543                }
     
    545545            </div>
    546546            <h4 class="ua-box__title" <?php $this->get_render_attribute_string( self::W_NAME . 'b_title' ); ?>>
    547                 <?php echo $settings[ self::W_NAME . 'b_title' ]; ?>
     547                <?php echo esc_html( $settings[ self::W_NAME . 'b_title' ] ); ?>
    548548            </h4>
    549549            <div class="ua-box__content">
    550                 <?php echo $settings[ self::W_NAME . 'contents' ]; ?>
     550                <?php echo esc_html( $settings[ self::W_NAME . 'contents' ] ); ?>
    551551            </div>
    552         </div>   
     552        </div>
    553553        <?php
    554554    }
  • ultra-elementor-addons/tags/2.0.1/includes/widgets/class-image-comparison.php

    r3252875 r3254461  
    554554        ?>
    555555        <div class="ua-image-comparison" id="ua-image-comparison" class="twentytwenty-container" data-config='<?php echo wp_json_encode( $data ); ?>'>
    556             <?php echo Group_Control_Image_Size::get_attachment_image_html( $settings, 'image_size', 'before_image' ); ?>
    557             <?php echo Group_Control_Image_Size::get_attachment_image_html( $settings, 'image_size', 'after_image' ); ?>
     556            <?php echo wp_kses_post( Group_Control_Image_Size::get_attachment_image_html( $settings, 'image_size', 'before_image' ) ); ?>
     557            <?php echo wp_kses_post( Group_Control_Image_Size::get_attachment_image_html( $settings, 'image_size', 'after_image' ) ); ?>
    558558        </div>
    559559        <?php
  • ultra-elementor-addons/tags/2.0.1/includes/widgets/class-team-member.php

    r3252875 r3254461  
    272272                        'tm__s1' => 'Default',
    273273                    ],
    274                     'description' => __( sprintf( 'Upgrade to <a href="%s" target="_blank">Pro Version</a>', ultra_addons_fs()->get_upgrade_url() ), 'ultra-elementor-addons' ),
     274                    'description' => sprintf(
     275                        /* translators: 1: Upgrade URL */
     276                        __( 'Upgrade to <a href="%s" target="_blank">Pro Version</a> for more features, customization options & widgets!', 'ultra-elementor-addons' ),
     277                        ultra_addons_fs()->get_upgrade_url()
     278                    ),
    275279                ]
    276280            );
     
    760764        ?>
    761765        <div class="ua-team-members" id="ua-tm-<?php echo esc_attr( $this->get_id() ); ?>">
    762             <div class="ua-t-m <?php echo $settings['tm_style']; ?>">
     766            <div class="ua-t-m <?php echo esc_attr( $settings['tm_style'] ); ?>">
    763767                <div class="ua-tm__avatar">
    764                     <?php echo Group_Control_Image_Size::get_attachment_image_html( $settings, 'tm_m_avatar_size', 'tm_m_avatar' ); ?>
     768                    <?php echo wp_kses_post( Group_Control_Image_Size::get_attachment_image_html( $settings, 'tm_m_avatar_size', 'tm_m_avatar' ) ); ?>
    765769                </div>
    766770                <div class="ua-tm__info">
    767                     <h3 <?php $this->print_render_attribute_string( 'tm_name' ); ?>><?php echo $settings['tm_name']; ?></h3>
    768                     <h4 <?php $this->print_render_attribute_string( 'tm_designation' ); ?>><?php echo $settings['tm_designation']; ?></h4>
    769                     <p <?php $this->print_render_attribute_string( 'tm_content' ); ?>><?php echo $settings['tm_content']; ?></p>
     771                    <h3 <?php $this->print_render_attribute_string( 'tm_name' ); ?>><?php echo esc_html( $settings['tm_name'] ); ?></h3>
     772                    <h4 <?php $this->print_render_attribute_string( 'tm_designation' ); ?>><?php echo esc_html( $settings['tm_designation'] ); ?></h4>
     773                    <p <?php $this->print_render_attribute_string( 'tm_content' ); ?>><?php echo esc_html( $settings['tm_content'] ); ?></p>
    770774                </div>
    771775                <?php
     
    793797                        } else {
    794798                            ?>
    795                                     <i class="<?php echo $social_link['icon']; ?>" aria-hidden="true"></i>
     799                                    <i class="<?php echo esc_html( $social_link['icon'] ); ?>" aria-hidden="true"></i>
    796800                                <?php
    797801                        }
  • ultra-elementor-addons/tags/2.0.1/includes/widgets/class-testimonial.php

    r3252875 r3254461  
    405405                <div class="t_item">
    406406                    <div class="t_txt" <?php $this->print_render_attribute_string( 't_content' ); ?>>
    407                         <?php echo $settings['t_content']; ?>
     407                        <?php echo esc_html( $settings['t_content'] ); ?>
    408408                    </div>
    409409                    <div class="client_info text-center">
    410410                        <div class="c_img">
    411                             <?php echo Group_Control_Image_Size::get_attachment_image_html( $settings, 'medium', 't_author_avatar' ); ?>
    412                            
     411                            <?php echo wp_kses_post( Group_Control_Image_Size::get_attachment_image_html( $settings, 'medium', 't_author_avatar' ) ); ?>
    413412                        </div>
    414413                        <div class="c_o_info">
    415                             <h2 <?php $this->print_render_attribute_string( 't_author' ); ?>><?php echo $settings['t_author']; ?></h2>
    416                             <h3 <?php $this->print_render_attribute_string( 't_a_title' ); ?>><?php echo $settings['t_a_title']; ?></h3>
     414                            <h2 <?php $this->print_render_attribute_string( 't_author' ); ?>><?php echo esc_html( $settings['t_author'] ); ?></h2>
     415                            <h3 <?php $this->print_render_attribute_string( 't_a_title' ); ?>><?php echo esc_html( $settings['t_a_title'] ); ?></h3>
    417416                        </div>
    418417                    </div>
  • ultra-elementor-addons/tags/2.0.1/templates/admin/dashboard-home.php

    r2342983 r3254461  
     1<?php
     2defined( 'ABSPATH' ) || die();
     3?>
     4
    15<h1>Welcome ❤️</h1>
    26
  • ultra-elementor-addons/tags/2.0.1/templates/admin/dashboard-main.php

    r3252875 r3254461  
    11<?php
    2 
    3 defined('ABSPATH') || die();
     2defined( 'ABSPATH' ) || die();
    43?>
    54<div class="wrap">
    6     <h1 class="screen-reader-text"> <?php _e('Ultra Elementor Addons', 'ultra-elementor-addons'); ?></h1>
    7     <form action="" class="ua-dashboard-form" method="POST">
    8         <div class="ua-db-tabs">
    9             <ul class="ua-tabs__nav">
    10                 <?php
    11                 $tabs = self::tabs();
    12                 foreach ($tabs as $key => $value) {
    13                 ?>
    14                     <li><a href="#<?php echo $key; ?>"><?php echo $value['title']; ?></a></li>
    15                 <?php
    16                 }
    17                 ?>
    18             </ul>
    19         </div>
    20         <div class="ua-w-s__btn">
    21             <?php echo submit_button( "Save Changes", 'submit', 'save-w', '', ''); ?>
    22         </div>
    23         <div class="ua-tabs__content">
    24             <?php
    25             $tabs = self::tabs();
    26             foreach ( $tabs as $key => $value) {
    27                 if (empty($value['view']) || !is_callable($value['view'])) {
    28                     continue;
    29                 }
    30             ?>
    31             <div class="ua-tabs__item" id="<?php echo $key; ?>">
    32                 <?php call_user_func($value['view'], $key, $value); ?>
    33             </div>
    34             <?php
    35             }
    36             ?>
    37         </div>
    38     </form>
     5    <h1 class="screen-reader-text"><?php esc_html_e( 'Ultra Elementor Addons', 'ultra-elementor-addons' ); ?></h1>
     6    <form action="" class="ua-dashboard-form" method="POST">
     7        <?php wp_nonce_field( 'ua-dashboard' ); ?>
     8        <div class="ua-db-tabs">
     9            <ul class="ua-tabs__nav">
     10                <?php
     11                $tabs = self::tabs();
     12                foreach ($tabs as $key => $value) {
     13                ?>
     14                    <li><a href="#<?php echo esc_attr( $key ); ?>"><?php echo esc_html( $value['title'] ); ?></a></li>
     15                <?php
     16                }
     17                ?>
     18            </ul>
     19        </div>
     20        <div class="ua-w-s__btn">
     21            <?php submit_button( esc_html__( 'Save', 'ultra-elementor-addons' ), 'submit', 'save-w', '', '' ); ?>
     22        </div>
     23        <div class="ua-tabs__content">
     24            <?php
     25            $tabs = self::tabs();
     26            foreach ( $tabs as $key => $value) {
     27                if (empty($value['view']) || !is_callable($value['view'])) {
     28                    continue;
     29                }
     30            ?>
     31            <div class="ua-tabs__item" id="<?php echo esc_attr( $key ); ?>">
     32                <?php call_user_func($value['view'], $key, $value); ?>
     33            </div>
     34            <?php
     35            }
     36            ?>
     37        </div>
     38    </form>
    3939</div>
  • ultra-elementor-addons/tags/2.0.1/templates/admin/dashboard-widgets.php

    r2342983 r3254461  
    11<?php
    22
    3 defined('ABSPATH') || die();
     3defined( 'ABSPATH' ) || die();
    44
    55$all_widgets = self::all_widgets();
    66$inactive_widgets = self::inactive_widgets();
    77if ( isset( $_POST['save-w']) ) {
    8    
    9     $widgets = ! empty( $_POST['widgets']) ? $_POST['widgets'] : [];
    10     $i_widgets = array_diff(array_keys($all_widgets), $widgets );
    11     self::save_inactive_widgets(  $i_widgets );
    12     wp_safe_redirect( admin_url( 'admin.php?page=ultra-addons#widgets' ) );
    13     exit();
     8
     9    // Validate nonce.
     10    if ( ! isset( $_POST['_wpnonce'] ) || ! wp_verify_nonce( sanitize_text_field( wp_unslash( $_POST['_wpnonce'] ) ), 'ua-dashboard' ) ) {
     11        wp_die( esc_html__( 'Nonce validation failed!', 'ultra-elementor-addons' ) );
     12    }
     13
     14    $widgets   = ! empty( $_POST['widgets'] ) ? $_POST['widgets'] : []; // @phpcs:ignore WordPress.Security.ValidatedSanitizedInput.InputNotSanitized
     15    $i_widgets = array_diff( array_keys( $all_widgets ), $widgets );
     16    self::save_inactive_widgets( $i_widgets );
     17    wp_safe_redirect( admin_url( 'admin.php?page=ultra-addons#widgets' ) );
     18    exit();
    1419}
    1520?>
    1621<div class="wrap">
    17     <div class="ua-widgets-list">
    18         <?php
    19         uksort( $all_widgets, 'ua_custom_sort' );
    20         function ua_custom_sort( $a, $b) {
    21             return strcasecmp( $a, $b);
    22         }
    23         foreach ( $all_widgets as $key => $value) {
    24            
    25             if ( ! in_array( $key, $inactive_widgets)) {
    26                 $checked = 'checked="checked"';
    27             }
    28            
    29             else {
    30                 $checked = '';
    31             }
     22    <div class="ua-widgets-list">
     23        <?php
     24        uksort( $all_widgets, 'ua_custom_sort' );
     25        function ua_custom_sort( $a, $b) {
     26            return strcasecmp( $a, $b);
     27        }
     28        foreach ( $all_widgets as $key => $value) {
     29           
     30            if ( ! in_array( $key, $inactive_widgets)) {
     31                $checked = 'checked="checked"';
     32            }
     33           
     34            else {
     35                $checked = '';
     36            }
    3237
    33             if ( ultra_addons_fs()->is_not_paying() ) {
    34                 if ( $value['is_pro'] == true ) {
    35                     $checked = 'disabled="disabled"';
    36                 }
    37             }
    38         ?>
     38            if ( ultra_addons_fs()->is_not_paying() ) {
     39                if ( $value['is_pro'] == true ) {
     40                    $checked = 'disabled="disabled"';
     41                }
     42            }
     43        ?>
    3944
    40             <div class="ua-w__item">
    41                 <span class="ua-w-i__icon">
    42                     <i class="<?php echo $value['icon']; ?>"></i>
    43                 </span>
    44                 <h3 class="ua-w-i__name"><?php echo $value['title']; ?> <a href="<?php echo $value['demo']; ?>"><i class="eicon-eye"></i></a></h3>
    45                 <div class="ua-w-i__toggle switch_box">
    46                     <input class="ua-toggle" <?php echo $checked;?> id="ua-widget-<?php echo $key;?>" type="checkbox" name="widgets[]" value="<?php echo $key;?>">
    47                 </div>
    48             </div>
    49 
    50         <?php
    51         }
    52         ?>
    53     </div>
     45            <div class="ua-w__item">
     46                <span class="ua-w-i__icon">
     47                    <i class="<?php echo esc_html( $value['icon'] ); ?>"></i>
     48                </span>
     49                <h3 class="ua-w-i__name"><?php echo esc_html( $value['title'] ); ?> <a href="<?php echo esc_url( $value['demo'] ); ?>"><i class="eicon-eye"></i></a></h3>
     50                <div class="ua-w-i__toggle switch_box">
     51                    <input class="ua-toggle" <?php echo esc_attr( $checked );?> id="ua-widget-<?php echo esc_attr( $key );?>" type="checkbox" name="widgets[]" value="<?php echo esc_attr( $key );?>">
     52                </div>
     53            </div>
     54        <?php
     55        }
     56        ?>
     57    </div>
    5458</div>
  • ultra-elementor-addons/tags/2.0.1/ultra-elementor-addons.php

    r3252875 r3254461  
    1010 * Plugin URI:      https://ultradevs.com/ultra-elementor-addons
    1111 * Description:     <a href="https://ultradevs.com/ultra-elementor-addons">Ultra Elementor Addons</a> is a collection of helpful widget for Elementor.
    12  * Version: 2.0.0
     12 * Version: 2.0.1
    1313 * Author:          ultraDevs
    1414 * Author URI:      https://ultradevs.com
     
    2727
    2828define( 'ULTRA_ADDONS_TD', 'ultra-elementor-addons' );
    29 define( 'ULTRA_ADDONS_VERSION', '2.0.0' );
     29define( 'ULTRA_ADDONS_VERSION', '2.0.1' );
    3030define( 'ULTRA_ADDONS_PATH', plugin_dir_path( __FILE__ ) );
    3131define( 'ULTRA_ADDONS_URL', plugin_dir_url( __FILE__ ) );
     
    184184     */
    185185    public function admin_notice_missing_main_plugin() {
    186         if ( isset( $_GET['activate'] ) ) unset( $_GET['activate'] );
     186        if ( isset( $_GET['activate'] ) ) {
     187            unset( $_GET['activate'] );
     188        }
    187189        if ( ! is_plugin_active( 'elementor/elementor.php' ) ) {
    188190            $message = sprintf(
     191                /* translators: 1: Plugin name 2: Elementor */
    189192                esc_html__( '%1$s requires %2$s to be installed and activated. Please activate %2$s to continue.', 'ultra-elementor-addons' ),
    190193                '<strong>' . esc_html__( 'Ultra Addons', 'ultra-elementor-addons' ) . '</strong>',
     
    204207
    205208        $message = sprintf(
     209            /* translators: 1: Plugin name 2: Elementor 3: Required Elementor version */
    206210            esc_html__( ' %1$s requires %2$s version %3$s or greater.', 'ultra-elementor-addons' ),
    207211            '<strong>' . esc_html__( 'Ultra Elementor Addons', 'ultra-elementor-addons' ) . '</strong>',
     
    221225
    222226        $message = sprintf(
     227            /* translators: 1: Plugin name 2: PHP 3: Required PHP version */
    223228            esc_html__( ' %1$s requires %2$s version %3$s or greater.', 'ultra-elementor-addons' ),
    224229            '<strong>' . esc_html__( 'Ultra Elementor Addons', 'ultra-elementor-addons') . '</strong>',
     
    253258}
    254259
    255 
    256 // if ( class_exists( 'UltraAddons_Inc\\Init' ) ) {
    257 //  UltraAddons_Inc\Init::register_services();
    258 // }
    259 
    260260Ultra_Elementor_Addons::instance();
  • ultra-elementor-addons/trunk/README.txt

    r3252875 r3254461  
    44Tags: elementor, elementor addons, elementor widgets
    55Requires at least: 4.4
    6 Tested up to: 6.7.2
    7 Stable tag: 2.0.0
    8 Requires PHP: 5.6
     6Tested up to: 6.7
     7Stable tag: 2.0.1
     8Requires PHP: 7.0
    99License: GPLv2 or later
    1010License URI: https://www.gnu.org/licenses/gpl-2.0.html
     
    6060== Changelog ==
    6161
     62= 2.0.1 - 12 March 2025 =
     63* Fixed WP Coding Standard Issues.
     64
    6265= 2.0.0 - 09 March 2025 =
    6366* Refactor the code
  • ultra-elementor-addons/trunk/includes/class-dashboard.php

    r3252875 r3254461  
    8585            }
    8686
    87             add_submenu_page( self::PAGE_SLUG, sprintf( __( '%s - Ultra Elementor Addons', 'ultra-elementor-addons' ), $value['title'] ), $value['title'], 'manage_options', self::PAGE_SLUG . '#' . $key, [ __CLASS__, 'view_main' ] );
     87            add_submenu_page(
     88                self::PAGE_SLUG,
     89                sprintf(
     90                    /* translators: %s: Page Title */
     91                    __( '%s - Ultra Elementor Addons', 'ultra-elementor-addons' ),
     92                    $value['title']
     93                ),
     94                $value['title'],
     95                'manage_options',
     96                self::PAGE_SLUG . '#' . $key,
     97                [ __CLASS__, 'view_main' ]
     98            );
    8899        }
    89100    }
  • ultra-elementor-addons/trunk/includes/class-widgets-base.php

    r3252875 r3254461  
    3737                [
    3838                    'type' => Controls_Manager::RAW_HTML,
    39                     'raw'  => __( sprintf( 'Upgrade to <a href="%s" target="_blank">Pro Version</a> for more features, customization options & widgets!', ultra_addons_fs()->get_upgrade_url() ), 'ultra-elementor-addons' ),
     39                    'raw'  => sprintf(
     40                        /* translators: 1: Upgrade URL */
     41                        __( 'Upgrade to <a href="%s" target="_blank">Pro Version</a> for more features, customization options & widgets!', 'ultra-elementor-addons' ),
     42                        ultra_addons_fs()->get_upgrade_url()
     43                    ),
    4044                ]
    4145            );
  • ultra-elementor-addons/trunk/includes/widgets/class-accordion.php

    r3252875 r3254461  
    463463
    464464        ?>
    465         <div class="ua-accordion accordion-<?php echo esc_attr( $this->get_id() ); ?>" <?php echo 'data-accordion-id="' . esc_attr( $this->get_id() ) . '"'; ?> data-speed="<?php echo $settings[ self::W_NAME . 'speed' ]; ?>" <?php echo $this->get_render_attribute_string( 'ua_accordion' ); ?>>
     465        <div class="ua-accordion accordion-<?php echo esc_attr( $this->get_id() ); ?>" <?php echo 'data-accordion-id="' . esc_attr( $this->get_id() ) . '"'; ?> data-speed="<?php echo esc_attr( $settings[ self::W_NAME . 'speed' ] ); ?>" <?php echo esc_attr( $this->get_render_attribute_string( 'ua_accordion' ) ); ?>>
    466466            <?php
    467467            foreach ( $settings[ self::W_NAME . 'accordions' ] as $key => $accordion ) {
     
    469469
    470470                ?>
    471                 <div class="ua-accordion__item" <?php echo $this->get_render_attribute_string( self::W_NAME . 'item' ); ?>>
     471                <div class="ua-accordion__item" <?php $this->print_render_attribute_string( self::W_NAME . 'item' ); ?>>
    472472                    <div class="ua-accordion-header
    473473                    <?php
     
    475475                        echo 'ua-a-active';}
    476476                    ?>
    477                     " <?php echo $this->get_render_attribute_string( self::W_NAME . 'title' ); ?>>
    478                         <?php echo $accordion[ self::W_NAME . 'title' ]; ?>
     477                    " <?php $this->print_render_attribute_string( self::W_NAME . 'title' ); ?>>
     478                        <?php echo esc_html( $accordion[ self::W_NAME . 'title' ] ); ?>
    479479                        <div class="ua-accordion-icon"><i class="eicon-plus-circle-o"></i></div>
    480480                    </div>
     
    484484                        echo 'style="display:block;"';}
    485485                    ?>
    486                     <?php echo $this->get_render_attribute_string( self::W_NAME . 'contents' ); ?>>
    487                         <?php echo $accordion[ self::W_NAME . 'contents' ]; ?>
     486                    <?php $this->print_render_attribute_string( self::W_NAME . 'contents' ); ?>>
     487                        <?php echo esc_html( $accordion[ self::W_NAME . 'contents' ] ); ?>
    488488                    </div>
    489489                </div>
  • ultra-elementor-addons/trunk/includes/widgets/class-animated-headlines.php

    r3252875 r3254461  
    319319        <div class="ua-animated-heading" id="ua-animated-heading-<?php echo esc_attr( $this->get_id() ); ?>">
    320320            <div class="ua-a-h-wrapper">
    321                 <<?php echo $settings['ua_a_h_title_tag']; ?> class="ua-a-h-title <?php echo $settings[ self::W_NAME . 'a_style' ]; ?>">
     321                <<?php echo esc_attr( $settings['ua_a_h_title_tag'] ); ?> class="ua-a-h-title <?php echo esc_attr( $settings[ self::W_NAME . 'a_style' ] ); ?>">
    322322                    <span class="ua-a-t-first">
    323                         <?php echo $settings['ua_a_h_first_heading']; ?>
     323                        <?php echo esc_html( $settings['ua_a_h_first_heading'] ); ?>
    324324                    </span>
    325325                    <span class="ua-a-t-second">
     
    328328                            ?>
    329329                            <b class="ua-a-h-s-h <?php echo ( $key == 0 ) ? 'is-visible' : ''; ?>">
    330                                 <?php echo $tab['ua_a_h_second_heading']; ?>
     330                                <?php echo esc_html( $tab['ua_a_h_second_heading'] ); ?>
    331331                            </b>
    332332                            <?php
     
    334334                        ?>
    335335                    </span>
    336                 </<?php echo $settings['ua_a_h_title_tag']; ?>>
     336                </<?php echo esc_attr( $settings['ua_a_h_title_tag'] ); ?>>
    337337            </div>
    338338        </div>
  • ultra-elementor-addons/trunk/includes/widgets/class-box.php

    r3252875 r3254461  
    8585            self::W_NAME . 'box_content_sections',
    8686            [
    87                 'label' => __( 'Content' ),
     87                'label' => __( 'Content', 'ultra-elementor-addons' ),
    8888            ]
    8989        );
     
    539539                } else {
    540540                    ?>
    541                     <i class="<?php echo $settings['icon']; ?>" aria-hidden="true"></i>
     541                    <i class="<?php echo esc_html( $settings['icon'] ); ?>" aria-hidden="true"></i>
    542542                    <?php
    543543                }
     
    545545            </div>
    546546            <h4 class="ua-box__title" <?php $this->get_render_attribute_string( self::W_NAME . 'b_title' ); ?>>
    547                 <?php echo $settings[ self::W_NAME . 'b_title' ]; ?>
     547                <?php echo esc_html( $settings[ self::W_NAME . 'b_title' ] ); ?>
    548548            </h4>
    549549            <div class="ua-box__content">
    550                 <?php echo $settings[ self::W_NAME . 'contents' ]; ?>
     550                <?php echo esc_html( $settings[ self::W_NAME . 'contents' ] ); ?>
    551551            </div>
    552         </div>   
     552        </div>
    553553        <?php
    554554    }
  • ultra-elementor-addons/trunk/includes/widgets/class-image-comparison.php

    r3252875 r3254461  
    554554        ?>
    555555        <div class="ua-image-comparison" id="ua-image-comparison" class="twentytwenty-container" data-config='<?php echo wp_json_encode( $data ); ?>'>
    556             <?php echo Group_Control_Image_Size::get_attachment_image_html( $settings, 'image_size', 'before_image' ); ?>
    557             <?php echo Group_Control_Image_Size::get_attachment_image_html( $settings, 'image_size', 'after_image' ); ?>
     556            <?php echo wp_kses_post( Group_Control_Image_Size::get_attachment_image_html( $settings, 'image_size', 'before_image' ) ); ?>
     557            <?php echo wp_kses_post( Group_Control_Image_Size::get_attachment_image_html( $settings, 'image_size', 'after_image' ) ); ?>
    558558        </div>
    559559        <?php
  • ultra-elementor-addons/trunk/includes/widgets/class-team-member.php

    r3252875 r3254461  
    272272                        'tm__s1' => 'Default',
    273273                    ],
    274                     'description' => __( sprintf( 'Upgrade to <a href="%s" target="_blank">Pro Version</a>', ultra_addons_fs()->get_upgrade_url() ), 'ultra-elementor-addons' ),
     274                    'description' => sprintf(
     275                        /* translators: 1: Upgrade URL */
     276                        __( 'Upgrade to <a href="%s" target="_blank">Pro Version</a> for more features, customization options & widgets!', 'ultra-elementor-addons' ),
     277                        ultra_addons_fs()->get_upgrade_url()
     278                    ),
    275279                ]
    276280            );
     
    760764        ?>
    761765        <div class="ua-team-members" id="ua-tm-<?php echo esc_attr( $this->get_id() ); ?>">
    762             <div class="ua-t-m <?php echo $settings['tm_style']; ?>">
     766            <div class="ua-t-m <?php echo esc_attr( $settings['tm_style'] ); ?>">
    763767                <div class="ua-tm__avatar">
    764                     <?php echo Group_Control_Image_Size::get_attachment_image_html( $settings, 'tm_m_avatar_size', 'tm_m_avatar' ); ?>
     768                    <?php echo wp_kses_post( Group_Control_Image_Size::get_attachment_image_html( $settings, 'tm_m_avatar_size', 'tm_m_avatar' ) ); ?>
    765769                </div>
    766770                <div class="ua-tm__info">
    767                     <h3 <?php $this->print_render_attribute_string( 'tm_name' ); ?>><?php echo $settings['tm_name']; ?></h3>
    768                     <h4 <?php $this->print_render_attribute_string( 'tm_designation' ); ?>><?php echo $settings['tm_designation']; ?></h4>
    769                     <p <?php $this->print_render_attribute_string( 'tm_content' ); ?>><?php echo $settings['tm_content']; ?></p>
     771                    <h3 <?php $this->print_render_attribute_string( 'tm_name' ); ?>><?php echo esc_html( $settings['tm_name'] ); ?></h3>
     772                    <h4 <?php $this->print_render_attribute_string( 'tm_designation' ); ?>><?php echo esc_html( $settings['tm_designation'] ); ?></h4>
     773                    <p <?php $this->print_render_attribute_string( 'tm_content' ); ?>><?php echo esc_html( $settings['tm_content'] ); ?></p>
    770774                </div>
    771775                <?php
     
    793797                        } else {
    794798                            ?>
    795                                     <i class="<?php echo $social_link['icon']; ?>" aria-hidden="true"></i>
     799                                    <i class="<?php echo esc_html( $social_link['icon'] ); ?>" aria-hidden="true"></i>
    796800                                <?php
    797801                        }
  • ultra-elementor-addons/trunk/includes/widgets/class-testimonial.php

    r3252875 r3254461  
    405405                <div class="t_item">
    406406                    <div class="t_txt" <?php $this->print_render_attribute_string( 't_content' ); ?>>
    407                         <?php echo $settings['t_content']; ?>
     407                        <?php echo esc_html( $settings['t_content'] ); ?>
    408408                    </div>
    409409                    <div class="client_info text-center">
    410410                        <div class="c_img">
    411                             <?php echo Group_Control_Image_Size::get_attachment_image_html( $settings, 'medium', 't_author_avatar' ); ?>
    412                            
     411                            <?php echo wp_kses_post( Group_Control_Image_Size::get_attachment_image_html( $settings, 'medium', 't_author_avatar' ) ); ?>
    413412                        </div>
    414413                        <div class="c_o_info">
    415                             <h2 <?php $this->print_render_attribute_string( 't_author' ); ?>><?php echo $settings['t_author']; ?></h2>
    416                             <h3 <?php $this->print_render_attribute_string( 't_a_title' ); ?>><?php echo $settings['t_a_title']; ?></h3>
     414                            <h2 <?php $this->print_render_attribute_string( 't_author' ); ?>><?php echo esc_html( $settings['t_author'] ); ?></h2>
     415                            <h3 <?php $this->print_render_attribute_string( 't_a_title' ); ?>><?php echo esc_html( $settings['t_a_title'] ); ?></h3>
    417416                        </div>
    418417                    </div>
  • ultra-elementor-addons/trunk/templates/admin/dashboard-home.php

    r2342983 r3254461  
     1<?php
     2defined( 'ABSPATH' ) || die();
     3?>
     4
    15<h1>Welcome ❤️</h1>
    26
  • ultra-elementor-addons/trunk/templates/admin/dashboard-main.php

    r3252875 r3254461  
    11<?php
    2 
    3 defined('ABSPATH') || die();
     2defined( 'ABSPATH' ) || die();
    43?>
    54<div class="wrap">
    6     <h1 class="screen-reader-text"> <?php _e('Ultra Elementor Addons', 'ultra-elementor-addons'); ?></h1>
    7     <form action="" class="ua-dashboard-form" method="POST">
    8         <div class="ua-db-tabs">
    9             <ul class="ua-tabs__nav">
    10                 <?php
    11                 $tabs = self::tabs();
    12                 foreach ($tabs as $key => $value) {
    13                 ?>
    14                     <li><a href="#<?php echo $key; ?>"><?php echo $value['title']; ?></a></li>
    15                 <?php
    16                 }
    17                 ?>
    18             </ul>
    19         </div>
    20         <div class="ua-w-s__btn">
    21             <?php echo submit_button( "Save Changes", 'submit', 'save-w', '', ''); ?>
    22         </div>
    23         <div class="ua-tabs__content">
    24             <?php
    25             $tabs = self::tabs();
    26             foreach ( $tabs as $key => $value) {
    27                 if (empty($value['view']) || !is_callable($value['view'])) {
    28                     continue;
    29                 }
    30             ?>
    31             <div class="ua-tabs__item" id="<?php echo $key; ?>">
    32                 <?php call_user_func($value['view'], $key, $value); ?>
    33             </div>
    34             <?php
    35             }
    36             ?>
    37         </div>
    38     </form>
     5    <h1 class="screen-reader-text"><?php esc_html_e( 'Ultra Elementor Addons', 'ultra-elementor-addons' ); ?></h1>
     6    <form action="" class="ua-dashboard-form" method="POST">
     7        <?php wp_nonce_field( 'ua-dashboard' ); ?>
     8        <div class="ua-db-tabs">
     9            <ul class="ua-tabs__nav">
     10                <?php
     11                $tabs = self::tabs();
     12                foreach ($tabs as $key => $value) {
     13                ?>
     14                    <li><a href="#<?php echo esc_attr( $key ); ?>"><?php echo esc_html( $value['title'] ); ?></a></li>
     15                <?php
     16                }
     17                ?>
     18            </ul>
     19        </div>
     20        <div class="ua-w-s__btn">
     21            <?php submit_button( esc_html__( 'Save', 'ultra-elementor-addons' ), 'submit', 'save-w', '', '' ); ?>
     22        </div>
     23        <div class="ua-tabs__content">
     24            <?php
     25            $tabs = self::tabs();
     26            foreach ( $tabs as $key => $value) {
     27                if (empty($value['view']) || !is_callable($value['view'])) {
     28                    continue;
     29                }
     30            ?>
     31            <div class="ua-tabs__item" id="<?php echo esc_attr( $key ); ?>">
     32                <?php call_user_func($value['view'], $key, $value); ?>
     33            </div>
     34            <?php
     35            }
     36            ?>
     37        </div>
     38    </form>
    3939</div>
  • ultra-elementor-addons/trunk/templates/admin/dashboard-widgets.php

    r2342983 r3254461  
    11<?php
    22
    3 defined('ABSPATH') || die();
     3defined( 'ABSPATH' ) || die();
    44
    55$all_widgets = self::all_widgets();
    66$inactive_widgets = self::inactive_widgets();
    77if ( isset( $_POST['save-w']) ) {
    8    
    9     $widgets = ! empty( $_POST['widgets']) ? $_POST['widgets'] : [];
    10     $i_widgets = array_diff(array_keys($all_widgets), $widgets );
    11     self::save_inactive_widgets(  $i_widgets );
    12     wp_safe_redirect( admin_url( 'admin.php?page=ultra-addons#widgets' ) );
    13     exit();
     8
     9    // Validate nonce.
     10    if ( ! isset( $_POST['_wpnonce'] ) || ! wp_verify_nonce( sanitize_text_field( wp_unslash( $_POST['_wpnonce'] ) ), 'ua-dashboard' ) ) {
     11        wp_die( esc_html__( 'Nonce validation failed!', 'ultra-elementor-addons' ) );
     12    }
     13
     14    $widgets   = ! empty( $_POST['widgets'] ) ? $_POST['widgets'] : []; // @phpcs:ignore WordPress.Security.ValidatedSanitizedInput.InputNotSanitized
     15    $i_widgets = array_diff( array_keys( $all_widgets ), $widgets );
     16    self::save_inactive_widgets( $i_widgets );
     17    wp_safe_redirect( admin_url( 'admin.php?page=ultra-addons#widgets' ) );
     18    exit();
    1419}
    1520?>
    1621<div class="wrap">
    17     <div class="ua-widgets-list">
    18         <?php
    19         uksort( $all_widgets, 'ua_custom_sort' );
    20         function ua_custom_sort( $a, $b) {
    21             return strcasecmp( $a, $b);
    22         }
    23         foreach ( $all_widgets as $key => $value) {
    24            
    25             if ( ! in_array( $key, $inactive_widgets)) {
    26                 $checked = 'checked="checked"';
    27             }
    28            
    29             else {
    30                 $checked = '';
    31             }
     22    <div class="ua-widgets-list">
     23        <?php
     24        uksort( $all_widgets, 'ua_custom_sort' );
     25        function ua_custom_sort( $a, $b) {
     26            return strcasecmp( $a, $b);
     27        }
     28        foreach ( $all_widgets as $key => $value) {
     29           
     30            if ( ! in_array( $key, $inactive_widgets)) {
     31                $checked = 'checked="checked"';
     32            }
     33           
     34            else {
     35                $checked = '';
     36            }
    3237
    33             if ( ultra_addons_fs()->is_not_paying() ) {
    34                 if ( $value['is_pro'] == true ) {
    35                     $checked = 'disabled="disabled"';
    36                 }
    37             }
    38         ?>
     38            if ( ultra_addons_fs()->is_not_paying() ) {
     39                if ( $value['is_pro'] == true ) {
     40                    $checked = 'disabled="disabled"';
     41                }
     42            }
     43        ?>
    3944
    40             <div class="ua-w__item">
    41                 <span class="ua-w-i__icon">
    42                     <i class="<?php echo $value['icon']; ?>"></i>
    43                 </span>
    44                 <h3 class="ua-w-i__name"><?php echo $value['title']; ?> <a href="<?php echo $value['demo']; ?>"><i class="eicon-eye"></i></a></h3>
    45                 <div class="ua-w-i__toggle switch_box">
    46                     <input class="ua-toggle" <?php echo $checked;?> id="ua-widget-<?php echo $key;?>" type="checkbox" name="widgets[]" value="<?php echo $key;?>">
    47                 </div>
    48             </div>
    49 
    50         <?php
    51         }
    52         ?>
    53     </div>
     45            <div class="ua-w__item">
     46                <span class="ua-w-i__icon">
     47                    <i class="<?php echo esc_html( $value['icon'] ); ?>"></i>
     48                </span>
     49                <h3 class="ua-w-i__name"><?php echo esc_html( $value['title'] ); ?> <a href="<?php echo esc_url( $value['demo'] ); ?>"><i class="eicon-eye"></i></a></h3>
     50                <div class="ua-w-i__toggle switch_box">
     51                    <input class="ua-toggle" <?php echo esc_attr( $checked );?> id="ua-widget-<?php echo esc_attr( $key );?>" type="checkbox" name="widgets[]" value="<?php echo esc_attr( $key );?>">
     52                </div>
     53            </div>
     54        <?php
     55        }
     56        ?>
     57    </div>
    5458</div>
  • ultra-elementor-addons/trunk/ultra-elementor-addons.php

    r3252875 r3254461  
    1010 * Plugin URI:      https://ultradevs.com/ultra-elementor-addons
    1111 * Description:     <a href="https://ultradevs.com/ultra-elementor-addons">Ultra Elementor Addons</a> is a collection of helpful widget for Elementor.
    12  * Version: 2.0.0
     12 * Version: 2.0.1
    1313 * Author:          ultraDevs
    1414 * Author URI:      https://ultradevs.com
     
    2727
    2828define( 'ULTRA_ADDONS_TD', 'ultra-elementor-addons' );
    29 define( 'ULTRA_ADDONS_VERSION', '2.0.0' );
     29define( 'ULTRA_ADDONS_VERSION', '2.0.1' );
    3030define( 'ULTRA_ADDONS_PATH', plugin_dir_path( __FILE__ ) );
    3131define( 'ULTRA_ADDONS_URL', plugin_dir_url( __FILE__ ) );
     
    184184     */
    185185    public function admin_notice_missing_main_plugin() {
    186         if ( isset( $_GET['activate'] ) ) unset( $_GET['activate'] );
     186        if ( isset( $_GET['activate'] ) ) {
     187            unset( $_GET['activate'] );
     188        }
    187189        if ( ! is_plugin_active( 'elementor/elementor.php' ) ) {
    188190            $message = sprintf(
     191                /* translators: 1: Plugin name 2: Elementor */
    189192                esc_html__( '%1$s requires %2$s to be installed and activated. Please activate %2$s to continue.', 'ultra-elementor-addons' ),
    190193                '<strong>' . esc_html__( 'Ultra Addons', 'ultra-elementor-addons' ) . '</strong>',
     
    204207
    205208        $message = sprintf(
     209            /* translators: 1: Plugin name 2: Elementor 3: Required Elementor version */
    206210            esc_html__( ' %1$s requires %2$s version %3$s or greater.', 'ultra-elementor-addons' ),
    207211            '<strong>' . esc_html__( 'Ultra Elementor Addons', 'ultra-elementor-addons' ) . '</strong>',
     
    221225
    222226        $message = sprintf(
     227            /* translators: 1: Plugin name 2: PHP 3: Required PHP version */
    223228            esc_html__( ' %1$s requires %2$s version %3$s or greater.', 'ultra-elementor-addons' ),
    224229            '<strong>' . esc_html__( 'Ultra Elementor Addons', 'ultra-elementor-addons') . '</strong>',
     
    253258}
    254259
    255 
    256 // if ( class_exists( 'UltraAddons_Inc\\Init' ) ) {
    257 //  UltraAddons_Inc\Init::register_services();
    258 // }
    259 
    260260Ultra_Elementor_Addons::instance();
Note: See TracChangeset for help on using the changeset viewer.