diff --git a/js/swad23.53.6.js b/js/swad23.79.js
similarity index 99%
rename from js/swad23.53.6.js
rename to js/swad23.79.js
index 3969f907b..dc2d13b26 100644
--- a/js/swad23.53.6.js
+++ b/js/swad23.79.js
@@ -72,11 +72,16 @@ function submitForm(FormId) {
// Dat_FORMAT_YYYY_MM_DD = 0
// Dat_FORMAT_DD_MONTH_YYYY = 1
// Dat_FORMAT_MONTH_DD_YYYY = 2
-// separator is HTML code to write between date and time
-// StrToday is a string in current language ('today', 'hoy'...)
-// WriteDateOnSameDay = false ==> don't write date if it's the same day than the last call
-// WriteWeekDay = true ==> write day of the week ('monday', 'tuesday'...)
-// WriteHMS = 3 least significant bits for hour, minute and second
+// Separator is HTML code to write between date and time
+// Write: a bit set ==> true
+
+const Dat_WRITE_TODAY = (1 << 5);
+const Dat_WRITE_DATE_ON_SAME_DAY = (1 << 4);
+const Dat_WRITE_WEEK_DAY = (1 << 3);
+const Dat_WRITE_HOUR = (1 << 2);
+const Dat_WRITE_MINUTE = (1 << 1);
+const Dat_WRITE_SECOND = (1 << 0);
+
const txtToday = [
"", // Unknown
"Avui", // CA
@@ -91,9 +96,7 @@ const txtToday = [
"Bugün", // TR
];
-function writeLocalDateHMSFromUTC (id,TimeUTC,DateFormat,Separator,Language,
- WriteToday,WriteDateOnSameDay,WriteWeekDay,WriteHMS) {
- // HMS: Hour, Minutes, Seconds
+function writeLocalDateHMSFromUTC (id,TimeUTC,DateFormat,Separator,Language,WhatToWrite) {
var today = new Date();
var todayYea = today.getFullYear ();
var todayMon = today.getMonth () + 1;
@@ -115,7 +118,7 @@ function writeLocalDateHMSFromUTC (id,TimeUTC,DateFormat,Separator,Language,
Mon = d.getMonth () + 1;
Day = d.getDate ();
- if (WriteDateOnSameDay)
+ if ((WhatToWrite & Dat_WRITE_DATE_ON_SAME_DAY) != 0)
WriteDate = true;
// Check to see if the last date has been initialized
else if (typeof writeLocalDateHMSFromUTC.lastd == 'undefined')
@@ -132,11 +135,11 @@ function writeLocalDateHMSFromUTC (id,TimeUTC,DateFormat,Separator,Language,
/* Set date */
StrDat = '';
if (WriteDate) {
- WriteToday = WriteToday && (Yea == todayYea &&
- Mon == todayMon &&
- Day == todayDay); // Date is today
- if (WriteToday)
- StrDat = txtToday[Language];
+ if ((WhatToWrite & Dat_WRITE_TODAY) != 0 &&
+ Yea == todayYea &&
+ Mon == todayMon &&
+ Day == todayDay) // Date is today
+ StrDat = txtToday[Language];
else
switch (DateFormat) {
case 0: // Dat_FORMAT_YYYY_MM_DD
@@ -158,7 +161,7 @@ function writeLocalDateHMSFromUTC (id,TimeUTC,DateFormat,Separator,Language,
break;
}
- if (WriteWeekDay) {
+ if ((WhatToWrite & Dat_WRITE_WEEK_DAY) != 0) {
DayOfWeek = d.getDay();
DayOfWeek = (DayOfWeek == 0) ? 6 : DayOfWeek - 1;
StrDat += Separator + DAYS[DayOfWeek];
@@ -170,15 +173,15 @@ function writeLocalDateHMSFromUTC (id,TimeUTC,DateFormat,Separator,Language,
StrHou = '';
StrMin = '';
StrSec = '';
- if (WriteHMS & (1<<2)) {
+ if ((WhatToWrite & Dat_WRITE_HOUR) != 0) {
// Bit 2 on => Write hour
Hou = d.getHours();
StrHou = ((Hou < 10) ? '0' : '') + Hou;
- if (WriteHMS & (1<<1)) {
+ if ((WhatToWrite & Dat_WRITE_MINUTE) != 0) {
// Bits 2,1 on => Write minutes
Min = d.getMinutes ();
StrMin = ((Min < 10) ? ':0' : ':') + Min;
- if (WriteHMS & 1) {
+ if ((WhatToWrite & Dat_WRITE_SECOND) != 0) {
// Bits 2,1,0 on => Write seconds
Sec = d.getSeconds ();
StrSec = ((Sec < 10) ? ':0' : ':') + Sec;
diff --git a/swad_agenda.c b/swad_agenda.c
index d49de76ed..efcf41e9e 100644
--- a/swad_agenda.c
+++ b/swad_agenda.c
@@ -810,7 +810,11 @@ static void Agd_ShowOneEvent (struct Agd_Agenda *Agenda,
The_GetColorRows ());
Dat_WriteLocalDateHMSFromUTC (Id,AgdEvent.TimeUTC[StartEndTime],
Gbl.Prefs.DateFormat,Dat_SEPARATOR_BREAK,
- true,true,true,0x6);
+ Dat_WRITE_TODAY |
+ Dat_WRITE_DATE_ON_SAME_DAY |
+ Dat_WRITE_WEEK_DAY |
+ Dat_WRITE_HOUR |
+ Dat_WRITE_MINUTE);
HTM_TD_End ();
free (Id);
}
diff --git a/swad_assignment.c b/swad_assignment.c
index 00b8ef870..6d000e08b 100644
--- a/swad_assignment.c
+++ b/swad_assignment.c
@@ -526,7 +526,12 @@ static void Asg_ShowAssignmentRow (struct Asg_Assignments *Assignments,
}
Dat_WriteLocalDateHMSFromUTC (Id,Assignments->Asg.TimeUTC[StartEndTime],
Gbl.Prefs.DateFormat,Dat_SEPARATOR_BREAK,
- true,true,true,0x7);
+ Dat_WRITE_TODAY |
+ Dat_WRITE_DATE_ON_SAME_DAY |
+ Dat_WRITE_WEEK_DAY |
+ Dat_WRITE_HOUR |
+ Dat_WRITE_MINUTE |
+ Dat_WRITE_SECOND);
HTM_TD_End ();
free (Id);
}
@@ -1675,7 +1680,11 @@ void Asg_WriteDatesAssignment (const struct Asg_Assignment *Asg)
HTM_SPAN_Begin ("id=\"%s\"",Id);
Dat_WriteLocalDateHMSFromUTC (Id,Asg->TimeUTC[Dat_STR_TIME],
Gbl.Prefs.DateFormat,Dat_SEPARATOR_COMMA,
- true,true,false,0x7);
+ Dat_WRITE_TODAY |
+ Dat_WRITE_DATE_ON_SAME_DAY |
+ Dat_WRITE_HOUR |
+ Dat_WRITE_MINUTE |
+ Dat_WRITE_SECOND);
HTM_SPAN_End ();
free (Id);
@@ -1688,7 +1697,11 @@ void Asg_WriteDatesAssignment (const struct Asg_Assignment *Asg)
HTM_SPAN_Begin ("id=\"%s\"",Id);
Dat_WriteLocalDateHMSFromUTC (Id,Asg->TimeUTC[Dat_END_TIME],
Gbl.Prefs.DateFormat,Dat_SEPARATOR_COMMA,
- true,false,false,0x7);
+ Dat_WRITE_TODAY |
+ Dat_WRITE_DATE_ON_SAME_DAY |
+ Dat_WRITE_HOUR |
+ Dat_WRITE_MINUTE |
+ Dat_WRITE_SECOND);
HTM_SPAN_End ();
free (Id);
}
diff --git a/swad_attendance.c b/swad_attendance.c
index bb030cb7e..7416191b6 100644
--- a/swad_attendance.c
+++ b/swad_attendance.c
@@ -475,7 +475,12 @@ static void Att_ShowOneEventRow (struct Att_Events *Events,
The_GetSuffix (),The_GetColorRows ());
Dat_WriteLocalDateHMSFromUTC (Id,Events->Event.TimeUTC[StartEndTime],
Gbl.Prefs.DateFormat,Dat_SEPARATOR_BREAK,
- true,true,true,0x7);
+ Dat_WRITE_TODAY |
+ Dat_WRITE_DATE_ON_SAME_DAY |
+ Dat_WRITE_WEEK_DAY |
+ Dat_WRITE_HOUR |
+ Dat_WRITE_MINUTE |
+ Dat_WRITE_SECOND);
HTM_TD_End ();
free (Id);
}
@@ -2684,7 +2689,12 @@ static void Att_ListEventsToSelect (struct Att_Events *Events,
HTM_LABEL_End ();
Dat_WriteLocalDateHMSFromUTC (Id,Events->Event.TimeUTC[Dat_STR_TIME],
Gbl.Prefs.DateFormat,Dat_SEPARATOR_COMMA,
- true,true,true,0x7);
+ Dat_WRITE_TODAY |
+ Dat_WRITE_DATE_ON_SAME_DAY |
+ Dat_WRITE_WEEK_DAY |
+ Dat_WRITE_HOUR |
+ Dat_WRITE_MINUTE |
+ Dat_WRITE_SECOND);
free (Id);
HTM_TD_End ();
@@ -3151,7 +3161,12 @@ static void Att_ListAttEventsForAStd (struct Att_Events *Events,
HTM_Txt (Events->Event.Title);
Dat_WriteLocalDateHMSFromUTC (Id,Events->Event.TimeUTC[Dat_STR_TIME],
Gbl.Prefs.DateFormat,Dat_SEPARATOR_COMMA,
- true,true,true,0x7);
+ Dat_WRITE_TODAY |
+ Dat_WRITE_DATE_ON_SAME_DAY |
+ Dat_WRITE_WEEK_DAY |
+ Dat_WRITE_HOUR |
+ Dat_WRITE_MINUTE |
+ Dat_WRITE_SECOND);
free (Id);
HTM_TD_End ();
diff --git a/swad_browser.c b/swad_browser.c
index 867faea4d..a36b34536 100644
--- a/swad_browser.c
+++ b/swad_browser.c
@@ -4868,7 +4868,10 @@ static void Brw_WriteFileSizeAndDate (struct Brw_FileMetadata *FileMetadata,
HTM_SPAN_End ();
Dat_WriteLocalDateHMSFromUTC (Id,FileMetadata->Time,
Gbl.Prefs.DateFormat,Dat_SEPARATOR_COMMA,
- true,true,false,0x6);
+ Dat_WRITE_TODAY |
+ Dat_WRITE_DATE_ON_SAME_DAY |
+ Dat_WRITE_HOUR |
+ Dat_WRITE_MINUTE);
free (Id);
}
HTM_TD_End ();
@@ -7506,7 +7509,12 @@ void Brw_ShowFileMetadata (void)
The_GetSuffix ());
Dat_WriteLocalDateHMSFromUTC ("filedate",FileMetadata.Time,
Gbl.Prefs.DateFormat,Dat_SEPARATOR_COMMA,
- true,true,true,0x7);
+ Dat_WRITE_TODAY |
+ Dat_WRITE_DATE_ON_SAME_DAY |
+ Dat_WRITE_WEEK_DAY |
+ Dat_WRITE_HOUR |
+ Dat_WRITE_MINUTE |
+ Dat_WRITE_SECOND);
HTM_TD_End ();
HTM_TR_End ();
diff --git a/swad_changelog.h b/swad_changelog.h
index 53d83192e..4d22a0c47 100644
--- a/swad_changelog.h
+++ b/swad_changelog.h
@@ -633,10 +633,11 @@ Me sale este error, no s
"can npt create received message (duplicated entry '243218-2160773' for key 'UsrCod_MsgCod')
*/
-#define Log_PLATFORM_VERSION "SWAD 23.78 (2024-04-23)"
+#define Log_PLATFORM_VERSION "SWAD 23.79 (2024-04-24)"
#define CSS_FILE "swad23.67.2.css"
-#define JS_FILE "swad23.53.6.js"
+#define JS_FILE "swad23.79.js"
/*
+ Version 23.79: Apr 24, 2024 Code refactoring writing dates. (335741 lines)
Version 23.78: Apr 23, 2024 Code refactoring in list of actions. (335577 lines)
Version 23.77: Apr 19, 2024 Code refactoring in list of actions. (335567 lines)
Version 23.76.1: Apr 19, 2024 Code refactoring related to don't belong/belong. (335570 lines)
diff --git a/swad_connected.c b/swad_connected.c
index 519f4758d..f746f8dfb 100644
--- a/swad_connected.c
+++ b/swad_connected.c
@@ -112,7 +112,10 @@ void Con_ShowConnectedUsrs (void)
HTM_DIV_End ();
Dat_WriteLocalDateHMSFromUTC ("connected_current_time",Dat_GetStartExecutionTimeUTC (),
Gbl.Prefs.DateFormat,Dat_SEPARATOR_COMMA,
- false,false,true,0x7);
+ Dat_WRITE_WEEK_DAY |
+ Dat_WRITE_HOUR |
+ Dat_WRITE_MINUTE |
+ Dat_WRITE_SECOND);
/***** Number of connected users in the whole platform *****/
HTM_FIELDSET_Begin ("class=\"CON CON_%s\"",The_GetSuffix ());
diff --git a/swad_date.c b/swad_date.c
index 3dd47d74d..cd792378f 100644
--- a/swad_date.c
+++ b/swad_date.c
@@ -360,7 +360,7 @@ void Dat_PutScriptDateFormat (Dat_Format_t Format)
Err_NotEnoughMemoryExit ();
Dat_WriteLocalDateHMSFromUTC (Id,Dat_GetStartExecutionTimeUTC (),
Format,Dat_SEPARATOR_NONE,
- false,true,false,0x0);
+ Dat_WRITE_DATE_ON_SAME_DAY);
free (Id);
}
@@ -1786,8 +1786,7 @@ void Dat_WriteHoursMinutesSeconds (struct Dat_Time *Time)
void Dat_WriteLocalDateHMSFromUTC (const char *Id,time_t TimeUTC,
Dat_Format_t DateFormat,Dat_Separator_t Separator,
- bool WriteToday,bool WriteDateOnSameDay,
- bool WriteWeekDay,unsigned WriteHMS)
+ Dat_WhatToWrite_t Write)
{
static const char *SeparatorStr[Dat_NUM_SEPARATORS] =
{
@@ -1797,16 +1796,9 @@ void Dat_WriteLocalDateHMSFromUTC (const char *Id,time_t TimeUTC,
};
HTM_SCRIPT_Begin (NULL,NULL);
- HTM_TxtF ("writeLocalDateHMSFromUTC('%s',%ld,%u,'%s',%u,%s,%s,%s,0x%x);",
+ HTM_TxtF ("writeLocalDateHMSFromUTC('%s',%ld,%u,'%s',%u,%u);",
Id,(long) TimeUTC,(unsigned) DateFormat,SeparatorStr[Separator],
- (unsigned) Gbl.Prefs.Language,
- WriteToday ? "true" :
- "false",
- WriteDateOnSameDay ? "true" :
- "false",
- WriteWeekDay ? "true" :
- "false",
- WriteHMS);
+ (unsigned) Gbl.Prefs.Language,(unsigned) Write);
HTM_SCRIPT_End ();
}
diff --git a/swad_date.h b/swad_date.h
index 654f57cb7..daaa92bc5 100644
--- a/swad_date.h
+++ b/swad_date.h
@@ -123,6 +123,14 @@ typedef enum
Dat_SEPARATOR_BREAK, // Line break
} Dat_Separator_t;
+typedef unsigned Dat_WhatToWrite_t;
+#define Dat_WRITE_TODAY ((Dat_WhatToWrite_t) (1 << 5))
+#define Dat_WRITE_DATE_ON_SAME_DAY ((Dat_WhatToWrite_t) (1 << 4))
+#define Dat_WRITE_WEEK_DAY ((Dat_WhatToWrite_t) (1 << 3))
+#define Dat_WRITE_HOUR ((Dat_WhatToWrite_t) (1 << 2))
+#define Dat_WRITE_MINUTE ((Dat_WhatToWrite_t) (1 << 1))
+#define Dat_WRITE_SECOND ((Dat_WhatToWrite_t) (1 << 0))
+
/*****************************************************************************/
/***************************** Public prototypes *****************************/
/*****************************************************************************/
@@ -226,8 +234,7 @@ void Dat_WriteHoursMinutesSeconds (struct Dat_Time *Time);
void Dat_WriteLocalDateHMSFromUTC (const char *Id,time_t TimeUTC,
Dat_Format_t DateFormat,Dat_Separator_t Separator,
- bool WriteToday,bool WriteDateOnSameDay,
- bool WriteWeekDay,unsigned WriteHMS);
+ Dat_WhatToWrite_t Write);
//-------------------------------- Figures ------------------------------------
void Dat_GetAndShowNumUsrsPerDateFormat (void);
diff --git a/swad_exam.c b/swad_exam.c
index 8a6babe60..752869213 100644
--- a/swad_exam.c
+++ b/swad_exam.c
@@ -503,7 +503,11 @@ static void Exa_ShowOneExam (struct Exa_Exams *Exams,bool ShowOnlyThisExam)
if (Exams->Exam.TimeUTC[Dat_STR_TIME])
Dat_WriteLocalDateHMSFromUTC (Id,Exams->Exam.TimeUTC[StartEndTime],
Gbl.Prefs.DateFormat,Dat_SEPARATOR_BREAK,
- true,true,true,0x6);
+ Dat_WRITE_TODAY |
+ Dat_WRITE_DATE_ON_SAME_DAY |
+ Dat_WRITE_WEEK_DAY |
+ Dat_WRITE_HOUR |
+ Dat_WRITE_MINUTE);
HTM_TD_End ();
free (Id);
}
diff --git a/swad_exam_log.c b/swad_exam_log.c
index debc3e3f5..05c81b049 100644
--- a/swad_exam_log.c
+++ b/swad_exam_log.c
@@ -334,7 +334,12 @@ void ExaLog_ShowExamLog (const struct ExaPrn_Print *Print)
The_GetColorRows ());
Dat_WriteLocalDateHMSFromUTC (Id,ClickTimeUTC,
Gbl.Prefs.DateFormat,Dat_SEPARATOR_COMMA,
- true,true,true,0x7);
+ Dat_WRITE_TODAY |
+ Dat_WRITE_DATE_ON_SAME_DAY |
+ Dat_WRITE_WEEK_DAY |
+ Dat_WRITE_HOUR |
+ Dat_WRITE_MINUTE |
+ Dat_WRITE_SECOND);
free (Id);
HTM_TD_End ();
diff --git a/swad_exam_result.c b/swad_exam_result.c
index 376aef3cc..42e45eeb7 100644
--- a/swad_exam_result.c
+++ b/swad_exam_result.c
@@ -818,7 +818,11 @@ static void ExaRes_ShowResults (struct Exa_Exams *Exams,
The_GetColorRows ());
Dat_WriteLocalDateHMSFromUTC (Id,Print.TimeUTC[StartEndTime],
Gbl.Prefs.DateFormat,Dat_SEPARATOR_BREAK,
- true,true,false,0x7);
+ Dat_WRITE_TODAY |
+ Dat_WRITE_DATE_ON_SAME_DAY |
+ Dat_WRITE_HOUR |
+ Dat_WRITE_MINUTE |
+ Dat_WRITE_SECOND);
HTM_TD_End ();
free (Id);
}
@@ -1617,7 +1621,12 @@ static void ExaRes_ShowExamResultTime (struct ExaPrn_Print *Print)
Id,The_GetSuffix ());
Dat_WriteLocalDateHMSFromUTC (Id,Print->TimeUTC[StartEndTime],
Gbl.Prefs.DateFormat,Dat_SEPARATOR_COMMA,
- true,true,true,0x7);
+ Dat_WRITE_TODAY |
+ Dat_WRITE_DATE_ON_SAME_DAY |
+ Dat_WRITE_WEEK_DAY |
+ Dat_WRITE_HOUR |
+ Dat_WRITE_MINUTE |
+ Dat_WRITE_SECOND);
HTM_TD_End ();
free (Id);
diff --git a/swad_exam_session.c b/swad_exam_session.c
index 1cdcc3d50..83f35fcfb 100644
--- a/swad_exam_session.c
+++ b/swad_exam_session.c
@@ -475,7 +475,11 @@ static void ExaSes_ListOneOrMoreSessionsTimes (const struct ExaSes_Session *Sess
The_GetSuffix (),The_GetColorRows ());
Dat_WriteLocalDateHMSFromUTC (Id,Session->TimeUTC[StartEndTime],
Gbl.Prefs.DateFormat,Dat_SEPARATOR_BREAK,
- true,true,true,0x6);
+ Dat_WRITE_TODAY |
+ Dat_WRITE_DATE_ON_SAME_DAY |
+ Dat_WRITE_WEEK_DAY |
+ Dat_WRITE_HOUR |
+ Dat_WRITE_MINUTE);
HTM_TD_End ();
free (Id);
}
diff --git a/swad_forum.c b/swad_forum.c
index e28b69b43..eed338a8a 100644
--- a/swad_forum.c
+++ b/swad_forum.c
@@ -2374,7 +2374,10 @@ static void For_ListForumThrs (struct For_Forums *Forums,
Id,Class,The_GetSuffix (),BgColor);
Dat_WriteLocalDateHMSFromUTC (Id,TimeUTC,
Gbl.Prefs.DateFormat,Dat_SEPARATOR_BREAK,
- true,true,false,0x6);
+ Dat_WRITE_TODAY |
+ Dat_WRITE_DATE_ON_SAME_DAY |
+ Dat_WRITE_HOUR |
+ Dat_WRITE_MINUTE);
HTM_TD_End ();
free (Id);
}
diff --git a/swad_game.c b/swad_game.c
index b6d181026..e91bcdbef 100644
--- a/swad_game.c
+++ b/swad_game.c
@@ -563,7 +563,12 @@ static void Gam_ShowGameMainData (struct Gam_Games *Games,
if (Games->Game.TimeUTC[Dat_STR_TIME])
Dat_WriteLocalDateHMSFromUTC (Id,Games->Game.TimeUTC[StartEndTime],
Gbl.Prefs.DateFormat,Dat_SEPARATOR_BREAK,
- true,true,true,0x7);
+ Dat_WRITE_TODAY |
+ Dat_WRITE_DATE_ON_SAME_DAY |
+ Dat_WRITE_WEEK_DAY |
+ Dat_WRITE_HOUR |
+ Dat_WRITE_MINUTE |
+ Dat_WRITE_SECOND);
HTM_TD_End ();
free (Id);
}
diff --git a/swad_group.c b/swad_group.c
index 009366598..1fc0b358a 100644
--- a/swad_group.c
+++ b/swad_group.c
@@ -2308,7 +2308,12 @@ static void Grp_WriteGrpHead (struct GroupType *GrpTyp)
HTM_SPAN_End ();
Dat_WriteLocalDateHMSFromUTC (Id,GrpTyp->OpenTimeUTC,
Gbl.Prefs.DateFormat,Dat_SEPARATOR_COMMA,
- true,true,true,0x7);
+ Dat_WRITE_TODAY |
+ Dat_WRITE_DATE_ON_SAME_DAY |
+ Dat_WRITE_WEEK_DAY |
+ Dat_WRITE_HOUR |
+ Dat_WRITE_MINUTE |
+ Dat_WRITE_SECOND);
free (Id);
}
HTM_TD_End ();
diff --git a/swad_match.c b/swad_match.c
index 8c93d21be..222a59fe4 100644
--- a/swad_match.c
+++ b/swad_match.c
@@ -617,7 +617,12 @@ static void Mch_ListOneOrMoreMatchesTimes (const struct Gam_Games *Games,
The_GetColorRows ());
Dat_WriteLocalDateHMSFromUTC (Id,Match->TimeUTC[StartEndTime],
Gbl.Prefs.DateFormat,Dat_SEPARATOR_BREAK,
- true,true,true,0x7);
+ Dat_WRITE_TODAY |
+ Dat_WRITE_DATE_ON_SAME_DAY |
+ Dat_WRITE_WEEK_DAY |
+ Dat_WRITE_HOUR |
+ Dat_WRITE_MINUTE |
+ Dat_WRITE_SECOND);
HTM_TD_End ();
free (Id);
}
diff --git a/swad_match_result.c b/swad_match_result.c
index b87eeeaaa..1a15e8068 100644
--- a/swad_match_result.c
+++ b/swad_match_result.c
@@ -764,7 +764,11 @@ static void MchRes_ShowMchResults (struct Gam_Games *Games,
Id,The_GetSuffix (),The_GetColorRows ());
Dat_WriteLocalDateHMSFromUTC (Id,Print.TimeUTC[StartEndTime],
Gbl.Prefs.DateFormat,Dat_SEPARATOR_BREAK,
- true,true,false,0x7);
+ Dat_WRITE_TODAY |
+ Dat_WRITE_DATE_ON_SAME_DAY |
+ Dat_WRITE_HOUR |
+ Dat_WRITE_MINUTE |
+ Dat_WRITE_SECOND);
HTM_TD_End ();
free (Id);
}
@@ -1178,7 +1182,12 @@ void MchRes_ShowOneMchResult (void)
Id,The_GetSuffix ());
Dat_WriteLocalDateHMSFromUTC (Id,Print.TimeUTC[StartEndTime],
Gbl.Prefs.DateFormat,Dat_SEPARATOR_COMMA,
- true,true,true,0x7);
+ Dat_WRITE_TODAY |
+ Dat_WRITE_DATE_ON_SAME_DAY |
+ Dat_WRITE_WEEK_DAY |
+ Dat_WRITE_HOUR |
+ Dat_WRITE_MINUTE |
+ Dat_WRITE_SECOND);
HTM_TD_End ();
free (Id);
diff --git a/swad_message.c b/swad_message.c
index e5ba2c642..afb0ae83b 100644
--- a/swad_message.c
+++ b/swad_message.c
@@ -2675,7 +2675,10 @@ void Msg_WriteMsgDate (time_t TimeUTC,const char *ClassTxt,const char *ClassBg)
/***** Write date and time *****/
Dat_WriteLocalDateHMSFromUTC (Id,TimeUTC,
Gbl.Prefs.DateFormat,Dat_SEPARATOR_BREAK,
- true,true,false,0x6);
+ Dat_WRITE_TODAY |
+ Dat_WRITE_DATE_ON_SAME_DAY |
+ Dat_WRITE_HOUR |
+ Dat_WRITE_MINUTE);
/***** End cell *****/
HTM_TD_End ();
diff --git a/swad_notice.c b/swad_notice.c
index 77502fe31..1717c21cc 100644
--- a/swad_notice.c
+++ b/swad_notice.c
@@ -588,7 +588,10 @@ static void Not_DrawANotice (Not_Listing_t TypeNoticesListing,
}
Dat_WriteLocalDateHMSFromUTC (Id,Notice->CreatTime,
Gbl.Prefs.DateFormat,Dat_SEPARATOR_BREAK,
- true,true,false,0x6);
+ Dat_WRITE_TODAY |
+ Dat_WRITE_DATE_ON_SAME_DAY |
+ Dat_WRITE_HOUR |
+ Dat_WRITE_MINUTE);
free (Id);
HTM_DIV_End ();
diff --git a/swad_profile.c b/swad_profile.c
index 862eab76e..b93c4afda 100644
--- a/swad_profile.c
+++ b/swad_profile.c
@@ -500,7 +500,10 @@ static void Prf_ShowTimeSinceFirstClick (const struct Usr_Data *UsrDat,
}
Dat_WriteLocalDateHMSFromUTC (IdFirstClickTime,UsrFigures->FirstClickTimeUTC,
Gbl.Prefs.DateFormat,Dat_SEPARATOR_COMMA,
- true,true,false,0x6);
+ Dat_WRITE_TODAY |
+ Dat_WRITE_DATE_ON_SAME_DAY |
+ Dat_WRITE_HOUR |
+ Dat_WRITE_MINUTE);
}
else // First click time is unknown or user never logged
/***** Button to fetch and store user's figures *****/
diff --git a/swad_program.c b/swad_program.c
index e48409016..1008e0566 100644
--- a/swad_program.c
+++ b/swad_program.c
@@ -563,7 +563,10 @@ static void Prg_WriteRowItem (Prg_ListingType_t ListingType,
HidVis_PrgClass[HiddenOrVisible]);
Dat_WriteLocalDateHMSFromUTC (Id,Item->TimeUTC[StartEndTime],
Gbl.Prefs.DateFormat,Dat_SEPARATOR_COMMA,
- true,true,false,0x6);
+ Dat_WRITE_TODAY |
+ Dat_WRITE_DATE_ON_SAME_DAY |
+ Dat_WRITE_HOUR |
+ Dat_WRITE_MINUTE);
HTM_DIV_End ();
free (Id);
}
diff --git a/swad_project.c b/swad_project.c
index 226a2ed45..7cbde3b72 100644
--- a/swad_project.c
+++ b/swad_project.c
@@ -1580,7 +1580,12 @@ static void Prj_ShowFirstRow (struct Prj_Projects *Projects,
}
Dat_WriteLocalDateHMSFromUTC (Id,Projects->Prj.CreatTime,
Gbl.Prefs.DateFormat,Dat_SEPARATOR_BREAK,
- true,true,true,0x7);
+ Dat_WRITE_TODAY |
+ Dat_WRITE_DATE_ON_SAME_DAY |
+ Dat_WRITE_WEEK_DAY |
+ Dat_WRITE_HOUR |
+ Dat_WRITE_MINUTE |
+ Dat_WRITE_SECOND);
HTM_TD_End ();
free (Id);
@@ -1604,7 +1609,12 @@ static void Prj_ShowFirstRow (struct Prj_Projects *Projects,
}
Dat_WriteLocalDateHMSFromUTC (Id,Projects->Prj.ModifTime,
Gbl.Prefs.DateFormat,Dat_SEPARATOR_BREAK,
- true,true,true,0x7);
+ Dat_WRITE_TODAY |
+ Dat_WRITE_DATE_ON_SAME_DAY |
+ Dat_WRITE_WEEK_DAY |
+ Dat_WRITE_HOUR |
+ Dat_WRITE_MINUTE |
+ Dat_WRITE_SECOND);
HTM_TD_End ();
free (Id);
@@ -1776,7 +1786,10 @@ static void Prj_ShowReviewStatus (struct Prj_Projects *Projects,
HTM_DIV_Begin ("id=\"%s\" class=\"PRJ_DATE\"",Id);
Dat_WriteLocalDateHMSFromUTC (Id,Projects->Prj.Review.Time,
Gbl.Prefs.DateFormat,Dat_SEPARATOR_COMMA,
- true,true,false,0x6);
+ Dat_WRITE_TODAY |
+ Dat_WRITE_DATE_ON_SAME_DAY |
+ Dat_WRITE_HOUR |
+ Dat_WRITE_MINUTE);
HTM_DIV_End ();
free (Id);
}
@@ -2552,7 +2565,11 @@ static void Prj_ShowTableAllProjectsOneRow (struct Prj_Project *Prj)
Id,HidVis_DateBlueClass[Prj->Hidden],The_GetColorRows ());
Dat_WriteLocalDateHMSFromUTC (Id,Prj->CreatTime,
Gbl.Prefs.DateFormat,Dat_SEPARATOR_BREAK,
- true,true,false,0x7);
+ Dat_WRITE_TODAY |
+ Dat_WRITE_DATE_ON_SAME_DAY |
+ Dat_WRITE_HOUR |
+ Dat_WRITE_MINUTE |
+ Dat_WRITE_SECOND);
HTM_TD_End ();
free (Id);
@@ -2564,7 +2581,11 @@ static void Prj_ShowTableAllProjectsOneRow (struct Prj_Project *Prj)
Id,HidVis_DateBlueClass[Prj->Hidden],The_GetColorRows ());
Dat_WriteLocalDateHMSFromUTC (Id,Prj->ModifTime,
Gbl.Prefs.DateFormat,Dat_SEPARATOR_BREAK,
- true,true,false,0x7);
+ Dat_WRITE_TODAY |
+ Dat_WRITE_DATE_ON_SAME_DAY |
+ Dat_WRITE_HOUR |
+ Dat_WRITE_MINUTE |
+ Dat_WRITE_SECOND);
HTM_TD_End ();
free (Id);
diff --git a/swad_question.c b/swad_question.c
index a2519d968..d1a2d2c0c 100644
--- a/swad_question.c
+++ b/swad_question.c
@@ -958,7 +958,11 @@ void Qst_WriteQuestionListing (struct Qst_Questions *Questions,unsigned QstInd)
The_GetColorRows ());
Dat_WriteLocalDateHMSFromUTC (Id,Questions->Question.EditTime,
Gbl.Prefs.DateFormat,Dat_SEPARATOR_BREAK,
- true,true,false,0x7);
+ Dat_WRITE_TODAY |
+ Dat_WRITE_DATE_ON_SAME_DAY |
+ Dat_WRITE_HOUR |
+ Dat_WRITE_MINUTE |
+ Dat_WRITE_SECOND);
HTM_TD_End ();
free (Id);
@@ -1265,7 +1269,11 @@ void Qst_WriteQuestionRowForSelection (unsigned QstInd,
The_GetColorRows ());
Dat_WriteLocalDateHMSFromUTC (Id,Question->EditTime,
Gbl.Prefs.DateFormat,Dat_SEPARATOR_BREAK,
- true,true,false,0x7);
+ Dat_WRITE_TODAY |
+ Dat_WRITE_DATE_ON_SAME_DAY |
+ Dat_WRITE_HOUR |
+ Dat_WRITE_MINUTE |
+ Dat_WRITE_SECOND);
HTM_TD_End ();
free (Id);
diff --git a/swad_statistic.c b/swad_statistic.c
index 4ec91b16f..f5e395236 100644
--- a/swad_statistic.c
+++ b/swad_statistic.c
@@ -1288,7 +1288,11 @@ static void Sta_ShowDetailedAccessesList (const struct Sta_Stats *Stats,
Id,The_GetSuffix (),The_GetColorRows ());
Dat_WriteLocalDateHMSFromUTC (Id,Dat_GetUNIXTimeFromStr (row[3]),
Gbl.Prefs.DateFormat,Dat_SEPARATOR_COMMA,
- true,true,false,0x7);
+ Dat_WRITE_TODAY |
+ Dat_WRITE_DATE_ON_SAME_DAY |
+ Dat_WRITE_HOUR |
+ Dat_WRITE_MINUTE |
+ Dat_WRITE_SECOND);
HTM_TD_End ();
free (Id);
diff --git a/swad_survey.c b/swad_survey.c
index e62896b3a..d633e01c6 100644
--- a/swad_survey.c
+++ b/swad_survey.c
@@ -458,7 +458,12 @@ static void Svy_ShowOneSurvey (struct Svy_Surveys *Surveys,
The_GetSuffix (),The_GetColorRows ());
Dat_WriteLocalDateHMSFromUTC (Id,Surveys->Svy.TimeUTC[Dat_STR_TIME],
Gbl.Prefs.DateFormat,Dat_SEPARATOR_BREAK,
- true,true,true,0x7);
+ Dat_WRITE_TODAY |
+ Dat_WRITE_DATE_ON_SAME_DAY |
+ Dat_WRITE_WEEK_DAY |
+ Dat_WRITE_HOUR |
+ Dat_WRITE_MINUTE |
+ Dat_WRITE_SECOND);
HTM_TD_End ();
free (Id);
@@ -478,7 +483,11 @@ static void Svy_ShowOneSurvey (struct Svy_Surveys *Surveys,
The_GetColorRows ());
Dat_WriteLocalDateHMSFromUTC (Id,Surveys->Svy.TimeUTC[Dat_END_TIME],
Gbl.Prefs.DateFormat,Dat_SEPARATOR_BREAK,
- true,false,true,0x7);
+ Dat_WRITE_TODAY |
+ Dat_WRITE_WEEK_DAY |
+ Dat_WRITE_HOUR |
+ Dat_WRITE_MINUTE |
+ Dat_WRITE_SECOND);
HTM_TD_End ();
free (Id);
diff --git a/swad_test.c b/swad_test.c
index 36a5418d3..1880df03a 100644
--- a/swad_test.c
+++ b/swad_test.c
@@ -435,12 +435,18 @@ static bool Tst_CheckIfNextTstAllowed (void)
"."
"",
Txt_You_can_not_take_a_new_test_until,
(long) TimeNextTestUTC,
(unsigned) Gbl.Prefs.DateFormat,
- (unsigned) Gbl.Prefs.Language);
+ (unsigned) Gbl.Prefs.Language,
+ (unsigned) (Dat_WRITE_TODAY |
+ Dat_WRITE_DATE_ON_SAME_DAY |
+ Dat_WRITE_WEEK_DAY |
+ Dat_WRITE_HOUR |
+ Dat_WRITE_MINUTE |
+ Dat_WRITE_SECOND));
return false;
}
return true;
diff --git a/swad_test_print.c b/swad_test_print.c
index 818967c6f..5e1435dde 100644
--- a/swad_test_print.c
+++ b/swad_test_print.c
@@ -1937,7 +1937,11 @@ static void TstPrn_ShowUsrPrints (struct Usr_Data *UsrDat)
Id,ClassDat,The_GetSuffix (),The_GetColorRows ());
Dat_WriteLocalDateHMSFromUTC (Id,Print.TimeUTC[StartEndTime],
Gbl.Prefs.DateFormat,Dat_SEPARATOR_BREAK,
- true,true,false,0x7);
+ Dat_WRITE_TODAY |
+ Dat_WRITE_DATE_ON_SAME_DAY |
+ Dat_WRITE_HOUR |
+ Dat_WRITE_MINUTE |
+ Dat_WRITE_SECOND);
HTM_TD_End ();
free (Id);
}
@@ -2338,7 +2342,12 @@ void TstPrn_ShowOnePrint (void)
Id,The_GetSuffix ());
Dat_WriteLocalDateHMSFromUTC (Id,Print.TimeUTC[StartEndTime],
Gbl.Prefs.DateFormat,Dat_SEPARATOR_COMMA,
- true,true,true,0x7);
+ Dat_WRITE_TODAY |
+ Dat_WRITE_DATE_ON_SAME_DAY |
+ Dat_WRITE_WEEK_DAY |
+ Dat_WRITE_HOUR |
+ Dat_WRITE_MINUTE |
+ Dat_WRITE_SECOND);
HTM_TD_End ();
HTM_TR_End ();
diff --git a/swad_timeline.c b/swad_timeline.c
index ec29a14ad..0c2824608 100644
--- a/swad_timeline.c
+++ b/swad_timeline.c
@@ -542,7 +542,10 @@ void Tml_WriteDateTime (time_t TimeUTC)
// because it will be evaluated in a loop in JavaScript
Dat_WriteLocalDateHMSFromUTC (IdDateTime,TimeUTC,
Gbl.Prefs.DateFormat,Dat_SEPARATOR_COMMA,
- true,true,false,0x6);
+ Dat_WRITE_TODAY |
+ Dat_WRITE_DATE_ON_SAME_DAY |
+ Dat_WRITE_HOUR |
+ Dat_WRITE_MINUTE);
}
/*****************************************************************************/