Version 14.132

This commit is contained in:
Antonio Cañas Vargas 2015-09-16 15:26:18 +02:00
parent 3096493ca9
commit c12147e22d
8 changed files with 120 additions and 105 deletions

View File

@ -841,7 +841,7 @@ Assessment:
690. ActChgNumRowFooGrp Change the number of rows of pie of a file of marks in group 690. ActChgNumRowFooGrp Change the number of rows of pie of a file of marks in group
Users: Users:
691. ActReqSelGrp Request the selection of groups of students 691. ActReqSelGrp Request the selection of groups of students
692. ActLstInv Show class photo or list of guests 692. ActLstGst Show class photo or list of guests
693. ActLstStd Show class photo or list of students 693. ActLstStd Show class photo or list of students
694. ActSeeAtt Show attendance events 694. ActSeeAtt Show attendance events
695. ActLstTch Show class photo or list of teachers 695. ActLstTch Show class photo or list of teachers
@ -875,7 +875,7 @@ Users:
722. ActPrnInvPho Show the class photo of guests ready to be printed 722. ActPrnInvPho Show the class photo of guests ready to be printed
723. ActPrnStdPho Show the class photo of students ready to be printed 723. ActPrnStdPho Show the class photo of students ready to be printed
724. ActPrnTchPho Show the class photo of teachers ready to be printed 724. ActPrnTchPho Show the class photo of teachers ready to be printed
725. ActLstInvAll List in another window the full data of guests 725. ActLstGstAll List in another window the full data of guests
726. ActLstStdAll List in another window the full data of students 726. ActLstStdAll List in another window the full data of students
727. ActLstTchAll List in another window the full data of teachers 727. ActLstTchAll List in another window the full data of teachers
728. ActSeeRecOneStd Show record of one selected student 728. ActSeeRecOneStd Show record of one selected student
@ -926,7 +926,9 @@ Users:
763c. ActReqMdfStd Request enrollment/removing of a user 763c. ActReqMdfStd Request enrollment/removing of a user
763d. ActReqMdfTch Request enrollment/removing of a user 763d. ActReqMdfTch Request enrollment/removing of a user
763e. ActReqMdfAdm Request enrollment/removing of a user 763e. ActReqMdfAdm Request enrollment/removing of a user
764. ActReqUsrPho Show form to send the photo of another user 764b. ActReqGstPho Show form to send the photo of another user
764c. ActReqStdPho Show form to send the photo of another user
764d. ActReqTchPho Show form to send the photo of another user
765. ActDetUsrPho Receive other user's photo and detect faces on it 765. ActDetUsrPho Receive other user's photo and detect faces on it
766. ActUpdUsrPho Update other user's photo 766. ActUpdUsrPho Update other user's photo
767. ActRemUsrPho Remove the photo of otro user 767. ActRemUsrPho Remove the photo of otro user
@ -1360,7 +1362,7 @@ const struct Act_Menu Act_Menu[Tab_NUM_TABS][Act_MAX_OPTIONS_IN_MENU_PER_TAB] =
{ {
{ActReqSelGrp ,true }, {ActReqSelGrp ,true },
{ActLstInv ,false}, {ActLstGst ,false},
{ActLstStd ,false}, {ActLstStd ,false},
{ActSeeAtt ,false}, {ActSeeAtt ,false},
{ActLstTch ,false}, {ActLstTch ,false},
@ -2230,7 +2232,7 @@ struct Act_Actions Act_Actions[Act_NUM_ACTIONS] =
// TabUsr ****************************************************************** // TabUsr ******************************************************************
// Actions in menu: // Actions in menu:
/* ActReqSelGrp */{ 116, 0,TabUsr,ActReqSelGrp ,0x118,0x100,0x000,Act_CONTENT_NORM,Act_MAIN_WINDOW,NULL ,Grp_ReqRegisterInGrps ,"mygroups" }, /* ActReqSelGrp */{ 116, 0,TabUsr,ActReqSelGrp ,0x118,0x100,0x000,Act_CONTENT_NORM,Act_MAIN_WINDOW,NULL ,Grp_ReqRegisterInGrps ,"mygroups" },
/* ActLstInv */{1186, 1,TabUsr,ActLstInv ,0x100,0x100,0x100,Act_CONTENT_NORM,Act_MAIN_WINDOW,NULL ,Usr_SeeGuests ,"usrs" }, /* ActLstGst */{1186, 1,TabUsr,ActLstGst ,0x100,0x100,0x100,Act_CONTENT_NORM,Act_MAIN_WINDOW,NULL ,Usr_SeeGuests ,"usrs" },
/* ActLstStd */{ 678, 2,TabUsr,ActLstStd ,0x1F8,0x1E0,0x1E0,Act_CONTENT_NORM,Act_MAIN_WINDOW,NULL ,Usr_SeeStudents ,"usrs" }, /* ActLstStd */{ 678, 2,TabUsr,ActLstStd ,0x1F8,0x1E0,0x1E0,Act_CONTENT_NORM,Act_MAIN_WINDOW,NULL ,Usr_SeeStudents ,"usrs" },
/* ActSeeAtt */{ 861, 3,TabUsr,ActSeeAtt ,0x118,0x100,0x000,Act_CONTENT_NORM,Act_MAIN_WINDOW,NULL ,Att_SeeAttEvents ,"rollcall" }, /* ActSeeAtt */{ 861, 3,TabUsr,ActSeeAtt ,0x118,0x100,0x000,Act_CONTENT_NORM,Act_MAIN_WINDOW,NULL ,Att_SeeAttEvents ,"rollcall" },
/* ActLstTch */{ 679, 4,TabUsr,ActLstTch ,0x1FF,0x1FF,0x1FF,Act_CONTENT_NORM,Act_MAIN_WINDOW,NULL ,Usr_SeeTeachers ,"tch" }, /* ActLstTch */{ 679, 4,TabUsr,ActLstTch ,0x1FF,0x1FF,0x1FF,Act_CONTENT_NORM,Act_MAIN_WINDOW,NULL ,Usr_SeeTeachers ,"tch" },
@ -2268,16 +2270,16 @@ struct Act_Actions Act_Actions[Act_NUM_ACTIONS] =
/* ActPrnInvPho */{1190,-1,TabUsr,ActLstStd ,0x100,0x100,0x100,Act_CONTENT_NORM,Act_NEW_WINDOW ,NULL ,Usr_SeeGstClassPhotoPrn ,NULL}, /* ActPrnInvPho */{1190,-1,TabUsr,ActLstStd ,0x100,0x100,0x100,Act_CONTENT_NORM,Act_NEW_WINDOW ,NULL ,Usr_SeeGstClassPhotoPrn ,NULL},
/* ActPrnStdPho */{ 120,-1,TabUsr,ActLstStd ,0x1F8,0x1E0,0x1E0,Act_CONTENT_NORM,Act_NEW_WINDOW ,NULL ,Usr_SeeStdClassPhotoPrn ,NULL}, /* ActPrnStdPho */{ 120,-1,TabUsr,ActLstStd ,0x1F8,0x1E0,0x1E0,Act_CONTENT_NORM,Act_NEW_WINDOW ,NULL ,Usr_SeeStdClassPhotoPrn ,NULL},
/* ActPrnTchPho */{ 443,-1,TabUsr,ActLstTch ,0x1FF,0x1FF,0x1FF,Act_CONTENT_NORM,Act_NEW_WINDOW ,NULL ,Usr_SeeTchClassPhotoPrn ,NULL}, /* ActPrnTchPho */{ 443,-1,TabUsr,ActLstTch ,0x1FF,0x1FF,0x1FF,Act_CONTENT_NORM,Act_NEW_WINDOW ,NULL ,Usr_SeeTchClassPhotoPrn ,NULL},
/* ActLstInvAll */{1189,-1,TabUsr,ActLstInv ,0x100,0x100,0x100,Act_CONTENT_NORM,Act_NEW_WINDOW ,NULL ,Usr_ListAllDataGsts ,NULL}, /* ActLstGstAll */{1189,-1,TabUsr,ActLstGst ,0x100,0x100,0x100,Act_CONTENT_NORM,Act_NEW_WINDOW ,NULL ,Usr_ListAllDataGsts ,NULL},
/* ActLstStdAll */{ 42,-1,TabUsr,ActLstStd ,0x1F0,0x1E0,0x1E0,Act_CONTENT_NORM,Act_NEW_WINDOW ,NULL ,Usr_ListAllDataStds ,NULL}, /* ActLstStdAll */{ 42,-1,TabUsr,ActLstStd ,0x1F0,0x1E0,0x1E0,Act_CONTENT_NORM,Act_NEW_WINDOW ,NULL ,Usr_ListAllDataStds ,NULL},
/* ActLstTchAll */{ 578,-1,TabUsr,ActLstTch ,0x1F0,0x1F0,0x1E0,Act_CONTENT_NORM,Act_NEW_WINDOW ,NULL ,Usr_ListAllDataTchs ,NULL}, /* ActLstTchAll */{ 578,-1,TabUsr,ActLstTch ,0x1F0,0x1F0,0x1E0,Act_CONTENT_NORM,Act_NEW_WINDOW ,NULL ,Usr_ListAllDataTchs ,NULL},
/* ActSeeRecOneStd */{1174,-1,TabUsr,ActLstStd ,0x118,0x100,0x000,Act_CONTENT_NORM,Act_MAIN_WINDOW,NULL ,Rec_GetUsrAndShowRecordOneStdCrs,NULL}, /* ActSeeRecOneStd */{1174,-1,TabUsr,ActLstStd ,0x118,0x100,0x000,Act_CONTENT_NORM,Act_MAIN_WINDOW,NULL ,Rec_GetUsrAndShowRecordOneStdCrs,NULL},
/* ActSeeRecOneTch */{1175,-1,TabUsr,ActLstTch ,0x1FE,0x1FE,0x000,Act_CONTENT_NORM,Act_MAIN_WINDOW,NULL ,Rec_GetUsrAndShowRecordOneTchCrs,NULL}, /* ActSeeRecOneTch */{1175,-1,TabUsr,ActLstTch ,0x1FE,0x1FE,0x000,Act_CONTENT_NORM,Act_MAIN_WINDOW,NULL ,Rec_GetUsrAndShowRecordOneTchCrs,NULL},
/* ActSeeRecSevInv */{1187,-1,TabUsr,ActLstInv ,0x100,0x100,0x100,Act_CONTENT_NORM,Act_MAIN_WINDOW,NULL ,Rec_ListRecordsInvs ,NULL}, /* ActSeeRecSevInv */{1187,-1,TabUsr,ActLstGst ,0x100,0x100,0x100,Act_CONTENT_NORM,Act_MAIN_WINDOW,NULL ,Rec_ListRecordsInvs ,NULL},
/* ActSeeRecSevStd */{ 89,-1,TabUsr,ActLstStd ,0x118,0x100,0x000,Act_CONTENT_NORM,Act_MAIN_WINDOW,NULL ,Rec_ListRecordsStdsCrs ,NULL}, /* ActSeeRecSevStd */{ 89,-1,TabUsr,ActLstStd ,0x118,0x100,0x000,Act_CONTENT_NORM,Act_MAIN_WINDOW,NULL ,Rec_ListRecordsStdsCrs ,NULL},
/* ActSeeRecSevTch */{ 22,-1,TabUsr,ActLstTch ,0x1FF,0x1FF,0x000,Act_CONTENT_NORM,Act_MAIN_WINDOW,NULL ,Rec_ListRecordsTchsCrs ,NULL}, /* ActSeeRecSevTch */{ 22,-1,TabUsr,ActLstTch ,0x1FF,0x1FF,0x000,Act_CONTENT_NORM,Act_MAIN_WINDOW,NULL ,Rec_ListRecordsTchsCrs ,NULL},
/* ActPrnRecSevInv */{1188,-1,TabUsr,ActLstInv ,0x100,0x100,0x100,Act_CONTENT_NORM,Act_NEW_WINDOW ,NULL ,Rec_ListRecordsInvs ,NULL}, /* ActPrnRecSevInv */{1188,-1,TabUsr,ActLstGst ,0x100,0x100,0x100,Act_CONTENT_NORM,Act_NEW_WINDOW ,NULL ,Rec_ListRecordsInvs ,NULL},
/* ActPrnRecSevStd */{ 111,-1,TabUsr,ActLstStd ,0x118,0x100,0x000,Act_CONTENT_NORM,Act_NEW_WINDOW ,NULL ,Rec_ListRecordsStdsCrs ,NULL}, /* ActPrnRecSevStd */{ 111,-1,TabUsr,ActLstStd ,0x118,0x100,0x000,Act_CONTENT_NORM,Act_NEW_WINDOW ,NULL ,Rec_ListRecordsStdsCrs ,NULL},
/* ActPrnRecSevTch */{ 127,-1,TabUsr,ActLstTch ,0x1FF,0x1FF,0x000,Act_CONTENT_NORM,Act_NEW_WINDOW ,NULL ,Rec_ListRecordsTchsCrs ,NULL}, /* ActPrnRecSevTch */{ 127,-1,TabUsr,ActLstTch ,0x1FF,0x1FF,0x000,Act_CONTENT_NORM,Act_NEW_WINDOW ,NULL ,Rec_ListRecordsTchsCrs ,NULL},
@ -2313,23 +2315,26 @@ struct Act_Actions Act_Actions[Act_NUM_ACTIONS] =
/* ActReqRejSignUp */{1058,-1,TabUsr,ActSeeSignUpReq ,0x1F0,0x1F0,0x1F0,Act_CONTENT_NORM,Act_MAIN_WINDOW,NULL ,Enr_AskIfRejectSignUp ,NULL}, /* ActReqRejSignUp */{1058,-1,TabUsr,ActSeeSignUpReq ,0x1F0,0x1F0,0x1F0,Act_CONTENT_NORM,Act_MAIN_WINDOW,NULL ,Enr_AskIfRejectSignUp ,NULL},
/* ActRejSignUp */{1059,-1,TabUsr,ActSeeSignUpReq ,0x1F0,0x1F0,0x1F0,Act_CONTENT_NORM,Act_MAIN_WINDOW,NULL ,Enr_RejectSignUp ,NULL}, /* ActRejSignUp */{1059,-1,TabUsr,ActSeeSignUpReq ,0x1F0,0x1F0,0x1F0,Act_CONTENT_NORM,Act_MAIN_WINDOW,NULL ,Enr_RejectSignUp ,NULL},
/* ActReqMdfOneGst */{1414,-1,TabUsr,ActLstInv ,0x1FE,0x1FE,0x1FE,Act_CONTENT_NORM,Act_MAIN_WINDOW,NULL ,Enr_ReqRegRemGst ,NULL}, /* ActReqMdfOneGst */{1414,-1,TabUsr,ActLstGst ,0x1FE,0x1FE,0x1FE,Act_CONTENT_NORM,Act_MAIN_WINDOW,NULL ,Enr_ReqRegRemGst ,NULL},
/* ActReqMdfOneStd */{1415,-1,TabUsr,ActLstStd ,0x1FE,0x1FE,0x1FE,Act_CONTENT_NORM,Act_MAIN_WINDOW,NULL ,Enr_ReqRegRemStd ,NULL}, /* ActReqMdfOneStd */{1415,-1,TabUsr,ActLstStd ,0x1FE,0x1FE,0x1FE,Act_CONTENT_NORM,Act_MAIN_WINDOW,NULL ,Enr_ReqRegRemStd ,NULL},
/* ActReqMdfOneTch */{1416,-1,TabUsr,ActLstTch ,0x1FE,0x1FE,0x1FE,Act_CONTENT_NORM,Act_MAIN_WINDOW,NULL ,Enr_ReqRegRemTch ,NULL}, /* ActReqMdfOneTch */{1416,-1,TabUsr,ActLstTch ,0x1FE,0x1FE,0x1FE,Act_CONTENT_NORM,Act_MAIN_WINDOW,NULL ,Enr_ReqRegRemTch ,NULL},
/* ActReqMdfOneAdm */{1417,-1,TabUsr,ActLstAdm ,0x1FE,0x1FE,0x1FE,Act_CONTENT_NORM,Act_MAIN_WINDOW,NULL ,Enr_ReqRegRemAdm ,NULL}, /* ActReqMdfOneAdm */{1417,-1,TabUsr,ActLstAdm ,0x1FE,0x1FE,0x1FE,Act_CONTENT_NORM,Act_MAIN_WINDOW,NULL ,Enr_ReqRegRemAdm ,NULL},
/* ActReqMdfUsr */{1418,-1,TabUsr,ActLstInv ,0x1FE,0x1FE,0x1FE,Act_CONTENT_NORM,Act_MAIN_WINDOW,NULL ,Enr_AskIfRegRemAnotherGst ,NULL}, /* ActReqMdfUsr */{1418,-1,TabUsr,ActLstGst ,0x1FE,0x1FE,0x1FE,Act_CONTENT_NORM,Act_MAIN_WINDOW,NULL ,Enr_AskIfRegRemAnotherGst ,NULL},
/* ActReqMdfUsr */{1419,-1,TabUsr,ActLstStd ,0x1FE,0x1FE,0x1FE,Act_CONTENT_NORM,Act_MAIN_WINDOW,NULL ,Enr_AskIfRegRemAnotherStd ,NULL}, /* ActReqMdfUsr */{1419,-1,TabUsr,ActLstStd ,0x1FE,0x1FE,0x1FE,Act_CONTENT_NORM,Act_MAIN_WINDOW,NULL ,Enr_AskIfRegRemAnotherStd ,NULL},
/* ActReqMdfUsr */{1420,-1,TabUsr,ActLstTch ,0x1FE,0x1FE,0x1FE,Act_CONTENT_NORM,Act_MAIN_WINDOW,NULL ,Enr_AskIfRegRemAnotherTch ,NULL}, /* ActReqMdfUsr */{1420,-1,TabUsr,ActLstTch ,0x1FE,0x1FE,0x1FE,Act_CONTENT_NORM,Act_MAIN_WINDOW,NULL ,Enr_AskIfRegRemAnotherTch ,NULL},
/* ActReqMdfUsr */{1421,-1,TabUsr,ActLstAdm ,0x1FE,0x1FE,0x1FE,Act_CONTENT_NORM,Act_MAIN_WINDOW,NULL ,Enr_AskIfRegRemAnotherAdm ,NULL}, /* ActReqMdfUsr */{1421,-1,TabUsr,ActLstAdm ,0x1FE,0x1FE,0x1FE,Act_CONTENT_NORM,Act_MAIN_WINDOW,NULL ,Enr_AskIfRegRemAnotherAdm ,NULL},
/* ActReqUsrPho */{ 375,-1,TabUsr,ActLstStd ,0x1F0,0x1E0,0x1E0,Act_CONTENT_NORM,Act_MAIN_WINDOW,NULL ,Pho_SendPhotoUsr ,NULL}, /* ActReqGstPho */{1432,-1,TabUsr,ActLstGst ,0x1F0,0x1E0,0x1E0,Act_CONTENT_NORM,Act_MAIN_WINDOW,NULL ,Pho_SendPhotoUsr ,NULL},
/* ActReqStdPho */{1433,-1,TabUsr,ActLstStd ,0x1F0,0x1E0,0x1E0,Act_CONTENT_NORM,Act_MAIN_WINDOW,NULL ,Pho_SendPhotoUsr ,NULL},
/* ActReqTchPho */{1434,-1,TabUsr,ActLstTch ,0x1F0,0x1E0,0x1E0,Act_CONTENT_NORM,Act_MAIN_WINDOW,NULL ,Pho_SendPhotoUsr ,NULL},
/* ActDetUsrPho */{ 695,-1,TabUsr,ActLstStd ,0x1F0,0x1E0,0x1E0,Act_CONTENT_DATA,Act_MAIN_WINDOW,NULL ,Pho_RecUsrPhotoDetFaces ,NULL}, /* ActDetUsrPho */{ 695,-1,TabUsr,ActLstStd ,0x1F0,0x1E0,0x1E0,Act_CONTENT_DATA,Act_MAIN_WINDOW,NULL ,Pho_RecUsrPhotoDetFaces ,NULL},
/* ActUpdUsrPho */{ 374,-1,TabUsr,ActLstStd ,0x1F0,0x1E0,0x1E0,Act_CONTENT_NORM,Act_MAIN_WINDOW,Pho_UpdateUsrPhoto1 ,Pho_UpdateUsrPhoto2 ,NULL}, /* ActUpdUsrPho */{ 374,-1,TabUsr,ActLstStd ,0x1F0,0x1E0,0x1E0,Act_CONTENT_NORM,Act_MAIN_WINDOW,Pho_UpdateUsrPhoto1 ,Pho_UpdateUsrPhoto2 ,NULL},
/* ActRemUsrPho */{ 429,-1,TabUsr,ActLstStd ,0x1F0,0x1E0,0x1E0,Act_CONTENT_NORM,Act_MAIN_WINDOW,NULL ,Pho_RemoveUsrPhoto ,NULL}, /* ActRemUsrPho */{ 429,-1,TabUsr,ActLstStd ,0x1F0,0x1E0,0x1E0,Act_CONTENT_NORM,Act_MAIN_WINDOW,NULL ,Pho_RemoveUsrPhoto ,NULL},
/* ActCreOthUsrDat */{ 440,-1,TabUsr,ActLstStd ,0x1F0,0x1E0,0x1E0,Act_CONTENT_NORM,Act_MAIN_WINDOW,NULL ,Enr_CreateNewUsr ,NULL}, /* ActCreOthUsrDat */{ 440,-1,TabUsr,ActLstStd ,0x1F0,0x1E0,0x1E0,Act_CONTENT_NORM,Act_MAIN_WINDOW,NULL ,Enr_CreateNewUsr ,NULL},
/* ActUpdOthGst */{1422,-1,TabUsr,ActLstInv ,0x1FE,0x1FE,0x1FE,Act_CONTENT_NORM,Act_MAIN_WINDOW,NULL ,Enr_ModifyUsr ,NULL}, /* ActUpdOthGst */{1422,-1,TabUsr,ActLstGst ,0x1FE,0x1FE,0x1FE,Act_CONTENT_NORM,Act_MAIN_WINDOW,NULL ,Enr_ModifyUsr ,NULL},
/* ActUpdOthStd */{1423,-1,TabUsr,ActLstStd ,0x1FE,0x1FE,0x1FE,Act_CONTENT_NORM,Act_MAIN_WINDOW,NULL ,Enr_ModifyUsr ,NULL}, /* ActUpdOthStd */{1423,-1,TabUsr,ActLstStd ,0x1FE,0x1FE,0x1FE,Act_CONTENT_NORM,Act_MAIN_WINDOW,NULL ,Enr_ModifyUsr ,NULL},
/* ActUpdOthTch */{1424,-1,TabUsr,ActLstTch ,0x1FE,0x1FE,0x1FE,Act_CONTENT_NORM,Act_MAIN_WINDOW,NULL ,Enr_ModifyUsr ,NULL}, /* ActUpdOthTch */{1424,-1,TabUsr,ActLstTch ,0x1FE,0x1FE,0x1FE,Act_CONTENT_NORM,Act_MAIN_WINDOW,NULL ,Enr_ModifyUsr ,NULL},
/* ActUpdOthAdm */{1425,-1,TabUsr,ActLstAdm ,0x1FE,0x1FE,0x1FE,Act_CONTENT_NORM,Act_MAIN_WINDOW,NULL ,Enr_ModifyUsr ,NULL}, /* ActUpdOthAdm */{1425,-1,TabUsr,ActLstAdm ,0x1FE,0x1FE,0x1FE,Act_CONTENT_NORM,Act_MAIN_WINDOW,NULL ,Enr_ModifyUsr ,NULL},
@ -2362,8 +2367,8 @@ struct Act_Actions Act_Actions[Act_NUM_ACTIONS] =
/* ActReqRemAllStdCrs*/{ 88,-1,TabUsr,ActLstStd ,0x110,0x100,0x000,Act_CONTENT_NORM,Act_MAIN_WINDOW,NULL ,Enr_AskRemAllStdsThisCrs ,NULL}, /* ActReqRemAllStdCrs*/{ 88,-1,TabUsr,ActLstStd ,0x110,0x100,0x000,Act_CONTENT_NORM,Act_MAIN_WINDOW,NULL ,Enr_AskRemAllStdsThisCrs ,NULL},
/* ActRemAllStdCrs */{ 87,-1,TabUsr,ActLstStd ,0x110,0x100,0x000,Act_CONTENT_NORM,Act_MAIN_WINDOW,NULL ,Enr_RemAllStdsThisCrs ,NULL}, /* ActRemAllStdCrs */{ 87,-1,TabUsr,ActLstStd ,0x110,0x100,0x000,Act_CONTENT_NORM,Act_MAIN_WINDOW,NULL ,Enr_RemAllStdsThisCrs ,NULL},
/* ActReqRemOldUsr */{ 590,-1,TabUsr,ActLstStd ,0x100,0x100,0x100,Act_CONTENT_NORM,Act_MAIN_WINDOW,NULL ,Enr_AskRemoveOldUsrs ,NULL}, /* ActReqRemOldUsr */{ 590,-1,TabUsr,ActLstGst ,0x100,0x100,0x100,Act_CONTENT_NORM,Act_MAIN_WINDOW,NULL ,Enr_AskRemoveOldUsrs ,NULL},
/* ActRemOldUsr */{ 773,-1,TabUsr,ActLstStd ,0x100,0x100,0x100,Act_CONTENT_NORM,Act_MAIN_WINDOW,NULL ,Enr_RemoveOldUsrs ,NULL}, /* ActRemOldUsr */{ 773,-1,TabUsr,ActLstGst ,0x100,0x100,0x100,Act_CONTENT_NORM,Act_MAIN_WINDOW,NULL ,Enr_RemoveOldUsrs ,NULL},
/* ActSeePubPrf */{1402,-1,TabUsr,ActReqPubPrf ,0x1FF,0x1FF,0x1FF,Act_CONTENT_NORM,Act_MAIN_WINDOW,NULL ,Prf_GetUsrCodAndShowUserProfile,NULL}, /* ActSeePubPrf */{1402,-1,TabUsr,ActReqPubPrf ,0x1FF,0x1FF,0x1FF,Act_CONTENT_NORM,Act_MAIN_WINDOW,NULL ,Prf_GetUsrCodAndShowUserProfile,NULL},
/* ActCal1stClkTim */{1405,-1,TabUsr,ActReqPubPrf ,0x1FF,0x1FF,0x1FF,Act_CONTENT_NORM,Act_MAIN_WINDOW,NULL ,Prf_CalculateFirstClickTime ,NULL}, /* ActCal1stClkTim */{1405,-1,TabUsr,ActReqPubPrf ,0x1FF,0x1FF,0x1FF,Act_CONTENT_NORM,Act_MAIN_WINDOW,NULL ,Prf_CalculateFirstClickTime ,NULL},
@ -3080,7 +3085,7 @@ Act_Action_t Act_FromActCodToAction[1+Act_MAX_ACTION_COD] = // Do not reuse uniq
ActEditorSylLec, // #372 ActEditorSylLec, // #372
-1, // #373 (obsolete action) -1, // #373 (obsolete action)
ActUpdUsrPho, // #374 ActUpdUsrPho, // #374
ActReqUsrPho, // #375 -1, // #375 (obsolete action)
ActEditorBib, // #376 ActEditorBib, // #376
ActPlaTxtEdiBib, // #377 ActPlaTxtEdiBib, // #377
ActSelInfSrcSylLec, // #378 ActSelInfSrcSylLec, // #378
@ -3891,10 +3896,10 @@ Act_Action_t Act_FromActCodToAction[1+Act_MAX_ACTION_COD] = // Do not reuse uniq
ActCtrSch, // #1183 ActCtrSch, // #1183
ActDegSch, // #1184 ActDegSch, // #1184
ActCrsSch, // #1185 ActCrsSch, // #1185
ActLstInv, // #1186 ActLstGst, // #1186
ActSeeRecSevInv, // #1187 ActSeeRecSevInv, // #1187
ActPrnRecSevInv, // #1188 ActPrnRecSevInv, // #1188
ActLstInvAll, // #1189 ActLstGstAll, // #1189
ActPrnInvPho, // #1190 ActPrnInvPho, // #1190
ActShoMrkCrs, // #1191 ActShoMrkCrs, // #1191
ActHidMrkCrs, // #1192 ActHidMrkCrs, // #1192
@ -4140,6 +4145,9 @@ Act_Action_t Act_FromActCodToAction[1+Act_MAX_ACTION_COD] = // Do not reuse uniq
ActRcvFrmEnrSevTch, // #1429 ActRcvFrmEnrSevTch, // #1429
ActReqRemMyAcc, // #1430 ActReqRemMyAcc, // #1430
ActRemMyAcc, // #1431 ActRemMyAcc, // #1431
ActReqGstPho, // #1432
ActReqStdPho, // #1433
ActReqTchPho, // #1434
}; };
/*****************************************************************************/ /*****************************************************************************/

View File

@ -69,9 +69,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+182+121+168+28+79) #define Act_NUM_ACTIONS (7+52+15+90+73+68+204+182+123+168+28+79)
#define Act_MAX_ACTION_COD 1431 #define Act_MAX_ACTION_COD 1434
#define Act_MAX_OPTIONS_IN_MENU_PER_TAB 20 #define Act_MAX_OPTIONS_IN_MENU_PER_TAB 20
@ -866,7 +866,7 @@ typedef int Act_Action_t; // Must be a signed type, because -1 is used to indica
/*****************************************************************************/ /*****************************************************************************/
// Actions in menu // Actions in menu
#define ActReqSelGrp (ActChgNumRowFooGrp+ 1) #define ActReqSelGrp (ActChgNumRowFooGrp+ 1)
#define ActLstInv (ActChgNumRowFooGrp+ 2) #define ActLstGst (ActChgNumRowFooGrp+ 2)
#define ActLstStd (ActChgNumRowFooGrp+ 3) #define ActLstStd (ActChgNumRowFooGrp+ 3)
#define ActSeeAtt (ActChgNumRowFooGrp+ 4) #define ActSeeAtt (ActChgNumRowFooGrp+ 4)
#define ActLstTch (ActChgNumRowFooGrp+ 5) #define ActLstTch (ActChgNumRowFooGrp+ 5)
@ -901,7 +901,7 @@ typedef int Act_Action_t; // Must be a signed type, because -1 is used to indica
#define ActPrnInvPho (ActChgNumRowFooGrp+ 31) #define ActPrnInvPho (ActChgNumRowFooGrp+ 31)
#define ActPrnStdPho (ActChgNumRowFooGrp+ 32) #define ActPrnStdPho (ActChgNumRowFooGrp+ 32)
#define ActPrnTchPho (ActChgNumRowFooGrp+ 33) #define ActPrnTchPho (ActChgNumRowFooGrp+ 33)
#define ActLstInvAll (ActChgNumRowFooGrp+ 34) #define ActLstGstAll (ActChgNumRowFooGrp+ 34)
#define ActLstStdAll (ActChgNumRowFooGrp+ 35) #define ActLstStdAll (ActChgNumRowFooGrp+ 35)
#define ActLstTchAll (ActChgNumRowFooGrp+ 36) #define ActLstTchAll (ActChgNumRowFooGrp+ 36)
#define ActSeeRecOneStd (ActChgNumRowFooGrp+ 37) #define ActSeeRecOneStd (ActChgNumRowFooGrp+ 37)
@ -954,55 +954,57 @@ typedef int Act_Action_t; // Must be a signed type, because -1 is used to indica
#define ActReqMdfTch (ActChgNumRowFooGrp+ 79) #define ActReqMdfTch (ActChgNumRowFooGrp+ 79)
#define ActReqMdfAdm (ActChgNumRowFooGrp+ 80) #define ActReqMdfAdm (ActChgNumRowFooGrp+ 80)
#define ActReqUsrPho (ActChgNumRowFooGrp+ 81) #define ActReqGstPho (ActChgNumRowFooGrp+ 81)
#define ActDetUsrPho (ActChgNumRowFooGrp+ 82) #define ActReqStdPho (ActChgNumRowFooGrp+ 82)
#define ActUpdUsrPho (ActChgNumRowFooGrp+ 83) #define ActReqTchPho (ActChgNumRowFooGrp+ 83)
#define ActRemUsrPho (ActChgNumRowFooGrp+ 84) #define ActDetUsrPho (ActChgNumRowFooGrp+ 84)
#define ActCreOthUsrDat (ActChgNumRowFooGrp+ 85) #define ActUpdUsrPho (ActChgNumRowFooGrp+ 85)
#define ActUpdOthGst (ActChgNumRowFooGrp+ 86) #define ActRemUsrPho (ActChgNumRowFooGrp+ 86)
#define ActUpdOthStd (ActChgNumRowFooGrp+ 87) #define ActCreOthUsrDat (ActChgNumRowFooGrp+ 87)
#define ActUpdOthTch (ActChgNumRowFooGrp+ 88) #define ActUpdOthGst (ActChgNumRowFooGrp+ 88)
#define ActUpdOthAdm (ActChgNumRowFooGrp+ 89) #define ActUpdOthStd (ActChgNumRowFooGrp+ 89)
#define ActUpdOthTch (ActChgNumRowFooGrp+ 90)
#define ActUpdOthAdm (ActChgNumRowFooGrp+ 91)
#define ActReqAccEnrCrs (ActChgNumRowFooGrp+ 90) #define ActReqAccEnrCrs (ActChgNumRowFooGrp+ 92)
#define ActAccEnrCrs (ActChgNumRowFooGrp+ 91) #define ActAccEnrCrs (ActChgNumRowFooGrp+ 93)
#define ActRemMeCrs (ActChgNumRowFooGrp+ 92) #define ActRemMeCrs (ActChgNumRowFooGrp+ 94)
#define ActNewAdmIns (ActChgNumRowFooGrp+ 93) #define ActNewAdmIns (ActChgNumRowFooGrp+ 95)
#define ActRemAdmIns (ActChgNumRowFooGrp+ 94) #define ActRemAdmIns (ActChgNumRowFooGrp+ 96)
#define ActNewAdmCtr (ActChgNumRowFooGrp+ 95) #define ActNewAdmCtr (ActChgNumRowFooGrp+ 97)
#define ActRemAdmCtr (ActChgNumRowFooGrp+ 96) #define ActRemAdmCtr (ActChgNumRowFooGrp+ 98)
#define ActNewAdmDeg (ActChgNumRowFooGrp+ 97) #define ActNewAdmDeg (ActChgNumRowFooGrp+ 99)
#define ActRemAdmDeg (ActChgNumRowFooGrp+ 98) #define ActRemAdmDeg (ActChgNumRowFooGrp+100)
#define ActRcvFrmEnrSevStd (ActChgNumRowFooGrp+ 99) #define ActRcvFrmEnrSevStd (ActChgNumRowFooGrp+101)
#define ActRcvFrmEnrSevTch (ActChgNumRowFooGrp+100) #define ActRcvFrmEnrSevTch (ActChgNumRowFooGrp+102)
#define ActFrmIDsOthUsr (ActChgNumRowFooGrp+101) #define ActFrmIDsOthUsr (ActChgNumRowFooGrp+103)
#define ActRemIDOth (ActChgNumRowFooGrp+102) #define ActRemIDOth (ActChgNumRowFooGrp+104)
#define ActNewIDOth (ActChgNumRowFooGrp+103) #define ActNewIDOth (ActChgNumRowFooGrp+105)
#define ActFrmPwdOthUsr (ActChgNumRowFooGrp+104) #define ActFrmPwdOthUsr (ActChgNumRowFooGrp+106)
#define ActChgPwdOthUsr (ActChgNumRowFooGrp+105) #define ActChgPwdOthUsr (ActChgNumRowFooGrp+107)
#define ActRemUsrCrs (ActChgNumRowFooGrp+106) #define ActRemUsrCrs (ActChgNumRowFooGrp+108)
#define ActRemUsrGbl (ActChgNumRowFooGrp+107) #define ActRemUsrGbl (ActChgNumRowFooGrp+109)
#define ActReqRemAllStdCrs (ActChgNumRowFooGrp+108) #define ActReqRemAllStdCrs (ActChgNumRowFooGrp+110)
#define ActRemAllStdCrs (ActChgNumRowFooGrp+109) #define ActRemAllStdCrs (ActChgNumRowFooGrp+111)
#define ActReqRemOldUsr (ActChgNumRowFooGrp+110) #define ActReqRemOldUsr (ActChgNumRowFooGrp+112)
#define ActRemOldUsr (ActChgNumRowFooGrp+111) #define ActRemOldUsr (ActChgNumRowFooGrp+113)
#define ActSeePubPrf (ActChgNumRowFooGrp+112) #define ActSeePubPrf (ActChgNumRowFooGrp+114)
#define ActCal1stClkTim (ActChgNumRowFooGrp+113) #define ActCal1stClkTim (ActChgNumRowFooGrp+115)
#define ActCalNumClk (ActChgNumRowFooGrp+114) #define ActCalNumClk (ActChgNumRowFooGrp+116)
#define ActCalNumFilVie (ActChgNumRowFooGrp+115) #define ActCalNumFilVie (ActChgNumRowFooGrp+117)
#define ActCalNumForPst (ActChgNumRowFooGrp+116) #define ActCalNumForPst (ActChgNumRowFooGrp+118)
#define ActCalNumMsgSnt (ActChgNumRowFooGrp+117) #define ActCalNumMsgSnt (ActChgNumRowFooGrp+119)
#define ActFolUsr (ActChgNumRowFooGrp+118) #define ActFolUsr (ActChgNumRowFooGrp+120)
#define ActUnfUsr (ActChgNumRowFooGrp+119) #define ActUnfUsr (ActChgNumRowFooGrp+121)
#define ActSeeFlg (ActChgNumRowFooGrp+120) #define ActSeeFlg (ActChgNumRowFooGrp+122)
#define ActSeeFlr (ActChgNumRowFooGrp+121) #define ActSeeFlr (ActChgNumRowFooGrp+123)
/*****************************************************************************/ /*****************************************************************************/
/******************************* Messages tab ********************************/ /******************************* Messages tab ********************************/

View File

@ -98,11 +98,18 @@
/****************************** Public constants *****************************/ /****************************** Public constants *****************************/
/*****************************************************************************/ /*****************************************************************************/
#define Log_PLATFORM_VERSION "SWAD 14.131.1 (2015/09/16)" #define Log_PLATFORM_VERSION "SWAD 14.132 (2015/09/16)"
// 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 14.132: Sep 16, 2015 Changes in user enrollment. (184416 lines)
4 changes necessary in database:
UPDATE actions SET Obsolete='Y' WHERE ActCod='375';
INSERT INTO actions (ActCod,Language,Obsolete,Txt) VALUES ('1432','es','N','Solicitar cambio foto otro usr.');
INSERT INTO actions (ActCod,Language,Obsolete,Txt) VALUES ('1433','es','N','Solicitar cambio foto estudiante');
INSERT INTO actions (ActCod,Language,Obsolete,Txt) VALUES ('1434','es','N','Solicitar cambio foto profesor');
Version 14.131.1: Sep 16, 2015 Changes in user enrollment. (184403 lines) Version 14.131.1: Sep 16, 2015 Changes in user enrollment. (184403 lines)
Version 14.131: Sep 15, 2015 Changes in user enrollment. (184408 lines) Version 14.131: Sep 15, 2015 Changes in user enrollment. (184408 lines)
2 changes necessary in database: 2 changes necessary in database:

View File

@ -506,24 +506,16 @@ static void Enr_ShowFormRegRemSeveralUsrs (Rol_Role_t Role)
extern const char *Txt_No_groups_have_been_created_in_the_course_X_Therefore_; extern const char *Txt_No_groups_have_been_created_in_the_course_X_Therefore_;
extern const char *Txt_Step_4_Confirm_the_enrollment_removing; extern const char *Txt_Step_4_Confirm_the_enrollment_removing;
extern const char *Txt_Confirm; extern const char *Txt_Confirm;
bool PutFormRemAllStdsThisCrs = (Role == Rol_STUDENT &&
Gbl.CurrentCrs.Crs.CrsCod > 0); // Course selected
bool PutFormRemOldUsrs = (Gbl.Usrs.Me.LoggedRole == Rol_SYS_ADM);
bool ExternalUsrsServiceAvailable = (Cfg_EXTERNAL_LOGIN_CLIENT_COMMAND[0] != '\0'); bool ExternalUsrsServiceAvailable = (Cfg_EXTERNAL_LOGIN_CLIENT_COMMAND[0] != '\0');
/***** Put contextual links *****/ /***** Put contextual links *****/
if (PutFormRemAllStdsThisCrs || if (Role == Rol_STUDENT &&
PutFormRemOldUsrs) Gbl.CurrentCrs.Crs.CrsCod > 0) // Course selected
{ {
fprintf (Gbl.F.Out,"<div class=\"CONTEXT_MENU\">"); fprintf (Gbl.F.Out,"<div class=\"CONTEXT_MENU\">");
/* Put link to remove all the students in the current course */ /* Put link to remove all the students in the current course */
if (PutFormRemAllStdsThisCrs) Enr_PutLinkToRemAllStdsThisCrs ();
Enr_PutLinkToRemAllStdsThisCrs ();
/* Put link to remove old users */
if (PutFormRemOldUsrs)
Enr_PutLinkToRemOldUsrs ();
fprintf (Gbl.F.Out,"</div>"); fprintf (Gbl.F.Out,"</div>");
} }
@ -2839,7 +2831,7 @@ static void Enr_ShowFormToEditOtherUsr (void)
ID_PutLinkToChangeUsrIDs (); // Put link (form) to change user's IDs ID_PutLinkToChangeUsrIDs (); // Put link (form) to change user's IDs
Pwd_PutLinkToChangeOtherUsrPassword (); // Put link (form) to change user's password Pwd_PutLinkToChangeOtherUsrPassword (); // Put link (form) to change user's password
} }
Pho_PutLinkToChangeOtherUsrPhoto (); // Put link (form) to change user's photo Pho_PutLinkToChangeOtherUsrPhoto (); // Put link (form) to change user's photo
fprintf (Gbl.F.Out,"</div>"); fprintf (Gbl.F.Out,"</div>");
/***** User's record *****/ /***** User's record *****/

View File

@ -123,20 +123,29 @@ static void Pho_ComputePhotoSize (int NumStds,int NumStdsWithPhoto,unsigned *Pho
/************** Check if I can change the photo of another user **************/ /************** Check if I can change the photo of another user **************/
/*****************************************************************************/ /*****************************************************************************/
bool Pho_CheckIfICanChangeOtherUsrPhoto (long UsrCod) bool Pho_CheckIfICanChangeOtherUsrPhoto (const struct UsrData *UsrDat)
{ {
if (UsrCod == Gbl.Usrs.Me.UsrDat.UsrCod) // It's me if (UsrDat->UsrCod == Gbl.Usrs.Me.UsrDat.UsrCod) // It's me
return true; return true;
/* Check if I have permission to change user's photo */ /* Check if I have permission to change user's photo */
switch (Gbl.Usrs.Me.LoggedRole) switch (Gbl.Usrs.Me.LoggedRole)
{ {
case Rol_TEACHER: case Rol_TEACHER:
return Usr_CheckIfUsrBelongsToCrs (UsrCod,Gbl.CurrentCrs.Crs.CrsCod); /* If I am a teacher in current course,
I only can change the photo of confirmed students or teachers from current course */
return UsrDat->Accepted;
case Rol_DEG_ADM: case Rol_DEG_ADM:
/* If I am an administrator of current degree, /* If I am an administrator of current degree,
I only can change the photo of users from current degree */ I only can change the photo of users from current degree */
return Usr_CheckIfUsrBelongsToDeg (UsrCod,Gbl.CurrentDeg.Deg.DegCod); return Usr_CheckIfUsrBelongsToDeg (UsrDat->UsrCod,Gbl.CurrentDeg.Deg.DegCod);
// TODO: Only confirmed users?
case Rol_CTR_ADM:
// TODO: Implement
return false;
case Rol_INS_ADM:
// TODO: Implement
return false;
case Rol_SYS_ADM: case Rol_SYS_ADM:
return true; return true;
default: default:
@ -173,11 +182,14 @@ void Pho_PutLinkToChangeOtherUsrPhoto (void)
/***** Link for changing / uploading the photo *****/ /***** Link for changing / uploading the photo *****/
if (Gbl.Usrs.Other.UsrDat.UsrCod == Gbl.Usrs.Me.UsrDat.UsrCod) // It's me if (Gbl.Usrs.Other.UsrDat.UsrCod == Gbl.Usrs.Me.UsrDat.UsrCod) // It's me
Pho_PutLinkToChangeMyPhoto (); Pho_PutLinkToChangeMyPhoto ();
else // Not me else // Not me
if (Pho_CheckIfICanChangeOtherUsrPhoto (Gbl.Usrs.Other.UsrDat.UsrCod)) if (Pho_CheckIfICanChangeOtherUsrPhoto (&Gbl.Usrs.Other.UsrDat))
{ {
PhotoExists = Pho_BuildLinkToPhoto (&Gbl.Usrs.Other.UsrDat,PhotoURL,true); PhotoExists = Pho_BuildLinkToPhoto (&Gbl.Usrs.Other.UsrDat,PhotoURL,true);
Act_PutContextualLink (ActReqUsrPho,Usr_PutParamOtherUsrCodEncrypted, Act_PutContextualLink ( Gbl.Usrs.Other.UsrDat.RoleInCurrentCrsDB == Rol_STUDENT ? ActReqStdPho :
(Gbl.Usrs.Other.UsrDat.RoleInCurrentCrsDB == Rol_TEACHER ? ActReqTchPho :
ActReqGstPho), // Guest, visitor or admin
Usr_PutParamOtherUsrCodEncrypted,
"photo",PhotoExists ? Txt_Change_photo : "photo",PhotoExists ? Txt_Change_photo :
Txt_Upload_photo); Txt_Upload_photo);
} }
@ -316,16 +328,10 @@ void Pho_SendPhotoUsr (void)
/***** Get user whose photo must be sent or removed *****/ /***** Get user whose photo must be sent or removed *****/
if (Usr_GetParamOtherUsrCodEncryptedAndGetUsrData ()) if (Usr_GetParamOtherUsrCodEncryptedAndGetUsrData ())
{ {
if (Pho_CheckIfICanChangeOtherUsrPhoto (Gbl.Usrs.Other.UsrDat.UsrCod)) // If I have permission to change user's photo... if (Pho_CheckIfICanChangeOtherUsrPhoto (&Gbl.Usrs.Other.UsrDat)) // If I have permission to change user's photo...
{ {
/* Check if uploading the other user's photo is allowed */ Gbl.Usrs.Other.UsrDat.Accepted = Usr_GetIfUserHasAcceptedEnrollmentInCurrentCrs (Gbl.Usrs.Other.UsrDat.UsrCod);
if (Gbl.Usrs.Me.LoggedRole > Gbl.Usrs.Other.UsrDat.RoleInCurrentCrsDB) Pho_ReqUsrPhoto (&Gbl.Usrs.Other.UsrDat); // Request user's photograph
{
Gbl.Usrs.Other.UsrDat.Accepted = Usr_GetIfUserHasAcceptedEnrollmentInCurrentCrs (Gbl.Usrs.Other.UsrDat.UsrCod);
Pho_ReqUsrPhoto (&Gbl.Usrs.Other.UsrDat); // Request user's photograph
}
else
Lay_ShowAlert (Lay_WARNING,Txt_User_not_found_or_you_do_not_have_permission_);
} }
else else
Lay_ShowAlert (Lay_WARNING,Txt_User_not_found_or_you_do_not_have_permission_); Lay_ShowAlert (Lay_WARNING,Txt_User_not_found_or_you_do_not_have_permission_);
@ -427,16 +433,16 @@ void Pho_ReceivePhotoAndDetectFaces (bool ItsMe,const struct UsrData *UsrDat)
char PathPhotosPubl[PATH_MAX+1]; char PathPhotosPubl[PATH_MAX+1];
char PathPhotosTmpPubl[PATH_MAX+1]; char PathPhotosTmpPubl[PATH_MAX+1];
char FileNamePhotoSrc[PATH_MAX+1]; char FileNamePhotoSrc[PATH_MAX+1];
char FileNamePhotoTmp[PATH_MAX+1]; // Full name (including path and .jpg) of the destination temporary file char FileNamePhotoTmp[PATH_MAX+1]; // Full name (including path and .jpg) of the destination temporary file
char FileNamePhotoMap[PATH_MAX+1]; // Full name (including path) of the temporary file with the original image with faces char FileNamePhotoMap[PATH_MAX+1]; // Full name (including path) of the temporary file with the original image with faces
char FileNameTxtMap[PATH_MAX+1]; // Full name (including path) of the temporary file with the text neccesary to make the image map char FileNameTxtMap[PATH_MAX+1]; // Full name (including path) of the temporary file with the text neccesary to make the image map
char PathRelPhoto[PATH_MAX+1]; char PathRelPhoto[PATH_MAX+1];
FILE *FileTxtMap = NULL; // Temporary file with the text neccesary to make the image map. Initialized to avoid warning FILE *FileTxtMap = NULL; // Temporary file with the text neccesary to make the image map. Initialized to avoid warning
char MIMEType[Brw_MAX_BYTES_MIME_TYPE+1]; char MIMEType[Brw_MAX_BYTES_MIME_TYPE+1];
bool WrongType = false; bool WrongType = false;
char Command[256+PATH_MAX]; // Command to call the program of preprocessing of photos char Command[256+PATH_MAX]; // Command to call the program of preprocessing of photos
int ReturnCode; int ReturnCode;
int NumLastForm = 0; // Initialized to avoid warning int NumLastForm = 0; // Initialized to avoid warning
char FormId[32]; char FormId[32];
unsigned NumFacesTotal = 0; unsigned NumFacesTotal = 0;
unsigned NumFacesGreen = 0; unsigned NumFacesGreen = 0;

View File

@ -80,7 +80,7 @@ typedef enum
/***************************** Public prototypes *****************************/ /***************************** Public prototypes *****************************/
/*****************************************************************************/ /*****************************************************************************/
bool Pho_CheckIfICanChangeOtherUsrPhoto (long UsrCod); bool Pho_CheckIfICanChangeOtherUsrPhoto (const struct UsrData *UsrDat);
void Pho_PutLinkToChangeMyPhoto (void); void Pho_PutLinkToChangeMyPhoto (void);
void Pho_PutLinkToChangeOtherUsrPhoto (void); void Pho_PutLinkToChangeOtherUsrPhoto (void);
void Pho_ReqMyPhoto (void); void Pho_ReqMyPhoto (void);

View File

@ -17573,7 +17573,7 @@ const char *Txt_MENU_TITLE[Tab_NUM_TABS][Act_MAX_OPTIONS_IN_MENU_PER_TAB] =
"Grupos" "Grupos"
#endif #endif
, ,
// ActLstInv // ActLstGst
#if L==0 #if L==0
"Convidats" "Convidats"
#elif L==1 #elif L==1
@ -19522,7 +19522,7 @@ const char *Txt_MENU_SUBTITLE[Tab_NUM_TABS][Act_MAX_OPTIONS_IN_MENU_PER_TAB] =
"Grupos" "Grupos"
#endif #endif
, ,
// ActLstInv // ActLstGst
#if L==0 #if L==0
"Llistat i fitxes dels convidats" "Llistat i fitxes dels convidats"
#elif L==1 #elif L==1

View File

@ -4788,7 +4788,7 @@ void Usr_PutExtraParamsUsrList (Act_Action_t NextAction)
{ {
switch (Gbl.CurrentAct) switch (Gbl.CurrentAct)
{ {
case ActLstInv: case ActLstGst:
case ActLstStd: case ActLstStd:
case ActLstTch: case ActLstTch:
Sco_PutParamScope (Gbl.Scope.Current); Sco_PutParamScope (Gbl.Scope.Current);
@ -6305,7 +6305,7 @@ void Usr_SeeGuests (void)
/***** Form to select range of guests *****/ /***** Form to select range of guests *****/
fprintf (Gbl.F.Out,"<div class=\"%s CENTER_MIDDLE\">", fprintf (Gbl.F.Out,"<div class=\"%s CENTER_MIDDLE\">",
The_ClassForm[Gbl.Prefs.Theme]); The_ClassForm[Gbl.Prefs.Theme]);
Act_FormStart (ActLstInv); Act_FormStart (ActLstGst);
Usr_PutParamUsrListType (Gbl.Usrs.Me.ListType); Usr_PutParamUsrListType (Gbl.Usrs.Me.ListType);
Usr_PutParamColsClassPhoto (); Usr_PutParamColsClassPhoto ();
Usr_PutParamListWithPhotos (); Usr_PutParamListWithPhotos ();
@ -6319,7 +6319,7 @@ void Usr_SeeGuests (void)
} }
/***** Form to select type of list of users *****/ /***** Form to select type of list of users *****/
Usr_ShowFormsToSelectUsrListType (ActLstInv); Usr_ShowFormsToSelectUsrListType (ActLstGst);
/***** Get and order list of students in current scope *****/ /***** Get and order list of students in current scope *****/
Usr_GetGstsLst (Gbl.Scope.Current); Usr_GetGstsLst (Gbl.Scope.Current);
@ -6341,7 +6341,7 @@ void Usr_SeeGuests (void)
break; break;
case Usr_LIST: case Usr_LIST:
/****** Link to show all the data ******/ /****** Link to show all the data ******/
Act_PutContextualLink (ActLstInvAll,Usr_PutLinkToShowGuestsAllDataParams, Act_PutContextualLink (ActLstGstAll,Usr_PutLinkToShowGuestsAllDataParams,
"table",Txt_Show_all_data); "table",Txt_Show_all_data);
break; break;
} }
@ -6395,7 +6395,7 @@ void Usr_SeeGuests (void)
static void Usr_PutLinkToShowGuestsAllDataParams (void) static void Usr_PutLinkToShowGuestsAllDataParams (void)
{ {
Usr_PutParamListWithPhotos (); Usr_PutParamListWithPhotos ();
Usr_PutExtraParamsUsrList (ActLstInvAll); Usr_PutExtraParamsUsrList (ActLstGstAll);
} }
static void Usr_PutLinkToShowStdsAllDataParams (void) static void Usr_PutLinkToShowStdsAllDataParams (void)