protected function getReferrersVisitorsByType($date = false)
{
if ($date === false) {
$date = Common::getRequestVar('date', false);
}
// we disable the queued filters because here we want to get the visits coming from search engines
// if the filters were applied we would have to look up for a label looking like "Search Engines"
// which is not good when we have translations
$dataTableReferrersType = Request::processRequest("Referrers.getReferrerType", array('disable_queued_filters' => '1', 'date' => $date));
$nameToColumnId = array('visitorsFromSearchEngines' => Common::REFERRER_TYPE_SEARCH_ENGINE, 'visitorsFromDirectEntry' => Common::REFERRER_TYPE_DIRECT_ENTRY, 'visitorsFromWebsites' => Common::REFERRER_TYPE_WEBSITE, 'visitorsFromCampaigns' => Common::REFERRER_TYPE_CAMPAIGN);
$return = array();
foreach ($nameToColumnId as $nameVar => $columnId) {
$value = 0;
$row = $dataTableReferrersType->getRowFromLabel($columnId);
if ($row !== false) {
$value = $row->getColumn(Metrics::INDEX_NB_VISITS);
}
$return[$nameVar] = $value;
}
return $return;
}