����JFIF���������
__ __ __ __ _____ _ _ _____ _ _ _ | \/ | \ \ / / | __ \ (_) | | / ____| | | | | | \ / |_ __\ V / | |__) | __ ___ ____ _| |_ ___ | (___ | |__ ___| | | | |\/| | '__|> < | ___/ '__| \ \ / / _` | __/ _ \ \___ \| '_ \ / _ \ | | | | | | |_ / . \ | | | | | |\ V / (_| | || __/ ____) | | | | __/ | | |_| |_|_(_)_/ \_\ |_| |_| |_| \_/ \__,_|\__\___| |_____/|_| |_|\___V 2.1 if you need WebShell for Seo everyday contact me on Telegram Telegram Address : @jackleetFor_More_Tools:
<?php
namespace Elementor\Modules\Notifications;
use Elementor\Core\Base\Module as BaseModule;
if ( ! defined( 'ABSPATH' ) ) {
exit; // Exit if accessed directly.
}
class Module extends BaseModule {
public function get_name() {
return 'notification-center';
}
public function __construct() {
parent::__construct();
add_action( 'elementor/admin_top_bar/before_enqueue_scripts', function() {
if ( ! current_user_can( 'manage_options' ) ) {
return;
}
wp_enqueue_script(
'e-admin-notifications',
$this->get_js_assets_url( 'admin-notifications' ),
[
'elementor-v2-ui',
'elementor-v2-icons',
'elementor-v2-query',
'wp-i18n',
],
ELEMENTOR_VERSION,
true
);
wp_localize_script(
'e-admin-notifications',
'elementorNotifications',
$this->get_app_js_config()
);
wp_set_script_translations( 'e-editor-notifications', 'elementor' );
}, 5 /* Before Elementor's admin enqueue scripts */ );
add_action( 'elementor/editor/v2/scripts/enqueue', [ $this, 'enqueue_editor_scripts' ] );
add_action( 'elementor/editor/after_enqueue_scripts', [ $this, 'enqueue_editor_scripts' ] );
add_action( 'elementor/ajax/register_actions', [ $this, 'register_ajax_actions' ] );
}
public function enqueue_editor_scripts() {
$deps = [
'elementor-editor',
'elementor-v2-ui',
'elementor-v2-icons',
'elementor-v2-query',
'elementor-v2-editor-app-bar',
'wp-i18n',
];
wp_enqueue_script(
'e-editor-notifications',
$this->get_js_assets_url( 'editor-notifications' ),
$deps,
ELEMENTOR_VERSION,
true
);
wp_localize_script(
'e-editor-notifications',
'elementorNotifications',
$this->get_app_js_config()
);
wp_set_script_translations( 'e-editor-notifications', 'elementor' );
}
private function get_app_js_config(): array {
return [
'is_unread' => Options::has_unread_notifications(),
];
}
public function register_ajax_actions( $ajax ) {
$ajax->register_ajax_action( 'notifications_get', [ $this, 'ajax_get_notifications' ] );
}
public function ajax_get_notifications() {
$notifications = API::get_notifications_by_conditions( true );
Options::mark_notification_read( $notifications );
return $notifications;
}
}
| Name | Type | Size | Permission | Actions |
|---|---|---|---|---|
| api.php | File | 4.97 KB | 0644 |
|
| module.php | File | 2.21 KB | 0644 |
|
| options.php | File | 1.77 KB | 0644 |
|