|
Server : LiteSpeed System : Linux srv104790275 5.15.0-161-generic #171-Ubuntu SMP Sat Oct 11 08:17:01 UTC 2025 x86_64 User : dewac4139 ( 1077) PHP Version : 8.0.30 Disable Function : pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals,pcntl_unshare, Directory : /home/sarkas88.com/public_html/wp-content/plugins/amp/includes/admin/ |
Upload File : |
<?php
/**
* Class AMP_Admin_Pointers
*
* @package AMP
* @since 1.2
*/
/**
* Class managing admin pointers to enhance discoverability.
*
* @since 1.2
* @internal
*/
class AMP_Admin_Pointers {
/**
* Registers functionality through WordPress hooks.
*
* @since 1.2
*/
public function init() {
add_action(
'admin_enqueue_scripts',
[ $this, 'enqueue_scripts' ]
);
}
/**
* Initializes admin pointers by enqueuing necessary scripts.
*
* @since 1.2
*
* @param string $hook_suffix The current admin screen hook suffix.
*/
public function enqueue_scripts( $hook_suffix ) {
$pointers = $this->get_pointers();
if ( empty( $pointers ) ) {
return;
}
// Only enqueue one pointer at a time to prevent them overlaying each other.
foreach ( $pointers as $pointer ) {
if ( ! $pointer->is_active( $hook_suffix ) ) {
continue;
}
$pointer->enqueue();
return;
}
}
/**
* Gets available admin pointers.
*
* @since 1.2
*
* @return array List of AMP_Admin_Pointer instances.
*/
private function get_pointers() {
return [
new AMP_Admin_Pointer(
'amp_template_mode_pointer_10',
[
'selector' => '#toplevel_page_amp-options',
'heading' => esc_html__( 'AMP', 'amp' ),
'subheading' => esc_html__( 'New AMP Template Modes', 'amp' ),
'description' => esc_html__( 'You can now reuse your theme\'s templates and styles in AMP responses, in both “Transitional” and “Standard” modes.', 'amp' ),
'position' => [
'align' => 'middle',
],
'active_callback' => static function() {
return version_compare( strtok( AMP__VERSION, '-' ), '1.1', '<' );
},
]
),
];
}
}