PluginProbe ʕ •ᴥ•ʔ
Matomo Analytics – Powerful, Privacy-First Insights for WordPress / 5.2.0
Matomo Analytics – Powerful, Privacy-First Insights for WordPress v5.2.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 / app / core / Updates / 4.1.2-b1.php
matomo / app / core / Updates Last commit date
3.12.0-b1.php 2 years ago 3.12.0-b7.php 2 years ago 4.0.0-b1.php 1 year ago 4.0.0-b3.php 2 years ago 4.0.0-rc3.php 2 years ago 4.0.0-rc4.php 1 year ago 4.0.1-b1.php 2 years ago 4.0.4-b1.php 2 years ago 4.1.2-b1.php 2 years ago 4.1.2-b2.php 2 years ago 4.10.0-b1.php 2 years ago 4.11.0-b1.php 2 years ago 4.11.0-rc2.php 2 years ago 4.12.0-b1.php 2 years ago 4.12.0-b2.php 2 years ago 4.12.0-b3.php 1 year ago 4.12.0-b4.php 2 years ago 4.3.0-b3.php 2 years ago 4.3.0-b4.php 2 years ago 4.3.0-rc2.php 2 years ago 4.4.0-b1.php 2 years ago 4.5.0-b1.php 2 years ago 4.6.0-b1.php 2 years ago 4.6.0-b4.php 1 year ago 4.6.2-rc2.php 1 year ago 4.7.0-b2.php 2 years ago 4.7.1-b1.php 2 years ago 5.0.0-b1.php 1 year ago 5.0.0-rc2.php 2 years ago 5.0.0-rc5.php 2 years ago 5.2.0-b2.php 1 year ago 5.2.0-b6.php 1 year ago
4.1.2-b1.php
72 lines
1 <?php
2
3 /**
4 * Matomo - free/libre analytics platform
5 *
6 * @link https://matomo.org
7 * @license https://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
8 */
9 namespace Piwik\Updates;
10
11 use Piwik\Container\StaticContainer;
12 use Piwik\CronArchive;
13 use Piwik\Date;
14 use Piwik\Plugins\SegmentEditor\API;
15 use Piwik\Archive\ArchiveInvalidator;
16 use Piwik\ArchiveProcessor\Rules;
17 use Piwik\Updater;
18 use Piwik\Updates as PiwikUpdates;
19 use Piwik\Updater\Migration\Factory as MigrationFactory;
20 class Updates_4_1_2_b1 extends PiwikUpdates
21 {
22 /**
23 * @var MigrationFactory
24 */
25 private $migration;
26 public function __construct(MigrationFactory $factory)
27 {
28 $this->migration = $factory;
29 }
30 public function doUpdate(Updater $updater)
31 {
32 $updater->executeMigrations(__FILE__, $this->getMigrations($updater));
33 }
34 public function getMigrations(Updater $updater)
35 {
36 $migrations = [];
37 if (!Rules::isBrowserTriggerEnabled()) {
38 $dateOfMatomo4Release = Date::factory('2020-11-23');
39 $cmdStr = $this->getInvalidateCommand($dateOfMatomo4Release);
40 $migrations[] = new Updater\Migration\Custom(function () use($dateOfMatomo4Release) {
41 $invalidator = StaticContainer::get(ArchiveInvalidator::class);
42 $invalidator->scheduleReArchiving('all', 'VisitFrequency', null, $dateOfMatomo4Release);
43 }, $cmdStr);
44 }
45 $migrations[] = new Updater\Migration\Custom(function () {
46 $segmentArchiving = StaticContainer::get(CronArchive\SegmentArchiving::class);
47 $timeOfLastInvalidateTime = CronArchive::getLastInvalidationTime();
48 $segments = API::getInstance()->getAll();
49 foreach ($segments as $segment) {
50 try {
51 $tsCreated = !empty($segment['ts_created']) ? Date::factory($segment['ts_created'])->getTimestamp() : 0;
52 $tsLastEdit = !empty($segment['ts_last_edit']) ? Date::factory($segment['ts_last_edit'])->getTimestamp() : null;
53 $timeToUse = max($tsCreated, $tsLastEdit);
54 if ($timeToUse > $timeOfLastInvalidateTime) {
55 $segmentArchiving->reArchiveSegment($segment);
56 }
57 } catch (\Exception $ex) {
58 // ignore
59 }
60 }
61 }, '');
62 return $migrations;
63 }
64 private function getInvalidateCommand(Date $dateOfMatomo4Release)
65 {
66 $command = "php " . PIWIK_INCLUDE_PATH . '/console core:invalidate-report-data --sites=all';
67 $command .= ' --dates=' . $dateOfMatomo4Release->toString() . ',' . Date::factory('today')->toString();
68 $command .= ' --plugin=VisitFrequency';
69 return $command;
70 }
71 }
72