public function GoogleAnalyticsCounterMessageManager::setStartDateEndDate in Google Analytics Counter 8.3
Sets the start and end dates in configuration.
Return value
array Start and end dates.
Overrides GoogleAnalyticsCounterMessageManagerInterface::setStartDateEndDate
File
- src/
GoogleAnalyticsCounterMessageManager.php, line 249
Class
- GoogleAnalyticsCounterMessageManager
- Defines the Google Analytics Counter message manager.
Namespace
Drupal\google_analytics_counterCode
public function setStartDateEndDate() {
$config = $this->config;
if ($config
->get('general_settings.custom_start_date') != '' & $config
->get('general_settings.custom_end_date') != '') {
$t_args = [
'%start_date' => $this->dateFormatter
->format(strtotime($config
->get('general_settings.custom_start_date')), 'custom', 'M j, Y'),
'%end_date' => $this->dateFormatter
->format(strtotime($config
->get('general_settings.custom_end_date')), 'custom', 'M j, Y'),
];
return $t_args;
}
else {
$t_args = [];
switch ($config
->get('general_settings.start_date')) {
case 'today':
$t_args = [
'%start_date' => date('M j, Y'),
'%end_date' => date('M j, Y'),
];
break;
case 'yesterday':
$t_args = [
'%start_date' => date('M j, Y', time() - 60 * 60 * 24),
'%end_date' => date('M j, Y', time() - 60 * 60 * 24),
];
break;
case '-1 week last sunday midnight':
$previous_week = strtotime('-1 week +1 day');
$start_week = strtotime('last sunday midnight', $previous_week);
$end_week = strtotime('next saturday', $start_week);
$start_week = date('M j, Y', $start_week);
$end_week = date('M j, Y', $end_week);
$t_args = [
'%start_date' => $start_week,
'%end_date' => $end_week,
];
break;
case 'first day of previous month':
$t_args = [
'%start_date' => date('M j, Y', strtotime('first day of previous month')),
'%end_date' => date('M j, Y', strtotime('last day of previous month')),
];
break;
case '7 days ago':
$t_args = [
'%start_date' => date('M j, Y', strtotime('7 days ago')),
'%end_date' => date('M j, Y', time() - 60 * 60 * 24),
];
break;
case '30 days ago':
$t_args = [
'%start_date' => date('M j, Y', strtotime('30 days ago')),
'%end_date' => date('M j, Y', time() - 60 * 60 * 24),
];
break;
case '3 months ago':
$t_args = [
'%start_date' => date('M j, Y', strtotime('3 months ago')),
'%end_date' => date('M j, Y', time() - 60 * 60 * 24),
];
break;
case '6 months ago':
$t_args = [
'%start_date' => date('M j, Y', strtotime('6 months ago')),
'%end_date' => date('M j, Y', time() - 60 * 60 * 24),
];
break;
case 'first day of last year':
$t_args = [
'%start_date' => date('M j, Y', strtotime('first day of last year')),
'%end_date' => date('M j, Y', strtotime('last day of last year')),
];
break;
case '14 November 2005':
$t_args = [
'%start_date' => date('M j, Y', strtotime('14 November 2005')),
'%end_date' => date('M j, Y', time() - 60 * 60 * 24),
];
break;
default:
$t_args = [
'%start_date' => 'N/A',
'%end_date' => 'N/A',
];
break;
}
return $t_args;
}
}