Piwik\Plugins\API\ProcessedReport::getMetadata PHP Метод

getMetadata() публичный Метод

Loads reports metadata, then return the requested one, matching optional API parameters.
public getMetadata ( $idSite, $apiModule, $apiAction, $apiParameters = [], $language = false, $period = false, $date = false, $hideMetricsDoc = false, $showSubtableReports = false )
    public function getMetadata($idSite, $apiModule, $apiAction, $apiParameters = array(), $language = false, $period = false, $date = false, $hideMetricsDoc = false, $showSubtableReports = false)
    {
        $reportsMetadata = $this->getReportMetadata($idSite, $period, $date, $hideMetricsDoc, $showSubtableReports);
        foreach ($reportsMetadata as $report) {
            // See ArchiveProcessor/Aggregator.php - unique visitors are not processed for period != day
            // todo: should use SettingsPiwik::isUniqueVisitorsEnabled instead
            if ($period && $period != 'day' && !($apiModule == 'VisitsSummary' && $apiAction == 'get')) {
                unset($report['metrics']['nb_uniq_visitors']);
                unset($report['metrics']['nb_users']);
            }
            if ($report['module'] == $apiModule && $report['action'] == $apiAction) {
                // No custom parameters
                if (empty($apiParameters) && empty($report['parameters'])) {
                    return array($report);
                }
                if (empty($report['parameters'])) {
                    continue;
                }
                $diff = array_diff($report['parameters'], $apiParameters);
                if (empty($diff)) {
                    return array($report);
                }
            }
        }
        return false;
    }

Usage Example

Пример #1
0
 /**
  * Loads reports metadata, then return the requested one,
  * matching optional API parameters.
  */
 public function getMetadata($idSite, $apiModule, $apiAction, $apiParameters = array(), $language = false, $period = false, $date = false, $hideMetricsDoc = false, $showSubtableReports = false)
 {
     Piwik::checkUserHasViewAccess($idSite);
     if ($language) {
         /** @var Translator $translator */
         $translator = StaticContainer::get('Piwik\\Translation\\Translator');
         $translator->setCurrentLanguage($language);
     }
     $metadata = $this->processedReport->getMetadata($idSite, $apiModule, $apiAction, $apiParameters, $language, $period, $date, $hideMetricsDoc, $showSubtableReports);
     return $metadata;
 }
All Usage Examples Of Piwik\Plugins\API\ProcessedReport::getMetadata