| Server IP : 167.99.224.18 / Your IP : 216.73.216.136 Web Server : Apache/2.4.41 (Ubuntu) System : Linux wordpress-ubuntu-s-1vcpu-1gb-nyc1-01 5.4.0-216-generic #236-Ubuntu SMP Fri Apr 11 19:53:21 UTC 2025 x86_64 User : root ( 0) PHP Version : 8.0.25 Disable Function : pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals,pcntl_unshare, MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : ON Directory : /var/www/html/wp-content/plugins-old/matomo/app/core/Report/ |
Upload File : |
<?php
/**
* Matomo - free/libre analytics platform
*
* @link https://matomo.org
* @license https://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
*/
namespace Piwik\Report;
use Piwik\Widget\WidgetConfig;
/**
* Defines a widget config that is used to render a report.
*
* @api since Piwik 3.0.0
*/
class ReportWidgetConfig extends WidgetConfig
{
protected $viewDataTable = null;
protected $forceViewDataTable = \false;
/**
* Sets a default viewDataTable that should be used to render the report. This is not necessarily the
* view that will be actually used to render the report. Eg if a user switched manually to another viewDataTable
* Piwik will re-use the viewDataTable that was used the last time. If you want to force the usage of a
* viewDataTable use {@link forceViewDataTable()}.
*
* @param string $viewDataTableId eg 'table' or 'graph'
* @return static
*/
public function setDefaultViewDataTable($viewDataTableId)
{
$this->viewDataTable = $viewDataTableId;
return $this;
}
/**
* Forces the usage of the given viewDataTable in order to render the report.
*
* @param string $viewDataTableId eg 'table' or 'graph'
* @return $this
*/
public function forceViewDataTable($viewDataTableId)
{
$this->forceViewDataTable = \true;
$this->setDefaultViewDataTable($viewDataTableId);
return $this;
}
/**
* Detect whether a defined viewDataTable should be forced in order to render a report.
* @return bool
*/
public function isViewDataTableForced()
{
return $this->forceViewDataTable;
}
/**
* Get the specified viewDataTable.
* @return string
*/
public function getViewDataTable()
{
return $this->viewDataTable;
}
/**
* @inheritdoc
*/
public function getParameters()
{
$parameters = parent::getParameters();
$defaultParams = array();
if ($this->forceViewDataTable) {
$defaultParams['forceView'] = '1';
if ($this->viewDataTable) {
// URL param is not needed for default view dataTable
$defaultParams['viewDataTable'] = $this->viewDataTable;
}
}
return $defaultParams + $parameters;
}
}