Version19.177

This commit is contained in:
acanas 2020-04-12 20:08:37 +02:00
parent e089c03a00
commit bf1010c1a7
9 changed files with 460 additions and 337 deletions

View File

@ -718,8 +718,8 @@ const struct Act_Actions Act_Actions[Act_NUM_ACTIONS] =
[ActReqRemSvyQst ] = {1524,-1,TabUnk,ActSeeAllSvy ,0x3E0,0x3C0,0x3C0,0x3C0,0x3C0,0x3C0,0x3C0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Svy_RequestRemoveQst ,NULL},
[ActRemSvyQst ] = { 981,-1,TabUnk,ActSeeAllSvy ,0x3E0,0x3C0,0x3C0,0x3C0,0x3C0,0x3C0,0x3C0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Svy_RemoveQst ,NULL},
[ActSeeOneExaAnn ] = {1572,-1,TabUnk,ActSeeAllExaAnn ,0x3F8,0x3C7, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,Exa_GetExaCodToHighlight ,Exa_ListExamAnnouncementsSee ,NULL},
[ActSeeDatExaAnn ] = {1571,-1,TabUnk,ActSeeAllExaAnn ,0x3F8,0x3C7, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,Exa_GetDateToHighlight ,Exa_ListExamAnnouncementsSee ,NULL},
[ActSeeOneExaAnn ] = {1572,-1,TabUnk,ActSeeAllExaAnn ,0x3F8,0x3C7, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Exa_ListExamAnnouncementsCod ,NULL},
[ActSeeDatExaAnn ] = {1571,-1,TabUnk,ActSeeAllExaAnn ,0x3F8,0x3C7, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Exa_ListExamAnnouncementsDay ,NULL},
[ActEdiExaAnn ] = { 91,-1,TabUnk,ActSeeAllExaAnn ,0x220,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Exa_PutFrmEditAExamAnnouncement,NULL},
[ActRcvExaAnn ] = { 110,-1,TabUnk,ActSeeAllExaAnn ,0x220,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,Exa_ReceiveExamAnnouncement1 ,Exa_ReceiveExamAnnouncement2 ,NULL},
[ActPrnExaAnn ] = { 179,-1,TabUnk,ActSeeAllExaAnn ,0x3F8,0x3C7, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_NEW_TAB,NULL ,Exa_PrintExamAnnouncement ,NULL},

View File

@ -497,7 +497,7 @@ enscript -2 --landscape --color --file-align=2 --highlight --line-numbers -o - *
En OpenSWAD:
ps2pdf source.ps destination.pdf
*/
#define Log_PLATFORM_VERSION "SWAD 19.176 (2020-04-12)"
#define Log_PLATFORM_VERSION "SWAD 19.177 (2020-04-12)"
#define CSS_FILE "swad19.146.css"
#define JS_FILE "swad19.172.1.js"
/*
@ -548,6 +548,7 @@ Funci
// TODO: Oresti Baños: cambiar ojos por candados en descriptores para prohibir/permitir y dejar los ojos para poder elegir descriptores
// TODO: Integrar pull requests con traducciones del alemán del usuario eruedin en GitHub
Version 19.177: Apr 12, 2020 Code refactoring in exam announcements. (285509 lines)
Version 19.176: Apr 12, 2020 Code refactoring in agenda. (285419 lines)
Version 19.175: Apr 12, 2020 Code refactoring in syllabus. (285345 lines)
Version 19.174: Apr 11, 2020 Code refactoring in messages. (285250 lines)

View File

@ -383,7 +383,7 @@ struct tm *Dat_GetLocalTimeFromClock (const time_t *timep)
/********* Convert a struct with Day, Month and Year to a date string ********/
/*****************************************************************************/
void Dat_ConvDateToDateStr (struct Date *Date,char StrDate[Cns_MAX_BYTES_DATE + 1])
void Dat_ConvDateToDateStr (const struct Date *Date,char StrDate[Cns_MAX_BYTES_DATE + 1])
{
extern const char *Txt_MONTHS_SMALL_SHORT[12];

View File

@ -141,7 +141,7 @@ bool Dat_GetDateFromYYYYMMDD (struct Date *Date,const char *YYYYMMDDString);
void Dat_ShowClientLocalTime (void);
struct tm *Dat_GetLocalTimeFromClock (const time_t *timep);
void Dat_ConvDateToDateStr (struct Date *Date,char StrDate[Cns_MAX_BYTES_DATE + 1]);
void Dat_ConvDateToDateStr (const struct Date *Date,char StrDate[Cns_MAX_BYTES_DATE + 1]);
void Dat_PutFormStartEndClientLocalDateTimesWithYesterdayToday (const Dat_SetHMS SetHMS[Dat_NUM_START_END_TIME]);
void Dat_PutFormStartEndClientLocalDateTimes (const time_t TimeUTC[Dat_NUM_START_END_TIME],

File diff suppressed because it is too large Load Diff

View File

@ -57,7 +57,7 @@ typedef enum
#define Exa_MAX_CHARS_SESSION (128 - 1) // 127
#define Exa_MAX_BYTES_SESSION ((Exa_MAX_CHARS_SESSION + 1) * Str_MAX_BYTES_PER_CHAR - 1) // 2047
struct ExamData
struct Exa_ExamAnnouncement
{
long CrsCod;
Exa_ExamAnnouncementStatus_t Status;
@ -83,10 +83,24 @@ struct Exa_ExamCodeAndDate
struct Date ExamDate;
};
struct Exa_ExamAnnouncements
{
unsigned NumExaAnns; // Number of announcements of exam in the list
struct Exa_ExamCodeAndDate *Lst; // List of exam announcements
long NewExaCod; // New exam announcement just created
long HighlightExaCod; // Exam announcement to be highlighted
char HighlightDate[4 + 2 + 2 + 1]; // Date with exam announcements to be highlighted (in YYYYMMDD format)
long ExaCod; // Used to put contextual icons
const char *Anchor; // Used to put contextual icons
struct Exa_ExamAnnouncement ExamAnn;
};
/*****************************************************************************/
/***************************** Public prototypes *****************************/
/*****************************************************************************/
void Exa_ResetExamAnnouncements (struct Exa_ExamAnnouncements *ExamAnns);
void Exa_PutFrmEditAExamAnnouncement (void);
void Exa_ReceiveExamAnnouncement1 (void);
void Exa_ReceiveExamAnnouncement2 (void);
@ -97,15 +111,14 @@ void Exa_RemoveExamAnnouncement2 (void);
void Exa_HideExamAnnouncement (void);
void Exa_UnhideExamAnnouncement (void);
void Exa_FreeMemExamAnnouncement (void);
void Exa_FreeListExamAnnouncements (void);
void Exa_FreeListExamAnnouncements (struct Exa_ExamAnnouncements *ExamAnns);
void Exa_ListExamAnnouncementsSee (void);
void Exa_ListExamAnnouncementsEdit (void);
void Exa_GetExaCodToHighlight (void);
void Exa_GetDateToHighlight (void);
void Exa_ListExamAnnouncementsCod (void);
void Exa_ListExamAnnouncementsDay (void);
void Exa_CreateListDatesOfExamAnnouncements (void);
void Exa_CreateListExamAnnouncements (struct Exa_ExamAnnouncements *ExamAnns);
void Exa_PutHiddenParamExaCod (long ExaCod);
void Exa_GetSummaryAndContentExamAnnouncement (char SummaryStr[Ntf_MAX_BYTES_SUMMARY + 1],

View File

@ -205,12 +205,6 @@ void Gbl_InitializeGlobals (void)
}
Gbl.Usrs.ListOtherRecipients = NULL;
Gbl.ExamAnns.NumExaAnns = 0;
Gbl.ExamAnns.Lst = NULL;
Gbl.ExamAnns.NewExaCod = -1L;
Gbl.ExamAnns.HighlightExaCod = -1L;
Gbl.ExamAnns.HighlightDate[0] = '\0'; // No exam announcements highlighted
/***** Reset current hierarchy *****/
Hie_ResetHierarchy ();
@ -415,8 +409,6 @@ void Gbl_Cleanup (void)
Usr_FreeListOtherRecipients ();
Usr_FreeListsSelectedEncryptedUsrsCods (&Gbl.Usrs.Selected);
Syl_FreeListItemsSyllabus ();
Exa_FreeMemExamAnnouncement ();
Exa_FreeListExamAnnouncements ();
if (Gbl.F.Tmp)
fclose (Gbl.F.Tmp);
Fil_CloseXMLFile ();

View File

@ -428,17 +428,6 @@ struct Globals
long HighlightNotCod; // Notice code of a notice to be highlighted
} Notices;
} Crs;
struct
{
struct Exa_ExamCodeAndDate *Lst; // List of exam announcements
unsigned NumExaAnns; // Number of announcements of exam in the list
long NewExaCod; // New exam announcement just created
long HighlightExaCod; // Exam announcement to be highlighted
char HighlightDate[4 + 2 + 2 + 1]; // Date with exam announcements to be highlighted (in YYYYMMDD format)
long ExaCod; // Used to put contextual icons
const char *Anchor; // Used to put contextual icons
struct ExamData ExaDat;
} ExamAnns;
struct
{
unsigned Id; // Each file browser in the page has a unique identifier

View File

@ -488,6 +488,7 @@ static void Lay_WriteScripts (void)
extern const char *Txt_DAYS_CAPS[7];
extern const char *Txt_DAYS_SMALL[7];
extern const char *Txt_Exam_of_X;
struct Exa_ExamAnnouncements ExamAnns;
unsigned DayOfWeek; /* 0, 1, 2, 3, 4, 5, 6 */
unsigned NumHld;
unsigned NumExamAnnouncement; // Number of exam announcement
@ -533,8 +534,11 @@ static void Lay_WriteScripts (void)
Hld_GetListHolidays ();
}
/***** Create list of calls for examination *****/
Exa_CreateListDatesOfExamAnnouncements ();
/***** Reset exam announcements context *****/
Exa_ResetExamAnnouncements (&ExamAnns);
/***** Create list of exam announcements *****/
Exa_CreateListExamAnnouncements (&ExamAnns);
/***** Write script to initialize variables used to draw months *****/
HTM_SCRIPT_Begin (NULL,NULL);
@ -567,18 +571,18 @@ static void Lay_WriteScripts (void)
HTM_TxtF ("\tvar LstExamAnnouncements = [];\n");
for (NumExamAnnouncement = 0;
NumExamAnnouncement < Gbl.ExamAnns.NumExaAnns;
NumExamAnnouncement < ExamAnns.NumExaAnns;
NumExamAnnouncement++)
HTM_TxtF ("LstExamAnnouncements.push({ ExaCod: %ld, Year: %u, Month: %u, Day: %u });\n",
Gbl.ExamAnns.Lst[NumExamAnnouncement].ExaCod,
Gbl.ExamAnns.Lst[NumExamAnnouncement].ExamDate.Year,
Gbl.ExamAnns.Lst[NumExamAnnouncement].ExamDate.Month,
Gbl.ExamAnns.Lst[NumExamAnnouncement].ExamDate.Day);
ExamAnns.Lst[NumExamAnnouncement].ExaCod,
ExamAnns.Lst[NumExamAnnouncement].ExamDate.Year,
ExamAnns.Lst[NumExamAnnouncement].ExamDate.Month,
ExamAnns.Lst[NumExamAnnouncement].ExamDate.Day);
HTM_SCRIPT_End ();
/***** Free list of dates of exam announcements *****/
Exa_FreeListExamAnnouncements ();
/***** Free list of exam announcements *****/
Exa_FreeListExamAnnouncements (&ExamAnns);
}
/***** Scripts depending on action *****/