Version 16.165

This commit is contained in:
Antonio Cañas Vargas 2017-03-24 20:07:29 +01:00
parent 4799acbb5d
commit 055ed8ee01
7 changed files with 168 additions and 205 deletions

View File

@ -100,7 +100,6 @@ System:
12. ActSeePen List pending institutions, centres, degrees and courses
13. ActReqRemOldCrs Request the total removal of old courses
14. ActSeeDegTyp List types of degrees
15. ActSeeMai See mail domains
16. ActSeeBan See banners
17. ActSeeLnk See institutional links
18. ActLstPlg List plugins
@ -120,11 +119,6 @@ System:
30. ActRenDegTyp Request renaming of a type of degree
31. ActRemOldCrs Remove completely old courses
32. ActEdiMai Edit mail domains
33. ActNewMai Request the creation of a mail domain
34. ActRemMai Request the removal of a mail domain
35. ActRenMaiSho Request the change of a mail domain
36. ActRenMaiFul Request the change of the info of a mail domain
37. ActEdiBan Edit banners
38. ActNewBan Request the creation of a banner
@ -1312,8 +1306,16 @@ Messages:
1112. ActRevNot Reveal a notice that was hidden
1113. ActReqRemNot Request removal of a notice
1114. ActRemNot Remove a notice
1115. ActSeeNewNtf Show my recent notifications (link in top heading)
1116. ActMrkNtfSee Mark all my notifications as seen
15. ActSeeMai See mail domains
32. ActEdiMai Edit mail domains
33. ActNewMai Request the creation of a mail domain
34. ActRemMai Request the removal of a mail domain
35. ActRenMaiSho Request the change of a mail domain
36. ActRenMaiFul Request the change of the info of a mail domain
1117. ActRcvMsgUsr Sent/Receive a message of a user
1118. ActReqDelAllSntMsg Request the removal of todos the messages sent to other users
1119. ActReqDelAllRcvMsg Request the removal of todos the messages received from other users
@ -1518,12 +1520,11 @@ struct Act_Actions Act_Actions[Act_NUM_ACTIONS] =
/* ActSeePen */{1060, 2,TabSys,ActSeePen , 0, 0, 0, 0, 0, 0,0x1E0,Act_CONT_NORM,Act_THIS_WINDOW,NULL ,Deg_SeePending ,"hierarchy64x64.png" },
/* ActReqRemOldCrs */{1109, 3,TabSys,ActReqRemOldCrs , 0, 0, 0, 0, 0, 0,0x100,Act_CONT_NORM,Act_THIS_WINDOW,NULL ,Crs_AskRemoveOldCrss ,"removeusers64x64.gif" },
/* ActSeeDegTyp */{1013, 4,TabSys,ActSeeDegTyp , 0, 0, 0, 0, 0, 0,0x100,Act_CONT_NORM,Act_THIS_WINDOW,NULL ,DT_SeeDegreeTypesInSysTab ,"grouptypes64x64.gif" },
/* ActSeeMai */{ 855, 5,TabSys,ActSeeMai , 0, 0, 0, 0, 0, 0,0x1FF,Act_CONT_NORM,Act_THIS_WINDOW,NULL ,Mai_SeeMailDomains ,"email64x64.gif" },
/* ActSeeBan */{1137, 6,TabSys,ActSeeBan , 0, 0, 0, 0, 0, 0,0x100,Act_CONT_NORM,Act_THIS_WINDOW,NULL ,Ban_SeeBanners ,"picture64x64.gif" },
/* ActSeeLnk */{ 748, 7,TabSys,ActSeeLnk , 0, 0, 0, 0, 0, 0,0x1FF,Act_CONT_NORM,Act_THIS_WINDOW,NULL ,Lnk_SeeLinks ,"link64x64.gif" },
/* ActLstPlg */{ 777, 8,TabSys,ActLstPlg , 0, 0, 0, 0, 0, 0,0x100,Act_CONT_NORM,Act_THIS_WINDOW,NULL ,Plg_ListPlugins ,"blocks64x64.gif" },
/* ActSetUp */{ 840, 9,TabSys,ActSetUp , 0, 0, 0, 0, 0, 0,0x100,Act_CONT_NORM,Act_THIS_WINDOW,NULL ,Set_Setup ,"lightning64x64.gif" },
/* ActSeeCalSys */{1622,10,TabSys,ActSeeCalSys , 0, 0, 0, 0, 0, 0,0x1FF,Act_CONT_NORM,Act_THIS_WINDOW,NULL ,Cal_DrawCalendarSys ,"date64x64.gif" },
/* ActSeeBan */{1137, 5,TabSys,ActSeeBan , 0, 0, 0, 0, 0, 0,0x100,Act_CONT_NORM,Act_THIS_WINDOW,NULL ,Ban_SeeBanners ,"picture64x64.gif" },
/* ActSeeLnk */{ 748, 6,TabSys,ActSeeLnk , 0, 0, 0, 0, 0, 0,0x1FF,Act_CONT_NORM,Act_THIS_WINDOW,NULL ,Lnk_SeeLinks ,"link64x64.gif" },
/* ActLstPlg */{ 777, 7,TabSys,ActLstPlg , 0, 0, 0, 0, 0, 0,0x100,Act_CONT_NORM,Act_THIS_WINDOW,NULL ,Plg_ListPlugins ,"blocks64x64.gif" },
/* ActSetUp */{ 840, 8,TabSys,ActSetUp , 0, 0, 0, 0, 0, 0,0x100,Act_CONT_NORM,Act_THIS_WINDOW,NULL ,Set_Setup ,"lightning64x64.gif" },
/* ActSeeCalSys */{1622, 9,TabSys,ActSeeCalSys , 0, 0, 0, 0, 0, 0,0x1FF,Act_CONT_NORM,Act_THIS_WINDOW,NULL ,Cal_DrawCalendarSys ,"date64x64.gif" },
// Actions not in menu:
/* ActSysSch */{ 628,-1,TabUnk,ActSysReqSch , 0, 0, 0, 0, 0, 0,0x1FF,Act_CONT_NORM,Act_THIS_WINDOW,Sch_GetParamsSearch ,Sch_SysSearch ,NULL},
@ -1541,12 +1542,6 @@ struct Act_Actions Act_Actions[Act_NUM_ACTIONS] =
/* ActRemOldCrs */{1110,-1,TabUnk,ActReqRemOldCrs , 0, 0, 0, 0, 0, 0,0x100,Act_CONT_NORM,Act_THIS_WINDOW,NULL ,Crs_RemoveOldCrss ,NULL},
/* ActEdiMai */{ 856,-1,TabUnk,ActSeeMai , 0, 0, 0, 0, 0, 0,0x100,Act_CONT_NORM,Act_THIS_WINDOW,NULL ,Mai_EditMailDomains ,NULL},
/* ActNewMai */{ 857,-1,TabUnk,ActSeeMai , 0, 0, 0, 0, 0, 0,0x100,Act_CONT_NORM,Act_THIS_WINDOW,NULL ,Mai_RecFormNewMailDomain ,NULL},
/* ActRemMai */{ 860,-1,TabUnk,ActSeeMai , 0, 0, 0, 0, 0, 0,0x100,Act_CONT_NORM,Act_THIS_WINDOW,NULL ,Mai_RemoveMailDomain ,NULL},
/* ActRenMaiSho */{ 858,-1,TabUnk,ActSeeMai , 0, 0, 0, 0, 0, 0,0x100,Act_CONT_NORM,Act_THIS_WINDOW,NULL ,Mai_RenameMailDomainShort ,NULL},
/* ActRenMaiFul */{ 859,-1,TabUnk,ActSeeMai , 0, 0, 0, 0, 0, 0,0x100,Act_CONT_NORM,Act_THIS_WINDOW,NULL ,Mai_RenameMailDomainFull ,NULL},
/* ActEdiBan */{1138,-1,TabUnk,ActSeeBan , 0, 0, 0, 0, 0, 0,0x100,Act_CONT_NORM,Act_THIS_WINDOW,NULL ,Ban_EditBanners ,NULL},
/* ActNewBan */{1139,-1,TabUnk,ActSeeBan , 0, 0, 0, 0, 0, 0,0x100,Act_CONT_NORM,Act_THIS_WINDOW,NULL ,Ban_RecFormNewBanner ,NULL},
/* ActRemBan */{1140,-1,TabUnk,ActSeeBan , 0, 0, 0, 0, 0, 0,0x100,Act_CONT_NORM,Act_THIS_WINDOW,NULL ,Ban_RemoveBanner ,NULL},
@ -2805,6 +2800,13 @@ struct Act_Actions Act_Actions[Act_NUM_ACTIONS] =
/* ActSeeNewNtf */{ 991,-1,TabUnk,ActSeeNtf ,0x1FE,0x1FE,0x1FE,0x1FE,0x1FE,0x1FE,0x1FE,Act_CONT_NORM,Act_THIS_WINDOW,NULL ,Ntf_ShowMyNotifications ,NULL},
/* ActMrkNtfSee */{1146,-1,TabUnk,ActSeeNtf ,0x1FE,0x1FE,0x1FE,0x1FE,0x1FE,0x1FE,0x1FE,Act_CONT_NORM,Act_THIS_WINDOW,NULL ,Ntf_MarkAllNotifAsSeen ,NULL},
/* ActSeeMai */{ 855,-1,TabUnk,ActSeeNtf ,0x1FE,0x1FE,0x1FE,0x1FE,0x1FE,0x1FE,0x1FE,Act_CONT_NORM,Act_THIS_WINDOW,NULL ,Mai_SeeMailDomains ,NULL},
/* ActEdiMai */{ 856,-1,TabUnk,ActSeeNtf ,0x100,0x100,0x100,0x100,0x100,0x100,0x100,Act_CONT_NORM,Act_THIS_WINDOW,NULL ,Mai_EditMailDomains ,NULL},
/* ActNewMai */{ 857,-1,TabUnk,ActSeeNtf ,0x100,0x100,0x100,0x100,0x100,0x100,0x100,Act_CONT_NORM,Act_THIS_WINDOW,NULL ,Mai_RecFormNewMailDomain ,NULL},
/* ActRemMai */{ 860,-1,TabUnk,ActSeeNtf ,0x100,0x100,0x100,0x100,0x100,0x100,0x100,Act_CONT_NORM,Act_THIS_WINDOW,NULL ,Mai_RemoveMailDomain ,NULL},
/* ActRenMaiSho */{ 858,-1,TabUnk,ActSeeNtf ,0x100,0x100,0x100,0x100,0x100,0x100,0x100,Act_CONT_NORM,Act_THIS_WINDOW,NULL ,Mai_RenameMailDomainShort ,NULL},
/* ActRenMaiFul */{ 859,-1,TabUnk,ActSeeNtf ,0x100,0x100,0x100,0x100,0x100,0x100,0x100,Act_CONT_NORM,Act_THIS_WINDOW,NULL ,Mai_RenameMailDomainFull ,NULL},
/* ActRcvMsgUsr */{ 27,-1,TabUnk,ActReqMsgUsr ,0x1FE,0x1FE,0x1FE,0x1FE,0x1FE,0x1FE,0x1FE,Act_CONT_DATA,Act_THIS_WINDOW,NULL ,Msg_RecMsgFromUsr ,NULL},
/* ActReqDelAllSntMsg*/{ 604,-1,TabUnk,ActSeeSntMsg ,0x1FE,0x1FE,0x1FE,0x1FE,0x1FE,0x1FE,0x1FE,Act_CONT_NORM,Act_THIS_WINDOW,NULL ,Msg_ReqDelAllSntMsgs ,NULL},
/* ActReqDelAllRcvMsg*/{ 593,-1,TabUnk,ActSeeRcvMsg ,0x1FE,0x1FE,0x1FE,0x1FE,0x1FE,0x1FE,0x1FE,Act_CONT_NORM,Act_THIS_WINDOW,NULL ,Msg_ReqDelAllRecMsgs ,NULL},

View File

@ -57,7 +57,7 @@ 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 + 54 + 17 + 47 + 27 + 24 + 115 + 54 + 416 + 159 + 172 + 36 + 31 + 96)
#define Act_NUM_ACTIONS (1 + 9 + 48 + 17 + 47 + 27 + 24 + 115 + 54 + 416 + 159 + 172 + 42 + 31 + 96)
#define Act_MAX_ACTION_COD 1636
@ -92,63 +92,57 @@ typedef signed int Act_Action_t; // Must be a signed type, because -1 is used to
#define ActSeePen (ActWebSvc + 3)
#define ActReqRemOldCrs (ActWebSvc + 4)
#define ActSeeDegTyp (ActWebSvc + 5)
#define ActSeeMai (ActWebSvc + 6)
#define ActSeeBan (ActWebSvc + 7)
#define ActSeeLnk (ActWebSvc + 8)
#define ActLstPlg (ActWebSvc + 9)
#define ActSetUp (ActWebSvc + 10)
#define ActSeeCalSys (ActWebSvc + 11)
#define ActSeeBan (ActWebSvc + 6)
#define ActSeeLnk (ActWebSvc + 7)
#define ActLstPlg (ActWebSvc + 8)
#define ActSetUp (ActWebSvc + 9)
#define ActSeeCalSys (ActWebSvc + 10)
// Secondary actions
#define ActSysSch (ActWebSvc + 12)
#define ActEdiDegTyp (ActWebSvc + 13)
#define ActEdiCty (ActWebSvc + 14)
#define ActNewCty (ActWebSvc + 15)
#define ActRemCty (ActWebSvc + 16)
#define ActRenCty (ActWebSvc + 17)
#define ActChgCtyWWW (ActWebSvc + 18)
#define ActSysSch (ActWebSvc + 11)
#define ActEdiDegTyp (ActWebSvc + 12)
#define ActEdiCty (ActWebSvc + 13)
#define ActNewCty (ActWebSvc + 14)
#define ActRemCty (ActWebSvc + 15)
#define ActRenCty (ActWebSvc + 16)
#define ActChgCtyWWW (ActWebSvc + 17)
#define ActNewDegTyp (ActWebSvc + 19)
#define ActRemDegTyp (ActWebSvc + 20)
#define ActRenDegTyp (ActWebSvc + 21)
#define ActNewDegTyp (ActWebSvc + 18)
#define ActRemDegTyp (ActWebSvc + 19)
#define ActRenDegTyp (ActWebSvc + 20)
#define ActRemOldCrs (ActWebSvc + 22)
#define ActEdiMai (ActWebSvc + 23)
#define ActNewMai (ActWebSvc + 24)
#define ActRemMai (ActWebSvc + 25)
#define ActRenMaiSho (ActWebSvc + 26)
#define ActRenMaiFul (ActWebSvc + 27)
#define ActRemOldCrs (ActWebSvc + 21)
#define ActEdiBan (ActWebSvc + 28)
#define ActNewBan (ActWebSvc + 29)
#define ActRemBan (ActWebSvc + 30)
#define ActShoBan (ActWebSvc + 31)
#define ActHidBan (ActWebSvc + 32)
#define ActRenBanSho (ActWebSvc + 33)
#define ActRenBanFul (ActWebSvc + 34)
#define ActChgBanImg (ActWebSvc + 35)
#define ActChgBanWWW (ActWebSvc + 36)
#define ActClkBan (ActWebSvc + 37)
#define ActEdiBan (ActWebSvc + 22)
#define ActNewBan (ActWebSvc + 23)
#define ActRemBan (ActWebSvc + 24)
#define ActShoBan (ActWebSvc + 25)
#define ActHidBan (ActWebSvc + 26)
#define ActRenBanSho (ActWebSvc + 27)
#define ActRenBanFul (ActWebSvc + 28)
#define ActChgBanImg (ActWebSvc + 29)
#define ActChgBanWWW (ActWebSvc + 30)
#define ActClkBan (ActWebSvc + 31)
#define ActEdiLnk (ActWebSvc + 38)
#define ActNewLnk (ActWebSvc + 39)
#define ActRemLnk (ActWebSvc + 40)
#define ActRenLnkSho (ActWebSvc + 41)
#define ActRenLnkFul (ActWebSvc + 42)
#define ActChgLnkWWW (ActWebSvc + 43)
#define ActEdiLnk (ActWebSvc + 32)
#define ActNewLnk (ActWebSvc + 33)
#define ActRemLnk (ActWebSvc + 34)
#define ActRenLnkSho (ActWebSvc + 35)
#define ActRenLnkFul (ActWebSvc + 36)
#define ActChgLnkWWW (ActWebSvc + 37)
#define ActEdiPlg (ActWebSvc + 44)
#define ActNewPlg (ActWebSvc + 45)
#define ActRemPlg (ActWebSvc + 46)
#define ActRenPlg (ActWebSvc + 47)
#define ActChgPlgDes (ActWebSvc + 48)
#define ActChgPlgLog (ActWebSvc + 49)
#define ActChgPlgAppKey (ActWebSvc + 50)
#define ActChgPlgURL (ActWebSvc + 51)
#define ActChgPlgIP (ActWebSvc + 52)
#define ActEdiPlg (ActWebSvc + 38)
#define ActNewPlg (ActWebSvc + 39)
#define ActRemPlg (ActWebSvc + 40)
#define ActRenPlg (ActWebSvc + 41)
#define ActChgPlgDes (ActWebSvc + 42)
#define ActChgPlgLog (ActWebSvc + 43)
#define ActChgPlgAppKey (ActWebSvc + 44)
#define ActChgPlgURL (ActWebSvc + 45)
#define ActChgPlgIP (ActWebSvc + 46)
#define ActPrnCalSys (ActWebSvc + 53)
#define ActChgCalSys1stDay (ActWebSvc + 54)
#define ActPrnCalSys (ActWebSvc + 47)
#define ActChgCalSys1stDay (ActWebSvc + 48)
/*****************************************************************************/
/******************************** Country tab ********************************/
@ -1338,23 +1332,31 @@ typedef signed int Act_Action_t; // Must be a signed type, because -1 is used to
#define ActRevNot (ActCht + 17)
#define ActReqRemNot (ActCht + 18)
#define ActRemNot (ActCht + 19)
#define ActSeeNewNtf (ActCht + 20)
#define ActMrkNtfSee (ActCht + 21)
#define ActRcvMsgUsr (ActCht + 22)
#define ActReqDelAllSntMsg (ActCht + 23)
#define ActReqDelAllRcvMsg (ActCht + 24)
#define ActDelAllSntMsg (ActCht + 25)
#define ActDelAllRcvMsg (ActCht + 26)
#define ActDelSntMsg (ActCht + 27)
#define ActDelRcvMsg (ActCht + 28)
#define ActExpSntMsg (ActCht + 29)
#define ActExpRcvMsg (ActCht + 30)
#define ActConSntMsg (ActCht + 31)
#define ActConRcvMsg (ActCht + 32)
#define ActLstBanUsr (ActCht + 33)
#define ActBanUsrMsg (ActCht + 34)
#define ActUnbUsrMsg (ActCht + 35)
#define ActUnbUsrLst (ActCht + 36)
#define ActSeeMai (ActCht + 22)
#define ActEdiMai (ActCht + 23)
#define ActNewMai (ActCht + 24)
#define ActRemMai (ActCht + 25)
#define ActRenMaiSho (ActCht + 26)
#define ActRenMaiFul (ActCht + 27)
#define ActRcvMsgUsr (ActCht + 28)
#define ActReqDelAllSntMsg (ActCht + 29)
#define ActReqDelAllRcvMsg (ActCht + 30)
#define ActDelAllSntMsg (ActCht + 31)
#define ActDelAllRcvMsg (ActCht + 32)
#define ActDelSntMsg (ActCht + 33)
#define ActDelRcvMsg (ActCht + 34)
#define ActExpSntMsg (ActCht + 35)
#define ActExpRcvMsg (ActCht + 36)
#define ActConSntMsg (ActCht + 37)
#define ActConRcvMsg (ActCht + 38)
#define ActLstBanUsr (ActCht + 39)
#define ActBanUsrMsg (ActCht + 40)
#define ActUnbUsrMsg (ActCht + 41)
#define ActUnbUsrLst (ActCht + 42)
/*****************************************************************************/
/****************************** Statistics tab *******************************/

View File

@ -209,13 +209,14 @@
/****************************** Public constants *****************************/
/*****************************************************************************/
#define Log_PLATFORM_VERSION "SWAD 16.164.5 (2017-03-24)"
#define Log_PLATFORM_VERSION "SWAD 16.165 (2017-03-24)"
#define CSS_FILE "swad16.161.css"
#define JS_FILE "swad16.144.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.165: Mar 24, 2017 Allowed mail domains option is moved from system tab to messages tab. (217591 lines)
Version 16.164.5: Mar 24, 2017 Link in notifications to allowed mail domains. (217632 lines)
Version 16.164.4: Mar 24, 2017 Link to figures in types of degree. (217604 lines)
Version 16.164.3: Mar 24, 2017 Fixed bug in types of degree.

View File

@ -178,48 +178,6 @@ const char *Hlp_SYSTEM_Studies_edit =
"SYSTEM.Studies#edit";
#endif
const char *Hlp_SYSTEM_Domains =
#if L==1
"SYSTEM.Domains";
#elif L==2
"SYSTEM.Domains";
#elif L==3
"SYSTEM.Domains";
#elif L==4
"SYSTEM.Domains";
#elif L==5
"SYSTEM.Domains";
#elif L==6
"SYSTEM.Domains";
#elif L==7
"SYSTEM.Domains";
#elif L==8
"SYSTEM.Domains";
#elif L==9
"SYSTEM.Domains";
#endif
const char *Hlp_SYSTEM_Domains_edit =
#if L==1
"SYSTEM.Domains#edit";
#elif L==2
"SYSTEM.Domains#edit";
#elif L==3
"SYSTEM.Domains#edit";
#elif L==4
"SYSTEM.Domains#edit";
#elif L==5
"SYSTEM.Domains#edit";
#elif L==6
"SYSTEM.Domains#edit";
#elif L==7
"SYSTEM.Domains#edit";
#elif L==8
"SYSTEM.Domains#edit";
#elif L==9
"SYSTEM.Domains#edit";
#endif
const char *Hlp_SYSTEM_Banners =
#if L==1
"SYSTEM.Banners";
@ -1815,6 +1773,48 @@ const char *Hlp_MESSAGES_Notifications =
"MESSAGES.Notifications";
#endif
const char *Hlp_MESSAGES_Domains =
#if L==1
"MESSAGES.Domains";
#elif L==2
"MESSAGES.Domains";
#elif L==3
"MESSAGES.Domains";
#elif L==4
"MESSAGES.Domains";
#elif L==5
"MESSAGES.Domains";
#elif L==6
"MESSAGES.Domains";
#elif L==7
"MESSAGES.Domains";
#elif L==8
"MESSAGES.Domains";
#elif L==9
"MESSAGES.Domains";
#endif
const char *Hlp_MESSAGES_Domains_edit =
#if L==1
"MESSAGES.Domains#edit";
#elif L==2
"MESSAGES.Domains#edit";
#elif L==3
"MESSAGES.Domains#edit";
#elif L==4
"MESSAGES.Domains#edit";
#elif L==5
"MESSAGES.Domains#edit";
#elif L==6
"MESSAGES.Domains#edit";
#elif L==7
"MESSAGES.Domains#edit";
#elif L==8
"MESSAGES.Domains#edit";
#elif L==9
"MESSAGES.Domains#edit";
#endif
const char *Hlp_MESSAGES_Announcements =
#if L==1
"MESSAGES.Announcements";

View File

@ -93,7 +93,7 @@ static void Mai_InsertMailKey (const char Email[Cns_MAX_BYTES_EMAIL_ADDRESS + 1]
void Mai_SeeMailDomains (void)
{
extern const char *Hlp_SYSTEM_Domains;
extern const char *Hlp_MESSAGES_Domains;
extern const char *Txt_Email_domains_allowed_for_notifications;
extern const char *Txt_EMAIL_DOMAIN_HELP_ORDER[3];
extern const char *Txt_EMAIL_DOMAIN_ORDER[3];
@ -110,7 +110,7 @@ void Mai_SeeMailDomains (void)
Lay_StartRoundFrameTable (NULL,Txt_Email_domains_allowed_for_notifications,
Gbl.Usrs.Me.LoggedRole == Rol_SYS_ADM ? Mai_PutIconToEditMailDomains :
NULL,
Hlp_SYSTEM_Domains,2);
Hlp_MESSAGES_Domains,2);
fprintf (Gbl.F.Out,"<tr>");
for (Order = Mai_ORDER_BY_DOMAIN;
Order <= Mai_ORDER_BY_USERS;
@ -375,6 +375,7 @@ void Mai_WriteWarningEmailNotifications (void)
extern const char *Txt_You_can_only_receive_email_notifications_if_;
extern const char *Txt_TABS_TXT[Tab_NUM_TABS];
extern const char *Txt_MENU_TITLE[Tab_NUM_TABS][Act_MAX_OPTIONS_IN_MENU_PER_TAB];
extern const char *Txt_Domains;
Act_Action_t SuperActionMyAccount = Act_Actions[ActFrmMyAcc].SuperAction;
Act_Action_t SuperActionMailDomains = Act_Actions[ActSeeMai ].SuperAction;
Tab_Tab_t TabMyAccount = Act_Actions[SuperActionMyAccount ].Tab;
@ -384,7 +385,8 @@ void Mai_WriteWarningEmailNotifications (void)
Txt_TABS_TXT[TabMyAccount ],
Txt_MENU_TITLE[TabMyAccount ][Act_Actions[SuperActionMyAccount ].IndexInMenu],
Txt_TABS_TXT[TabMailDomains],
Txt_MENU_TITLE[TabMailDomains][Act_Actions[SuperActionMailDomains].IndexInMenu]);
Txt_MENU_TITLE[TabMailDomains][Act_Actions[SuperActionMailDomains].IndexInMenu],
Txt_Domains);
Lay_ShowAlert (Lay_WARNING,Gbl.Message);
}
@ -450,13 +452,13 @@ void Mai_FreeListMailDomains (void)
static void Mai_ListMailDomainsForEdition (void)
{
extern const char *Hlp_SYSTEM_Domains_edit;
extern const char *Hlp_MESSAGES_Domains_edit;
extern const char *Txt_Email_domains_allowed_for_notifications;
unsigned NumMai;
struct Mail *Mai;
Lay_StartRoundFrameTable (NULL,Txt_Email_domains_allowed_for_notifications,
NULL,Hlp_SYSTEM_Domains_edit,2);
NULL,Hlp_MESSAGES_Domains_edit,2);
/***** Table head *****/
Mai_PutHeadMailDomains ();
@ -710,7 +712,7 @@ static void Mai_UpdateMailDomainNameDB (long MaiCod,const char *FieldName,const
static void Mai_PutFormToCreateMailDomain (void)
{
extern const char *Hlp_SYSTEM_Domains_edit;
extern const char *Hlp_MESSAGES_Domains_edit;
extern const char *Txt_New_email_domain;
extern const char *Txt_EMAIL_DOMAIN_ORDER[3];
extern const char *Txt_Create_email_domain;
@ -723,7 +725,7 @@ static void Mai_PutFormToCreateMailDomain (void)
/***** Start of frame *****/
Lay_StartRoundFrameTable (NULL,Txt_New_email_domain,
NULL,Hlp_SYSTEM_Domains_edit,2);
NULL,Hlp_MESSAGES_Domains_edit,2);
/***** Write heading *****/
fprintf (Gbl.F.Out,"<tr>"

View File

@ -90,12 +90,12 @@ const Act_Action_t Mnu_MenuActions[Tab_NUM_TABS][Act_MAX_OPTIONS_IN_MENU_PER_TAB
ActSeePen, // 2
ActReqRemOldCrs, // 3
ActSeeDegTyp, // 4
ActSeeMai, // 5
ActSeeBan, // 6
ActSeeLnk, // 7
ActLstPlg, // 8
ActSetUp, // 9
ActSeeCalSys, // 10
ActSeeBan, // 5
ActSeeLnk, // 6
ActLstPlg, // 7
ActSetUp, // 8
ActSeeCalSys, // 9
0, // 10
0, // 11
},
// TabCty *******************

View File

@ -18157,28 +18157,7 @@ const char *Txt_MENU_TITLE[Tab_NUM_TABS][Act_MAX_OPTIONS_IN_MENU_PER_TAB] =
"Estudos"
#endif
,
// 5: ActSeeMai
#if L==1
"Dominis"
#elif L==2
"Dom&auml;nen"
#elif L==3
"Domains"
#elif L==4
"Dominios"
#elif L==5
"Domaines"
#elif L==6
"Dominios" // Okoteve traducción
#elif L==7
"Campi"
#elif L==8
"Domen"
#elif L==9
"Dom&iacute;nios"
#endif
,
// 6: ActSeeBan
// 5: ActSeeBan
#if L==1
"Banners"
#elif L==2
@ -18199,7 +18178,7 @@ const char *Txt_MENU_TITLE[Tab_NUM_TABS][Act_MAX_OPTIONS_IN_MENU_PER_TAB] =
"Banners"
#endif
,
// 7: ActSeeLnk
// 6: ActSeeLnk
#if L==1
"Enlla&ccedil;os"
#elif L==2
@ -18220,7 +18199,7 @@ const char *Txt_MENU_TITLE[Tab_NUM_TABS][Act_MAX_OPTIONS_IN_MENU_PER_TAB] =
"Liga&ccedil;&otilde;es"
#endif
,
// 8: ActLstPlg
// 7: ActLstPlg
#if L==1
"Complements"
#elif L==2
@ -18241,7 +18220,7 @@ const char *Txt_MENU_TITLE[Tab_NUM_TABS][Act_MAX_OPTIONS_IN_MENU_PER_TAB] =
"Plugins"
#endif
,
// 9: ActSetUp
// 8: ActSetUp
#if L==1
"Instal lar"
#elif L==2
@ -18262,7 +18241,7 @@ const char *Txt_MENU_TITLE[Tab_NUM_TABS][Act_MAX_OPTIONS_IN_MENU_PER_TAB] =
"Instalar"
#endif
,
// 10: ActSeeCalSys
// 9: ActSeeCalSys
#if L==1
"Calendari"
#elif L==2
@ -18283,6 +18262,7 @@ const char *Txt_MENU_TITLE[Tab_NUM_TABS][Act_MAX_OPTIONS_IN_MENU_PER_TAB] =
"Calend&aacute;rio"
#endif
,
NULL, // 10
NULL, // 11
},
{
@ -20170,32 +20150,7 @@ const char *Txt_MENU_SUBTITLE[Tab_NUM_TABS][Act_MAX_OPTIONS_IN_MENU_PER_TAB] =
"Tipos de titula&ccedil;&atilde;o"
#endif
,
// 5: ActSeeMai
#if L==1
"Llista de dominis de correu permesos"
" per a l'enviament de notificacions"
#elif L==2
"E-Mail-Dom&auml;nen f&uuml;r Benachrichtigungen"
#elif L==3
"Email domains for notifications"
#elif L==4
"Lista de dominios de correo permitidos"
" para el env&iacute;o de notificaciones"
#elif L==5
"Domaines de messagerie pour notifications"
#elif L==6
"Lista de dominios de correo permitidos"
" para el env&iacute;o de notificaciones"// Okoteve traducción
#elif L==7
"Campi mail per invio di notifiche"
#elif L==8
"Domen Mail powiadomien"
#elif L==9
"Dom&iacute;nios de email"
" para notifica&ccedil;&otilde;es"
#endif
,
// 6: ActSeeBan
// 5: ActSeeBan
#if L==1
"Llista de banners publicitaris"
#elif L==2
@ -20216,7 +20171,7 @@ const char *Txt_MENU_SUBTITLE[Tab_NUM_TABS][Act_MAX_OPTIONS_IN_MENU_PER_TAB] =
"Lista de banners publicit&aacute;rios"
#endif
,
// 7: ActSeeLnk
// 6: ActSeeLnk
#if L==1
"Llista d'enlla&ccedil;os institucionals"
#elif L==2
@ -20237,7 +20192,7 @@ const char *Txt_MENU_SUBTITLE[Tab_NUM_TABS][Act_MAX_OPTIONS_IN_MENU_PER_TAB] =
"Liga&ccedil;&otilde;es institucionais"
#endif
,
// 8: ActLstPlg
// 7: ActLstPlg
#if L==1
"Llista de complements (versi&oacute; beta)"
#elif L==2
@ -20258,7 +20213,7 @@ const char *Txt_MENU_SUBTITLE[Tab_NUM_TABS][Act_MAX_OPTIONS_IN_MENU_PER_TAB] =
"Lista de plugins"
#endif
,
// 9: ActSetUp
// 8: ActSetUp
#if L==1
"Instal laci&oacute; de la plataforma (en proves)"
#elif L==2
@ -20279,7 +20234,7 @@ const char *Txt_MENU_SUBTITLE[Tab_NUM_TABS][Act_MAX_OPTIONS_IN_MENU_PER_TAB] =
"Instalar"
#endif
,
// 10: ActSeeCalSys
// 9: ActSeeCalSys
#if L==1
"Calendari acad&egrave;mic"
#elif L==2
@ -20300,6 +20255,7 @@ const char *Txt_MENU_SUBTITLE[Tab_NUM_TABS][Act_MAX_OPTIONS_IN_MENU_PER_TAB] =
"Calend&aacute;rio"
#endif
,
NULL, // 10
NULL, // 11
},
{
@ -53425,43 +53381,43 @@ const char *Txt_You_can_only_perform_X_further_actions_ = // Warning: it is very
" if you don't send your photo."; // Necessita de tradução
#endif
const char *Txt_You_can_only_receive_email_notifications_if_ = // Warning: it is very important to include four %s in the following sentences
const char *Txt_You_can_only_receive_email_notifications_if_ = // Warning: it is very important to include five %s in the following sentences
#if L==1
"Nom&eacute;s podr&agrave; rebre notificacions per correu"
" si la seva adre&ccedil;a de correu est&agrave; confirmada (%s &gt; %s)"
" i acaba en un dels dominis permesos (%s &gt; %s).";
" i acaba en un dels dominis permesos (%s &gt; %s &gt; %s).";
#elif L==2
"Sie k&ouml;nnen nur E-Mail-Anmeldungen zu erhalten,"
" wenn Sie Ihre E-Mail-Adresse best&uuml;tigt wird (%s &gt; %s),"
" und endet in einer der erlaubt Domains (%s &gt; %s).";
" und endet in einer der erlaubt Domains (%s &gt; %s &gt; %s).";
#elif L==3
"You can only receive email notifications"
" if your email address is confirmed (%s &gt; %s)"
" and ends in one of the allowed domains (%s &gt; %s).";
" and ends in one of the allowed domains (%s &gt; %s &gt; %s).";
#elif L==4
"Solo podr&aacute; recibir notificaciones por correo"
" si su direcci&oacute;n de correo est&aacute; confirmada (%s &gt; %s)"
" y termina en uno de los dominios permitidos (%s &gt; %s).";
" y termina en uno de los dominios permitidos (%s &gt; %s &gt; %s).";
#elif L==5
"Vous ne pouvez recevoir des notifications par email"
" si votre adresse email est confirm&eacute; (%s &gt; %s)"
" et se termine dans l'un des domaines autoris&eacute;s (%s &gt; %s).";
" et se termine dans l'un des domaines autoris&eacute;s (%s &gt; %s &gt; %s).";
#elif L==6
"Solo podr&aacute; recibir notificaciones por correo"
" si su direcci&oacute;n de correo est&aacute; confirmada (%s &gt; %s)"
" y termina en uno de los dominios permitidos (%s &gt; %s)."; // Okoteve traducción
" y termina en uno de los dominios permitidos (%s &gt; %s &gt; %s)."; // Okoteve traducción
#elif L==7
"Puoi solo ricevere email di notifica"
" se la tua email &egrave; confermata (%s &gt; %s)"
" e si termina in uno dei domini consentiti (%s &gt; %s).";
" e si termina in uno dei domini consentiti (%s &gt; %s &gt; %s).";
#elif L==8
"Mo&zdot;na otrzyma&cacute; tylko informacj&eogon;,"
" czy adres email jest potwierdzone (%s &gt; %s),"
" a ko&nacute;czy si&eogon; w jednej z dozwolone domeny (%s &gt; %s).";
" a ko&nacute;czy si&eogon; w jednej z dozwolone domeny (%s &gt; %s &gt; %s).";
#elif L==9
"Voc&ecirc; s&oacute; pode receber notifica&ccedil;&otilde;es de email"
" se o seu endere&ccedil;o de email est&aacute; confirmado (%s &gt; %s)"
" e termina em um dos dom&iacute;nios permitidos (%s &gt; %s).";
" e termina em um dos dom&iacute;nios permitidos (%s &gt; %s &gt; %s).";
#endif
const char *Txt_You_can_register_voluntarily_in_one_group_of_type_X = // Warning: it is very important to include %s in the following sentences