Version 16.220.4

This commit is contained in:
Antonio Cañas Vargas 2017-05-21 18:08:35 +02:00
parent 5cc60b192c
commit 03b66d6f49
10 changed files with 232 additions and 158 deletions

View File

@ -11924,4 +11924,3 @@ INSERT INTO timetable_tut_backup SELECT * FROM timetable_tut;

View File

@ -1063,6 +1063,7 @@ Users:
870. ActUpdStd Update another user's data and groups 870. ActUpdStd Update another user's data and groups
871. ActUpdTch Update another user's data and groups 871. ActUpdTch Update another user's data and groups
872. ActReqAccEnrStd Confirm acceptation / refusion of enrolment as student in current course 872. ActReqAccEnrStd Confirm acceptation / refusion of enrolment as student in current course
NEW. ActReqAccEnrNEdTch Confirm acceptation / refusion of enrolment as non-editing teacher in current course
873. ActReqAccEnrTch Confirm acceptation / refusion of enrolment as teacher in current course 873. ActReqAccEnrTch Confirm acceptation / refusion of enrolment as teacher in current course
874. ActAccEnrStd Accept enrolment as student in current course 874. ActAccEnrStd Accept enrolment as student in current course
875. ActAccEnrTch Accept enrolment as teacher in current course 875. ActAccEnrTch Accept enrolment as teacher in current course
@ -2533,6 +2534,7 @@ struct Act_Actions Act_Actions[Act_NUM_ACTIONS] =
/* ActUpdTch */{1424,-1,TabUnk,ActLstTch ,0x3F8,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,Act_CONT_NORM,Act_THIS_WINDOW,Enr_ModifyUsr1 ,Enr_ModifyUsr2 ,NULL}, /* ActUpdTch */{1424,-1,TabUnk,ActLstTch ,0x3F8,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,Act_CONT_NORM,Act_THIS_WINDOW,Enr_ModifyUsr1 ,Enr_ModifyUsr2 ,NULL},
/* ActReqAccEnrStd */{1456,-1,TabUnk,ActLstStd ,0x3C8, 0, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_THIS_WINDOW,NULL ,Enr_ReqAcceptRegisterInCrs ,NULL}, /* ActReqAccEnrStd */{1456,-1,TabUnk,ActLstStd ,0x3C8, 0, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_THIS_WINDOW,NULL ,Enr_ReqAcceptRegisterInCrs ,NULL},
/* ActReqAccEnrNEdTch*/{1639,-1,TabUnk,ActLstTch ,0x3D0, 0, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_THIS_WINDOW,NULL ,Enr_ReqAcceptRegisterInCrs ,NULL},
/* ActReqAccEnrTch */{1457,-1,TabUnk,ActLstTch ,0x3E0, 0, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_THIS_WINDOW,NULL ,Enr_ReqAcceptRegisterInCrs ,NULL}, /* ActReqAccEnrTch */{1457,-1,TabUnk,ActLstTch ,0x3E0, 0, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_THIS_WINDOW,NULL ,Enr_ReqAcceptRegisterInCrs ,NULL},
/* ActAccEnrStd */{1458,-1,TabUnk,ActLstStd ,0x3C8, 0, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_THIS_WINDOW,NULL ,Enr_AcceptRegisterMeInCrs ,NULL}, /* ActAccEnrStd */{1458,-1,TabUnk,ActLstStd ,0x3C8, 0, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_THIS_WINDOW,NULL ,Enr_AcceptRegisterMeInCrs ,NULL},
/* ActAccEnrTch */{1459,-1,TabUnk,ActLstTch ,0x3E0, 0, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_THIS_WINDOW,NULL ,Enr_AcceptRegisterMeInCrs ,NULL}, /* ActAccEnrTch */{1459,-1,TabUnk,ActLstTch ,0x3E0, 0, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_THIS_WINDOW,NULL ,Enr_AcceptRegisterMeInCrs ,NULL},
@ -4623,6 +4625,7 @@ Act_Action_t Act_FromActCodToAction[1 + Act_MAX_ACTION_COD] = // Do not reuse un
ActChgCalDeg1stDay, // #1636 ActChgCalDeg1stDay, // #1636
ActPrnOneAsg, // #1637 ActPrnOneAsg, // #1637
ActChgDatFmt, // #1638 ActChgDatFmt, // #1638
ActReqAccEnrNEdTch, // #1639
}; };
/*****************************************************************************/ /*****************************************************************************/
@ -5115,16 +5118,17 @@ void Act_AdjustCurrentAction (void)
{ {
case Rol_STD: case Rol_STD:
Gbl.Action.Act = ActReqAccEnrStd; Gbl.Action.Act = ActReqAccEnrStd;
Tab_SetCurrentTab ();
break; break;
case Rol_NED_TCH: case Rol_NED_TCH:
Gbl.Action.Act = ActReqAccEnrNEdTch;
break;
case Rol_TCH: case Rol_TCH:
Gbl.Action.Act = ActReqAccEnrTch; Gbl.Action.Act = ActReqAccEnrTch;
Tab_SetCurrentTab ();
break; break;
default: default:
break; return;
} }
Tab_SetCurrentTab ();
return; return;
} }

View File

@ -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 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 + 156 + 172 + 42 + 14 + 97) #define Act_NUM_ACTIONS (1 + 9 + 43 + 17 + 47 + 32 + 24 + 115 + 72 + 416 + 157 + 172 + 42 + 14 + 97)
#define Act_MAX_ACTION_COD 1638 #define Act_MAX_ACTION_COD 1639
#define Act_MAX_OPTIONS_IN_MENU_PER_TAB 12 #define Act_MAX_OPTIONS_IN_MENU_PER_TAB 12
@ -1080,66 +1080,67 @@ typedef signed int Act_Action_t; // Must be a signed type, because -1 is used to
#define ActUpdTch (ActChgNumRowFooGrp + 104) #define ActUpdTch (ActChgNumRowFooGrp + 104)
#define ActReqAccEnrStd (ActChgNumRowFooGrp + 105) #define ActReqAccEnrStd (ActChgNumRowFooGrp + 105)
#define ActReqAccEnrTch (ActChgNumRowFooGrp + 106) #define ActReqAccEnrNEdTch (ActChgNumRowFooGrp + 106)
#define ActAccEnrStd (ActChgNumRowFooGrp + 107) #define ActReqAccEnrTch (ActChgNumRowFooGrp + 107)
#define ActAccEnrTch (ActChgNumRowFooGrp + 108) #define ActAccEnrStd (ActChgNumRowFooGrp + 108)
#define ActRemMe_Std (ActChgNumRowFooGrp + 109) #define ActAccEnrTch (ActChgNumRowFooGrp + 109)
#define ActRemMe_Tch (ActChgNumRowFooGrp + 110) #define ActRemMe_Std (ActChgNumRowFooGrp + 110)
#define ActRemMe_Tch (ActChgNumRowFooGrp + 111)
#define ActNewAdmIns (ActChgNumRowFooGrp + 111) #define ActNewAdmIns (ActChgNumRowFooGrp + 112)
#define ActRemAdmIns (ActChgNumRowFooGrp + 112) #define ActRemAdmIns (ActChgNumRowFooGrp + 113)
#define ActNewAdmCtr (ActChgNumRowFooGrp + 113) #define ActNewAdmCtr (ActChgNumRowFooGrp + 114)
#define ActRemAdmCtr (ActChgNumRowFooGrp + 114) #define ActRemAdmCtr (ActChgNumRowFooGrp + 115)
#define ActNewAdmDeg (ActChgNumRowFooGrp + 115) #define ActNewAdmDeg (ActChgNumRowFooGrp + 116)
#define ActRemAdmDeg (ActChgNumRowFooGrp + 116) #define ActRemAdmDeg (ActChgNumRowFooGrp + 117)
#define ActRcvFrmEnrSevStd (ActChgNumRowFooGrp + 117) #define ActRcvFrmEnrSevStd (ActChgNumRowFooGrp + 118)
#define ActRcvFrmEnrSevTch (ActChgNumRowFooGrp + 118) #define ActRcvFrmEnrSevTch (ActChgNumRowFooGrp + 119)
#define ActCnfID_Oth (ActChgNumRowFooGrp + 119) #define ActCnfID_Oth (ActChgNumRowFooGrp + 120)
#define ActCnfID_Std (ActChgNumRowFooGrp + 120) #define ActCnfID_Std (ActChgNumRowFooGrp + 121)
#define ActCnfID_Tch (ActChgNumRowFooGrp + 121) #define ActCnfID_Tch (ActChgNumRowFooGrp + 122)
#define ActFrmIDsOth (ActChgNumRowFooGrp + 122) #define ActFrmIDsOth (ActChgNumRowFooGrp + 123)
#define ActFrmIDsStd (ActChgNumRowFooGrp + 123) #define ActFrmIDsStd (ActChgNumRowFooGrp + 124)
#define ActFrmIDsTch (ActChgNumRowFooGrp + 124) #define ActFrmIDsTch (ActChgNumRowFooGrp + 125)
#define ActRemID_Oth (ActChgNumRowFooGrp + 125) #define ActRemID_Oth (ActChgNumRowFooGrp + 126)
#define ActRemID_Std (ActChgNumRowFooGrp + 126) #define ActRemID_Std (ActChgNumRowFooGrp + 127)
#define ActRemID_Tch (ActChgNumRowFooGrp + 127) #define ActRemID_Tch (ActChgNumRowFooGrp + 128)
#define ActNewID_Oth (ActChgNumRowFooGrp + 128) #define ActNewID_Oth (ActChgNumRowFooGrp + 129)
#define ActNewID_Std (ActChgNumRowFooGrp + 129) #define ActNewID_Std (ActChgNumRowFooGrp + 130)
#define ActNewID_Tch (ActChgNumRowFooGrp + 130) #define ActNewID_Tch (ActChgNumRowFooGrp + 131)
#define ActFrmPwdOth (ActChgNumRowFooGrp + 131) #define ActFrmPwdOth (ActChgNumRowFooGrp + 132)
#define ActFrmPwdStd (ActChgNumRowFooGrp + 132) #define ActFrmPwdStd (ActChgNumRowFooGrp + 133)
#define ActFrmPwdTch (ActChgNumRowFooGrp + 133) #define ActFrmPwdTch (ActChgNumRowFooGrp + 134)
#define ActChgPwdOth (ActChgNumRowFooGrp + 134) #define ActChgPwdOth (ActChgNumRowFooGrp + 135)
#define ActChgPwdStd (ActChgNumRowFooGrp + 135) #define ActChgPwdStd (ActChgNumRowFooGrp + 136)
#define ActChgPwdTch (ActChgNumRowFooGrp + 136) #define ActChgPwdTch (ActChgNumRowFooGrp + 137)
#define ActFrmMaiOth (ActChgNumRowFooGrp + 137) #define ActFrmMaiOth (ActChgNumRowFooGrp + 138)
#define ActFrmMaiStd (ActChgNumRowFooGrp + 138) #define ActFrmMaiStd (ActChgNumRowFooGrp + 139)
#define ActFrmMaiTch (ActChgNumRowFooGrp + 139) #define ActFrmMaiTch (ActChgNumRowFooGrp + 140)
#define ActRemMaiOth (ActChgNumRowFooGrp + 140) #define ActRemMaiOth (ActChgNumRowFooGrp + 141)
#define ActRemMaiStd (ActChgNumRowFooGrp + 141) #define ActRemMaiStd (ActChgNumRowFooGrp + 142)
#define ActRemMaiTch (ActChgNumRowFooGrp + 142) #define ActRemMaiTch (ActChgNumRowFooGrp + 143)
#define ActNewMaiOth (ActChgNumRowFooGrp + 143) #define ActNewMaiOth (ActChgNumRowFooGrp + 144)
#define ActNewMaiStd (ActChgNumRowFooGrp + 144) #define ActNewMaiStd (ActChgNumRowFooGrp + 145)
#define ActNewMaiTch (ActChgNumRowFooGrp + 145) #define ActNewMaiTch (ActChgNumRowFooGrp + 146)
#define ActRemStdCrs (ActChgNumRowFooGrp + 146) #define ActRemStdCrs (ActChgNumRowFooGrp + 147)
#define ActRemTchCrs (ActChgNumRowFooGrp + 147) #define ActRemTchCrs (ActChgNumRowFooGrp + 148)
#define ActRemUsrGbl (ActChgNumRowFooGrp + 148) #define ActRemUsrGbl (ActChgNumRowFooGrp + 149)
#define ActReqRemAllStdCrs (ActChgNumRowFooGrp + 149) #define ActReqRemAllStdCrs (ActChgNumRowFooGrp + 150)
#define ActRemAllStdCrs (ActChgNumRowFooGrp + 150) #define ActRemAllStdCrs (ActChgNumRowFooGrp + 151)
#define ActReqRemOldUsr (ActChgNumRowFooGrp + 151) #define ActReqRemOldUsr (ActChgNumRowFooGrp + 152)
#define ActRemOldUsr (ActChgNumRowFooGrp + 152) #define ActRemOldUsr (ActChgNumRowFooGrp + 153)
#define ActLstDupUsr (ActChgNumRowFooGrp + 153) #define ActLstDupUsr (ActChgNumRowFooGrp + 154)
#define ActLstSimUsr (ActChgNumRowFooGrp + 154) #define ActLstSimUsr (ActChgNumRowFooGrp + 155)
#define ActRemDupUsr (ActChgNumRowFooGrp + 155) #define ActRemDupUsr (ActChgNumRowFooGrp + 156)
#define ActLstClk (ActChgNumRowFooGrp + 156) #define ActLstClk (ActChgNumRowFooGrp + 157)
/*****************************************************************************/ /*****************************************************************************/
/******************************** Social tab *********************************/ /******************************** Social tab *********************************/

View File

@ -233,13 +233,14 @@
/****************************** Public constants *****************************/ /****************************** Public constants *****************************/
/*****************************************************************************/ /*****************************************************************************/
#define Log_PLATFORM_VERSION "SWAD 16.220.3 (2017-05-21)" #define Log_PLATFORM_VERSION "SWAD 16.220.4 (2017-05-21)"
#define CSS_FILE "swad16.209.3.css" #define CSS_FILE "swad16.209.3.css"
#define JS_FILE "swad16.206.3.js" #define JS_FILE "swad16.206.3.js"
// 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 16.220.4: May 21, 2017 Changes related with new role. Not finished. (219401 lines)
Version 16.220.3: May 21, 2017 Changes related with new role. Not finished. (219327 lines) Version 16.220.3: May 21, 2017 Changes related with new role. Not finished. (219327 lines)
Version 16.220.2: May 21, 2017 Changes related with new role. Not finished. (219319 lines) Version 16.220.2: May 21, 2017 Changes related with new role. Not finished. (219319 lines)
Version 16.220.1: May 20, 2017 Changes related with new role. Not finished. (219332 lines) Version 16.220.1: May 20, 2017 Changes related with new role. Not finished. (219332 lines)

View File

@ -329,6 +329,7 @@ static void Dup_ListSimilarUsrs (void)
/* Write all the courses this user belongs to */ /* Write all the courses this user belongs to */
Crs_GetAndWriteCrssOfAUsr (&UsrDat,Rol_TCH); Crs_GetAndWriteCrssOfAUsr (&UsrDat,Rol_TCH);
Crs_GetAndWriteCrssOfAUsr (&UsrDat,Rol_NED_TCH);
Crs_GetAndWriteCrssOfAUsr (&UsrDat,Rol_STD); Crs_GetAndWriteCrssOfAUsr (&UsrDat,Rol_STD);
fprintf (Gbl.F.Out,"</td>" fprintf (Gbl.F.Out,"</td>"

View File

@ -50,11 +50,14 @@
static const bool Enr_ICanAdminOtherUsrs[Rol_NUM_ROLES] = static const bool Enr_ICanAdminOtherUsrs[Rol_NUM_ROLES] =
{ {
/* Users who can not admin */
false, // Rol_UNK false, // Rol_UNK
false, // Rol_GST false, // Rol_GST
false, // Rol_USR false, // Rol_USR
false, // Rol_STD false, // Rol_STD
false, // Rol_NED_TCH false, // Rol_NED_TCH
/* Users who can admin */
true, // Rol_TCH true, // Rol_TCH
true, // Rol_DEG_ADM true, // Rol_DEG_ADM
true, // Rol_CTR_ADM true, // Rol_CTR_ADM
@ -211,6 +214,7 @@ void Enr_ModifyRoleInCurrentCrs (struct UsrData *UsrDat,Rol_Role_t NewRole)
switch (NewRole) switch (NewRole)
{ {
case Rol_STD: case Rol_STD:
case Rol_NED_TCH:
case Rol_TCH: case Rol_TCH:
break; break;
default: default:
@ -249,6 +253,7 @@ void Enr_RegisterUsrInCurrentCrs (struct UsrData *UsrDat,Rol_Role_t NewRole,
switch (NewRole) switch (NewRole)
{ {
case Rol_STD: case Rol_STD:
case Rol_NED_TCH:
case Rol_TCH: case Rol_TCH:
break; break;
default: default:
@ -299,10 +304,10 @@ static void Enr_NotifyAfterEnrolment (struct UsrData *UsrDat,Rol_Role_t NewRole)
switch (NewRole) switch (NewRole)
{ {
case Rol_STD: case Rol_STD:
NotifyEvent = Ntf_EVENT_ENROLMENT_STUDENT; NotifyEvent = Ntf_EVENT_ENROLMENT_STD;
break; break;
case Rol_TCH: case Rol_TCH:
NotifyEvent = Ntf_EVENT_ENROLMENT_TEACHER; NotifyEvent = Ntf_EVENT_ENROLMENT_TCH;
break; break;
default: default:
NotifyEvent = Ntf_EVENT_UNKNOWN; NotifyEvent = Ntf_EVENT_UNKNOWN;
@ -313,8 +318,8 @@ static void Enr_NotifyAfterEnrolment (struct UsrData *UsrDat,Rol_Role_t NewRole)
Enr_RemoveEnrolmentRequest (Gbl.CurrentCrs.Crs.CrsCod,UsrDat->UsrCod); Enr_RemoveEnrolmentRequest (Gbl.CurrentCrs.Crs.CrsCod,UsrDat->UsrCod);
/***** Remove old enrolment notifications before inserting the new one ******/ /***** Remove old enrolment notifications before inserting the new one ******/
Ntf_MarkNotifToOneUsrAsRemoved (Ntf_EVENT_ENROLMENT_STUDENT,-1,UsrDat->UsrCod); Ntf_MarkNotifToOneUsrAsRemoved (Ntf_EVENT_ENROLMENT_STD,-1,UsrDat->UsrCod);
Ntf_MarkNotifToOneUsrAsRemoved (Ntf_EVENT_ENROLMENT_TEACHER,-1,UsrDat->UsrCod); Ntf_MarkNotifToOneUsrAsRemoved (Ntf_EVENT_ENROLMENT_TCH,-1,UsrDat->UsrCod);
/***** Create new notification ******/ /***** Create new notification ******/
CreateNotif = (UsrDat->Prefs.NotifNtfEvents & (1 << NotifyEvent)); CreateNotif = (UsrDat->Prefs.NotifNtfEvents & (1 << NotifyEvent));
@ -393,8 +398,8 @@ void Enr_ReqAcceptRegisterInCrs (void)
Lay_EndRoundFrame (); Lay_EndRoundFrame ();
/***** Mark possible notification as seen *****/ /***** Mark possible notification as seen *****/
Ntf_MarkNotifAsSeen (Gbl.Usrs.Me.UsrDat.RoleInCurrentCrsDB == Rol_STD ? Ntf_EVENT_ENROLMENT_STUDENT : Ntf_MarkNotifAsSeen (Gbl.Usrs.Me.UsrDat.RoleInCurrentCrsDB == Rol_STD ? Ntf_EVENT_ENROLMENT_STD :
Ntf_EVENT_ENROLMENT_TEACHER, Ntf_EVENT_ENROLMENT_TCH,
-1L,Gbl.CurrentCrs.Crs.CrsCod, -1L,Gbl.CurrentCrs.Crs.CrsCod,
Gbl.Usrs.Me.UsrDat.UsrCod); Gbl.Usrs.Me.UsrDat.UsrCod);
} }
@ -3521,9 +3526,9 @@ void Enr_AcceptRegisterMeInCrs (void)
/***** Mark all notifications about enrolment (as student or as teacher) /***** Mark all notifications about enrolment (as student or as teacher)
in current course as removed *****/ in current course as removed *****/
Ntf_MarkNotifToOneUsrAsRemoved (Ntf_EVENT_ENROLMENT_STUDENT,-1L, Ntf_MarkNotifToOneUsrAsRemoved (Ntf_EVENT_ENROLMENT_STD,-1L,
Gbl.Usrs.Me.UsrDat.UsrCod); Gbl.Usrs.Me.UsrDat.UsrCod);
Ntf_MarkNotifToOneUsrAsRemoved (Ntf_EVENT_ENROLMENT_TEACHER,-1L, Ntf_MarkNotifToOneUsrAsRemoved (Ntf_EVENT_ENROLMENT_TCH,-1L,
Gbl.Usrs.Me.UsrDat.UsrCod); Gbl.Usrs.Me.UsrDat.UsrCod);
/***** Confirmation message *****/ /***** Confirmation message *****/

View File

@ -59,38 +59,39 @@ extern struct Globals Gbl;
const char *Ntf_WSNotifyEvents[Ntf_NUM_NOTIFY_EVENTS] = const char *Ntf_WSNotifyEvents[Ntf_NUM_NOTIFY_EVENTS] =
{ {
"unknown", // Ntf_EVENT_UNKNOWN "unknown", // Ntf_EVENT_UNKNOWN
/* Course tab */ /* Course tab */
"documentFile", // Ntf_EVENT_DOCUMENT_FILE "documentFile", // Ntf_EVENT_DOCUMENT_FILE
"teachersFile", // Ntf_EVENT_TEACHERS_FILE "teachersFile", // Ntf_EVENT_TEACHERS_FILE
"sharedFile", // Ntf_EVENT_SHARED_FILE "sharedFile", // Ntf_EVENT_SHARED_FILE
/* Assessment tab */ /* Assessment tab */
"assignment", // Ntf_EVENT_ASSIGNMENT "assignment", // Ntf_EVENT_ASSIGNMENT
"examAnnouncement", // Ntf_EVENT_EXAM_ANNOUNCEMENT "examAnnouncement", // Ntf_EVENT_EXAM_ANNOUNCEMENT
"marksFile", // Ntf_EVENT_MARKS_FILE "marksFile", // Ntf_EVENT_MARKS_FILE
/* Users tab */ /* Users tab */
"enrollmentStudent", // Ntf_EVENT_ENROLMENT_STUDENT // TODO: Change to "enrolmentStudent" carefully in future versions "enrollmentStudent", // Ntf_EVENT_ENROLMENT_STD // TODO: Change to "enrolmentStudent" carefully in future versions
"enrollmentTeacher", // Ntf_EVENT_ENROLMENT_TEACHER // TODO: Change to "enrolmentTeacher" carefully in future versions "enrollmentNonEditingTeacher", // Ntf_EVENT_ENROLMENT_NED_TCH // TODO: Change to "enrolmentTeacher" carefully in future versions
"enrollmentRequest", // Ntf_EVENT_ENROLMENT_REQUEST // TODO: Change to "enrolmentRequest" carefully in future versions "enrollmentTeacher", // Ntf_EVENT_ENROLMENT_TCH // TODO: Change to "enrolmentTeacher" carefully in future versions
"enrollmentRequest", // Ntf_EVENT_ENROLMENT_REQUEST // TODO: Change to "enrolmentRequest" carefully in future versions
/* Social tab */ /* Social tab */
"timelineComment", // Ntf_EVENT_TIMELINE_COMMENT "timelineComment", // Ntf_EVENT_TIMELINE_COMMENT
"timelineFav", // Ntf_EVENT_TIMELINE_FAV "timelineFav", // Ntf_EVENT_TIMELINE_FAV
"timelineShare", // Ntf_EVENT_TIMELINE_SHARE "timelineShare", // Ntf_EVENT_TIMELINE_SHARE
"timelineMention", // Ntf_EVENT_TIMELINE_MENTION "timelineMention", // Ntf_EVENT_TIMELINE_MENTION
"follower", // Ntf_EVENT_FOLLOWER "follower", // Ntf_EVENT_FOLLOWER
"forumPostCourse", // Ntf_EVENT_FORUM_POST_COURSE "forumPostCourse", // Ntf_EVENT_FORUM_POST_COURSE
"forumReply", // Ntf_EVENT_FORUM_REPLY "forumReply", // Ntf_EVENT_FORUM_REPLY
/* Messages tab */ /* Messages tab */
"notice", // Ntf_EVENT_NOTICE "notice", // Ntf_EVENT_NOTICE
"message", // Ntf_EVENT_MESSAGE "message", // Ntf_EVENT_MESSAGE
/* Statistics tab */ /* Statistics tab */
"survey", // Ntf_EVENT_SURVEY "survey", // Ntf_EVENT_SURVEY
/* Profile tab */ /* Profile tab */
}; };
@ -110,8 +111,9 @@ static const Act_Action_t Ntf_DefaultActions[Ntf_NUM_NOTIFY_EVENTS] =
ActSeeAdmMrk, // Ntf_EVENT_MARKS_FILE ActSeeAdmMrk, // Ntf_EVENT_MARKS_FILE
/* Users tab */ /* Users tab */
ActReqAccEnrStd, // Ntf_EVENT_ENROLMENT_STUDENT ActReqAccEnrStd, // Ntf_EVENT_ENROLMENT_STD
ActReqAccEnrTch, // Ntf_EVENT_ENROLMENT_TEACHER ActReqAccEnrNEdTch, // Ntf_EVENT_ENROLMENT_NED_TCH
ActReqAccEnrTch, // Ntf_EVENT_ENROLMENT_TCH
ActSeeSignUpReq, // Ntf_EVENT_ENROLMENT_REQUEST ActSeeSignUpReq, // Ntf_EVENT_ENROLMENT_REQUEST
/* Social tab */ /* Social tab */
@ -140,38 +142,39 @@ static const Act_Action_t Ntf_DefaultActions[Ntf_NUM_NOTIFY_EVENTS] =
// Notify me notification events // Notify me notification events
static const char *Ntf_ParamNotifMeAboutNotifyEvents[Ntf_NUM_NOTIFY_EVENTS] = static const char *Ntf_ParamNotifMeAboutNotifyEvents[Ntf_NUM_NOTIFY_EVENTS] =
{ {
"NotifyNtfEventUnknown", // Ntf_EVENT_UNKNOWN "NotifyNtfEventUnknown", // Ntf_EVENT_UNKNOWN
/* Course tab */ /* Course tab */
"NotifyNtfEventDocumentFile", // Ntf_EVENT_DOCUMENT_FILE "NotifyNtfEventDocumentFile", // Ntf_EVENT_DOCUMENT_FILE
"NotifyNtfEventTeachersFile", // Ntf_EVENT_TEACHERS_FILE "NotifyNtfEventTeachersFile", // Ntf_EVENT_TEACHERS_FILE
"NotifyNtfEventSharedFile", // Ntf_EVENT_SHARED_FILE "NotifyNtfEventSharedFile", // Ntf_EVENT_SHARED_FILE
/* Assessment tab */ /* Assessment tab */
"NotifyNtfEventAssignment", // Ntf_EVENT_ASSIGNMENT "NotifyNtfEventAssignment", // Ntf_EVENT_ASSIGNMENT
"NotifyNtfEventExamAnnouncement", // Ntf_EVENT_EXAM_ANNOUNCEMENT "NotifyNtfEventExamAnnouncement", // Ntf_EVENT_EXAM_ANNOUNCEMENT
"NotifyNtfEventMarksFile", // Ntf_EVENT_MARKS_FILE "NotifyNtfEventMarksFile", // Ntf_EVENT_MARKS_FILE
/* Users tab */ /* Users tab */
"NotifyNtfEventEnrolmentStudent", // Ntf_EVENT_ENROLMENT_STUDENT "NotifyNtfEventEnrolmentStudent", // Ntf_EVENT_ENROLMENT_STD
"NotifyNtfEventEnrolmentTeacher", // Ntf_EVENT_ENROLMENT_TEACHER "NotifyNtfEventEnrolmentNonEditingTeacher", // Ntf_EVENT_ENROLMENT_NED_TCH
"NotifyNtfEventEnrolmentRequest", // Ntf_EVENT_ENROLMENT_REQUEST "NotifyNtfEventEnrolmentTeacher", // Ntf_EVENT_ENROLMENT_TCH
"NotifyNtfEventEnrolmentRequest", // Ntf_EVENT_ENROLMENT_REQUEST
/* Social tab */ /* Social tab */
"NotifyNtfEventTimelineComment", // Ntf_EVENT_TIMELINE_COMMENT "NotifyNtfEventTimelineComment", // Ntf_EVENT_TIMELINE_COMMENT
"NotifyNtfEventTimelineFav", // Ntf_EVENT_TIMELINE_FAV "NotifyNtfEventTimelineFav", // Ntf_EVENT_TIMELINE_FAV
"NotifyNtfEventTimelineShare", // Ntf_EVENT_TIMELINE_SHARE "NotifyNtfEventTimelineShare", // Ntf_EVENT_TIMELINE_SHARE
"NotifyNtfEventTimelineMention", // Ntf_EVENT_TIMELINE_MENTION "NotifyNtfEventTimelineMention", // Ntf_EVENT_TIMELINE_MENTION
"NotifyNtfEventFollower", // Ntf_EVENT_FOLLOWER "NotifyNtfEventFollower", // Ntf_EVENT_FOLLOWER
"NotifyNtfEventForumPostCourse", // Ntf_EVENT_FORUM_POST_COURSE "NotifyNtfEventForumPostCourse", // Ntf_EVENT_FORUM_POST_COURSE
"NotifyNtfEventForumReply", // Ntf_EVENT_FORUM_REPLY "NotifyNtfEventForumReply", // Ntf_EVENT_FORUM_REPLY
/* Messages tab */ /* Messages tab */
"NotifyNtfEventNotice", // Ntf_EVENT_NOTICE "NotifyNtfEventNotice", // Ntf_EVENT_NOTICE
"NotifyNtfEventMessage", // Ntf_EVENT_MESSAGE "NotifyNtfEventMessage", // Ntf_EVENT_MESSAGE
/* Statistics tab */ /* Statistics tab */
"NotifyNtfEventSurvey", // Ntf_EVENT_SURVEY "NotifyNtfEventSurvey", // Ntf_EVENT_SURVEY
/* Profile tab */ /* Profile tab */
}; };
@ -179,38 +182,39 @@ static const char *Ntf_ParamNotifMeAboutNotifyEvents[Ntf_NUM_NOTIFY_EVENTS] =
// Email me about notification events // Email me about notification events
static const char *Ntf_ParamEmailMeAboutNotifyEvents[Ntf_NUM_NOTIFY_EVENTS] = static const char *Ntf_ParamEmailMeAboutNotifyEvents[Ntf_NUM_NOTIFY_EVENTS] =
{ {
"EmailNtfEventUnknown", // Ntf_EVENT_UNKNOWN "EmailNtfEventUnknown", // Ntf_EVENT_UNKNOWN
/* Course tab */ /* Course tab */
"EmailNtfEventDocumentFile", // Ntf_EVENT_DOCUMENT_FILE "EmailNtfEventDocumentFile", // Ntf_EVENT_DOCUMENT_FILE
"EmailNtfEventTeachersFile", // Ntf_EVENT_TEACHERS_FILE "EmailNtfEventTeachersFile", // Ntf_EVENT_TEACHERS_FILE
"EmailNtfEventSharedFile", // Ntf_EVENT_SHARED_FILE "EmailNtfEventSharedFile", // Ntf_EVENT_SHARED_FILE
/* Assessment tab */ /* Assessment tab */
"EmailNtfEventAssignment", // Ntf_EVENT_ASSIGNMENT "EmailNtfEventAssignment", // Ntf_EVENT_ASSIGNMENT
"EmailNtfEventExamAnnouncement", // Ntf_EVENT_EXAM_ANNOUNCEMENT "EmailNtfEventExamAnnouncement", // Ntf_EVENT_EXAM_ANNOUNCEMENT
"EmailNtfEventMarksFile", // Ntf_EVENT_MARKS_FILE "EmailNtfEventMarksFile", // Ntf_EVENT_MARKS_FILE
/* Users tab */ /* Users tab */
"EmailNtfEventEnrolmentStudent", // Ntf_EVENT_ENROLMENT_STUDENT "EmailNtfEventEnrolmentStudent", // Ntf_EVENT_ENROLMENT_STD
"EmailNtfEventEnrolmentTeacher", // Ntf_EVENT_ENROLMENT_TEACHER "EmailNtfEventEnrolmentNonEditingTeacher", // Ntf_EVENT_ENROLMENT_NED_TCH
"EmailNtfEventEnrolmentRequest", // Ntf_EVENT_ENROLMENT_REQUEST "EmailNtfEventEnrolmentTeacher", // Ntf_EVENT_ENROLMENT_TCH
"EmailNtfEventEnrolmentRequest", // Ntf_EVENT_ENROLMENT_REQUEST
/* Social tab */ /* Social tab */
"EmailNtfEventTimelineComment", // Ntf_EVENT_TIMELINE_COMMENT "EmailNtfEventTimelineComment", // Ntf_EVENT_TIMELINE_COMMENT
"EmailNtfEventTimelineFav", // Ntf_EVENT_TIMELINE_FAV "EmailNtfEventTimelineFav", // Ntf_EVENT_TIMELINE_FAV
"EmailNtfEventTimelineShare", // Ntf_EVENT_TIMELINE_SHARE "EmailNtfEventTimelineShare", // Ntf_EVENT_TIMELINE_SHARE
"EmailNtfEventTimelineMention", // Ntf_EVENT_TIMELINE_MENTION "EmailNtfEventTimelineMention", // Ntf_EVENT_TIMELINE_MENTION
"EmailNtfEventSocialFollower", // Ntf_EVENT_FOLLOWER "EmailNtfEventSocialFollower", // Ntf_EVENT_FOLLOWER
"EmailNtfEventForumPostCourse", // Ntf_EVENT_FORUM_POST_COURSE "EmailNtfEventForumPostCourse", // Ntf_EVENT_FORUM_POST_COURSE
"EmailNtfEventForumReply", // Ntf_EVENT_FORUM_REPLY "EmailNtfEventForumReply", // Ntf_EVENT_FORUM_REPLY
/* Messages tab */ /* Messages tab */
"EmailNtfEventNotice", // Ntf_EVENT_NOTICE "EmailNtfEventNotice", // Ntf_EVENT_NOTICE
"EmailNtfEventMessage", // Ntf_EVENT_MESSAGE "EmailNtfEventMessage", // Ntf_EVENT_MESSAGE
/* Statistics tab */ /* Statistics tab */
"EmailNtfEventSurvey", // Ntf_EVENT_SURVEY "EmailNtfEventSurvey", // Ntf_EVENT_SURVEY
/* Profile tab */ /* Profile tab */
}; };
@ -231,8 +235,9 @@ static const char *Ntf_Icons[Ntf_NUM_NOTIFY_EVENTS] =
"grades16x16.gif", // Ntf_EVENT_MARKS_FILE "grades16x16.gif", // Ntf_EVENT_MARKS_FILE
/* Users tab */ /* Users tab */
"adduser16x16.gif", // Ntf_EVENT_ENROLMENT_STUDENT "adduser16x16.gif", // Ntf_EVENT_ENROLMENT_STD
"adduser16x16.gif", // Ntf_EVENT_ENROLMENT_TEACHER "adduser16x16.gif", // Ntf_EVENT_ENROLMENT_NED_TCH
"adduser16x16.gif", // Ntf_EVENT_ENROLMENT_TCH
"enrollmentrequest16x16.gif", // Ntf_EVENT_ENROLMENT_REQUEST "enrollmentrequest16x16.gif", // Ntf_EVENT_ENROLMENT_REQUEST
/* Social tab */ /* Social tab */
@ -887,8 +892,9 @@ void Ntf_GetNotifSummaryAndContent (char SummaryStr[Ntf_MAX_BYTES_SUMMARY + 1],
case Ntf_EVENT_MARKS_FILE: case Ntf_EVENT_MARKS_FILE:
Mrk_GetNotifMyMarks (SummaryStr,ContentStr,Cod,UsrCod,GetContent); Mrk_GetNotifMyMarks (SummaryStr,ContentStr,Cod,UsrCod,GetContent);
break; break;
case Ntf_EVENT_ENROLMENT_STUDENT: case Ntf_EVENT_ENROLMENT_STD:
case Ntf_EVENT_ENROLMENT_TEACHER: case Ntf_EVENT_ENROLMENT_NED_TCH:
case Ntf_EVENT_ENROLMENT_TCH:
Enr_GetNotifEnrolment (SummaryStr,CrsCod,UsrCod); Enr_GetNotifEnrolment (SummaryStr,CrsCod,UsrCod);
break; break;
case Ntf_EVENT_ENROLMENT_REQUEST: case Ntf_EVENT_ENROLMENT_REQUEST:
@ -1263,8 +1269,9 @@ unsigned Ntf_StoreNotifyEventsToAllUsrs (Ntf_NotifyEvent_t NotifyEvent,long Cod)
Gbl.CurrentCrs.Crs.CrsCod, Gbl.CurrentCrs.Crs.CrsCod,
Gbl.Usrs.Me.UsrDat.UsrCod); Gbl.Usrs.Me.UsrDat.UsrCod);
break; break;
case Ntf_EVENT_ENROLMENT_STUDENT: // This function should not be called in this case case Ntf_EVENT_ENROLMENT_STD: // This function should not be called in this case
case Ntf_EVENT_ENROLMENT_TEACHER: // This function should not be called in this case case Ntf_EVENT_ENROLMENT_NED_TCH: // This function should not be called in this case
case Ntf_EVENT_ENROLMENT_TCH: // This function should not be called in this case
return 0; return 0;
case Ntf_EVENT_ENROLMENT_REQUEST: case Ntf_EVENT_ENROLMENT_REQUEST:
if (Gbl.CurrentCrs.Crs.NumUsrs[Rol_TCH]) if (Gbl.CurrentCrs.Crs.NumUsrs[Rol_TCH])
@ -1681,8 +1688,9 @@ static void Ntf_SendPendingNotifByEMailToOneUsr (struct UsrData *ToUsrDat,unsign
case Ntf_EVENT_ASSIGNMENT: case Ntf_EVENT_ASSIGNMENT:
case Ntf_EVENT_EXAM_ANNOUNCEMENT: case Ntf_EVENT_EXAM_ANNOUNCEMENT:
case Ntf_EVENT_MARKS_FILE: case Ntf_EVENT_MARKS_FILE:
case Ntf_EVENT_ENROLMENT_STUDENT: case Ntf_EVENT_ENROLMENT_STD:
case Ntf_EVENT_ENROLMENT_TEACHER: case Ntf_EVENT_ENROLMENT_NED_TCH:
case Ntf_EVENT_ENROLMENT_TCH:
case Ntf_EVENT_ENROLMENT_REQUEST: case Ntf_EVENT_ENROLMENT_REQUEST:
case Ntf_EVENT_NOTICE: case Ntf_EVENT_NOTICE:
case Ntf_EVENT_MESSAGE: case Ntf_EVENT_MESSAGE:

View File

@ -45,11 +45,11 @@
/******************************** Public types *******************************/ /******************************** Public types *******************************/
/*****************************************************************************/ /*****************************************************************************/
#define Ntf_NUM_NOTIFY_EVENTS (1 + 19) #define Ntf_NUM_NOTIFY_EVENTS (1 + 20)
// If the numbers assigned to each event type change, // If the numbers assigned to each event type change,
// it is necessary to change old numbers to new ones // it is necessary to change old numbers to new ones
// in database tables notif, sta_notif and usr_data // in database tables notif, sta_notif and usr_data
typedef enum typedef enum // TODO: Change numbers (also in database)!!!!!!!!!!!!!!
{ {
Ntf_EVENT_UNKNOWN = 0, Ntf_EVENT_UNKNOWN = 0,
@ -57,18 +57,19 @@ typedef enum
/* Assessment tab */ /* Assessment tab */
Ntf_EVENT_ASSIGNMENT = 4, Ntf_EVENT_ASSIGNMENT = 4,
Ntf_EVENT_SURVEY = 19, // TODO: Change numbers (also in database)!!!!!!!!!!!!!! Ntf_EVENT_SURVEY = 19,
Ntf_EVENT_EXAM_ANNOUNCEMENT = 5, Ntf_EVENT_EXAM_ANNOUNCEMENT = 5,
/* Files tab */ /* Files tab */
Ntf_EVENT_DOCUMENT_FILE = 1, // TODO: Change numbers (also in database)!!!!!!!!!!!!!! Ntf_EVENT_DOCUMENT_FILE = 1,
Ntf_EVENT_TEACHERS_FILE = 2, // TODO: Change numbers (also in database)!!!!!!!!!!!!!! Ntf_EVENT_TEACHERS_FILE = 2,
Ntf_EVENT_SHARED_FILE = 3, // TODO: Change numbers (also in database)!!!!!!!!!!!!!! Ntf_EVENT_SHARED_FILE = 3,
Ntf_EVENT_MARKS_FILE = 6, // TODO: Change numbers (also in database)!!!!!!!!!!!!!! Ntf_EVENT_MARKS_FILE = 6,
/* Users tab */ /* Users tab */
Ntf_EVENT_ENROLMENT_STUDENT = 7, Ntf_EVENT_ENROLMENT_STD = 7,
Ntf_EVENT_ENROLMENT_TEACHER = 8, Ntf_EVENT_ENROLMENT_NED_TCH = 20,
Ntf_EVENT_ENROLMENT_TCH = 8,
Ntf_EVENT_ENROLMENT_REQUEST = 9, Ntf_EVENT_ENROLMENT_REQUEST = 9,
/* Social tab */ /* Social tab */

View File

@ -303,8 +303,9 @@ void Soc_ShowTimelineGbl2 (void)
Soc_TOP_MESSAGE_NONE, // Ntf_EVENT_MARKS_FILE Soc_TOP_MESSAGE_NONE, // Ntf_EVENT_MARKS_FILE
/* Users tab */ /* Users tab */
Soc_TOP_MESSAGE_NONE, // Ntf_EVENT_ENROLMENT_STUDENT Soc_TOP_MESSAGE_NONE, // Ntf_EVENT_ENROLMENT_STD
Soc_TOP_MESSAGE_NONE, // Ntf_EVENT_ENROLMENT_TEACHER Soc_TOP_MESSAGE_NONE, // Ntf_EVENT_ENROLMENT_NED_TCH
Soc_TOP_MESSAGE_NONE, // Ntf_EVENT_ENROLMENT_TCH
Soc_TOP_MESSAGE_NONE, // Ntf_EVENT_ENROLMENT_REQUEST Soc_TOP_MESSAGE_NONE, // Ntf_EVENT_ENROLMENT_REQUEST
/* Social tab */ /* Social tab */

View File

@ -645,7 +645,7 @@ const char *Txt_NOTIFY_EVENTS_SINGULAR_NO_HTML[Ntf_NUM_NOTIFY_EVENTS][1 + Txt_NU
"Novo arquivo de notas", "Novo arquivo de notas",
}, },
{ {
// Ntf_EVENT_ENROLMENT_STUDENT // Ntf_EVENT_ENROLMENT_STD
"", "",
"Nova inscripció com a estudiant", "Nova inscripció com a estudiant",
"New Einschreibung als Student", "New Einschreibung als Student",
@ -658,17 +658,30 @@ const char *Txt_NOTIFY_EVENTS_SINGULAR_NO_HTML[Ntf_NUM_NOTIFY_EVENTS][1 + Txt_NU
"Nova inscrição como estudante", "Nova inscrição como estudante",
}, },
{ {
// Ntf_EVENT_ENROLMENT_TEACHER // Ntf_EVENT_ENROLMENT_NED_TCH
"", "",
"Nova inscripció com a professor", "Nova inscripció com a professor/a no editor/a",
"New Einschreibung als nicht bearbeiteter Lehrkraft",
"New enrolment as a non-editing teacher",
"Nueva inscripción como profesor/a no editor/a",
"Nouvelle inscription en tant qu'enseignant/e non-éditeur/trice",
"Nueva inscripción como profesor/a no editor/a", // Okoteve traducción
"Nuova iscrizione come professore/ssa non-editing",
"Nowe zapisy jako nauczyciel nie edytujacy",
"Nova inscrição como professor/a não editor/a",
},
{
// Ntf_EVENT_ENROLMENT_TCH
"",
"Nova inscripció com a professor/a",
"New Einschreibung als Lehrkraft", "New Einschreibung als Lehrkraft",
"New enrolment as a teacher", "New enrolment as a teacher",
"Nueva inscripción como profesor", "Nueva inscripción como profesor/a",
"Nouvelle inscription en tant qu'enseignant", "Nouvelle inscription en tant qu'enseignant",
"Nueva inscripción como profesor", // Okoteve traducción "Nueva inscripción como profesor/a", // Okoteve traducción
"Nuova iscrizione come professore", "Nuova iscrizione come professore/ssa",
"Nowe zapisy jako nauczyciel", "Nowe zapisy jako nauczyciel",
"Nova inscrição como professor", "Nova inscrição como professor/a",
}, },
{ {
// Ntf_EVENT_ENROLMENT_REQUEST // Ntf_EVENT_ENROLMENT_REQUEST
@ -26411,7 +26424,7 @@ const char *Txt_NOTIFY_EVENTS_PLURAL[Ntf_NUM_NOTIFY_EVENTS] =
"Novos arquivos de notas" "Novos arquivos de notas"
#endif #endif
, ,
#if L==1 // Ntf_EVENT_ENROLMENT_STUDENT #if L==1 // Ntf_EVENT_ENROLMENT_STD
"Novas inscripci&oacute;s com a estudiant" "Novas inscripci&oacute;s com a estudiant"
#elif L==2 #elif L==2
"New Einschreibungen als Student" "New Einschreibungen als Student"
@ -26431,7 +26444,27 @@ const char *Txt_NOTIFY_EVENTS_PLURAL[Ntf_NUM_NOTIFY_EVENTS] =
"Novas inscri&ccedil;&otilde;es como estudante" "Novas inscri&ccedil;&otilde;es como estudante"
#endif #endif
, ,
#if L==1 // Ntf_EVENT_ENROLMENT_TEACHER #if L==1 // Ntf_EVENT_ENROLMENT_NED_TCH
"Novas inscripci&oacute;s com a professor/a no editor/a"
#elif L==2
"New Einschreibungen als nicht bearbeiteter Lehrkraft"
#elif L==3
"New enrolments as a non-editing teacher"
#elif L==4
"Nuevas inscripciones como profesor/a/a no editor/a"
#elif L==5
"Nouvelles inscriptions en tant qu'enseignant/e non-&eacute;diteur/trice"
#elif L==6
"Nuevas inscripciones como profesor/a no editor/a" // Okoteve traducción
#elif L==7
"Nuova iscrizione come professore/ssa non-editing"
#elif L==8
"Nowe zapisy jako nauczyciel nie edytuj&aogon;cy"
#elif L==9
"Novas inscri&ccedil;&otilde;es como professor/a n&atilde;o editor/a"
#endif
,
#if L==1 // Ntf_EVENT_ENROLMENT_TCH
"Novas inscripci&oacute;s com a professor" "Novas inscripci&oacute;s com a professor"
#elif L==2 #elif L==2
"New Einschreibungen als Lehrkraft" "New Einschreibungen als Lehrkraft"
@ -26814,7 +26847,7 @@ const char *Txt_NOTIFY_EVENTS_SINGULAR[Ntf_NUM_NOTIFY_EVENTS] =
"Arquivo de notas" "Arquivo de notas"
#endif #endif
, ,
#if L==1 // Ntf_EVENT_ENROLMENT_STUDENT #if L==1 // Ntf_EVENT_ENROLMENT_STD
"Inscripci&oacute; com a estudiant" "Inscripci&oacute; com a estudiant"
#elif L==2 #elif L==2
"Einschreibung als Student" "Einschreibung als Student"
@ -26834,7 +26867,27 @@ const char *Txt_NOTIFY_EVENTS_SINGULAR[Ntf_NUM_NOTIFY_EVENTS] =
"Inscri&ccedil;&atilde;o como estudante" "Inscri&ccedil;&atilde;o como estudante"
#endif #endif
, ,
#if L==1 // Ntf_EVENT_ENROLMENT_TEACHER #if L==1 // Ntf_EVENT_ENROLMENT_NED_TCH
"Novas inscripci&oacute;s com a professor/a no editor/a"
#elif L==2
"New Einschreibungen als nicht bearbeiteter Lehrkraft"
#elif L==3
"New enrolments as a non-editing teacher"
#elif L==4
"Nuevas inscripciones como profesor/a/a no editor/a"
#elif L==5
"Nouvelles inscriptions en tant qu'enseignant/e non-&eacute;diteur/trice"
#elif L==6
"Nuevas inscripciones como profesor/a no editor/a" // Okoteve traducción
#elif L==7
"Nuova iscrizione come professore/ssa non-editing"
#elif L==8
"Nowe zapisy jako nauczyciel nie edytuj&aogon;cy"
#elif L==9
"Novas inscri&ccedil;&otilde;es como professor/a n&atilde;o editor/a"
#endif
,
#if L==1 // Ntf_EVENT_ENROLMENT_TCH
"Inscripci&oacute; com a professor" "Inscripci&oacute; com a professor"
#elif L==2 #elif L==2
"Einschreibung als Lehrkraft" "Einschreibung als Lehrkraft"