Code Coverage
 
Lines
Functions and Methods
Classes and Traits
Total
100.00% covered (success)
100.00%
6 / 6
100.00% covered (success)
100.00%
1 / 1
CRAP
100.00% covered (success)
100.00%
1 / 1
VisitorsWeek
100.00% covered (success)
100.00%
6 / 6
100.00% covered (success)
100.00%
1 / 1
1
100.00% covered (success)
100.00%
1 / 1
 render
100.00% covered (success)
100.00%
6 / 6
100.00% covered (success)
100.00%
1 / 1
1
1<?php
2
3namespace Drupal\visitors\Plugin\views\field;
4
5use Drupal\Component\Utility\Xss as UtilityXss;
6use Drupal\views\Render\ViewsRenderPipelineMarkup;
7
8/**
9 * Field handler to display the hour (server) of the visit.
10 *
11 * @ingroup views_field_handlers
12 *
13 * @ViewsField("visitors_week")
14 */
15final class VisitorsWeek extends VisitorsTimestamp {
16
17  /**
18   * {@inheritdoc}
19   */
20  protected $format = '%X%V';
21
22  /**
23   * {@inheritdoc}
24   */
25  public function render($values) {
26
27    $value = $this->getValue($values);
28    $year = (int) substr($value, 0, 4);
29    $week = (int) substr($value, 4, 2);
30
31    // Converts week of year to date.
32    $date = new \DateTime();
33    $date->setISODate($year, $week);
34
35    return ViewsRenderPipelineMarkup::create(UtilityXss::filterAdmin($date->format('Y-m-d')));
36  }
37
38}