|
Server : LiteSpeed System : Linux server51.dnsbootclub.com 4.18.0-553.62.1.lve.el8.x86_64 #1 SMP Mon Jul 21 17:50:35 UTC 2025 x86_64 User : nandedex ( 1060) PHP Version : 8.1.33 Disable Function : NONE Directory : /home/nandedex/www/wp-content/plugins/wordpress-seo/vendor/yoast/whip/src/ |
<?php
namespace Yoast\WHIPv2;
use Yoast\WHIPv2\Interfaces\DismissStorage;
/**
* A class to dismiss messages.
*/
class MessageDismisser {
/**
* Storage object to manage the dismissal state.
*
* @var DismissStorage
*/
protected $storage;
/**
* The current time.
*
* @var int
*/
protected $currentTime;
/**
* The number of seconds the message will be dismissed.
*
* @var int
*/
protected $threshold;
/**
* MessageDismisser constructor.
*
* @param int $currentTime The current time.
* @param int $threshold The number of seconds the message will be dismissed.
* @param DismissStorage $storage Storage object to manage the dismissal state.
*/
public function __construct( $currentTime, $threshold, DismissStorage $storage ) {
$this->currentTime = $currentTime;
$this->threshold = $threshold;
$this->storage = $storage;
}
/**
* Saves the version number to the storage to indicate the message as being dismissed.
*
* @return void
*/
public function dismiss() {
$this->storage->set( $this->currentTime );
}
/**
* Checks if the current time is lower than the stored time extended by the threshold.
*
* @return bool True when current time is lower than stored value + threshold.
*/
public function isDismissed() {
return ( $this->currentTime <= ( $this->storage->get() + $this->threshold ) );
}
/**
* Checks the nonce.
*
* @param string $nonce The nonce to check.
* @param string $action The action to check.
*
* @return bool True when the nonce is valid.
*/
public function verifyNonce( $nonce, $action ) {
return (bool) \wp_verify_nonce( $nonce, $action );
}
}