Plugin Directory

Changeset 3320357


Ignore:
Timestamp:
07/01/2025 07:35:13 AM (9 months ago)
Author:
abcplugins
Message:

Update to version 1.2.4 from GitHub

Location:
primekit-addons
Files:
8 added
26 edited
1 copied

Legend:

Unmodified
Added
Removed
  • primekit-addons/tags/1.2.4/Admin/AdminManager.php

    r3318028 r3320357  
    7070
    7171        $this->tracker_primekit_addons();
     72
     73        add_action('admin_footer', [$this, 'primekit_add_footer_rating_notice']);
     74        add_action('admin_footer_text', [$this, 'primekit_custom_admin_footer']);
    7275    }
    7376
     
    219222    }
    220223
     224    /**
     225     * Add a rating notice to the PrimeKit dashboard footer
     226     *
     227     * @return void
     228     */
     229    public function primekit_add_footer_rating_notice() {
     230        // Check if we are on the specific PrimeKit dashboard page
     231        $screen = get_current_screen();
     232        if ($screen->id !== 'toplevel_page_primekit_home') {
     233            return;
     234        }
     235   
     236        ?>
     237        <style>
     238            .primekit-footer-rating {
     239                padding: 20px 0;
     240                text-align: center;
     241                font-size: 13px;
     242                color: #666;
     243            }
     244   
     245            .primekit-footer-rating a {
     246                text-decoration: none;
     247            }
     248   
     249            .primekit-footer-rating .stars {
     250                color: #ffb900;
     251                margin: 0 4px;
     252            }
     253        </style>
     254        <div class="primekit-footer-rating">
     255            <?php
     256            $plugin_name = PRIMEKIT_NAME;
     257            $plugin_slug = 'primekit-addons';
     258            $rating_url  = "https://wordpress.org/support/plugin/{$plugin_slug}/reviews/#new-post";
     259   
     260            echo 'Please rate <strong>' . esc_html($plugin_name) . '</strong>';
     261            echo '<span class="stars">★★★★★</span>';
     262            echo ' on <a href="' . esc_url($rating_url) . '" target="_blank">WordPress.org</a> to help us spread the word.';
     263            ?>
     264        </div>
     265        <?php
     266    }
     267    /**
     268     * Customize the admin footer text
     269     *
     270     * @param string $footer_text Default footer text.
     271     * @return string Modified footer text.
     272     */
     273    public function primekit_custom_admin_footer($footer_text) {
     274       // Match your plugin pages and CPT screen
     275    $show_on_pages = [
     276        'primekit_home',
     277        'primekit_templates',
     278        'primekit_available_widgets',
     279        'primekit_settings',
     280    ];
     281
     282    $is_primekit_page = isset($_GET['page']) && in_array($_GET['page'], $show_on_pages);
     283    $is_primekit_cpt   = isset($_GET['post_type']) && $_GET['post_type'] === 'primekit_library';
     284
     285    if ($is_primekit_page || $is_primekit_cpt) {
     286        $plugin_name = PRIMEKIT_NAME;
     287        $plugin_slug = 'primekit-addons';
     288        $rating_url  = "https://wordpress.org/support/plugin/{$plugin_slug}/reviews/#new-post";
     289
     290        return 'Please rate <strong>' . esc_html($plugin_name) . '</strong> <span style="color:#ffb900;">★★★★★</span> on <a href="' . esc_url($rating_url) . '" target="_blank">WordPress.org</a> to help us spread the word.';
     291    }
     292
     293    // Default for other admin pages
     294    return $footer_text;
     295    }
    221296
    222297
  • primekit-addons/tags/1.2.4/Admin/Inc/Dashboard/AvailableWidgets/RegularTab.php

    r3313257 r3320357  
    602602            self::demo_url('widgets/advanced-list-widget/')
    603603        );
     604        // Glass Card.
     605        PrimeKitWidgets::primekit_available_widget(
     606            'primekit_glass_card_field',
     607            esc_html__('Glass Card', 'primekit-addons'),
     608            PRIMEKIT_ADMIN_ASSETS . '/img/icons/glass-card.svg',
     609            true,
     610            self::demo_url('widgets/glass-card-widget/')
     611        );
    604612
    605613
  • primekit-addons/tags/1.2.4/Frontend/Elementor/Assets/css/style.css

    r3313257 r3320357  
    978978  align-items: center;
    979979  gap: 10px;
     980  transition: all 0.3s ease;
    980981}
    981982
     
    43854386  text-align: center;
    43864387}
     4388
     4389/*---------------------------
     4390Glass Card
     4391---------------------------*/
     4392.primekit-glass-card-icon svg{
     4393  width: 40px;
     4394  height: auto;
     4395}
     4396.primekit-glass-card-area {
     4397  background: linear-gradient(49.64deg, rgba(33, 218, 253, 0.6) 19.57%, rgba(33, 218, 253, 0) 112.42%);
     4398  border-radius: 20px;
     4399  transform: rotate(-10deg);
     4400  width: 250px;
     4401}
     4402
     4403.primekit-glass-card {
     4404  background: rgba(255, 255, 255, 0.02);
     4405  mix-blend-mode: normal;
     4406  border: 1px solid rgba(255, 255, 255, 0.4);
     4407  box-shadow: 0px 10px 30px rgba(12, 60, 84, 0.2);
     4408  backdrop-filter: blur(10px);
     4409  border-radius: 20px;
     4410  transform: rotate(10deg);
     4411  padding: 15px;
     4412  display: flex;
     4413  flex-direction: column;
     4414  justify-content: space-between;
     4415  gap: 110px;
     4416}
     4417
     4418.primekit-glass-card-header {
     4419  display: flex;
     4420  justify-content: space-between;
     4421  gap: 10px;
     4422  align-items: center;
     4423}
     4424
     4425.primekit-glass-card-icon {max-width:50%;}
     4426
     4427.primekit-outline-text {font-size: 37px;font-weight: bold;color: transparent;-webkit-text-stroke: 1px rgba(0, 0, 0, 0.2); /* stroke color with opacity */text-align: center;margin: 0;padding: 0;}
     4428
     4429.primekit-glass-card-footer h2 {
     4430  margin: 0;
     4431  font-family: 'Montserrat';
     4432  font-style: normal;
     4433  font-weight: 600;
     4434  font-size: 22px;
     4435  line-height: 1.3em;
     4436}
  • primekit-addons/tags/1.2.4/Frontend/Elementor/Configuration.php

    r3313257 r3320357  
    324324            'primekit_copyright_field' => 'Copyright\Main',
    325325            'primekit_advanced_list_field' => 'AdvancedList\Main',
     326            'primekit_glass_card_field' => 'GlassCard\Main',
    326327        ];
    327328        foreach ($widgets as $option_name => $widget_class) {
  • primekit-addons/tags/1.2.4/Frontend/Elementor/Globals/CustomCSS.php

    r3209035 r3320357  
    171171         * @return void
    172172         */
    173     private static function add_custom_css_recursive($element_data, &$css)
    174     {
    175         if (!empty($element_data['settings']['primekit_custom_css'])) {
    176             $element_id = $element_data['id'];
    177             $custom_css = $element_data['settings']['primekit_custom_css'];
    178             $css .= sprintf('.elementor-element.elementor-element-%s { %s } ', $element_id, $custom_css);
    179         }
    180 
    181         if (!empty($element_data['elements'])) {
    182             foreach ($element_data['elements'] as $child_element) {
    183                 self::add_custom_css_recursive($child_element, $css);
     173        private static function add_custom_css_recursive($element_data, &$css)
     174        {
     175            if (!empty($element_data['settings']['primekit_custom_css'])) {
     176                $element_id = $element_data['id'];
     177                $custom_css = $element_data['settings']['primekit_custom_css'];
     178       
     179                // Match all selectors and CSS blocks
     180                preg_match_all('/([^{]+)\{([^}]*)\}/', $custom_css, $matches, PREG_SET_ORDER);
     181       
     182                foreach ($matches as $match) {
     183                    $selectors = explode(',', trim($match[1]));
     184                    $rules = trim($match[2]);
     185       
     186                    foreach ($selectors as $selector) {
     187                        $selector = trim($selector);
     188                        if ($selector !== '') {
     189                            $css .= sprintf(
     190                                '.elementor-element.elementor-element-%s %s { %s }' . "\n",
     191                                $element_id,
     192                                $selector,
     193                                $rules
     194                            );
     195                        }
     196                    }
     197                }
    184198            }
    185         }
    186     }
     199       
     200            if (!empty($element_data['elements'])) {
     201                foreach ($element_data['elements'] as $child_element) {
     202                    self::add_custom_css_recursive($child_element, $css);
     203                }
     204            }
     205        }
     206       
    187207}
  • primekit-addons/tags/1.2.4/Frontend/Elementor/Widgets/IconBox/Main.php

    r3304214 r3320357  
    33namespace PrimeKit\Frontend\Elementor\Widgets\IconBox;
    44
    5 if (!defined('ABSPATH')) exit; // Exit if accessed directly
     5if (!defined('ABSPATH'))
     6    exit; // Exit if accessed directly
    67
    78
     
    6566                'default' => 'style-one',
    6667                'options' => [
    67                     'style-one'  => esc_html__('Style One', 'primekit-addons'),
    68                     'style-two'  => esc_html__('Style Two', 'primekit-addons'),
    69                     'style-three'  => esc_html__('Style Three', 'primekit-addons'),
     68                    'style-one' => esc_html__('Style One', 'primekit-addons'),
     69                    'style-two' => esc_html__('Style Two', 'primekit-addons'),
     70                    'style-three' => esc_html__('Style Three', 'primekit-addons'),
    7071                ],
    7172            ]
     
    9394            ]
    9495        );
     96
     97        //icon position for style three
     98        $this->add_responsive_control(
     99            'primekit_elementor_icon_box_icon_position',
     100            [
     101                'label' => esc_html__('Icon Position', 'primekit-addons'),
     102                'type' => Controls_Manager::SELECT,
     103                'default' => 'row',
     104                'options' => [
     105                    'row' => esc_html__('Left', 'primekit-addons'),
     106                    'row-reverse' => esc_html__('Right', 'primekit-addons'),
     107                    'column' => esc_html__('Top', 'primekit-addons'),
     108                    'column-reverse' => esc_html__('Bottom', 'primekit-addons'),
     109                ],
     110                'selectors' => [
     111                    '{{WRAPPER}} .primekit-single-icon-box-three-area' => 'flex-direction: {{VALUE}};',
     112                ],
     113                'condition' => [
     114                    'primekit_elementor_icon_box_style' => 'style-three',
     115                ],
     116            ]
     117        );
     118
     119
    95120        $this->add_control(
    96121            'primekit_elementor_icon_box_title',
     
    160185                'type' => Controls_Manager::CHOOSE,
    161186                'options' => [
    162                     'left'    => [
     187                    'left' => [
    163188                        'title' => esc_html__('Left', 'primekit-addons'),
    164189                        'icon' => 'eicon-text-align-left',
     
    246271            'primekit_elementor_icon_box_area_style_tabs',
    247272            [
    248                 'condition' => [
     273                'condition' => [
    249274                    'primekit_elementor_icon_box_style' => ['style-one', 'style-three'],
    250275                ],
     
    311336                'type' => Controls_Manager::DIMENSIONS,
    312337                'size_units' => ['px', '%', 'em', 'rem', 'custom'],
    313                 'default'   => [
     338                'default' => [
    314339                    'top' => '100',
    315340                    'right' => '0',
     
    397422                    '{{WRAPPER}} .primekit-elementor-icon-box-icon .primekit-ele-icon-box-normal i' => 'font-size: {{SIZE}}{{UNIT}};',
    398423                ],
    399                 'condition' => [
     424                'condition' => [
    400425                    'primekit_elementor_icon_box_style' => 'style-one',
    401426                ],
     
    439464                    '{{WRAPPER}} .primekit-single-icon-box-three-area .primekit-single-icon-box-icons' => 'top: {{SIZE}}{{UNIT}};',
    440465                ],
    441                 'condition' => [
     466                'condition' => [
    442467                    'primekit_elementor_icon_box_style' => ['style-one', 'style-three'],
    443468                ],
     
    454479                    '{{WRAPPER}} .primekit-single-icon-box-icons .primekit-ele-icon-box3-icon' => 'padding: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};',
    455480                ],
    456                 'condition' => [
     481                'condition' => [
    457482                    'primekit_elementor_icon_box_style' => 'style-three',
    458483                ],
     
    480505                    '{{WRAPPER}} .primekit-ele-icon-box-normal i' => 'color: {{VALUE}}',
    481506                ],
    482                 'condition' => [
     507                'condition' => [
    483508                    'primekit_elementor_icon_box_style' => 'style-one',
    484509                ],
     
    507532                'types' => ['classic', 'gradient'],
    508533                'selector' => '{{WRAPPER}} .primekit-single-icon-box-icons .primekit-ele-icon-box3-icon',
    509                 'condition' => [
     534                'condition' => [
    510535                    'primekit_elementor_icon_box_style' => 'style-three',
    511536                ],
     
    518543                'name' => 'primekit_elementor_icon_box_icon_border',
    519544                'selector' => '{{WRAPPER}} .primekit-single-icon-box-icons .primekit-ele-icon-box3-icon',
    520                 'condition' => [
     545                'condition' => [
    521546                    'primekit_elementor_icon_box_style' => 'style-three',
    522547                ],
     
    533558                    '{{WRAPPER}} .primekit-single-icon-box-icons .primekit-ele-icon-box3-icon' => 'border-radius: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};',
    534559                ],
    535                 'condition' => [
     560                'condition' => [
    536561                    'primekit_elementor_icon_box_style' => 'style-three',
    537562                ],
     
    558583                    '{{WRAPPER}} .primekit-elementor-icon-box-area:hover .primekit-ele-icon-box-normal i' => 'color: {{VALUE}}',
    559584                ],
    560                 'condition' => [
     585                'condition' => [
    561586                    'primekit_elementor_icon_box_style' => 'style-one',
    562587                ],
     
    585610                'types' => ['classic', 'gradient'],
    586611                'selector' => '{{WRAPPER}} .primekit-single-icon-box-three-area:hover .primekit-single-icon-box-icons .primekit-ele-icon-box3-icon',
    587                 'condition' => [
     612                'condition' => [
    588613                    'primekit_elementor_icon_box_style' => 'style-three',
    589614                ],
     
    596621                'name' => 'primekit_elementor_icon_box_icon_border_hover',
    597622                'selector' => '{{WRAPPER}} .primekit-single-icon-box-three-area:hover .primekit-single-icon-box-icons .primekit-ele-icon-box3-icon',
    598                 'condition' => [
     623                'condition' => [
    599624                    'primekit_elementor_icon_box_style' => 'style-three',
    600625                ],
     
    611636                    '{{WRAPPER}} .primekit-single-icon-box-three-area:hover .primekit-single-icon-box-icons .primekit-ele-icon-box3-icon' => 'border-radius: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};',
    612637                ],
    613                 'condition' => [
     638                'condition' => [
    614639                    'primekit_elementor_icon_box_style' => 'style-three',
    615640                ],
  • primekit-addons/tags/1.2.4/composer.json

    r3318028 r3320357  
    22    "name": "supreoxltd/primekit-addons",
    33    "license": "GPL-2.0-or-later",
    4     "version": "1.2.3",
     4    "version": "1.2.4",
    55    "autoload": {
    66        "psr-4": {
  • primekit-addons/tags/1.2.4/primekit-addons.php

    r3318028 r3320357  
    44 * Plugin URI: https://primekitaddons.com/
    55 * Description: The Elementor Custom Widgets plugin is built to enhance your website’s look and performance. With PrimeKit Addons and Templates, you’ll get access to a Theme Builder, Pop-Ups, Cost estimation, Pricing table, Forms, and WooCommerce building features, along with stunning custom elements that blend seamlessly with your site’s design.
    6  * Version: 1.2.3
     6 * Version: 1.2.4
    77 * Author: SupreoX Limited
    88 * Author URI: https://supreox.com/
     
    6767    {
    6868        // Define Plugin Version.
    69         define('PRIMEKIT_VERSION', '1.2.3');
     69        define('PRIMEKIT_VERSION', '1.2.4');
    7070
    7171        // Define Plugin Path.
  • primekit-addons/tags/1.2.4/readme.txt

    r3318028 r3320357  
    11=== PrimeKit Addons and Templates ===
    22Plugin Name: PrimeKit PrimeKit Addons and Templates
    3 Version: 1.2.3
    43Author: supreoxltd
    54Author URI: https://abcplugin.com/
     
    98Requires at least: 5.4 
    109Tested up to: 6.8 
    11 Stable tag: 1.2.3
     10Stable tag: 1.2.4
    1211Requires PHP: 8.0
    1312License: GPLv2 or later
     
    2221
    2322[Demo](https://demo.primekitaddons.com/addons-widger/) | [Documentation](https://primekitaddons.com/documentation/) | [Support](https://primekitaddons.com/contact-us/)
     23
     24
     25== Rate This Plugin: ==
     26[Please rate PrimeKit Addons](https://wordpress.org/support/plugin/primekit-addons/reviews)
    2427
    2528== Theme Builder ==
     
    156159
    157160== Changelog ==
     161= 1.2.4 =
     162- Global Custom CSS issue fix
     163- improvements icon box widgets
     164- Glass Card Widget Added
     165
    158166= 1.2.3 =
    159 - Theme Features Switch issues fix
     167- Theme Builder Features Switch issues fix
    160168
    161169= 1.2.2 =
  • primekit-addons/tags/1.2.4/vendor/autoload.php

    r3318028 r3320357  
    2020require_once __DIR__ . '/composer/autoload_real.php';
    2121
    22 return ComposerAutoloaderInit02fb54d32dcd119e039e7ab2f486b97b::getLoader();
     22return ComposerAutoloaderInit4593567ec48dc04384b380ddd3efad0b::getLoader();
  • primekit-addons/tags/1.2.4/vendor/composer/autoload_real.php

    r3318028 r3320357  
    33// autoload_real.php @generated by Composer
    44
    5 class ComposerAutoloaderInit02fb54d32dcd119e039e7ab2f486b97b
     5class ComposerAutoloaderInit4593567ec48dc04384b380ddd3efad0b
    66{
    77    private static $loader;
     
    2525        require __DIR__ . '/platform_check.php';
    2626
    27         spl_autoload_register(array('ComposerAutoloaderInit02fb54d32dcd119e039e7ab2f486b97b', 'loadClassLoader'), true, true);
     27        spl_autoload_register(array('ComposerAutoloaderInit4593567ec48dc04384b380ddd3efad0b', 'loadClassLoader'), true, true);
    2828        self::$loader = $loader = new \Composer\Autoload\ClassLoader(\dirname(__DIR__));
    29         spl_autoload_unregister(array('ComposerAutoloaderInit02fb54d32dcd119e039e7ab2f486b97b', 'loadClassLoader'));
     29        spl_autoload_unregister(array('ComposerAutoloaderInit4593567ec48dc04384b380ddd3efad0b', 'loadClassLoader'));
    3030
    3131        require __DIR__ . '/autoload_static.php';
    32         call_user_func(\Composer\Autoload\ComposerStaticInit02fb54d32dcd119e039e7ab2f486b97b::getInitializer($loader));
     32        call_user_func(\Composer\Autoload\ComposerStaticInit4593567ec48dc04384b380ddd3efad0b::getInitializer($loader));
    3333
    3434        $loader->register(true);
  • primekit-addons/tags/1.2.4/vendor/composer/autoload_static.php

    r3318028 r3320357  
    55namespace Composer\Autoload;
    66
    7 class ComposerStaticInit02fb54d32dcd119e039e7ab2f486b97b
     7class ComposerStaticInit4593567ec48dc04384b380ddd3efad0b
    88{
    99    public static $prefixLengthsPsr4 = array (
     
    5151    {
    5252        return \Closure::bind(function () use ($loader) {
    53             $loader->prefixLengthsPsr4 = ComposerStaticInit02fb54d32dcd119e039e7ab2f486b97b::$prefixLengthsPsr4;
    54             $loader->prefixDirsPsr4 = ComposerStaticInit02fb54d32dcd119e039e7ab2f486b97b::$prefixDirsPsr4;
    55             $loader->classMap = ComposerStaticInit02fb54d32dcd119e039e7ab2f486b97b::$classMap;
     53            $loader->prefixLengthsPsr4 = ComposerStaticInit4593567ec48dc04384b380ddd3efad0b::$prefixLengthsPsr4;
     54            $loader->prefixDirsPsr4 = ComposerStaticInit4593567ec48dc04384b380ddd3efad0b::$prefixDirsPsr4;
     55            $loader->classMap = ComposerStaticInit4593567ec48dc04384b380ddd3efad0b::$classMap;
    5656
    5757        }, null, ClassLoader::class);
  • primekit-addons/tags/1.2.4/vendor/composer/installed.php

    r3318028 r3320357  
    22    'root' => array(
    33        'name' => 'supreoxltd/primekit-addons',
    4         'pretty_version' => '1.2.3',
    5         'version' => '1.2.3.0',
     4        'pretty_version' => '1.2.4',
     5        'version' => '1.2.4.0',
    66        'reference' => null,
    77        'type' => 'library',
     
    2121        ),
    2222        'supreoxltd/primekit-addons' => array(
    23             'pretty_version' => '1.2.3',
    24             'version' => '1.2.3.0',
     23            'pretty_version' => '1.2.4',
     24            'version' => '1.2.4.0',
    2525            'reference' => null,
    2626            'type' => 'library',
  • primekit-addons/trunk/Admin/AdminManager.php

    r3318028 r3320357  
    7070
    7171        $this->tracker_primekit_addons();
     72
     73        add_action('admin_footer', [$this, 'primekit_add_footer_rating_notice']);
     74        add_action('admin_footer_text', [$this, 'primekit_custom_admin_footer']);
    7275    }
    7376
     
    219222    }
    220223
     224    /**
     225     * Add a rating notice to the PrimeKit dashboard footer
     226     *
     227     * @return void
     228     */
     229    public function primekit_add_footer_rating_notice() {
     230        // Check if we are on the specific PrimeKit dashboard page
     231        $screen = get_current_screen();
     232        if ($screen->id !== 'toplevel_page_primekit_home') {
     233            return;
     234        }
     235   
     236        ?>
     237        <style>
     238            .primekit-footer-rating {
     239                padding: 20px 0;
     240                text-align: center;
     241                font-size: 13px;
     242                color: #666;
     243            }
     244   
     245            .primekit-footer-rating a {
     246                text-decoration: none;
     247            }
     248   
     249            .primekit-footer-rating .stars {
     250                color: #ffb900;
     251                margin: 0 4px;
     252            }
     253        </style>
     254        <div class="primekit-footer-rating">
     255            <?php
     256            $plugin_name = PRIMEKIT_NAME;
     257            $plugin_slug = 'primekit-addons';
     258            $rating_url  = "https://wordpress.org/support/plugin/{$plugin_slug}/reviews/#new-post";
     259   
     260            echo 'Please rate <strong>' . esc_html($plugin_name) . '</strong>';
     261            echo '<span class="stars">★★★★★</span>';
     262            echo ' on <a href="' . esc_url($rating_url) . '" target="_blank">WordPress.org</a> to help us spread the word.';
     263            ?>
     264        </div>
     265        <?php
     266    }
     267    /**
     268     * Customize the admin footer text
     269     *
     270     * @param string $footer_text Default footer text.
     271     * @return string Modified footer text.
     272     */
     273    public function primekit_custom_admin_footer($footer_text) {
     274       // Match your plugin pages and CPT screen
     275    $show_on_pages = [
     276        'primekit_home',
     277        'primekit_templates',
     278        'primekit_available_widgets',
     279        'primekit_settings',
     280    ];
     281
     282    $is_primekit_page = isset($_GET['page']) && in_array($_GET['page'], $show_on_pages);
     283    $is_primekit_cpt   = isset($_GET['post_type']) && $_GET['post_type'] === 'primekit_library';
     284
     285    if ($is_primekit_page || $is_primekit_cpt) {
     286        $plugin_name = PRIMEKIT_NAME;
     287        $plugin_slug = 'primekit-addons';
     288        $rating_url  = "https://wordpress.org/support/plugin/{$plugin_slug}/reviews/#new-post";
     289
     290        return 'Please rate <strong>' . esc_html($plugin_name) . '</strong> <span style="color:#ffb900;">★★★★★</span> on <a href="' . esc_url($rating_url) . '" target="_blank">WordPress.org</a> to help us spread the word.';
     291    }
     292
     293    // Default for other admin pages
     294    return $footer_text;
     295    }
    221296
    222297
  • primekit-addons/trunk/Admin/Inc/Dashboard/AvailableWidgets/RegularTab.php

    r3313257 r3320357  
    602602            self::demo_url('widgets/advanced-list-widget/')
    603603        );
     604        // Glass Card.
     605        PrimeKitWidgets::primekit_available_widget(
     606            'primekit_glass_card_field',
     607            esc_html__('Glass Card', 'primekit-addons'),
     608            PRIMEKIT_ADMIN_ASSETS . '/img/icons/glass-card.svg',
     609            true,
     610            self::demo_url('widgets/glass-card-widget/')
     611        );
    604612
    605613
  • primekit-addons/trunk/Frontend/Elementor/Assets/css/style.css

    r3313257 r3320357  
    978978  align-items: center;
    979979  gap: 10px;
     980  transition: all 0.3s ease;
    980981}
    981982
     
    43854386  text-align: center;
    43864387}
     4388
     4389/*---------------------------
     4390Glass Card
     4391---------------------------*/
     4392.primekit-glass-card-icon svg{
     4393  width: 40px;
     4394  height: auto;
     4395}
     4396.primekit-glass-card-area {
     4397  background: linear-gradient(49.64deg, rgba(33, 218, 253, 0.6) 19.57%, rgba(33, 218, 253, 0) 112.42%);
     4398  border-radius: 20px;
     4399  transform: rotate(-10deg);
     4400  width: 250px;
     4401}
     4402
     4403.primekit-glass-card {
     4404  background: rgba(255, 255, 255, 0.02);
     4405  mix-blend-mode: normal;
     4406  border: 1px solid rgba(255, 255, 255, 0.4);
     4407  box-shadow: 0px 10px 30px rgba(12, 60, 84, 0.2);
     4408  backdrop-filter: blur(10px);
     4409  border-radius: 20px;
     4410  transform: rotate(10deg);
     4411  padding: 15px;
     4412  display: flex;
     4413  flex-direction: column;
     4414  justify-content: space-between;
     4415  gap: 110px;
     4416}
     4417
     4418.primekit-glass-card-header {
     4419  display: flex;
     4420  justify-content: space-between;
     4421  gap: 10px;
     4422  align-items: center;
     4423}
     4424
     4425.primekit-glass-card-icon {max-width:50%;}
     4426
     4427.primekit-outline-text {font-size: 37px;font-weight: bold;color: transparent;-webkit-text-stroke: 1px rgba(0, 0, 0, 0.2); /* stroke color with opacity */text-align: center;margin: 0;padding: 0;}
     4428
     4429.primekit-glass-card-footer h2 {
     4430  margin: 0;
     4431  font-family: 'Montserrat';
     4432  font-style: normal;
     4433  font-weight: 600;
     4434  font-size: 22px;
     4435  line-height: 1.3em;
     4436}
  • primekit-addons/trunk/Frontend/Elementor/Configuration.php

    r3313257 r3320357  
    324324            'primekit_copyright_field' => 'Copyright\Main',
    325325            'primekit_advanced_list_field' => 'AdvancedList\Main',
     326            'primekit_glass_card_field' => 'GlassCard\Main',
    326327        ];
    327328        foreach ($widgets as $option_name => $widget_class) {
  • primekit-addons/trunk/Frontend/Elementor/Globals/CustomCSS.php

    r3209035 r3320357  
    171171         * @return void
    172172         */
    173     private static function add_custom_css_recursive($element_data, &$css)
    174     {
    175         if (!empty($element_data['settings']['primekit_custom_css'])) {
    176             $element_id = $element_data['id'];
    177             $custom_css = $element_data['settings']['primekit_custom_css'];
    178             $css .= sprintf('.elementor-element.elementor-element-%s { %s } ', $element_id, $custom_css);
    179         }
    180 
    181         if (!empty($element_data['elements'])) {
    182             foreach ($element_data['elements'] as $child_element) {
    183                 self::add_custom_css_recursive($child_element, $css);
     173        private static function add_custom_css_recursive($element_data, &$css)
     174        {
     175            if (!empty($element_data['settings']['primekit_custom_css'])) {
     176                $element_id = $element_data['id'];
     177                $custom_css = $element_data['settings']['primekit_custom_css'];
     178       
     179                // Match all selectors and CSS blocks
     180                preg_match_all('/([^{]+)\{([^}]*)\}/', $custom_css, $matches, PREG_SET_ORDER);
     181       
     182                foreach ($matches as $match) {
     183                    $selectors = explode(',', trim($match[1]));
     184                    $rules = trim($match[2]);
     185       
     186                    foreach ($selectors as $selector) {
     187                        $selector = trim($selector);
     188                        if ($selector !== '') {
     189                            $css .= sprintf(
     190                                '.elementor-element.elementor-element-%s %s { %s }' . "\n",
     191                                $element_id,
     192                                $selector,
     193                                $rules
     194                            );
     195                        }
     196                    }
     197                }
    184198            }
    185         }
    186     }
     199       
     200            if (!empty($element_data['elements'])) {
     201                foreach ($element_data['elements'] as $child_element) {
     202                    self::add_custom_css_recursive($child_element, $css);
     203                }
     204            }
     205        }
     206       
    187207}
  • primekit-addons/trunk/Frontend/Elementor/Widgets/IconBox/Main.php

    r3304214 r3320357  
    33namespace PrimeKit\Frontend\Elementor\Widgets\IconBox;
    44
    5 if (!defined('ABSPATH')) exit; // Exit if accessed directly
     5if (!defined('ABSPATH'))
     6    exit; // Exit if accessed directly
    67
    78
     
    6566                'default' => 'style-one',
    6667                'options' => [
    67                     'style-one'  => esc_html__('Style One', 'primekit-addons'),
    68                     'style-two'  => esc_html__('Style Two', 'primekit-addons'),
    69                     'style-three'  => esc_html__('Style Three', 'primekit-addons'),
     68                    'style-one' => esc_html__('Style One', 'primekit-addons'),
     69                    'style-two' => esc_html__('Style Two', 'primekit-addons'),
     70                    'style-three' => esc_html__('Style Three', 'primekit-addons'),
    7071                ],
    7172            ]
     
    9394            ]
    9495        );
     96
     97        //icon position for style three
     98        $this->add_responsive_control(
     99            'primekit_elementor_icon_box_icon_position',
     100            [
     101                'label' => esc_html__('Icon Position', 'primekit-addons'),
     102                'type' => Controls_Manager::SELECT,
     103                'default' => 'row',
     104                'options' => [
     105                    'row' => esc_html__('Left', 'primekit-addons'),
     106                    'row-reverse' => esc_html__('Right', 'primekit-addons'),
     107                    'column' => esc_html__('Top', 'primekit-addons'),
     108                    'column-reverse' => esc_html__('Bottom', 'primekit-addons'),
     109                ],
     110                'selectors' => [
     111                    '{{WRAPPER}} .primekit-single-icon-box-three-area' => 'flex-direction: {{VALUE}};',
     112                ],
     113                'condition' => [
     114                    'primekit_elementor_icon_box_style' => 'style-three',
     115                ],
     116            ]
     117        );
     118
     119
    95120        $this->add_control(
    96121            'primekit_elementor_icon_box_title',
     
    160185                'type' => Controls_Manager::CHOOSE,
    161186                'options' => [
    162                     'left'    => [
     187                    'left' => [
    163188                        'title' => esc_html__('Left', 'primekit-addons'),
    164189                        'icon' => 'eicon-text-align-left',
     
    246271            'primekit_elementor_icon_box_area_style_tabs',
    247272            [
    248                 'condition' => [
     273                'condition' => [
    249274                    'primekit_elementor_icon_box_style' => ['style-one', 'style-three'],
    250275                ],
     
    311336                'type' => Controls_Manager::DIMENSIONS,
    312337                'size_units' => ['px', '%', 'em', 'rem', 'custom'],
    313                 'default'   => [
     338                'default' => [
    314339                    'top' => '100',
    315340                    'right' => '0',
     
    397422                    '{{WRAPPER}} .primekit-elementor-icon-box-icon .primekit-ele-icon-box-normal i' => 'font-size: {{SIZE}}{{UNIT}};',
    398423                ],
    399                 'condition' => [
     424                'condition' => [
    400425                    'primekit_elementor_icon_box_style' => 'style-one',
    401426                ],
     
    439464                    '{{WRAPPER}} .primekit-single-icon-box-three-area .primekit-single-icon-box-icons' => 'top: {{SIZE}}{{UNIT}};',
    440465                ],
    441                 'condition' => [
     466                'condition' => [
    442467                    'primekit_elementor_icon_box_style' => ['style-one', 'style-three'],
    443468                ],
     
    454479                    '{{WRAPPER}} .primekit-single-icon-box-icons .primekit-ele-icon-box3-icon' => 'padding: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};',
    455480                ],
    456                 'condition' => [
     481                'condition' => [
    457482                    'primekit_elementor_icon_box_style' => 'style-three',
    458483                ],
     
    480505                    '{{WRAPPER}} .primekit-ele-icon-box-normal i' => 'color: {{VALUE}}',
    481506                ],
    482                 'condition' => [
     507                'condition' => [
    483508                    'primekit_elementor_icon_box_style' => 'style-one',
    484509                ],
     
    507532                'types' => ['classic', 'gradient'],
    508533                'selector' => '{{WRAPPER}} .primekit-single-icon-box-icons .primekit-ele-icon-box3-icon',
    509                 'condition' => [
     534                'condition' => [
    510535                    'primekit_elementor_icon_box_style' => 'style-three',
    511536                ],
     
    518543                'name' => 'primekit_elementor_icon_box_icon_border',
    519544                'selector' => '{{WRAPPER}} .primekit-single-icon-box-icons .primekit-ele-icon-box3-icon',
    520                 'condition' => [
     545                'condition' => [
    521546                    'primekit_elementor_icon_box_style' => 'style-three',
    522547                ],
     
    533558                    '{{WRAPPER}} .primekit-single-icon-box-icons .primekit-ele-icon-box3-icon' => 'border-radius: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};',
    534559                ],
    535                 'condition' => [
     560                'condition' => [
    536561                    'primekit_elementor_icon_box_style' => 'style-three',
    537562                ],
     
    558583                    '{{WRAPPER}} .primekit-elementor-icon-box-area:hover .primekit-ele-icon-box-normal i' => 'color: {{VALUE}}',
    559584                ],
    560                 'condition' => [
     585                'condition' => [
    561586                    'primekit_elementor_icon_box_style' => 'style-one',
    562587                ],
     
    585610                'types' => ['classic', 'gradient'],
    586611                'selector' => '{{WRAPPER}} .primekit-single-icon-box-three-area:hover .primekit-single-icon-box-icons .primekit-ele-icon-box3-icon',
    587                 'condition' => [
     612                'condition' => [
    588613                    'primekit_elementor_icon_box_style' => 'style-three',
    589614                ],
     
    596621                'name' => 'primekit_elementor_icon_box_icon_border_hover',
    597622                'selector' => '{{WRAPPER}} .primekit-single-icon-box-three-area:hover .primekit-single-icon-box-icons .primekit-ele-icon-box3-icon',
    598                 'condition' => [
     623                'condition' => [
    599624                    'primekit_elementor_icon_box_style' => 'style-three',
    600625                ],
     
    611636                    '{{WRAPPER}} .primekit-single-icon-box-three-area:hover .primekit-single-icon-box-icons .primekit-ele-icon-box3-icon' => 'border-radius: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};',
    612637                ],
    613                 'condition' => [
     638                'condition' => [
    614639                    'primekit_elementor_icon_box_style' => 'style-three',
    615640                ],
  • primekit-addons/trunk/composer.json

    r3318028 r3320357  
    22    "name": "supreoxltd/primekit-addons",
    33    "license": "GPL-2.0-or-later",
    4     "version": "1.2.3",
     4    "version": "1.2.4",
    55    "autoload": {
    66        "psr-4": {
  • primekit-addons/trunk/primekit-addons.php

    r3318028 r3320357  
    44 * Plugin URI: https://primekitaddons.com/
    55 * Description: The Elementor Custom Widgets plugin is built to enhance your website’s look and performance. With PrimeKit Addons and Templates, you’ll get access to a Theme Builder, Pop-Ups, Cost estimation, Pricing table, Forms, and WooCommerce building features, along with stunning custom elements that blend seamlessly with your site’s design.
    6  * Version: 1.2.3
     6 * Version: 1.2.4
    77 * Author: SupreoX Limited
    88 * Author URI: https://supreox.com/
     
    6767    {
    6868        // Define Plugin Version.
    69         define('PRIMEKIT_VERSION', '1.2.3');
     69        define('PRIMEKIT_VERSION', '1.2.4');
    7070
    7171        // Define Plugin Path.
  • primekit-addons/trunk/readme.txt

    r3318028 r3320357  
    11=== PrimeKit Addons and Templates ===
    22Plugin Name: PrimeKit PrimeKit Addons and Templates
    3 Version: 1.2.3
    43Author: supreoxltd
    54Author URI: https://abcplugin.com/
     
    98Requires at least: 5.4 
    109Tested up to: 6.8 
    11 Stable tag: 1.2.3
     10Stable tag: 1.2.4
    1211Requires PHP: 8.0
    1312License: GPLv2 or later
     
    2221
    2322[Demo](https://demo.primekitaddons.com/addons-widger/) | [Documentation](https://primekitaddons.com/documentation/) | [Support](https://primekitaddons.com/contact-us/)
     23
     24
     25== Rate This Plugin: ==
     26[Please rate PrimeKit Addons](https://wordpress.org/support/plugin/primekit-addons/reviews)
    2427
    2528== Theme Builder ==
     
    156159
    157160== Changelog ==
     161= 1.2.4 =
     162- Global Custom CSS issue fix
     163- improvements icon box widgets
     164- Glass Card Widget Added
     165
    158166= 1.2.3 =
    159 - Theme Features Switch issues fix
     167- Theme Builder Features Switch issues fix
    160168
    161169= 1.2.2 =
  • primekit-addons/trunk/vendor/autoload.php

    r3318028 r3320357  
    2020require_once __DIR__ . '/composer/autoload_real.php';
    2121
    22 return ComposerAutoloaderInit02fb54d32dcd119e039e7ab2f486b97b::getLoader();
     22return ComposerAutoloaderInit4593567ec48dc04384b380ddd3efad0b::getLoader();
  • primekit-addons/trunk/vendor/composer/autoload_real.php

    r3318028 r3320357  
    33// autoload_real.php @generated by Composer
    44
    5 class ComposerAutoloaderInit02fb54d32dcd119e039e7ab2f486b97b
     5class ComposerAutoloaderInit4593567ec48dc04384b380ddd3efad0b
    66{
    77    private static $loader;
     
    2525        require __DIR__ . '/platform_check.php';
    2626
    27         spl_autoload_register(array('ComposerAutoloaderInit02fb54d32dcd119e039e7ab2f486b97b', 'loadClassLoader'), true, true);
     27        spl_autoload_register(array('ComposerAutoloaderInit4593567ec48dc04384b380ddd3efad0b', 'loadClassLoader'), true, true);
    2828        self::$loader = $loader = new \Composer\Autoload\ClassLoader(\dirname(__DIR__));
    29         spl_autoload_unregister(array('ComposerAutoloaderInit02fb54d32dcd119e039e7ab2f486b97b', 'loadClassLoader'));
     29        spl_autoload_unregister(array('ComposerAutoloaderInit4593567ec48dc04384b380ddd3efad0b', 'loadClassLoader'));
    3030
    3131        require __DIR__ . '/autoload_static.php';
    32         call_user_func(\Composer\Autoload\ComposerStaticInit02fb54d32dcd119e039e7ab2f486b97b::getInitializer($loader));
     32        call_user_func(\Composer\Autoload\ComposerStaticInit4593567ec48dc04384b380ddd3efad0b::getInitializer($loader));
    3333
    3434        $loader->register(true);
  • primekit-addons/trunk/vendor/composer/autoload_static.php

    r3318028 r3320357  
    55namespace Composer\Autoload;
    66
    7 class ComposerStaticInit02fb54d32dcd119e039e7ab2f486b97b
     7class ComposerStaticInit4593567ec48dc04384b380ddd3efad0b
    88{
    99    public static $prefixLengthsPsr4 = array (
     
    5151    {
    5252        return \Closure::bind(function () use ($loader) {
    53             $loader->prefixLengthsPsr4 = ComposerStaticInit02fb54d32dcd119e039e7ab2f486b97b::$prefixLengthsPsr4;
    54             $loader->prefixDirsPsr4 = ComposerStaticInit02fb54d32dcd119e039e7ab2f486b97b::$prefixDirsPsr4;
    55             $loader->classMap = ComposerStaticInit02fb54d32dcd119e039e7ab2f486b97b::$classMap;
     53            $loader->prefixLengthsPsr4 = ComposerStaticInit4593567ec48dc04384b380ddd3efad0b::$prefixLengthsPsr4;
     54            $loader->prefixDirsPsr4 = ComposerStaticInit4593567ec48dc04384b380ddd3efad0b::$prefixDirsPsr4;
     55            $loader->classMap = ComposerStaticInit4593567ec48dc04384b380ddd3efad0b::$classMap;
    5656
    5757        }, null, ClassLoader::class);
  • primekit-addons/trunk/vendor/composer/installed.php

    r3318028 r3320357  
    22    'root' => array(
    33        'name' => 'supreoxltd/primekit-addons',
    4         'pretty_version' => '1.2.3',
    5         'version' => '1.2.3.0',
     4        'pretty_version' => '1.2.4',
     5        'version' => '1.2.4.0',
    66        'reference' => null,
    77        'type' => 'library',
     
    2121        ),
    2222        'supreoxltd/primekit-addons' => array(
    23             'pretty_version' => '1.2.3',
    24             'version' => '1.2.3.0',
     23            'pretty_version' => '1.2.4',
     24            'version' => '1.2.4.0',
    2525            'reference' => null,
    2626            'type' => 'library',
Note: See TracChangeset for help on using the changeset viewer.