ILIAS  trunk Revision v11.0_alpha-1866-gfa368f7776e
All Data Structures Namespaces Files Functions Variables Enumerations Enumerator Modules Pages
ilDatePresentation Class Reference

Class for date presentation. More...

+ Collaboration diagram for ilDatePresentation:

Static Public Member Functions

static array static setUseRelativeDates (bool $a_status)
 set use relative dates More...
 
static useRelativeDates ()
 
static setLanguage (ilLanguage $a_lng)
 
static getLanguage ()
 
static resetToDefaults ()
 reset to defaults More...
 
static formatDate (ilDateTime $date, bool $a_skip_day=false, bool $a_include_wd=false, bool $include_seconds=false, ?ilObjUser $user=null,)
 
static formatPeriod (ilDateTime $start, ilDateTime $end, bool $a_skip_starting_day=false, ?ilObjUser $user=null)
 Format a period of two dates Shows: 14. More...
 
static isToday (ilDateTime $date)
 Check if date is "today". More...
 
static isYesterday (ilDateTime $date)
 Check if date is yesterday. More...
 
static isTomorrow (ilDateTime $date)
 Check if date is tomorrow. More...
 
static secondsToString (int $seconds, bool $force_with_seconds=false, ?ilLanguage $a_lng=null)
 converts seconds to string: Long: 7 days 4 hour(s) ... More...
 

Static Public Attributes

static bool $use_relative_dates = true
 
static ilDateTime $today = null
 
static ilDateTime $tomorrow = null
 
static ilDateTime $yesterday = null
 

Static Protected Attributes

static array $weekdays
 

Static Private Attributes

static ilLanguage $lang = null
 

Detailed Description

Class for date presentation.

Author
Stefan Meyer smeye.nosp@m.r.il.nosp@m.ias@g.nosp@m.mx.d.nosp@m.e

Definition at line 26 of file class.ilDatePresentation.php.

Member Function Documentation

◆ formatDate()

static ilDatePresentation::formatDate ( ilDateTime  $date,
bool  $a_skip_day = false,
bool  $a_include_wd = false,
bool  $include_seconds = false,
?ilObjUser  $user = null 
)
static

Definition at line 82 of file class.ilDatePresentation.php.

References $DIC, $lng, ilCalendarUtil\_numericMonthToString(), ilDateTime\get(), getLanguage(), IL_CAL_FKT_DATE, IL_CAL_FKT_GETDATE, ilDateTime\isNull(), ilCalendarSettings\TIME_FORMAT_12, and ilCalendarSettings\TIME_FORMAT_24.

Referenced by ilLearningProgressBaseGUI\__appendLPDetails(), ilExcDeliveredFilesTableGUI\__construct(), ILIAS\Badge\Tile\__construct(), ILIAS\LegalDocuments\Table\HistoryTable\__construct(), ILIAS\LegalDocuments\ConsumerToolbox\Blocks\__construct(), ilObjGroupAccess\_checkAccess(), ilObjCourseAccess\_checkAccess(), ilObject\_lookupLastUpdate(), ilObjRemoteFile\_lookupVersionInfo(), ilBookingInfoScreenAdapter\add(), ilObjRemoteFileGUI\addCustomInfoFields(), ilCommentGUI\addItemProperties(), ilMessageGUI\addItemProperties(), ilNoteGUI\addItemProperties(), ilAppointmentPresentationGUI\addLastUpdate(), ilBookingInfoListItemPropertiesAdapter\appendProperties(), ilObjLanguageFolderGUI\buildConfirmModal(), ILIAS\Exercise\Assignment\PropertyAndActionBuilderUI\buildHead(), ilTestRandomQuestionSetConfigStateMessageHandler\buildLastSyncMessage(), ilInfoScreenGUI\buildPublicAccessExportButton(), ILIAS\Exercise\Assignment\PropertyAndActionBuilderUI\buildSubmission(), ilLPPersonalGUI\buildViewControls(), ilAppointmentPresentationConsultationHoursGUI\collectPropertiesAndActions(), ilConsultationHoursGUI\confirmDeleteAppointments(), ilMemberExportGUI\confirmDeleteExportFile(), ilObjSurveyQuestionPoolGUI\confirmDeleteExportFileObject(), ilMailFolderGUI\confirmDeleteMails(), ilObjLanguageFolderGUI\confirmRefreshSelectedObject(), ilConsultationHoursGUI\confirmRejectBooking(), ILIAS\Badge\ModalBuilder\constructModal(), ilForum\convertDate(), ilForumMailNotification\createMailDate(), ilForumMailEventNotificationSender\createMailDate(), ilForumExplorerGUI\createNode(), ilPersonalSettingsGUI\deleteOwnAccountStep3(), ilObjUser\deleteUserDefinedFieldEntries(), ILIAS\Survey\Execution\LaunchGUI\determineAppraiseeInfo(), ILIAS\Survey\Execution\LaunchGUI\determineNotStartableReasons(), ilObjForumGUI\doHistoryCheck(), ilExPeerReviewGUI\editPeerReviewObject(), ilTestPlayerAbstractGUI\endingTimeReached(), ilSurveyEvaluationGUI\evaluation(), ilSessionStatisticsGUI\exportCSV(), ilSurveyEvaluationGUI\exportEvaluationUser(), ilECSSetting\fetchCertificateExpiration(), ilGroupRegistrationGUI\fillRegistrationPeriod(), ilCourseRegistrationGUI\fillRegistrationPeriod(), ilECSExportedContentTableGUI\fillRow(), ilAdvancedMDRecordExportFilesTableGUI\fillRow(), ilTestPersonalDefaultSettingsTableGUI\fillRow(), ilLMDownloadTableGUI\fillRow(), ilCalendarInboxSharedTableGUI\fillRow(), ilCalendarChangedAppointmentsTableGUI\fillRow(), ilSubItemSelectionTableGUI\fillRow(), ilECSImportedContentTableGUI\fillRow(), ilECSServerTableGUI\fillRow(), ilHistoryTableGUI\fillRow(), ilNewsForContextTableGUI\fillRow(), ilMemberExportFileTableGUI\fillRow(), ilSurveyCodesTableGUI\fillRow(), ILIAS\Test\Scoring\Manual\TestScoringByParticipantPassesOverviewTableGUI\fillRow(), ilHelpModuleTableGUI\fillRow(), ilWikiContributorsTableGUI\fillRow(), ilExportSelectionTableGUI\fillRow(), ilPageHistoryTableGUI\fillRow(), ilMediaCastTableGUI\fillRow(), ilSurveyMaintenanceTableGUI\fillRow(), ilSurveyResultsUserTableGUI\fillRow(), assFileUploadFileTableGUI\fillRow(), ilWikiRecentChangesTableGUI\fillRow(), ilSCORMTrackingUsersTableGUI\fillRow(), ilSurveyAppraiseesTableGUI\fillRow(), ilSearchResultTableGUI\fillRow(), ilExAssignmentTeamLogTableGUI\fillRow(), ilGroupParticipantsTableGUI\fillRow(), ilExportTableGUI\fillRow(), ilUserLPTableGUI\fillRow(), ilExAssignmentListTextTableGUI\fillRow(), ilCmiXapiStatementsTableGUI\fillRow(), ilFileVersionsTableGUI\fillRow(), ilPDNewsTableGUI\fillRow(), ilAssignmentsTableGUI\fillRow(), ilLTIConsumerGradeSynchronizationTableGUI\fillRow(), ilQuestionPoolPrintViewTableGUI\fillRow(), ilCourseParticipantsTableGUI\fillRow(), ilSubscriberTableGUI\fillRow(), ilAdminSubItemsTableGUI\fillRow(), ilEmployeeTalkTableGUI\fillRow(), ilRepositoryUserResultTableGUI\fillRow(), ilWaitingListTableGUI\fillRow(), ilTrashTableGUI\fillRow(), ilSurveyQuestionbrowserTableGUI\fillRow(), ilSurveyQuestionsTableGUI\fillRow(), ilWikiPagesTableGUI\fillRow(), ilLPProgressTableGUI\fillRow(), ilTrUserObjectsPropsTableGUI\fillRow(), ilWorkspaceShareTableGUI\fillRow(), ilQuestionBrowserTableGUI\fillRow(), ilTrObjectUsersPropsTableGUI\fillRow(), ilTrMatrixTableGUI\fillRow(), ilUserTableGUI\fillRow(), ilBookingReservationsTableGUI\fillRow(), ilLPProgressTableGUI\fillRowCSV(), ilBookingReservationsTableGUI\fillRowCSV(), ilWebDAVMountInstructionsDocumentTableGUI\formatCellValue(), ilCertificateDateHelper\formatDate(), ILIAS\AdministrativeNotification\DataRetrieval\formatDate(), ilTestPassOverviewTableGUI\formatDate(), ilCertificateDateHelper\formatDateTime(), ILIAS\BackgroundTasks\Task\Job\Manager\UI\JobTable\formatLastRun(), ilCmiXapiHighscoreReport\formatRawTimestamp(), ILIAS\BackgroundTasks\Task\Job\Manager\UI\JobTable\formatStatusInfo(), ilObjTestGUI\forwardToInfoScreen(), ILIAS\Calendar\ConsultationHours\BookingCancellationGUI\getAppointmentTitle(), ILIAS\OnScreenChat\Provider\OnScreenChatProvider\getAsyncItem(), ilGroupMembershipGUI\getAttendanceListUserData(), ilPageObjectGUI\getBlockingInfoMessage(), ilCourseMailTemplateMemberContext\getCachedPeriodByObjId(), ilCourseMailTemplateTutorContext\getCachedPeriodByObjId(), ilStudyProgrammeAutoMembershipsTableGUI\getDatePresentation(), ilScormMailTemplateLPContext\getDescription(), ilPublicUserProfileGUI\getEmbeddable(), ilPersonalSkillsGUI\getEvalItem(), ilPortfolioExerciseGUI\getExerciseInfo(), ilLPTableBaseGUI\getExportMeta(), ilPollContentRenderer\getFormattedDate(), ILIAS\BookingManager\BookingProcess\WeekGridGUI\getHoursOfDay(), ilADTDatePresentationBridge\getHTML(), ilADTDateTimePresentationBridge\getHTML(), ilCalendarHeaderNavigationGUI\getHTML(), ILIAS\BookingManager\BookingProcess\WeekGUI\getHTML(), ilCalendarAgendaListGUI\getHTML(), ilAttendanceList\getHTML(), ilNewsForContextBlockGUI\getInfoForData(), ilNoteGUI\getItemForNote(), ilRegistrationCodesTableGUI\getItems(), ilBookingObjectsTableGUI\getItems(), ilUserTableGUI\getItems(), ilNoteGUI\getItemTitle(), ILIAS\Test\Presentation\TestScreenGUI\getLauncher(), ilPDMailBlockGUI\getListItemForData(), ilPDTasksBlockGUI\getListItemForData(), ilBookingProcessWithScheduleGUI\getMissingAvailabilityMessage(), ILIAS\GlobalScreen\ChatInvitationNotificationProvider\getNotifications(), ILIAS\Contact\Provider\ContactNotificationProvider\getNotifications(), ilBlogPostingGUI\getPageHeading(), ILIAS\Portfolio\PortfolioPrintViewProviderGUI\getPages(), ILIAS\Survey\Mode\IndividualFeedback\UIModifier\getPanelText(), ilExPeerReviewGUI\getPeerReviewReceiverPanel(), ilEmployeeTalkAppointmentGUI\getPendingTalkDates(), ilObjSession\getPresentationTitle(), ILIAS\Survey\PrintView\ResultsPerUserPrintViewProviderGUI\getPrintHeader(), ILIAS\Survey\PrintView\ResultsDetailsPrintViewProviderGUI\getPrintHeader(), ilCourseMembershipGUI\getPrintMemberData(), ilObjForumListGUI\getProperties(), ilObjFileListGUI\getProperties(), ilExerciseManagementGUI\getReportPanel(), ILIAS\COPage\PC\Paragraph\ParagraphResponseFactory\getResponseObject(), ILIAS\COPage\PC\Paragraph\ParagraphResponseFactory\getResponseObjectMulti(), ilTestServiceGUI\getResultsSignature(), ilMediaCastManageTableGUI\getRows(), ilLanguageFolderTable\getRows(), ilDclBaseRecordModel\getStandardFieldHTML(), ilExAssignmentInfo\getSubmissionInfo(), ilExcAssMemberState\getTimePresentation(), ilObjSCORM2004LearningModule\getTrackingDataAgg(), ilObjUserGUI\getValues(), ilExerciseManagementGUI\handleIndividualDeadlineCallsObject(), ILIAS\Test\Presentation\TestScreenGUI\handleRenderMessageBox(), ilObjCourseGUI\infoScreen(), ilObjMediaCastGUI\infoScreen(), ilObjGroupGUI\infoScreen(), ilLearningProgressGUI\initCollectionManualForm(), ilRegistrationCodesTableGUI\initFilter(), ilPCVerificationGUI\initForm(), ilObjUserGUI\initForm(), ilCronDeleteInactiveUserReminderMailNotification\initLanguage(), ilForumTopicTableGUI\initMergeThreadsTable(), ilPCBlogGUI\initPostingForm(), ilPCSection\insertTimings(), ilObjTest\isExecutable(), ilBadgeProfileGUI\listBackpackGroups(), ilUserCertificateGUI\listCertificates(), ilObjGroupAccess\lookupRegistrationInfo(), ilObjCourseAccess\lookupRegistrationInfo(), ilTestPlayerAbstractGUI\outProcessingTime(), ilCalendarRecurrenceTableGUI\parse(), ilUserExportFileTableGUI\parse(), ilSCGroupTableGUI\parse(), ilConsultationHourBookingTableGUI\parse(), ilSCTaskTableGUI\parse(), ilGroupParticipantsTableGUI\parse(), ilCourseParticipantsTableGUI\parse(), ilExerciseSubmissionTableGUI\parseColumns(), ilRepositoryUserResultTableGUI\parseUserIds(), ilLPTableBaseGUI\parseValue(), ilTrSummaryTableGUI\parseValue(), ilTestServiceGUI\populatePassFinishDate(), ilRegistrationSettingsGUI\prepareAccessLimitationRoleList(), ilWikiPageGUI\preview(), ilMailFolderGUI\printMail(), ilLearningSequenceRoles\readMemberData(), ilObjGroupGUI\readMemberData(), ilObjCourseGUI\readMemberData(), ilSubscriberTableGUI\readSubscriberData(), ilWaitingListTableGUI\readUserData(), ilNewsTimelineItemGUI\render(), ilCronManagerGUI\render(), ilPortfolioPageGUI\renderBlogTeaser(), ilBookingPreferencesGUI\renderBookingInfo(), ilSessionStatisticsGUI\renderCurrentBasics(), ilChatroomHistoryGUI\renderDateTimeInformation(), ilLMContentRendererGUI\renderDeactivatedPageMessage(), ilObjBlogGUI\renderList(), ilLikeGUI\renderModal(), ILIAS\LegalDocuments\Administration\resetBox(), ilPageObjectGUI\rollbackConfirmation(), ilMembershipCronNotifications\run(), ILIAS\BackgroundTasks\Task\Job\Manager\JobManagerImpl\runActiveJobs(), ILIAS\Mail\Autoresponder\AutoresponderNotification\send(), ilTestMailNotification\sendAdvancedNotification(), ilObjCmiXapiGUI\sendLastFetchInfo(), ilSkillNotifications\sendMail(), ilMembershipCronNotifications\sendMail(), ilBookCronNotification\sendMails(), ILIAS\COPage\Editor\Server\UIWrapper\sendPage(), ilTestMailNotification\sendSimpleNotification(), ILIAS\COPage\PC\Table\TableCommandActionHandler\sendUpdateResponse(), ilObjSurveyGUI\sendUserResultsMail(), ilDerivedTasksGUI\show(), ilObjUserFolderGUI\showActionConfirmation(), ilLPObjectStatisticsGUI\showAggregationInfo(), ilPageObjectGUI\showEditLockInfo(), ilChatroomHistoryGUI\showMessages(), ilNewsForContextBlockGUI\showNews(), ilPageObjectGUI\showPage(), ilPersonalProfileGUI\showPublicProfileFields(), ilExSubmissionFileGUI\submissionScreenObject(), ilObjExercise\update(), ilCalendarAppointmentGUI\update(), ilPageObject\update(), ilObjUser\updateLogin(), ilExSubmission\updateTextSubmission(), and ilObjObjectFolderGUI\viewObject().

88  : string {
89  global $DIC;
90  if ($user) {
91  $lng = new ilLanguage($user->getLanguage());
92  } else {
93  $user = $DIC->user();
95  }
96 
97  $lng->loadLanguageModule('dateplaner');
98 
99  if ($date->isNull()) {
100  return $lng->txt('no_date');
101  }
102 
103  $has_time = !$date instanceof ilDate;
104 
105  // Converting pure dates to user timezone might return wrong dates
106  $date_info = [];
107  if ($has_time) {
108  $date_info = $date->get(IL_CAL_FKT_GETDATE, '', $user->getTimeZone());
109  } else {
110  $date_info = $date->get(IL_CAL_FKT_GETDATE, '', 'UTC');
111  }
112 
113  $date_str = '';
114  if (!$a_skip_day) {
115  $sep = ', ';
116  if (self::isToday($date) && self::useRelativeDates()) {
117  $date_str = $lng->txt('today');
118  } elseif (self::isTomorrow($date) && self::useRelativeDates()) {
119  $date_str = $lng->txt('tomorrow');
120  } elseif (self::isYesterday($date) && self::useRelativeDates()) {
121  $date_str = $lng->txt('yesterday');
122  } else {
123  $date_str = '';
124  if ($a_include_wd) {
125  $date_str = $lng->txt(self::$weekdays[$date_info['wday']]) . ', ';
126  }
127  $date_str .= $date_info['mday'] . '. ' .
129  $date_info['mon'],
130  false,
131  $lng
132  ) . ' ' .
133  $date_info['year'];
134  }
135  } else {
136  $sep = '';
137  }
138 
139  if (!$has_time) {
140  return $date_str;
141  }
142 
143  $sec = ($include_seconds)
144  ? ':s'
145  : '';
146 
147  switch ($user->getTimeFormat()) {
149  return $date_str . $sep .
150  $date->get(
152  'H:i' . $sec,
153  $user->getTimeZone()
154  );
156  return $date_str . $sep .
157  $date->get(
159  'g:ia' . $sec,
160  $user->getTimeZone()
161  );
162  }
163 
164  return '';
165  }
get(int $a_format, string $a_format_str='', string $a_tz='')
get formatted date
static _numericMonthToString(int $a_month, bool $a_long=true, ?ilLanguage $lng=null)
numeric month to string
getLanguage()
global $DIC
Definition: shib_login.php:22
const IL_CAL_FKT_DATE
const IL_CAL_FKT_GETDATE
global $lng
Definition: privfeed.php:31
isNull()
Check if a date is null (Datetime == '0000-00-00 00:00:00', unixtime == 0,...)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ formatPeriod()

static ilDatePresentation::formatPeriod ( ilDateTime  $start,
ilDateTime  $end,
bool  $a_skip_starting_day = false,
?ilObjUser  $user = null 
)
static

Format a period of two dates Shows: 14.

Jul 2008 18:00 - 20:00 or: Today 18:00 - 20:00 or: 14. Jul 2008 - 16. Jul 2008 or: 14. Jul 2008, 12:00 - 16. Jul 2008, 14:00

Definition at line 174 of file class.ilDatePresentation.php.

References $DIC, ilDateTime\_equals(), ilDateTime\get(), IL_CAL_DATE, IL_CAL_DAY, IL_CAL_FKT_DATE, ilCalendarSettings\TIME_FORMAT_12, and ilCalendarSettings\TIME_FORMAT_24.

Referenced by ilSessionAppointment\_appointmentToString(), ilInfoScreenGUI\addAccessPeriodProperty(), ilObjectActivation\addListGUIActivationProperty(), ilCalendarEntry\appointmentToMailString(), ilObjRemoteCourseGUI\availabilityToString(), ilObjRemoteGroupGUI\availabilityToString(), ilObjRemoteTestGUI\availabilityToString(), ilCalendarAppointmentGUI\book(), ilSessionStatisticsGUI\buildData(), ilCalendarAppointmentGUI\cancelBooking(), ilAppointmentPresentationBookingPoolGUI\collectPropertiesAndActions(), ilECSCategoryMappingRule\conditionToString(), ilCalendarAppointmentGUI\confirmRegister(), ilCalendarAppointmentGUI\confirmUnregister(), ilObjUser\deleteUserDefinedFieldEntries(), ILIAS\BookingManager\BookingProcess\ProcessUtilGUI\displayPostInfo(), ilWikiStatGUI\export(), ilCalendarChangedAppointmentsTableGUI\fillRow(), ilGroupParticipantsTableGUI\fillRow(), ilCourseParticipantsTableGUI\fillRow(), ilCalendarBlockGUI\getData(), ilCalendarAppointmentPanelGUI\getHTML(), ilCalendarAgendaListGUI\getHTML(), ilCalendarViewGUI\getModalForApp(), ilCalendarBlockGUI\getModalForApp(), ilBookingProcessWithScheduleGUI\getNumberForm(), ilObjSession\getPresentationTitleAppointmentPeriod(), ilTrQuery\getSessionData(), ilObjCourseGUI\infoScreen(), ilObjGroupGUI\infoScreen(), ilObjSessionGUI\initAttendanceList(), ilObjGroupAccess\lookupPeriodInfo(), ilObjCourseAccess\lookupPeriodInfo(), ilConsultationHoursTableGUI\parse(), ilAccountMail\replacePlaceholders(), ilBookingReservationsGUI\rsvConfirmCancel(), ilBookingReservationsGUI\rsvConfirmCancelAggregationForm(), ilBookingReservationsGUI\rsvConfirmDelete(), ilAccountMail\send(), ilCalendarAppointmentsTableGUI\setAppointments(), ilCalendarAppointmentGUI\showInfoScreen(), ilChatroomHistoryGUI\showMessages(), and ilMemberExport\write().

179  : string {
180  global $DIC;
181  if (!$user) {
182  $user = $DIC->user();
183  }
184  $has_time = !$start instanceof ilDate;
185 
186  // Same day
187  if (ilDateTime::_equals($start, $end, IL_CAL_DAY, $user->getTimeZone())) {
188  if (!$has_time) {
189  return self::formatDate(
190  $start,
191  false,
192  false,
193  false,
194  $user
195  );
196  }
197  $date_str = '';
198  $sep = '';
199  if (!$a_skip_starting_day) {
200  $date_str = self::formatDate(
201  new ilDate(
202  $start->get(IL_CAL_DATE, '', $user->getTimeZone()),
204  ),
205  false,
206  false,
207  false,
208  $user
209  );
210  $sep = ', ';
211  }
212 
213  if (ilDateTime::_equals($start, $end)) {
214  switch ($user->getTimeFormat()) {
216  return $date_str . $sep .
217  $start->get(
219  'H:i',
220  $user->getTimeZone()
221  );
223  return $date_str . $sep .
224  $start->get(
226  'h:i a',
227  $user->getTimeZone()
228  );
229  }
230  } else {
231  switch ($user->getTimeFormat()) {
233  return $date_str . $sep .
234  $start->get(
236  'H:i',
237  $user->getTimeZone()
238  ) . ' - ' .
239  $end->get(IL_CAL_FKT_DATE, 'H:i', $user->getTimeZone());
240 
242  return $date_str . $sep .
243  $start->get(
245  'g:ia',
246  $user->getTimeZone()
247  ) . ' - ' .
248  $end->get(IL_CAL_FKT_DATE, 'g:ia', $user->getTimeZone());
249  }
250  }
251  }
252 
253  // Different days
254  return
255  self::formatDate(
256  $start,
257  $a_skip_starting_day,
258  false,
259  false,
260  $user
261  ) . ' - ' .
262  self::formatDate(
263  $end,
264  false,
265  false,
266  false,
267  $user
268  );
269  }
get(int $a_format, string $a_format_str='', string $a_tz='')
get formatted date
const IL_CAL_DAY
global $DIC
Definition: shib_login.php:22
const IL_CAL_FKT_DATE
const IL_CAL_DATE
static _equals(ilDateTime $start, ilDateTime $end, string $a_compare_field='', string $a_tz='')
Check if two date are equal.
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ getLanguage()

static ilDatePresentation::getLanguage ( )
static

Definition at line 61 of file class.ilDatePresentation.php.

References $DIC, $lang, and $lng.

Referenced by ilScormMailTemplateLPContext\getDescription(), ilMailTemplateContext\resolvePlaceholder(), and ILIAS\Mail\Autoresponder\AutoresponderNotification\send().

61  : ilLanguage
62  {
63  global $DIC;
64 
65  $lng = $DIC->language();
66 
67  return self::$lang ?: $lng;
68  }
global $DIC
Definition: shib_login.php:22
$lang
Definition: xapiexit.php:25
global $lng
Definition: privfeed.php:31
+ Here is the caller graph for this function:

◆ isToday()

static ilDatePresentation::isToday ( ilDateTime  $date)
static

Check if date is "today".

Definition at line 274 of file class.ilDatePresentation.php.

References $DIC, ilDateTime\_equals(), IL_CAL_DAY, and IL_CAL_UNIX.

274  : bool
275  {
276  global $DIC;
277 
278  $ilUser = $DIC['ilUser'];
279 
280  if (!is_object(self::$today)) {
281  self::$today = new ilDateTime(time(), IL_CAL_UNIX, $ilUser->getTimeZone());
282  }
283 
284  return ilDateTime::_equals(self::$today, $date, IL_CAL_DAY, $ilUser->getTimeZone());
285  }
const IL_CAL_UNIX
const IL_CAL_DAY
global $DIC
Definition: shib_login.php:22
static _equals(ilDateTime $start, ilDateTime $end, string $a_compare_field='', string $a_tz='')
Check if two date are equal.
+ Here is the call graph for this function:

◆ isTomorrow()

static ilDatePresentation::isTomorrow ( ilDateTime  $date)
static

Check if date is tomorrow.

Definition at line 306 of file class.ilDatePresentation.php.

References $DIC, ilDateTime\_equals(), IL_CAL_DAY, and IL_CAL_UNIX.

306  : bool
307  {
308  global $DIC;
309 
310  $ilUser = $DIC['ilUser'];
311  if (!is_object(self::$tomorrow)) {
312  self::$tomorrow = new ilDateTime(time(), IL_CAL_UNIX, $ilUser->getTimeZone());
313  self::$tomorrow->increment(IL_CAL_DAY, 1);
314  }
315 
316  return ilDateTime::_equals(self::$tomorrow, $date, IL_CAL_DAY, $ilUser->getTimeZone());
317  }
const IL_CAL_UNIX
const IL_CAL_DAY
global $DIC
Definition: shib_login.php:22
static _equals(ilDateTime $start, ilDateTime $end, string $a_compare_field='', string $a_tz='')
Check if two date are equal.
+ Here is the call graph for this function:

◆ isYesterday()

static ilDatePresentation::isYesterday ( ilDateTime  $date)
static

Check if date is yesterday.

Definition at line 290 of file class.ilDatePresentation.php.

References $DIC, ilDateTime\_equals(), IL_CAL_DAY, and IL_CAL_UNIX.

290  : bool
291  {
292  global $DIC;
293 
294  $ilUser = $DIC['ilUser'];
295  if (!is_object(self::$yesterday)) {
296  self::$yesterday = new ilDateTime(time(), IL_CAL_UNIX, $ilUser->getTimeZone());
297  self::$yesterday->increment(IL_CAL_DAY, -1);
298  }
299 
300  return ilDateTime::_equals(self::$yesterday, $date, IL_CAL_DAY, $ilUser->getTimeZone());
301  }
const IL_CAL_UNIX
const IL_CAL_DAY
global $DIC
Definition: shib_login.php:22
static _equals(ilDateTime $start, ilDateTime $end, string $a_compare_field='', string $a_tz='')
Check if two date are equal.
+ Here is the call graph for this function:

◆ resetToDefaults()

static ilDatePresentation::resetToDefaults ( )
static

reset to defaults

Definition at line 73 of file class.ilDatePresentation.php.

References $DIC, and $lng.

Referenced by ilObjUser\deleteUserDefinedFieldEntries(), ilLPProgressTableGUI\fillRowCSV(), and ilRoleAssignmentTableGUI\getTitleForReference().

73  : void
74  {
75  global $DIC;
76 
77  $lng = $DIC->language();
78  self::setLanguage($lng);
79  self::setUseRelativeDates(true);
80  }
global $DIC
Definition: shib_login.php:22
global $lng
Definition: privfeed.php:31
+ Here is the caller graph for this function:

◆ secondsToString()

static ilDatePresentation::secondsToString ( int  $seconds,
bool  $force_with_seconds = false,
?ilLanguage  $a_lng = null 
)
static

converts seconds to string: Long: 7 days 4 hour(s) ...

Definition at line 323 of file class.ilDatePresentation.php.

References $DIC, $lng, $message, and null.

Referenced by ilLearningProgressBaseGUI\__appendLPDetails(), ilSessionReminderCheck\__construct(), ilCourseContentGUI\__renderUserItem(), ilLearningProgressBaseGUI\__showObjectDetails(), ilCalendarAppointmentsTableGUI\fillRow(), ilTrUserObjectsPropsTableGUI\fillRow(), ilCourseMailTemplateTutorContext\getCachedPeriodByObjId(), ilScormMailTemplateLPContext\getDescription(), ilObjSCORM2004LearningModule\getTrackingDataAgg(), ilObjUserGUI\initForm(), ilPersonalSettingsGUI\initGeneralSettingsForm(), ilLPTableBaseGUI\parseValue(), ilTrSummaryTableGUI\parseValue(), and ilLearningProgressGUI\showtlt().

327  : string {
328  global $DIC;
329 
330  $lng = $DIC['lng'];
331  $message = null;
332 
333  if ($a_lng) {
334  $lng = $a_lng;
335  }
336 
337  $seconds = $seconds ?: 0;
338 
339  // #13625
340  if ($seconds > 0) {
341  $days = floor($seconds / 86400);
342  $rest = $seconds % 86400;
343 
344  $hours = floor($rest / 3600);
345  $rest %= 3600;
346 
347  $minutes = floor($rest / 60);
348  $seconds = $rest % 60;
349  } else {
350  $days = ceil($seconds / 86400);
351  $rest = $seconds % 86400;
352 
353  $hours = ceil($rest / 3600);
354  $rest %= 3600;
355 
356  $minutes = ceil($rest / 60);
357  $seconds = $rest % 60;
358  }
359 
360  if ($days) {
361  $message = $days . ' ' . ($days == 1 ? $lng->txt('day') : $lng->txt('days'));
362  }
363  if ($hours) {
364  if ($message) {
365  $message .= ' ';
366  }
367  $message .= ($hours . ' ' . ($hours == 1 ? $lng->txt('hour') : $lng->txt('hours')));
368  }
369  if ($minutes) {
370  if ($message) {
371  $message .= ' ';
372  }
373  $message .= ($minutes . ' ' . ($minutes == 1 ? $lng->txt('minute') : $lng->txt('minutes')));
374  }
375  if ($force_with_seconds && $seconds) {
376  if ($message) {
377  $message .= ' ';
378  }
379  $message .= ($seconds . ' ' . ($seconds == 1 ? $lng->txt('second') : $lng->txt('seconds')));
380  }
381  if (!$days && !$hours && !$minutes) {
382  return $seconds . ' ' . ($seconds == 1 ? $lng->txt('second') : $lng->txt('seconds'));
383  }
384 
385  return $message;
386  }
while($session_entry=$r->fetchRow(ilDBConstants::FETCHMODE_ASSOC)) return null
global $DIC
Definition: shib_login.php:22
global $lng
Definition: privfeed.php:31
$message
Definition: xapiexit.php:31
+ Here is the caller graph for this function:

◆ setLanguage()

◆ setUseRelativeDates()

static array static ilDatePresentation::setUseRelativeDates ( bool  $a_status)
static

set use relative dates

Definition at line 46 of file class.ilDatePresentation.php.

Referenced by ilBookingReservationsTableGUI\__construct(), ilCalendarEntry\appointmentToMailString(), ilSessionStatisticsGUI\buildData(), ilNoteGUI\deleteNote(), ilPersonalSettingsGUI\deleteOwnAccountStep3(), ilObjUser\deleteUserDefinedFieldEntries(), ILIAS\Survey\Execution\LaunchGUI\determineAppraiseeInfo(), ILIAS\BookingManager\BookingProcess\ProcessUtilGUI\displayPostInfo(), ilSurveyEvaluationGUI\evaluation(), ilSessionStatisticsGUI\exportCSV(), ilSurveyEvaluationGUI\exportEvaluationUser(), ilLMDownloadTableGUI\fillRow(), assFileUploadFileTableGUI\fillRow(), ilQuestionPoolPrintViewTableGUI\fillRow(), ilLPProgressTableGUI\fillRowCSV(), ilCertificateDateHelper\formatDate(), ilTestPassOverviewTableGUI\formatDate(), ilCertificateDateHelper\formatDateTime(), ilGroupMembershipGUI\getAttendanceListUserData(), ilCourseMailTemplateMemberContext\getCachedPeriodByObjId(), ilCourseMailTemplateTutorContext\getCachedPeriodByObjId(), ilScormMailTemplateLPContext\getDescription(), ilPersonalSkillsGUI\getEvalItem(), ilPortfolioExerciseGUI\getExerciseInfo(), ilLPTableBaseGUI\getExportMeta(), ilCalendarHeaderNavigationGUI\getHTML(), ilDclEditViewTableGUI\getHTML(), ilDclCreateViewTableGUI\getHTML(), ilDclTableViewEditFieldsTableGUI\getHTML(), ilDclFieldListTableGUI\getHTML(), ilAttendanceList\getHTML(), ilTable2GUI\getHTML(), ilObjectMetaDataGUI\getKeyValueList(), ilObjectMetaDataBlockGUI\getLegacyContent(), ilNoteGUI\getNoteListHTML(), ilBlogPostingGUI\getPageHeading(), ILIAS\Portfolio\PortfolioPrintViewProviderGUI\getPages(), ILIAS\Survey\Mode\IndividualFeedback\UIModifier\getPanelText(), ilEmployeeTalkAppointmentGUI\getPendingTalkDates(), ILIAS\Survey\PrintView\ResultsPerUserPrintViewProviderGUI\getPrintHeader(), ILIAS\Survey\PrintView\ResultsDetailsPrintViewProviderGUI\getPrintHeader(), ilCourseMembershipGUI\getPrintMemberData(), ILIAS\COPage\PC\Paragraph\ParagraphResponseFactory\getResponseObject(), ILIAS\COPage\PC\Paragraph\ParagraphResponseFactory\getResponseObjectMulti(), ilTestServiceGUI\getResultsSignature(), ilRoleAssignmentTableGUI\getTitleForReference(), ilObjSessionGUI\initAttendanceList(), ilCronDeleteInactiveUserReminderMailNotification\initLanguage(), ilPCSection\insertTimings(), ilBadgeProfileGUI\listBackpackGroups(), ilUserCertificateGUI\listCertificates(), ilTestServiceGUI\populatePassFinishDate(), ilForumExportGUI\printPost(), ilForumExportGUI\printThread(), ilBookingReservationsGUI\rsvConfirmCancelAggregationForm(), ilMembershipCronNotifications\run(), ilSkillNotifications\run(), ILIAS\BackgroundTasks\Task\Job\Manager\JobManagerImpl\runActiveJobs(), ILIAS\Mail\Autoresponder\AutoresponderNotification\send(), ilForumMailEventNotificationSender\send(), ilForumMailNotification\send(), ilTestMailNotification\sendAdvancedNotification(), ILIAS\COPage\Editor\Server\UIWrapper\sendPage(), ilTestMailNotification\sendSimpleNotification(), ILIAS\COPage\PC\Table\TableCommandActionHandler\sendUpdateResponse(), ilChatroomHistoryGUI\showMessages(), and ilMemberExport\write().

46  : void
47  {
48  self::$use_relative_dates = $a_status;
49  }
+ Here is the caller graph for this function:

◆ useRelativeDates()

Field Documentation

◆ $lang

ilLanguage ilDatePresentation::$lang = null
staticprivate

Definition at line 29 of file class.ilDatePresentation.php.

◆ $today

ilDateTime ilDatePresentation::$today = null
static

Definition at line 30 of file class.ilDatePresentation.php.

◆ $tomorrow

ilDateTime ilDatePresentation::$tomorrow = null
static

Definition at line 31 of file class.ilDatePresentation.php.

◆ $use_relative_dates

bool ilDatePresentation::$use_relative_dates = true
static

Definition at line 28 of file class.ilDatePresentation.php.

◆ $weekdays

array ilDatePresentation::$weekdays
staticprotected
Initial value:
= [
0 => 'Su_short'

Definition at line 33 of file class.ilDatePresentation.php.

◆ $yesterday

ilDateTime ilDatePresentation::$yesterday = null
static

Definition at line 32 of file class.ilDatePresentation.php.


The documentation for this class was generated from the following file: