Piwik\Plugins\API\WidgetMetadata::buildPagesMetadata PHP Method

buildPagesMetadata() private method

private buildPagesMetadata ( CategoryList $categoryList, WidgetsList $widgetsList ) : array
$categoryList Piwik\Category\CategoryList
$widgetsList Piwik\Widget\WidgetsList
return array
    private function buildPagesMetadata(CategoryList $categoryList, WidgetsList $widgetsList)
    {
        $pages = array();
        $widgets = array();
        foreach ($widgetsList->getWidgetConfigs() as $config) {
            $pageId = $this->buildPageId($config->getCategoryId(), $config->getSubcategoryId());
            if (!isset($widgets[$pageId])) {
                $widgets[$pageId] = array();
            }
            $widgets[$pageId][] = $config;
        }
        foreach ($categoryList->getCategories() as $category) {
            foreach ($category->getSubcategories() as $subcategory) {
                $pageId = $this->buildPageId($category->getId(), $subcategory->getId());
                if (!empty($widgets[$pageId])) {
                    $pages[] = $this->buildPageMetadata($category, $subcategory, $widgets[$pageId]);
                }
            }
        }
        return $pages;
    }