mirror of https://github.com/acanas/swad-core.git
Version 15.54
This commit is contained in:
parent
5a4185c184
commit
271e55d00f
|
@ -589,11 +589,11 @@ a:hover {text-decoration:underline;}
|
||||||
box-sizing:border-box;
|
box-sizing:border-box;
|
||||||
width:100%;
|
width:100%;
|
||||||
}
|
}
|
||||||
#main_horizontal .MENU_LIST
|
#main_horizontal .MENU_LIST_CONTAINER
|
||||||
{
|
{
|
||||||
width:100%;
|
width:100%;
|
||||||
}
|
}
|
||||||
#main_horizontal ul
|
#main_horizontal .MENU_LIST
|
||||||
{
|
{
|
||||||
display:table;
|
display:table;
|
||||||
box-sizing:border-box;
|
box-sizing:border-box;
|
||||||
|
@ -648,11 +648,11 @@ a:hover {text-decoration:underline;}
|
||||||
box-sizing:border-box;
|
box-sizing:border-box;
|
||||||
width:100%;
|
width:100%;
|
||||||
}
|
}
|
||||||
#main_vertical .MENU_LIST
|
#main_vertical .MENU_LIST_CONTAINER
|
||||||
{
|
{
|
||||||
width:100%;
|
width:100%;
|
||||||
}
|
}
|
||||||
#main_vertical ul
|
#main_vertical .MENU_LIST
|
||||||
{
|
{
|
||||||
display:table;
|
display:table;
|
||||||
box-sizing:border-box;
|
box-sizing:border-box;
|
||||||
|
@ -710,13 +710,13 @@ a:hover {text-decoration:underline;}
|
||||||
box-sizing:border-box;
|
box-sizing:border-box;
|
||||||
width:100%;
|
width:100%;
|
||||||
}
|
}
|
||||||
#main_vertical .MENU_LIST
|
#main_vertical .MENU_LIST_CONTAINER
|
||||||
{
|
{
|
||||||
display:table-cell;
|
display:table-cell;
|
||||||
box-sizing:border-box;
|
box-sizing:border-box;
|
||||||
width:180px;
|
width:180px;
|
||||||
}
|
}
|
||||||
#main_vertical ul
|
#main_vertical .MENU_LIST
|
||||||
{
|
{
|
||||||
display:table;
|
display:table;
|
||||||
margin:0;
|
margin:0;
|
|
@ -75,7 +75,7 @@ extern struct Globals Gbl;
|
||||||
/************************ Internal global variables **************************/
|
/************************ Internal global variables **************************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
/*
|
/*
|
||||||
1122 actions in one CGI:
|
1124 actions in one CGI:
|
||||||
0. ActAll Any action (used for statistics)
|
0. ActAll Any action (used for statistics)
|
||||||
1. ActUnk Unknown action
|
1. ActUnk Unknown action
|
||||||
2. ActHom Show home menu
|
2. ActHom Show home menu
|
||||||
|
@ -439,7 +439,7 @@ Course:
|
||||||
310. ActSeeSylPra Show the syllabus of practicals
|
310. ActSeeSylPra Show the syllabus of practicals
|
||||||
311. ActSeeAdmDocCrs Documents zone of the course (see or admin)
|
311. ActSeeAdmDocCrs Documents zone of the course (see or admin)
|
||||||
312. ActAdmCom Request the administration of the files of the common zone of the course or of a group
|
312. ActAdmCom Request the administration of the files of the common zone of the course or of a group
|
||||||
313. ActSeeCrsTimTbl Show the timetable
|
313. ActSeeCrsTT Show the timetable
|
||||||
314. ActSeeBib Show the bibliography
|
314. ActSeeBib Show the bibliography
|
||||||
315. ActSeeFAQ Show the FAQ
|
315. ActSeeFAQ Show the FAQ
|
||||||
316. ActSeeCrsLnk Show links related to the course
|
316. ActSeeCrsLnk Show links related to the course
|
||||||
|
@ -450,9 +450,10 @@ Course:
|
||||||
319. ActChgCrsLog Change log in method for this course
|
319. ActChgCrsLog Change log in method for this course
|
||||||
320. ActEdiCrsInf Edit general information about the course
|
320. ActEdiCrsInf Edit general information about the course
|
||||||
321. ActEdiTchGui Edit teaching guide of the course
|
321. ActEdiTchGui Edit teaching guide of the course
|
||||||
322. ActPrnCrsTimTbl Show print view of the timetable
|
322. ActPrnCrsTT Show print view of the timetable
|
||||||
323. ActEdiCrsTimTbl Edit the timetable
|
323. ActEdiCrsTT Edit the timetable
|
||||||
324. ActChgCrsTimTbl Modify the timetable of the course
|
324. ActChgCrsTT Modify the timetable of the course
|
||||||
|
New! 1123. ActChgCrsTT1stDay Change first day of week and show timetable of the course
|
||||||
325. ActEdiSylLec Edit the syllabus of lectures
|
325. ActEdiSylLec Edit the syllabus of lectures
|
||||||
326. ActEdiSylPra Edit the syllabus of practicals
|
326. ActEdiSylPra Edit the syllabus of practicals
|
||||||
327. ActDelItmSylLec Remove a item from syllabus of lectures
|
327. ActDelItmSylLec Remove a item from syllabus of lectures
|
||||||
|
@ -1218,7 +1219,7 @@ Statistics:
|
||||||
Profile:
|
Profile:
|
||||||
1044. ActFrmLogIn Show form to log in
|
1044. ActFrmLogIn Show form to log in
|
||||||
1045. ActMyCrs Select one of my courses
|
1045. ActMyCrs Select one of my courses
|
||||||
1046. ActSeeMyTimTbl Show the timetable of all courses of the logged user
|
1046. ActSeeMyTT Show the timetable of all courses of the logged user
|
||||||
1047. ActFrmUsrAcc Show form to the creation or change of user's account
|
1047. ActFrmUsrAcc Show form to the creation or change of user's account
|
||||||
1048. ActReqEdiRecCom Request the edition of the record with the personal data of the user
|
1048. ActReqEdiRecCom Request the edition of the record with the personal data of the user
|
||||||
1049. ActEdiPrf Show forms to edit preferences
|
1049. ActEdiPrf Show forms to edit preferences
|
||||||
|
@ -1236,12 +1237,12 @@ Profile:
|
||||||
1059. ActChgMyRol Change type of logged user
|
1059. ActChgMyRol Change type of logged user
|
||||||
|
|
||||||
1060. ActCreUsrAcc Create new user account
|
1060. ActCreUsrAcc Create new user account
|
||||||
1061. ActRemID_Me Remove one of my user's IDs
|
1061. ActRemID_Me Remove one of my user's IDs
|
||||||
1062. ActNewIDMe Create a new user's ID for me
|
1062. ActNewIDMe Create a new user's ID for me
|
||||||
1063. ActRemOldNic Remove one of my old nicknames
|
1063. ActRemOldNic Remove one of my old nicknames
|
||||||
1064. ActChgNic Change my nickname
|
1064. ActChgNic Change my nickname
|
||||||
1065. ActRemMaiMe Remove one of my old e-mails
|
1065. ActRemMaiMe Remove one of my old e-mails
|
||||||
1066. ActNewMaiMe Change my e-mail address
|
1066. ActNewMaiMe Change my e-mail address
|
||||||
1067. ActCnfMai Confirm e-mail address
|
1067. ActCnfMai Confirm e-mail address
|
||||||
1068. ActFrmChgMyPwd Show form to the change of the password
|
1068. ActFrmChgMyPwd Show form to the change of the password
|
||||||
1069. ActChgPwd Change the password
|
1069. ActChgPwd Change the password
|
||||||
|
@ -1283,9 +1284,12 @@ Profile:
|
||||||
1099. ActChgMnu Change menu
|
1099. ActChgMnu Change menu
|
||||||
1100. ActChgNtfPrf Change whether to notify by e-mail new messages
|
1100. ActChgNtfPrf Change whether to notify by e-mail new messages
|
||||||
1101. ActPrnUsrQR Show my QR code ready to print
|
1101. ActPrnUsrQR Show my QR code ready to print
|
||||||
1102. ActPrnMyTimTbl Show the timetable listo to impresión of all my courses
|
|
||||||
|
1102. ActPrnMyTT Show the timetable listo to impresión of all my courses
|
||||||
1103. ActEdiTut Edit the timetable of tutorías
|
1103. ActEdiTut Edit the timetable of tutorías
|
||||||
1104. ActChgTut Modify the timetable of tutorías
|
1104. ActChgTut Modify the timetable of tutorías
|
||||||
|
New! 1124. ActChgMyTT1stDay Change first day of week and show timetable of the course
|
||||||
|
|
||||||
1105. ActReqRemFilBrf Request removal of a file of the briefcase
|
1105. ActReqRemFilBrf Request removal of a file of the briefcase
|
||||||
1106. ActRemFilBrf Remove a file of the briefcase
|
1106. ActRemFilBrf Remove a file of the briefcase
|
||||||
1107. ActRemFolBrf Remove a folder empty of the briefcase
|
1107. ActRemFolBrf Remove a folder empty of the briefcase
|
||||||
|
@ -1381,7 +1385,7 @@ const struct Act_Menu Act_Menu[Tab_NUM_TABS][Act_MAX_OPTIONS_IN_MENU_PER_TAB] =
|
||||||
{ActSeeAdmDocCrs ,false},
|
{ActSeeAdmDocCrs ,false},
|
||||||
{ActAdmCom ,true },
|
{ActAdmCom ,true },
|
||||||
|
|
||||||
{ActSeeCrsTimTbl ,false},
|
{ActSeeCrsTT ,false},
|
||||||
{ActSeeBib ,false},
|
{ActSeeBib ,false},
|
||||||
{ActSeeFAQ ,false},
|
{ActSeeFAQ ,false},
|
||||||
{ActSeeCrsLnk ,true },
|
{ActSeeCrsLnk ,true },
|
||||||
|
@ -1446,7 +1450,7 @@ const struct Act_Menu Act_Menu[Tab_NUM_TABS][Act_MAX_OPTIONS_IN_MENU_PER_TAB] =
|
||||||
{ActFrmLogIn ,true },
|
{ActFrmLogIn ,true },
|
||||||
|
|
||||||
{ActMyCrs ,false},
|
{ActMyCrs ,false},
|
||||||
{ActSeeMyTimTbl ,true },
|
{ActSeeMyTT ,true },
|
||||||
|
|
||||||
{ActFrmUsrAcc ,false},
|
{ActFrmUsrAcc ,false},
|
||||||
{ActReqEdiRecCom ,false},
|
{ActReqEdiRecCom ,false},
|
||||||
|
@ -1841,7 +1845,7 @@ struct Act_Actions Act_Actions[Act_NUM_ACTIONS] =
|
||||||
/* ActSeeSyl */{1242, 3,TabCrs,ActSeeSyl ,0x1FF,0x1FF,0x000,Act_CONTENT_NORM,Act_MAIN_WINDOW,NULL ,Inf_ShowInfo ,"presentation" },
|
/* ActSeeSyl */{1242, 3,TabCrs,ActSeeSyl ,0x1FF,0x1FF,0x000,Act_CONTENT_NORM,Act_MAIN_WINDOW,NULL ,Inf_ShowInfo ,"presentation" },
|
||||||
/* ActSeeAdmDocCrs */{ 0, 4,TabCrs,ActSeeAdmDocCrs ,0x1FF,0x1FF,0x000,Act_CONTENT_NORM,Act_MAIN_WINDOW,NULL ,Brw_ShowFileBrowserOrWorks ,"folder" },
|
/* ActSeeAdmDocCrs */{ 0, 4,TabCrs,ActSeeAdmDocCrs ,0x1FF,0x1FF,0x000,Act_CONTENT_NORM,Act_MAIN_WINDOW,NULL ,Brw_ShowFileBrowserOrWorks ,"folder" },
|
||||||
/* ActAdmCom */{ 461, 5,TabCrs,ActAdmCom ,0x1FF,0x1FF,0x000,Act_CONTENT_NORM,Act_MAIN_WINDOW,NULL ,Brw_ShowFileBrowserOrWorks ,"folderusers" },
|
/* ActAdmCom */{ 461, 5,TabCrs,ActAdmCom ,0x1FF,0x1FF,0x000,Act_CONTENT_NORM,Act_MAIN_WINDOW,NULL ,Brw_ShowFileBrowserOrWorks ,"folderusers" },
|
||||||
/* ActSeeCrsTimTbl */{ 25, 6,TabCrs,ActSeeCrsTimTbl ,0x1FF,0x1FF,0x000,Act_CONTENT_NORM,Act_MAIN_WINDOW,NULL ,TT_ShowClassTimeTable ,"clock" },
|
/* ActSeeCrsTT */{ 25, 6,TabCrs,ActSeeCrsTT ,0x1FF,0x1FF,0x000,Act_CONTENT_NORM,Act_MAIN_WINDOW,NULL ,TT_ShowClassTimeTable ,"clock" },
|
||||||
/* ActSeeBib */{ 32, 7,TabCrs,ActSeeBib ,0x1FF,0x1FF,0x000,Act_CONTENT_NORM,Act_MAIN_WINDOW,NULL ,Inf_ShowInfo ,"books" },
|
/* ActSeeBib */{ 32, 7,TabCrs,ActSeeBib ,0x1FF,0x1FF,0x000,Act_CONTENT_NORM,Act_MAIN_WINDOW,NULL ,Inf_ShowInfo ,"books" },
|
||||||
/* ActSeeFAQ */{ 54, 8,TabCrs,ActSeeFAQ ,0x118,0x100,0x000,Act_CONTENT_NORM,Act_MAIN_WINDOW,NULL ,Inf_ShowInfo ,"faq" },
|
/* ActSeeFAQ */{ 54, 8,TabCrs,ActSeeFAQ ,0x118,0x100,0x000,Act_CONTENT_NORM,Act_MAIN_WINDOW,NULL ,Inf_ShowInfo ,"faq" },
|
||||||
/* ActSeeCrsLnk */{ 9, 9,TabCrs,ActSeeCrsLnk ,0x118,0x100,0x000,Act_CONTENT_NORM,Act_MAIN_WINDOW,NULL ,Inf_ShowInfo ,"link" },
|
/* ActSeeCrsLnk */{ 9, 9,TabCrs,ActSeeCrsLnk ,0x118,0x100,0x000,Act_CONTENT_NORM,Act_MAIN_WINDOW,NULL ,Inf_ShowInfo ,"link" },
|
||||||
|
@ -1853,9 +1857,12 @@ struct Act_Actions Act_Actions[Act_NUM_ACTIONS] =
|
||||||
/* ActChgCrsLog */{1024,-1,TabCrs,ActSeeCrsInf ,0x110,0x100,0x000,Act_CONTENT_NORM,Act_MAIN_WINDOW,NULL ,Crs_ChangeCourseConfig ,NULL},
|
/* ActChgCrsLog */{1024,-1,TabCrs,ActSeeCrsInf ,0x110,0x100,0x000,Act_CONTENT_NORM,Act_MAIN_WINDOW,NULL ,Crs_ChangeCourseConfig ,NULL},
|
||||||
/* ActEdiCrsInf */{ 848,-1,TabCrs,ActSeeCrsInf ,0x110,0x100,0x000,Act_CONTENT_NORM,Act_MAIN_WINDOW,NULL ,Inf_FormsToSelSendInfo ,NULL},
|
/* ActEdiCrsInf */{ 848,-1,TabCrs,ActSeeCrsInf ,0x110,0x100,0x000,Act_CONTENT_NORM,Act_MAIN_WINDOW,NULL ,Inf_FormsToSelSendInfo ,NULL},
|
||||||
/* ActEdiTchGui */{ 785,-1,TabCrs,ActSeeTchGui ,0x110,0x100,0x000,Act_CONTENT_NORM,Act_MAIN_WINDOW,NULL ,Inf_FormsToSelSendInfo ,NULL},
|
/* ActEdiTchGui */{ 785,-1,TabCrs,ActSeeTchGui ,0x110,0x100,0x000,Act_CONTENT_NORM,Act_MAIN_WINDOW,NULL ,Inf_FormsToSelSendInfo ,NULL},
|
||||||
/* ActPrnCrsTimTbl */{ 152,-1,TabCrs,ActSeeCrsTimTbl ,0x1FF,0x1FF,0x000,Act_CONTENT_NORM,Act_NEW_WINDOW ,NULL ,TT_ShowClassTimeTable ,NULL},
|
|
||||||
/* ActEdiCrsTimTbl */{ 45,-1,TabCrs,ActSeeCrsTimTbl ,0x110,0x100,0x000,Act_CONTENT_NORM,Act_MAIN_WINDOW,NULL ,TT_EditCrsTimeTable ,NULL},
|
/* ActPrnCrsTT */{ 152,-1,TabCrs,ActSeeCrsTT ,0x1FF,0x1FF,0x000,Act_CONTENT_NORM,Act_NEW_WINDOW ,NULL ,TT_ShowClassTimeTable ,NULL},
|
||||||
/* ActChgCrsTimTbl */{ 53,-1,TabCrs,ActSeeCrsTimTbl ,0x110,0x100,0x000,Act_CONTENT_NORM,Act_MAIN_WINDOW,NULL ,TT_EditCrsTimeTable ,NULL},
|
/* ActEdiCrsTT */{ 45,-1,TabCrs,ActSeeCrsTT ,0x110,0x100,0x000,Act_CONTENT_NORM,Act_MAIN_WINDOW,NULL ,TT_EditCrsTimeTable ,NULL},
|
||||||
|
/* ActChgCrsTT */{ 53,-1,TabCrs,ActSeeCrsTT ,0x110,0x100,0x000,Act_CONTENT_NORM,Act_MAIN_WINDOW,NULL ,TT_EditCrsTimeTable ,NULL},
|
||||||
|
/* ActChgCrsTT1stDay */{1486,-1,TabCrs,ActSeeCrsTT ,0x1FF,0x1FF,0x000,Act_CONTENT_NORM,Act_MAIN_WINDOW,Cal_ChangeFirstDayOfWeek ,TT_ShowClassTimeTable ,NULL},
|
||||||
|
|
||||||
/* ActSeeSylLec */{ 28,-1,TabCrs,ActSeeSyl ,0x1FF,0x1FF,0x000,Act_CONTENT_NORM,Act_MAIN_WINDOW,NULL ,Inf_ShowInfo ,NULL},
|
/* ActSeeSylLec */{ 28,-1,TabCrs,ActSeeSyl ,0x1FF,0x1FF,0x000,Act_CONTENT_NORM,Act_MAIN_WINDOW,NULL ,Inf_ShowInfo ,NULL},
|
||||||
/* ActSeeSylPra */{ 20,-1,TabCrs,ActSeeSyl ,0x1FF,0x1FF,0x000,Act_CONTENT_NORM,Act_MAIN_WINDOW,NULL ,Inf_ShowInfo ,NULL},
|
/* ActSeeSylPra */{ 20,-1,TabCrs,ActSeeSyl ,0x1FF,0x1FF,0x000,Act_CONTENT_NORM,Act_MAIN_WINDOW,NULL ,Inf_ShowInfo ,NULL},
|
||||||
/* ActEdiSylLec */{ 44,-1,TabCrs,ActSeeSyl ,0x110,0x100,0x000,Act_CONTENT_NORM,Act_MAIN_WINDOW,NULL ,Inf_FormsToSelSendInfo ,NULL},
|
/* ActEdiSylLec */{ 44,-1,TabCrs,ActSeeSyl ,0x110,0x100,0x000,Act_CONTENT_NORM,Act_MAIN_WINDOW,NULL ,Inf_FormsToSelSendInfo ,NULL},
|
||||||
|
@ -2694,7 +2701,7 @@ struct Act_Actions Act_Actions[Act_NUM_ACTIONS] =
|
||||||
// Actions in menu:
|
// Actions in menu:
|
||||||
/* ActFrmLogIn */{ 843, 0,TabPrf,ActFrmLogIn ,0x1FF,0x1FF,0x1FF,Act_CONTENT_NORM,Act_MAIN_WINDOW,NULL ,Usr_WriteFormLoginLogout ,"keyuser" },
|
/* ActFrmLogIn */{ 843, 0,TabPrf,ActFrmLogIn ,0x1FF,0x1FF,0x1FF,Act_CONTENT_NORM,Act_MAIN_WINDOW,NULL ,Usr_WriteFormLoginLogout ,"keyuser" },
|
||||||
/* ActMyCrs */{ 987, 1,TabPrf,ActMyCrs ,0x1FE,0x1FE,0x1FE,Act_CONTENT_NORM,Act_MAIN_WINDOW,NULL ,Crs_ReqSelectOneOfMyCourses ,"mygroups" },
|
/* ActMyCrs */{ 987, 1,TabPrf,ActMyCrs ,0x1FE,0x1FE,0x1FE,Act_CONTENT_NORM,Act_MAIN_WINDOW,NULL ,Crs_ReqSelectOneOfMyCourses ,"mygroups" },
|
||||||
/* ActSeeMyTimTbl */{ 408, 2,TabPrf,ActSeeMyTimTbl ,0x1FE,0x1FE,0x1FE,Act_CONTENT_NORM,Act_MAIN_WINDOW,NULL ,TT_ShowClassTimeTable ,"clock" },
|
/* ActSeeMyTT */{ 408, 2,TabPrf,ActSeeMyTT ,0x1FE,0x1FE,0x1FE,Act_CONTENT_NORM,Act_MAIN_WINDOW,NULL ,TT_ShowClassTimeTable ,"clock" },
|
||||||
/* ActFrmUsrAcc */{ 36, 3,TabPrf,ActFrmUsrAcc ,0x1FF,0x1FF,0x1FF,Act_CONTENT_NORM,Act_MAIN_WINDOW,NULL ,Acc_ShowFormAccount ,"arroba" },
|
/* ActFrmUsrAcc */{ 36, 3,TabPrf,ActFrmUsrAcc ,0x1FF,0x1FF,0x1FF,Act_CONTENT_NORM,Act_MAIN_WINDOW,NULL ,Acc_ShowFormAccount ,"arroba" },
|
||||||
/* ActReqEdiRecCom */{ 285, 4,TabPrf,ActReqEdiRecCom ,0x1FE,0x1FE,0x1FE,Act_CONTENT_NORM,Act_MAIN_WINDOW,NULL ,Rec_ShowFormMyCommRecord ,"card" },
|
/* ActReqEdiRecCom */{ 285, 4,TabPrf,ActReqEdiRecCom ,0x1FE,0x1FE,0x1FE,Act_CONTENT_NORM,Act_MAIN_WINDOW,NULL ,Rec_ShowFormMyCommRecord ,"card" },
|
||||||
/* ActEdiPrf */{ 673, 5,TabPrf,ActEdiPrf ,0x1FF,0x1FF,0x1FF,Act_CONTENT_NORM,Act_MAIN_WINDOW,NULL ,Pre_EditPrefs ,"heart" },
|
/* ActEdiPrf */{ 673, 5,TabPrf,ActEdiPrf ,0x1FF,0x1FF,0x1FF,Act_CONTENT_NORM,Act_MAIN_WINDOW,NULL ,Pre_EditPrefs ,"heart" },
|
||||||
|
@ -2767,9 +2774,10 @@ struct Act_Actions Act_Actions[Act_NUM_ACTIONS] =
|
||||||
|
|
||||||
/* ActPrnUsrQR */{1022,-1,TabPrf,ActFrmUsrAcc ,0x1FF,0x1FF,0x1FF,Act_CONTENT_NORM,Act_NEW_WINDOW ,NULL ,QR_PrintQRCode ,NULL},
|
/* ActPrnUsrQR */{1022,-1,TabPrf,ActFrmUsrAcc ,0x1FF,0x1FF,0x1FF,Act_CONTENT_NORM,Act_NEW_WINDOW ,NULL ,QR_PrintQRCode ,NULL},
|
||||||
|
|
||||||
/* ActPrnMyTimTbl */{ 409,-1,TabPrf,ActSeeMyTimTbl ,0x1FE,0x1FE,0x1FE,Act_CONTENT_NORM,Act_NEW_WINDOW ,NULL ,TT_ShowClassTimeTable ,NULL},
|
/* ActPrnMyTT */{ 409,-1,TabPrf,ActSeeMyTT ,0x1FE,0x1FE,0x1FE,Act_CONTENT_NORM,Act_NEW_WINDOW ,NULL ,TT_ShowClassTimeTable ,NULL},
|
||||||
/* ActEdiTut */{ 65,-1,TabPrf,ActSeeMyTimTbl ,0x1FE,0x1FE,0x1FE,Act_CONTENT_NORM,Act_MAIN_WINDOW,NULL ,TT_ShowMyTutTimeTable ,NULL},
|
/* ActEdiTut */{ 65,-1,TabPrf,ActSeeMyTT ,0x1FE,0x1FE,0x1FE,Act_CONTENT_NORM,Act_MAIN_WINDOW,NULL ,TT_ShowMyTutTimeTable ,NULL},
|
||||||
/* ActChgTut */{ 48,-1,TabPrf,ActSeeMyTimTbl ,0x1FE,0x1FE,0x1FE,Act_CONTENT_NORM,Act_MAIN_WINDOW,NULL ,TT_ShowMyTutTimeTable ,NULL},
|
/* ActChgTut */{ 48,-1,TabPrf,ActSeeMyTT ,0x1FE,0x1FE,0x1FE,Act_CONTENT_NORM,Act_MAIN_WINDOW,NULL ,TT_ShowMyTutTimeTable ,NULL},
|
||||||
|
/* ActChgMyTT1stDay */{1487,-1,TabPrf,ActSeeMyTT ,0x1FF,0x1FF,0x1FE,Act_CONTENT_NORM,Act_MAIN_WINDOW,Cal_ChangeFirstDayOfWeek ,TT_ShowClassTimeTable ,NULL},
|
||||||
|
|
||||||
/* ActReqRemFilBrf */{ 286,-1,TabPrf,ActAdmBrf ,0x1FE,0x1FE,0x1FE,Act_CONTENT_NORM,Act_MAIN_WINDOW,NULL ,Brw_AskRemFileFromTree ,NULL},
|
/* ActReqRemFilBrf */{ 286,-1,TabPrf,ActAdmBrf ,0x1FE,0x1FE,0x1FE,Act_CONTENT_NORM,Act_MAIN_WINDOW,NULL ,Brw_AskRemFileFromTree ,NULL},
|
||||||
/* ActRemFilBrf */{ 155,-1,TabPrf,ActAdmBrf ,0x1FE,0x1FE,0x1FE,Act_CONTENT_NORM,Act_MAIN_WINDOW,NULL ,Brw_RemFileFromTree ,NULL},
|
/* ActRemFilBrf */{ 155,-1,TabPrf,ActAdmBrf ,0x1FE,0x1FE,0x1FE,Act_CONTENT_NORM,Act_MAIN_WINDOW,NULL ,Brw_RemFileFromTree ,NULL},
|
||||||
|
@ -2818,7 +2826,7 @@ Act_Action_t Act_FromActCodToAction[1+Act_MAX_ACTION_COD] = // Do not reuse uniq
|
||||||
ActSeeRecSevTch, // #22
|
ActSeeRecSevTch, // #22
|
||||||
ActAdmBrf, // #23
|
ActAdmBrf, // #23
|
||||||
-1, // #24 (obsolete action)
|
-1, // #24 (obsolete action)
|
||||||
ActSeeCrsTimTbl, // #25
|
ActSeeCrsTT, // #25
|
||||||
ActReqMsgUsr, // #26
|
ActReqMsgUsr, // #26
|
||||||
ActRcvMsgUsr, // #27
|
ActRcvMsgUsr, // #27
|
||||||
ActSeeSylLec, // #28
|
ActSeeSylLec, // #28
|
||||||
|
@ -2838,7 +2846,7 @@ Act_Action_t Act_FromActCodToAction[1+Act_MAX_ACTION_COD] = // Do not reuse uniq
|
||||||
ActLstStdAll, // #42
|
ActLstStdAll, // #42
|
||||||
-1, // #43 (obsolete action)
|
-1, // #43 (obsolete action)
|
||||||
ActEdiSylLec, // #44
|
ActEdiSylLec, // #44
|
||||||
ActEdiCrsTimTbl, // #45
|
ActEdiCrsTT, // #45
|
||||||
-1, // #46 (obsolete action)
|
-1, // #46 (obsolete action)
|
||||||
-1, // #47 (obsolete action)
|
-1, // #47 (obsolete action)
|
||||||
ActChgTut, // #48
|
ActChgTut, // #48
|
||||||
|
@ -2846,7 +2854,7 @@ Act_Action_t Act_FromActCodToAction[1+Act_MAX_ACTION_COD] = // Do not reuse uniq
|
||||||
-1, // #50 (obsolete action)
|
-1, // #50 (obsolete action)
|
||||||
ActSeeChtRms, // #51
|
ActSeeChtRms, // #51
|
||||||
ActCht, // #52
|
ActCht, // #52
|
||||||
ActChgCrsTimTbl, // #53
|
ActChgCrsTT, // #53
|
||||||
ActSeeFAQ, // #54
|
ActSeeFAQ, // #54
|
||||||
-1, // #55 (obsolete action)
|
-1, // #55 (obsolete action)
|
||||||
-1, // #56 (obsolete action)
|
-1, // #56 (obsolete action)
|
||||||
|
@ -2945,7 +2953,7 @@ Act_Action_t Act_FromActCodToAction[1+Act_MAX_ACTION_COD] = // Do not reuse uniq
|
||||||
-1, // #149 (obsolete action)
|
-1, // #149 (obsolete action)
|
||||||
ActFrmCreWrkUsr, // #150
|
ActFrmCreWrkUsr, // #150
|
||||||
-1, // #151 (obsolete action)
|
-1, // #151 (obsolete action)
|
||||||
ActPrnCrsTimTbl, // #152
|
ActPrnCrsTT, // #152
|
||||||
ActRcvFilBrfCla, // #153
|
ActRcvFilBrfCla, // #153
|
||||||
-1, // #154 (obsolete action)
|
-1, // #154 (obsolete action)
|
||||||
ActRemFilBrf, // #155
|
ActRemFilBrf, // #155
|
||||||
|
@ -3201,8 +3209,8 @@ Act_Action_t Act_FromActCodToAction[1+Act_MAX_ACTION_COD] = // Do not reuse uniq
|
||||||
ActPlaTxtEdiFAQ, // #405
|
ActPlaTxtEdiFAQ, // #405
|
||||||
ActRcvPlaTxtFAQ, // #406
|
ActRcvPlaTxtFAQ, // #406
|
||||||
-1, // #407 (obsolete action)
|
-1, // #407 (obsolete action)
|
||||||
ActSeeMyTimTbl, // #408
|
ActSeeMyTT, // #408
|
||||||
ActPrnMyTimTbl, // #409
|
ActPrnMyTT, // #409
|
||||||
ActExpBrf, // #410
|
ActExpBrf, // #410
|
||||||
ActConBrf, // #411
|
ActConBrf, // #411
|
||||||
-1, // #412 (obsolete action)
|
-1, // #412 (obsolete action)
|
||||||
|
@ -4282,6 +4290,8 @@ Act_Action_t Act_FromActCodToAction[1+Act_MAX_ACTION_COD] = // Do not reuse uniq
|
||||||
ActNewMaiTch, // #1483
|
ActNewMaiTch, // #1483
|
||||||
ActChg1stDay, // #1484
|
ActChg1stDay, // #1484
|
||||||
ActChgCal1stDay, // #1485
|
ActChgCal1stDay, // #1485
|
||||||
|
ActChgCrsTT1stDay, // #1486
|
||||||
|
ActChgMyTT1stDay, // #1487
|
||||||
};
|
};
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
@ -4717,10 +4727,12 @@ void Act_AdjustCurrentAction (void)
|
||||||
case ActReqEdiMyIns:
|
case ActReqEdiMyIns:
|
||||||
case ActReqSelGrp:
|
case ActReqSelGrp:
|
||||||
case ActReqMdfOneStd: // A student use this action to remove him/herself from current course
|
case ActReqMdfOneStd: // A student use this action to remove him/herself from current course
|
||||||
case ActSeeCrsTimTbl:
|
case ActSeeCrsTT:
|
||||||
case ActPrnCrsTimTbl:
|
case ActPrnCrsTT:
|
||||||
case ActSeeMyTimTbl:
|
case ActChgCrsTT1stDay:
|
||||||
case ActPrnMyTimTbl:
|
// case ActSeeMyTT: // TODO: Remove these 3 actions from here?
|
||||||
|
// case ActPrnMyTT:
|
||||||
|
// case ActChgMyTT1stDay:
|
||||||
// These last actions are allowed in order to students could see/print timetable before register in groups
|
// These last actions are allowed in order to students could see/print timetable before register in groups
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
|
|
427
swad_action.h
427
swad_action.h
|
@ -70,9 +70,9 @@ typedef enum
|
||||||
|
|
||||||
typedef int Act_Action_t; // Must be a signed type, because -1 is used to indicate obsolete action
|
typedef int Act_Action_t; // Must be a signed type, because -1 is used to indicate obsolete action
|
||||||
|
|
||||||
#define Act_NUM_ACTIONS (7+52+15+90+73+68+204+183+154+171+27+79)
|
#define Act_NUM_ACTIONS (7+52+15+90+73+68+205+183+154+171+27+80)
|
||||||
|
|
||||||
#define Act_MAX_ACTION_COD 1485
|
#define Act_MAX_ACTION_COD 1487
|
||||||
|
|
||||||
#define Act_MAX_OPTIONS_IN_MENU_PER_TAB 20
|
#define Act_MAX_OPTIONS_IN_MENU_PER_TAB 20
|
||||||
|
|
||||||
|
@ -447,7 +447,7 @@ typedef int Act_Action_t; // Must be a signed type, because -1 is used to indica
|
||||||
#define ActSeeSyl (ActDowComDeg+ 4)
|
#define ActSeeSyl (ActDowComDeg+ 4)
|
||||||
#define ActSeeAdmDocCrs (ActDowComDeg+ 5)
|
#define ActSeeAdmDocCrs (ActDowComDeg+ 5)
|
||||||
#define ActAdmCom (ActDowComDeg+ 6)
|
#define ActAdmCom (ActDowComDeg+ 6)
|
||||||
#define ActSeeCrsTimTbl (ActDowComDeg+ 7)
|
#define ActSeeCrsTT (ActDowComDeg+ 7)
|
||||||
#define ActSeeBib (ActDowComDeg+ 8)
|
#define ActSeeBib (ActDowComDeg+ 8)
|
||||||
#define ActSeeFAQ (ActDowComDeg+ 9)
|
#define ActSeeFAQ (ActDowComDeg+ 9)
|
||||||
#define ActSeeCrsLnk (ActDowComDeg+ 10)
|
#define ActSeeCrsLnk (ActDowComDeg+ 10)
|
||||||
|
@ -457,206 +457,207 @@ typedef int Act_Action_t; // Must be a signed type, because -1 is used to indica
|
||||||
#define ActChgCrsLog (ActDowComDeg+ 13)
|
#define ActChgCrsLog (ActDowComDeg+ 13)
|
||||||
#define ActEdiCrsInf (ActDowComDeg+ 14)
|
#define ActEdiCrsInf (ActDowComDeg+ 14)
|
||||||
#define ActEdiTchGui (ActDowComDeg+ 15)
|
#define ActEdiTchGui (ActDowComDeg+ 15)
|
||||||
#define ActPrnCrsTimTbl (ActDowComDeg+ 16)
|
#define ActPrnCrsTT (ActDowComDeg+ 16)
|
||||||
#define ActEdiCrsTimTbl (ActDowComDeg+ 17)
|
#define ActEdiCrsTT (ActDowComDeg+ 17)
|
||||||
#define ActChgCrsTimTbl (ActDowComDeg+ 18)
|
#define ActChgCrsTT (ActDowComDeg+ 18)
|
||||||
#define ActSeeSylLec (ActDowComDeg+ 19)
|
#define ActChgCrsTT1stDay (ActDowComDeg+ 19)
|
||||||
#define ActSeeSylPra (ActDowComDeg+ 20)
|
#define ActSeeSylLec (ActDowComDeg+ 20)
|
||||||
#define ActEdiSylLec (ActDowComDeg+ 21)
|
#define ActSeeSylPra (ActDowComDeg+ 21)
|
||||||
#define ActEdiSylPra (ActDowComDeg+ 22)
|
#define ActEdiSylLec (ActDowComDeg+ 22)
|
||||||
#define ActDelItmSylLec (ActDowComDeg+ 23)
|
#define ActEdiSylPra (ActDowComDeg+ 23)
|
||||||
#define ActDelItmSylPra (ActDowComDeg+ 24)
|
#define ActDelItmSylLec (ActDowComDeg+ 24)
|
||||||
#define ActUp_IteSylLec (ActDowComDeg+ 25)
|
#define ActDelItmSylPra (ActDowComDeg+ 25)
|
||||||
#define ActUp_IteSylPra (ActDowComDeg+ 26)
|
#define ActUp_IteSylLec (ActDowComDeg+ 26)
|
||||||
#define ActDwnIteSylLec (ActDowComDeg+ 27)
|
#define ActUp_IteSylPra (ActDowComDeg+ 27)
|
||||||
#define ActDwnIteSylPra (ActDowComDeg+ 28)
|
#define ActDwnIteSylLec (ActDowComDeg+ 28)
|
||||||
#define ActRgtIteSylLec (ActDowComDeg+ 29)
|
#define ActDwnIteSylPra (ActDowComDeg+ 29)
|
||||||
#define ActRgtIteSylPra (ActDowComDeg+ 30)
|
#define ActRgtIteSylLec (ActDowComDeg+ 30)
|
||||||
#define ActLftIteSylLec (ActDowComDeg+ 31)
|
#define ActRgtIteSylPra (ActDowComDeg+ 31)
|
||||||
#define ActLftIteSylPra (ActDowComDeg+ 32)
|
#define ActLftIteSylLec (ActDowComDeg+ 32)
|
||||||
#define ActInsIteSylLec (ActDowComDeg+ 33)
|
#define ActLftIteSylPra (ActDowComDeg+ 33)
|
||||||
#define ActInsIteSylPra (ActDowComDeg+ 34)
|
#define ActInsIteSylLec (ActDowComDeg+ 34)
|
||||||
#define ActModIteSylLec (ActDowComDeg+ 35)
|
#define ActInsIteSylPra (ActDowComDeg+ 35)
|
||||||
#define ActModIteSylPra (ActDowComDeg+ 36)
|
#define ActModIteSylLec (ActDowComDeg+ 36)
|
||||||
|
#define ActModIteSylPra (ActDowComDeg+ 37)
|
||||||
|
|
||||||
#define ActChgToSeeDocCrs (ActDowComDeg+ 37)
|
#define ActChgToSeeDocCrs (ActDowComDeg+ 38)
|
||||||
#define ActSeeDocCrs (ActDowComDeg+ 38)
|
#define ActSeeDocCrs (ActDowComDeg+ 39)
|
||||||
#define ActExpSeeDocCrs (ActDowComDeg+ 39)
|
#define ActExpSeeDocCrs (ActDowComDeg+ 40)
|
||||||
#define ActConSeeDocCrs (ActDowComDeg+ 40)
|
#define ActConSeeDocCrs (ActDowComDeg+ 41)
|
||||||
#define ActZIPSeeDocCrs (ActDowComDeg+ 41)
|
#define ActZIPSeeDocCrs (ActDowComDeg+ 42)
|
||||||
#define ActReqDatSeeDocCrs (ActDowComDeg+ 42)
|
#define ActReqDatSeeDocCrs (ActDowComDeg+ 43)
|
||||||
#define ActDowSeeDocCrs (ActDowComDeg+ 43)
|
#define ActDowSeeDocCrs (ActDowComDeg+ 44)
|
||||||
|
|
||||||
#define ActSeeDocGrp (ActDowComDeg+ 44)
|
#define ActSeeDocGrp (ActDowComDeg+ 45)
|
||||||
#define ActExpSeeDocGrp (ActDowComDeg+ 45)
|
#define ActExpSeeDocGrp (ActDowComDeg+ 46)
|
||||||
#define ActConSeeDocGrp (ActDowComDeg+ 46)
|
#define ActConSeeDocGrp (ActDowComDeg+ 47)
|
||||||
#define ActZIPSeeDocGrp (ActDowComDeg+ 47)
|
#define ActZIPSeeDocGrp (ActDowComDeg+ 48)
|
||||||
#define ActReqDatSeeDocGrp (ActDowComDeg+ 48)
|
#define ActReqDatSeeDocGrp (ActDowComDeg+ 49)
|
||||||
#define ActDowSeeDocGrp (ActDowComDeg+ 49)
|
#define ActDowSeeDocGrp (ActDowComDeg+ 50)
|
||||||
|
|
||||||
#define ActChgToAdmDocCrs (ActDowComDeg+ 50)
|
#define ActChgToAdmDocCrs (ActDowComDeg+ 51)
|
||||||
#define ActAdmDocCrs (ActDowComDeg+ 51)
|
#define ActAdmDocCrs (ActDowComDeg+ 52)
|
||||||
#define ActReqRemFilDocCrs (ActDowComDeg+ 52)
|
#define ActReqRemFilDocCrs (ActDowComDeg+ 53)
|
||||||
#define ActRemFilDocCrs (ActDowComDeg+ 53)
|
#define ActRemFilDocCrs (ActDowComDeg+ 54)
|
||||||
#define ActRemFolDocCrs (ActDowComDeg+ 54)
|
#define ActRemFolDocCrs (ActDowComDeg+ 55)
|
||||||
#define ActCopDocCrs (ActDowComDeg+ 55)
|
#define ActCopDocCrs (ActDowComDeg+ 56)
|
||||||
#define ActPasDocCrs (ActDowComDeg+ 56)
|
#define ActPasDocCrs (ActDowComDeg+ 57)
|
||||||
#define ActRemTreDocCrs (ActDowComDeg+ 57)
|
#define ActRemTreDocCrs (ActDowComDeg+ 58)
|
||||||
#define ActFrmCreDocCrs (ActDowComDeg+ 58)
|
#define ActFrmCreDocCrs (ActDowComDeg+ 59)
|
||||||
#define ActCreFolDocCrs (ActDowComDeg+ 59)
|
#define ActCreFolDocCrs (ActDowComDeg+ 60)
|
||||||
#define ActCreLnkDocCrs (ActDowComDeg+ 60)
|
#define ActCreLnkDocCrs (ActDowComDeg+ 61)
|
||||||
#define ActRenFolDocCrs (ActDowComDeg+ 61)
|
#define ActRenFolDocCrs (ActDowComDeg+ 62)
|
||||||
#define ActRcvFilDocCrsDZ (ActDowComDeg+ 62)
|
#define ActRcvFilDocCrsDZ (ActDowComDeg+ 63)
|
||||||
#define ActRcvFilDocCrsCla (ActDowComDeg+ 63)
|
#define ActRcvFilDocCrsCla (ActDowComDeg+ 64)
|
||||||
#define ActExpAdmDocCrs (ActDowComDeg+ 64)
|
#define ActExpAdmDocCrs (ActDowComDeg+ 65)
|
||||||
#define ActConAdmDocCrs (ActDowComDeg+ 65)
|
#define ActConAdmDocCrs (ActDowComDeg+ 66)
|
||||||
#define ActZIPAdmDocCrs (ActDowComDeg+ 66)
|
#define ActZIPAdmDocCrs (ActDowComDeg+ 67)
|
||||||
#define ActShoDocCrs (ActDowComDeg+ 67)
|
#define ActShoDocCrs (ActDowComDeg+ 68)
|
||||||
#define ActHidDocCrs (ActDowComDeg+ 68)
|
#define ActHidDocCrs (ActDowComDeg+ 69)
|
||||||
#define ActReqDatAdmDocCrs (ActDowComDeg+ 69)
|
#define ActReqDatAdmDocCrs (ActDowComDeg+ 70)
|
||||||
#define ActChgDatAdmDocCrs (ActDowComDeg+ 70)
|
#define ActChgDatAdmDocCrs (ActDowComDeg+ 71)
|
||||||
#define ActDowAdmDocCrs (ActDowComDeg+ 71)
|
#define ActDowAdmDocCrs (ActDowComDeg+ 72)
|
||||||
|
|
||||||
#define ActAdmDocGrp (ActDowComDeg+ 72)
|
#define ActAdmDocGrp (ActDowComDeg+ 73)
|
||||||
#define ActReqRemFilDocGrp (ActDowComDeg+ 73)
|
#define ActReqRemFilDocGrp (ActDowComDeg+ 74)
|
||||||
#define ActRemFilDocGrp (ActDowComDeg+ 74)
|
#define ActRemFilDocGrp (ActDowComDeg+ 75)
|
||||||
#define ActRemFolDocGrp (ActDowComDeg+ 75)
|
#define ActRemFolDocGrp (ActDowComDeg+ 76)
|
||||||
#define ActCopDocGrp (ActDowComDeg+ 76)
|
#define ActCopDocGrp (ActDowComDeg+ 77)
|
||||||
#define ActPasDocGrp (ActDowComDeg+ 77)
|
#define ActPasDocGrp (ActDowComDeg+ 78)
|
||||||
#define ActRemTreDocGrp (ActDowComDeg+ 78)
|
#define ActRemTreDocGrp (ActDowComDeg+ 79)
|
||||||
#define ActFrmCreDocGrp (ActDowComDeg+ 79)
|
#define ActFrmCreDocGrp (ActDowComDeg+ 80)
|
||||||
#define ActCreFolDocGrp (ActDowComDeg+ 80)
|
#define ActCreFolDocGrp (ActDowComDeg+ 81)
|
||||||
#define ActCreLnkDocGrp (ActDowComDeg+ 81)
|
#define ActCreLnkDocGrp (ActDowComDeg+ 82)
|
||||||
#define ActRenFolDocGrp (ActDowComDeg+ 82)
|
#define ActRenFolDocGrp (ActDowComDeg+ 83)
|
||||||
#define ActRcvFilDocGrpDZ (ActDowComDeg+ 83)
|
#define ActRcvFilDocGrpDZ (ActDowComDeg+ 84)
|
||||||
#define ActRcvFilDocGrpCla (ActDowComDeg+ 84)
|
#define ActRcvFilDocGrpCla (ActDowComDeg+ 85)
|
||||||
#define ActExpAdmDocGrp (ActDowComDeg+ 85)
|
#define ActExpAdmDocGrp (ActDowComDeg+ 86)
|
||||||
#define ActConAdmDocGrp (ActDowComDeg+ 86)
|
#define ActConAdmDocGrp (ActDowComDeg+ 87)
|
||||||
#define ActZIPAdmDocGrp (ActDowComDeg+ 87)
|
#define ActZIPAdmDocGrp (ActDowComDeg+ 88)
|
||||||
#define ActShoDocGrp (ActDowComDeg+ 88)
|
#define ActShoDocGrp (ActDowComDeg+ 89)
|
||||||
#define ActHidDocGrp (ActDowComDeg+ 89)
|
#define ActHidDocGrp (ActDowComDeg+ 90)
|
||||||
#define ActReqDatAdmDocGrp (ActDowComDeg+ 90)
|
#define ActReqDatAdmDocGrp (ActDowComDeg+ 91)
|
||||||
#define ActChgDatAdmDocGrp (ActDowComDeg+ 91)
|
#define ActChgDatAdmDocGrp (ActDowComDeg+ 92)
|
||||||
#define ActDowAdmDocGrp (ActDowComDeg+ 92)
|
#define ActDowAdmDocGrp (ActDowComDeg+ 93)
|
||||||
|
|
||||||
#define ActChgToAdmCom (ActDowComDeg+ 93)
|
#define ActChgToAdmCom (ActDowComDeg+ 94)
|
||||||
|
|
||||||
#define ActAdmComCrs (ActDowComDeg+ 94)
|
#define ActAdmComCrs (ActDowComDeg+ 95)
|
||||||
#define ActReqRemFilComCrs (ActDowComDeg+ 95)
|
#define ActReqRemFilComCrs (ActDowComDeg+ 96)
|
||||||
#define ActRemFilComCrs (ActDowComDeg+ 96)
|
#define ActRemFilComCrs (ActDowComDeg+ 97)
|
||||||
#define ActRemFolComCrs (ActDowComDeg+ 97)
|
#define ActRemFolComCrs (ActDowComDeg+ 98)
|
||||||
#define ActCopComCrs (ActDowComDeg+ 98)
|
#define ActCopComCrs (ActDowComDeg+ 99)
|
||||||
#define ActPasComCrs (ActDowComDeg+ 99)
|
#define ActPasComCrs (ActDowComDeg+100)
|
||||||
#define ActRemTreComCrs (ActDowComDeg+100)
|
#define ActRemTreComCrs (ActDowComDeg+101)
|
||||||
#define ActFrmCreComCrs (ActDowComDeg+101)
|
#define ActFrmCreComCrs (ActDowComDeg+102)
|
||||||
#define ActCreFolComCrs (ActDowComDeg+102)
|
#define ActCreFolComCrs (ActDowComDeg+103)
|
||||||
#define ActCreLnkComCrs (ActDowComDeg+103)
|
#define ActCreLnkComCrs (ActDowComDeg+104)
|
||||||
#define ActRenFolComCrs (ActDowComDeg+104)
|
#define ActRenFolComCrs (ActDowComDeg+105)
|
||||||
#define ActRcvFilComCrsDZ (ActDowComDeg+105)
|
#define ActRcvFilComCrsDZ (ActDowComDeg+106)
|
||||||
#define ActRcvFilComCrsCla (ActDowComDeg+106)
|
#define ActRcvFilComCrsCla (ActDowComDeg+107)
|
||||||
#define ActExpComCrs (ActDowComDeg+107)
|
#define ActExpComCrs (ActDowComDeg+108)
|
||||||
#define ActConComCrs (ActDowComDeg+108)
|
#define ActConComCrs (ActDowComDeg+109)
|
||||||
#define ActZIPComCrs (ActDowComDeg+109)
|
#define ActZIPComCrs (ActDowComDeg+110)
|
||||||
#define ActReqDatComCrs (ActDowComDeg+110)
|
#define ActReqDatComCrs (ActDowComDeg+111)
|
||||||
#define ActChgDatComCrs (ActDowComDeg+111)
|
#define ActChgDatComCrs (ActDowComDeg+112)
|
||||||
#define ActDowComCrs (ActDowComDeg+112)
|
#define ActDowComCrs (ActDowComDeg+113)
|
||||||
|
|
||||||
#define ActAdmComGrp (ActDowComDeg+113)
|
#define ActAdmComGrp (ActDowComDeg+114)
|
||||||
#define ActReqRemFilComGrp (ActDowComDeg+114)
|
#define ActReqRemFilComGrp (ActDowComDeg+115)
|
||||||
#define ActRemFilComGrp (ActDowComDeg+115)
|
#define ActRemFilComGrp (ActDowComDeg+116)
|
||||||
#define ActRemFolComGrp (ActDowComDeg+116)
|
#define ActRemFolComGrp (ActDowComDeg+117)
|
||||||
#define ActCopComGrp (ActDowComDeg+117)
|
#define ActCopComGrp (ActDowComDeg+118)
|
||||||
#define ActPasComGrp (ActDowComDeg+118)
|
#define ActPasComGrp (ActDowComDeg+119)
|
||||||
#define ActRemTreComGrp (ActDowComDeg+119)
|
#define ActRemTreComGrp (ActDowComDeg+120)
|
||||||
#define ActFrmCreComGrp (ActDowComDeg+120)
|
#define ActFrmCreComGrp (ActDowComDeg+121)
|
||||||
#define ActCreFolComGrp (ActDowComDeg+121)
|
#define ActCreFolComGrp (ActDowComDeg+122)
|
||||||
#define ActCreLnkComGrp (ActDowComDeg+122)
|
#define ActCreLnkComGrp (ActDowComDeg+123)
|
||||||
#define ActRenFolComGrp (ActDowComDeg+123)
|
#define ActRenFolComGrp (ActDowComDeg+124)
|
||||||
#define ActRcvFilComGrpDZ (ActDowComDeg+124)
|
#define ActRcvFilComGrpDZ (ActDowComDeg+125)
|
||||||
#define ActRcvFilComGrpCla (ActDowComDeg+125)
|
#define ActRcvFilComGrpCla (ActDowComDeg+126)
|
||||||
#define ActExpComGrp (ActDowComDeg+126)
|
#define ActExpComGrp (ActDowComDeg+127)
|
||||||
#define ActConComGrp (ActDowComDeg+127)
|
#define ActConComGrp (ActDowComDeg+128)
|
||||||
#define ActZIPComGrp (ActDowComDeg+128)
|
#define ActZIPComGrp (ActDowComDeg+129)
|
||||||
#define ActReqDatComGrp (ActDowComDeg+129)
|
#define ActReqDatComGrp (ActDowComDeg+130)
|
||||||
#define ActChgDatComGrp (ActDowComDeg+130)
|
#define ActChgDatComGrp (ActDowComDeg+131)
|
||||||
#define ActDowComGrp (ActDowComDeg+131)
|
#define ActDowComGrp (ActDowComDeg+132)
|
||||||
|
|
||||||
#define ActEdiBib (ActDowComDeg+132)
|
#define ActEdiBib (ActDowComDeg+133)
|
||||||
#define ActEdiFAQ (ActDowComDeg+133)
|
#define ActEdiFAQ (ActDowComDeg+134)
|
||||||
#define ActEdiCrsLnk (ActDowComDeg+134)
|
#define ActEdiCrsLnk (ActDowComDeg+135)
|
||||||
|
|
||||||
#define ActChgFrcReaCrsInf (ActDowComDeg+135)
|
#define ActChgFrcReaCrsInf (ActDowComDeg+136)
|
||||||
#define ActChgFrcReaTchGui (ActDowComDeg+136)
|
#define ActChgFrcReaTchGui (ActDowComDeg+137)
|
||||||
#define ActChgFrcReaSylLec (ActDowComDeg+137)
|
#define ActChgFrcReaSylLec (ActDowComDeg+138)
|
||||||
#define ActChgFrcReaSylPra (ActDowComDeg+138)
|
#define ActChgFrcReaSylPra (ActDowComDeg+139)
|
||||||
#define ActChgFrcReaBib (ActDowComDeg+139)
|
#define ActChgFrcReaBib (ActDowComDeg+140)
|
||||||
#define ActChgFrcReaFAQ (ActDowComDeg+140)
|
#define ActChgFrcReaFAQ (ActDowComDeg+141)
|
||||||
#define ActChgFrcReaCrsLnk (ActDowComDeg+141)
|
#define ActChgFrcReaCrsLnk (ActDowComDeg+142)
|
||||||
|
|
||||||
#define ActChgHavReaCrsInf (ActDowComDeg+142)
|
#define ActChgHavReaCrsInf (ActDowComDeg+143)
|
||||||
#define ActChgHavReaTchGui (ActDowComDeg+143)
|
#define ActChgHavReaTchGui (ActDowComDeg+144)
|
||||||
#define ActChgHavReaSylLec (ActDowComDeg+144)
|
#define ActChgHavReaSylLec (ActDowComDeg+145)
|
||||||
#define ActChgHavReaSylPra (ActDowComDeg+145)
|
#define ActChgHavReaSylPra (ActDowComDeg+146)
|
||||||
#define ActChgHavReaBib (ActDowComDeg+146)
|
#define ActChgHavReaBib (ActDowComDeg+147)
|
||||||
#define ActChgHavReaFAQ (ActDowComDeg+147)
|
#define ActChgHavReaFAQ (ActDowComDeg+148)
|
||||||
#define ActChgHavReaCrsLnk (ActDowComDeg+148)
|
#define ActChgHavReaCrsLnk (ActDowComDeg+149)
|
||||||
|
|
||||||
#define ActSelInfSrcCrsInf (ActDowComDeg+149)
|
#define ActSelInfSrcCrsInf (ActDowComDeg+150)
|
||||||
#define ActSelInfSrcTchGui (ActDowComDeg+150)
|
#define ActSelInfSrcTchGui (ActDowComDeg+151)
|
||||||
#define ActSelInfSrcSylLec (ActDowComDeg+151)
|
#define ActSelInfSrcSylLec (ActDowComDeg+152)
|
||||||
#define ActSelInfSrcSylPra (ActDowComDeg+152)
|
#define ActSelInfSrcSylPra (ActDowComDeg+153)
|
||||||
#define ActSelInfSrcBib (ActDowComDeg+153)
|
#define ActSelInfSrcBib (ActDowComDeg+154)
|
||||||
#define ActSelInfSrcFAQ (ActDowComDeg+154)
|
#define ActSelInfSrcFAQ (ActDowComDeg+155)
|
||||||
#define ActSelInfSrcCrsLnk (ActDowComDeg+155)
|
#define ActSelInfSrcCrsLnk (ActDowComDeg+156)
|
||||||
#define ActRcvURLCrsInf (ActDowComDeg+156)
|
#define ActRcvURLCrsInf (ActDowComDeg+157)
|
||||||
#define ActRcvURLTchGui (ActDowComDeg+157)
|
#define ActRcvURLTchGui (ActDowComDeg+158)
|
||||||
#define ActRcvURLSylLec (ActDowComDeg+158)
|
#define ActRcvURLSylLec (ActDowComDeg+159)
|
||||||
#define ActRcvURLSylPra (ActDowComDeg+159)
|
#define ActRcvURLSylPra (ActDowComDeg+160)
|
||||||
#define ActRcvURLBib (ActDowComDeg+160)
|
#define ActRcvURLBib (ActDowComDeg+161)
|
||||||
#define ActRcvURLFAQ (ActDowComDeg+161)
|
#define ActRcvURLFAQ (ActDowComDeg+162)
|
||||||
#define ActRcvURLCrsLnk (ActDowComDeg+162)
|
#define ActRcvURLCrsLnk (ActDowComDeg+163)
|
||||||
#define ActRcvPagCrsInf (ActDowComDeg+163)
|
#define ActRcvPagCrsInf (ActDowComDeg+164)
|
||||||
#define ActRcvPagTchGui (ActDowComDeg+164)
|
#define ActRcvPagTchGui (ActDowComDeg+165)
|
||||||
#define ActRcvPagSylLec (ActDowComDeg+165)
|
#define ActRcvPagSylLec (ActDowComDeg+166)
|
||||||
#define ActRcvPagSylPra (ActDowComDeg+166)
|
#define ActRcvPagSylPra (ActDowComDeg+167)
|
||||||
#define ActRcvPagBib (ActDowComDeg+167)
|
#define ActRcvPagBib (ActDowComDeg+168)
|
||||||
#define ActRcvPagFAQ (ActDowComDeg+168)
|
#define ActRcvPagFAQ (ActDowComDeg+169)
|
||||||
#define ActRcvPagCrsLnk (ActDowComDeg+169)
|
#define ActRcvPagCrsLnk (ActDowComDeg+170)
|
||||||
#define ActEditorCrsInf (ActDowComDeg+170)
|
#define ActEditorCrsInf (ActDowComDeg+171)
|
||||||
#define ActEditorTchGui (ActDowComDeg+171)
|
#define ActEditorTchGui (ActDowComDeg+172)
|
||||||
#define ActEditorSylLec (ActDowComDeg+172)
|
#define ActEditorSylLec (ActDowComDeg+173)
|
||||||
#define ActEditorSylPra (ActDowComDeg+173)
|
#define ActEditorSylPra (ActDowComDeg+174)
|
||||||
#define ActEditorBib (ActDowComDeg+174)
|
#define ActEditorBib (ActDowComDeg+175)
|
||||||
#define ActEditorFAQ (ActDowComDeg+175)
|
#define ActEditorFAQ (ActDowComDeg+176)
|
||||||
#define ActEditorCrsLnk (ActDowComDeg+176)
|
#define ActEditorCrsLnk (ActDowComDeg+177)
|
||||||
#define ActPlaTxtEdiCrsInf (ActDowComDeg+177)
|
#define ActPlaTxtEdiCrsInf (ActDowComDeg+178)
|
||||||
#define ActPlaTxtEdiTchGui (ActDowComDeg+178)
|
#define ActPlaTxtEdiTchGui (ActDowComDeg+179)
|
||||||
#define ActPlaTxtEdiSylLec (ActDowComDeg+179)
|
#define ActPlaTxtEdiSylLec (ActDowComDeg+180)
|
||||||
#define ActPlaTxtEdiSylPra (ActDowComDeg+180)
|
#define ActPlaTxtEdiSylPra (ActDowComDeg+181)
|
||||||
#define ActPlaTxtEdiBib (ActDowComDeg+181)
|
#define ActPlaTxtEdiBib (ActDowComDeg+182)
|
||||||
#define ActPlaTxtEdiFAQ (ActDowComDeg+182)
|
#define ActPlaTxtEdiFAQ (ActDowComDeg+183)
|
||||||
#define ActPlaTxtEdiCrsLnk (ActDowComDeg+183)
|
#define ActPlaTxtEdiCrsLnk (ActDowComDeg+184)
|
||||||
#define ActRchTxtEdiCrsInf (ActDowComDeg+184)
|
#define ActRchTxtEdiCrsInf (ActDowComDeg+185)
|
||||||
#define ActRchTxtEdiTchGui (ActDowComDeg+185)
|
#define ActRchTxtEdiTchGui (ActDowComDeg+186)
|
||||||
#define ActRchTxtEdiSylLec (ActDowComDeg+186)
|
#define ActRchTxtEdiSylLec (ActDowComDeg+187)
|
||||||
#define ActRchTxtEdiSylPra (ActDowComDeg+187)
|
#define ActRchTxtEdiSylPra (ActDowComDeg+188)
|
||||||
#define ActRchTxtEdiBib (ActDowComDeg+188)
|
#define ActRchTxtEdiBib (ActDowComDeg+189)
|
||||||
#define ActRchTxtEdiFAQ (ActDowComDeg+189)
|
#define ActRchTxtEdiFAQ (ActDowComDeg+190)
|
||||||
#define ActRchTxtEdiCrsLnk (ActDowComDeg+190)
|
#define ActRchTxtEdiCrsLnk (ActDowComDeg+191)
|
||||||
#define ActRcvPlaTxtCrsInf (ActDowComDeg+191)
|
#define ActRcvPlaTxtCrsInf (ActDowComDeg+192)
|
||||||
#define ActRcvPlaTxtTchGui (ActDowComDeg+192)
|
#define ActRcvPlaTxtTchGui (ActDowComDeg+193)
|
||||||
#define ActRcvPlaTxtSylLec (ActDowComDeg+193)
|
#define ActRcvPlaTxtSylLec (ActDowComDeg+194)
|
||||||
#define ActRcvPlaTxtSylPra (ActDowComDeg+194)
|
#define ActRcvPlaTxtSylPra (ActDowComDeg+195)
|
||||||
#define ActRcvPlaTxtBib (ActDowComDeg+195)
|
#define ActRcvPlaTxtBib (ActDowComDeg+196)
|
||||||
#define ActRcvPlaTxtFAQ (ActDowComDeg+196)
|
#define ActRcvPlaTxtFAQ (ActDowComDeg+197)
|
||||||
#define ActRcvPlaTxtCrsLnk (ActDowComDeg+197)
|
#define ActRcvPlaTxtCrsLnk (ActDowComDeg+198)
|
||||||
#define ActRcvRchTxtCrsInf (ActDowComDeg+198)
|
#define ActRcvRchTxtCrsInf (ActDowComDeg+199)
|
||||||
#define ActRcvRchTxtTchGui (ActDowComDeg+199)
|
#define ActRcvRchTxtTchGui (ActDowComDeg+200)
|
||||||
#define ActRcvRchTxtSylLec (ActDowComDeg+200)
|
#define ActRcvRchTxtSylLec (ActDowComDeg+201)
|
||||||
#define ActRcvRchTxtSylPra (ActDowComDeg+201)
|
#define ActRcvRchTxtSylPra (ActDowComDeg+202)
|
||||||
#define ActRcvRchTxtBib (ActDowComDeg+202)
|
#define ActRcvRchTxtBib (ActDowComDeg+203)
|
||||||
#define ActRcvRchTxtFAQ (ActDowComDeg+203)
|
#define ActRcvRchTxtFAQ (ActDowComDeg+204)
|
||||||
#define ActRcvRchTxtCrsLnk (ActDowComDeg+204)
|
#define ActRcvRchTxtCrsLnk (ActDowComDeg+205)
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
/***************************** Assessment tab ********************************/
|
/***************************** Assessment tab ********************************/
|
||||||
|
@ -1261,7 +1262,7 @@ typedef int Act_Action_t; // Must be a signed type, because -1 is used to indica
|
||||||
// Actions in menu
|
// Actions in menu
|
||||||
#define ActFrmLogIn (ActSeeAllStaCrs+ 1)
|
#define ActFrmLogIn (ActSeeAllStaCrs+ 1)
|
||||||
#define ActMyCrs (ActSeeAllStaCrs+ 2)
|
#define ActMyCrs (ActSeeAllStaCrs+ 2)
|
||||||
#define ActSeeMyTimTbl (ActSeeAllStaCrs+ 3)
|
#define ActSeeMyTT (ActSeeAllStaCrs+ 3)
|
||||||
#define ActFrmUsrAcc (ActSeeAllStaCrs+ 4)
|
#define ActFrmUsrAcc (ActSeeAllStaCrs+ 4)
|
||||||
#define ActReqEdiRecCom (ActSeeAllStaCrs+ 5)
|
#define ActReqEdiRecCom (ActSeeAllStaCrs+ 5)
|
||||||
#define ActEdiPrf (ActSeeAllStaCrs+ 6)
|
#define ActEdiPrf (ActSeeAllStaCrs+ 6)
|
||||||
|
@ -1326,27 +1327,29 @@ typedef int Act_Action_t; // Must be a signed type, because -1 is used to indica
|
||||||
|
|
||||||
#define ActPrnUsrQR (ActSeeAllStaCrs+58)
|
#define ActPrnUsrQR (ActSeeAllStaCrs+58)
|
||||||
|
|
||||||
#define ActPrnMyTimTbl (ActSeeAllStaCrs+59)
|
#define ActPrnMyTT (ActSeeAllStaCrs+59)
|
||||||
#define ActEdiTut (ActSeeAllStaCrs+60)
|
#define ActEdiTut (ActSeeAllStaCrs+60)
|
||||||
#define ActChgTut (ActSeeAllStaCrs+61)
|
#define ActChgTut (ActSeeAllStaCrs+61)
|
||||||
#define ActReqRemFilBrf (ActSeeAllStaCrs+62)
|
#define ActChgMyTT1stDay (ActSeeAllStaCrs+62)
|
||||||
#define ActRemFilBrf (ActSeeAllStaCrs+63)
|
|
||||||
#define ActRemFolBrf (ActSeeAllStaCrs+64)
|
#define ActReqRemFilBrf (ActSeeAllStaCrs+63)
|
||||||
#define ActCopBrf (ActSeeAllStaCrs+65)
|
#define ActRemFilBrf (ActSeeAllStaCrs+64)
|
||||||
#define ActPasBrf (ActSeeAllStaCrs+66)
|
#define ActRemFolBrf (ActSeeAllStaCrs+65)
|
||||||
#define ActRemTreBrf (ActSeeAllStaCrs+67)
|
#define ActCopBrf (ActSeeAllStaCrs+66)
|
||||||
#define ActFrmCreBrf (ActSeeAllStaCrs+68)
|
#define ActPasBrf (ActSeeAllStaCrs+67)
|
||||||
#define ActCreFolBrf (ActSeeAllStaCrs+69)
|
#define ActRemTreBrf (ActSeeAllStaCrs+68)
|
||||||
#define ActCreLnkBrf (ActSeeAllStaCrs+70)
|
#define ActFrmCreBrf (ActSeeAllStaCrs+69)
|
||||||
#define ActRenFolBrf (ActSeeAllStaCrs+71)
|
#define ActCreFolBrf (ActSeeAllStaCrs+70)
|
||||||
#define ActRcvFilBrfDZ (ActSeeAllStaCrs+72)
|
#define ActCreLnkBrf (ActSeeAllStaCrs+71)
|
||||||
#define ActRcvFilBrfCla (ActSeeAllStaCrs+73)
|
#define ActRenFolBrf (ActSeeAllStaCrs+72)
|
||||||
#define ActExpBrf (ActSeeAllStaCrs+74)
|
#define ActRcvFilBrfDZ (ActSeeAllStaCrs+73)
|
||||||
#define ActConBrf (ActSeeAllStaCrs+75)
|
#define ActRcvFilBrfCla (ActSeeAllStaCrs+74)
|
||||||
#define ActZIPBrf (ActSeeAllStaCrs+76)
|
#define ActExpBrf (ActSeeAllStaCrs+75)
|
||||||
#define ActReqDatBrf (ActSeeAllStaCrs+77)
|
#define ActConBrf (ActSeeAllStaCrs+76)
|
||||||
#define ActChgDatBrf (ActSeeAllStaCrs+78)
|
#define ActZIPBrf (ActSeeAllStaCrs+77)
|
||||||
#define ActDowBrf (ActSeeAllStaCrs+79)
|
#define ActReqDatBrf (ActSeeAllStaCrs+78)
|
||||||
|
#define ActChgDatBrf (ActSeeAllStaCrs+79)
|
||||||
|
#define ActDowBrf (ActSeeAllStaCrs+80)
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
/******************************** Public types *******************************/
|
/******************************** Public types *******************************/
|
||||||
|
|
|
@ -59,8 +59,7 @@ const bool Cal_DayIsValidAsFirstDayOfWeek[7] =
|
||||||
/***************************** Private prototypes ****************************/
|
/***************************** Private prototypes ****************************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
static void Cal_ShowFormInCalendarToSelectFirstDayOfWeek (void);
|
static void Cal_ShowFormToSelFirstDayOfWeek (Act_Action_t Action,const char *ClassIcon);
|
||||||
static void Cal_ShowFormToSelectFirstDayOfWeek (Act_Action_t Action,const char *ClassIcon);
|
|
||||||
|
|
||||||
static unsigned Cal_GetParamFirstDayOfWeek (void);
|
static unsigned Cal_GetParamFirstDayOfWeek (void);
|
||||||
|
|
||||||
|
@ -73,7 +72,7 @@ void Cal_PutIconsToSelectFirstDayOfWeek (void)
|
||||||
extern const char *Txt_Calendar;
|
extern const char *Txt_Calendar;
|
||||||
|
|
||||||
Lay_StartRoundFrameTable (NULL,0,Txt_Calendar);
|
Lay_StartRoundFrameTable (NULL,0,Txt_Calendar);
|
||||||
Cal_ShowFormToSelectFirstDayOfWeek (ActChg1stDay,"ICON32x32");
|
Cal_ShowFormToSelFirstDayOfWeek (ActChg1stDay,"ICON32x32");
|
||||||
Lay_EndRoundFrameTable ();
|
Lay_EndRoundFrameTable ();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -81,10 +80,10 @@ void Cal_PutIconsToSelectFirstDayOfWeek (void)
|
||||||
/************** Show form to select the first day of the week ****************/
|
/************** Show form to select the first day of the week ****************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
static void Cal_ShowFormInCalendarToSelectFirstDayOfWeek (void)
|
void Cal_ShowIntegratedFormToSelFirstDayOfWeek (Act_Action_t Action)
|
||||||
{
|
{
|
||||||
fprintf (Gbl.F.Out,"<table class=\"CELLS_PAD_2\" style=\"margin:0 auto;\">");
|
fprintf (Gbl.F.Out,"<table class=\"CELLS_PAD_2\" style=\"margin:0 auto;\">");
|
||||||
Cal_ShowFormToSelectFirstDayOfWeek (ActChgCal1stDay,"ICON20x20");
|
Cal_ShowFormToSelFirstDayOfWeek (Action,"ICON20x20");
|
||||||
fprintf (Gbl.F.Out,"</table>");
|
fprintf (Gbl.F.Out,"</table>");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -92,7 +91,7 @@ static void Cal_ShowFormInCalendarToSelectFirstDayOfWeek (void)
|
||||||
/******** Show form in calendar to select the first day of the week **********/
|
/******** Show form in calendar to select the first day of the week **********/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
static void Cal_ShowFormToSelectFirstDayOfWeek (Act_Action_t Action,const char *ClassIcon)
|
static void Cal_ShowFormToSelFirstDayOfWeek (Act_Action_t Action,const char *ClassIcon)
|
||||||
{
|
{
|
||||||
extern const char *Txt_First_day_of_the_week;
|
extern const char *Txt_First_day_of_the_week;
|
||||||
extern const char *Txt_DAYS_SMALL[7];
|
extern const char *Txt_DAYS_SMALL[7];
|
||||||
|
@ -266,7 +265,7 @@ void Cal_DrawCalendar (void)
|
||||||
|
|
||||||
/* Show form to change first day of week */
|
/* Show form to change first day of week */
|
||||||
if (!PrintView)
|
if (!PrintView)
|
||||||
Cal_ShowFormInCalendarToSelectFirstDayOfWeek ();
|
Cal_ShowIntegratedFormToSelFirstDayOfWeek (ActChgCal1stDay);
|
||||||
|
|
||||||
/* JavaScript will write HTML here */
|
/* JavaScript will write HTML here */
|
||||||
fprintf (Gbl.F.Out,"<div id=\"calendar\">"
|
fprintf (Gbl.F.Out,"<div id=\"calendar\">"
|
||||||
|
|
|
@ -27,6 +27,8 @@
|
||||||
/********************************* Headers ***********************************/
|
/********************************* Headers ***********************************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
|
#include "swad_action.h"
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
/***************************** Public constants ******************************/
|
/***************************** Public constants ******************************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
@ -42,6 +44,7 @@
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
void Cal_PutIconsToSelectFirstDayOfWeek (void);
|
void Cal_PutIconsToSelectFirstDayOfWeek (void);
|
||||||
|
void Cal_ShowIntegratedFormToSelFirstDayOfWeek (Act_Action_t Action);
|
||||||
void Cal_ChangeFirstDayOfWeek (void);
|
void Cal_ChangeFirstDayOfWeek (void);
|
||||||
|
|
||||||
void Cal_DrawCurrentMonth (void);
|
void Cal_DrawCurrentMonth (void);
|
||||||
|
|
|
@ -115,12 +115,13 @@
|
||||||
/****************************** Public constants *****************************/
|
/****************************** Public constants *****************************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
#define Log_PLATFORM_VERSION "SWAD 15.53 (2015/11/30)"
|
#define Log_PLATFORM_VERSION "SWAD 15.54 (2015/12/01)"
|
||||||
#define CSS_FILE "swad15.53.css"
|
#define CSS_FILE "swad15.54.css"
|
||||||
|
|
||||||
// Number of lines (includes comments but not blank lines) has been got with the following command:
|
// Number of lines (includes comments but not blank lines) has been got with the following command:
|
||||||
// nl swad*.c swad*.h css/swad*.css py/swad*.py js/swad*.js soap/swad*.h sql/swad*.sql | tail -1
|
// nl swad*.c swad*.h css/swad*.css py/swad*.py js/swad*.js soap/swad*.h sql/swad*.sql | tail -1
|
||||||
/*
|
/*
|
||||||
|
Version 15.54: Dec 01, 2015 Selection of the first day of the week in timetables. (186736 lines)
|
||||||
Version 15.53: Nov 30, 2015 Sunday can be the first day of the week in timetable, depending on user's preferences. (186689 lines)
|
Version 15.53: Nov 30, 2015 Sunday can be the first day of the week in timetable, depending on user's preferences. (186689 lines)
|
||||||
Version 15.52: Nov 30, 2015 Timetable now starts at 6 a.m. instead of 7 a.m.
|
Version 15.52: Nov 30, 2015 Timetable now starts at 6 a.m. instead of 7 a.m.
|
||||||
Changes in layout of timetable. (186656 lines)
|
Changes in layout of timetable. (186656 lines)
|
||||||
|
|
14
swad_group.c
14
swad_group.c
|
@ -4181,7 +4181,7 @@ void Grp_ShowSelectorWhichGrps (void)
|
||||||
Gbl.FormId,Txt_Show_WHICH_groups[WhichGrps]);
|
Gbl.FormId,Txt_Show_WHICH_groups[WhichGrps]);
|
||||||
}
|
}
|
||||||
fprintf (Gbl.F.Out,"</ul>"
|
fprintf (Gbl.F.Out,"</ul>"
|
||||||
"</div>");
|
"</div>");
|
||||||
}
|
}
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
@ -4211,19 +4211,21 @@ void Grp_GetParamWhichGrps (void)
|
||||||
else // This parameter does not exist ==> set default value
|
else // This parameter does not exist ==> set default value
|
||||||
switch (Gbl.CurrentAct)
|
switch (Gbl.CurrentAct)
|
||||||
{
|
{
|
||||||
case ActSeeCrsTimTbl:
|
case ActSeeCrsTT:
|
||||||
case ActPrnCrsTimTbl:
|
case ActPrnCrsTT:
|
||||||
|
case ActChgCrsTT1stDay:
|
||||||
case ActSeeAsg:
|
case ActSeeAsg:
|
||||||
case ActSeeAtt:
|
case ActSeeAtt:
|
||||||
case ActSeeAllSvy:
|
case ActSeeAllSvy:
|
||||||
Gbl.CurrentCrs.Grps.WhichGrps = Gbl.Usrs.Me.IBelongToCurrentCrs ? Grp_ONLY_MY_GROUPS : // If I belong to this course ==> see only my groups
|
Gbl.CurrentCrs.Grps.WhichGrps = Gbl.Usrs.Me.IBelongToCurrentCrs ? Grp_ONLY_MY_GROUPS : // If I belong to this course ==> see only my groups
|
||||||
Grp_ALL_GROUPS; // If I don't belong to this course ==> see all groups
|
Grp_ALL_GROUPS; // If I don't belong to this course ==> see all groups
|
||||||
break;
|
break;
|
||||||
case ActSeeMyTimTbl:
|
case ActSeeMyTT:
|
||||||
case ActPrnMyTimTbl:
|
case ActPrnMyTT:
|
||||||
|
case ActChgMyTT1stDay:
|
||||||
Gbl.CurrentCrs.Grps.WhichGrps = Grp_ONLY_MY_GROUPS; // By default, see only my groups
|
Gbl.CurrentCrs.Grps.WhichGrps = Grp_ONLY_MY_GROUPS; // By default, see only my groups
|
||||||
break;
|
break;
|
||||||
default: // Control never must enter here
|
default: // Control never should enter here
|
||||||
Gbl.CurrentCrs.Grps.WhichGrps = Grp_ALL_GROUPS;
|
Gbl.CurrentCrs.Grps.WhichGrps = Grp_ALL_GROUPS;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
|
@ -82,8 +82,8 @@ void Mnu_WriteMenuThisTab (void)
|
||||||
bool IsTheSelectedAction;
|
bool IsTheSelectedAction;
|
||||||
|
|
||||||
/***** Menu start *****/
|
/***** Menu start *****/
|
||||||
fprintf (Gbl.F.Out,"<div class=\"MENU_LIST\">"
|
fprintf (Gbl.F.Out,"<div class=\"MENU_LIST_CONTAINER\">"
|
||||||
"<ul>");
|
"<ul class=\"MENU_LIST\">");
|
||||||
|
|
||||||
/***** Loop to write all options in menu. Each row holds an option *****/
|
/***** Loop to write all options in menu. Each row holds an option *****/
|
||||||
for (NumOptInMenu = 0;
|
for (NumOptInMenu = 0;
|
||||||
|
|
|
@ -17274,7 +17274,7 @@ const char *Txt_MENU_TITLE[Tab_NUM_TABS][Act_MAX_OPTIONS_IN_MENU_PER_TAB] =
|
||||||
"Compartilhados"
|
"Compartilhados"
|
||||||
#endif
|
#endif
|
||||||
,
|
,
|
||||||
// ActSeeCrsTimTbl
|
// ActSeeCrsTT
|
||||||
#if L==0
|
#if L==0
|
||||||
"Horari"
|
"Horari"
|
||||||
#elif L==1
|
#elif L==1
|
||||||
|
@ -18124,7 +18124,7 @@ const char *Txt_MENU_TITLE[Tab_NUM_TABS][Act_MAX_OPTIONS_IN_MENU_PER_TAB] =
|
||||||
"Disciplinas"
|
"Disciplinas"
|
||||||
#endif
|
#endif
|
||||||
,
|
,
|
||||||
// ActSeeMyTimTbl
|
// ActSeeMyTT
|
||||||
#if L==0
|
#if L==0
|
||||||
"Horari"
|
"Horari"
|
||||||
#elif L==1
|
#elif L==1
|
||||||
|
@ -19168,7 +19168,7 @@ const char *Txt_MENU_SUBTITLE[Tab_NUM_TABS][Act_MAX_OPTIONS_IN_MENU_PER_TAB] =
|
||||||
"Arquivos compartilhados"
|
"Arquivos compartilhados"
|
||||||
#endif
|
#endif
|
||||||
,
|
,
|
||||||
// ActSeeCrsTimTbl
|
// ActSeeCrsTT
|
||||||
#if L==0
|
#if L==0
|
||||||
"Horari de classes de l'assignatura"
|
"Horari de classes de l'assignatura"
|
||||||
#elif L==1
|
#elif L==1
|
||||||
|
@ -20055,7 +20055,7 @@ const char *Txt_MENU_SUBTITLE[Tab_NUM_TABS][Act_MAX_OPTIONS_IN_MENU_PER_TAB] =
|
||||||
"Disciplinas a que pertenço"
|
"Disciplinas a que pertenço"
|
||||||
#endif
|
#endif
|
||||||
,
|
,
|
||||||
// ActSeeMyTimTbl
|
// ActSeeMyTT
|
||||||
#if L==0
|
#if L==0
|
||||||
"Horari conjunt de totes les meves assignatures a la plataforma"
|
"Horari conjunt de totes les meves assignatures a la plataforma"
|
||||||
#elif L==1
|
#elif L==1
|
||||||
|
|
147
swad_timetable.c
147
swad_timetable.c
|
@ -29,6 +29,7 @@
|
||||||
#include <stdio.h> // For fprintf, etc.
|
#include <stdio.h> // For fprintf, etc.
|
||||||
#include <string.h> // For string functions
|
#include <string.h> // For string functions
|
||||||
|
|
||||||
|
#include "swad_calendar.h"
|
||||||
#include "swad_database.h"
|
#include "swad_database.h"
|
||||||
#include "swad_global.h"
|
#include "swad_global.h"
|
||||||
#include "swad_parameter.h"
|
#include "swad_parameter.h"
|
||||||
|
@ -114,16 +115,19 @@ bool TimeTableHoursChecked[TT_HOURS_PER_DAY*2];
|
||||||
|
|
||||||
static void TT_ShowTimeTableGrpsSelected (void);
|
static void TT_ShowTimeTableGrpsSelected (void);
|
||||||
static void TT_GetParamsTimeTable (void);
|
static void TT_GetParamsTimeTable (void);
|
||||||
|
static void TT_ShowSelectorWhichGrps (Act_Action_t Action);
|
||||||
|
|
||||||
static void TT_WriteCrsTimeTableIntoDB (long CrsCod);
|
static void TT_WriteCrsTimeTableIntoDB (long CrsCod);
|
||||||
static void TT_WriteTutTimeTableIntoDB (long UsrCod);
|
static void TT_WriteTutTimeTableIntoDB (long UsrCod);
|
||||||
static void TT_CreatTimeTableFromDB (TT_TimeTableType_t TimeTableType,long UsrCod);
|
static void TT_CreatTimeTableFromDB (TT_TimeTableType_t TimeTableType,long UsrCod);
|
||||||
static void TT_ModifTimeTable (void);
|
static void TT_ModifTimeTable (void);
|
||||||
static void TT_DrawTimeTable (void);
|
static void TT_DrawTimeTable (TT_TimeTableType_t TimeTableType);
|
||||||
static void TT_TimeTableDrawAdjustRow (void);
|
static void TT_TimeTableDrawAdjustRow (void);
|
||||||
static void TT_TimeTableDrawDaysCells (void);
|
static void TT_TimeTableDrawDaysCells (void);
|
||||||
static unsigned TT_TimeTableCalculateColsToDraw (unsigned Day,unsigned Hour);
|
static unsigned TT_TimeTableCalculateColsToDraw (unsigned Day,unsigned Hour);
|
||||||
static void TT_DrawCellAlignTimeTable (void);
|
static void TT_DrawCellAlignTimeTable (void);
|
||||||
static void TT_TimeTableDrawCell (unsigned Day,unsigned Hour,unsigned Column,unsigned ColSpan,
|
static void TT_TimeTableDrawCell (TT_TimeTableType_t TimeTableType,
|
||||||
|
unsigned Day,unsigned Hour,unsigned Column,unsigned ColSpan,
|
||||||
long CrsCod,TT_HourType_t HourType,TT_ClassType_t ClassType,unsigned Duration,char *Group,long GrpCod,char *Place);
|
long CrsCod,TT_HourType_t HourType,TT_ClassType_t ClassType,unsigned Duration,char *Group,long GrpCod,char *Place);
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
@ -221,45 +225,54 @@ void TT_ShowClassTimeTable (void)
|
||||||
extern const char *Txt_Edit_office_hours;
|
extern const char *Txt_Edit_office_hours;
|
||||||
extern const char *Txt_Print;
|
extern const char *Txt_Print;
|
||||||
extern const char *Txt_TIMETABLE_TYPES[TT_NUM_TIMETABLE_TYPES];
|
extern const char *Txt_TIMETABLE_TYPES[TT_NUM_TIMETABLE_TYPES];
|
||||||
TT_TimeTableType_t TimeTableType = TT_COURSE_TIMETABLE;
|
TT_TimeTableType_t TimeTableType = TT_COURSE_TIMETABLE; // Initialized to avoid warning
|
||||||
bool PutEditButton = (Gbl.CurrentAct == ActSeeCrsTimTbl &&
|
bool PrintView;
|
||||||
Gbl.Usrs.Me.LoggedRole >= Rol_TEACHER);
|
bool PutEditCrsTT;
|
||||||
bool PutEditOfficeHours = (Gbl.CurrentAct == ActSeeMyTimTbl &&
|
bool PutEditOfficeHours;
|
||||||
(Gbl.Usrs.Me.AvailableRoles & (1 << Rol_TEACHER)));
|
|
||||||
bool PrintView = (Gbl.CurrentAct == ActPrnCrsTimTbl ||
|
/***** Initializations *****/
|
||||||
Gbl.CurrentAct == ActPrnMyTimTbl);
|
switch (Gbl.CurrentAct)
|
||||||
|
{
|
||||||
|
case ActSeeCrsTT:
|
||||||
|
case ActPrnCrsTT:
|
||||||
|
case ActChgCrsTT1stDay:
|
||||||
|
TimeTableType = TT_COURSE_TIMETABLE;
|
||||||
|
break;
|
||||||
|
case ActSeeMyTT:
|
||||||
|
case ActPrnMyTT:
|
||||||
|
case ActChgMyTT1stDay:
|
||||||
|
TimeTableType = TT_MY_TIMETABLE;
|
||||||
|
break;
|
||||||
|
default:
|
||||||
|
Lay_ShowErrorAndExit ("Wrong action.");
|
||||||
|
}
|
||||||
|
PrintView = (Gbl.CurrentAct == ActPrnCrsTT ||
|
||||||
|
Gbl.CurrentAct == ActPrnMyTT);
|
||||||
|
PutEditCrsTT = (TimeTableType == TT_COURSE_TIMETABLE &&
|
||||||
|
!PrintView &&
|
||||||
|
Gbl.Usrs.Me.LoggedRole >= Rol_TEACHER);
|
||||||
|
PutEditOfficeHours = (TimeTableType == TT_MY_TIMETABLE &&
|
||||||
|
!PrintView &&
|
||||||
|
(Gbl.Usrs.Me.AvailableRoles & (1 << Rol_TEACHER)));
|
||||||
|
|
||||||
/***** Get whether to show only my groups or all groups *****/
|
/***** Get whether to show only my groups or all groups *****/
|
||||||
Grp_GetParamWhichGrps ();
|
Grp_GetParamWhichGrps ();
|
||||||
|
|
||||||
/***** Start of frame and title *****/
|
|
||||||
switch (Gbl.CurrentAct)
|
|
||||||
{
|
|
||||||
case ActSeeCrsTimTbl:
|
|
||||||
case ActPrnCrsTimTbl:
|
|
||||||
TimeTableType = TT_COURSE_TIMETABLE;
|
|
||||||
break;
|
|
||||||
case ActSeeMyTimTbl:
|
|
||||||
case ActPrnMyTimTbl:
|
|
||||||
TimeTableType = TT_MY_TIMETABLE;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
|
|
||||||
/***** Put buttons *****/
|
/***** Put buttons *****/
|
||||||
if (PutEditButton || PutEditOfficeHours || !PrintView)
|
if (PutEditCrsTT || PutEditOfficeHours || !PrintView)
|
||||||
{
|
{
|
||||||
fprintf (Gbl.F.Out,"<div class=\"CONTEXT_MENU\">");
|
fprintf (Gbl.F.Out,"<div class=\"CONTEXT_MENU\">");
|
||||||
|
|
||||||
if (PutEditButton)
|
if (PutEditCrsTT)
|
||||||
Act_PutContextualLink (ActEdiCrsTimTbl,Grp_PutParamWhichGrps,
|
Act_PutContextualLink (ActEdiCrsTT,Grp_PutParamWhichGrps,
|
||||||
"edit",Txt_Edit);
|
"edit",Txt_Edit);
|
||||||
|
|
||||||
if (PutEditOfficeHours)
|
if (PutEditOfficeHours)
|
||||||
Act_PutContextualLink (ActEdiTut,NULL,"edit",Txt_Edit_office_hours);
|
Act_PutContextualLink (ActEdiTut,NULL,"edit",Txt_Edit_office_hours);
|
||||||
|
|
||||||
if (!PrintView)
|
if (!PrintView)
|
||||||
Act_PutContextualLink (Gbl.CurrentAct == ActSeeCrsTimTbl ? ActPrnCrsTimTbl :
|
Act_PutContextualLink (TimeTableType == TT_COURSE_TIMETABLE ? ActPrnCrsTT :
|
||||||
ActPrnMyTimTbl,
|
ActPrnMyTT,
|
||||||
Grp_PutParamWhichGrps,"print",Txt_Print);
|
Grp_PutParamWhichGrps,"print",Txt_Print);
|
||||||
|
|
||||||
fprintf (Gbl.F.Out,"</div>");
|
fprintf (Gbl.F.Out,"</div>");
|
||||||
|
@ -278,12 +291,17 @@ void TT_ShowClassTimeTable (void)
|
||||||
TT_ShowTimeTableGrpsSelected ();
|
TT_ShowTimeTableGrpsSelected ();
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
/***** Select whether show only my groups or all groups *****/
|
|
||||||
fprintf (Gbl.F.Out,"<tr>"
|
fprintf (Gbl.F.Out,"<tr>"
|
||||||
"<td>");
|
"<td>");
|
||||||
Act_FormStart (Gbl.CurrentAct);
|
|
||||||
Grp_ShowSelectorWhichGrps ();
|
/***** Select whether show only my groups or all groups *****/
|
||||||
Act_FormEnd ();
|
TT_ShowSelectorWhichGrps (TimeTableType == TT_COURSE_TIMETABLE ? ActSeeCrsTT :
|
||||||
|
ActSeeMyTT);
|
||||||
|
|
||||||
|
/***** Show form to change first day of week *****/
|
||||||
|
Cal_ShowIntegratedFormToSelFirstDayOfWeek (TimeTableType == TT_COURSE_TIMETABLE ? ActChgCrsTT1stDay :
|
||||||
|
ActChgMyTT1stDay);
|
||||||
|
|
||||||
fprintf (Gbl.F.Out,"</td>"
|
fprintf (Gbl.F.Out,"</td>"
|
||||||
"</tr>");
|
"</tr>");
|
||||||
}
|
}
|
||||||
|
@ -299,6 +317,17 @@ void TT_ShowClassTimeTable (void)
|
||||||
Lay_EndRoundFrameTable ();
|
Lay_EndRoundFrameTable ();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/*****************************************************************************/
|
||||||
|
/************* Select whether show only my groups or all groups **************/
|
||||||
|
/*****************************************************************************/
|
||||||
|
|
||||||
|
static void TT_ShowSelectorWhichGrps (Act_Action_t Action)
|
||||||
|
{
|
||||||
|
Act_FormStart (Action);
|
||||||
|
Grp_ShowSelectorWhichGrps ();
|
||||||
|
Act_FormEnd ();
|
||||||
|
}
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
/********************** Show course timetable for edition ********************/
|
/********************** Show course timetable for edition ********************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
@ -310,7 +339,7 @@ void TT_EditCrsTimeTable (void)
|
||||||
|
|
||||||
/***** Link (form) to see my timetable *****/
|
/***** Link (form) to see my timetable *****/
|
||||||
fprintf (Gbl.F.Out,"<div class=\"CONTEXT_MENU\">");
|
fprintf (Gbl.F.Out,"<div class=\"CONTEXT_MENU\">");
|
||||||
Act_PutContextualLink (ActSeeCrsTimTbl,NULL,"clock",Txt_Show_timetable);
|
Act_PutContextualLink (ActSeeCrsTT,NULL,"clock",Txt_Show_timetable);
|
||||||
fprintf (Gbl.F.Out,"</div>");
|
fprintf (Gbl.F.Out,"</div>");
|
||||||
|
|
||||||
/***** Editable time table *****/
|
/***** Editable time table *****/
|
||||||
|
@ -330,7 +359,7 @@ void TT_ShowMyTutTimeTable (void)
|
||||||
|
|
||||||
/***** Link (form) to see my timetable *****/
|
/***** Link (form) to see my timetable *****/
|
||||||
fprintf (Gbl.F.Out,"<div class=\"CONTEXT_MENU\">");
|
fprintf (Gbl.F.Out,"<div class=\"CONTEXT_MENU\">");
|
||||||
Act_PutContextualLink (ActSeeMyTimTbl,NULL,"clock",Txt_Show_timetable);
|
Act_PutContextualLink (ActSeeMyTT,NULL,"clock",Txt_Show_timetable);
|
||||||
fprintf (Gbl.F.Out,"</div>");
|
fprintf (Gbl.F.Out,"</div>");
|
||||||
|
|
||||||
/***** Time table *****/
|
/***** Time table *****/
|
||||||
|
@ -349,7 +378,7 @@ void TT_ShowTimeTable (TT_TimeTableType_t TimeTableType,long UsrCod)
|
||||||
TT_CreatTimeTableFromDB (TimeTableType,UsrCod);
|
TT_CreatTimeTableFromDB (TimeTableType,UsrCod);
|
||||||
|
|
||||||
/***** If timetable must be modified... *****/
|
/***** If timetable must be modified... *****/
|
||||||
if (Gbl.CurrentAct == ActChgCrsTimTbl ||
|
if (Gbl.CurrentAct == ActChgCrsTT ||
|
||||||
Gbl.CurrentAct == ActChgTut)
|
Gbl.CurrentAct == ActChgTut)
|
||||||
{
|
{
|
||||||
/* Get parameters for time table editing */
|
/* Get parameters for time table editing */
|
||||||
|
@ -376,7 +405,7 @@ void TT_ShowTimeTable (TT_TimeTableType_t TimeTableType,long UsrCod)
|
||||||
}
|
}
|
||||||
|
|
||||||
/***** Draw timetable *****/
|
/***** Draw timetable *****/
|
||||||
TT_DrawTimeTable ();
|
TT_DrawTimeTable (TimeTableType);
|
||||||
}
|
}
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
@ -537,8 +566,8 @@ static void TT_CreatTimeTableFromDB (TT_TimeTableType_t TimeTableType,long UsrCo
|
||||||
break;
|
break;
|
||||||
case TT_COURSE_TIMETABLE:
|
case TT_COURSE_TIMETABLE:
|
||||||
if (Gbl.CurrentCrs.Grps.WhichGrps == Grp_ALL_GROUPS ||
|
if (Gbl.CurrentCrs.Grps.WhichGrps == Grp_ALL_GROUPS ||
|
||||||
Gbl.CurrentAct == ActEdiCrsTimTbl ||
|
Gbl.CurrentAct == ActEdiCrsTT ||
|
||||||
Gbl.CurrentAct == ActChgCrsTimTbl) // If we are editing, all groups are shown
|
Gbl.CurrentAct == ActChgCrsTT) // If we are editing, all groups are shown
|
||||||
sprintf (Query,"SELECT Day,Hour,Duration,Place,ClassType,GroupName,GrpCod"
|
sprintf (Query,"SELECT Day,Hour,Duration,Place,ClassType,GroupName,GrpCod"
|
||||||
" FROM timetable_crs"
|
" FROM timetable_crs"
|
||||||
" WHERE CrsCod='%ld'"
|
" WHERE CrsCod='%ld'"
|
||||||
|
@ -727,7 +756,7 @@ static void TT_ModifTimeTable (void)
|
||||||
/********************* Draw timetable using internal table *******************/
|
/********************* Draw timetable using internal table *******************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
static void TT_DrawTimeTable (void)
|
static void TT_DrawTimeTable (TT_TimeTableType_t TimeTableType)
|
||||||
{
|
{
|
||||||
bool Editing = false;
|
bool Editing = false;
|
||||||
unsigned DayColumn; // Column from left (0) to right (6)
|
unsigned DayColumn; // Column from left (0) to right (6)
|
||||||
|
@ -741,12 +770,12 @@ static void TT_DrawTimeTable (void)
|
||||||
|
|
||||||
switch (Gbl.CurrentAct)
|
switch (Gbl.CurrentAct)
|
||||||
{
|
{
|
||||||
case ActSeeCrsTimTbl: case ActPrnCrsTimTbl:
|
case ActSeeCrsTT: case ActPrnCrsTT: case ActChgCrsTT1stDay:
|
||||||
case ActSeeMyTimTbl: case ActPrnMyTimTbl:
|
case ActSeeMyTT: case ActPrnMyTT: case ActChgMyTT1stDay:
|
||||||
case ActSeeRecOneTch: case ActSeeRecSevTch:
|
case ActSeeRecOneTch: case ActSeeRecSevTch:
|
||||||
Editing = false;
|
Editing = false;
|
||||||
break;
|
break;
|
||||||
case ActEdiCrsTimTbl: case ActChgCrsTimTbl:
|
case ActEdiCrsTT: case ActChgCrsTT:
|
||||||
case ActEdiTut: case ActChgTut:
|
case ActEdiTut: case ActChgTut:
|
||||||
// If editing and there's place for more columns, a potential new column is added at the end of each day
|
// If editing and there's place for more columns, a potential new column is added at the end of each day
|
||||||
Editing = true;
|
Editing = true;
|
||||||
|
@ -777,8 +806,8 @@ static void TT_DrawTimeTable (void)
|
||||||
TT_PERCENT_WIDTH_OF_AN_HOUR_COLUMN,TT_START_HOUR);
|
TT_PERCENT_WIDTH_OF_AN_HOUR_COLUMN,TT_START_HOUR);
|
||||||
|
|
||||||
/***** Get list of groups types and groups in this course *****/
|
/***** Get list of groups types and groups in this course *****/
|
||||||
if (Gbl.CurrentAct == ActEdiCrsTimTbl ||
|
if (Gbl.CurrentAct == ActEdiCrsTT ||
|
||||||
Gbl.CurrentAct == ActChgCrsTimTbl)
|
Gbl.CurrentAct == ActChgCrsTT)
|
||||||
Grp_GetListGrpTypesAndGrpsInThisCrs (Grp_ONLY_GROUP_TYPES_WITH_GROUPS);
|
Grp_GetListGrpTypesAndGrpsInThisCrs (Grp_ONLY_GROUP_TYPES_WITH_GROUPS);
|
||||||
|
|
||||||
/***** Write the table row by row *****/
|
/***** Write the table row by row *****/
|
||||||
|
@ -832,10 +861,13 @@ static void TT_DrawTimeTable (void)
|
||||||
{
|
{
|
||||||
if (ContinuousFreeMinicolumns)
|
if (ContinuousFreeMinicolumns)
|
||||||
{
|
{
|
||||||
TT_TimeTableDrawCell (Day,Hour,Column-1,ContinuousFreeMinicolumns,-1L,TT_FREE_HOUR,TT_NO_CLASS,0,NULL,-1,NULL);
|
TT_TimeTableDrawCell (TimeTableType,
|
||||||
|
Day,Hour,Column-1,ContinuousFreeMinicolumns,
|
||||||
|
-1L,TT_FREE_HOUR,TT_NO_CLASS,0,NULL,-1,NULL);
|
||||||
ContinuousFreeMinicolumns = 0;
|
ContinuousFreeMinicolumns = 0;
|
||||||
}
|
}
|
||||||
TT_TimeTableDrawCell (Day,Hour,Column,TT_NUM_MINICOLUMNS_PER_DAY/ColumnsToDrawIncludingExtraColumn,
|
TT_TimeTableDrawCell (TimeTableType,
|
||||||
|
Day,Hour,Column,TT_NUM_MINICOLUMNS_PER_DAY/ColumnsToDrawIncludingExtraColumn,
|
||||||
TimeTable[Day][Hour].Columns[Column].CrsCod,
|
TimeTable[Day][Hour].Columns[Column].CrsCod,
|
||||||
TimeTable[Day][Hour].Columns[Column].HourType,
|
TimeTable[Day][Hour].Columns[Column].HourType,
|
||||||
TimeTable[Day][Hour].Columns[Column].ClassType,
|
TimeTable[Day][Hour].Columns[Column].ClassType,
|
||||||
|
@ -845,7 +877,9 @@ static void TT_DrawTimeTable (void)
|
||||||
TimeTable[Day][Hour].Columns[Column].Place);
|
TimeTable[Day][Hour].Columns[Column].Place);
|
||||||
}
|
}
|
||||||
if (ContinuousFreeMinicolumns)
|
if (ContinuousFreeMinicolumns)
|
||||||
TT_TimeTableDrawCell (Day,Hour,Column-1,ContinuousFreeMinicolumns,-1L,TT_FREE_HOUR,TT_NO_CLASS,0,NULL,-1L,NULL);
|
TT_TimeTableDrawCell (TimeTableType,
|
||||||
|
Day,Hour,Column-1,ContinuousFreeMinicolumns,
|
||||||
|
-1L,TT_FREE_HOUR,TT_NO_CLASS,0,NULL,-1L,NULL);
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Empty column used to adjust height */
|
/* Empty column used to adjust height */
|
||||||
|
@ -863,7 +897,8 @@ static void TT_DrawTimeTable (void)
|
||||||
}
|
}
|
||||||
|
|
||||||
/***** Free list of groups types and groups in this course *****/
|
/***** Free list of groups types and groups in this course *****/
|
||||||
if (Gbl.CurrentAct == ActEdiCrsTimTbl || Gbl.CurrentAct == ActChgCrsTimTbl)
|
if (Gbl.CurrentAct == ActEdiCrsTT ||
|
||||||
|
Gbl.CurrentAct == ActChgCrsTT)
|
||||||
Grp_FreeListGrpTypesAndGrps ();
|
Grp_FreeListGrpTypesAndGrps ();
|
||||||
|
|
||||||
/***** Row with day names *****/
|
/***** Row with day names *****/
|
||||||
|
@ -891,6 +926,7 @@ static void TT_TimeTableDrawAdjustRow (void)
|
||||||
|
|
||||||
fprintf (Gbl.F.Out,"<tr>"
|
fprintf (Gbl.F.Out,"<tr>"
|
||||||
"<td class=\"TT_TXT LEFT_MIDDLE\" style=\"width:%u%%;\">"
|
"<td class=\"TT_TXT LEFT_MIDDLE\" style=\"width:%u%%;\">"
|
||||||
|
" "
|
||||||
"</td>",
|
"</td>",
|
||||||
TT_PERCENT_WIDTH_OF_AN_HOUR_COLUMN);
|
TT_PERCENT_WIDTH_OF_AN_HOUR_COLUMN);
|
||||||
TT_DrawCellAlignTimeTable ();
|
TT_DrawCellAlignTimeTable ();
|
||||||
|
@ -902,11 +938,13 @@ static void TT_TimeTableDrawAdjustRow (void)
|
||||||
Minicolumn++)
|
Minicolumn++)
|
||||||
fprintf (Gbl.F.Out,"<td class=\"TT_TXT LEFT_MIDDLE\""
|
fprintf (Gbl.F.Out,"<td class=\"TT_TXT LEFT_MIDDLE\""
|
||||||
" style=\"width:%u%%;\">"
|
" style=\"width:%u%%;\">"
|
||||||
|
" "
|
||||||
"</td>",
|
"</td>",
|
||||||
TT_PERCENT_WIDTH_OF_A_MINICOLUMN);
|
TT_PERCENT_WIDTH_OF_A_MINICOLUMN);
|
||||||
TT_DrawCellAlignTimeTable ();
|
TT_DrawCellAlignTimeTable ();
|
||||||
fprintf (Gbl.F.Out,"<td class=\"TT_TXT LEFT_MIDDLE\""
|
fprintf (Gbl.F.Out,"<td class=\"TT_TXT LEFT_MIDDLE\""
|
||||||
" style=\"width:%u%%;\">"
|
" style=\"width:%u%%;\">"
|
||||||
|
" "
|
||||||
"</td>"
|
"</td>"
|
||||||
"</tr>",
|
"</tr>",
|
||||||
TT_PERCENT_WIDTH_OF_AN_HOUR_COLUMN);
|
TT_PERCENT_WIDTH_OF_AN_HOUR_COLUMN);
|
||||||
|
@ -1005,6 +1043,7 @@ static unsigned TT_TimeTableCalculateColsToDraw (unsigned Day,unsigned Hour)
|
||||||
static void TT_DrawCellAlignTimeTable (void)
|
static void TT_DrawCellAlignTimeTable (void)
|
||||||
{
|
{
|
||||||
fprintf (Gbl.F.Out,"<td class=\"TT_TXT LEFT_MIDDLE\" style=\"width:%u%%;\">"
|
fprintf (Gbl.F.Out,"<td class=\"TT_TXT LEFT_MIDDLE\" style=\"width:%u%%;\">"
|
||||||
|
" "
|
||||||
"</td>",
|
"</td>",
|
||||||
TT_PERCENT_WIDTH_OF_A_SEPARATION_COLUMN);
|
TT_PERCENT_WIDTH_OF_A_SEPARATION_COLUMN);
|
||||||
}
|
}
|
||||||
|
@ -1013,7 +1052,8 @@ static void TT_DrawCellAlignTimeTable (void)
|
||||||
/*************************** Write a timetable cell **************************/
|
/*************************** Write a timetable cell **************************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
static void TT_TimeTableDrawCell (unsigned Day,unsigned Hour,unsigned Column,unsigned ColSpan,
|
static void TT_TimeTableDrawCell (TT_TimeTableType_t TimeTableType,
|
||||||
|
unsigned Day,unsigned Hour,unsigned Column,unsigned ColSpan,
|
||||||
long CrsCod,TT_HourType_t HourType,TT_ClassType_t ClassType,unsigned Duration,char *Group,long GrpCod,char *Place)
|
long CrsCod,TT_HourType_t HourType,TT_ClassType_t ClassType,unsigned Duration,char *Group,long GrpCod,char *Place)
|
||||||
{
|
{
|
||||||
extern const char *Txt_unknown_course;
|
extern const char *Txt_unknown_course;
|
||||||
|
@ -1066,11 +1106,11 @@ static void TT_TimeTableDrawCell (unsigned Day,unsigned Hour,unsigned Column,uns
|
||||||
/***** Set type of view depending on current action *****/
|
/***** Set type of view depending on current action *****/
|
||||||
switch (Gbl.CurrentAct)
|
switch (Gbl.CurrentAct)
|
||||||
{
|
{
|
||||||
case ActSeeCrsTimTbl: case ActPrnCrsTimTbl:
|
case ActSeeCrsTT: case ActPrnCrsTT: case ActChgCrsTT1stDay:
|
||||||
case ActSeeMyTimTbl: case ActPrnMyTimTbl:
|
case ActSeeMyTT: case ActPrnMyTT: case ActChgMyTT1stDay:
|
||||||
TimeTableView = TT_CRS_SHOW;
|
TimeTableView = TT_CRS_SHOW;
|
||||||
break;
|
break;
|
||||||
case ActEdiCrsTimTbl: case ActChgCrsTimTbl:
|
case ActEdiCrsTT: case ActChgCrsTT:
|
||||||
TimeTableView = TT_CRS_EDIT;
|
TimeTableView = TT_CRS_EDIT;
|
||||||
break;
|
break;
|
||||||
case ActSeeRecOneTch: case ActSeeRecSevTch:
|
case ActSeeRecOneTch: case ActSeeRecSevTch:
|
||||||
|
@ -1101,7 +1141,7 @@ static void TT_TimeTableDrawCell (unsigned Day,unsigned Hour,unsigned Column,uns
|
||||||
|
|
||||||
/***** Form to modify this cell *****/
|
/***** Form to modify this cell *****/
|
||||||
if (TimeTableView == TT_CRS_EDIT)
|
if (TimeTableView == TT_CRS_EDIT)
|
||||||
Act_FormStart (ActChgCrsTimTbl);
|
Act_FormStart (ActChgCrsTT);
|
||||||
else if (TimeTableView == TT_TUT_EDIT)
|
else if (TimeTableView == TT_TUT_EDIT)
|
||||||
Act_FormStart (ActChgTut);
|
Act_FormStart (ActChgTut);
|
||||||
|
|
||||||
|
@ -1113,8 +1153,7 @@ static void TT_TimeTableDrawCell (unsigned Day,unsigned Hour,unsigned Column,uns
|
||||||
if (HourType != TT_FREE_HOUR) // If cell is not empty...
|
if (HourType != TT_FREE_HOUR) // If cell is not empty...
|
||||||
{
|
{
|
||||||
fprintf (Gbl.F.Out,"<span class=\"TT_TXT\">");
|
fprintf (Gbl.F.Out,"<span class=\"TT_TXT\">");
|
||||||
if (Gbl.CurrentAct == ActSeeMyTimTbl ||
|
if (TimeTableType == TT_MY_TIMETABLE)
|
||||||
Gbl.CurrentAct == ActPrnMyTimTbl)
|
|
||||||
{
|
{
|
||||||
Crs.CrsCod = CrsCod;
|
Crs.CrsCod = CrsCod;
|
||||||
Crs_GetDataOfCourseByCod (&Crs);
|
Crs_GetDataOfCourseByCod (&Crs);
|
||||||
|
|
Loading…
Reference in New Issue