PluginProbe ʕ •ᴥ•ʔ
GiveWP – Donation Plugin and Fundraising Platform / 4.15.4
GiveWP – Donation Plugin and Fundraising Platform v4.15.4
4.16.2 4.16.1 4.16.0 4.15.5 4.15.4 4.15.3 4.15.2 4.15.1 4.15.0 2.3.0 2.3.1 2.3.2 2.30.0 2.31.0 2.31.1 2.32.0 2.33.0 2.33.1 2.33.2 2.33.3 2.33.4 2.33.5 2.4.0 2.4.1 2.4.2 2.4.3 2.4.4 2.4.5 2.4.6 2.4.7 2.5.0 2.5.1 2.5.10 2.5.11 2.5.12 2.5.13 2.5.2 2.5.3 2.5.4 2.5.5 2.5.6 2.5.7 2.5.8 2.5.9 2.6.0 2.6.1 2.6.2 2.6.3 2.7.0 2.7.1 2.7.2 2.7.3 2.7.4 2.7.5 2.8.0 2.8.1 2.9.0 2.9.1 2.9.2 2.9.3 2.9.4 2.9.5 2.9.6 2.9.7 3.0.0 3.0.1 3.0.2 3.0.3 3.0.4 3.1.0 3.1.1 3.1.2 3.10.0 3.11.0 3.12.0 3.12.1 3.12.2 3.12.3 3.13.0 3.14.0 3.14.1 3.14.2 3.15.0 3.15.1 3.16.0 3.16.1 3.16.2 3.16.3 3.16.4 3.16.5 3.17.0 3.17.1 3.17.2 3.18.0 3.19.0 3.19.1 3.19.2 3.19.3 3.19.4 3.2.0 3.2.1 3.2.2 3.20.0 3.21.0 3.21.1 3.22.0 3.22.1 3.22.2 3.3.0 3.3.1 3.4.0 3.4.1 3.4.2 3.5.0 3.5.1 3.6.0 3.6.1 3.6.2 3.7.0 3.8.0 3.9.0 4.0.0 4.1.0 4.1.1 4.10.0 4.10.1 4.11.0 4.12.0 4.13.0 4.13.1 4.13.2 4.14.0 4.14.1 4.14.2 4.14.3 4.14.4 4.14.5 4.14.6 4.2.0 4.2.1 4.3.0 4.3.1 4.3.2 4.4.0 4.5.0 4.6.1 4.7.0 4.7.1 4.8.0 4.8.1 4.9.0 trunk 1.9.0 2.0.0 2.0.1 2.0.2 2.0.3 2.0.4 2.0.5 2.0.6 2.0.7 2.1.0 2.1.1 2.1.2 2.1.3 2.1.4 2.1.5 2.1.6 2.1.7 2.1.8 2.10.0 2.10.1 2.10.2 2.10.3 2.10.4 2.11.0 2.11.1 2.11.2 2.11.3 2.12.0 2.12.1 2.12.2 2.12.3 2.13.0 2.13.1 2.13.2 2.13.3 2.13.4 2.14.0 2.15.0 2.16.0 2.16.1 2.17.0 2.17.1 2.17.3 2.18.0 2.18.1 2.19.1 2.19.2 2.19.3 2.19.4 2.19.5 2.19.6 2.19.7 2.19.8 2.2.0 2.2.1 2.2.2 2.2.3 2.2.4 2.2.5 2.2.6 2.20.0 2.20.1 2.20.2 2.21.0 2.21.1 2.21.2 2.21.3 2.21.4 2.22.0 2.22.1 2.22.2 2.22.3 2.23.0 2.23.1 2.23.2 2.24.0 2.24.1 2.24.2 2.25.0 2.25.1 2.25.2 2.25.3 2.26.0 2.27.0 2.27.1 2.27.2 2.27.3 2.28.0 2.29.0 2.29.1 2.29.2
give / src / BetaFeatures / ServiceProvider.php
give / src / BetaFeatures Last commit date
Actions 2 years ago Facades 2 years ago Repositories 7 months ago ServiceProvider.php 7 months ago
ServiceProvider.php
97 lines
1 <?php
2
3 namespace Give\BetaFeatures;
4
5 use Give\BetaFeatures\Facades\FeatureFlag;
6 use Give\Helpers\Hooks;
7 use Give\ServiceProviders\ServiceProvider as ServiceProviderInterface;
8
9 /**
10 * @since 3.6.0
11 */
12 class ServiceProvider implements ServiceProviderInterface
13 {
14 /**
15 * @since 3.6.0
16 * @inheritDoc
17 */
18 public function register(): void
19 {
20 //
21 }
22
23 /**
24 * @since 4.13.1 commented out the setFeatureFlagNotificationCounter method and added a filter to set the count to 0
25 * @since 3.6.0
26 * @inheritDoc
27 */
28 public function boot(): void
29 {
30 //$this->setFeatureFlagNotificationCounter();
31
32 /**
33 * @since 4.13.1 This is intentionally being set to 0 until we can revisit Event Tickets Beta.
34 */
35 add_filter('givewp_feature_flag_notifications_count', function ($count) {
36 return 0;
37 });
38
39 Hooks::addFilter('give_get_settings_general', Actions\RegisterSettings::class);
40 Hooks::addFilter('give_get_sections_general', Actions\RegisterSettingSection::class);
41
42 add_filter('givewp_settings_menu_title_give-settings', function ($title) {
43 return $this->getTitleWithNotificationCounter($title, 'menu-counter');
44 });
45
46 add_filter('givewp_settings_section_title_beta', function ($title) {
47 return $this->getTitleWithNotificationCounter($title);
48 });
49
50 add_action('give_admin_field_beta_features', function(){
51 echo sprintf('<div class="give-admin-beta-features-message"><span class="givewp-beta-icon">BETA</span> %s </div>', __('Beta features are a way to get early access to new features. These features are functional but will be updated frequently. Updates may include changes to the feature settings, admin screens, design and database.', 'give'));
52 });
53
54 add_action('give_admin_field_beta_features_feedback_link', function () {
55 echo sprintf(
56 '<div class="give-admin-beta-features-feedback-link"><p><img src="%s" alt="feedback link icon" /> %s <a href="https://feedback.givewp.com/events-beta-feedback" target="_blank" rel="noopener noreferrer">%s</a></p></div>',
57 GIVE_PLUGIN_URL . 'build/assets/dist/images/admin/feedback-icon.svg',
58 __('How can we improve this feature?', 'give'),
59 __('Submit your feedback.', 'give')
60 );
61 });
62 }
63
64 /**
65 * This is intended to add the initial notification count
66 *
67 * @since 3.6.0
68 */
69 private function setFeatureFlagNotificationCounter(): void
70 {
71 if (get_option('givewp_feature_flag_notifications_count', false) === false) {
72 update_option('givewp_feature_flag_notifications_count', 1);
73 }
74 }
75
76 /**
77 * @since 3.6.0
78 */
79 public function getTitleWithNotificationCounter($title, $className = ''): string
80 {
81 $count = FeatureFlag::getNotificationCount();
82
83 if (!$count) {
84 return $title;
85 }
86
87 $counter = sprintf(
88 ' <span class="%s givewp-feature-flag-notification-counter count-%s"><span class="count">%s</span></span>',
89 $className,
90 $count,
91 number_format_i18n($count)
92 );
93
94 return $title . $counter;
95 }
96 }
97