From f66b93cf7f000a38a5a6c2f24e4174592d6b9a90 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Antonio=20Ca=C3=B1as=20Vargas?= Date: Sun, 21 May 2017 19:25:46 +0200 Subject: [PATCH] Version 16.220.6 --- swad_action.c | 7 +- swad_action.h | 211 ++++++++++++++++++++++++----------------------- swad_changelog.h | 6 +- swad_enrolment.c | 32 +++++-- swad_enrolment.h | 1 + 5 files changed, 144 insertions(+), 113 deletions(-) diff --git a/swad_action.c b/swad_action.c index 465bbb094..6e96ff5a1 100644 --- a/swad_action.c +++ b/swad_action.c @@ -1010,8 +1010,9 @@ Users: 821. ActLogInUsrAgdLan Show another user's public agenda after change language 822. ActSeeUsrAgd Show another user's public agenda - 823. ActReqEnrSevStd Request the enrolment/removing of several users to / from current course - 824. ActReqEnrSevTch Request the enrolment/removing of several users to / from current course + 823. ActReqEnrSevStd Request the enrolment/removing of several students to / from current course + NEW. ActReqEnrSevTch Request the enrolment/removing of several non-editing teachers to / from current course + 824. ActReqEnrSevTch Request the enrolment/removing of several teachers to / from current course 825. ActReqLstStdAtt Request listing of attendance of several students to several events 826. ActSeeLstMyAtt List my attendance as student to several events @@ -2476,6 +2477,7 @@ struct Act_Actions Act_Actions[Act_NUM_ACTIONS] = /* ActSeeUsrAgd */{1611,-1,TabUnk,ActLstTch ,0x3F8,0x3C4,0x3C4,0x3C4,0x3C4,0x3C4,0x3C4,Act_CONT_NORM,Act_THIS_WINDOW,NULL ,Agd_ShowUsrAgenda ,NULL}, /* ActReqEnrSevStd */{1426,-1,TabUnk,ActLstStd ,0x3F8,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,Act_CONT_NORM,Act_THIS_WINDOW,NULL ,Enr_ReqAdminStds ,NULL}, + /* ActReqEnrSevNEdTch*/{1642,-1,TabUnk,ActLstTch ,0x3F8,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,Act_CONT_NORM,Act_THIS_WINDOW,NULL ,Enr_ReqAdminNonEditingTchs ,NULL}, /* ActReqEnrSevTch */{1427,-1,TabUnk,ActLstTch ,0x3F8,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,Act_CONT_NORM,Act_THIS_WINDOW,NULL ,Enr_ReqAdminTchs ,NULL}, /* ActReqLstStdAtt */{1073,-1,TabUnk,ActSeeAtt ,0x230,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_THIS_WINDOW,NULL ,Usr_ReqListStdsAttendanceCrs ,NULL}, @@ -4632,6 +4634,7 @@ Act_Action_t Act_FromActCodToAction[1 + Act_MAX_ACTION_COD] = // Do not reuse un ActReqAccEnrNEdTch, // #1639 ActAccEnrNEdTch, // #1640 ActRemMe_NEdTch, // #1641 + ActReqEnrSevNEdTch, // #1642 }; /*****************************************************************************/ diff --git a/swad_action.h b/swad_action.h index 8a819eee5..77fb53202 100644 --- a/swad_action.h +++ b/swad_action.h @@ -57,9 +57,9 @@ typedef enum typedef signed int Act_Action_t; // Must be a signed type, because -1 is used to indicate obsolete action -#define Act_NUM_ACTIONS (1 + 9 + 43 + 17 + 47 + 32 + 24 + 115 + 72 + 416 + 159 + 172 + 42 + 14 + 97) +#define Act_NUM_ACTIONS (1 + 9 + 43 + 17 + 47 + 32 + 24 + 115 + 72 + 416 + 160 + 172 + 42 + 14 + 97) -#define Act_MAX_ACTION_COD 1641 +#define Act_MAX_ACTION_COD 1642 #define Act_MAX_OPTIONS_IN_MENU_PER_TAB 12 @@ -1025,124 +1025,125 @@ typedef signed int Act_Action_t; // Must be a signed type, because -1 is used to #define ActSeeUsrAgd (ActChgNumRowFooGrp + 55) #define ActReqEnrSevStd (ActChgNumRowFooGrp + 56) -#define ActReqEnrSevTch (ActChgNumRowFooGrp + 57) +#define ActReqEnrSevNEdTch (ActChgNumRowFooGrp + 57) +#define ActReqEnrSevTch (ActChgNumRowFooGrp + 58) -#define ActReqLstStdAtt (ActChgNumRowFooGrp + 58) -#define ActSeeLstMyAtt (ActChgNumRowFooGrp + 59) -#define ActPrnLstMyAtt (ActChgNumRowFooGrp + 60) -#define ActSeeLstStdAtt (ActChgNumRowFooGrp + 61) -#define ActPrnLstStdAtt (ActChgNumRowFooGrp + 62) -#define ActFrmNewAtt (ActChgNumRowFooGrp + 63) -#define ActEdiOneAtt (ActChgNumRowFooGrp + 64) -#define ActNewAtt (ActChgNumRowFooGrp + 65) -#define ActChgAtt (ActChgNumRowFooGrp + 66) -#define ActReqRemAtt (ActChgNumRowFooGrp + 67) -#define ActRemAtt (ActChgNumRowFooGrp + 68) -#define ActHidAtt (ActChgNumRowFooGrp + 69) -#define ActShoAtt (ActChgNumRowFooGrp + 70) -#define ActSeeOneAtt (ActChgNumRowFooGrp + 71) -#define ActRecAttStd (ActChgNumRowFooGrp + 72) -#define ActRecAttMe (ActChgNumRowFooGrp + 73) +#define ActReqLstStdAtt (ActChgNumRowFooGrp + 59) +#define ActSeeLstMyAtt (ActChgNumRowFooGrp + 60) +#define ActPrnLstMyAtt (ActChgNumRowFooGrp + 61) +#define ActSeeLstStdAtt (ActChgNumRowFooGrp + 62) +#define ActPrnLstStdAtt (ActChgNumRowFooGrp + 63) +#define ActFrmNewAtt (ActChgNumRowFooGrp + 64) +#define ActEdiOneAtt (ActChgNumRowFooGrp + 65) +#define ActNewAtt (ActChgNumRowFooGrp + 66) +#define ActChgAtt (ActChgNumRowFooGrp + 67) +#define ActReqRemAtt (ActChgNumRowFooGrp + 68) +#define ActRemAtt (ActChgNumRowFooGrp + 69) +#define ActHidAtt (ActChgNumRowFooGrp + 70) +#define ActShoAtt (ActChgNumRowFooGrp + 71) +#define ActSeeOneAtt (ActChgNumRowFooGrp + 72) +#define ActRecAttStd (ActChgNumRowFooGrp + 73) +#define ActRecAttMe (ActChgNumRowFooGrp + 74) -#define ActSignUp (ActChgNumRowFooGrp + 74) -#define ActUpdSignUpReq (ActChgNumRowFooGrp + 75) -#define ActReqRejSignUp (ActChgNumRowFooGrp + 76) -#define ActRejSignUp (ActChgNumRowFooGrp + 77) +#define ActSignUp (ActChgNumRowFooGrp + 75) +#define ActUpdSignUpReq (ActChgNumRowFooGrp + 76) +#define ActReqRejSignUp (ActChgNumRowFooGrp + 77) +#define ActRejSignUp (ActChgNumRowFooGrp + 78) -#define ActReqMdfOneOth (ActChgNumRowFooGrp + 78) -#define ActReqMdfOneStd (ActChgNumRowFooGrp + 79) -#define ActReqMdfOneTch (ActChgNumRowFooGrp + 80) +#define ActReqMdfOneOth (ActChgNumRowFooGrp + 79) +#define ActReqMdfOneStd (ActChgNumRowFooGrp + 80) +#define ActReqMdfOneTch (ActChgNumRowFooGrp + 81) -#define ActReqMdfOth (ActChgNumRowFooGrp + 81) -#define ActReqMdfStd (ActChgNumRowFooGrp + 82) -#define ActReqMdfTch (ActChgNumRowFooGrp + 83) +#define ActReqMdfOth (ActChgNumRowFooGrp + 82) +#define ActReqMdfStd (ActChgNumRowFooGrp + 83) +#define ActReqMdfTch (ActChgNumRowFooGrp + 84) -#define ActReqOthPho (ActChgNumRowFooGrp + 84) -#define ActReqStdPho (ActChgNumRowFooGrp + 85) -#define ActReqTchPho (ActChgNumRowFooGrp + 86) -#define ActDetOthPho (ActChgNumRowFooGrp + 87) -#define ActDetStdPho (ActChgNumRowFooGrp + 88) -#define ActDetTchPho (ActChgNumRowFooGrp + 89) -#define ActUpdOthPho (ActChgNumRowFooGrp + 90) -#define ActUpdStdPho (ActChgNumRowFooGrp + 91) -#define ActUpdTchPho (ActChgNumRowFooGrp + 92) -#define ActReqRemOthPho (ActChgNumRowFooGrp + 93) -#define ActReqRemStdPho (ActChgNumRowFooGrp + 94) -#define ActReqRemTchPho (ActChgNumRowFooGrp + 95) -#define ActRemOthPho (ActChgNumRowFooGrp + 96) -#define ActRemStdPho (ActChgNumRowFooGrp + 97) -#define ActRemTchPho (ActChgNumRowFooGrp + 98) -#define ActCreOth (ActChgNumRowFooGrp + 99) -#define ActCreStd (ActChgNumRowFooGrp + 100) -#define ActCreTch (ActChgNumRowFooGrp + 101) -#define ActUpdOth (ActChgNumRowFooGrp + 102) -#define ActUpdStd (ActChgNumRowFooGrp + 103) -#define ActUpdTch (ActChgNumRowFooGrp + 104) +#define ActReqOthPho (ActChgNumRowFooGrp + 85) +#define ActReqStdPho (ActChgNumRowFooGrp + 86) +#define ActReqTchPho (ActChgNumRowFooGrp + 87) +#define ActDetOthPho (ActChgNumRowFooGrp + 88) +#define ActDetStdPho (ActChgNumRowFooGrp + 89) +#define ActDetTchPho (ActChgNumRowFooGrp + 90) +#define ActUpdOthPho (ActChgNumRowFooGrp + 91) +#define ActUpdStdPho (ActChgNumRowFooGrp + 92) +#define ActUpdTchPho (ActChgNumRowFooGrp + 93) +#define ActReqRemOthPho (ActChgNumRowFooGrp + 94) +#define ActReqRemStdPho (ActChgNumRowFooGrp + 95) +#define ActReqRemTchPho (ActChgNumRowFooGrp + 96) +#define ActRemOthPho (ActChgNumRowFooGrp + 97) +#define ActRemStdPho (ActChgNumRowFooGrp + 98) +#define ActRemTchPho (ActChgNumRowFooGrp + 99) +#define ActCreOth (ActChgNumRowFooGrp + 100) +#define ActCreStd (ActChgNumRowFooGrp + 101) +#define ActCreTch (ActChgNumRowFooGrp + 102) +#define ActUpdOth (ActChgNumRowFooGrp + 103) +#define ActUpdStd (ActChgNumRowFooGrp + 104) +#define ActUpdTch (ActChgNumRowFooGrp + 105) -#define ActReqAccEnrStd (ActChgNumRowFooGrp + 105) -#define ActReqAccEnrNEdTch (ActChgNumRowFooGrp + 106) -#define ActReqAccEnrTch (ActChgNumRowFooGrp + 107) -#define ActAccEnrStd (ActChgNumRowFooGrp + 108) -#define ActAccEnrNEdTch (ActChgNumRowFooGrp + 109) -#define ActAccEnrTch (ActChgNumRowFooGrp + 110) -#define ActRemMe_Std (ActChgNumRowFooGrp + 111) -#define ActRemMe_NEdTch (ActChgNumRowFooGrp + 112) -#define ActRemMe_Tch (ActChgNumRowFooGrp + 113) +#define ActReqAccEnrStd (ActChgNumRowFooGrp + 106) +#define ActReqAccEnrNEdTch (ActChgNumRowFooGrp + 107) +#define ActReqAccEnrTch (ActChgNumRowFooGrp + 108) +#define ActAccEnrStd (ActChgNumRowFooGrp + 109) +#define ActAccEnrNEdTch (ActChgNumRowFooGrp + 110) +#define ActAccEnrTch (ActChgNumRowFooGrp + 111) +#define ActRemMe_Std (ActChgNumRowFooGrp + 112) +#define ActRemMe_NEdTch (ActChgNumRowFooGrp + 113) +#define ActRemMe_Tch (ActChgNumRowFooGrp + 114) -#define ActNewAdmIns (ActChgNumRowFooGrp + 114) -#define ActRemAdmIns (ActChgNumRowFooGrp + 115) -#define ActNewAdmCtr (ActChgNumRowFooGrp + 116) -#define ActRemAdmCtr (ActChgNumRowFooGrp + 117) -#define ActNewAdmDeg (ActChgNumRowFooGrp + 118) -#define ActRemAdmDeg (ActChgNumRowFooGrp + 119) +#define ActNewAdmIns (ActChgNumRowFooGrp + 115) +#define ActRemAdmIns (ActChgNumRowFooGrp + 116) +#define ActNewAdmCtr (ActChgNumRowFooGrp + 117) +#define ActRemAdmCtr (ActChgNumRowFooGrp + 118) +#define ActNewAdmDeg (ActChgNumRowFooGrp + 119) +#define ActRemAdmDeg (ActChgNumRowFooGrp + 120) -#define ActRcvFrmEnrSevStd (ActChgNumRowFooGrp + 120) -#define ActRcvFrmEnrSevTch (ActChgNumRowFooGrp + 121) +#define ActRcvFrmEnrSevStd (ActChgNumRowFooGrp + 121) +#define ActRcvFrmEnrSevTch (ActChgNumRowFooGrp + 122) -#define ActCnfID_Oth (ActChgNumRowFooGrp + 122) -#define ActCnfID_Std (ActChgNumRowFooGrp + 123) -#define ActCnfID_Tch (ActChgNumRowFooGrp + 124) +#define ActCnfID_Oth (ActChgNumRowFooGrp + 123) +#define ActCnfID_Std (ActChgNumRowFooGrp + 124) +#define ActCnfID_Tch (ActChgNumRowFooGrp + 125) -#define ActFrmIDsOth (ActChgNumRowFooGrp + 125) -#define ActFrmIDsStd (ActChgNumRowFooGrp + 126) -#define ActFrmIDsTch (ActChgNumRowFooGrp + 127) -#define ActRemID_Oth (ActChgNumRowFooGrp + 128) -#define ActRemID_Std (ActChgNumRowFooGrp + 129) -#define ActRemID_Tch (ActChgNumRowFooGrp + 130) -#define ActNewID_Oth (ActChgNumRowFooGrp + 131) -#define ActNewID_Std (ActChgNumRowFooGrp + 132) -#define ActNewID_Tch (ActChgNumRowFooGrp + 133) -#define ActFrmPwdOth (ActChgNumRowFooGrp + 134) -#define ActFrmPwdStd (ActChgNumRowFooGrp + 135) -#define ActFrmPwdTch (ActChgNumRowFooGrp + 136) -#define ActChgPwdOth (ActChgNumRowFooGrp + 137) -#define ActChgPwdStd (ActChgNumRowFooGrp + 138) -#define ActChgPwdTch (ActChgNumRowFooGrp + 139) -#define ActFrmMaiOth (ActChgNumRowFooGrp + 140) -#define ActFrmMaiStd (ActChgNumRowFooGrp + 141) -#define ActFrmMaiTch (ActChgNumRowFooGrp + 142) -#define ActRemMaiOth (ActChgNumRowFooGrp + 143) -#define ActRemMaiStd (ActChgNumRowFooGrp + 144) -#define ActRemMaiTch (ActChgNumRowFooGrp + 145) -#define ActNewMaiOth (ActChgNumRowFooGrp + 146) -#define ActNewMaiStd (ActChgNumRowFooGrp + 147) -#define ActNewMaiTch (ActChgNumRowFooGrp + 148) +#define ActFrmIDsOth (ActChgNumRowFooGrp + 126) +#define ActFrmIDsStd (ActChgNumRowFooGrp + 127) +#define ActFrmIDsTch (ActChgNumRowFooGrp + 128) +#define ActRemID_Oth (ActChgNumRowFooGrp + 129) +#define ActRemID_Std (ActChgNumRowFooGrp + 130) +#define ActRemID_Tch (ActChgNumRowFooGrp + 131) +#define ActNewID_Oth (ActChgNumRowFooGrp + 132) +#define ActNewID_Std (ActChgNumRowFooGrp + 133) +#define ActNewID_Tch (ActChgNumRowFooGrp + 134) +#define ActFrmPwdOth (ActChgNumRowFooGrp + 135) +#define ActFrmPwdStd (ActChgNumRowFooGrp + 136) +#define ActFrmPwdTch (ActChgNumRowFooGrp + 137) +#define ActChgPwdOth (ActChgNumRowFooGrp + 138) +#define ActChgPwdStd (ActChgNumRowFooGrp + 139) +#define ActChgPwdTch (ActChgNumRowFooGrp + 140) +#define ActFrmMaiOth (ActChgNumRowFooGrp + 141) +#define ActFrmMaiStd (ActChgNumRowFooGrp + 142) +#define ActFrmMaiTch (ActChgNumRowFooGrp + 143) +#define ActRemMaiOth (ActChgNumRowFooGrp + 144) +#define ActRemMaiStd (ActChgNumRowFooGrp + 145) +#define ActRemMaiTch (ActChgNumRowFooGrp + 146) +#define ActNewMaiOth (ActChgNumRowFooGrp + 147) +#define ActNewMaiStd (ActChgNumRowFooGrp + 148) +#define ActNewMaiTch (ActChgNumRowFooGrp + 149) -#define ActRemStdCrs (ActChgNumRowFooGrp + 149) -#define ActRemTchCrs (ActChgNumRowFooGrp + 150) -#define ActRemUsrGbl (ActChgNumRowFooGrp + 151) +#define ActRemStdCrs (ActChgNumRowFooGrp + 150) +#define ActRemTchCrs (ActChgNumRowFooGrp + 151) +#define ActRemUsrGbl (ActChgNumRowFooGrp + 152) -#define ActReqRemAllStdCrs (ActChgNumRowFooGrp + 152) -#define ActRemAllStdCrs (ActChgNumRowFooGrp + 153) +#define ActReqRemAllStdCrs (ActChgNumRowFooGrp + 153) +#define ActRemAllStdCrs (ActChgNumRowFooGrp + 154) -#define ActReqRemOldUsr (ActChgNumRowFooGrp + 154) -#define ActRemOldUsr (ActChgNumRowFooGrp + 155) +#define ActReqRemOldUsr (ActChgNumRowFooGrp + 155) +#define ActRemOldUsr (ActChgNumRowFooGrp + 156) -#define ActLstDupUsr (ActChgNumRowFooGrp + 156) -#define ActLstSimUsr (ActChgNumRowFooGrp + 157) -#define ActRemDupUsr (ActChgNumRowFooGrp + 158) +#define ActLstDupUsr (ActChgNumRowFooGrp + 157) +#define ActLstSimUsr (ActChgNumRowFooGrp + 158) +#define ActRemDupUsr (ActChgNumRowFooGrp + 159) -#define ActLstClk (ActChgNumRowFooGrp + 159) +#define ActLstClk (ActChgNumRowFooGrp + 160) /*****************************************************************************/ /******************************** Social tab *********************************/ diff --git a/swad_changelog.h b/swad_changelog.h index dd6a1a240..182f2344d 100644 --- a/swad_changelog.h +++ b/swad_changelog.h @@ -233,13 +233,17 @@ /****************************** Public constants *****************************/ /*****************************************************************************/ -#define Log_PLATFORM_VERSION "SWAD 16.220.5 (2017-05-21)" +#define Log_PLATFORM_VERSION "SWAD 16.220.6 (2017-05-21)" #define CSS_FILE "swad16.209.3.css" #define JS_FILE "swad16.206.3.js" // 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 /* + Version 16.220.6: May 21, 2017 Changes related with new role. Not finished. (219485 lines) + 1 change necessary in database: +INSERT INTO actions (ActCod,Language,Obsolete,Txt) VALUES ('1642','es','N','Administrar varios profesores no editores'); + Version 16.220.5: May 21, 2017 Changes related with new role. Not finished. (219452 lines) 3 changes necessary in database: INSERT INTO actions (ActCod,Language,Obsolete,Txt) VALUES ('1639','es','N','Solicitar acept. inscrip. profesor no editor'); diff --git a/swad_enrolment.c b/swad_enrolment.c index 0f8b07c94..2ecd23bb8 100644 --- a/swad_enrolment.c +++ b/swad_enrolment.c @@ -583,6 +583,11 @@ void Enr_ReqAdminStds (void) Enr_ReqAdminUsrs (Rol_STD); } +void Enr_ReqAdminNonEditingTchs (void) + { + Enr_ReqAdminUsrs (Rol_NED_TCH); + } + void Enr_ReqAdminTchs (void) { Enr_ReqAdminUsrs (Rol_TCH); @@ -2969,12 +2974,29 @@ void Enr_PutLinkToAdminSeveralUsrs (Rol_Role_t Role) { extern const char *Txt_Administer_multiple_students; extern const char *Txt_Administer_multiple_teachers; - const char *TitleText = (Role == Rol_STD) ? Txt_Administer_multiple_students : - Txt_Administer_multiple_teachers; + Act_Action_t NextAction; + const char *TitleText; - Lay_PutContextualLink (Role == Rol_STD ? ActReqEnrSevStd : - ActReqEnrSevTch, - NULL,NULL, + switch (Role) + { + case Rol_STD: + NextAction = ActReqEnrSevStd; + TitleText = Txt_Administer_multiple_students; + break; + case Rol_NED_TCH: + NextAction = ActReqEnrSevNEdTch; + TitleText = Txt_Administer_multiple_teachers; + break; + case Rol_TCH: + NextAction = ActReqEnrSevTch; + TitleText = Txt_Administer_multiple_teachers; + break; + default: + NextAction = ActUnk; + TitleText = NULL; + Lay_ShowErrorAndExit ("Wrong role."); + } + Lay_PutContextualLink (NextAction,NULL,NULL, "config64x64.gif", TitleText,TitleText, NULL); diff --git a/swad_enrolment.h b/swad_enrolment.h index 7f0856ea3..659442489 100644 --- a/swad_enrolment.h +++ b/swad_enrolment.h @@ -89,6 +89,7 @@ void Enr_FilterUsrDat (struct UsrData *UsrDat); void Enr_UpdateInstitutionCentreDepartment (void); void Enr_ReqAdminStds (void); +void Enr_ReqAdminNonEditingTchs (void); void Enr_ReqAdminTchs (void); void Enr_PutLinkToRemOldUsrs (void);