Hunter Black Hat SEO
Server:LiteSpeed
System:Linux raton.hozzt.com 4.18.0-553.144.1.lve.el8.x86_64 #1 SMP Thu Jul 16 08:31:06 UTC 2026 x86_64
User:altinkayamarble (1260)
PHP:7.4.33
Disabled:symlink, show_source, system, virtual, shell_exec,passthru, exec, popen, proc_open, proc_close, proc_nice, proc_terminate,proc_get_status, pfsockopen,allow_url_fopen, posix_getpwuid, eval,posix_setsid, posix_mkfifo, posix_setpgid,posix_setuid, posix_uname,posix_kill,apache_child_terminate, apache_setenv,define_syslog_variables,escapeshellarg, escapeshellcmd, leak, dl, fp, fput,ftp_connect, ftp_exec,ftp_get, ftp_login, ftp_nb_fput, ftp_put, ftp_raw, ftp_rawlist,highlight_file, ini_alter, ini_get_all, ini_restore, inject_code
Upload Files
File: /home/altinkayamarble/public_html/wp-content/plugins/wp-mail-smtp/src/Admin/Education.php
<?php

namespace WPMailSMTP\Admin;

/**
 * WP Mail SMTP enhancements to admin pages to educate Lite users on what is available in WP Mail SMTP Pro.
 *
 * @since 2.3.0
 */
class Education {

	/**
	 * The dismissed notice bar user meta key.
	 *
	 * @since 2.3.0
	 */
	const DISMISS_NOTICE_BAR_KEY = 'wp_mail_smtp_edu_notice_bar_dismissed';

	/**
	 * Hooks.
	 *
	 * @since 2.3.0
	 */
	public function hooks() {

		if ( apply_filters( 'wp_mail_smtp_admin_education_notice_bar', true ) ) {
			add_action( 'admin_init', [ $this, 'notice_bar_init' ] );
		}
	}

	/**
	 * Notice bar init.
	 *
	 * @since 2.3.0
	 */
	public function notice_bar_init() {

		add_action( 'wp_mail_smtp_admin_header_before', [ $this, 'notice_bar_display' ] );
		add_action( 'wp_ajax_wp_mail_smtp_notice_bar_dismiss', [ $this, 'notice_bar_ajax_dismiss' ] );
	}

	/**
	 * Notice bar display message.
	 *
	 * @since 2.3.0
	 */
	public function notice_bar_display() {

		// Bail if we're not on a plugin admin page.
		if ( ! wp_mail_smtp()->get_admin()->is_admin_page() ) {
			return;
		}

		$dismissed = get_user_meta( get_current_user_id(), self::DISMISS_NOTICE_BAR_KEY, true );

		if ( ! empty( $dismissed ) ) {
			return;
		}

		printf(
			'<div id="wp-mail-smtp-notice-bar">
				<div class="wp-mail-smtp-notice-bar-container">
				<span class="wp-mail-smtp-notice-bar-message">%s</span>
				<button type="button" class="dismiss" title="%s" />
				</div>
			</div>',
			wp_kses(
				sprintf( /* translators: %s - WPMailSMTP.com Upgrade page URL. */
					__( 'You’re using WP Mail SMTP Lite. To unlock more features consider <a href="%s" target="_blank" rel="noopener noreferrer">upgrading to Pro</a>.', 'wp-mail-smtp' ),
					wp_mail_smtp()->get_upgrade_link( [ 'medium' => 'notice-bar' ] )
				),
				[
					'a' => [
						'href'   => [],
						'rel'    => [],
						'target' => [],
					],
				]
			),
			esc_attr__( 'Dismiss this message.', 'wp-mail-smtp' )
		);
	}

	/**
	 * Ajax handler for dismissing notices.
	 *
	 * @since 2.3.0
	 */
	public function notice_bar_ajax_dismiss() {

		// Run a security check.
		check_ajax_referer( 'wp-mail-smtp-admin', 'nonce' );

		// Check for permissions.
		if ( ! current_user_can( 'manage_options' ) ) {
			wp_send_json_error();
		}

		update_user_meta( get_current_user_id(), self::DISMISS_NOTICE_BAR_KEY, time() );
		wp_send_json_success();
	}
}