PluginProbe ʕ •ᴥ•ʔ
Matomo Analytics – Powerful, Privacy-First Insights for WordPress / trunk
Matomo Analytics – Powerful, Privacy-First Insights for WordPress vtrunk
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 / AccessSettings.php
matomo / classes / WpMatomo / Admin Last commit date
Marketplace 1 month ago PluginSuggestions 11 hours ago TrackingSettings 2 months ago views 1 month ago AccessSettings.php 4 years ago AdBlockDetector.php 7 months ago Admin.php 1 month ago AdminSettings.php 3 months ago AdminSettingsInterface.php 6 years ago AdvancedSettings.php 10 months ago Chart.php 2 months ago CookieConsent.php 4 years ago Dashboard.php 3 months ago ExclusionSettings.php 7 months ago GeolocationSettings.php 2 years ago GetStarted.php 1 month ago ImportWpStatistics.php 3 months ago Info.php 3 months ago InvalidIpException.php 4 years ago Marketplace.php 1 month ago MarketplaceSetupWizard.php 1 month ago MarketplaceSetupWizardBody.php 1 month ago MatomoPage.php 3 months ago MatomoPageContent.php 3 months ago Menu.php 1 month ago PluginMeasurableSettings.php 2 years ago PrivacySettings.php 1 year ago SafeModeMenu.php 3 months ago Summary.php 3 months ago SystemReport.php 2 months ago TrackingSettings.php 2 months ago WhatsNewNotifications.php 3 months ago
AccessSettings.php
68 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\Access;
13 use WpMatomo\Capabilities;
14 use WpMatomo\Roles;
15 use WpMatomo\Settings;
16
17 if ( ! defined( 'ABSPATH' ) ) {
18 exit; // if accessed directly
19 }
20
21 class AccessSettings implements AdminSettingsInterface {
22 const NONCE_NAME = 'matomo_tracking';
23 const FORM_NAME = 'matomo_role';
24
25 /**
26 * @var Access
27 */
28 private $access;
29
30 /**
31 * @var Settings
32 */
33 private $settings;
34
35 public function __construct( Access $access, Settings $settings ) {
36 $this->access = $access;
37 $this->settings = $settings;
38 }
39
40 public function get_title() {
41 return esc_html__( 'Access', 'matomo' );
42 }
43
44 public function show_settings() {
45 $this->update_if_submitted();
46
47 $access = $this->access;
48 $roles = new Roles( $this->settings );
49 $capabilites = new Capabilities( $this->settings );
50 include dirname( __FILE__ ) . '/views/access.php';
51 }
52
53 private function update_if_submitted() {
54 if ( isset( $_POST )
55 && ! empty( $_POST[ self::FORM_NAME ] )
56 && is_admin()
57 && check_admin_referer( self::NONCE_NAME )
58 && current_user_can( Capabilities::KEY_SUPERUSER ) ) {
59 // phpcs:ignore WordPress.Security.ValidatedSanitizedInput.InputNotSanitized
60 $this->access->save( wp_unslash( $_POST[ self::FORM_NAME ] ) );
61
62 return true;
63 }
64
65 return false;
66 }
67 }
68