From e902edd13e58ec05458c75e93579eadee869503c Mon Sep 17 00:00:00 2001 From: eileen Date: Fri, 24 May 2013 09:15:50 +1200 Subject: [PATCH] CRM-11356 fix wording on 'greater' relative date and introduce 'current' - ie. Current YTD --- CRM/Core/Form/Date.php | 14 ++++++++----- CRM/Utils/Date.php | 45 ++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 54 insertions(+), 5 deletions(-) diff --git a/CRM/Core/Form/Date.php b/CRM/Core/Form/Date.php index 8229c19e28..17dce3f664 100644 --- a/CRM/Core/Form/Date.php +++ b/CRM/Core/Form/Date.php @@ -162,11 +162,15 @@ Class CRM_Core_Form_Date { 'earlier.month' => ts('To End of Prior Month'), 'earlier.week' => ts('To End of Prior Week'), 'earlier.day' => ts('To End of Prior Day'), - 'greater.year' => ts('Current Year to-date'), - 'greater.quarter' => ts('Current Quarter to-date'), - 'greater.month' => ts('Current Month to-date'), - 'greater.week' => ts('Current Week to-date'), - 'greater.day' => ts('Current Day'), + 'greater.year' => ts('From Start of Current Year'), + 'greater.quarter' => ts('From Start of Current Quarter'), + 'greater.month' => ts('From Start of Current Month'), + 'greater.week' => ts('From Start of Current Week'), + 'greater.day' => ts('From Start of Current Day'), + 'current.year' => ts('Current Year to-date'), + 'current.quarter' => ts('Current Quarter to-date'), + 'current.month' => ts('Current Month to-date'), + 'current.week' => ts('Current Week to-date'), 'ending.year' => ts('From 12 Months Ago'), 'ending.quarter' => ts('From 3 Months Ago'), 'ending.month' => ts('From 1 Month Ago'), diff --git a/CRM/Utils/Date.php b/CRM/Utils/Date.php index 82ffc3b47f..e5184e27ec 100644 --- a/CRM/Utils/Date.php +++ b/CRM/Utils/Date.php @@ -974,6 +974,16 @@ class CRM_Utils_Date { $from = self::intervalAdd('year', -1, $to); $from = self::intervalAdd('second', 1, $from); break; + + case 'current': + $from['M'] = $from['d'] = 1; + $from['Y'] = $now['year']; + $to['H'] = 23; + $to['i'] = $to['s'] = 59; + $to['d'] = $now['mday']; + $to['M'] = $now['mon']; + $to['Y'] = $now['year']; + break; } break; @@ -1114,6 +1124,18 @@ class CRM_Utils_Date { $from = self::intervalAdd('month', -3, $to); $from = self::intervalAdd('second', 1, $from); break; + + case 'current': + $quarter = ceil($now['mon'] / 3); + $from['d'] = 1; + $from['M'] = (3 * $quarter) - 2; + $from['Y'] = $now['year']; + $to['d'] = $now['mday']; + $to['M'] = $now['mon']; + $to['Y'] = $now['year']; + $to['H'] = 23; + $to['i'] = $to['s'] = 59; + break; } break; @@ -1206,6 +1228,17 @@ class CRM_Utils_Date { $from = self::intervalAdd('month', -1, $to); $from = self::intervalAdd('second', 1, $from); break; + + case 'current': + $from['d'] = 1; + $from['M'] = $now['mon'];; + $from['Y'] = $now['year']; + $to['d'] = $now['mday']; + $to['M'] = $now['mon']; + $to['Y'] = $now['year']; + $to['H'] = 23; + $to['i'] = $to['s'] = 59; + break; } break; @@ -1268,6 +1301,18 @@ class CRM_Utils_Date { $from = self::intervalAdd('day', -7, $to); $from = self::intervalAdd('second', 1, $from); break; + + case 'current': + $from['d'] = $now['mday']; + $from['M'] = $now['mon']; + $from['Y'] = $now['year']; + $from = self::intervalAdd('day', -1 * ($now['wday']), $from); + $to['d'] = $now['mday']; + $to['M'] = $now['mon']; + $to['Y'] = $now['year']; + $to['H'] = 23; + $to['i'] = $to['s'] = 59; + break; } break; -- 2.25.1