Piwik\Report\ReportWidgetFactory::createWidget PHP Method

createWidget() public method

It will automatically use the report's name, categoryId, subcategoryId (if specified), defaultViewDataTable, module, action, order and parameters in order to create the widget.
public createWidget ( ) : ReportWidgetConfig
return ReportWidgetConfig
    public function createWidget()
    {
        $widget = new ReportWidgetConfig();
        $widget->setName($this->report->getName());
        $widget->setCategoryId($this->report->getCategoryId());
        if ($this->report->getDefaultTypeViewDataTable()) {
            $widget->setDefaultViewDataTable($this->report->getDefaultTypeViewDataTable());
        }
        if ($this->report->getSubcategoryId()) {
            $widget->setSubcategoryId($this->report->getSubcategoryId());
        }
        $widget->setModule($this->report->getModule());
        $widget->setAction($this->report->getAction());
        $orderThatListsReportsAtTheEndOfEachCategory = 100 + $this->report->getOrder();
        $widget->setOrder($orderThatListsReportsAtTheEndOfEachCategory);
        $parameters = $this->report->getParameters();
        if (!empty($parameters)) {
            $widget->setParameters($parameters);
        }
        return $widget;
    }

Usage Example

Ejemplo n.º 1
0
 public function configureWidgets(WidgetsList $widgetsList, ReportWidgetFactory $factory)
 {
     $widgetsList->addWidgetConfig($factory->createContainerWidget('Continent'));
     $widgetsList->addToContainerWidget('Continent', $factory->createWidget());
     $widget = $factory->createWidget()->setAction('getDistinctCountries')->setName('');
     $widgetsList->addToContainerWidget('Continent', $widget);
 }
All Usage Examples Of Piwik\Report\ReportWidgetFactory::createWidget