Piwik\Plugins\CoreVisualizations\Visualizations\Sparklines::fetchConfiguredSparklines PHP Метод

fetchConfiguredSparklines() приватный Метод

    private function fetchConfiguredSparklines()
    {
        $data = $this->loadDataTableFromAPI();
        $this->applyFilters($data);
        if (!$this->config->hasSparklineMetrics()) {
            foreach ($data->getColumns() as $column) {
                $this->config->addSparklineMetric($column);
            }
        }
        $translations = $this->config->translations;
        $firstRow = $data->getFirstRow();
        foreach ($this->config->getSparklineMetrics() as $sparklineMetric) {
            $column = $sparklineMetric['columns'];
            $order = $sparklineMetric['order'];
            if ($column === 'label') {
                continue;
            }
            if (empty($column)) {
                $this->config->addPlaceholder($order);
                continue;
            }
            if (!is_array($column)) {
                $column = array($column);
            }
            $values = array();
            $descriptions = array();
            foreach ($column as $col) {
                $value = $firstRow->getColumn($col);
                if ($value === false) {
                    $value = 0;
                }
                $values[] = $value;
                $descriptions[] = isset($translations[$col]) ? $translations[$col] : $col;
            }
            $sparklineUrlParams = array('columns' => $column, 'module' => $this->requestConfig->getApiModuleToRequest(), 'action' => $this->requestConfig->getApiMethodToRequest());
            $this->config->addSparkline($sparklineUrlParams, $values, $descriptions, null, $order);
        }
    }