Warning: session_start(): Session cannot be started after headers have already been sent in /home/tvrreohg/public_html/manga.php on line 13
addActions(); $this->loadTextdomain(); add_action('admin_enqueue_scripts', array($this, 'dpwap_load_common_admin_scripts')); // add_action('admin_notices', array($this, 'dpwap_general_admin_notice',)); add_action('admin_notices', array($this, 'dpwap_general_promote_notice',)); add_action('wp_ajax_dpwap_dismiss_eventprime_promotion', array($this, 'dpwap_dismiss_eventprime_promotion',)); $plugins = new pluginBase(); $plugins->setup(); $themes = new themeBase(); $themes->setup(); } public function addActions() { add_action('admin_init', array($this, 'dpwap_plugin_redirect')); add_action('admin_menu', array($this, 'dpwap_load_menus')); add_action('wp_ajax_dpwap_dismiss_notice_action', array($this, 'dpwap_dismiss_notice_action')); add_action('admin_footer', [$this, 'dpwap_customize_modal']); add_action('wp_ajax_dpwap_customize_plugin', [$this, 'submit_customization_request']); } public function dpwap_customize_plugin() { // print_r($_POST); // die; // if (!isset($_POST['security']) || empty($_POST['security']) || !wp_verify_nonce(wp_unslash($_POST['security']), 'customize_plugin_action')) { // wp_send_json_error('Invalid nonce'); // return; // } if (isset($_POST['user_email']) && filter_var($_POST['user_email'], FILTER_VALIDATE_EMAIL)) { wp_send_json_success('Valid email'); } else { wp_send_json_error('Invalid email'); } // wp_send_json_success('Valid email'); } public function loadTextdomain() { load_textdomain('download-plugin', WP_LANG_DIR . '/download-plugin/download_plugin-' . get_locale() . '.mo'); } /** * redirect plugin to menu on activation */ public function dpwap_plugin_redirect() { if (get_option('download_plugin_do_activation_redirect', false)) { delete_option('download_plugin_do_activation_redirect'); wp_redirect(admin_url("admin.php?page=dpwap_plugin")); exit; } } public function dpwap_load_menus() { $dpwap = dpwap_plugin_loaded(); if (in_array('download-users', $dpwap->extensions)) { add_menu_page(__('Download', 'download-plugin'), __('Download', 'download-plugin'), 'manage_options', "dpwap_plugin", array($this, 'dpwap_plugin'), 'dashicons-media-archive', '99'); // download plugin menu add_submenu_page("dpwap_plugin", __('Download Plugins', 'download-plugin'), __('Download Plugins', 'download-plugin'), "manage_options", "dpwap_plugin", array($this, 'dpwap_plugin')); // download theme menu add_submenu_page("dpwap_plugin", __('Download Themes', 'download-plugin'), __('Download Themes', 'download-plugin'), "manage_options", "dpwap_theme", array($this, 'dpwap_theme')); // load all extensions // show default download user menu if (!in_array('download-users', $dpwap->extensions)) { add_submenu_page("dpwap_plugin", __('Download Users', 'download-plugin'), __('Download Users', 'download-plugin'), "manage_options", "dpwap_users", array($this, 'duwap_users_check')); } // show default download bbPress menu /*if ( !in_array( 'download-bbpress-integration', $dpwap->extensions ) ) { add_submenu_page( "dpwap_plugin", __('bbPress', 'download-plugin'), __('bbPress', 'download-plugin'), "manage_options", "dpwap_bbpress", array( $this, 'duwap_bbpress_check' ) ); }*/ } do_action('dpwap_downlad_plugin_menus'); // Enqueue the JavaScript file wp_enqueue_script('customize-modal', plugin_dir_url(__DIR__) . '/assets/js/customize-modal.js', array('jquery'), null, true); // Localize script to pass AJAX URL wp_localize_script('customize-modal', 'ajax_object', array('ajaxurl' => admin_url('admin-ajax.php'))); // Enqueue the CSS file wp_enqueue_style('customize-modal', plugin_dir_url(__DIR__) . '/assets/css/customize-modal.css'); } public function dpwap_plugin() { $plugin_info_file = DPWAP_DIR . DS . 'app' . DS . 'Plugins' . DS . 'templates' . DS . 'dpwap_plugin_info.php'; include($plugin_info_file); // Add the modal HTML } public function dpwap_customize_modal() { ?> 'valid nonce.')); // return; // } // Check if the current user has the necessary permission if (! current_user_can('manage_options')) { wp_send_json_error(array('message' => esc_html__('You do not have permission to perform this action.', 'download-plugin'))); return; } if (!isset($_POST['security']) || empty($_POST['security']) || !wp_verify_nonce(wp_unslash($_POST['security']), 'customize_plugin_action')) { wp_send_json_error(array('message' => 'Invalid nonce.')); return; } $user_email = isset($_POST['user_email']) ? sanitize_email(wp_unslash($_POST['user_email'])) : ''; if (!isset($_POST['user_email']) || !filter_var($_POST['user_email'], FILTER_VALIDATE_EMAIL)) { wp_send_json_error(array('message' => 'Please enter a valid email address.')); return; } // Check if customization type is provided $customization_type = isset($_POST['customizationType']) ? sanitize_textarea_field(wp_unslash($_POST['customizationType'])) : ''; if (empty($_POST['customizationType'])) { wp_send_json_error(array('message' => esc_html__('Please provide details about your customization request.', 'download-plugin'))); return; } // Prepare email details $to = 'support@metagauss.com'; $subject = 'WordPress Support Request'; $user_email = sanitize_email($_POST['user_email']); $plugin = sanitize_text_field($_POST['plugin_select']); $customization_type = sanitize_textarea_field($_POST['customizationType']); // Construct the HTML email body $message = "

WordPress Support Request

You have received a new customization request. Below are the details:

Field Submitted Value
Plugin {$plugin}
Email {$user_email}
Customization Needs {$customization_type}
"; $headers = array( 'Content-Type: text/html; charset=UTF-8', 'From: ' . $user_email, ); // Send the email if (wp_mail($to, $subject, $message, $headers)) { wp_send_json_success(array('message' => 'Your request has been submitted successfully. We will get back to you shortly.')); } else { wp_send_json_error(array( 'message' => 'Something went wrong. Please try again or create a ticket manually at https://metagauss.freshdesk.com/support/tickets/new.' )); } } public function dpwap_theme() { $theme_info_file = DPWAP_DIR . DS . 'app' . DS . 'Themes' . DS . 'templates' . DS . 'dpwap_theme_info.php'; include_once $theme_info_file; } public function duwap_users_check() { $users_info_file = DPWAP_DIR . DS . 'app' . DS . 'Users' . DS . 'templates' . DS . 'dpwap_users_info.php'; include_once $users_info_file; } public function duwap_bbpress_check() { $bbpress_info_file = DPWAP_DIR . DS . 'app' . DS . 'bbPress' . DS . 'templates' . DS . 'dpwap_bbpress_info.php'; include_once $bbpress_info_file; } public function dpwap_load_common_admin_scripts() { wp_enqueue_script('dpwap_common_js', DPWAP_URL . 'assets/js/dpwap-common.js', array(), DPWAP_VERSION); wp_localize_script('dpwap_common_js', 'admin_vars', array('admin_url' => admin_url(), 'ajax_url' => admin_url('admin-ajax.php'), 'nonce' => wp_create_nonce('dpwap_secure_action'))); wp_enqueue_style('dpwap_common_css', DPWAP_URL . 'assets/css/dpwap-common.css', array(), DPWAP_VERSION); } public static function instance() { if (is_null(self::$instance)) { self::$instance = new self(); } return self::$instance; } /** * Admin notice */ // public function dpwap_general_admin_notice() // { // $dpwap = dpwap_plugin_loaded(); // $get_dismiss_option = get_option('dpwap_dismiss_offer_notice', false); // if (empty($dpwap->extensions) && empty($get_dismiss_option)) { // // echo '
// //

Download Plugin now has add-on for downloading and uploading your website\'s user accounts. Click here to get it now!

// //
'; // } // } public function dpwap_general_promote_notice() { $installed_plugins = get_plugins(); // Check if EventPrime is installed (active or inactive) if (class_exists('Eventprime_Event_Calendar_Management') || isset($installed_plugins['eventprime-event-calendar-management/event-prime.php'])) { return; } $notice_dismissed = get_option('dpwap_dismiss_eventprime_promotion', false); if ($notice_dismissed) { return; } // Show only on plugin pages or plugins.php $install_url = wp_nonce_url( self_admin_url('update.php?action=install-plugin&plugin=eventprime-event-calendar-management'), 'install-plugin_eventprime-event-calendar-management' ); ?>
.