![]() Server : LiteSpeed System : Linux premium84.web-hosting.com 4.18.0-553.44.1.lve.el8.x86_64 #1 SMP Thu Mar 13 14:29:12 UTC 2025 x86_64 User : claqxcrl ( 523) PHP Version : 8.1.32 Disable Function : NONE Directory : /home/claqxcrl/anfangola.com/wp-content/plugins/matomo/app/plugins/Referrers/ |
<?php /** * Matomo - free/libre analytics platform * * @link https://matomo.org * @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later * */ namespace Piwik\Plugins\Referrers; use Piwik\Common; use Piwik\FrontController; use Piwik\Piwik; use Piwik\Plugins\CoreVisualizations\Visualizations\Sparklines; use Piwik\Request; use Piwik\SettingsPiwik; use Piwik\Translation\Translator; /** * */ class Controller extends \Piwik\Plugin\Controller { /** * @var Translator */ private $translator; public function __construct(Translator $translator) { $this->translator = $translator; parent::__construct(); } public function getSparklines() { $_GET['forceView'] = '1'; $_GET['viewDataTable'] = Sparklines::ID; return FrontController::getInstance()->fetchDispatch('Referrers', 'get'); } public function getEvolutionGraph($typeReferrer = false, array $columns = [], array $defaultColumns = []) { $view = $this->getLastUnitGraph($this->pluginName, __FUNCTION__, 'Referrers.getReferrerType'); $view->config->add_total_row = true; // configure displayed columns if (empty($columns)) { $columns = Common::getRequestVar('columns', false); if (false !== $columns) { $columns = Piwik::getArrayFromApiParameter($columns); } } if (false !== $columns) { $columns = !is_array($columns) ? array($columns) : $columns; } if (!empty($columns)) { $view->config->columns_to_display = $columns; } elseif (empty($view->config->columns_to_display) && !empty($defaultColumns)) { $view->config->columns_to_display = $defaultColumns; } // configure selectable columns $period = Common::getRequestVar('period', false); if (SettingsPiwik::isUniqueVisitorsEnabled($period)) { $selectable = array('nb_visits', 'nb_uniq_visitors', 'nb_users', 'nb_actions'); } else { $selectable = array('nb_visits', 'nb_actions'); } $view->config->selectable_columns = $selectable; // configure displayed rows $view->config->row_picker_match_rows_by = 'referrer_type'; $visibleRows = Common::getRequestVar('rows', false); if ($visibleRows !== false) { // this happens when the row picker has been used $visibleRows = Piwik::getArrayFromApiParameter($visibleRows); $visibleRows = array_map('urldecode', $visibleRows); // typeReferrer is redundant if rows are defined, so make sure it's not used $view->config->custom_parameters['typeReferrer'] = false; } else { // use $typeReferrer as default if ($typeReferrer === false) { $typeReferrer = Request::fromRequest()->getIntegerParameter('typeReferrer', Common::REFERRER_TYPE_DIRECT_ENTRY); } if (!empty($view->config->rows_to_display)) { $visibleRows = $view->config->rows_to_display; } else { $visibleRows = [(string) $typeReferrer, 'total']; } $view->requestConfig->request_parameters_to_modify['rows'] = $typeReferrer . ',total'; } $view->config->rows_to_display = $visibleRows; $view->config->documentation = $this->translator->translate('Referrers_EvolutionDocumentation') . '<br />' . $this->translator->translate('General_BrokenDownReportDocumentation') . '<br />' . $this->translator->translate('Referrers_EvolutionDocumentationMoreInfo', '"' . $this->translator->translate('Referrers_ReferrerTypes') . '"'); return $this->renderView($view); } public function getLastDistinctSearchEnginesGraph() { $view = $this->getLastUnitGraph($this->pluginName, __FUNCTION__, "Referrers.getNumberOfDistinctSearchEngines"); $view->config->translations['Referrers_distinctSearchEngines'] = ucfirst($this->translator->translate('Referrers_DistinctSearchEngines')); $view->config->columns_to_display = array('Referrers_distinctSearchEngines'); return $this->renderView($view); } public function getLastDistinctSocialNetworksGraph() { $view = $this->getLastUnitGraph($this->pluginName, __FUNCTION__, "Referrers.getNumberOfDistinctSocialNetworks"); $view->config->translations['Referrers_distinctSocialNetworks'] = ucfirst($this->translator->translate('Referrers_DistinctSocialNetworks')); $view->config->columns_to_display = array('Referrers_distinctSocialNetworks'); return $this->renderView($view); } public function getLastDistinctKeywordsGraph() { $view = $this->getLastUnitGraph($this->pluginName, __FUNCTION__, "Referrers.getNumberOfDistinctKeywords"); $view->config->translations['Referrers_distinctKeywords'] = ucfirst($this->translator->translate('Referrers_DistinctKeywords')); $view->config->columns_to_display = array('Referrers_distinctKeywords'); return $this->renderView($view); } public function getLastDistinctWebsitesGraph() { $view = $this->getLastUnitGraph($this->pluginName, __FUNCTION__, "Referrers.getNumberOfDistinctWebsites"); $view->config->translations['Referrers_distinctWebsites'] = ucfirst($this->translator->translate('Referrers_DistinctWebsites')); $view->config->columns_to_display = array('Referrers_distinctWebsites'); return $this->renderView($view); } public function getLastDistinctCampaignsGraph() { $view = $this->getLastUnitGraph($this->pluginName, __FUNCTION__, "Referrers.getNumberOfDistinctCampaigns"); $view->config->translations['Referrers_distinctCampaigns'] = ucfirst($this->translator->translate('Referrers_DistinctCampaigns')); $view->config->columns_to_display = array('Referrers_distinctCampaigns'); return $this->renderView($view); } /** * Returns the i18n-ized label for a referrer type. * * @param int $typeReferrer The referrer type. Referrer types are defined in Common class. * @return string The i18n-ized label. */ public static function getTranslatedReferrerTypeLabel($typeReferrer) { $label = getReferrerTypeLabel($typeReferrer); return Piwik::translate($label); } }