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); } /*****************************************************************************/