@@ -4,7 +4,7 @@ |
||
4 | 4 | <?php if (count($v) === 2): // Isolated date.?> |
5 | 5 | <div class='bar bar-date bar<?= $k ?>' style='left:<?= $v[0] . ((int)$v[0] !== 0 ? '%' : '') ?>;' |
6 | 6 | data-title='<?= $v[1] ?>'></div> |
7 | - <?php else: ?> |
|
7 | + <?php else : ?> |
|
8 | 8 | <div class='bar bar-intv bar<?= $k ?> <?= $v[2] ?> <?= strpos($v[5], '*') ? 'striped' : '' ?>' |
9 | 9 | style='left:<?= $v[0] . ((int)$v[0] !== 0 ? '%' : '') ?>;right:<?= $v[1] . ((int)$v[1] !== 0 ? '%' : '') ?>' |
10 | 10 | data-title="<?= $v[3] . ' ➔ ' . $v[4] . (isset($v[5]) ? ' : ' . $v[5] : '') ?>"> |
@@ -4,11 +4,14 @@ |
||
4 | 4 | <?php if (count($v) === 2): // Isolated date.?> |
5 | 5 | <div class='bar bar-date bar<?= $k ?>' style='left:<?= $v[0] . ((int)$v[0] !== 0 ? '%' : '') ?>;' |
6 | 6 | data-title='<?= $v[1] ?>'></div> |
7 | - <?php else: ?> |
|
7 | + <?php else { |
|
8 | + : ?> |
|
8 | 9 | <div class='bar bar-intv bar<?= $k ?> <?= $v[2] ?> <?= strpos($v[5], '*') ? 'striped' : '' ?>' |
9 | 10 | style='left:<?= $v[0] . ((int)$v[0] !== 0 ? '%' : '') ?>;right:<?= $v[1] . ((int)$v[1] !== 0 ? '%' : '') ?>' |
10 | 11 | data-title="<?= $v[3] . ' ➔ ' . $v[4] . (isset($v[5]) ? ' : ' . $v[5] : '') ?>"> |
11 | 12 | </div> |
12 | - <?php endif; ?> |
|
13 | + <?php endif; |
|
14 | +} |
|
15 | +?> |
|
13 | 16 | <?php endforeach; ?> |
14 | 17 | </div> |
15 | 18 | \ No newline at end of file |
@@ -42,10 +42,10 @@ |
||
42 | 42 | { |
43 | 43 | $intvg = new IntervalGraph(); |
44 | 44 | $intvg->getFlattener() |
45 | - ->setSubstractStep(static function (DateTime $bound) { |
|
45 | + ->setSubstractStep(static function(DateTime $bound) { |
|
46 | 46 | return (clone $bound)->sub(new DateInterval('PT1S')); |
47 | 47 | }) |
48 | - ->setAddStep(static function (DateTime $bound) { |
|
48 | + ->setAddStep(static function(DateTime $bound) { |
|
49 | 49 | return (clone $bound)->add(new DateInterval('PT1S')); |
50 | 50 | }); |
51 | 51 | if (isset($intervals)) { |
@@ -58,23 +58,23 @@ discard block |
||
58 | 58 | $this->setIntervals($intervals); |
59 | 59 | } |
60 | 60 | |
61 | - $this->boundToNumeric = static function (DateTime $bound) { |
|
61 | + $this->boundToNumeric = static function(DateTime $bound) { |
|
62 | 62 | return $bound->getTimestamp(); |
63 | 63 | }; |
64 | 64 | |
65 | - $this->boundToString = static function (DateTime $bound) { |
|
65 | + $this->boundToString = static function(DateTime $bound) { |
|
66 | 66 | return $bound->format('Y-m-d'); |
67 | 67 | }; |
68 | 68 | |
69 | - $this->valueToNumeric = static function ($v) { |
|
69 | + $this->valueToNumeric = static function($v) { |
|
70 | 70 | return $v === null ? null : (int)($v * 100); |
71 | 71 | }; |
72 | 72 | |
73 | - $this->valueToString = static function ($v) { |
|
73 | + $this->valueToString = static function($v) { |
|
74 | 74 | return $v === null ? null : ($v * 100 . '%'); |
75 | 75 | }; |
76 | 76 | |
77 | - $this->aggregateFunction = static function ($a, $b) { |
|
77 | + $this->aggregateFunction = static function($a, $b) { |
|
78 | 78 | if ($a === null && $b === null) { |
79 | 79 | return null; |
80 | 80 | } |
@@ -247,7 +247,7 @@ discard block |
||
247 | 247 | } |
248 | 248 | |
249 | 249 | // Order by low bound. |
250 | - uasort($numVals, static function (array $i1, array $i2) { |
|
250 | + uasort($numVals, static function(array $i1, array $i2) { |
|
251 | 251 | return ($i1[0] < $i2[0]) ? -1 : 1; |
252 | 252 | }); |
253 | 253 | |
@@ -263,7 +263,7 @@ discard block |
||
263 | 263 | } |
264 | 264 | |
265 | 265 | // Order by high bound. |
266 | - uasort($numVals, static function (array $i1, array $i2) { |
|
266 | + uasort($numVals, static function(array $i1, array $i2) { |
|
267 | 267 | return ($i1[1] < $i2[1]) ? -1 : 1; |
268 | 268 | }); |
269 | 269 | |
@@ -306,7 +306,7 @@ discard block |
||
306 | 306 | !empty($originalValues) ? $this->palette->getColor($colval) : 50, // Interval color |
307 | 307 | ($this->boundToString)($lowBound), // Interval start string value |
308 | 308 | ($this->boundToString)($highBound), // Interval end string value |
309 | - !empty($originalValues) ? $strval : null,// Interval string value |
|
309 | + !empty($originalValues) ? $strval : null, // Interval string value |
|
310 | 310 | ]; |
311 | 311 | } |
312 | 312 | } |
@@ -314,7 +314,7 @@ discard block |
||
314 | 314 | // Put discrete values at the end and reset indices. |
315 | 315 | // Reseting indices ensures the processed values are |
316 | 316 | // serialized as correctly ordered JSON arrays. |
317 | - usort($numVals, static function ($i) { |
|
317 | + usort($numVals, static function($i) { |
|
318 | 318 | return count($i) === 2 ? 1 : -1; |
319 | 319 | }); |
320 | 320 | |
@@ -336,7 +336,7 @@ discard block |
||
336 | 336 | $adjacentIntervals = $this->flattener->calcAdjacentIntervals($signedBounds); |
337 | 337 | |
338 | 338 | // Remove empty interval generated when two or more intervals share a common bound. |
339 | - $adjacentIntervals = array_values(array_filter($adjacentIntervals, static function ($i) { |
|
339 | + $adjacentIntervals = array_values(array_filter($adjacentIntervals, static function($i) { |
|
340 | 340 | // Use weak comparison in case of object typed bounds. |
341 | 341 | return $i[0] != $i[1]; |
342 | 342 | })); |
@@ -364,7 +364,7 @@ discard block |
||
364 | 364 | */ |
365 | 365 | public static function extractDiscreteValues(array &$intervals): array |
366 | 366 | { |
367 | - $discreteValues = array_filter($intervals, static function ($interval) { |
|
367 | + $discreteValues = array_filter($intervals, static function($interval) { |
|
368 | 368 | return $interval[0] === $interval[1]; |
369 | 369 | }); |
370 | 370 | |
@@ -401,7 +401,7 @@ discard block |
||
401 | 401 | $bounds[] = [$interval[0], '+', true, $key, $interval[2] ?? null]; |
402 | 402 | } |
403 | 403 | // Order the bounds. |
404 | - usort($bounds, static function (array $d1, array $d2) { |
|
404 | + usort($bounds, static function(array $d1, array $d2) { |
|
405 | 405 | return ($d1[0] < $d2[0]) ? -1 : 1; |
406 | 406 | }); |
407 | 407 | return $bounds; |
@@ -428,7 +428,7 @@ discard block |
||
428 | 428 | } |
429 | 429 | |
430 | 430 | // Order by high bound. |
431 | - uasort($numericIntervals, static function (array $i1, array $i2) { |
|
431 | + uasort($numericIntervals, static function(array $i1, array $i2) { |
|
432 | 432 | return ($i1[1] < $i2[1]) ? -1 : 1; |
433 | 433 | }); |
434 | 434 | |
@@ -457,7 +457,7 @@ discard block |
||
457 | 457 | // Put discrete values at the end and reset indices. |
458 | 458 | // Reseting indices ensures the processed values are |
459 | 459 | // serialized as correctly ordered JSON arrays. |
460 | - usort($numericIntervals, static function ($i) { |
|
460 | + usort($numericIntervals, static function($i) { |
|
461 | 461 | return !is_array($i) ? 1 : -1; |
462 | 462 | }); |
463 | 463 |
@@ -39,7 +39,7 @@ discard block |
||
39 | 39 | D::intv(6, 9, 2 / 10), |
40 | 40 | ]; |
41 | 41 | |
42 | -$longDateFormat = static function (DateTime $bound) { |
|
42 | +$longDateFormat = static function(DateTime $bound) { |
|
43 | 43 | return $bound->format('Y-m-d H:i:s'); |
44 | 44 | }; |
45 | 45 | |
@@ -50,7 +50,7 @@ discard block |
||
50 | 50 | */ |
51 | 51 | |
52 | 52 | // An aggregate function for arrays representing fractions with the same denominator. |
53 | -$agg = static function ($a, $b) { |
|
53 | +$agg = static function($a, $b) { |
|
54 | 54 | if ($a === null && $b === null) { |
55 | 55 | return null; |
56 | 56 | } |
@@ -58,12 +58,12 @@ discard block |
||
58 | 58 | }; |
59 | 59 | |
60 | 60 | // A toNumeric function… |
61 | -$toNumeric = static function ($a) { |
|
61 | +$toNumeric = static function($a) { |
|
62 | 62 | return $a === null ? null : (int)($a[0] / $a[1] * 100); |
63 | 63 | }; |
64 | 64 | |
65 | 65 | // A toString function… |
66 | -$toString = static function ($a) { |
|
66 | +$toString = static function($a) { |
|
67 | 67 | return $a === null ? null : ($a[0] . '/' . $a[1]); |
68 | 68 | }; |
69 | 69 | |
@@ -86,8 +86,8 @@ discard block |
||
86 | 86 | /* |
87 | 87 | * TRUNCATED INTERVALS |
88 | 88 | */ |
89 | -$intv1 = (DateTime::createFromFormat('Y-m-d', '2019-01-01'))->add(new DateInterval('PT60H'))->setTime(0,0); |
|
90 | -$intv2 = (DateTime::createFromFormat('Y-m-d', '2019-01-01'))->add(new DateInterval('PT108H'))->setTime(23,59,59); |
|
89 | +$intv1 = (DateTime::createFromFormat('Y-m-d', '2019-01-01'))->add(new DateInterval('PT60H'))->setTime(0, 0); |
|
90 | +$intv2 = (DateTime::createFromFormat('Y-m-d', '2019-01-01'))->add(new DateInterval('PT108H'))->setTime(23, 59, 59); |
|
91 | 91 | $intv3 = (clone $intv2)->add(new DateInterval('PT60H')); |
92 | 92 | |
93 | 93 | $truncated = ($fractim->setIntervals(Truncator::truncate($fractions, $intv1, $intv2))) |
@@ -189,14 +189,14 @@ discard block |
||
189 | 189 | <?php |
190 | 190 | |
191 | 191 | /* ADDITIONAL INFORMATION */ |
192 | -$toString2 = static function ($a) { |
|
192 | +$toString2 = static function($a) { |
|
193 | 193 | if ($a === null) { |
194 | 194 | return null; |
195 | 195 | } |
196 | 196 | return $a[0] . '/' . $a[1] . ($a[2] ? '*' : ''); |
197 | 197 | }; |
198 | 198 | |
199 | -$agg2 = static function ($a, $b) { |
|
199 | +$agg2 = static function($a, $b) { |
|
200 | 200 | if ($a === null && $b === null) { |
201 | 201 | return null; |
202 | 202 | } |