PluginProbe ʕ •ᴥ•ʔ
Matomo Analytics – Powerful, Privacy-First Insights for WordPress / 1.3.1
Matomo Analytics – Powerful, Privacy-First Insights for WordPress v1.3.1
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 / Period / Week.php
matomo / app / core / Period Last commit date
Day.php 6 years ago Factory.php 6 years ago Month.php 6 years ago PeriodValidator.php 6 years ago Range.php 6 years ago Week.php 6 years ago Year.php 6 years ago
Week.php
92 lines
1 <?php
2 /**
3 * Piwik - 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 *
8 */
9 namespace Piwik\Period;
10
11 use Piwik\Period;
12
13 /**
14 */
15 class Week extends Period
16 {
17 const PERIOD_ID = 2;
18
19 protected $label = 'week';
20
21 /**
22 * Returns the current period as a localized short string
23 *
24 * @return string
25 */
26 public function getLocalizedShortString()
27 {
28 return $this->getTranslatedRange($this->getRangeFormat(true));
29 }
30
31 /**
32 * Returns the current period as a localized long string
33 *
34 * @return string
35 */
36 public function getLocalizedLongString()
37 {
38 $string = $this->getTranslatedRange($this->getRangeFormat());
39 return $this->translator->translate('Intl_PeriodWeek') . " " . $string;
40 }
41
42 /**
43 * Returns the current period as a string
44 *
45 * @return string
46 */
47 public function getPrettyString()
48 {
49 $dateStart = $this->getDateStart();
50 $dateEnd = $this->getDateEnd();
51
52 $out = $this->translator->translate('General_DateRangeFromTo', array($dateStart->toString(), $dateEnd->toString()));
53
54 return $out;
55 }
56
57 /**
58 * Generates the subperiods - one for each day in the week
59 */
60 protected function generate()
61 {
62 if ($this->subperiodsProcessed) {
63 return;
64 }
65
66 parent::generate();
67 $date = $this->date;
68
69 if ($date->toString('N') > 1) {
70 $date = $date->subDay($date->toString('N') - 1);
71 }
72
73 $startWeek = $date;
74
75 $currentDay = clone $startWeek;
76 while ($currentDay->compareWeek($startWeek) == 0) {
77 $this->addSubperiod(new Day($currentDay));
78 $currentDay = $currentDay->addDay(1);
79 }
80 }
81
82 public function getImmediateChildPeriodLabel()
83 {
84 return 'day';
85 }
86
87 public function getParentPeriodLabel()
88 {
89 return 'month';
90 }
91 }
92