You are here

function _uc_reports_end_interval in Ubercart 5

Same name and namespace in other branches
  1. 6.2 uc_reports/uc_reports.module \_uc_reports_end_interval()

Given a timestamp and a length of time, return the offset timestamp

@return: The offset UNIX timestamp

Parameters

$time: A UNIX timestamp

$interval: The text representing the amount of time (e.g. 'day', 'week')

1 call to _uc_reports_end_interval()
_uc_reports_subreport_intervals in uc_reports/uc_reports.module
With a given time span for a report and specified interval for subreports, return a list of timespans for subreports over that report's time span.

File

uc_reports/uc_reports.module, line 1401
Displays reports on sales, customers, and products to store admin

Code

function _uc_reports_end_interval($time, $interval = 'month') {
  if (empty($time)) {
    $time = time();
  }
  $temp = strtotime('+1 ' . $interval, $time) - 1;
  switch ($interval) {
    case 'day':
      $temp = gmmktime(0, 0, -1, gmdate('n', $time), gmdate('j', $time) + 1, gmdate('Y', $time));
      break;
    case 'week':
      $temp = gmmktime(0, 0, -1, gmdate('n', $time), gmdate('j', $time) + 7, gmdate('Y', $time));
      break;
    case 'month':
      $temp = gmmktime(23, 59, 59, gmdate('n', $time) + 1, 0, gmdate('Y', $time));
      break;
    case 'year':
      $temp = gmmktime(23, 59, 59, gmdate('n', $time), 0, gmdate('Y', $time) + 1);
      break;
  }
  return $temp;
}