public function format($value, Formatter $formatter)
 {
     return $formatter->getPrettyMoney($value, $this->idSite);
 }
 /**
  * Prettifies a metric value based on the column name.
  *
  * @param int $idSite The ID of the site the metric is for (used if the column value is an amount of money).
  * @param string $columnName The metric name.
  * @param mixed $value The metric value.
  * @param bool $isHtml If true, replaces all spaces with `' '`.
  * @return string
  */
 public static function getPrettyValue(Formatter $formatter, $idSite, $columnName, $value)
 {
     if (!is_numeric($value)) {
         return $value;
     }
     // Display time in human readable
     if (strpos($columnName, 'time_generation') !== false) {
         return $formatter->getPrettyTimeFromSeconds($value, true);
     }
     if (strpos($columnName, 'time') !== false) {
         return $formatter->getPrettyTimeFromSeconds($value);
     }
     // Add revenue symbol to revenues
     $isMoneyMetric = strpos($columnName, 'revenue') !== false || strpos($columnName, 'price') !== false;
     if ($isMoneyMetric && strpos($columnName, 'evolution') === false) {
         return $formatter->getPrettyMoney($value, $idSite);
     }
     // Add % symbol to rates
     if (strpos($columnName, '_rate') !== false) {
         if (strpos($value, "%") === false) {
             return $value . "%";
         }
     }
     return $value;
 }
 /**
  * @dataProvider getPrettyMoneyTestData
  */
 public function test_getPrettyMoney_ReturnsCorrectResult($value, $idSite, $expected)
 {
     $this->assertEquals($expected, $this->formatter->getPrettyMoney($value, $idSite));
 }
示例#4
0
 private function enrichValues($sites)
 {
     $formatter = new Formatter();
     foreach ($sites as &$site) {
         if (!isset($site['idsite'])) {
             continue;
         }
         if (isset($site['revenue'])) {
             $site['revenue'] = $formatter->getPrettyMoney($site['revenue'], $site['idsite']);
         }
         $site['main_url'] = Site::getMainUrlFor($site['idsite']);
     }
     return $sites;
 }
示例#5
0
文件: Html.php 项目: bossrabbit/piwik
 public function getPrettyMoney($value, $idSite)
 {
     $result = parent::getPrettyMoney($value, $idSite);
     $result = $this->replaceSpaceWithNonBreakingSpace($result);
     return $result;
 }