File "class-wp-internal-pointers.php"

Full path: /home/kosmetik/public_html/wp-includes/wp-admin/includes/class-wp-internal-pointers.php
File size: 2.8 B
MIME-type: text/x-php
Charset: utf-8

Download   Open   Edit   Advanced Editor   Back

<?php

final class WP_Internal_Pointers
{
    public static function enqueue_scripts($hook_suffix)
    {
        $registered_pointers = array();
        if (empty($registered_pointers[$hook_suffix])) {
            return;
        }
        $pointers = (array) $registered_pointers[$hook_suffix];
        $caps_required = array();
        $dismissed = explode(',', (string) get_user_meta(get_current_user_id(), 'dismissed_wp_pointers', true));
        $got_pointers = false;
        foreach (array_diff($pointers, $dismissed) as $pointer) {
            if (isset($caps_required[$pointer])) {
                foreach ($caps_required[$pointer] as $cap) {
                    if (!current_user_can($cap)) {
                        continue 2;
                    }
                }
            }
            add_action('admin_print_footer_scripts', array('WP_Internal_Pointers', 'pointer_' . $pointer));
            $got_pointers = true;
        }
        if (!$got_pointers) {
            return;
        }
        wp_enqueue_style('wp-pointer');
        wp_enqueue_script('wp-pointer');
    }
    private static function print_js($pointer_id, $selector, $args)
    {
        if (empty($pointer_id) || empty($selector) || empty($args) || empty($args['content'])) {
            return;
        }
        ?>
		<script type="text/javascript">
		(function($){
			var options = <?php 
        echo wp_json_encode($args);
        ?>, setup;

			if ( ! options )
				return;

			options = $.extend( options, {
				close: function() {
					$.post( ajaxurl, {
						pointer: '<?php 
        echo $pointer_id;
        ?>',
						action: 'dismiss-wp-pointer'
					});
				}
			});

			setup = function() {
				$('<?php 
        echo $selector;
        ?>').first().pointer( options ).pointer('open');
			};

			if ( options.position && options.position.defer_loading )
				$(window).bind( 'load.wp-pointers', setup );
			else
				$(document).ready( setup );

		})( jQuery );
		</script>
		<?php 
    }
    public static function pointer_wp330_toolbar()
    {
    }
    public static function pointer_wp330_media_uploader()
    {
    }
    public static function pointer_wp330_saving_widgets()
    {
    }
    public static function pointer_wp340_customize_current_theme_link()
    {
    }
    public static function pointer_wp340_choose_image_from_library()
    {
    }
    public static function pointer_wp350_media()
    {
    }
    public static function pointer_wp360_revisions()
    {
    }
    public static function pointer_wp360_locks()
    {
    }
    public static function pointer_wp390_widgets()
    {
    }
    public static function pointer_wp410_dfw()
    {
    }
    public static function pointer_wp496_privacy()
    {
    }
    public static function dismiss_pointers_for_new_users($user_id)
    {
        add_user_meta($user_id, 'dismissed_wp_pointers', '');
    }
}