Diff: STRATO-apps/wordpress_03/app/wp-content/plugins/wp-rocket/inc/Engine/Tracking/ServiceProvider.php

Keine Baseline-Datei – Diff nur gegen leer.
Zur Liste
1 -
1 + <?php
2 + declare(strict_types=1);
3 +
4 + namespace WP_Rocket\Engine\Tracking;
5 +
6 + use WP_Rocket\Dependencies\League\Container\Argument\Literal\StringArgument;
7 + use WP_Rocket\Dependencies\League\Container\ServiceProvider\AbstractServiceProvider;
8 + use WPMedia\Mixpanel\Optin;
9 + use WPMedia\Mixpanel\TrackingPlugin as MixpanelTracking;
10 +
11 + class ServiceProvider extends AbstractServiceProvider {
12 + /**
13 + * Array of services provided by this service provider
14 + *
15 + * @var array
16 + */
17 + protected $provides = [
18 + 'mixpanel_tracking',
19 + 'tracking',
20 + 'tracking_subscriber',
21 + ];
22 +
23 + /**
24 + * Check if the service provider provides a specific service.
25 + *
26 + * @param string $id The id of the service.
27 + *
28 + * @return bool
29 + */
30 + public function provides( string $id ): bool {
31 + return in_array( $id, $this->provides, true );
32 + }
33 +
34 + /**
35 + * Registers the services in the container
36 + *
37 + * @return void
38 + */
39 + public function register(): void {
40 + $this->getContainer()->add( 'mixpanel_optin', Optin::class )
41 + ->addArguments(
42 + [
43 + 'rocket',
44 + 'rocket_manage_options',
45 + ]
46 + );
47 + $this->getContainer()->add( 'mixpanel_tracking', MixpanelTracking::class )
48 + ->addArguments(
49 + [
50 + '517e881edc2636e99a2ecf013d8134d3',
51 + 'wp rocket ' . rocket_get_constant( 'WP_ROCKET_VERSION', '' ),
52 + 'wp media',
53 + 'wp rocket',
54 + ]
55 + );
56 + $this->getContainer()->add( 'tracking', Tracking::class )
57 + ->addArguments(
58 + [
59 + 'options',
60 + 'mixpanel_optin',
61 + 'mixpanel_tracking',
62 + new StringArgument( $this->getContainer()->get( 'template_path' ) . '/settings/sections/' ),
63 + ]
64 + );
65 + $this->getContainer()->add( 'tracking_subscriber', Subscriber::class )
66 + ->addArgument( 'tracking' );
67 + }
68 + }
69 +