Version 20.51.23: Mar 19, 2021 Timetable database tables renamed.

This commit is contained in:
acanas 2021-03-19 21:01:09 +01:00
parent ef28d28e0d
commit 8f8bb33b98
15 changed files with 659 additions and 628 deletions

View File

@ -3157,7 +3157,7 @@ table.CELLS_PAD_10 > tbody > tr > td {padding:10px;}
width:100%;
margin:0 auto;
}
.TT_CELL
.Tmt_CELL
{
box-sizing:border-box;
max-width:80px;
@ -3166,7 +3166,7 @@ table.CELLS_PAD_10 > tbody > tr > td {padding:10px;}
text-overflow:ellipsis;
margin:0 auto;
}
.TT_TXT
.Tmt_TXT
{
font-family:"Arial Narrow","Nimbus Sans L","DejaVu LGC Sans Condensed",sans-serif;
color:#345C6C;
@ -3174,21 +3174,21 @@ table.CELLS_PAD_10 > tbody > tr > td {padding:10px;}
line-height:100%;
letter-spacing:0;
}
.TT_DAY
.Tmt_DAY
{
font-family:"Arial Narrow","Nimbus Sans L","DejaVu LGC Sans Condensed",sans-serif;
color:#202020;
font-size:10pt;
letter-spacing:0;
}
.TT_SUNDAY
.Tmt_SUNDAY
{
font-family:"Arial Narrow","Nimbus Sans L","DejaVu LGC Sans Condensed",sans-serif;
color:red;
font-size:10pt;
letter-spacing:0;
}
.TT_HOUR_BIG
.Tmt_HOUR_BIG
{
color:#808080;
font-size:10pt;
@ -3196,7 +3196,7 @@ table.CELLS_PAD_10 > tbody > tr > td {padding:10px;}
line-height:100%;
letter-spacing:0;
}
.TT_HOUR_SMALL
.Tmt_HOUR_SMALL
{
font-family:"Arial Narrow","Nimbus Sans L","DejaVu LGC Sans Condensed",sans-serif;
color:#A0A0A0;
@ -3204,18 +3204,18 @@ table.CELLS_PAD_10 > tbody > tr > td {padding:10px;}
line-height:100%;
letter-spacing:0;
}
.TT_HOURCOL {box-sizing:border-box; height:16px; width:7%;}
.TT_HOUR {box-sizing:border-box; height:32px; width:7%;}
.TT_MINICOL {box-sizing:border-box; height:16px; width:2%;}
.TT_ALIGN {box-sizing:border-box; height:16px; width:1%;}
.TT_FREE0 {box-sizing:border-box; height:16px; background-color:#F4F2EA; border:solid 1px; border-color:#F4F2EA #E0D9C2 #EEEADC #F4F2EA;}
.TT_FREE1 {box-sizing:border-box; height:16px; background-color:#F4F2EA; border:solid 1px; border-color:#F4F2EA #E0D9C2 #E0D9C2 #F4F2EA;}
.TT_FREE2 {box-sizing:border-box; height:16px; background-color:#FBFAF7; border:solid 1px; border-color:#FBFAF7 #E0D9C2 #F5F2E9 #FBFAF7;}
.TT_FREE3 {box-sizing:border-box; height:16px; background-color:#FBFAF7; border:solid 1px; border-color:#FBFAF7 #E0D9C2 #E0D9C2 #FBFAF7;}
.TT_LECT {box-sizing:border-box; height:16px; background-color:#C0DAE4; border:solid 2px; border-color:#D5F1FC #AAC1C9 #AAC1C9 #D5F1FC;}
.TT_PRAC {box-sizing:border-box; height:16px; background-color:#DBE5E9; border:solid 2px; border-color:#EDF8FC #C7D0D4 #C7D0D4 #EDF8FC;}
.TT_TUTO {box-sizing:border-box; height:16px; background-color:#D6E9C3; border:solid 2px; border-color:#E8FCD3 #C2D4B1 #C2D4B1 #E8FCD3;}
.TT_TYP, .TT_DUR, .TT_GRP, .TT_INF
.Tmt_HOURCOL {box-sizing:border-box; height:16px; width:7%;}
.Tmt_HOUR {box-sizing:border-box; height:32px; width:7%;}
.Tmt_MINICOL {box-sizing:border-box; height:16px; width:2%;}
.Tmt_ALIGN {box-sizing:border-box; height:16px; width:1%;}
.Tmt_FREE0 {box-sizing:border-box; height:16px; background-color:#F4F2EA; border:solid 1px; border-color:#F4F2EA #E0D9C2 #EEEADC #F4F2EA;}
.Tmt_FREE1 {box-sizing:border-box; height:16px; background-color:#F4F2EA; border:solid 1px; border-color:#F4F2EA #E0D9C2 #E0D9C2 #F4F2EA;}
.Tmt_FREE2 {box-sizing:border-box; height:16px; background-color:#FBFAF7; border:solid 1px; border-color:#FBFAF7 #E0D9C2 #F5F2E9 #FBFAF7;}
.Tmt_FREE3 {box-sizing:border-box; height:16px; background-color:#FBFAF7; border:solid 1px; border-color:#FBFAF7 #E0D9C2 #E0D9C2 #FBFAF7;}
.Tmt_LECT {box-sizing:border-box; height:16px; background-color:#C0DAE4; border:solid 2px; border-color:#D5F1FC #AAC1C9 #AAC1C9 #D5F1FC;}
.Tmt_PRAC {box-sizing:border-box; height:16px; background-color:#DBE5E9; border:solid 2px; border-color:#EDF8FC #C7D0D4 #C7D0D4 #EDF8FC;}
.Tmt_TUTO {box-sizing:border-box; height:16px; background-color:#D6E9C3; border:solid 2px; border-color:#E8FCD3 #C2D4B1 #C2D4B1 #E8FCD3;}
.Tmt_TYP, .Tmt_DUR, .Tmt_GRP, .Tmt_INF
{
width:80px;
font-family:"Arial Narrow","Nimbus Sans L","DejaVu LGC Sans Condensed",sans-serif;
@ -3410,14 +3410,14 @@ table.CELLS_PAD_10 > tbody > tr > td {padding:10px;}
}
/********************************* Attendance ********************************/
.ATT_CHECK
.ATmt_CHECK
{
display:inline-block;
font-size:13pt;
font-weight:bold;
color:darkgreen;
}
.ATT_CROSS
.ATmt_CROSS
{
display:inline-block;
font-size:13pt;

View File

@ -1362,9 +1362,9 @@ CREATE TABLE IF NOT EXISTS svy_users (
UsrCod INT NOT NULL,
UNIQUE INDEX(SvyCod,UsrCod));
--
-- Table timetable_crs: stores the timetables of the courses
-- Table tmt_courses: stores the timetables of the courses
--
CREATE TABLE IF NOT EXISTS timetable_crs (
CREATE TABLE IF NOT EXISTS tmt_courses (
CrsCod INT NOT NULL DEFAULT -1,
GrpCod INT NOT NULL DEFAULT -1,
Weekday TINYINT NOT NULL,
@ -1374,9 +1374,9 @@ CREATE TABLE IF NOT EXISTS timetable_crs (
Info VARCHAR(2047) NOT NULL DEFAULT '',
INDEX(CrsCod,GrpCod));
--
-- Table timetable_tut: stores the timetables of office hours of the teachers
-- Table tmt_tutoring: stores the timetables of tutoring hours of the teachers
--
CREATE TABLE IF NOT EXISTS timetable_tut (
CREATE TABLE IF NOT EXISTS tmt_tutoring (
UsrCod INT NOT NULL,
Weekday TINYINT NOT NULL,
StartTime TIME NOT NULL,

View File

@ -415,7 +415,7 @@ const struct Act_Actions Act_Actions[Act_NUM_ACTIONS] =
[ActSeeBib ] = { 32, 4,TabCrs,ActSeeBib ,0x3F8,0x3C7, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Inf_ShowInfo ,"book" },
[ActSeeFAQ ] = { 54, 5,TabCrs,ActSeeFAQ ,0x238,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Inf_ShowInfo ,"question" },
[ActSeeCrsLnk ] = { 9, 6,TabCrs,ActSeeCrsLnk ,0x238,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Inf_ShowInfo ,"link" },
[ActSeeCrsTT ] = { 25, 7,TabCrs,ActSeeCrsTT ,0x3F8,0x3C7, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,TT_ShowClassTimeTable ,"clock" },
[ActSeeCrsTT ] = { 25, 7,TabCrs,ActSeeCrsTT ,0x3F8,0x3C7, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Tmt_ShowClassTimeTable ,"clock" },
// Actions not in menu:
[ActPrnCrsInf ] = {1028,-1,TabUnk,ActSeeCrsInf ,0x3F8,0x3C7, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_NEW_TAB,NULL ,CrsCfg_PrintConfiguration ,NULL},
@ -544,10 +544,10 @@ const struct Act_Actions Act_Actions[Act_NUM_ACTIONS] =
[ActRcvRchTxtFAQ ] = {1106,-1,TabUnk,ActSeeFAQ ,0x220,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Inf_RecAndChangeRichTxtInfo ,NULL},
[ActRcvRchTxtCrsLnk ] = {1107,-1,TabUnk,ActSeeCrsLnk ,0x220,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Inf_RecAndChangeRichTxtInfo ,NULL},
[ActPrnCrsTT ] = { 152,-1,TabUnk,ActSeeCrsTT ,0x3F8,0x3C7, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_NEW_TAB,NULL ,TT_ShowClassTimeTable ,NULL},
[ActEdiCrsTT ] = { 45,-1,TabUnk,ActSeeCrsTT ,0x220,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,TT_EditCrsTimeTable ,NULL},
[ActChgCrsTT ] = { 53,-1,TabUnk,ActSeeCrsTT ,0x220,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,TT_EditCrsTimeTable ,NULL},
[ActChgCrsTT1stDay ] = {1486,-1,TabUnk,ActSeeCrsTT ,0x3F8,0x3C7, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,Cal_ChangeFirstDayOfWeek ,TT_ShowClassTimeTable ,NULL},
[ActPrnCrsTT ] = { 152,-1,TabUnk,ActSeeCrsTT ,0x3F8,0x3C7, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_NEW_TAB,NULL ,Tmt_ShowClassTimeTable ,NULL},
[ActEdiCrsTT ] = { 45,-1,TabUnk,ActSeeCrsTT ,0x220,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Tmt_EditCrsTimeTable ,NULL},
[ActChgCrsTT ] = { 53,-1,TabUnk,ActSeeCrsTT ,0x220,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Tmt_EditCrsTimeTable ,NULL},
[ActChgCrsTT1stDay ] = {1486,-1,TabUnk,ActSeeCrsTT ,0x3F8,0x3C7, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,Cal_ChangeFirstDayOfWeek ,Tmt_ShowClassTimeTable ,NULL},
// TabAss ******************************************************************
// Actions in menu:
@ -1740,7 +1740,7 @@ const struct Act_Actions Act_Actions[Act_NUM_ACTIONS] =
// Actions in menu:
[ActFrmRolSes ] = { 843, 0,TabPrf,ActFrmRolSes ,0x3F8,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Usr_WriteFormLogout ,"power-off" },
[ActMyCrs ] = { 987, 1,TabPrf,ActMyCrs ,0x3F8,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Crs_ReqSelectOneOfMyCourses ,"sitemap" },
[ActSeeMyTT ] = { 408, 2,TabPrf,ActSeeMyTT ,0x3F8,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,TT_ShowClassTimeTable ,"clock" },
[ActSeeMyTT ] = { 408, 2,TabPrf,ActSeeMyTT ,0x3F8,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Tmt_ShowClassTimeTable ,"clock" },
[ActSeeMyAgd ] = {1602, 3,TabPrf,ActSeeMyAgd ,0x3F8,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Agd_GetParamsAndShowMyAgenda ,"calendar" },
[ActFrmMyAcc ] = { 36, 4,TabPrf,ActFrmMyAcc ,0x3F8,0x3C7,0x3C7,0x3C7,0x3C7,0x3C7,0x3C7,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Acc_ShowFormMyAccount ,"at" },
[ActReqEdiRecSha ] = { 285, 5,TabPrf,ActReqEdiRecSha ,0x3F8,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Rec_ShowMySharedRecordAndMore ,"address-card" },
@ -1814,10 +1814,10 @@ const struct Act_Actions Act_Actions[Act_NUM_ACTIONS] =
[ActPrnUsrQR ] = {1022,-1,TabUnk,ActFrmMyAcc ,0x3F8,0x3C7,0x3C7,0x3C7,0x3C7,0x3C7,0x3C7,Act_CONT_NORM,Act_BRW_NEW_TAB,NULL ,Usr_PrintUsrQRCode ,NULL},
[ActPrnMyTT ] = { 409,-1,TabUnk,ActSeeMyTT ,0x3F8,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,Act_CONT_NORM,Act_BRW_NEW_TAB,NULL ,TT_ShowClassTimeTable ,NULL},
[ActEdiTut ] = { 65,-1,TabUnk,ActSeeMyTT ,0x3F8,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,TT_EditMyTutTimeTable ,NULL},
[ActChgTut ] = { 48,-1,TabUnk,ActSeeMyTT ,0x3F8,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,TT_EditMyTutTimeTable ,NULL},
[ActChgMyTT1stDay ] = {1487,-1,TabUnk,ActSeeMyTT ,0x3F8,0x3C7,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,Act_CONT_NORM,Act_BRW_1ST_TAB,Cal_ChangeFirstDayOfWeek ,TT_ShowClassTimeTable ,NULL},
[ActPrnMyTT ] = { 409,-1,TabUnk,ActSeeMyTT ,0x3F8,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,Act_CONT_NORM,Act_BRW_NEW_TAB,NULL ,Tmt_ShowClassTimeTable ,NULL},
[ActEdiTut ] = { 65,-1,TabUnk,ActSeeMyTT ,0x3F8,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Tmt_EditMyTutTimeTable ,NULL},
[ActChgTut ] = { 48,-1,TabUnk,ActSeeMyTT ,0x3F8,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Tmt_EditMyTutTimeTable ,NULL},
[ActChgMyTT1stDay ] = {1487,-1,TabUnk,ActSeeMyTT ,0x3F8,0x3C7,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,Act_CONT_NORM,Act_BRW_1ST_TAB,Cal_ChangeFirstDayOfWeek ,Tmt_ShowClassTimeTable ,NULL},
};
Act_Action_t Act_FromActCodToAction[1 + Act_MAX_ACTION_COD] = // Do not reuse unique action codes!

View File

@ -206,7 +206,7 @@ void Att_SeeAttEvents (void)
/***** Get parameters *****/
Events.SelectedOrder = Att_GetParamAttOrder ();
Grp_GetParamWhichGroups ();
Events.CurrentPage = Pag_GetParamPagNum (Pag_ATT_EVENTS);
Events.CurrentPage = Pag_GetParamPagNum (Pag_ATmt_EVENTS);
/***** Get list of attendance events *****/
Att_GetListAttEvents (&Events,Att_NEWEST_FIRST);
@ -256,7 +256,7 @@ static void Att_ShowAllAttEvents (struct Att_Events *Events)
}
/***** Write links to pages *****/
Pag_WriteLinksToPagesCentered (Pag_ATT_EVENTS,&Pagination,
Pag_WriteLinksToPagesCentered (Pag_ATmt_EVENTS,&Pagination,
Events,-1L);
if (Events->Num)
@ -275,7 +275,7 @@ static void Att_ShowAllAttEvents (struct Att_Events *Events)
Frm_BeginForm (ActSeeAtt);
WhichGroups = Grp_GetParamWhichGroups ();
Grp_PutParamWhichGroups (&WhichGroups);
Pag_PutHiddenParamPagNum (Pag_ATT_EVENTS,Events->CurrentPage);
Pag_PutHiddenParamPagNum (Pag_ATmt_EVENTS,Events->CurrentPage);
Dat_PutHiddenParamOrder (Order);
HTM_BUTTON_SUBMIT_Begin (Txt_START_END_TIME_HELP[Order],"BT_LINK TIT_TBL",NULL);
if (Order == Events->SelectedOrder)
@ -308,7 +308,7 @@ static void Att_ShowAllAttEvents (struct Att_Events *Events)
Ale_ShowAlert (Ale_INFO,Txt_No_events);
/***** Write again links to pages *****/
Pag_WriteLinksToPagesCentered (Pag_ATT_EVENTS,&Pagination,
Pag_WriteLinksToPagesCentered (Pag_ATmt_EVENTS,&Pagination,
Events,-1L);
/***** Button to create a new attendance event *****/
@ -331,7 +331,7 @@ static void Att_ParamsWhichGroupsToShow (void *Events)
if (Events)
{
Dat_PutHiddenParamOrder (((struct Att_Events *) Events)->SelectedOrder);
Pag_PutHiddenParamPagNum (Pag_ATT_EVENTS,((struct Att_Events *) Events)->CurrentPage);
Pag_PutHiddenParamPagNum (Pag_ATmt_EVENTS,((struct Att_Events *) Events)->CurrentPage);
}
}
@ -416,7 +416,7 @@ static void Att_PutParamsToCreateNewAttEvent (void *Events)
Dat_PutHiddenParamOrder (((struct Att_Events *) Events)->SelectedOrder);
WhichGroups = Grp_GetParamWhichGroups ();
Grp_PutParamWhichGroups (&WhichGroups);
Pag_PutHiddenParamPagNum (Pag_ATT_EVENTS,((struct Att_Events *) Events)->CurrentPage);
Pag_PutHiddenParamPagNum (Pag_ATmt_EVENTS,((struct Att_Events *) Events)->CurrentPage);
}
}
@ -433,7 +433,7 @@ static void Att_PutParamsToListUsrsAttendance (void *Events)
Dat_PutHiddenParamOrder (((struct Att_Events *) Events)->SelectedOrder);
WhichGroups = Grp_GetParamWhichGroups ();
Grp_PutParamWhichGroups (&WhichGroups);
Pag_PutHiddenParamPagNum (Pag_ATT_EVENTS,((struct Att_Events *) Events)->CurrentPage);
Pag_PutHiddenParamPagNum (Pag_ATmt_EVENTS,((struct Att_Events *) Events)->CurrentPage);
}
}
@ -635,7 +635,7 @@ static void Att_PutParams (void *Events)
Dat_PutHiddenParamOrder (((struct Att_Events *) Events)->SelectedOrder);
WhichGroups = Grp_GetParamWhichGroups ();
Grp_PutParamWhichGroups (&WhichGroups);
Pag_PutHiddenParamPagNum (Pag_ATT_EVENTS,((struct Att_Events *) Events)->CurrentPage);
Pag_PutHiddenParamPagNum (Pag_ATmt_EVENTS,((struct Att_Events *) Events)->CurrentPage);
}
}
@ -929,7 +929,7 @@ void Att_AskRemAttEvent (void)
/***** Get parameters *****/
Events.SelectedOrder = Att_GetParamAttOrder ();
Grp_GetParamWhichGroups ();
Events.CurrentPage = Pag_GetParamPagNum (Pag_ATT_EVENTS);
Events.CurrentPage = Pag_GetParamPagNum (Pag_ATmt_EVENTS);
/***** Get attendance event code *****/
if ((Event.AttCod = Att_GetParamAttCod ()) == -1L)
@ -944,7 +944,7 @@ void Att_AskRemAttEvent (void)
Dat_PutHiddenParamOrder (Events.SelectedOrder);
WhichGroups = Grp_GetParamWhichGroups ();
Grp_PutParamWhichGroups (&WhichGroups);
Pag_PutHiddenParamPagNum (Pag_ATT_EVENTS,Events.CurrentPage);
Pag_PutHiddenParamPagNum (Pag_ATmt_EVENTS,Events.CurrentPage);
/* Ask for confirmation of removing */
Ale_ShowAlert (Ale_WARNING,Txt_Do_you_really_want_to_remove_the_event_X,
@ -1101,7 +1101,7 @@ void Att_RequestCreatOrEditAttEvent (void)
/***** Get parameters *****/
Events.SelectedOrder = Att_GetParamAttOrder ();
Grp_GetParamWhichGroups ();
Events.CurrentPage = Pag_GetParamPagNum (Pag_ATT_EVENTS);
Events.CurrentPage = Pag_GetParamPagNum (Pag_ATmt_EVENTS);
/***** Get the code of the attendance event *****/
Event.AttCod = Att_GetParamAttCod ();
@ -1141,7 +1141,7 @@ void Att_RequestCreatOrEditAttEvent (void)
Dat_PutHiddenParamOrder (Events.SelectedOrder);
WhichGroups = Grp_GetParamWhichGroups ();
Grp_PutParamWhichGroups (&WhichGroups);
Pag_PutHiddenParamPagNum (Pag_ATT_EVENTS,Events.CurrentPage);
Pag_PutHiddenParamPagNum (Pag_ATmt_EVENTS,Events.CurrentPage);
/***** Begin box and table *****/
if (ItsANewAttEvent)
@ -1279,7 +1279,7 @@ static void Att_ShowLstGrpsToEditAttEvent (long AttCod)
NumGrpTyp++)
if (Gbl.Crs.Grps.GrpTypes.LstGrpTypes[NumGrpTyp].NumGrps)
Grp_ListGrpsToEditAsgAttSvyEvtMch (&Gbl.Crs.Grps.GrpTypes.LstGrpTypes[NumGrpTyp],
Grp_ATT_EVENT,AttCod);
Grp_ATmt_EVENT,AttCod);
/***** End table and box *****/
Box_BoxTableEnd ();
@ -1883,7 +1883,7 @@ static void Att_ShowEvent (struct Att_Events *Events)
/***** Get parameters *****/
Events->SelectedOrder = Att_GetParamAttOrder ();
Grp_GetParamWhichGroups ();
Events->CurrentPage = Pag_GetParamPagNum (Pag_ATT_EVENTS);
Events->CurrentPage = Pag_GetParamPagNum (Pag_ATmt_EVENTS);
/***** Begin box and table *****/
Box_BoxTableBegin (NULL,Txt_Event,
@ -3530,12 +3530,12 @@ static void Att_PutCheckOrCross (bool Present)
if (Present)
{
HTM_DIV_Begin ("class=\"ATT_CHECK\" title=\"%s\"",Txt_Present);
HTM_DIV_Begin ("class=\"ATmt_CHECK\" title=\"%s\"",Txt_Present);
HTM_Txt ("✓");
}
else
{
HTM_DIV_Begin ("class=\"ATT_CROSS\" title=\"%s\"",Txt_Absent);
HTM_DIV_Begin ("class=\"ATmt_CROSS\" title=\"%s\"",Txt_Absent);
HTM_Txt ("✗");
}
HTM_DIV_End ();

View File

@ -600,14 +600,19 @@ TODO: Salvador Romero Cort
TODO: FIX BUG, URGENT! En las fechas como parámetro Dat_WriteParamsIniEndDates(), por ejemplo al cambiar el color de la gráfica de accesos por día y hora, no se respeta la zona horaria.
*/
#define Log_PLATFORM_VERSION "SWAD 20.51.22 (2021-03-19)"
#define Log_PLATFORM_VERSION "SWAD 20.51.23 (2021-03-19)"
#define CSS_FILE "swad20.45.css"
#define JS_FILE "swad20.6.2.js"
/*
TODO: Rename CENTRE to CENTER in help wiki.
TODO: Rename ASSESSMENT.Announcements to ASSESSMENT.Calls_for_exams
Version 20.51.22: Mar 19, 2021 Rooms database tables renamed. (308117 lines)
Version 20.51.23: Mar 19, 2021 Timetable database tables renamed. (308151 lines)
2 changes necessary in database:
RENAME TABLE timetable_crs TO tmt_courses;
RENAME TABLE timetable_tut TO tmt_tutoring;
Version 20.51.22: Mar 19, 2021 Pending database tables renamed. (308117 lines)
2 changes necessary in database:
RENAME TABLE pending_emails TO usr_pending_emails;
RENAME TABLE pending_passwd TO usr_pending_passwd;

View File

@ -1931,7 +1931,7 @@ static void Crs_EmptyCourseCompletely (long CrsCod)
/***** Remove information of the course ****/
/* Remove timetable of the course */
DB_QueryDELETE ("can not remove the timetable of a course",
"DELETE FROM timetable_crs"
"DELETE FROM tmt_courses"
" WHERE CrsCod=%ld",
CrsCod);

View File

@ -2871,9 +2871,9 @@ mysql> DESCRIBE svy_users;
"UsrCod INT NOT NULL,"
"UNIQUE INDEX(SvyCod,UsrCod))");
/***** Table timetable_crs *****/
/***** Table tmt_courses *****/
/*
mysql> DESCRIBE timetable_crs;
mysql> DESCRIBE tmt_courses;
+-----------+------------------------------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+-----------+------------------------------------+------+-----+---------+-------+
@ -2887,19 +2887,19 @@ mysql> DESCRIBE timetable_crs;
+-----------+------------------------------------+------+-----+---------+-------+
7 rows in set (0.00 sec)
*/
DB_CreateTable ("CREATE TABLE IF NOT EXISTS timetable_crs ("
DB_CreateTable ("CREATE TABLE IF NOT EXISTS tmt_courses ("
"CrsCod INT NOT NULL DEFAULT -1,"
"GrpCod INT NOT NULL DEFAULT -1,"
"Weekday TINYINT NOT NULL," // 0=Monday...6=Sunday
"StartTime TIME NOT NULL,"
"Duration TIME NOT NULL,"
"ClassType ENUM('free','lecture','practical') NOT NULL,"
"Info VARCHAR(2047) NOT NULL DEFAULT ''," // TT_MAX_BYTES_INFO
"Info VARCHAR(2047) NOT NULL DEFAULT ''," // Tmt_MAX_BYTES_INFO
"INDEX(CrsCod,GrpCod))");
/***** Table timetable_tut *****/
/***** Table tmt_tutoring *****/
/*
mysql> DESCRIBE timetable_tut;
mysql> DESCRIBE tmt_tutoring;
+-----------+---------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+-----------+---------------+------+-----+---------+-------+
@ -2911,12 +2911,12 @@ mysql> DESCRIBE timetable_tut;
+-----------+---------------+------+-----+---------+-------+
5 rows in set (0.00 sec)
*/
DB_CreateTable ("CREATE TABLE IF NOT EXISTS timetable_tut ("
DB_CreateTable ("CREATE TABLE IF NOT EXISTS tmt_tutoring ("
"UsrCod INT NOT NULL,"
"Weekday TINYINT NOT NULL," // 0=Monday...6=Sunday
"StartTime TIME NOT NULL,"
"Duration TIME NOT NULL,"
"Info VARCHAR(2047) NOT NULL DEFAULT ''," // TT_MAX_BYTES_INFO
"Info VARCHAR(2047) NOT NULL DEFAULT ''," // Tmt_MAX_BYTES_INFO
"INDEX(UsrCod))");
/***** Table tml_comments *****/

View File

@ -1693,7 +1693,7 @@ void Grp_ListGrpsToEditAsgAttSvyEvtMch (struct GroupType *GrpTyp,
} AssociationsToGrps[Grp_NUM_ASSOCIATIONS_TO_GROUPS] =
{
[Grp_ASSIGNMENT] = {"asg_grp" ,"AsgCod"},
[Grp_ATT_EVENT ] = {"att_grp" ,"AttCod"},
[Grp_ATmt_EVENT ] = {"att_grp" ,"AttCod"},
[Grp_SURVEY ] = {"svy_grp" ,"SvyCod"},
[Grp_EXA_EVENT ] = {"exa_groups","SesCod"},
[Grp_MATCH ] = {"mch_groups","MchCod"},
@ -4117,9 +4117,12 @@ static void Grp_RemoveGroupTypeCompletely (void)
/***** Change all groups of this type in course timetable *****/
DB_QueryUPDATE ("can not update all groups of a type in course timetable",
"UPDATE timetable_crs SET GrpCod=-1"
"UPDATE tmt_courses"
" SET GrpCod=-1"
" WHERE GrpCod IN"
" (SELECT GrpCod FROM crs_grp WHERE GrpTypCod=%ld)",
" (SELECT GrpCod"
" FROM crs_grp"
" WHERE GrpTypCod=%ld)",
Gbl.Crs.Grps.GrpTyp.GrpTypCod);
/***** Remove all the students in groups of this type *****/
@ -4178,7 +4181,9 @@ static void Grp_RemoveGroupCompletely (void)
/***** Change this group in course timetable *****/
DB_QueryUPDATE ("can not update a group in course timetable",
"UPDATE timetable_crs SET GrpCod=-1 WHERE GrpCod=%ld",
"UPDATE tmt_courses"
" SET GrpCod=-1"
" WHERE GrpCod=%ld",
Gbl.Crs.Grps.GrpCod);
/***** Remove all the students in this group *****/

View File

@ -136,7 +136,7 @@ typedef enum
typedef enum
{
Grp_ASSIGNMENT,
Grp_ATT_EVENT,
Grp_ATmt_EVENT,
Grp_SURVEY,
Grp_EXA_EVENT,
Grp_MATCH,

View File

@ -67,7 +67,7 @@ static const char *Pag_ParamNumPag[Pag_NUM_WHAT_PAGINATE] =
[Pag_EXAMS ] = "NumPagExa",
[Pag_GAMES ] = "NumPagGam",
[Pag_SURVEYS ] = "NumPagSvy",
[Pag_ATT_EVENTS ] = "NumPagAtt",
[Pag_ATmt_EVENTS ] = "NumPagAtt",
[Pag_THREADS_FORUM ] = "NumPagThr",
[Pag_POSTS_FORUM ] = "NumPagPst",
[Pag_MESSAGES_RECEIVED] = "NumPagRcv",
@ -211,7 +211,7 @@ void Pag_WriteLinksToPages (Pag_WhatPaginate_t WhatPaginate,
WhichGroups = Grp_GetParamWhichGroups ();
Grp_PutParamWhichGroups (&WhichGroups);
break;
case Pag_ATT_EVENTS:
case Pag_ATmt_EVENTS:
Frm_StartFormAnchor (ActSeeAtt,Pagination->Anchor);
Pag_PutHiddenParamPagNum (WhatPaginate,1);
Dat_PutHiddenParamOrder (((struct Att_Events *) Context)->SelectedOrder);
@ -338,7 +338,7 @@ void Pag_WriteLinksToPages (Pag_WhatPaginate_t WhatPaginate,
WhichGroups = Grp_GetParamWhichGroups ();
Grp_PutParamWhichGroups (&WhichGroups);
break;
case Pag_ATT_EVENTS:
case Pag_ATmt_EVENTS:
Frm_StartFormAnchor (ActSeeAtt,Pagination->Anchor);
Pag_PutHiddenParamPagNum (WhatPaginate,1);
Dat_PutHiddenParamOrder (((struct Att_Events *) Context)->SelectedOrder);
@ -451,7 +451,7 @@ void Pag_WriteLinksToPages (Pag_WhatPaginate_t WhatPaginate,
WhichGroups = Grp_GetParamWhichGroups ();
Grp_PutParamWhichGroups (&WhichGroups);
break;
case Pag_ATT_EVENTS:
case Pag_ATmt_EVENTS:
Frm_StartFormAnchor (ActSeeAtt,Pagination->Anchor);
Pag_PutHiddenParamPagNum (WhatPaginate,Pagination->LeftPage);
Dat_PutHiddenParamOrder (((struct Att_Events *) Context)->SelectedOrder);
@ -576,7 +576,7 @@ void Pag_WriteLinksToPages (Pag_WhatPaginate_t WhatPaginate,
WhichGroups = Grp_GetParamWhichGroups ();
Grp_PutParamWhichGroups (&WhichGroups);
break;
case Pag_ATT_EVENTS:
case Pag_ATmt_EVENTS:
Frm_StartFormAnchor (ActSeeAtt,Pagination->Anchor);
Pag_PutHiddenParamPagNum (WhatPaginate,NumPage);
Dat_PutHiddenParamOrder (((struct Att_Events *) Context)->SelectedOrder);
@ -688,7 +688,7 @@ void Pag_WriteLinksToPages (Pag_WhatPaginate_t WhatPaginate,
WhichGroups = Grp_GetParamWhichGroups ();
Grp_PutParamWhichGroups (&WhichGroups);
break;
case Pag_ATT_EVENTS:
case Pag_ATmt_EVENTS:
Frm_StartFormAnchor (ActSeeAtt,Pagination->Anchor);
Pag_PutHiddenParamPagNum (WhatPaginate,Pagination->RightPage);
Dat_PutHiddenParamOrder (((struct Att_Events *) Context)->SelectedOrder);
@ -801,7 +801,7 @@ void Pag_WriteLinksToPages (Pag_WhatPaginate_t WhatPaginate,
WhichGroups = Grp_GetParamWhichGroups ();
Grp_PutParamWhichGroups (&WhichGroups);
break;
case Pag_ATT_EVENTS:
case Pag_ATmt_EVENTS:
Frm_StartFormAnchor (ActSeeAtt,Pagination->Anchor);
Pag_PutHiddenParamPagNum (WhatPaginate,Pagination->NumPags);
Dat_PutHiddenParamOrder (((struct Att_Events *) Context)->SelectedOrder);

View File

@ -48,7 +48,7 @@ typedef enum
Pag_EXAMS = 3,
Pag_GAMES = 4,
Pag_SURVEYS = 5,
Pag_ATT_EVENTS = 6,
Pag_ATmt_EVENTS = 6,
Pag_THREADS_FORUM = 7,
Pag_POSTS_FORUM = 8,
Pag_MESSAGES_RECEIVED = 9,

View File

@ -1253,8 +1253,8 @@ void Rec_GetUsrAndShowRecOneTchCrs (void)
static void Rec_ShowRecordOneTchCrs (void)
{
extern const char *Hlp_USERS_Teachers_timetable;
extern const char *Txt_TIMETABLE_TYPES[TT_NUM_TIMETABLE_TYPES];
struct TT_Timetable Timetable;
extern const char *Txt_TIMETABLE_TYPES[Tmt_NUM_TIMETABLE_TYPES];
struct Tmt_Timetable Timetable;
char Width[Cns_MAX_DECIMAL_DIGITS_UINT + 2 + 1];
bool ShowOfficeHours;
@ -1301,11 +1301,11 @@ static void Rec_ShowRecordOneTchCrs (void)
if (ShowOfficeHours)
{
HTM_DIV_Begin ("class=\"REC_RIGHT\"");
Timetable.Type = TT_TUTORING_TIMETABLE;
Timetable.Type = Tmt_TUTORING_TIMETABLE;
Box_BoxBegin (Width,Txt_TIMETABLE_TYPES[Timetable.Type],
NULL,NULL,
Hlp_USERS_Teachers_timetable,Box_NOT_CLOSABLE);
TT_ShowTimeTable (&Timetable,Gbl.Usrs.Other.UsrDat.UsrCod);
Tmt_ShowTimeTable (&Timetable,Gbl.Usrs.Other.UsrDat.UsrCod);
Box_BoxEnd ();
HTM_DIV_End ();
}
@ -1333,8 +1333,8 @@ void Rec_ListRecordsTchsPrint (void)
static void Rec_ListRecordsTchs (Rec_SharedRecordViewType_t TypeOfView)
{
extern const char *Hlp_USERS_Teachers_timetable;
extern const char *Txt_TIMETABLE_TYPES[TT_NUM_TIMETABLE_TYPES];
struct TT_Timetable Timetable;
extern const char *Txt_TIMETABLE_TYPES[Tmt_NUM_TIMETABLE_TYPES];
struct Tmt_Timetable Timetable;
unsigned NumUsr = 0;
const char *Ptr;
struct UsrData UsrDat;
@ -1420,11 +1420,11 @@ static void Rec_ListRecordsTchs (Rec_SharedRecordViewType_t TypeOfView)
if (ShowOfficeHours)
{
HTM_DIV_Begin ("class=\"REC_RIGHT\"");
Timetable.Type = TT_TUTORING_TIMETABLE;
Timetable.Type = Tmt_TUTORING_TIMETABLE;
Box_BoxBegin (Width,Txt_TIMETABLE_TYPES[Timetable.Type],
NULL,NULL,
Hlp_USERS_Teachers_timetable,Box_NOT_CLOSABLE);
TT_ShowTimeTable (&Timetable,UsrDat.UsrCod);
Tmt_ShowTimeTable (&Timetable,UsrDat.UsrCod);
Box_BoxEnd ();
HTM_DIV_End ();
}
@ -1494,26 +1494,26 @@ static void Rec_GetParamRecordsPerPage (void)
static void Rec_WriteFormShowOfficeHoursOneTch (bool ShowOfficeHours)
{
extern const char *Txt_Show_office_hours;
extern const char *Txt_Show_tutoring_hours;
Lay_PutContextualCheckbox (ActSeeRecOneTch,
Rec_PutParamsShowOfficeHoursOneTch,
"ShowOfficeHours",
ShowOfficeHours,false,
Txt_Show_office_hours,
Txt_Show_office_hours);
Txt_Show_tutoring_hours,
Txt_Show_tutoring_hours);
}
static void Rec_WriteFormShowOfficeHoursSeveralTchs (bool ShowOfficeHours)
{
extern const char *Txt_Show_office_hours;
extern const char *Txt_Show_tutoring_hours;
Lay_PutContextualCheckbox (ActSeeRecSevTch,
Rec_PutParamsShowOfficeHoursSeveralTchs,
"ShowOfficeHours",
ShowOfficeHours,false,
Txt_Show_office_hours,
Txt_Show_office_hours);
Txt_Show_tutoring_hours,
Txt_Show_tutoring_hours);
}
static void Rec_PutParamsShowOfficeHoursOneTch (void)

View File

@ -42446,27 +42446,6 @@ const char *Txt_Show_next_X_clicks = // Warning: it is very important to include
"Mostrar %ld cliques subsequentes";
#endif
const char *Txt_Show_office_hours =
#if L==1 // ca
"Mostra horaris tutories";
#elif L==2 // de
"Geschäftszeiten anzeigen";
#elif L==3 // en
"Show office hours";
#elif L==4 // es
"Ver horarios tutorías";
#elif L==5 // fr
"Voir horaires tuteur";
#elif L==6 // gn
"Ver horarios tutorías"; // Okoteve traducción
#elif L==7 // it
"Mostra orari tutoraggi";
#elif L==8 // pl
"Pokaż godzin pracy biura";
#elif L==9 // pt
"Mostrar horários tutor";
#endif
const char *Txt_Show_previous_X_clicks = // Warning: it is very important to include %ld in the following sentences
#if L==1 // ca
"Mostrar %ld clics anteriores"; // Necessita traduccio
@ -42530,6 +42509,27 @@ const char *Txt_Show_statistic =
"Mostrar estatística";
#endif
const char *Txt_Show_tutoring_hours =
#if L==1 // ca
"Mostra horaris tutories";
#elif L==2 // de
"Geschäftszeiten anzeigen";
#elif L==3 // en
"Show tutoring hours";
#elif L==4 // es
"Ver horarios tutorías";
#elif L==5 // fr
"Voir horaires tuteur";
#elif L==6 // gn
"Ver horarios tutorías"; // Okoteve traducción
#elif L==7 // it
"Mostra orari tutoraggi";
#elif L==8 // pl
"Pokaż godzin pracy biura";
#elif L==9 // pt
"Mostrar horários tutor";
#endif
const char *Txt_Shuffle =
#if L==1 // ca
"Barrejar";
@ -53058,9 +53058,9 @@ const char *Txt_TIMELINE_posts =
"publicações";
#endif
const char *Txt_TIMETABLE_TYPES[TT_NUM_TIMETABLE_TYPES] =
const char *Txt_TIMETABLE_TYPES[Tmt_NUM_TIMETABLE_TYPES] =
{
[TT_COURSE_TIMETABLE] =
[Tmt_COURSE_TIMETABLE] =
#if L==1 // ca
"Horari de classes de l'assignatura"
#elif L==2 // de
@ -53081,7 +53081,7 @@ const char *Txt_TIMETABLE_TYPES[TT_NUM_TIMETABLE_TYPES] =
"Horário"
#endif
,
[TT_MY_TIMETABLE] =
[Tmt_MY_TIMETABLE] =
#if L==1 // ca
"Horari de les meves assignatures"
#elif L==2 // de
@ -53102,13 +53102,13 @@ const char *Txt_TIMETABLE_TYPES[TT_NUM_TIMETABLE_TYPES] =
"Horário minha disciplinas"
#endif
,
[TT_TUTORING_TIMETABLE] =
[Tmt_TUTORING_TIMETABLE] =
#if L==1 // ca
"Horari de tutories"
#elif L==2 // de
"Geschäftszeiten"
#elif L==3 // en
"Office hours"
"Tutoring hours"
#elif L==4 // es
"Horario de tutorías"
#elif L==5 // fr
@ -53187,9 +53187,9 @@ const char *Txt_TIMELINE_Shared_by_X_USERS = // Warning: it is very important to
"Compartilhado por %ld";
#endif
const char *Txt_TIMETABLE_CLASS_TYPES[TT_NUM_CLASS_TYPES] =
const char *Txt_TIMETABLE_CLASS_TYPES[Tmt_NUM_CLASS_TYPES] =
{
[TT_FREE] =
[Tmt_FREE] =
#if L==1 // ca
"Lliure"
#elif L==2 // de
@ -53210,7 +53210,7 @@ const char *Txt_TIMETABLE_CLASS_TYPES[TT_NUM_CLASS_TYPES] =
"Livre"
#endif
,
[TT_LECTURE] =
[Tmt_LECTURE] =
#if L==1 // ca
"Teoria"
#elif L==2 // de
@ -53231,7 +53231,7 @@ const char *Txt_TIMETABLE_CLASS_TYPES[TT_NUM_CLASS_TYPES] =
"Teoria"
#endif
,
[TT_PRACTICAL] =
[Tmt_PRACTICAL] =
#if L==1 // ca
"Pràct."
#elif L==2 // de
@ -53252,7 +53252,7 @@ const char *Txt_TIMETABLE_CLASS_TYPES[TT_NUM_CLASS_TYPES] =
"Práct."
#endif
,
[TT_TUTORING] =
[Tmt_TUTORING] =
#if L==1 // ca
"Tutories"
#elif L==2 // de
@ -56353,7 +56353,7 @@ const char *Txt_View_record_and_office_hours =
#elif L==2 // de
"Anzeigen profil und Geschäftszeiten";
#elif L==3 // en
"View record and office hours";
"View record and tutoring hours";
#elif L==4 // es
"Ver ficha y horario de tutorías";
#elif L==5 // fr

File diff suppressed because it is too large Load Diff

View File

@ -33,42 +33,42 @@
/************************* Public constants and types ************************/
/*****************************************************************************/
#define TT_MAX_CHARS_INFO (128 - 1) // 127
#define TT_MAX_BYTES_INFO ((TT_MAX_CHARS_INFO + 1) * Str_MAX_BYTES_PER_CHAR - 1) // 2047
#define Tmt_MAX_CHARS_INFO (128 - 1) // 127
#define Tmt_MAX_BYTES_INFO ((Tmt_MAX_CHARS_INFO + 1) * Str_MAX_BYTES_PER_CHAR - 1) // 2047
typedef enum
{
TT_CRS_VIEW,
TT_TUT_VIEW,
TT_CRS_EDIT,
TT_TUT_EDIT,
} TT_TimeTableView_t;
Tmt_CRS_VIEW,
Tmt_TUT_VIEW,
Tmt_CRS_EDIT,
Tmt_TUT_EDIT,
} Tmt_TimeTableView_t;
#define TT_NUM_TIMETABLE_TYPES 3
#define Tmt_NUM_TIMETABLE_TYPES 3
typedef enum
{
TT_COURSE_TIMETABLE = 0,
TT_MY_TIMETABLE = 1,
TT_TUTORING_TIMETABLE = 2,
} TT_TimeTableType_t;
Tmt_COURSE_TIMETABLE = 0,
Tmt_MY_TIMETABLE = 1,
Tmt_TUTORING_TIMETABLE = 2,
} Tmt_TimeTableType_t;
typedef enum
{
TT_FREE_INTERVAL,
TT_FIRST_INTERVAL,
TT_NEXT_INTERVAL,
} TT_IntervalType_t;
Tmt_FREE_INTERVAL,
Tmt_FIRST_INTERVAL,
Tmt_NEXT_INTERVAL,
} Tmt_IntervalType_t;
#define TT_NUM_CLASS_TYPES 4
#define Tmt_NUM_CLASS_TYPES 4
typedef enum
{
TT_FREE = 0,
TT_LECTURE = 1,
TT_PRACTICAL = 2,
TT_TUTORING = 3,
} TT_ClassType_t;
Tmt_FREE = 0,
Tmt_LECTURE = 1,
Tmt_PRACTICAL = 2,
Tmt_TUTORING = 3,
} Tmt_ClassType_t;
struct TT_Range
struct Tmt_Range
{
struct
{
@ -78,25 +78,25 @@ struct TT_Range
unsigned MinutesPerInterval; // 5, 15 or 30 minutes
};
struct TT_Timetable
struct Tmt_Timetable
{
struct
{
struct TT_Range Range;
struct Tmt_Range Range;
unsigned HoursPerDay; // From start hour to end hour
unsigned SecondsPerInterval;
unsigned IntervalsPerHour;
unsigned IntervalsPerDay;
unsigned IntervalsBeforeStartHour;
} Config;
TT_TimeTableType_t Type;
TT_TimeTableView_t View;
Tmt_TimeTableType_t Type;
Tmt_TimeTableView_t View;
unsigned Weekday;
unsigned Interval;
unsigned Column;
TT_ClassType_t ClassType;
Tmt_ClassType_t ClassType;
unsigned DurationIntervals;
char Info[TT_MAX_BYTES_INFO + 1];
char Info[Tmt_MAX_BYTES_INFO + 1];
long GrpCod; // Group code (-1 if no group selected)
struct
{
@ -110,9 +110,9 @@ struct TT_Timetable
/****************************** Public prototypes ****************************/
/*****************************************************************************/
void TT_ShowClassTimeTable (void);
void TT_EditCrsTimeTable (void);
void TT_EditMyTutTimeTable (void);
void TT_ShowTimeTable (struct TT_Timetable *Timetable,long UsrCod);
void Tmt_ShowClassTimeTable (void);
void Tmt_EditCrsTimeTable (void);
void Tmt_EditMyTutTimeTable (void);
void Tmt_ShowTimeTable (struct Tmt_Timetable *Timetable,long UsrCod);
#endif