• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

Yoast / whip / 7300735247

22 Dec 2023 02:07PM UTC coverage: 31.683% (+3.0%) from 28.713%
7300735247

push

github

web-flow
Merge pull request #157 from Yoast/move-to-namespace-v2

Move source classes to the `Yoast\WHIPv2` namespace

30 of 114 new or added lines in 18 files covered. (26.32%)

96 of 303 relevant lines covered (31.68%)

2.66 hits per line

Source File
Press 'n' to go to next uncovered line, 'b' for previous

0.0
/src/Facades/wordpress.php
1
<?php
2
/**
3
 * WHIP libary file.
4
 *
5
 * @package Yoast\WHIP
6
 */
7

8
use Yoast\WHIPv2\MessageDismisser;
9
use Yoast\WHIPv2\Presenters\WPMessagePresenter;
10
use Yoast\WHIPv2\RequirementsChecker;
11
use Yoast\WHIPv2\VersionRequirement;
12
use Yoast\WHIPv2\WPDismissOption;
13

14
if ( ! function_exists( 'whip_wp_check_versions' ) ) {
15
        /**
16
         * Facade to quickly check if version requirements are met.
17
         *
18
         * @param array $requirements The requirements to check.
19
         *
20
         * @return void
21
         */
22
        function whip_wp_check_versions( $requirements ) {
23
                // Only show for admin users.
24
                if ( ! is_array( $requirements ) ) {
×
25
                        return;
×
26
                }
27

NEW
28
                $config  = include __DIR__ . '/../Configs/default.php';
×
NEW
29
                $checker = new RequirementsChecker( $config );
×
30

31
                foreach ( $requirements as $component => $versionComparison ) {
×
NEW
32
                        $checker->addRequirement( VersionRequirement::fromCompareString( $component, $versionComparison ) );
×
33
                }
34

35
                $checker->check();
×
36

37
                if ( ! $checker->hasMessages() ) {
×
38
                        return;
×
39
                }
40

41
                $dismissThreshold = ( WEEK_IN_SECONDS * 4 );
×
42
                $dismissMessage   = __( 'Remind me again in 4 weeks.', 'default' );
×
43

NEW
44
                $dismisser = new MessageDismisser( time(), $dismissThreshold, new WPDismissOption() );
×
45

NEW
46
                $presenter = new WPMessagePresenter( $checker->getMostRecentMessage(), $dismisser, $dismissMessage );
×
47

48
                // Prevent duplicate notices across multiple implementing plugins.
49
                if ( ! has_action( 'whip_register_hooks' ) ) {
×
50
                        add_action( 'whip_register_hooks', array( $presenter, 'registerHooks' ) );
×
51
                }
52

53
                /**
54
                 * Fires during hooks registration for the message presenter.
55
                 *
56
                 * @param WPMessagePresenter $presenter Message presenter instance.
57
                 */
58
                do_action( 'whip_register_hooks', $presenter );
×
59
        }
60
}
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc