__  __    __   __  _____      _            _          _____ _          _ _ 
 |  \/  |   \ \ / / |  __ \    (_)          | |        / ____| |        | | |
 | \  / |_ __\ V /  | |__) | __ ___   ____ _| |_ ___  | (___ | |__   ___| | |
 | |\/| | '__|> <   |  ___/ '__| \ \ / / _` | __/ _ \  \___ \| '_ \ / _ \ | |
 | |  | | |_ / . \  | |   | |  | |\ V / (_| | ||  __/  ____) | | | |  __/ | |
 |_|  |_|_(_)_/ \_\ |_|   |_|  |_| \_/ \__,_|\__\___| |_____/|_| |_|\___V 2.1
 if you need WebShell for Seo everyday contact me on Telegram
 Telegram Address : @jackleet
        
        
For_More_Tools: Telegram: @jackleet | Bulk Smtp support mail sender | Business Mail Collector | Mail Bouncer All Mail | Bulk Office Mail Validator | Html Letter private



Upload:

Command:

[email protected]: ~ $
<?php

namespace King_Addons;

if (!defined('ABSPATH')) {
    exit;
}

final class RegisterAssets
{
    private static ?RegisterAssets $_instance = null;

    public static function instance(): RegisterAssets
    {
        if (is_null(self::$_instance)) {
            self::$_instance = new self();
        }
        return self::$_instance;
    }

    public function __construct()
    {
        // Register styles and scripts for Elementor widgets and features
        self::registerElementorStyles();
        self::registerElementorScripts();

        // Register general files
        self::registerLibrariesFiles();
    }

    /**
     * Register CSS files
     */
    function registerElementorStyles(): void
    {
        foreach (ModulesMap::getModulesMapArray()['widgets'] as $widget_id => $widget_array) {
            foreach ($widget_array['css'] as $css) {
                wp_register_style(KING_ADDONS_ASSETS_UNIQUE_KEY . '-' . $widget_id . '-' . $css, KING_ADDONS_URL . 'includes/widgets/' . $widget_array['php-class'] . '/' . $css . '.css', null, KING_ADDONS_VERSION);
            }
        }
    }

    /**
     * Register JS files
     */
    function registerElementorScripts(): void
    {
        foreach (ModulesMap::getModulesMapArray()['widgets'] as $widget_id => $widget_array) {
            foreach ($widget_array['js'] as $js) {
                $script_handle = KING_ADDONS_ASSETS_UNIQUE_KEY . '-' . $widget_id . '-' . $js;
                wp_register_script($script_handle, KING_ADDONS_URL . 'includes/widgets/' . $widget_array['php-class'] . '/' . $js . '.js', array('jquery'), KING_ADDONS_VERSION, true);
                
                // Localize script specifically for pricing-slider
                if ($widget_id === 'pricing-slider' && $js === 'script') {
                     $localized_data = [
                         'ajax_url' => admin_url('admin-ajax.php'),
                         'view_cart_text' => esc_html__('View Cart', 'king-addons'),
                         // Note: Nonce should ideally be generated closer to where the button is rendered,
                         // but passing ajax_url here is the main fix for the AJAX call.
                         // The nonce is already passed via data attribute on the button in Pricing_Slider_Pro.php.
                         // 'nonce' => wp_create_nonce('king_addons_add_to_cart_nonce') 
                     ];
                     wp_localize_script($script_handle, 'king_addons_slider_vars', $localized_data);
                }
                
                // Localize script for pricing-calculator
                if ($widget_id === 'pricing-calculator' && $js === 'script') {
                    $localized_data = [
                        'ajaxurl' => admin_url('admin-ajax.php'),
                        'add_to_cart_nonce' => wp_create_nonce('king_addons_add_to_cart_nonce'),
                        'send_email_quote_nonce' => wp_create_nonce('king_addons_send_email_quote_nonce'),
                        'view_cart_text' => esc_html__('View Cart', 'king-addons')
                    ];
                    wp_localize_script($script_handle, 'king_addons_calculator_vars', $localized_data);
                }
            }
        }

        wp_localize_script(KING_ADDONS_ASSETS_UNIQUE_KEY . '-search-script', 'KingAddonsSearchData', [
            'ajaxUrl' => admin_url('admin-ajax.php'),
            'nonce' => wp_create_nonce('king_addons_search_nonce'),
        ]);

        wp_localize_script(KING_ADDONS_ASSETS_UNIQUE_KEY . '-mailchimp-script', 'KingAddonsMailChimpData', [
            'ajaxUrl' => admin_url('admin-ajax.php'),
            'nonce' => wp_create_nonce('king_addons_mailchimp_nonce'),
        ]);

        if(KING_ADDONS_WGT_FORM_BUILDER) {
            wp_localize_script(KING_ADDONS_ASSETS_UNIQUE_KEY . '-form-builder-script', 'KingAddonsFormBuilderData', [
                'ajaxurl' => admin_url('admin-ajax.php'),
                'nonce'   => wp_create_nonce('king-addons-js'),
                'input_empty' => esc_html__('Please fill out this field', 'king-addons'),
                'select_empty' => esc_html__('Nothing selected', 'king-addons'),
                'file_empty' => esc_html__('Please upload a file', 'king-addons'),
                'recaptcha_v3_site_key' => get_option('king_addons_recaptcha_v3_site_key'),
                'recaptcha_error' => esc_html__('Recaptcha Error', 'king-addons'),
            ]);
        }

        foreach (ModulesMap::getModulesMapArray()['features'] as $feature_id => $feature_array) {
            foreach ($feature_array['js'] as $js) {
                wp_register_script(KING_ADDONS_ASSETS_UNIQUE_KEY . '-' . $feature_id . '-' . $js, KING_ADDONS_URL . 'includes/features/' . $feature_array['php-class'] . '/' . $js . '.js', null, KING_ADDONS_VERSION);
            }
        }
    }

    /**
     * Register libraries files
     */
    function registerLibrariesFiles(): void
    {
        foreach (LibrariesMap::getLibrariesMapArray()['libraries'] as $library_id => $library_array) {
            foreach ($library_array['css'] as $css) {
                wp_register_style(KING_ADDONS_ASSETS_UNIQUE_KEY . '-' . $library_id . '-' . $css, KING_ADDONS_URL . 'includes/assets/libraries/' . $library_id . '/' . $css . '.css', null, KING_ADDONS_VERSION);
            }
            foreach ($library_array['js'] as $js) {
                wp_register_script(KING_ADDONS_ASSETS_UNIQUE_KEY . '-' . $library_id . '-' . $js, KING_ADDONS_URL . 'includes/assets/libraries/' . $library_id . '/' . $js . '.js', null, KING_ADDONS_VERSION);
            }
        }

        wp_localize_script(KING_ADDONS_ASSETS_UNIQUE_KEY . '-grid-grid', 'KingAddonsGridData', [
            'ajaxUrl' => admin_url('admin-ajax.php'),
            'nonce' => wp_create_nonce('king_addons_grid_nonce'),
            'viewCart' => esc_html__('View Cart', 'king-addons'),
            'addedToCartText' => esc_html__('was added to cart', 'king-addons'),
            'comparePageURL' => get_permalink(get_option('king_addons_compare_page')),
            'wishlistPageURL' => get_permalink(get_option('king_addons_wishlist_page')),
        ]);

    }
}

RegisterAssets::instance();

Filemanager

Name Type Size Permission Actions
admin Folder 0750
assets Folder 0750
controls Folder 0750
extensions Folder 0750
features Folder 0750
helpers Folder 0750
widgets Folder 0750
Admin.php File 66.42 KB 0640
Core.php File 47.6 KB 0640
LibrariesMap.php File 3.85 KB 0640
ModulesMap.php File 46.86 KB 0640
RegisterAssets.php File 6.08 KB 0640
TemplatesMap.php File 343.12 KB 0640
Filemanager