Changeset View
Changeset View
Standalone View
Standalone View
src/applications/calendar/util/CalendarTimeUtil.php
| Show All 18 Lines | public static function getCalendarEventEpochs( | ||||
| $objects = self::getStartDateTimeObjects($user, $start_day_str); | $objects = self::getStartDateTimeObjects($user, $start_day_str); | ||||
| $start_day = $objects['start_day']; | $start_day = $objects['start_day']; | ||||
| $end_day = clone $start_day; | $end_day = clone $start_day; | ||||
| $end_day->modify('+'.$days.' days'); | $end_day->modify('+'.$days.' days'); | ||||
| return array( | return array( | ||||
| 'start_epoch' => $start_day->format('U'), | 'start_epoch' => $start_day->format('U'), | ||||
| 'end_epoch' => $end_day->format('U')); | 'end_epoch' => $end_day->format('U'), | ||||
| ); | |||||
| } | } | ||||
| public static function getCalendarWeekTimestamps( | public static function getCalendarWeekTimestamps( | ||||
| PhabricatorUser $user) { | PhabricatorUser $user) { | ||||
| return self::getTimestamps($user, 'Today', 7); | return self::getTimestamps($user, 'Today', 7); | ||||
| } | } | ||||
| public static function getCalendarWidgetTimestamps( | public static function getCalendarWidgetTimestamps( | ||||
| Show All 15 Lines | public static function getTimestamps( | ||||
| $timestamps = array(); | $timestamps = array(); | ||||
| for ($day = 0; $day < $days; $day++) { | for ($day = 0; $day < $days; $day++) { | ||||
| $timestamp = clone $start_day; | $timestamp = clone $start_day; | ||||
| $timestamp->modify(sprintf('+%d days', $day)); | $timestamp->modify(sprintf('+%d days', $day)); | ||||
| $timestamps[] = $timestamp; | $timestamps[] = $timestamp; | ||||
| } | } | ||||
| return array( | return array( | ||||
| 'today' => $objects['today'], | 'today' => $objects['today'], | ||||
| 'epoch_stamps' => $timestamps); | 'epoch_stamps' => $timestamps, | ||||
| ); | |||||
| } | } | ||||
| private static function getStartDateTimeObjects( | private static function getStartDateTimeObjects( | ||||
| PhabricatorUser $user, | PhabricatorUser $user, | ||||
| $start_day_str) { | $start_day_str) { | ||||
| $timezone = new DateTimeZone($user->getTimezoneIdentifier()); | $timezone = new DateTimeZone($user->getTimezoneIdentifier()); | ||||
| $today_epoch = PhabricatorTime::parseLocalTime('today', $user); | $today_epoch = PhabricatorTime::parseLocalTime('today', $user); | ||||
| $today = new DateTime('@'.$today_epoch); | $today = new DateTime('@'.$today_epoch); | ||||
| $today->setTimeZone($timezone); | $today->setTimeZone($timezone); | ||||
| if (strtolower($start_day_str) == 'today' || | if (strtolower($start_day_str) == 'today' || | ||||
| $today->format('l') == $start_day_str) { | $today->format('l') == $start_day_str) { | ||||
| $start_day = clone $today; | $start_day = clone $today; | ||||
| } else { | } else { | ||||
| $start_epoch = PhabricatorTime::parseLocalTime( | $start_epoch = PhabricatorTime::parseLocalTime( | ||||
| 'last '.$start_day_str, | 'last '.$start_day_str, | ||||
| $user); | $user); | ||||
| $start_day = new DateTime('@'.$start_epoch); | $start_day = new DateTime('@'.$start_epoch); | ||||
| $start_day->setTimeZone($timezone); | $start_day->setTimeZone($timezone); | ||||
| } | } | ||||
| return array( | return array( | ||||
| 'today' => $today, | 'today' => $today, | ||||
| 'start_day' => $start_day); | 'start_day' => $start_day, | ||||
| ); | |||||
| } | } | ||||
| } | } | ||||