%PDF- %PDF-
Direktori : /home/opti/public_html/stlc/wp-content/plugins/duplicator/src/Core/Notifications/ |
Current File : /home/opti/public_html/stlc/wp-content/plugins/duplicator/src/Core/Notifications/NoticeBar.php |
<?php namespace Duplicator\Core\Notifications; use Duplicator\Core\Controllers\ControllersManager; use Duplicator\Core\Views\TplMng; use Duplicator\Libs\Snap\SnapWP; /** * Admin/NoticeBar Education feature for Lite. */ class NoticeBar { /** * Constant for the wp-options key handling the dismissed state */ const NOTICE_BAR_DISMISSED_OPT_KEY = 'duplicator_notice_bar_dismissed'; /** * Init. * * @return void */ public static function init() { add_action('in_admin_header', array(__CLASS__, 'display')); add_action('wp_ajax_duplicator_notice_bar_dismiss', array(__CLASS__, 'dismissNoticeBar')); } /** * Notice bar display message. * * @return void */ public static function display() { if (!ControllersManager::isDuplicatorPage()) { return; } //make sure it wasn't dismissed if (get_user_meta(get_current_user_id(), self::NOTICE_BAR_DISMISSED_OPT_KEY, true) != false) { return; } $utm_content = ''; foreach (ControllersManager::getMenuLevels() as $key => $value) { if (strlen((string) $value) == 0) { continue; } $utm_content .= ucfirst($key) . ' ' . $value . ' '; } $utm_content = trim($utm_content); TplMng::getInstance()->render('/parts/notice-bar', array( 'utm_content' => $utm_content )); } /** * Dismiss notice bar ajax action * * @return void */ public static function dismissNoticeBar() { // Run a security check. check_ajax_referer('duplicator-notice-bar-dismiss', 'nonce'); update_user_meta(get_current_user_id(), self::NOTICE_BAR_DISMISSED_OPT_KEY, true); } /** * Delete related option * * @return bool true on success, false on failure */ public static function deleteOption() { return SnapWP::deleteUserMetaKey(self::NOTICE_BAR_DISMISSED_OPT_KEY); } }