diff options
author | Benaka <benakamoorthi@fastmail.fm> | 2014-11-27 07:05:17 +0300 |
---|---|---|
committer | Benaka <benakamoorthi@fastmail.fm> | 2014-11-27 07:05:17 +0300 |
commit | abf6f8857e3c944446ff4137f1f5be78b8b0bbdc (patch) | |
tree | 580b420b209554b4de1ef69432f2f77b39812d5d /core/Twig.php | |
parent | 935c3597ab0c4b1288f5ba82af634b342a75daaa (diff) | |
parent | 1e9e585610d8e50708d971978a579839fe305fed (diff) |
Merge pull request #6589 from piwik/processed_metrics_metadata
Major refactor, compute and format processed metrics through new ProcessedMetric metadata classes instead of using DataTable filters and column callback values.
Diffstat (limited to 'core/Twig.php')
-rwxr-xr-x | core/Twig.php | 15 |
1 files changed, 11 insertions, 4 deletions
diff --git a/core/Twig.php b/core/Twig.php index b15efe088f..948185876b 100755 --- a/core/Twig.php +++ b/core/Twig.php @@ -10,6 +10,7 @@ namespace Piwik; use Exception; use Piwik\DataTable\Filter\SafeDecodeLabel; +use Piwik\Metrics\Formatter; use Piwik\Translate; use Piwik\View\RenderTokenParser; use Piwik\Visualization\Sparkline; @@ -34,6 +35,8 @@ class Twig */ private $twig; + private $formatter; + public function __construct() { $loader = $this->getDefaultThemeLoader(); @@ -44,6 +47,8 @@ class Twig $theme = $manager->getThemeEnabled(); $loaders = array(); + $this->formatter = new Formatter(); + //create loader for custom theme to overwrite twig templates if ($theme && $theme->getPluginName() != \Piwik\Plugin\Manager::DEFAULT_THEME) { $customLoader = $this->getCustomThemeLoader($theme); @@ -272,21 +277,23 @@ class Twig protected function addFilter_money() { - $moneyFilter = new Twig_SimpleFilter('money', function ($amount) { + $formatter = $this->formatter; + $moneyFilter = new Twig_SimpleFilter('money', function ($amount) use ($formatter) { if (func_num_args() != 2) { throw new Exception('the money modifier expects one parameter: the idSite.'); } $idSite = func_get_args(); $idSite = $idSite[1]; - return MetricsFormatter::getPrettyMoney($amount, $idSite); + return $formatter->getPrettyMoney($amount, $idSite); }); $this->twig->addFilter($moneyFilter); } protected function addFilter_sumTime() { - $sumtimeFilter = new Twig_SimpleFilter('sumtime', function ($numberOfSeconds) { - return MetricsFormatter::getPrettyTimeFromSeconds($numberOfSeconds); + $formatter = $this->formatter; + $sumtimeFilter = new Twig_SimpleFilter('sumtime', function ($numberOfSeconds) use ($formatter) { + return $formatter->getPrettyTimeFromSeconds($numberOfSeconds, true); }); $this->twig->addFilter($sumtimeFilter); } |