PluginProbe ʕ •ᴥ•ʔ
Matomo Analytics – Powerful, Privacy-First Insights for WordPress / 5.7.0
Matomo Analytics – Powerful, Privacy-First Insights for WordPress v5.7.0
5.13.0 5.12.1 5.12.0 5.11.1 5.11.0 5.10.2 5.10.1 trunk 1.0.2 1.0.3 1.0.4 1.0.5 1.0.6 1.1.0 1.1.1 1.1.2 1.1.3 1.2.0 1.3.0 1.3.1 1.3.2 4.0.0 4.0.1 4.0.2 4.0.3 4.0.4 4.1.0 4.1.1 4.1.2 4.1.3 4.10.0 4.11.0 4.12.0 4.13.0 4.13.2 4.13.3 4.13.4 4.13.5 4.14.0 4.14.1 4.14.2 4.15.0 4.15.1 4.15.2 4.15.3 4.2.0 4.3.0 4.3.1 4.4.1 4.4.2 4.5.0 4.6.0 5.0.1 5.0.2 5.0.3 5.0.4 5.0.5 5.0.6 5.0.7 5.0.8 5.1.0 5.1.1 5.1.2 5.1.3 5.1.4 5.1.5 5.1.6 5.1.7 5.10.0 5.2.0 5.2.1 5.2.2 5.3.0 5.3.1 5.3.2 5.3.3 5.6.0 5.6.1 5.7.0 5.7.1 5.8.0 5.8.1 5.8.2
matomo / classes / WpMatomo / Admin / Info.php
matomo / classes / WpMatomo / Admin Last commit date
TrackingSettings 6 months ago views 6 months ago AccessSettings.php 4 years ago AdBlockDetector.php 8 months ago Admin.php 1 year ago AdminSettings.php 2 years ago AdminSettingsInterface.php 6 years ago AdvancedSettings.php 1 year ago Chart.php 4 years ago CookieConsent.php 4 years ago Dashboard.php 4 years ago ExclusionSettings.php 8 months ago GeolocationSettings.php 2 years ago GetStarted.php 4 years ago ImportWpStatistics.php 8 months ago Info.php 4 years ago InvalidIpException.php 4 years ago Marketplace.php 8 months ago MarketplaceSetupWizard.php 1 year ago Menu.php 6 months ago PluginMeasurableSettings.php 2 years ago PrivacySettings.php 1 year ago SafeModeMenu.php 4 years ago Summary.php 1 year ago SystemReport.php 6 months ago TrackingSettings.php 6 months ago WhatsNewNotifications.php 1 year ago
Info.php
71 lines
1 <?php
2 /**
3 * Matomo - free/libre analytics platform
4 *
5 * @link https://matomo.org
6 * @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
7 * @package matomo
8 */
9
10 namespace WpMatomo\Admin;
11
12 use WpMatomo\Capabilities;
13
14 if ( ! defined( 'ABSPATH' ) ) {
15 exit; // if accessed directly
16 }
17
18 class Info {
19 const NONCE_NAME = 'matomo_newsletter';
20 const FORM_NAME = 'matomo_newsletter_signup';
21
22 private function update_if_submitted() {
23 if ( isset( $_POST )
24 && ! empty( $_POST[ self::FORM_NAME ] )
25 && is_admin()
26 && check_admin_referer( self::NONCE_NAME )
27 && $this->show_newsletter_signup()
28 && current_user_can( Capabilities::KEY_VIEW ) ) {
29 $user = wp_get_current_user();
30 $locale = explode( '_', get_user_locale( $user->ID ) );
31 wp_remote_get(
32 'https://api.matomo.org/1.0/subscribeNewsletter/?' . http_build_query(
33 [
34 'email' => $user->user_email,
35 'wordpress' => 1,
36 'language' => $locale[0],
37 ]
38 )
39 );
40 update_user_meta( $user->ID, self::FORM_NAME, '1' );
41
42 return true;
43 }
44 }
45
46 private function show_newsletter_signup() {
47 if ( ! is_user_logged_in() ) {
48 return false;
49 }
50
51 $user = wp_get_current_user();
52
53 return ! get_user_meta( $user->ID, self::FORM_NAME, true );
54 }
55
56 public function show() {
57 $this->render( 'info' );
58 }
59
60 public function show_multisite() {
61 $this->render( 'info_multisite' );
62 }
63
64 private function render( $template ) {
65 $signedup_newsletter = $this->update_if_submitted();
66 $show_newsletter = $this->show_newsletter_signup();
67
68 include dirname( __FILE__ ) . '/views/' . $template . '.php';
69 }
70 }
71