Version 22.75: Mar 17, 2023 New module swad_rubric_criteria.

This commit is contained in:
acanas 2023-03-17 12:51:11 +01:00
parent d9bc2bd51f
commit c4b5199fb7
71 changed files with 2221 additions and 1172 deletions

View File

@ -163,12 +163,12 @@ const struct Act_Actions ActLst_Actions[ActLst_NUM_ACTIONS] =
[ActUnfNotGblTL ] = {1513,-1,TabUnk,ActSeeGblTL ,0x3F8,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,Act_CONT_NORM,Act_AJAX_NORMAL,NULL ,TmlFav_UnfNoteGbl ,NULL}, [ActUnfNotGblTL ] = {1513,-1,TabUnk,ActSeeGblTL ,0x3F8,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,Act_CONT_NORM,Act_AJAX_NORMAL,NULL ,TmlFav_UnfNoteGbl ,NULL},
[ActFavComGblTL ] = {1516,-1,TabUnk,ActSeeGblTL ,0x3F8,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,Act_CONT_NORM,Act_AJAX_NORMAL,NULL ,TmlFav_FavCommGbl ,NULL}, [ActFavComGblTL ] = {1516,-1,TabUnk,ActSeeGblTL ,0x3F8,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,Act_CONT_NORM,Act_AJAX_NORMAL,NULL ,TmlFav_FavCommGbl ,NULL},
[ActUnfComGblTL ] = {1517,-1,TabUnk,ActSeeGblTL ,0x3F8,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,Act_CONT_NORM,Act_AJAX_NORMAL,NULL ,TmlFav_UnfCommGbl ,NULL}, [ActUnfComGblTL ] = {1517,-1,TabUnk,ActSeeGblTL ,0x3F8,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,Act_CONT_NORM,Act_AJAX_NORMAL,NULL ,TmlFav_UnfCommGbl ,NULL},
[ActReqRemPubGblTL ] = {1494,-1,TabUnk,ActSeeGblTL ,0x3F8,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,Act_CONT_NORM,Act_BRW_1ST_TAB,TmlWho_GetParWho ,TmlNot_RequestRemNoteGbl ,NULL}, [ActReqRemPubGblTL ] = {1494,-1,TabUnk,ActSeeGblTL ,0x3F8,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,Act_CONT_NORM,Act_BRW_1ST_TAB,TmlWho_GetParWho ,TmlNot_ReqRemNoteGbl ,NULL},
[ActRemPubGblTL ] = {1493,-1,TabUnk,ActSeeGblTL ,0x3F8,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,Act_CONT_NORM,Act_BRW_1ST_TAB,TmlWho_GetParWho ,TmlNot_RemoveNoteGbl ,NULL}, [ActRemPubGblTL ] = {1493,-1,TabUnk,ActSeeGblTL ,0x3F8,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,Act_CONT_NORM,Act_BRW_1ST_TAB,TmlWho_GetParWho ,TmlNot_RemoveNoteGbl ,NULL},
[ActReqRemComGblTL ] = {1505,-1,TabUnk,ActSeeGblTL ,0x3F8,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,Act_CONT_NORM,Act_BRW_1ST_TAB,TmlWho_GetParWho ,TmlCom_RequestRemComGbl ,NULL}, [ActReqRemComGblTL ] = {1505,-1,TabUnk,ActSeeGblTL ,0x3F8,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,Act_CONT_NORM,Act_BRW_1ST_TAB,TmlWho_GetParWho ,TmlCom_ReqRemComGbl ,NULL},
[ActRemComGblTL ] = {1507,-1,TabUnk,ActSeeGblTL ,0x3F8,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,Act_CONT_NORM,Act_BRW_1ST_TAB,TmlWho_GetParWho ,TmlCom_RemoveComGbl ,NULL}, [ActRemComGblTL ] = {1507,-1,TabUnk,ActSeeGblTL ,0x3F8,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,Act_CONT_NORM,Act_BRW_1ST_TAB,TmlWho_GetParWho ,TmlCom_RemoveComGbl ,NULL},
[ActReqOthPubPrf ] = {1401,-1,TabUnk,ActSeeSocPrf ,0x3F8,0x3C7,0x3C7,0x3C7,0x3C7,0x3C7,0x3C7,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Prf_RequestUserProfile ,NULL}, [ActReqOthPubPrf ] = {1401,-1,TabUnk,ActSeeSocPrf ,0x3F8,0x3C7,0x3C7,0x3C7,0x3C7,0x3C7,0x3C7,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Prf_ReqUserProfile ,NULL},
[ActRefOldPubUsrTL ] = {1511,-1,TabUnk,ActSeeSocPrf ,0x3F8,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,Act_CONT_NORM,Act_AJAX_NORMAL,NULL ,Tml_RefreshOldTimelineUsr ,NULL}, [ActRefOldPubUsrTL ] = {1511,-1,TabUnk,ActSeeSocPrf ,0x3F8,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,Act_CONT_NORM,Act_AJAX_NORMAL,NULL ,Tml_RefreshOldTimelineUsr ,NULL},
[ActRcvPstUsrTL ] = {1498,-1,TabUnk,ActSeeSocPrf ,0x3F8,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,Act_CONT_DATA,Act_BRW_1ST_TAB,NULL ,TmlPst_ReceivePostUsr ,NULL}, [ActRcvPstUsrTL ] = {1498,-1,TabUnk,ActSeeSocPrf ,0x3F8,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,Act_CONT_DATA,Act_BRW_1ST_TAB,NULL ,TmlPst_ReceivePostUsr ,NULL},
@ -183,9 +183,9 @@ const struct Act_Actions ActLst_Actions[ActLst_NUM_ACTIONS] =
[ActUnfNotUsrTL ] = {1515,-1,TabUnk,ActSeeSocPrf ,0x3F8,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,Act_CONT_NORM,Act_AJAX_NORMAL,NULL ,TmlFav_UnfNoteUsr ,NULL}, [ActUnfNotUsrTL ] = {1515,-1,TabUnk,ActSeeSocPrf ,0x3F8,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,Act_CONT_NORM,Act_AJAX_NORMAL,NULL ,TmlFav_UnfNoteUsr ,NULL},
[ActFavComUsrTL ] = {1518,-1,TabUnk,ActSeeSocPrf ,0x3F8,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,Act_CONT_NORM,Act_AJAX_NORMAL,NULL ,TmlFav_FavCommUsr ,NULL}, [ActFavComUsrTL ] = {1518,-1,TabUnk,ActSeeSocPrf ,0x3F8,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,Act_CONT_NORM,Act_AJAX_NORMAL,NULL ,TmlFav_FavCommUsr ,NULL},
[ActUnfComUsrTL ] = {1519,-1,TabUnk,ActSeeSocPrf ,0x3F8,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,Act_CONT_NORM,Act_AJAX_NORMAL,NULL ,TmlFav_UnfCommUsr ,NULL}, [ActUnfComUsrTL ] = {1519,-1,TabUnk,ActSeeSocPrf ,0x3F8,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,Act_CONT_NORM,Act_AJAX_NORMAL,NULL ,TmlFav_UnfCommUsr ,NULL},
[ActReqRemPubUsrTL ] = {1501,-1,TabUnk,ActSeeSocPrf ,0x3F8,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,TmlNot_RequestRemNoteUsr ,NULL}, [ActReqRemPubUsrTL ] = {1501,-1,TabUnk,ActSeeSocPrf ,0x3F8,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,TmlNot_ReqRemNoteUsr ,NULL},
[ActRemPubUsrTL ] = {1502,-1,TabUnk,ActSeeSocPrf ,0x3F8,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,TmlNot_RemoveNoteUsr ,NULL}, [ActRemPubUsrTL ] = {1502,-1,TabUnk,ActSeeSocPrf ,0x3F8,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,TmlNot_RemoveNoteUsr ,NULL},
[ActReqRemComUsrTL ] = {1506,-1,TabUnk,ActSeeSocPrf ,0x3F8,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,TmlCom_RequestRemComUsr ,NULL}, [ActReqRemComUsrTL ] = {1506,-1,TabUnk,ActSeeSocPrf ,0x3F8,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,TmlCom_ReqRemComUsr ,NULL},
[ActRemComUsrTL ] = {1508,-1,TabUnk,ActSeeSocPrf ,0x3F8,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,TmlCom_RemoveComUsr ,NULL}, [ActRemComUsrTL ] = {1508,-1,TabUnk,ActSeeSocPrf ,0x3F8,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,TmlCom_RemoveComUsr ,NULL},
[ActSeeOthPubPrf ] = {1402,-1,TabUnk,ActSeeSocPrf ,0x3F8,0x3C7,0x3C7,0x3C7,0x3C7,0x3C7,0x3C7,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Prf_GetUsrDatAndShowUserProfile,NULL}, [ActSeeOthPubPrf ] = {1402,-1,TabUnk,ActSeeSocPrf ,0x3F8,0x3C7,0x3C7,0x3C7,0x3C7,0x3C7,0x3C7,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Prf_GetUsrDatAndShowUserProfile,NULL},
@ -292,7 +292,7 @@ const struct Act_Actions ActLst_Actions[ActLst_NUM_ACTIONS] =
[ActRenInsShoCfg ] = {1592,-1,TabUnk,ActSeeInsInf , 0, 0, 0, 0,0x200, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,InsCfg_RenameInsShort ,InsCfg_ContEditAfterChgIns ,NULL}, [ActRenInsShoCfg ] = {1592,-1,TabUnk,ActSeeInsInf , 0, 0, 0, 0,0x200, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,InsCfg_RenameInsShort ,InsCfg_ContEditAfterChgIns ,NULL},
[ActRenInsFulCfg ] = {1591,-1,TabUnk,ActSeeInsInf , 0, 0, 0, 0,0x200, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,InsCfg_RenameInsFull ,InsCfg_ContEditAfterChgIns ,NULL}, [ActRenInsFulCfg ] = {1591,-1,TabUnk,ActSeeInsInf , 0, 0, 0, 0,0x200, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,InsCfg_RenameInsFull ,InsCfg_ContEditAfterChgIns ,NULL},
[ActChgInsWWWCfg ] = {1593,-1,TabUnk,ActSeeInsInf , 0, 0, 0, 0,0x300, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,InsCfg_ChangeInsWWW ,NULL}, [ActChgInsWWWCfg ] = {1593,-1,TabUnk,ActSeeInsInf , 0, 0, 0, 0,0x300, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,InsCfg_ChangeInsWWW ,NULL},
[ActReqInsLog ] = {1245,-1,TabUnk,ActSeeInsInf , 0, 0, 0, 0,0x300, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,InsCfg_RequestLogo ,NULL}, [ActReqInsLog ] = {1245,-1,TabUnk,ActSeeInsInf , 0, 0, 0, 0,0x300, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,InsCfg_ReqLogo ,NULL},
[ActRecInsLog ] = { 699,-1,TabUnk,ActSeeInsInf , 0, 0, 0, 0,0x300, 0, 0,Act_CONT_DATA,Act_BRW_1ST_TAB,InsCfg_ReceiveLogo ,InsCfg_ShowConfiguration ,NULL}, [ActRecInsLog ] = { 699,-1,TabUnk,ActSeeInsInf , 0, 0, 0, 0,0x300, 0, 0,Act_CONT_DATA,Act_BRW_1ST_TAB,InsCfg_ReceiveLogo ,InsCfg_ShowConfiguration ,NULL},
[ActRemInsLog ] = {1341,-1,TabUnk,ActSeeInsInf , 0, 0, 0, 0,0x300, 0, 0,Act_CONT_DATA,Act_BRW_1ST_TAB,InsCfg_RemoveLogo ,InsCfg_ShowConfiguration ,NULL}, [ActRemInsLog ] = {1341,-1,TabUnk,ActSeeInsInf , 0, 0, 0, 0,0x300, 0, 0,Act_CONT_DATA,Act_BRW_1ST_TAB,InsCfg_RemoveLogo ,InsCfg_ShowConfiguration ,NULL},
@ -346,10 +346,10 @@ const struct Act_Actions ActLst_Actions[ActLst_NUM_ACTIONS] =
[ActChgCtrLgtCfg ] = {1816,-1,TabUnk,ActSeeCtrInf , 0, 0, 0,0x380, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,CtrCfg_ChangeCtrLongitude ,NULL}, [ActChgCtrLgtCfg ] = {1816,-1,TabUnk,ActSeeCtrInf , 0, 0, 0,0x380, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,CtrCfg_ChangeCtrLongitude ,NULL},
[ActChgCtrAltCfg ] = {1817,-1,TabUnk,ActSeeCtrInf , 0, 0, 0,0x380, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,CtrCfg_ChangeCtrAltitude ,NULL}, [ActChgCtrAltCfg ] = {1817,-1,TabUnk,ActSeeCtrInf , 0, 0, 0,0x380, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,CtrCfg_ChangeCtrAltitude ,NULL},
[ActChgCtrWWWCfg ] = {1596,-1,TabUnk,ActSeeCtrInf , 0, 0, 0,0x380, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,CtrCfg_ChangeCtrWWW ,NULL}, [ActChgCtrWWWCfg ] = {1596,-1,TabUnk,ActSeeCtrInf , 0, 0, 0,0x380, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,CtrCfg_ChangeCtrWWW ,NULL},
[ActReqCtrLog ] = {1244,-1,TabUnk,ActSeeCtrInf , 0, 0, 0,0x380, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,CtrCfg_RequestLogo ,NULL}, [ActReqCtrLog ] = {1244,-1,TabUnk,ActSeeCtrInf , 0, 0, 0,0x380, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,CtrCfg_ReqLogo ,NULL},
[ActRecCtrLog ] = {1051,-1,TabUnk,ActSeeCtrInf , 0, 0, 0,0x380, 0, 0, 0,Act_CONT_DATA,Act_BRW_1ST_TAB,CtrCfg_ReceiveLogo ,CtrCfg_ShowConfiguration ,NULL}, [ActRecCtrLog ] = {1051,-1,TabUnk,ActSeeCtrInf , 0, 0, 0,0x380, 0, 0, 0,Act_CONT_DATA,Act_BRW_1ST_TAB,CtrCfg_ReceiveLogo ,CtrCfg_ShowConfiguration ,NULL},
[ActRemCtrLog ] = {1342,-1,TabUnk,ActSeeCtrInf , 0, 0, 0,0x380, 0, 0, 0,Act_CONT_DATA,Act_BRW_1ST_TAB,CtrCfg_RemoveLogo ,CtrCfg_ShowConfiguration ,NULL}, [ActRemCtrLog ] = {1342,-1,TabUnk,ActSeeCtrInf , 0, 0, 0,0x380, 0, 0, 0,Act_CONT_DATA,Act_BRW_1ST_TAB,CtrCfg_RemoveLogo ,CtrCfg_ShowConfiguration ,NULL},
[ActReqCtrPho ] = {1160,-1,TabUnk,ActSeeCtrInf , 0, 0, 0,0x380, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,CtrCfg_RequestPhoto ,NULL}, [ActReqCtrPho ] = {1160,-1,TabUnk,ActSeeCtrInf , 0, 0, 0,0x380, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,CtrCfg_ReqPhoto ,NULL},
[ActRecCtrPho ] = {1161,-1,TabUnk,ActSeeCtrInf , 0, 0, 0,0x380, 0, 0, 0,Act_CONT_DATA,Act_BRW_1ST_TAB,NULL ,CtrCfg_ReceivePhoto ,NULL}, [ActRecCtrPho ] = {1161,-1,TabUnk,ActSeeCtrInf , 0, 0, 0,0x380, 0, 0, 0,Act_CONT_DATA,Act_BRW_1ST_TAB,NULL ,CtrCfg_ReceivePhoto ,NULL},
[ActChgCtrPhoAtt ] = {1159,-1,TabUnk,ActSeeCtrInf , 0, 0, 0,0x380, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,CtrCfg_ChangeCtrPhotoAttr ,NULL}, [ActChgCtrPhoAtt ] = {1159,-1,TabUnk,ActSeeCtrInf , 0, 0, 0,0x380, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,CtrCfg_ChangeCtrPhotoAttr ,NULL},
@ -398,9 +398,9 @@ const struct Act_Actions ActLst_Actions[ActLst_NUM_ACTIONS] =
[ActRenDegShoCfg ] = {1598,-1,TabUnk,ActSeeDegInf , 0, 0,0x380, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,DegCfg_RenameDegreeShort ,DegCfg_ContEditAfterChgDeg ,NULL}, [ActRenDegShoCfg ] = {1598,-1,TabUnk,ActSeeDegInf , 0, 0,0x380, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,DegCfg_RenameDegreeShort ,DegCfg_ContEditAfterChgDeg ,NULL},
[ActRenDegFulCfg ] = {1597,-1,TabUnk,ActSeeDegInf , 0, 0,0x380, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,DegCfg_RenameDegreeFull ,DegCfg_ContEditAfterChgDeg ,NULL}, [ActRenDegFulCfg ] = {1597,-1,TabUnk,ActSeeDegInf , 0, 0,0x380, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,DegCfg_RenameDegreeFull ,DegCfg_ContEditAfterChgDeg ,NULL},
[ActChgDegWWWCfg ] = {1599,-1,TabUnk,ActSeeDegInf , 0, 0,0x3C0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,DegCfg_ChangeDegWWW ,NULL}, [ActChgDegWWWCfg ] = {1599,-1,TabUnk,ActSeeDegInf , 0, 0,0x3C0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,DegCfg_ChangeDegWWW ,NULL},
[ActReqDegLog ] = {1246,-1,TabUnk,ActSeeDegInf , 0, 0,0x3C0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Deg_RequestLogo ,NULL}, [ActReqDegLog ] = {1246,-1,TabUnk,ActSeeDegInf , 0, 0,0x3C0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,DegCfg_ReqLogo ,NULL},
[ActRecDegLog ] = { 553,-1,TabUnk,ActSeeDegInf , 0, 0,0x3C0, 0, 0, 0, 0,Act_CONT_DATA,Act_BRW_1ST_TAB,Deg_ReceiveLogo ,DegCfg_ShowConfiguration ,NULL}, [ActRecDegLog ] = { 553,-1,TabUnk,ActSeeDegInf , 0, 0,0x3C0, 0, 0, 0, 0,Act_CONT_DATA,Act_BRW_1ST_TAB,DegCfg_ReceiveLogo ,DegCfg_ShowConfiguration ,NULL},
[ActRemDegLog ] = {1343,-1,TabUnk,ActSeeDegInf , 0, 0,0x3C0, 0, 0, 0, 0,Act_CONT_DATA,Act_BRW_1ST_TAB,Deg_RemoveLogo ,DegCfg_ShowConfiguration ,NULL}, [ActRemDegLog ] = {1343,-1,TabUnk,ActSeeDegInf , 0, 0,0x3C0, 0, 0, 0, 0,Act_CONT_DATA,Act_BRW_1ST_TAB,DegCfg_RemoveLogo ,DegCfg_ShowConfiguration ,NULL},
[ActEdiCrs ] = { 555,-1,TabUnk,ActSeeCrs , 0, 0,0x3C6, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Crs_EditCourses ,NULL}, [ActEdiCrs ] = { 555,-1,TabUnk,ActSeeCrs , 0, 0,0x3C6, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Crs_EditCourses ,NULL},
[ActReqCrs ] = {1053,-1,TabUnk,ActSeeCrs , 0, 0,0x3C6, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,Crs_ReceiveFormReqCrs ,Crs_ContEditAfterChgCrs ,NULL}, [ActReqCrs ] = {1053,-1,TabUnk,ActSeeCrs , 0, 0,0x3C6, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,Crs_ReceiveFormReqCrs ,Crs_ContEditAfterChgCrs ,NULL},
@ -435,8 +435,8 @@ const struct Act_Actions ActLst_Actions[ActLst_NUM_ACTIONS] =
[ActEdiPrg ] = {1926, 1,TabCrs,ActSeePrg ,0x220,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Prg_EditCourseProgram ,NULL}, [ActEdiPrg ] = {1926, 1,TabCrs,ActSeePrg ,0x220,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Prg_EditCourseProgram ,NULL},
[ActSeePrgItm ] = {1927,-1,TabUnk,ActSeePrg ,0x220,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Prg_ViewItemAfterEdit ,NULL}, [ActSeePrgItm ] = {1927,-1,TabUnk,ActSeePrg ,0x220,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Prg_ViewItemAfterEdit ,NULL},
[ActFrmChgPrgItm ] = {1823,-1,TabUnk,ActSeePrg ,0x220,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Prg_RequestChangeItem ,NULL}, [ActFrmChgPrgItm ] = {1823,-1,TabUnk,ActSeePrg ,0x220,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Prg_ReqChangeItem ,NULL},
[ActFrmNewPrgItm ] = {1822,-1,TabUnk,ActSeePrg ,0x220,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Prg_RequestCreateItem ,NULL}, [ActFrmNewPrgItm ] = {1822,-1,TabUnk,ActSeePrg ,0x220,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Prg_ReqCreateItem ,NULL},
[ActChgPrgItm ] = {1826,-1,TabUnk,ActSeePrg ,0x220,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Prg_ReceiveFormChgItem ,NULL}, [ActChgPrgItm ] = {1826,-1,TabUnk,ActSeePrg ,0x220,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Prg_ReceiveFormChgItem ,NULL},
[ActNewPrgItm ] = {1825,-1,TabUnk,ActSeePrg ,0x220,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Prg_ReceiveFormNewItem ,NULL}, [ActNewPrgItm ] = {1825,-1,TabUnk,ActSeePrg ,0x220,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Prg_ReceiveFormNewItem ,NULL},
[ActReqRemPrgItm ] = {1827,-1,TabUnk,ActSeePrg ,0x220,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Prg_ReqRemItem ,NULL}, [ActReqRemPrgItm ] = {1827,-1,TabUnk,ActSeePrg ,0x220,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Prg_ReqRemItem ,NULL},
@ -591,15 +591,15 @@ const struct Act_Actions ActLst_Actions[ActLst_NUM_ACTIONS] =
[ActSeeAsg ] = { 801, 0,TabAss,ActSeeAsg ,0x238,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Asg_SeeAssignments ,"edit" }, [ActSeeAsg ] = { 801, 0,TabAss,ActSeeAsg ,0x238,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Asg_SeeAssignments ,"edit" },
[ActSeePrj ] = {1674, 1,TabAss,ActSeePrj ,0x238,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Prj_SeeProjects ,"file-invoice" }, [ActSeePrj ] = {1674, 1,TabAss,ActSeePrj ,0x238,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Prj_SeeProjects ,"file-invoice" },
[ActSeeAllCfe ] = { 85, 2,TabAss,ActSeeAllCfe ,0x3F8,0x3C7, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Cfe_ListCallsForExamsSee ,"bullhorn" }, [ActSeeAllCfe ] = { 85, 2,TabAss,ActSeeAllCfe ,0x3F8,0x3C7, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Cfe_ListCallsForExamsSee ,"bullhorn" },
[ActEdiTstQst ] = { 104, 3,TabAss,ActEdiTstQst ,0x220,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,Dat_SetIniEndDatesToPastAndNow ,Qst_RequestEditQsts ,"clipboard-question" }, [ActEdiTstQst ] = { 104, 3,TabAss,ActEdiTstQst ,0x220,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,Dat_SetIniEndDatesToPastAndNow ,Qst_ReqEditQsts ,"clipboard-question" },
[ActReqTst ] = { 103, 4,TabAss,ActReqTst ,0x238,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Tst_RequestTest ,"check" }, [ActReqTst ] = { 103, 4,TabAss,ActReqTst ,0x238,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Tst_ReqTest ,"check" },
[ActSeeAllExa ] = {1848, 5,TabAss,ActSeeAllExa ,0x238,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Exa_SeeAllExams ,"file-signature" }, [ActSeeAllExa ] = {1848, 5,TabAss,ActSeeAllExa ,0x238,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Exa_SeeAllExams ,"file-signature" },
[ActSeeAllGam ] = {1649, 6,TabAss,ActSeeAllGam ,0x238,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Gam_SeeAllGames ,"gamepad" }, [ActSeeAllGam ] = {1649, 6,TabAss,ActSeeAllGam ,0x238,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Gam_SeeAllGames ,"gamepad" },
[ActSeeAllRub ] = {1951, 7,TabAss,ActSeeAllRub ,0x230,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Rub_SeeAllRubrics ,"tasks" }, [ActSeeAllRub ] = {1951, 7,TabAss,ActSeeAllRub ,0x230,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Rub_SeeAllRubrics ,"tasks" },
// Actions not in menu: // Actions not in menu:
[ActFrmNewAsg ] = { 812,-1,TabUnk,ActSeeAsg ,0x220,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Asg_RequestCreatOrEditAsg ,NULL}, [ActFrmNewAsg ] = { 812,-1,TabUnk,ActSeeAsg ,0x220,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Asg_ReqCreatOrEditAsg ,NULL},
[ActEdiOneAsg ] = { 814,-1,TabUnk,ActSeeAsg ,0x220,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Asg_RequestCreatOrEditAsg ,NULL}, [ActEdiOneAsg ] = { 814,-1,TabUnk,ActSeeAsg ,0x220,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Asg_ReqCreatOrEditAsg ,NULL},
[ActSeeOneAsg ] = {1942,-1,TabUnk,ActSeeAsg ,0x3F8,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Asg_SeeOneAssignment ,NULL}, [ActSeeOneAsg ] = {1942,-1,TabUnk,ActSeeAsg ,0x3F8,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Asg_SeeOneAssignment ,NULL},
[ActPrnOneAsg ] = {1637,-1,TabUnk,ActSeeAsg ,0x3F8,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_NEW_TAB,NULL ,Asg_PrintOneAssignment ,NULL}, [ActPrnOneAsg ] = {1637,-1,TabUnk,ActSeeAsg ,0x3F8,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_NEW_TAB,NULL ,Asg_PrintOneAssignment ,NULL},
[ActNewAsg ] = { 803,-1,TabUnk,ActSeeAsg ,0x220,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Asg_ReceiveFormAssignment ,NULL}, [ActNewAsg ] = { 803,-1,TabUnk,ActSeeAsg ,0x220,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Asg_ReceiveFormAssignment ,NULL},
@ -618,8 +618,8 @@ const struct Act_Actions ActLst_Actions[ActLst_NUM_ACTIONS] =
[ActReqUnlAllPrj ] = {1776,-1,TabUnk,ActSeePrj ,0x220,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Prj_ReqUnloSelectedPrjsEdition ,NULL}, [ActReqUnlAllPrj ] = {1776,-1,TabUnk,ActSeePrj ,0x220,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Prj_ReqUnloSelectedPrjsEdition ,NULL},
[ActLckAllPrj ] = {1777,-1,TabUnk,ActSeePrj ,0x220,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Prj_LockSelectedPrjsEdition ,NULL}, [ActLckAllPrj ] = {1777,-1,TabUnk,ActSeePrj ,0x220,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Prj_LockSelectedPrjsEdition ,NULL},
[ActUnlAllPrj ] = {1778,-1,TabUnk,ActSeePrj ,0x220,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Prj_UnloSelectedPrjsEdition ,NULL}, [ActUnlAllPrj ] = {1778,-1,TabUnk,ActSeePrj ,0x220,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Prj_UnloSelectedPrjsEdition ,NULL},
[ActFrmNewPrj ] = {1675,-1,TabUnk,ActSeePrj ,0x230,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Prj_RequestCreatePrj ,NULL}, [ActFrmNewPrj ] = {1675,-1,TabUnk,ActSeePrj ,0x230,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Prj_ReqCreatePrj ,NULL},
[ActEdiOnePrj ] = {1676,-1,TabUnk,ActSeePrj ,0x230,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Prj_RequestEditPrj ,NULL}, [ActEdiOnePrj ] = {1676,-1,TabUnk,ActSeePrj ,0x230,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Prj_ReqEditPrj ,NULL},
[ActSeeOnePrj ] = {1949,-1,TabUnk,ActSeePrj ,0x238,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Brw_ShowFileBrowserOrWorks ,NULL}, [ActSeeOnePrj ] = {1949,-1,TabUnk,ActSeePrj ,0x238,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Brw_ShowFileBrowserOrWorks ,NULL},
[ActPrnOnePrj ] = {1677,-1,TabUnk,ActSeePrj ,0x3F8,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_NEW_TAB,NULL ,Prj_PrintOneProject ,NULL}, [ActPrnOnePrj ] = {1677,-1,TabUnk,ActSeePrj ,0x3F8,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_NEW_TAB,NULL ,Prj_PrintOneProject ,NULL},
[ActNewPrj ] = {1678,-1,TabUnk,ActSeePrj ,0x230,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Prj_ReceiveFormProject ,NULL}, [ActNewPrj ] = {1678,-1,TabUnk,ActSeePrj ,0x230,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Prj_ReceiveFormProject ,NULL},
@ -690,7 +690,7 @@ const struct Act_Actions ActLst_Actions[ActLst_NUM_ACTIONS] =
[ActEdiCfe ] = { 91,-1,TabUnk,ActSeeAllCfe ,0x220,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Cfe_PutFrmEditACallForExam ,NULL}, [ActEdiCfe ] = { 91,-1,TabUnk,ActSeeAllCfe ,0x220,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Cfe_PutFrmEditACallForExam ,NULL},
[ActRcvCfe ] = { 110,-1,TabUnk,ActSeeAllCfe ,0x220,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,Cfe_ReceiveCallForExam1 ,Cfe_ReceiveCallForExam2 ,NULL}, [ActRcvCfe ] = { 110,-1,TabUnk,ActSeeAllCfe ,0x220,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,Cfe_ReceiveCallForExam1 ,Cfe_ReceiveCallForExam2 ,NULL},
[ActPrnCfe ] = { 179,-1,TabUnk,ActSeeAllCfe ,0x3F8,0x3C7, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_NEW_TAB,NULL ,Cfe_PrintCallForExam ,NULL}, [ActPrnCfe ] = { 179,-1,TabUnk,ActSeeAllCfe ,0x3F8,0x3C7, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_NEW_TAB,NULL ,Cfe_PrintCallForExam ,NULL},
[ActReqRemCfe ] = {1619,-1,TabUnk,ActSeeAllCfe ,0x220,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Cfe_ReqRemoveCallForExam ,NULL}, [ActReqRemCfe ] = {1619,-1,TabUnk,ActSeeAllCfe ,0x220,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Cfe_ReqRemCallForExam ,NULL},
[ActRemCfe ] = { 187,-1,TabUnk,ActSeeAllCfe ,0x220,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,Cfe_RemoveCallForExam1 ,Cfe_RemoveCallForExam2 ,NULL}, [ActRemCfe ] = { 187,-1,TabUnk,ActSeeAllCfe ,0x220,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,Cfe_RemoveCallForExam1 ,Cfe_RemoveCallForExam2 ,NULL},
[ActHidCfe ] = {1620,-1,TabUnk,ActSeeAllCfe ,0x220,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,Cfe_HideCallForExam ,Cfe_ListCallsForExamsEdit ,NULL}, [ActHidCfe ] = {1620,-1,TabUnk,ActSeeAllCfe ,0x220,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,Cfe_HideCallForExam ,Cfe_ListCallsForExamsEdit ,NULL},
[ActUnhCfe ] = {1621,-1,TabUnk,ActSeeAllCfe ,0x220,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,Cfe_UnhideCallForExam ,Cfe_ListCallsForExamsEdit ,NULL}, [ActUnhCfe ] = {1621,-1,TabUnk,ActSeeAllCfe ,0x220,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,Cfe_UnhideCallForExam ,Cfe_ListCallsForExamsEdit ,NULL},
@ -701,9 +701,9 @@ const struct Act_Actions ActLst_Actions[ActLst_NUM_ACTIONS] =
[ActImpTstQst ] = {1008,-1,TabUnk,ActEdiTstQst ,0x220,0x200, 0, 0, 0, 0, 0,Act_CONT_DATA,Act_BRW_1ST_TAB,NULL ,QstImp_ImpQstsFromXML ,NULL}, [ActImpTstQst ] = {1008,-1,TabUnk,ActEdiTstQst ,0x220,0x200, 0, 0, 0, 0, 0,Act_CONT_DATA,Act_BRW_1ST_TAB,NULL ,QstImp_ImpQstsFromXML ,NULL},
[ActLstTstQst ] = { 132,-1,TabUnk,ActEdiTstQst ,0x220,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Qst_ListQuestionsToEdit ,NULL}, [ActLstTstQst ] = { 132,-1,TabUnk,ActEdiTstQst ,0x220,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Qst_ListQuestionsToEdit ,NULL},
[ActRcvTstQst ] = { 126,-1,TabUnk,ActEdiTstQst ,0x220,0x200, 0, 0, 0, 0, 0,Act_CONT_DATA,Act_BRW_1ST_TAB,NULL ,Qst_ReceiveQst ,NULL}, [ActRcvTstQst ] = { 126,-1,TabUnk,ActEdiTstQst ,0x220,0x200, 0, 0, 0, 0, 0,Act_CONT_DATA,Act_BRW_1ST_TAB,NULL ,Qst_ReceiveQst ,NULL},
[ActReqRemSevTstQst ] = {1835,-1,TabUnk,ActEdiTstQst ,0x220,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Qst_RequestRemoveSelectedQsts ,NULL}, [ActReqRemSevTstQst ] = {1835,-1,TabUnk,ActEdiTstQst ,0x220,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Qst_ReqRemSelectedQsts ,NULL},
[ActRemSevTstQst ] = {1836,-1,TabUnk,ActEdiTstQst ,0x220,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Qst_RemoveSelectedQsts ,NULL}, [ActRemSevTstQst ] = {1836,-1,TabUnk,ActEdiTstQst ,0x220,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Qst_RemoveSelectedQsts ,NULL},
[ActReqRemOneTstQst ] = {1523,-1,TabUnk,ActEdiTstQst ,0x220,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Qst_RequestRemoveOneQst ,NULL}, [ActReqRemOneTstQst ] = {1523,-1,TabUnk,ActEdiTstQst ,0x220,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Qst_ReqRemOneQst ,NULL},
[ActRemOneTstQst ] = { 133,-1,TabUnk,ActEdiTstQst ,0x220,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Qst_RemoveOneQst ,NULL}, [ActRemOneTstQst ] = { 133,-1,TabUnk,ActEdiTstQst ,0x220,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Qst_RemoveOneQst ,NULL},
[ActChgShfTstQst ] = { 455,-1,TabUnk,ActEdiTstQst ,0x220,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Qst_ChangeShuffleQst ,NULL}, [ActChgShfTstQst ] = { 455,-1,TabUnk,ActEdiTstQst ,0x220,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Qst_ChangeShuffleQst ,NULL},
@ -728,8 +728,8 @@ const struct Act_Actions ActLst_Actions[ActLst_NUM_ACTIONS] =
[ActSeeExa ] = {1849,-1,TabUnk,ActSeeAllExa ,0x238,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Exa_SeeOneExam ,NULL}, [ActSeeExa ] = {1849,-1,TabUnk,ActSeeAllExa ,0x238,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Exa_SeeOneExam ,NULL},
[ActFrmNewExa ] = {1877,-1,TabUnk,ActSeeAllExa ,0x238,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Exa_RequestCreatOrEditExam ,NULL}, [ActFrmNewExa ] = {1877,-1,TabUnk,ActSeeAllExa ,0x238,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Exa_ReqCreatOrEditExam ,NULL},
[ActEdiOneExa ] = {1878,-1,TabUnk,ActSeeAllExa ,0x238,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Exa_RequestCreatOrEditExam ,NULL}, [ActEdiOneExa ] = {1878,-1,TabUnk,ActSeeAllExa ,0x238,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Exa_ReqCreatOrEditExam ,NULL},
[ActNewExa ] = {1879,-1,TabUnk,ActSeeAllExa ,0x238,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Exa_ReceiveFormExam ,NULL}, [ActNewExa ] = {1879,-1,TabUnk,ActSeeAllExa ,0x238,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Exa_ReceiveFormExam ,NULL},
[ActChgExa ] = {1880,-1,TabUnk,ActSeeAllExa ,0x238,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Exa_ReceiveFormExam ,NULL}, [ActChgExa ] = {1880,-1,TabUnk,ActSeeAllExa ,0x238,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Exa_ReceiveFormExam ,NULL},
[ActReqRemExa ] = {1881,-1,TabUnk,ActSeeAllExa ,0x238,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Exa_AskRemExam ,NULL}, [ActReqRemExa ] = {1881,-1,TabUnk,ActSeeAllExa ,0x238,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Exa_AskRemExam ,NULL},
@ -738,9 +738,9 @@ const struct Act_Actions ActLst_Actions[ActLst_NUM_ACTIONS] =
[ActUnhExa ] = {1884,-1,TabUnk,ActSeeAllExa ,0x238,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Exa_UnhideExam ,NULL}, [ActUnhExa ] = {1884,-1,TabUnk,ActSeeAllExa ,0x238,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Exa_UnhideExam ,NULL},
[ActReqLnkExa ] = {1936,-1,TabUnk,ActSeeAllExa ,0x220,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,ExaRsc_GetLinkToExam ,NULL}, [ActReqLnkExa ] = {1936,-1,TabUnk,ActSeeAllExa ,0x220,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,ExaRsc_GetLinkToExam ,NULL},
[ActFrmNewExaSet ] = {1892,-1,TabUnk,ActSeeAllExa ,0x238,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,Dat_SetIniEndDatesToPastAndNow ,ExaSet_RequestCreatOrEditSet ,NULL}, [ActFrmNewExaSet ] = {1892,-1,TabUnk,ActSeeAllExa ,0x238,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,Dat_SetIniEndDatesToPastAndNow ,ExaSet_ReqCreatOrEditSet ,NULL},
[ActNewExaSet ] = {1898,-1,TabUnk,ActSeeAllExa ,0x238,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,ExaSet_ReceiveFormSet ,NULL}, [ActNewExaSet ] = {1898,-1,TabUnk,ActSeeAllExa ,0x238,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,ExaSet_ReceiveFormSet ,NULL},
[ActReqRemExaSet ] = {1893,-1,TabUnk,ActSeeAllExa ,0x238,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,ExaSet_RequestRemoveSet ,NULL}, [ActReqRemExaSet ] = {1893,-1,TabUnk,ActSeeAllExa ,0x238,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,ExaSet_ReqRemSet ,NULL},
[ActRemExaSet ] = {1894,-1,TabUnk,ActSeeAllExa ,0x238,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,ExaSet_RemoveSet ,NULL}, [ActRemExaSet ] = {1894,-1,TabUnk,ActSeeAllExa ,0x238,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,ExaSet_RemoveSet ,NULL},
[ActUp_ExaSet ] = {1895,-1,TabUnk,ActSeeAllExa ,0x238,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,ExaSet_MoveUpSet ,NULL}, [ActUp_ExaSet ] = {1895,-1,TabUnk,ActSeeAllExa ,0x238,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,ExaSet_MoveUpSet ,NULL},
[ActDwnExaSet ] = {1896,-1,TabUnk,ActSeeAllExa ,0x238,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,ExaSet_MoveDownSet ,NULL}, [ActDwnExaSet ] = {1896,-1,TabUnk,ActSeeAllExa ,0x238,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,ExaSet_MoveDownSet ,NULL},
@ -750,16 +750,16 @@ const struct Act_Actions ActLst_Actions[ActLst_NUM_ACTIONS] =
[ActReqAddQstExaSet ] = {1885,-1,TabUnk,ActSeeAllExa ,0x238,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,Dat_SetIniEndDatesToPastAndNow ,ExaSet_ReqSelectQstsToAddToSet ,NULL}, [ActReqAddQstExaSet ] = {1885,-1,TabUnk,ActSeeAllExa ,0x238,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,Dat_SetIniEndDatesToPastAndNow ,ExaSet_ReqSelectQstsToAddToSet ,NULL},
[ActLstTstQstForSet ] = {1886,-1,TabUnk,ActSeeAllExa ,0x238,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,ExaSet_ListQstsToAddToSet ,NULL}, [ActLstTstQstForSet ] = {1886,-1,TabUnk,ActSeeAllExa ,0x238,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,ExaSet_ListQstsToAddToSet ,NULL},
[ActAddQstToExa ] = {1887,-1,TabUnk,ActSeeAllExa ,0x238,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,ExaSet_AddQstsToSet ,NULL}, [ActAddQstToExa ] = {1887,-1,TabUnk,ActSeeAllExa ,0x238,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,ExaSet_AddQstsToSet ,NULL},
[ActReqRemSetQst ] = {1888,-1,TabUnk,ActSeeAllExa ,0x238,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,ExaSet_RequestRemoveQstFromSet ,NULL}, [ActReqRemSetQst ] = {1888,-1,TabUnk,ActSeeAllExa ,0x238,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,ExaSet_ReqRemQstFromSet ,NULL},
[ActRemExaQst ] = {1889,-1,TabUnk,ActSeeAllExa ,0x238,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,ExaSet_RemoveQstFromSet ,NULL}, [ActRemExaQst ] = {1889,-1,TabUnk,ActSeeAllExa ,0x238,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,ExaSet_RemoveQstFromSet ,NULL},
[ActValSetQst ] = {1909,-1,TabUnk,ActSeeAllExa ,0x238,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,ExaSet_ValidateQst ,NULL}, [ActValSetQst ] = {1909,-1,TabUnk,ActSeeAllExa ,0x238,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,ExaSet_ValidateQst ,NULL},
[ActInvSetQst ] = {1910,-1,TabUnk,ActSeeAllExa ,0x238,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,ExaSet_InvalidateQst ,NULL}, [ActInvSetQst ] = {1910,-1,TabUnk,ActSeeAllExa ,0x238,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,ExaSet_InvalidateQst ,NULL},
[ActReqNewExaSes ] = {1852,-1,TabUnk,ActSeeAllExa ,0x230,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,ExaSes_RequestCreatOrEditSes ,NULL}, [ActReqNewExaSes ] = {1852,-1,TabUnk,ActSeeAllExa ,0x230,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,ExaSes_ReqCreatOrEditSes ,NULL},
[ActEdiOneExaSes ] = {1902,-1,TabUnk,ActSeeAllExa ,0x238,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,ExaSes_RequestCreatOrEditSes ,NULL}, [ActEdiOneExaSes ] = {1902,-1,TabUnk,ActSeeAllExa ,0x238,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,ExaSes_ReqCreatOrEditSes ,NULL},
[ActNewExaSes ] = {1853,-1,TabUnk,ActSeeAllExa ,0x230,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,ExaSes_ReceiveFormSession ,NULL}, [ActNewExaSes ] = {1853,-1,TabUnk,ActSeeAllExa ,0x230,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,ExaSes_ReceiveFormSession ,NULL},
[ActChgExaSes ] = {1903,-1,TabUnk,ActSeeAllExa ,0x238,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,ExaSes_ReceiveFormSession ,NULL}, [ActChgExaSes ] = {1903,-1,TabUnk,ActSeeAllExa ,0x238,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,ExaSes_ReceiveFormSession ,NULL},
[ActReqRemExaSes ] = {1850,-1,TabUnk,ActSeeAllExa ,0x230,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,ExaSes_RequestRemoveSession ,NULL}, [ActReqRemExaSes ] = {1850,-1,TabUnk,ActSeeAllExa ,0x230,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,ExaSes_ReqRemSession ,NULL},
[ActRemExaSes ] = {1851,-1,TabUnk,ActSeeAllExa ,0x230,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,ExaSes_RemoveSession ,NULL}, [ActRemExaSes ] = {1851,-1,TabUnk,ActSeeAllExa ,0x230,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,ExaSes_RemoveSession ,NULL},
[ActHidExaSes ] = {1900,-1,TabUnk,ActSeeAllExa ,0x238,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,ExaSes_HideSession ,NULL}, [ActHidExaSes ] = {1900,-1,TabUnk,ActSeeAllExa ,0x238,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,ExaSes_HideSession ,NULL},
[ActUnhExaSes ] = {1901,-1,TabUnk,ActSeeAllExa ,0x238,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,ExaSes_UnhideSession ,NULL}, [ActUnhExaSes ] = {1901,-1,TabUnk,ActSeeAllExa ,0x238,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,ExaSes_UnhideSession ,NULL},
@ -783,11 +783,11 @@ const struct Act_Actions ActLst_Actions[ActLst_NUM_ACTIONS] =
[ActSeeGam ] = {1650,-1,TabUnk,ActSeeAllGam ,0x238,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Gam_SeeOneGame ,NULL}, [ActSeeGam ] = {1650,-1,TabUnk,ActSeeAllGam ,0x238,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Gam_SeeOneGame ,NULL},
[ActReqRemMch ] = {1783,-1,TabUnk,ActSeeAllGam ,0x230,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Mch_RequestRemoveMatch ,NULL}, [ActReqRemMch ] = {1783,-1,TabUnk,ActSeeAllGam ,0x230,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Mch_ReqRemMatch ,NULL},
[ActRemMch ] = {1784,-1,TabUnk,ActSeeAllGam ,0x230,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Mch_RemoveMatch ,NULL}, [ActRemMch ] = {1784,-1,TabUnk,ActSeeAllGam ,0x230,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Mch_RemoveMatch ,NULL},
[ActEdiMch ] = {1913,-1,TabUnk,ActSeeAllGam ,0x230,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Mch_EditMatch ,NULL}, [ActEdiMch ] = {1913,-1,TabUnk,ActSeeAllGam ,0x230,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Mch_EditMatch ,NULL},
[ActChgMch ] = {1914,-1,TabUnk,ActSeeAllGam ,0x230,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Mch_ChangeMatch ,NULL}, [ActChgMch ] = {1914,-1,TabUnk,ActSeeAllGam ,0x230,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Mch_ChangeMatch ,NULL},
[ActReqNewMch ] = {1670,-1,TabUnk,ActSeeAllGam ,0x230,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Gam_RequestNewMatch ,NULL}, [ActReqNewMch ] = {1670,-1,TabUnk,ActSeeAllGam ,0x230,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Gam_ReqNewMatch ,NULL},
[ActNewMch ] = {1671,-1,TabUnk,ActSeeAllGam ,0x230,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_NEW_TAB,Mch_CreateNewMatch ,Mch_ResumeMatch ,NULL}, [ActNewMch ] = {1671,-1,TabUnk,ActSeeAllGam ,0x230,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_NEW_TAB,Mch_CreateNewMatch ,Mch_ResumeMatch ,NULL},
[ActResMch ] = {1785,-1,TabUnk,ActSeeAllGam ,0x230,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_NEW_TAB,Mch_GetMatchBeingPlayed ,Mch_ResumeMatch ,NULL}, [ActResMch ] = {1785,-1,TabUnk,ActSeeAllGam ,0x230,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_NEW_TAB,Mch_GetMatchBeingPlayed ,Mch_ResumeMatch ,NULL},
[ActBckMch ] = {1790,-1,TabUnk,ActSeeAllGam ,0x230,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_2ND_TAB,Mch_GetMatchBeingPlayed ,Mch_BackMatch ,NULL}, [ActBckMch ] = {1790,-1,TabUnk,ActSeeAllGam ,0x230,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_2ND_TAB,Mch_GetMatchBeingPlayed ,Mch_BackMatch ,NULL},
@ -819,8 +819,8 @@ const struct Act_Actions ActLst_Actions[ActLst_NUM_ACTIONS] =
[ActLstOneGam ] = {1912,-1,TabUnk,ActSeeAllGam ,0x238,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Gam_ListGame ,NULL}, [ActLstOneGam ] = {1912,-1,TabUnk,ActSeeAllGam ,0x238,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Gam_ListGame ,NULL},
[ActFrmNewGam ] = {1652,-1,TabUnk,ActSeeAllGam ,0x238,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Gam_RequestCreatOrEditGame ,NULL}, [ActFrmNewGam ] = {1652,-1,TabUnk,ActSeeAllGam ,0x238,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Gam_ReqCreatOrEditGame ,NULL},
[ActEdiOneGam ] = {1653,-1,TabUnk,ActSeeAllGam ,0x238,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Gam_RequestCreatOrEditGame ,NULL}, [ActEdiOneGam ] = {1653,-1,TabUnk,ActSeeAllGam ,0x238,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Gam_ReqCreatOrEditGame ,NULL},
[ActNewGam ] = {1654,-1,TabUnk,ActSeeAllGam ,0x238,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Gam_ReceiveFormGame ,NULL}, [ActNewGam ] = {1654,-1,TabUnk,ActSeeAllGam ,0x238,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Gam_ReceiveFormGame ,NULL},
[ActChgGam ] = {1655,-1,TabUnk,ActSeeAllGam ,0x238,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Gam_ReceiveFormGame ,NULL}, [ActChgGam ] = {1655,-1,TabUnk,ActSeeAllGam ,0x238,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Gam_ReceiveFormGame ,NULL},
[ActReqRemGam ] = {1656,-1,TabUnk,ActSeeAllGam ,0x238,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Gam_AskRemGame ,NULL}, [ActReqRemGam ] = {1656,-1,TabUnk,ActSeeAllGam ,0x238,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Gam_AskRemGame ,NULL},
@ -830,20 +830,29 @@ const struct Act_Actions ActLst_Actions[ActLst_NUM_ACTIONS] =
[ActAddOneGamQst ] = {1662,-1,TabUnk,ActSeeAllGam ,0x238,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,Dat_SetIniEndDatesToPastAndNow ,Gam_ReqSelectQstsToAddToGame ,NULL}, [ActAddOneGamQst ] = {1662,-1,TabUnk,ActSeeAllGam ,0x238,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,Dat_SetIniEndDatesToPastAndNow ,Gam_ReqSelectQstsToAddToGame ,NULL},
[ActGamLstTstQst ] = {1666,-1,TabUnk,ActSeeAllGam ,0x238,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Gam_ListQstsToAddToGame ,NULL}, [ActGamLstTstQst ] = {1666,-1,TabUnk,ActSeeAllGam ,0x238,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Gam_ListQstsToAddToGame ,NULL},
[ActAddTstQstToGam ] = {1667,-1,TabUnk,ActSeeAllGam ,0x238,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Gam_AddQstsToGame ,NULL}, [ActAddTstQstToGam ] = {1667,-1,TabUnk,ActSeeAllGam ,0x238,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Gam_AddQstsToGame ,NULL},
[ActReqRemGamQst ] = {1664,-1,TabUnk,ActSeeAllGam ,0x238,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Gam_RequestRemoveQstFromGame ,NULL}, [ActReqRemGamQst ] = {1664,-1,TabUnk,ActSeeAllGam ,0x238,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Gam_ReqRemQstFromGame ,NULL},
[ActRemGamQst ] = {1665,-1,TabUnk,ActSeeAllGam ,0x238,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Gam_RemoveQstFromGame ,NULL}, [ActRemGamQst ] = {1665,-1,TabUnk,ActSeeAllGam ,0x238,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Gam_RemoveQstFromGame ,NULL},
[ActUp_GamQst ] = {1668,-1,TabUnk,ActSeeAllGam ,0x238,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Gam_MoveUpQst ,NULL}, [ActUp_GamQst ] = {1668,-1,TabUnk,ActSeeAllGam ,0x238,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Gam_MoveUpQst ,NULL},
[ActDwnGamQst ] = {1669,-1,TabUnk,ActSeeAllGam ,0x238,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Gam_MoveDownQst ,NULL}, [ActDwnGamQst ] = {1669,-1,TabUnk,ActSeeAllGam ,0x238,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Gam_MoveDownQst ,NULL},
[ActReqLnkGam ] = {1935,-1,TabUnk,ActSeeAllGam ,0x220,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,GamRsc_GetLinkToGame ,NULL}, [ActReqLnkGam ] = {1935,-1,TabUnk,ActSeeAllGam ,0x220,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,GamRsc_GetLinkToGame ,NULL},
[ActSeeRub ] = {1952,-1,TabUnk,ActSeeAllRub ,0x238,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Rub_SeeOneRubric ,NULL}, [ActSeeRub ] = {1952,-1,TabUnk,ActSeeAllRub ,0x238,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Rub_SeeOneRubric ,NULL},
[ActFrmNewRub ] = {1953,-1,TabUnk,ActSeeAllRub ,0x238,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Rub_RequestCreatOrEditRubric ,NULL}, [ActFrmNewRub ] = {1953,-1,TabUnk,ActSeeAllRub ,0x238,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Rub_ReqCreatOrEditRubric ,NULL},
[ActEdiOneRub ] = {1954,-1,TabUnk,ActSeeAllRub ,0x238,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Rub_RequestCreatOrEditRubric ,NULL}, [ActEdiOneRub ] = {1954,-1,TabUnk,ActSeeAllRub ,0x238,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Rub_ReqCreatOrEditRubric ,NULL},
[ActNewRub ] = {1955,-1,TabUnk,ActSeeAllRub ,0x238,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Rub_ReceiveFormRubric ,NULL}, [ActNewRub ] = {1955,-1,TabUnk,ActSeeAllRub ,0x238,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Rub_ReceiveFormRubric ,NULL},
[ActChgRub ] = {1956,-1,TabUnk,ActSeeAllRub ,0x238,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Rub_ReceiveFormRubric ,NULL}, [ActChgRub ] = {1956,-1,TabUnk,ActSeeAllRub ,0x238,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Rub_ReceiveFormRubric ,NULL},
[ActReqRemRub ] = {1957,-1,TabUnk,ActSeeAllRub ,0x238,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Rub_AskRemRubric ,NULL}, [ActReqRemRub ] = {1957,-1,TabUnk,ActSeeAllRub ,0x238,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Rub_AskRemRubric ,NULL},
[ActRemRub ] = {1958,-1,TabUnk,ActSeeAllRub ,0x238,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Rub_RemoveRubric ,NULL}, [ActRemRub ] = {1958,-1,TabUnk,ActSeeAllRub ,0x238,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Rub_RemoveRubric ,NULL},
[ActFrmNewRubCri ] = {1959,-1,TabUnk,ActSeeAllRub ,0x238,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,RubCri_RequestCreatOrEditCri ,NULL},
[ActFrmNewRubCri ] = {1959,-1,TabUnk,ActSeeAllRub ,0x238,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,RubCri_ReqCreatOrEditCriterion ,NULL},
[ActNewRubCri ] = {1960,-1,TabUnk,ActSeeAllRub ,0x238,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,RubCri_ReceiveFormCriterion ,NULL},
[ActReqRemRubCri ] = {1961,-1,TabUnk,ActSeeAllRub ,0x238,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,RubCri_ReqRemCriterion ,NULL},
[ActRemRubCri ] = {1962,-1,TabUnk,ActSeeAllRub ,0x238,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,RubCri_RemoveCriterion ,NULL},
[ActUp_RubCri ] = {1963,-1,TabUnk,ActSeeAllRub ,0x238,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,RubCri_MoveUpCriterion ,NULL},
[ActDwnRubCri ] = {1964,-1,TabUnk,ActSeeAllRub ,0x238,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,RubCri_MoveDownCriterion ,NULL},
[ActChgTitRubCri ] = {1965,-1,TabUnk,ActSeeAllRub ,0x238,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,RubCri_ChangeCriterionTitle ,NULL},
[ActChgMinRubCri ] = {1966,-1,TabUnk,ActSeeAllRub ,0x238,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,RubCri_ChangeMinValueCriterion ,NULL},
[ActChgMaxRubCri ] = {1967,-1,TabUnk,ActSeeAllRub ,0x238,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,RubCri_ChangeMaxValueCriterion ,NULL},
// TabFil ****************************************************************** // TabFil ******************************************************************
// Actions in menu: // Actions in menu:
@ -1412,8 +1421,8 @@ const struct Act_Actions ActLst_Actions[ActLst_NUM_ACTIONS] =
[ActPrnLstMyAtt ] = {1474,-1,TabUnk,ActSeeAtt ,0x008, 0, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_NEW_TAB,NULL ,Att_PrintMyAttendanceCrs ,NULL}, [ActPrnLstMyAtt ] = {1474,-1,TabUnk,ActSeeAtt ,0x008, 0, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_NEW_TAB,NULL ,Att_PrintMyAttendanceCrs ,NULL},
[ActSeeLstUsrAtt ] = {1074,-1,TabUnk,ActSeeAtt ,0x230,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Att_ListUsrsAttendanceCrs ,NULL}, [ActSeeLstUsrAtt ] = {1074,-1,TabUnk,ActSeeAtt ,0x230,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Att_ListUsrsAttendanceCrs ,NULL},
[ActPrnLstUsrAtt ] = {1075,-1,TabUnk,ActSeeAtt ,0x230,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_NEW_TAB,NULL ,Att_PrintUsrsAttendanceCrs ,NULL}, [ActPrnLstUsrAtt ] = {1075,-1,TabUnk,ActSeeAtt ,0x230,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_NEW_TAB,NULL ,Att_PrintUsrsAttendanceCrs ,NULL},
[ActFrmNewAtt ] = {1063,-1,TabUnk,ActSeeAtt ,0x220,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Att_RequestCreatOrEditAttEvent ,NULL}, [ActFrmNewAtt ] = {1063,-1,TabUnk,ActSeeAtt ,0x220,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Att_ReqCreatOrEditAttEvent ,NULL},
[ActEdiOneAtt ] = {1064,-1,TabUnk,ActSeeAtt ,0x220,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Att_RequestCreatOrEditAttEvent ,NULL}, [ActEdiOneAtt ] = {1064,-1,TabUnk,ActSeeAtt ,0x220,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Att_ReqCreatOrEditAttEvent ,NULL},
[ActNewAtt ] = {1065,-1,TabUnk,ActSeeAtt ,0x220,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Att_ReceiveFormAttEvent ,NULL}, [ActNewAtt ] = {1065,-1,TabUnk,ActSeeAtt ,0x220,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Att_ReceiveFormAttEvent ,NULL},
[ActChgAtt ] = {1066,-1,TabUnk,ActSeeAtt ,0x220,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Att_ReceiveFormAttEvent ,NULL}, [ActChgAtt ] = {1066,-1,TabUnk,ActSeeAtt ,0x220,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Att_ReceiveFormAttEvent ,NULL},
[ActReqRemAtt ] = {1067,-1,TabUnk,ActSeeAtt ,0x220,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Att_AskRemAttEvent ,NULL}, [ActReqRemAtt ] = {1067,-1,TabUnk,ActSeeAtt ,0x220,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Att_AskRemAttEvent ,NULL},
@ -1451,9 +1460,9 @@ const struct Act_Actions ActLst_Actions[ActLst_NUM_ACTIONS] =
[ActUpdStdPho ] = {1439,-1,TabUnk,ActLstStd ,0x3E0,0x3C0,0x3C0,0x3C0,0x3C0,0x3C0,0x3C0,Act_CONT_NORM,Act_BRW_1ST_TAB,Pho_UpdateUsrPhoto1 ,Pho_UpdateUsrPhoto2 ,NULL}, [ActUpdStdPho ] = {1439,-1,TabUnk,ActLstStd ,0x3E0,0x3C0,0x3C0,0x3C0,0x3C0,0x3C0,0x3C0,Act_CONT_NORM,Act_BRW_1ST_TAB,Pho_UpdateUsrPhoto1 ,Pho_UpdateUsrPhoto2 ,NULL},
[ActUpdTchPho ] = {1440,-1,TabUnk,ActLstTch ,0x3E0,0x3C0,0x3C0,0x3C0,0x3C0,0x3C0,0x3C0,Act_CONT_NORM,Act_BRW_1ST_TAB,Pho_UpdateUsrPhoto1 ,Pho_UpdateUsrPhoto2 ,NULL}, [ActUpdTchPho ] = {1440,-1,TabUnk,ActLstTch ,0x3E0,0x3C0,0x3C0,0x3C0,0x3C0,0x3C0,0x3C0,Act_CONT_NORM,Act_BRW_1ST_TAB,Pho_UpdateUsrPhoto1 ,Pho_UpdateUsrPhoto2 ,NULL},
[ActReqRemOthPho ] = {1574,-1,TabUnk,ActLstOth ,0x3E0,0x3C0,0x3C0,0x3C0,0x3C0,0x3C0,0x3C0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Pho_ReqRemoveUsrPhoto ,NULL}, [ActReqRemOthPho ] = {1574,-1,TabUnk,ActLstOth ,0x3E0,0x3C0,0x3C0,0x3C0,0x3C0,0x3C0,0x3C0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Pho_ReqRemUsrPhoto ,NULL},
[ActReqRemStdPho ] = {1575,-1,TabUnk,ActLstStd ,0x3E0,0x3C0,0x3C0,0x3C0,0x3C0,0x3C0,0x3C0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Pho_ReqRemoveUsrPhoto ,NULL}, [ActReqRemStdPho ] = {1575,-1,TabUnk,ActLstStd ,0x3E0,0x3C0,0x3C0,0x3C0,0x3C0,0x3C0,0x3C0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Pho_ReqRemUsrPhoto ,NULL},
[ActReqRemTchPho ] = {1576,-1,TabUnk,ActLstTch ,0x3E0,0x3C0,0x3C0,0x3C0,0x3C0,0x3C0,0x3C0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Pho_ReqRemoveUsrPhoto ,NULL}, [ActReqRemTchPho ] = {1576,-1,TabUnk,ActLstTch ,0x3E0,0x3C0,0x3C0,0x3C0,0x3C0,0x3C0,0x3C0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Pho_ReqRemUsrPhoto ,NULL},
[ActRemOthPho ] = {1441,-1,TabUnk,ActLstOth ,0x3E0,0x3C0,0x3C0,0x3C0,0x3C0,0x3C0,0x3C0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Pho_RemoveUsrPhoto ,NULL}, [ActRemOthPho ] = {1441,-1,TabUnk,ActLstOth ,0x3E0,0x3C0,0x3C0,0x3C0,0x3C0,0x3C0,0x3C0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Pho_RemoveUsrPhoto ,NULL},
[ActRemStdPho ] = {1442,-1,TabUnk,ActLstStd ,0x3E0,0x3C0,0x3C0,0x3C0,0x3C0,0x3C0,0x3C0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Pho_RemoveUsrPhoto ,NULL}, [ActRemStdPho ] = {1442,-1,TabUnk,ActLstStd ,0x3E0,0x3C0,0x3C0,0x3C0,0x3C0,0x3C0,0x3C0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Pho_RemoveUsrPhoto ,NULL},
[ActRemTchPho ] = {1443,-1,TabUnk,ActLstTch ,0x3E0,0x3C0,0x3C0,0x3C0,0x3C0,0x3C0,0x3C0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Pho_RemoveUsrPhoto ,NULL}, [ActRemTchPho ] = {1443,-1,TabUnk,ActLstTch ,0x3E0,0x3C0,0x3C0,0x3C0,0x3C0,0x3C0,0x3C0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Pho_RemoveUsrPhoto ,NULL},
@ -1540,10 +1549,10 @@ const struct Act_Actions ActLst_Actions[ActLst_NUM_ACTIONS] =
[ActLstSimUsr ] = {1579,-1,TabUnk,ActLstOth ,0x200,0x200,0x200,0x200,0x200,0x200,0x200,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Dup_GetUsrCodAndListSimilarUsrs,NULL}, [ActLstSimUsr ] = {1579,-1,TabUnk,ActLstOth ,0x200,0x200,0x200,0x200,0x200,0x200,0x200,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Dup_GetUsrCodAndListSimilarUsrs,NULL},
[ActRemDupUsr ] = {1580,-1,TabUnk,ActLstOth ,0x200,0x200,0x200,0x200,0x200,0x200,0x200,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Dup_RemoveUsrFromListDupUsrs ,NULL}, [ActRemDupUsr ] = {1580,-1,TabUnk,ActLstOth ,0x200,0x200,0x200,0x200,0x200,0x200,0x200,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Dup_RemoveUsrFromListDupUsrs ,NULL},
[ActReqFolSevStd ] = {1756,-1,TabUnk,ActLstStd ,0x3F8,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Fol_RequestFollowStds ,NULL}, [ActReqFolSevStd ] = {1756,-1,TabUnk,ActLstStd ,0x3F8,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Fol_ReqFollowStds ,NULL},
[ActReqFolSevTch ] = {1757,-1,TabUnk,ActLstTch ,0x3F8,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Fol_RequestFollowTchs ,NULL}, [ActReqFolSevTch ] = {1757,-1,TabUnk,ActLstTch ,0x3F8,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Fol_ReqFollowTchs ,NULL},
[ActReqUnfSevStd ] = {1758,-1,TabUnk,ActLstStd ,0x3F8,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Fol_RequestUnfollowStds ,NULL}, [ActReqUnfSevStd ] = {1758,-1,TabUnk,ActLstStd ,0x3F8,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Fol_ReqUnfollowStds ,NULL},
[ActReqUnfSevTch ] = {1759,-1,TabUnk,ActLstTch ,0x3F8,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Fol_RequestUnfollowTchs ,NULL}, [ActReqUnfSevTch ] = {1759,-1,TabUnk,ActLstTch ,0x3F8,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Fol_ReqUnfollowTchs ,NULL},
[ActFolSevStd ] = {1760,-1,TabUnk,ActLstStd ,0x3F8,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Fol_FollowUsrs ,NULL}, [ActFolSevStd ] = {1760,-1,TabUnk,ActLstStd ,0x3F8,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Fol_FollowUsrs ,NULL},
[ActFolSevTch ] = {1761,-1,TabUnk,ActLstTch ,0x3F8,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Fol_FollowUsrs ,NULL}, [ActFolSevTch ] = {1761,-1,TabUnk,ActLstTch ,0x3F8,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Fol_FollowUsrs ,NULL},
[ActUnfSevStd ] = {1762,-1,TabUnk,ActLstStd ,0x3F8,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Fol_UnfollowUsrs ,NULL}, [ActUnfSevStd ] = {1762,-1,TabUnk,ActLstStd ,0x3F8,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Fol_UnfollowUsrs ,NULL},
@ -1571,7 +1580,7 @@ const struct Act_Actions ActLst_Actions[ActLst_NUM_ACTIONS] =
[ActRcvNot ] = { 60,-1,TabUnk,ActSeeAllNot ,0x220,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,Not_ReceiveNotice ,Not_ListFullNotices ,NULL}, [ActRcvNot ] = { 60,-1,TabUnk,ActSeeAllNot ,0x220,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,Not_ReceiveNotice ,Not_ListFullNotices ,NULL},
[ActHidNot ] = { 763,-1,TabUnk,ActSeeAllNot ,0x220,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,Not_HideActiveNotice ,Not_ListFullNotices ,NULL}, [ActHidNot ] = { 763,-1,TabUnk,ActSeeAllNot ,0x220,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,Not_HideActiveNotice ,Not_ListFullNotices ,NULL},
[ActUnhNot ] = { 764,-1,TabUnk,ActSeeAllNot ,0x220,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,Not_RevealHiddenNotice ,Not_ListFullNotices ,NULL}, [ActUnhNot ] = { 764,-1,TabUnk,ActSeeAllNot ,0x220,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,Not_RevealHiddenNotice ,Not_ListFullNotices ,NULL},
[ActReqRemNot ] = {1472,-1,TabUnk,ActSeeAllNot ,0x220,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Not_RequestRemNotice ,NULL}, [ActReqRemNot ] = {1472,-1,TabUnk,ActSeeAllNot ,0x220,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Not_ReqRemNotice ,NULL},
[ActRemNot ] = { 73,-1,TabUnk,ActSeeAllNot ,0x220,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,Not_RemoveNotice ,Not_ListNoticesAfterRemoval ,NULL}, [ActRemNot ] = { 73,-1,TabUnk,ActSeeAllNot ,0x220,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,Not_RemoveNotice ,Not_ListNoticesAfterRemoval ,NULL},
[ActSeeForCrsUsr ] = { 345,-1,TabUnk,ActSeeFor ,0x3F8,0x3C4,0x3C4,0x3C4,0x3C4,0x3C4,0x3C4,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,For_ShowForumTheads ,NULL}, [ActSeeForCrsUsr ] = { 345,-1,TabUnk,ActSeeFor ,0x3F8,0x3C4,0x3C4,0x3C4,0x3C4,0x3C4,0x3C4,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,For_ShowForumTheads ,NULL},
@ -1626,18 +1635,18 @@ const struct Act_Actions ActLst_Actions[ActLst_NUM_ACTIONS] =
[ActRcvRepForSWAUsr ] = { 603,-1,TabUnk,ActSeeFor ,0x3F8,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,Act_CONT_DATA,Act_BRW_1ST_TAB,NULL ,For_ReceiveForumPost ,NULL}, [ActRcvRepForSWAUsr ] = { 603,-1,TabUnk,ActSeeFor ,0x3F8,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,Act_CONT_DATA,Act_BRW_1ST_TAB,NULL ,For_ReceiveForumPost ,NULL},
[ActRcvRepForSWATch ] = { 622,-1,TabUnk,ActSeeFor ,0x3F0,0x3C4,0x3C4,0x3C4,0x3C4,0x3C4,0x3C4,Act_CONT_DATA,Act_BRW_1ST_TAB,NULL ,For_ReceiveForumPost ,NULL}, [ActRcvRepForSWATch ] = { 622,-1,TabUnk,ActSeeFor ,0x3F0,0x3C4,0x3C4,0x3C4,0x3C4,0x3C4,0x3C4,Act_CONT_DATA,Act_BRW_1ST_TAB,NULL ,For_ReceiveForumPost ,NULL},
[ActReqDelThrCrsUsr ] = { 867,-1,TabUnk,ActSeeFor ,0x220,0x204,0x204,0x204,0x204,0x204,0x204,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,For_RequestRemoveThread ,NULL}, [ActReqDelThrCrsUsr ] = { 867,-1,TabUnk,ActSeeFor ,0x220,0x204,0x204,0x204,0x204,0x204,0x204,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,For_ReqRemThread ,NULL},
[ActReqDelThrCrsTch ] = { 869,-1,TabUnk,ActSeeFor ,0x220,0x204,0x204,0x204,0x204,0x204,0x204,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,For_RequestRemoveThread ,NULL}, [ActReqDelThrCrsTch ] = { 869,-1,TabUnk,ActSeeFor ,0x220,0x204,0x204,0x204,0x204,0x204,0x204,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,For_ReqRemThread ,NULL},
[ActReqDelThrDegUsr ] = { 907,-1,TabUnk,ActSeeFor ,0x3C0,0x3C4,0x3C4,0x3C4,0x3C4,0x3C4,0x3C4,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,For_RequestRemoveThread ,NULL}, [ActReqDelThrDegUsr ] = { 907,-1,TabUnk,ActSeeFor ,0x3C0,0x3C4,0x3C4,0x3C4,0x3C4,0x3C4,0x3C4,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,For_ReqRemThread ,NULL},
[ActReqDelThrDegTch ] = { 908,-1,TabUnk,ActSeeFor ,0x3C0,0x3C4,0x3C4,0x3C4,0x3C4,0x3C4,0x3C4,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,For_RequestRemoveThread ,NULL}, [ActReqDelThrDegTch ] = { 908,-1,TabUnk,ActSeeFor ,0x3C0,0x3C4,0x3C4,0x3C4,0x3C4,0x3C4,0x3C4,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,For_ReqRemThread ,NULL},
[ActReqDelThrCtrUsr ] = { 909,-1,TabUnk,ActSeeFor ,0x3C0,0x3C4,0x3C4,0x3C4,0x3C4,0x3C4,0x3C4,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,For_RequestRemoveThread ,NULL}, [ActReqDelThrCtrUsr ] = { 909,-1,TabUnk,ActSeeFor ,0x3C0,0x3C4,0x3C4,0x3C4,0x3C4,0x3C4,0x3C4,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,For_ReqRemThread ,NULL},
[ActReqDelThrCtrTch ] = { 910,-1,TabUnk,ActSeeFor ,0x3C0,0x3C4,0x3C4,0x3C4,0x3C4,0x3C4,0x3C4,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,For_RequestRemoveThread ,NULL}, [ActReqDelThrCtrTch ] = { 910,-1,TabUnk,ActSeeFor ,0x3C0,0x3C4,0x3C4,0x3C4,0x3C4,0x3C4,0x3C4,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,For_ReqRemThread ,NULL},
[ActReqDelThrInsUsr ] = { 911,-1,TabUnk,ActSeeFor ,0x200,0x204,0x204,0x204,0x204,0x204,0x204,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,For_RequestRemoveThread ,NULL}, [ActReqDelThrInsUsr ] = { 911,-1,TabUnk,ActSeeFor ,0x200,0x204,0x204,0x204,0x204,0x204,0x204,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,For_ReqRemThread ,NULL},
[ActReqDelThrInsTch ] = { 912,-1,TabUnk,ActSeeFor ,0x200,0x204,0x204,0x204,0x204,0x204,0x204,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,For_RequestRemoveThread ,NULL}, [ActReqDelThrInsTch ] = { 912,-1,TabUnk,ActSeeFor ,0x200,0x204,0x204,0x204,0x204,0x204,0x204,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,For_ReqRemThread ,NULL},
[ActReqDelThrGenUsr ] = { 913,-1,TabUnk,ActSeeFor ,0x200,0x204,0x204,0x204,0x204,0x204,0x204,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,For_RequestRemoveThread ,NULL}, [ActReqDelThrGenUsr ] = { 913,-1,TabUnk,ActSeeFor ,0x200,0x204,0x204,0x204,0x204,0x204,0x204,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,For_ReqRemThread ,NULL},
[ActReqDelThrGenTch ] = { 914,-1,TabUnk,ActSeeFor ,0x200,0x204,0x204,0x204,0x204,0x204,0x204,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,For_RequestRemoveThread ,NULL}, [ActReqDelThrGenTch ] = { 914,-1,TabUnk,ActSeeFor ,0x200,0x204,0x204,0x204,0x204,0x204,0x204,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,For_ReqRemThread ,NULL},
[ActReqDelThrSWAUsr ] = { 881,-1,TabUnk,ActSeeFor ,0x200,0x204,0x204,0x204,0x204,0x204,0x204,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,For_RequestRemoveThread ,NULL}, [ActReqDelThrSWAUsr ] = { 881,-1,TabUnk,ActSeeFor ,0x200,0x204,0x204,0x204,0x204,0x204,0x204,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,For_ReqRemThread ,NULL},
[ActReqDelThrSWATch ] = { 915,-1,TabUnk,ActSeeFor ,0x200,0x204,0x204,0x204,0x204,0x204,0x204,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,For_RequestRemoveThread ,NULL}, [ActReqDelThrSWATch ] = { 915,-1,TabUnk,ActSeeFor ,0x200,0x204,0x204,0x204,0x204,0x204,0x204,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,For_ReqRemThread ,NULL},
[ActDelThrForCrsUsr ] = { 868,-1,TabUnk,ActSeeFor ,0x220,0x204,0x204,0x204,0x204,0x204,0x204,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,For_RemoveThread ,NULL}, [ActDelThrForCrsUsr ] = { 868,-1,TabUnk,ActSeeFor ,0x220,0x204,0x204,0x204,0x204,0x204,0x204,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,For_RemoveThread ,NULL},
[ActDelThrForCrsTch ] = { 876,-1,TabUnk,ActSeeFor ,0x220,0x204,0x204,0x204,0x204,0x204,0x204,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,For_RemoveThread ,NULL}, [ActDelThrForCrsTch ] = { 876,-1,TabUnk,ActSeeFor ,0x220,0x204,0x204,0x204,0x204,0x204,0x204,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,For_RemoveThread ,NULL},
@ -1763,8 +1772,8 @@ const struct Act_Actions ActLst_Actions[ActLst_NUM_ACTIONS] =
[ActSeeSvy ] = { 982,-1,TabUnk,ActSeeAllSvy ,0x3F8,0x3C0,0x3C0,0x3C0,0x3C0,0x3C0,0x3C0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Svy_SeeOneSurvey ,NULL}, [ActSeeSvy ] = { 982,-1,TabUnk,ActSeeAllSvy ,0x3F8,0x3C0,0x3C0,0x3C0,0x3C0,0x3C0,0x3C0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Svy_SeeOneSurvey ,NULL},
[ActAnsSvy ] = { 983,-1,TabUnk,ActSeeAllSvy ,0x3F8,0x3C0,0x3C0,0x3C0,0x3C0,0x3C0,0x3C0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Svy_ReceiveSurveyAnswers ,NULL}, [ActAnsSvy ] = { 983,-1,TabUnk,ActSeeAllSvy ,0x3F8,0x3C0,0x3C0,0x3C0,0x3C0,0x3C0,0x3C0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Svy_ReceiveSurveyAnswers ,NULL},
[ActFrmNewSvy ] = { 973,-1,TabUnk,ActSeeAllSvy ,0x3E0,0x3C0,0x3C0,0x3C0,0x3C0,0x3C0,0x3C0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Svy_RequestCreatOrEditSvy ,NULL}, [ActFrmNewSvy ] = { 973,-1,TabUnk,ActSeeAllSvy ,0x3E0,0x3C0,0x3C0,0x3C0,0x3C0,0x3C0,0x3C0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Svy_ReqCreatOrEditSvy ,NULL},
[ActEdiOneSvy ] = { 974,-1,TabUnk,ActSeeAllSvy ,0x3E0,0x3C0,0x3C0,0x3C0,0x3C0,0x3C0,0x3C0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Svy_RequestCreatOrEditSvy ,NULL}, [ActEdiOneSvy ] = { 974,-1,TabUnk,ActSeeAllSvy ,0x3E0,0x3C0,0x3C0,0x3C0,0x3C0,0x3C0,0x3C0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Svy_ReqCreatOrEditSvy ,NULL},
[ActNewSvy ] = { 968,-1,TabUnk,ActSeeAllSvy ,0x3E0,0x3C0,0x3C0,0x3C0,0x3C0,0x3C0,0x3C0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Svy_ReceiveFormSurvey ,NULL}, [ActNewSvy ] = { 968,-1,TabUnk,ActSeeAllSvy ,0x3E0,0x3C0,0x3C0,0x3C0,0x3C0,0x3C0,0x3C0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Svy_ReceiveFormSurvey ,NULL},
[ActChgSvy ] = { 975,-1,TabUnk,ActSeeAllSvy ,0x3E0,0x3C0,0x3C0,0x3C0,0x3C0,0x3C0,0x3C0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Svy_ReceiveFormSurvey ,NULL}, [ActChgSvy ] = { 975,-1,TabUnk,ActSeeAllSvy ,0x3E0,0x3C0,0x3C0,0x3C0,0x3C0,0x3C0,0x3C0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Svy_ReceiveFormSurvey ,NULL},
[ActReqRemSvy ] = { 976,-1,TabUnk,ActSeeAllSvy ,0x3E0,0x3C0,0x3C0,0x3C0,0x3C0,0x3C0,0x3C0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Svy_AskRemSurvey ,NULL}, [ActReqRemSvy ] = { 976,-1,TabUnk,ActSeeAllSvy ,0x3E0,0x3C0,0x3C0,0x3C0,0x3C0,0x3C0,0x3C0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Svy_AskRemSurvey ,NULL},
@ -1774,9 +1783,9 @@ const struct Act_Actions ActLst_Actions[ActLst_NUM_ACTIONS] =
[ActHidSvy ] = { 977,-1,TabUnk,ActSeeAllSvy ,0x3E0,0x3C0,0x3C0,0x3C0,0x3C0,0x3C0,0x3C0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Svy_HideSurvey ,NULL}, [ActHidSvy ] = { 977,-1,TabUnk,ActSeeAllSvy ,0x3E0,0x3C0,0x3C0,0x3C0,0x3C0,0x3C0,0x3C0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Svy_HideSurvey ,NULL},
[ActUnhSvy ] = { 978,-1,TabUnk,ActSeeAllSvy ,0x3E0,0x3C0,0x3C0,0x3C0,0x3C0,0x3C0,0x3C0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Svy_UnhideSurvey ,NULL}, [ActUnhSvy ] = { 978,-1,TabUnk,ActSeeAllSvy ,0x3E0,0x3C0,0x3C0,0x3C0,0x3C0,0x3C0,0x3C0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Svy_UnhideSurvey ,NULL},
[ActReqLnkSvy ] = {1937,-1,TabUnk,ActSeeAllSvy ,0x220,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,SvyRsc_GetLinkToSurvey ,NULL}, [ActReqLnkSvy ] = {1937,-1,TabUnk,ActSeeAllSvy ,0x220,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,SvyRsc_GetLinkToSurvey ,NULL},
[ActEdiOneSvyQst ] = { 979,-1,TabUnk,ActSeeAllSvy ,0x3E0,0x3C0,0x3C0,0x3C0,0x3C0,0x3C0,0x3C0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Svy_RequestEditQuestion ,NULL}, [ActEdiOneSvyQst ] = { 979,-1,TabUnk,ActSeeAllSvy ,0x3E0,0x3C0,0x3C0,0x3C0,0x3C0,0x3C0,0x3C0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Svy_ReqEditQuestion ,NULL},
[ActRcvSvyQst ] = { 980,-1,TabUnk,ActSeeAllSvy ,0x3E0,0x3C0,0x3C0,0x3C0,0x3C0,0x3C0,0x3C0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Svy_ReceiveQst ,NULL}, [ActRcvSvyQst ] = { 980,-1,TabUnk,ActSeeAllSvy ,0x3E0,0x3C0,0x3C0,0x3C0,0x3C0,0x3C0,0x3C0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Svy_ReceiveQst ,NULL},
[ActReqRemSvyQst ] = {1524,-1,TabUnk,ActSeeAllSvy ,0x3E0,0x3C0,0x3C0,0x3C0,0x3C0,0x3C0,0x3C0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Svy_RequestRemoveQst ,NULL}, [ActReqRemSvyQst ] = {1524,-1,TabUnk,ActSeeAllSvy ,0x3E0,0x3C0,0x3C0,0x3C0,0x3C0,0x3C0,0x3C0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Svy_ReqRemQst ,NULL},
[ActRemSvyQst ] = { 981,-1,TabUnk,ActSeeAllSvy ,0x3E0,0x3C0,0x3C0,0x3C0,0x3C0,0x3C0,0x3C0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Svy_RemoveQst ,NULL}, [ActRemSvyQst ] = { 981,-1,TabUnk,ActSeeAllSvy ,0x3E0,0x3C0,0x3C0,0x3C0,0x3C0,0x3C0,0x3C0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Svy_RemoveQst ,NULL},
[ActSeeAccGbl ] = { 79,-1,TabUnk,ActReqAccGbl ,0x3F8,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Sta_SeeGblAccesses ,NULL}, [ActSeeAccGbl ] = { 79,-1,TabUnk,ActReqAccGbl ,0x3F8,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Sta_SeeGblAccesses ,NULL},
@ -1801,8 +1810,8 @@ const struct Act_Actions ActLst_Actions[ActLst_NUM_ACTIONS] =
// Actions not in menu: // Actions not in menu:
[ActChgMyRol ] = { 589,-1,TabUnk,ActFrmRolSes ,0x3F8,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,Act_CONT_NORM,Act_BRW_1ST_TAB,Rol_ChangeMyRole ,Usr_ShowFormsLogoutAndRole ,NULL}, [ActChgMyRol ] = { 589,-1,TabUnk,ActFrmRolSes ,0x3F8,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,Act_CONT_NORM,Act_BRW_1ST_TAB,Rol_ChangeMyRole ,Usr_ShowFormsLogoutAndRole ,NULL},
[ActFrmNewEvtMyAgd ] = {1603,-1,TabUnk,ActSeeMyAgd ,0x3F8,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Agd_RequestCreatOrEditEvent ,NULL}, [ActFrmNewEvtMyAgd ] = {1603,-1,TabUnk,ActSeeMyAgd ,0x3F8,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Agd_ReqCreatOrEditEvent ,NULL},
[ActEdiOneEvtMyAgd ] = {1604,-1,TabUnk,ActSeeMyAgd ,0x3F8,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Agd_RequestCreatOrEditEvent ,NULL}, [ActEdiOneEvtMyAgd ] = {1604,-1,TabUnk,ActSeeMyAgd ,0x3F8,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Agd_ReqCreatOrEditEvent ,NULL},
[ActNewEvtMyAgd ] = {1605,-1,TabUnk,ActSeeMyAgd ,0x3F8,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Agd_ReceiveFormEvent ,NULL}, [ActNewEvtMyAgd ] = {1605,-1,TabUnk,ActSeeMyAgd ,0x3F8,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Agd_ReceiveFormEvent ,NULL},
[ActChgEvtMyAgd ] = {1606,-1,TabUnk,ActSeeMyAgd ,0x3F8,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Agd_ReceiveFormEvent ,NULL}, [ActChgEvtMyAgd ] = {1606,-1,TabUnk,ActSeeMyAgd ,0x3F8,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Agd_ReceiveFormEvent ,NULL},
[ActReqRemEvtMyAgd ] = {1607,-1,TabUnk,ActSeeMyAgd ,0x3F8,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Agd_AskRemEvent ,NULL}, [ActReqRemEvtMyAgd ] = {1607,-1,TabUnk,ActSeeMyAgd ,0x3F8,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Agd_AskRemEvent ,NULL},
@ -1837,7 +1846,7 @@ const struct Act_Actions ActLst_Actions[ActLst_NUM_ACTIONS] =
[ActReqMyPho ] = { 30,-1,TabUnk,ActReqEdiRecSha ,0x3F8,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Pho_ReqMyPhoto ,NULL}, [ActReqMyPho ] = { 30,-1,TabUnk,ActReqEdiRecSha ,0x3F8,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Pho_ReqMyPhoto ,NULL},
[ActDetMyPho ] = { 693,-1,TabUnk,ActReqEdiRecSha ,0x3F8,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,Act_CONT_DATA,Act_BRW_1ST_TAB,NULL ,Pho_RecMyPhotoDetFaces ,NULL}, [ActDetMyPho ] = { 693,-1,TabUnk,ActReqEdiRecSha ,0x3F8,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,Act_CONT_DATA,Act_BRW_1ST_TAB,NULL ,Pho_RecMyPhotoDetFaces ,NULL},
[ActUpdMyPho ] = { 694,-1,TabUnk,ActReqEdiRecSha ,0x3F8,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,Act_CONT_NORM,Act_BRW_1ST_TAB,Pho_UpdateMyPhoto1 ,Pho_UpdateMyPhoto2 ,NULL}, [ActUpdMyPho ] = { 694,-1,TabUnk,ActReqEdiRecSha ,0x3F8,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,Act_CONT_NORM,Act_BRW_1ST_TAB,Pho_UpdateMyPhoto1 ,Pho_UpdateMyPhoto2 ,NULL},
[ActReqRemMyPho ] = {1577,-1,TabUnk,ActReqEdiRecSha ,0x3F8,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Pho_ReqRemoveMyPhoto ,NULL}, [ActReqRemMyPho ] = {1577,-1,TabUnk,ActReqEdiRecSha ,0x3F8,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Pho_ReqRemMyPhoto ,NULL},
[ActRemMyPho ] = { 428,-1,TabUnk,ActReqEdiRecSha ,0x3F8,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,Act_CONT_NORM,Act_BRW_1ST_TAB,Pho_RemoveMyPhoto1 ,Pho_RemoveMyPhoto2 ,NULL}, [ActRemMyPho ] = { 428,-1,TabUnk,ActReqEdiRecSha ,0x3F8,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,Act_CONT_NORM,Act_BRW_1ST_TAB,Pho_RemoveMyPhoto1 ,Pho_RemoveMyPhoto2 ,NULL},
[ActChgCtyMyIns ] = {1166,-1,TabUnk,ActReqEdiRecSha ,0x3F8,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Rec_ChgCountryOfMyInstitution ,NULL}, [ActChgCtyMyIns ] = {1166,-1,TabUnk,ActReqEdiRecSha ,0x3F8,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Rec_ChgCountryOfMyInstitution ,NULL},
@ -3835,4 +3844,12 @@ Act_Action_t ActLst_FromActCodToAction[1 + ActLst_MAX_ACTION_COD] = // Do not re
ActReqRemRub, // #1957 ActReqRemRub, // #1957
ActRemRub, // #1958 ActRemRub, // #1958
ActFrmNewRubCri, // #1959 ActFrmNewRubCri, // #1959
ActNewRubCri, // #1960
ActReqRemRubCri, // #1961
ActRemRubCri, // #1962
ActUp_RubCri, // #1963
ActDwnRubCri, // #1964
ActChgTitRubCri, // #1965
ActChgMinRubCri, // #1966
ActChgMaxRubCri, // #1967
}; };

View File

@ -768,480 +768,488 @@
#define ActRemRub (ActChgCrsTT1stDay + 226) #define ActRemRub (ActChgCrsTT1stDay + 226)
#define ActFrmNewRubCri (ActChgCrsTT1stDay + 227) #define ActFrmNewRubCri (ActChgCrsTT1stDay + 227)
#define ActNewRubCri (ActChgCrsTT1stDay + 228)
#define ActReqRemRubCri (ActChgCrsTT1stDay + 229)
#define ActRemRubCri (ActChgCrsTT1stDay + 230)
#define ActUp_RubCri (ActChgCrsTT1stDay + 231)
#define ActDwnRubCri (ActChgCrsTT1stDay + 232)
#define ActChgTitRubCri (ActChgCrsTT1stDay + 233)
#define ActChgMinRubCri (ActChgCrsTT1stDay + 234)
#define ActChgMaxRubCri (ActChgCrsTT1stDay + 235)
/*****************************************************************************/ /*****************************************************************************/
/******************************** Files tab **********************************/ /******************************** Files tab **********************************/
/*****************************************************************************/ /*****************************************************************************/
// Actions in menu // Actions in menu
#define ActSeeAdmDocIns (ActFrmNewRubCri + 1) #define ActSeeAdmDocIns (ActChgMaxRubCri + 1)
#define ActAdmShaIns (ActFrmNewRubCri + 2) #define ActAdmShaIns (ActChgMaxRubCri + 2)
#define ActSeeAdmDocCtr (ActFrmNewRubCri + 3) #define ActSeeAdmDocCtr (ActChgMaxRubCri + 3)
#define ActAdmShaCtr (ActFrmNewRubCri + 4) #define ActAdmShaCtr (ActChgMaxRubCri + 4)
#define ActSeeAdmDocDeg (ActFrmNewRubCri + 5) #define ActSeeAdmDocDeg (ActChgMaxRubCri + 5)
#define ActAdmShaDeg (ActFrmNewRubCri + 6) #define ActAdmShaDeg (ActChgMaxRubCri + 6)
#define ActSeeAdmDocCrsGrp (ActFrmNewRubCri + 7) #define ActSeeAdmDocCrsGrp (ActChgMaxRubCri + 7)
#define ActAdmTchCrsGrp (ActFrmNewRubCri + 8) #define ActAdmTchCrsGrp (ActChgMaxRubCri + 8)
#define ActAdmShaCrsGrp (ActFrmNewRubCri + 9) #define ActAdmShaCrsGrp (ActChgMaxRubCri + 9)
#define ActAdmAsgWrkUsr (ActFrmNewRubCri + 10) #define ActAdmAsgWrkUsr (ActChgMaxRubCri + 10)
#define ActReqAsgWrkCrs (ActFrmNewRubCri + 11) #define ActReqAsgWrkCrs (ActChgMaxRubCri + 11)
#define ActSeeAdmMrk (ActFrmNewRubCri + 12) #define ActSeeAdmMrk (ActChgMaxRubCri + 12)
#define ActAdmBrf (ActFrmNewRubCri + 13) #define ActAdmBrf (ActChgMaxRubCri + 13)
// Secondary actions // Secondary actions
#define ActChgToSeeDocIns (ActFrmNewRubCri + 14) #define ActChgToSeeDocIns (ActChgMaxRubCri + 14)
#define ActSeeDocIns (ActFrmNewRubCri + 15) #define ActSeeDocIns (ActChgMaxRubCri + 15)
#define ActExpSeeDocIns (ActFrmNewRubCri + 16) #define ActExpSeeDocIns (ActChgMaxRubCri + 16)
#define ActConSeeDocIns (ActFrmNewRubCri + 17) #define ActConSeeDocIns (ActChgMaxRubCri + 17)
#define ActZIPSeeDocIns (ActFrmNewRubCri + 18) #define ActZIPSeeDocIns (ActChgMaxRubCri + 18)
#define ActReqDatSeeDocIns (ActFrmNewRubCri + 19) #define ActReqDatSeeDocIns (ActChgMaxRubCri + 19)
#define ActDowSeeDocIns (ActFrmNewRubCri + 20) #define ActDowSeeDocIns (ActChgMaxRubCri + 20)
#define ActChgToAdmDocIns (ActFrmNewRubCri + 21) #define ActChgToAdmDocIns (ActChgMaxRubCri + 21)
#define ActAdmDocIns (ActFrmNewRubCri + 22) #define ActAdmDocIns (ActChgMaxRubCri + 22)
#define ActReqRemFilDocIns (ActFrmNewRubCri + 23) #define ActReqRemFilDocIns (ActChgMaxRubCri + 23)
#define ActRemFilDocIns (ActFrmNewRubCri + 24) #define ActRemFilDocIns (ActChgMaxRubCri + 24)
#define ActRemFolDocIns (ActFrmNewRubCri + 25) #define ActRemFolDocIns (ActChgMaxRubCri + 25)
#define ActCopDocIns (ActFrmNewRubCri + 26) #define ActCopDocIns (ActChgMaxRubCri + 26)
#define ActPasDocIns (ActFrmNewRubCri + 27) #define ActPasDocIns (ActChgMaxRubCri + 27)
#define ActRemTreDocIns (ActFrmNewRubCri + 28) #define ActRemTreDocIns (ActChgMaxRubCri + 28)
#define ActFrmCreDocIns (ActFrmNewRubCri + 29) #define ActFrmCreDocIns (ActChgMaxRubCri + 29)
#define ActCreFolDocIns (ActFrmNewRubCri + 30) #define ActCreFolDocIns (ActChgMaxRubCri + 30)
#define ActCreLnkDocIns (ActFrmNewRubCri + 31) #define ActCreLnkDocIns (ActChgMaxRubCri + 31)
#define ActRenFolDocIns (ActFrmNewRubCri + 32) #define ActRenFolDocIns (ActChgMaxRubCri + 32)
#define ActRcvFilDocInsDZ (ActFrmNewRubCri + 33) #define ActRcvFilDocInsDZ (ActChgMaxRubCri + 33)
#define ActRcvFilDocInsCla (ActFrmNewRubCri + 34) #define ActRcvFilDocInsCla (ActChgMaxRubCri + 34)
#define ActExpAdmDocIns (ActFrmNewRubCri + 35) #define ActExpAdmDocIns (ActChgMaxRubCri + 35)
#define ActConAdmDocIns (ActFrmNewRubCri + 36) #define ActConAdmDocIns (ActChgMaxRubCri + 36)
#define ActZIPAdmDocIns (ActFrmNewRubCri + 37) #define ActZIPAdmDocIns (ActChgMaxRubCri + 37)
#define ActUnhDocIns (ActFrmNewRubCri + 38) #define ActUnhDocIns (ActChgMaxRubCri + 38)
#define ActHidDocIns (ActFrmNewRubCri + 39) #define ActHidDocIns (ActChgMaxRubCri + 39)
#define ActReqDatAdmDocIns (ActFrmNewRubCri + 40) #define ActReqDatAdmDocIns (ActChgMaxRubCri + 40)
#define ActChgDatAdmDocIns (ActFrmNewRubCri + 41) #define ActChgDatAdmDocIns (ActChgMaxRubCri + 41)
#define ActDowAdmDocIns (ActFrmNewRubCri + 42) #define ActDowAdmDocIns (ActChgMaxRubCri + 42)
#define ActReqRemFilShaIns (ActFrmNewRubCri + 43) #define ActReqRemFilShaIns (ActChgMaxRubCri + 43)
#define ActRemFilShaIns (ActFrmNewRubCri + 44) #define ActRemFilShaIns (ActChgMaxRubCri + 44)
#define ActRemFolShaIns (ActFrmNewRubCri + 45) #define ActRemFolShaIns (ActChgMaxRubCri + 45)
#define ActCopShaIns (ActFrmNewRubCri + 46) #define ActCopShaIns (ActChgMaxRubCri + 46)
#define ActPasShaIns (ActFrmNewRubCri + 47) #define ActPasShaIns (ActChgMaxRubCri + 47)
#define ActRemTreShaIns (ActFrmNewRubCri + 48) #define ActRemTreShaIns (ActChgMaxRubCri + 48)
#define ActFrmCreShaIns (ActFrmNewRubCri + 49) #define ActFrmCreShaIns (ActChgMaxRubCri + 49)
#define ActCreFolShaIns (ActFrmNewRubCri + 50) #define ActCreFolShaIns (ActChgMaxRubCri + 50)
#define ActCreLnkShaIns (ActFrmNewRubCri + 51) #define ActCreLnkShaIns (ActChgMaxRubCri + 51)
#define ActRenFolShaIns (ActFrmNewRubCri + 52) #define ActRenFolShaIns (ActChgMaxRubCri + 52)
#define ActRcvFilShaInsDZ (ActFrmNewRubCri + 53) #define ActRcvFilShaInsDZ (ActChgMaxRubCri + 53)
#define ActRcvFilShaInsCla (ActFrmNewRubCri + 54) #define ActRcvFilShaInsCla (ActChgMaxRubCri + 54)
#define ActExpShaIns (ActFrmNewRubCri + 55) #define ActExpShaIns (ActChgMaxRubCri + 55)
#define ActConShaIns (ActFrmNewRubCri + 56) #define ActConShaIns (ActChgMaxRubCri + 56)
#define ActZIPShaIns (ActFrmNewRubCri + 57) #define ActZIPShaIns (ActChgMaxRubCri + 57)
#define ActReqDatShaIns (ActFrmNewRubCri + 58) #define ActReqDatShaIns (ActChgMaxRubCri + 58)
#define ActChgDatShaIns (ActFrmNewRubCri + 59) #define ActChgDatShaIns (ActChgMaxRubCri + 59)
#define ActDowShaIns (ActFrmNewRubCri + 60) #define ActDowShaIns (ActChgMaxRubCri + 60)
#define ActChgToSeeDocCtr (ActFrmNewRubCri + 61) #define ActChgToSeeDocCtr (ActChgMaxRubCri + 61)
#define ActSeeDocCtr (ActFrmNewRubCri + 62) #define ActSeeDocCtr (ActChgMaxRubCri + 62)
#define ActExpSeeDocCtr (ActFrmNewRubCri + 63) #define ActExpSeeDocCtr (ActChgMaxRubCri + 63)
#define ActConSeeDocCtr (ActFrmNewRubCri + 64) #define ActConSeeDocCtr (ActChgMaxRubCri + 64)
#define ActZIPSeeDocCtr (ActFrmNewRubCri + 65) #define ActZIPSeeDocCtr (ActChgMaxRubCri + 65)
#define ActReqDatSeeDocCtr (ActFrmNewRubCri + 66) #define ActReqDatSeeDocCtr (ActChgMaxRubCri + 66)
#define ActDowSeeDocCtr (ActFrmNewRubCri + 67) #define ActDowSeeDocCtr (ActChgMaxRubCri + 67)
#define ActChgToAdmDocCtr (ActFrmNewRubCri + 68) #define ActChgToAdmDocCtr (ActChgMaxRubCri + 68)
#define ActAdmDocCtr (ActFrmNewRubCri + 69) #define ActAdmDocCtr (ActChgMaxRubCri + 69)
#define ActReqRemFilDocCtr (ActFrmNewRubCri + 70) #define ActReqRemFilDocCtr (ActChgMaxRubCri + 70)
#define ActRemFilDocCtr (ActFrmNewRubCri + 71) #define ActRemFilDocCtr (ActChgMaxRubCri + 71)
#define ActRemFolDocCtr (ActFrmNewRubCri + 72) #define ActRemFolDocCtr (ActChgMaxRubCri + 72)
#define ActCopDocCtr (ActFrmNewRubCri + 73) #define ActCopDocCtr (ActChgMaxRubCri + 73)
#define ActPasDocCtr (ActFrmNewRubCri + 74) #define ActPasDocCtr (ActChgMaxRubCri + 74)
#define ActRemTreDocCtr (ActFrmNewRubCri + 75) #define ActRemTreDocCtr (ActChgMaxRubCri + 75)
#define ActFrmCreDocCtr (ActFrmNewRubCri + 76) #define ActFrmCreDocCtr (ActChgMaxRubCri + 76)
#define ActCreFolDocCtr (ActFrmNewRubCri + 77) #define ActCreFolDocCtr (ActChgMaxRubCri + 77)
#define ActCreLnkDocCtr (ActFrmNewRubCri + 78) #define ActCreLnkDocCtr (ActChgMaxRubCri + 78)
#define ActRenFolDocCtr (ActFrmNewRubCri + 79) #define ActRenFolDocCtr (ActChgMaxRubCri + 79)
#define ActRcvFilDocCtrDZ (ActFrmNewRubCri + 80) #define ActRcvFilDocCtrDZ (ActChgMaxRubCri + 80)
#define ActRcvFilDocCtrCla (ActFrmNewRubCri + 81) #define ActRcvFilDocCtrCla (ActChgMaxRubCri + 81)
#define ActExpAdmDocCtr (ActFrmNewRubCri + 82) #define ActExpAdmDocCtr (ActChgMaxRubCri + 82)
#define ActConAdmDocCtr (ActFrmNewRubCri + 83) #define ActConAdmDocCtr (ActChgMaxRubCri + 83)
#define ActZIPAdmDocCtr (ActFrmNewRubCri + 84) #define ActZIPAdmDocCtr (ActChgMaxRubCri + 84)
#define ActUnhDocCtr (ActFrmNewRubCri + 85) #define ActUnhDocCtr (ActChgMaxRubCri + 85)
#define ActHidDocCtr (ActFrmNewRubCri + 86) #define ActHidDocCtr (ActChgMaxRubCri + 86)
#define ActReqDatAdmDocCtr (ActFrmNewRubCri + 87) #define ActReqDatAdmDocCtr (ActChgMaxRubCri + 87)
#define ActChgDatAdmDocCtr (ActFrmNewRubCri + 88) #define ActChgDatAdmDocCtr (ActChgMaxRubCri + 88)
#define ActDowAdmDocCtr (ActFrmNewRubCri + 89) #define ActDowAdmDocCtr (ActChgMaxRubCri + 89)
#define ActReqRemFilShaCtr (ActFrmNewRubCri + 90) #define ActReqRemFilShaCtr (ActChgMaxRubCri + 90)
#define ActRemFilShaCtr (ActFrmNewRubCri + 91) #define ActRemFilShaCtr (ActChgMaxRubCri + 91)
#define ActRemFolShaCtr (ActFrmNewRubCri + 92) #define ActRemFolShaCtr (ActChgMaxRubCri + 92)
#define ActCopShaCtr (ActFrmNewRubCri + 93) #define ActCopShaCtr (ActChgMaxRubCri + 93)
#define ActPasShaCtr (ActFrmNewRubCri + 94) #define ActPasShaCtr (ActChgMaxRubCri + 94)
#define ActRemTreShaCtr (ActFrmNewRubCri + 95) #define ActRemTreShaCtr (ActChgMaxRubCri + 95)
#define ActFrmCreShaCtr (ActFrmNewRubCri + 96) #define ActFrmCreShaCtr (ActChgMaxRubCri + 96)
#define ActCreFolShaCtr (ActFrmNewRubCri + 97) #define ActCreFolShaCtr (ActChgMaxRubCri + 97)
#define ActCreLnkShaCtr (ActFrmNewRubCri + 98) #define ActCreLnkShaCtr (ActChgMaxRubCri + 98)
#define ActRenFolShaCtr (ActFrmNewRubCri + 99) #define ActRenFolShaCtr (ActChgMaxRubCri + 99)
#define ActRcvFilShaCtrDZ (ActFrmNewRubCri + 100) #define ActRcvFilShaCtrDZ (ActChgMaxRubCri + 100)
#define ActRcvFilShaCtrCla (ActFrmNewRubCri + 101) #define ActRcvFilShaCtrCla (ActChgMaxRubCri + 101)
#define ActExpShaCtr (ActFrmNewRubCri + 102) #define ActExpShaCtr (ActChgMaxRubCri + 102)
#define ActConShaCtr (ActFrmNewRubCri + 103) #define ActConShaCtr (ActChgMaxRubCri + 103)
#define ActZIPShaCtr (ActFrmNewRubCri + 104) #define ActZIPShaCtr (ActChgMaxRubCri + 104)
#define ActReqDatShaCtr (ActFrmNewRubCri + 105) #define ActReqDatShaCtr (ActChgMaxRubCri + 105)
#define ActChgDatShaCtr (ActFrmNewRubCri + 106) #define ActChgDatShaCtr (ActChgMaxRubCri + 106)
#define ActDowShaCtr (ActFrmNewRubCri + 107) #define ActDowShaCtr (ActChgMaxRubCri + 107)
#define ActChgToSeeDocDeg (ActFrmNewRubCri + 108) #define ActChgToSeeDocDeg (ActChgMaxRubCri + 108)
#define ActSeeDocDeg (ActFrmNewRubCri + 109) #define ActSeeDocDeg (ActChgMaxRubCri + 109)
#define ActExpSeeDocDeg (ActFrmNewRubCri + 110) #define ActExpSeeDocDeg (ActChgMaxRubCri + 110)
#define ActConSeeDocDeg (ActFrmNewRubCri + 111) #define ActConSeeDocDeg (ActChgMaxRubCri + 111)
#define ActZIPSeeDocDeg (ActFrmNewRubCri + 112) #define ActZIPSeeDocDeg (ActChgMaxRubCri + 112)
#define ActReqDatSeeDocDeg (ActFrmNewRubCri + 113) #define ActReqDatSeeDocDeg (ActChgMaxRubCri + 113)
#define ActDowSeeDocDeg (ActFrmNewRubCri + 114) #define ActDowSeeDocDeg (ActChgMaxRubCri + 114)
#define ActChgToAdmDocDeg (ActFrmNewRubCri + 115) #define ActChgToAdmDocDeg (ActChgMaxRubCri + 115)
#define ActAdmDocDeg (ActFrmNewRubCri + 116) #define ActAdmDocDeg (ActChgMaxRubCri + 116)
#define ActReqRemFilDocDeg (ActFrmNewRubCri + 117) #define ActReqRemFilDocDeg (ActChgMaxRubCri + 117)
#define ActRemFilDocDeg (ActFrmNewRubCri + 118) #define ActRemFilDocDeg (ActChgMaxRubCri + 118)
#define ActRemFolDocDeg (ActFrmNewRubCri + 119) #define ActRemFolDocDeg (ActChgMaxRubCri + 119)
#define ActCopDocDeg (ActFrmNewRubCri + 120) #define ActCopDocDeg (ActChgMaxRubCri + 120)
#define ActPasDocDeg (ActFrmNewRubCri + 121) #define ActPasDocDeg (ActChgMaxRubCri + 121)
#define ActRemTreDocDeg (ActFrmNewRubCri + 122) #define ActRemTreDocDeg (ActChgMaxRubCri + 122)
#define ActFrmCreDocDeg (ActFrmNewRubCri + 123) #define ActFrmCreDocDeg (ActChgMaxRubCri + 123)
#define ActCreFolDocDeg (ActFrmNewRubCri + 124) #define ActCreFolDocDeg (ActChgMaxRubCri + 124)
#define ActCreLnkDocDeg (ActFrmNewRubCri + 125) #define ActCreLnkDocDeg (ActChgMaxRubCri + 125)
#define ActRenFolDocDeg (ActFrmNewRubCri + 126) #define ActRenFolDocDeg (ActChgMaxRubCri + 126)
#define ActRcvFilDocDegDZ (ActFrmNewRubCri + 127) #define ActRcvFilDocDegDZ (ActChgMaxRubCri + 127)
#define ActRcvFilDocDegCla (ActFrmNewRubCri + 128) #define ActRcvFilDocDegCla (ActChgMaxRubCri + 128)
#define ActExpAdmDocDeg (ActFrmNewRubCri + 129) #define ActExpAdmDocDeg (ActChgMaxRubCri + 129)
#define ActConAdmDocDeg (ActFrmNewRubCri + 130) #define ActConAdmDocDeg (ActChgMaxRubCri + 130)
#define ActZIPAdmDocDeg (ActFrmNewRubCri + 131) #define ActZIPAdmDocDeg (ActChgMaxRubCri + 131)
#define ActUnhDocDeg (ActFrmNewRubCri + 132) #define ActUnhDocDeg (ActChgMaxRubCri + 132)
#define ActHidDocDeg (ActFrmNewRubCri + 133) #define ActHidDocDeg (ActChgMaxRubCri + 133)
#define ActReqDatAdmDocDeg (ActFrmNewRubCri + 134) #define ActReqDatAdmDocDeg (ActChgMaxRubCri + 134)
#define ActChgDatAdmDocDeg (ActFrmNewRubCri + 135) #define ActChgDatAdmDocDeg (ActChgMaxRubCri + 135)
#define ActDowAdmDocDeg (ActFrmNewRubCri + 136) #define ActDowAdmDocDeg (ActChgMaxRubCri + 136)
#define ActReqRemFilShaDeg (ActFrmNewRubCri + 137) #define ActReqRemFilShaDeg (ActChgMaxRubCri + 137)
#define ActRemFilShaDeg (ActFrmNewRubCri + 138) #define ActRemFilShaDeg (ActChgMaxRubCri + 138)
#define ActRemFolShaDeg (ActFrmNewRubCri + 139) #define ActRemFolShaDeg (ActChgMaxRubCri + 139)
#define ActCopShaDeg (ActFrmNewRubCri + 140) #define ActCopShaDeg (ActChgMaxRubCri + 140)
#define ActPasShaDeg (ActFrmNewRubCri + 141) #define ActPasShaDeg (ActChgMaxRubCri + 141)
#define ActRemTreShaDeg (ActFrmNewRubCri + 142) #define ActRemTreShaDeg (ActChgMaxRubCri + 142)
#define ActFrmCreShaDeg (ActFrmNewRubCri + 143) #define ActFrmCreShaDeg (ActChgMaxRubCri + 143)
#define ActCreFolShaDeg (ActFrmNewRubCri + 144) #define ActCreFolShaDeg (ActChgMaxRubCri + 144)
#define ActCreLnkShaDeg (ActFrmNewRubCri + 145) #define ActCreLnkShaDeg (ActChgMaxRubCri + 145)
#define ActRenFolShaDeg (ActFrmNewRubCri + 146) #define ActRenFolShaDeg (ActChgMaxRubCri + 146)
#define ActRcvFilShaDegDZ (ActFrmNewRubCri + 147) #define ActRcvFilShaDegDZ (ActChgMaxRubCri + 147)
#define ActRcvFilShaDegCla (ActFrmNewRubCri + 148) #define ActRcvFilShaDegCla (ActChgMaxRubCri + 148)
#define ActExpShaDeg (ActFrmNewRubCri + 149) #define ActExpShaDeg (ActChgMaxRubCri + 149)
#define ActConShaDeg (ActFrmNewRubCri + 150) #define ActConShaDeg (ActChgMaxRubCri + 150)
#define ActZIPShaDeg (ActFrmNewRubCri + 151) #define ActZIPShaDeg (ActChgMaxRubCri + 151)
#define ActReqDatShaDeg (ActFrmNewRubCri + 152) #define ActReqDatShaDeg (ActChgMaxRubCri + 152)
#define ActChgDatShaDeg (ActFrmNewRubCri + 153) #define ActChgDatShaDeg (ActChgMaxRubCri + 153)
#define ActDowShaDeg (ActFrmNewRubCri + 154) #define ActDowShaDeg (ActChgMaxRubCri + 154)
#define ActChgToSeeDocCrs (ActFrmNewRubCri + 155) #define ActChgToSeeDocCrs (ActChgMaxRubCri + 155)
#define ActSeeDocCrs (ActFrmNewRubCri + 156) #define ActSeeDocCrs (ActChgMaxRubCri + 156)
#define ActExpSeeDocCrs (ActFrmNewRubCri + 157) #define ActExpSeeDocCrs (ActChgMaxRubCri + 157)
#define ActConSeeDocCrs (ActFrmNewRubCri + 158) #define ActConSeeDocCrs (ActChgMaxRubCri + 158)
#define ActZIPSeeDocCrs (ActFrmNewRubCri + 159) #define ActZIPSeeDocCrs (ActChgMaxRubCri + 159)
#define ActReqDatSeeDocCrs (ActFrmNewRubCri + 160) #define ActReqDatSeeDocCrs (ActChgMaxRubCri + 160)
#define ActReqLnkSeeDocCrs (ActFrmNewRubCri + 161) #define ActReqLnkSeeDocCrs (ActChgMaxRubCri + 161)
#define ActDowSeeDocCrs (ActFrmNewRubCri + 162) #define ActDowSeeDocCrs (ActChgMaxRubCri + 162)
#define ActSeeDocGrp (ActFrmNewRubCri + 163) #define ActSeeDocGrp (ActChgMaxRubCri + 163)
#define ActExpSeeDocGrp (ActFrmNewRubCri + 164) #define ActExpSeeDocGrp (ActChgMaxRubCri + 164)
#define ActConSeeDocGrp (ActFrmNewRubCri + 165) #define ActConSeeDocGrp (ActChgMaxRubCri + 165)
#define ActZIPSeeDocGrp (ActFrmNewRubCri + 166) #define ActZIPSeeDocGrp (ActChgMaxRubCri + 166)
#define ActReqDatSeeDocGrp (ActFrmNewRubCri + 167) #define ActReqDatSeeDocGrp (ActChgMaxRubCri + 167)
#define ActDowSeeDocGrp (ActFrmNewRubCri + 168) #define ActDowSeeDocGrp (ActChgMaxRubCri + 168)
#define ActChgToAdmDocCrs (ActFrmNewRubCri + 169) #define ActChgToAdmDocCrs (ActChgMaxRubCri + 169)
#define ActAdmDocCrs (ActFrmNewRubCri + 170) #define ActAdmDocCrs (ActChgMaxRubCri + 170)
#define ActReqRemFilDocCrs (ActFrmNewRubCri + 171) #define ActReqRemFilDocCrs (ActChgMaxRubCri + 171)
#define ActRemFilDocCrs (ActFrmNewRubCri + 172) #define ActRemFilDocCrs (ActChgMaxRubCri + 172)
#define ActRemFolDocCrs (ActFrmNewRubCri + 173) #define ActRemFolDocCrs (ActChgMaxRubCri + 173)
#define ActCopDocCrs (ActFrmNewRubCri + 174) #define ActCopDocCrs (ActChgMaxRubCri + 174)
#define ActPasDocCrs (ActFrmNewRubCri + 175) #define ActPasDocCrs (ActChgMaxRubCri + 175)
#define ActRemTreDocCrs (ActFrmNewRubCri + 176) #define ActRemTreDocCrs (ActChgMaxRubCri + 176)
#define ActFrmCreDocCrs (ActFrmNewRubCri + 177) #define ActFrmCreDocCrs (ActChgMaxRubCri + 177)
#define ActCreFolDocCrs (ActFrmNewRubCri + 178) #define ActCreFolDocCrs (ActChgMaxRubCri + 178)
#define ActCreLnkDocCrs (ActFrmNewRubCri + 179) #define ActCreLnkDocCrs (ActChgMaxRubCri + 179)
#define ActRenFolDocCrs (ActFrmNewRubCri + 180) #define ActRenFolDocCrs (ActChgMaxRubCri + 180)
#define ActRcvFilDocCrsDZ (ActFrmNewRubCri + 181) #define ActRcvFilDocCrsDZ (ActChgMaxRubCri + 181)
#define ActRcvFilDocCrsCla (ActFrmNewRubCri + 182) #define ActRcvFilDocCrsCla (ActChgMaxRubCri + 182)
#define ActExpAdmDocCrs (ActFrmNewRubCri + 183) #define ActExpAdmDocCrs (ActChgMaxRubCri + 183)
#define ActConAdmDocCrs (ActFrmNewRubCri + 184) #define ActConAdmDocCrs (ActChgMaxRubCri + 184)
#define ActZIPAdmDocCrs (ActFrmNewRubCri + 185) #define ActZIPAdmDocCrs (ActChgMaxRubCri + 185)
#define ActUnhDocCrs (ActFrmNewRubCri + 186) #define ActUnhDocCrs (ActChgMaxRubCri + 186)
#define ActHidDocCrs (ActFrmNewRubCri + 187) #define ActHidDocCrs (ActChgMaxRubCri + 187)
#define ActReqDatAdmDocCrs (ActFrmNewRubCri + 188) #define ActReqDatAdmDocCrs (ActChgMaxRubCri + 188)
#define ActChgDatAdmDocCrs (ActFrmNewRubCri + 189) #define ActChgDatAdmDocCrs (ActChgMaxRubCri + 189)
#define ActReqLnkAdmDocCrs (ActFrmNewRubCri + 190) #define ActReqLnkAdmDocCrs (ActChgMaxRubCri + 190)
#define ActDowAdmDocCrs (ActFrmNewRubCri + 191) #define ActDowAdmDocCrs (ActChgMaxRubCri + 191)
#define ActAdmDocGrp (ActFrmNewRubCri + 192) #define ActAdmDocGrp (ActChgMaxRubCri + 192)
#define ActReqRemFilDocGrp (ActFrmNewRubCri + 193) #define ActReqRemFilDocGrp (ActChgMaxRubCri + 193)
#define ActRemFilDocGrp (ActFrmNewRubCri + 194) #define ActRemFilDocGrp (ActChgMaxRubCri + 194)
#define ActRemFolDocGrp (ActFrmNewRubCri + 195) #define ActRemFolDocGrp (ActChgMaxRubCri + 195)
#define ActCopDocGrp (ActFrmNewRubCri + 196) #define ActCopDocGrp (ActChgMaxRubCri + 196)
#define ActPasDocGrp (ActFrmNewRubCri + 197) #define ActPasDocGrp (ActChgMaxRubCri + 197)
#define ActRemTreDocGrp (ActFrmNewRubCri + 198) #define ActRemTreDocGrp (ActChgMaxRubCri + 198)
#define ActFrmCreDocGrp (ActFrmNewRubCri + 199) #define ActFrmCreDocGrp (ActChgMaxRubCri + 199)
#define ActCreFolDocGrp (ActFrmNewRubCri + 200) #define ActCreFolDocGrp (ActChgMaxRubCri + 200)
#define ActCreLnkDocGrp (ActFrmNewRubCri + 201) #define ActCreLnkDocGrp (ActChgMaxRubCri + 201)
#define ActRenFolDocGrp (ActFrmNewRubCri + 202) #define ActRenFolDocGrp (ActChgMaxRubCri + 202)
#define ActRcvFilDocGrpDZ (ActFrmNewRubCri + 203) #define ActRcvFilDocGrpDZ (ActChgMaxRubCri + 203)
#define ActRcvFilDocGrpCla (ActFrmNewRubCri + 204) #define ActRcvFilDocGrpCla (ActChgMaxRubCri + 204)
#define ActExpAdmDocGrp (ActFrmNewRubCri + 205) #define ActExpAdmDocGrp (ActChgMaxRubCri + 205)
#define ActConAdmDocGrp (ActFrmNewRubCri + 206) #define ActConAdmDocGrp (ActChgMaxRubCri + 206)
#define ActZIPAdmDocGrp (ActFrmNewRubCri + 207) #define ActZIPAdmDocGrp (ActChgMaxRubCri + 207)
#define ActUnhDocGrp (ActFrmNewRubCri + 208) #define ActUnhDocGrp (ActChgMaxRubCri + 208)
#define ActHidDocGrp (ActFrmNewRubCri + 209) #define ActHidDocGrp (ActChgMaxRubCri + 209)
#define ActReqDatAdmDocGrp (ActFrmNewRubCri + 210) #define ActReqDatAdmDocGrp (ActChgMaxRubCri + 210)
#define ActChgDatAdmDocGrp (ActFrmNewRubCri + 211) #define ActChgDatAdmDocGrp (ActChgMaxRubCri + 211)
#define ActDowAdmDocGrp (ActFrmNewRubCri + 212) #define ActDowAdmDocGrp (ActChgMaxRubCri + 212)
#define ActChgToAdmTch (ActFrmNewRubCri + 213) #define ActChgToAdmTch (ActChgMaxRubCri + 213)
#define ActAdmTchCrs (ActFrmNewRubCri + 214) #define ActAdmTchCrs (ActChgMaxRubCri + 214)
#define ActReqRemFilTchCrs (ActFrmNewRubCri + 215) #define ActReqRemFilTchCrs (ActChgMaxRubCri + 215)
#define ActRemFilTchCrs (ActFrmNewRubCri + 216) #define ActRemFilTchCrs (ActChgMaxRubCri + 216)
#define ActRemFolTchCrs (ActFrmNewRubCri + 217) #define ActRemFolTchCrs (ActChgMaxRubCri + 217)
#define ActCopTchCrs (ActFrmNewRubCri + 218) #define ActCopTchCrs (ActChgMaxRubCri + 218)
#define ActPasTchCrs (ActFrmNewRubCri + 219) #define ActPasTchCrs (ActChgMaxRubCri + 219)
#define ActRemTreTchCrs (ActFrmNewRubCri + 220) #define ActRemTreTchCrs (ActChgMaxRubCri + 220)
#define ActFrmCreTchCrs (ActFrmNewRubCri + 221) #define ActFrmCreTchCrs (ActChgMaxRubCri + 221)
#define ActCreFolTchCrs (ActFrmNewRubCri + 222) #define ActCreFolTchCrs (ActChgMaxRubCri + 222)
#define ActCreLnkTchCrs (ActFrmNewRubCri + 223) #define ActCreLnkTchCrs (ActChgMaxRubCri + 223)
#define ActRenFolTchCrs (ActFrmNewRubCri + 224) #define ActRenFolTchCrs (ActChgMaxRubCri + 224)
#define ActRcvFilTchCrsDZ (ActFrmNewRubCri + 225) #define ActRcvFilTchCrsDZ (ActChgMaxRubCri + 225)
#define ActRcvFilTchCrsCla (ActFrmNewRubCri + 226) #define ActRcvFilTchCrsCla (ActChgMaxRubCri + 226)
#define ActExpTchCrs (ActFrmNewRubCri + 227) #define ActExpTchCrs (ActChgMaxRubCri + 227)
#define ActConTchCrs (ActFrmNewRubCri + 228) #define ActConTchCrs (ActChgMaxRubCri + 228)
#define ActZIPTchCrs (ActFrmNewRubCri + 229) #define ActZIPTchCrs (ActChgMaxRubCri + 229)
#define ActReqDatTchCrs (ActFrmNewRubCri + 230) #define ActReqDatTchCrs (ActChgMaxRubCri + 230)
#define ActChgDatTchCrs (ActFrmNewRubCri + 231) #define ActChgDatTchCrs (ActChgMaxRubCri + 231)
#define ActDowTchCrs (ActFrmNewRubCri + 232) #define ActDowTchCrs (ActChgMaxRubCri + 232)
#define ActAdmTchGrp (ActFrmNewRubCri + 233) #define ActAdmTchGrp (ActChgMaxRubCri + 233)
#define ActReqRemFilTchGrp (ActFrmNewRubCri + 234) #define ActReqRemFilTchGrp (ActChgMaxRubCri + 234)
#define ActRemFilTchGrp (ActFrmNewRubCri + 235) #define ActRemFilTchGrp (ActChgMaxRubCri + 235)
#define ActRemFolTchGrp (ActFrmNewRubCri + 236) #define ActRemFolTchGrp (ActChgMaxRubCri + 236)
#define ActCopTchGrp (ActFrmNewRubCri + 237) #define ActCopTchGrp (ActChgMaxRubCri + 237)
#define ActPasTchGrp (ActFrmNewRubCri + 238) #define ActPasTchGrp (ActChgMaxRubCri + 238)
#define ActRemTreTchGrp (ActFrmNewRubCri + 239) #define ActRemTreTchGrp (ActChgMaxRubCri + 239)
#define ActFrmCreTchGrp (ActFrmNewRubCri + 240) #define ActFrmCreTchGrp (ActChgMaxRubCri + 240)
#define ActCreFolTchGrp (ActFrmNewRubCri + 241) #define ActCreFolTchGrp (ActChgMaxRubCri + 241)
#define ActCreLnkTchGrp (ActFrmNewRubCri + 242) #define ActCreLnkTchGrp (ActChgMaxRubCri + 242)
#define ActRenFolTchGrp (ActFrmNewRubCri + 243) #define ActRenFolTchGrp (ActChgMaxRubCri + 243)
#define ActRcvFilTchGrpDZ (ActFrmNewRubCri + 244) #define ActRcvFilTchGrpDZ (ActChgMaxRubCri + 244)
#define ActRcvFilTchGrpCla (ActFrmNewRubCri + 245) #define ActRcvFilTchGrpCla (ActChgMaxRubCri + 245)
#define ActExpTchGrp (ActFrmNewRubCri + 246) #define ActExpTchGrp (ActChgMaxRubCri + 246)
#define ActConTchGrp (ActFrmNewRubCri + 247) #define ActConTchGrp (ActChgMaxRubCri + 247)
#define ActZIPTchGrp (ActFrmNewRubCri + 248) #define ActZIPTchGrp (ActChgMaxRubCri + 248)
#define ActReqDatTchGrp (ActFrmNewRubCri + 249) #define ActReqDatTchGrp (ActChgMaxRubCri + 249)
#define ActChgDatTchGrp (ActFrmNewRubCri + 250) #define ActChgDatTchGrp (ActChgMaxRubCri + 250)
#define ActDowTchGrp (ActFrmNewRubCri + 251) #define ActDowTchGrp (ActChgMaxRubCri + 251)
#define ActChgToAdmSha (ActFrmNewRubCri + 252) #define ActChgToAdmSha (ActChgMaxRubCri + 252)
#define ActAdmShaCrs (ActFrmNewRubCri + 253) #define ActAdmShaCrs (ActChgMaxRubCri + 253)
#define ActReqRemFilShaCrs (ActFrmNewRubCri + 254) #define ActReqRemFilShaCrs (ActChgMaxRubCri + 254)
#define ActRemFilShaCrs (ActFrmNewRubCri + 255) #define ActRemFilShaCrs (ActChgMaxRubCri + 255)
#define ActRemFolShaCrs (ActFrmNewRubCri + 256) #define ActRemFolShaCrs (ActChgMaxRubCri + 256)
#define ActCopShaCrs (ActFrmNewRubCri + 257) #define ActCopShaCrs (ActChgMaxRubCri + 257)
#define ActPasShaCrs (ActFrmNewRubCri + 258) #define ActPasShaCrs (ActChgMaxRubCri + 258)
#define ActRemTreShaCrs (ActFrmNewRubCri + 259) #define ActRemTreShaCrs (ActChgMaxRubCri + 259)
#define ActFrmCreShaCrs (ActFrmNewRubCri + 260) #define ActFrmCreShaCrs (ActChgMaxRubCri + 260)
#define ActCreFolShaCrs (ActFrmNewRubCri + 261) #define ActCreFolShaCrs (ActChgMaxRubCri + 261)
#define ActCreLnkShaCrs (ActFrmNewRubCri + 262) #define ActCreLnkShaCrs (ActChgMaxRubCri + 262)
#define ActRenFolShaCrs (ActFrmNewRubCri + 263) #define ActRenFolShaCrs (ActChgMaxRubCri + 263)
#define ActRcvFilShaCrsDZ (ActFrmNewRubCri + 264) #define ActRcvFilShaCrsDZ (ActChgMaxRubCri + 264)
#define ActRcvFilShaCrsCla (ActFrmNewRubCri + 265) #define ActRcvFilShaCrsCla (ActChgMaxRubCri + 265)
#define ActExpShaCrs (ActFrmNewRubCri + 266) #define ActExpShaCrs (ActChgMaxRubCri + 266)
#define ActConShaCrs (ActFrmNewRubCri + 267) #define ActConShaCrs (ActChgMaxRubCri + 267)
#define ActZIPShaCrs (ActFrmNewRubCri + 268) #define ActZIPShaCrs (ActChgMaxRubCri + 268)
#define ActReqDatShaCrs (ActFrmNewRubCri + 269) #define ActReqDatShaCrs (ActChgMaxRubCri + 269)
#define ActChgDatShaCrs (ActFrmNewRubCri + 270) #define ActChgDatShaCrs (ActChgMaxRubCri + 270)
#define ActDowShaCrs (ActFrmNewRubCri + 271) #define ActDowShaCrs (ActChgMaxRubCri + 271)
#define ActAdmShaGrp (ActFrmNewRubCri + 272) #define ActAdmShaGrp (ActChgMaxRubCri + 272)
#define ActReqRemFilShaGrp (ActFrmNewRubCri + 273) #define ActReqRemFilShaGrp (ActChgMaxRubCri + 273)
#define ActRemFilShaGrp (ActFrmNewRubCri + 274) #define ActRemFilShaGrp (ActChgMaxRubCri + 274)
#define ActRemFolShaGrp (ActFrmNewRubCri + 275) #define ActRemFolShaGrp (ActChgMaxRubCri + 275)
#define ActCopShaGrp (ActFrmNewRubCri + 276) #define ActCopShaGrp (ActChgMaxRubCri + 276)
#define ActPasShaGrp (ActFrmNewRubCri + 277) #define ActPasShaGrp (ActChgMaxRubCri + 277)
#define ActRemTreShaGrp (ActFrmNewRubCri + 278) #define ActRemTreShaGrp (ActChgMaxRubCri + 278)
#define ActFrmCreShaGrp (ActFrmNewRubCri + 279) #define ActFrmCreShaGrp (ActChgMaxRubCri + 279)
#define ActCreFolShaGrp (ActFrmNewRubCri + 280) #define ActCreFolShaGrp (ActChgMaxRubCri + 280)
#define ActCreLnkShaGrp (ActFrmNewRubCri + 281) #define ActCreLnkShaGrp (ActChgMaxRubCri + 281)
#define ActRenFolShaGrp (ActFrmNewRubCri + 282) #define ActRenFolShaGrp (ActChgMaxRubCri + 282)
#define ActRcvFilShaGrpDZ (ActFrmNewRubCri + 283) #define ActRcvFilShaGrpDZ (ActChgMaxRubCri + 283)
#define ActRcvFilShaGrpCla (ActFrmNewRubCri + 284) #define ActRcvFilShaGrpCla (ActChgMaxRubCri + 284)
#define ActExpShaGrp (ActFrmNewRubCri + 285) #define ActExpShaGrp (ActChgMaxRubCri + 285)
#define ActConShaGrp (ActFrmNewRubCri + 286) #define ActConShaGrp (ActChgMaxRubCri + 286)
#define ActZIPShaGrp (ActFrmNewRubCri + 287) #define ActZIPShaGrp (ActChgMaxRubCri + 287)
#define ActReqDatShaGrp (ActFrmNewRubCri + 288) #define ActReqDatShaGrp (ActChgMaxRubCri + 288)
#define ActChgDatShaGrp (ActFrmNewRubCri + 289) #define ActChgDatShaGrp (ActChgMaxRubCri + 289)
#define ActDowShaGrp (ActFrmNewRubCri + 290) #define ActDowShaGrp (ActChgMaxRubCri + 290)
#define ActAdmAsgWrkCrs (ActFrmNewRubCri + 291) #define ActAdmAsgWrkCrs (ActChgMaxRubCri + 291)
#define ActReqRemFilAsgUsr (ActFrmNewRubCri + 292) #define ActReqRemFilAsgUsr (ActChgMaxRubCri + 292)
#define ActRemFilAsgUsr (ActFrmNewRubCri + 293) #define ActRemFilAsgUsr (ActChgMaxRubCri + 293)
#define ActRemFolAsgUsr (ActFrmNewRubCri + 294) #define ActRemFolAsgUsr (ActChgMaxRubCri + 294)
#define ActCopAsgUsr (ActFrmNewRubCri + 295) #define ActCopAsgUsr (ActChgMaxRubCri + 295)
#define ActPasAsgUsr (ActFrmNewRubCri + 296) #define ActPasAsgUsr (ActChgMaxRubCri + 296)
#define ActRemTreAsgUsr (ActFrmNewRubCri + 297) #define ActRemTreAsgUsr (ActChgMaxRubCri + 297)
#define ActFrmCreAsgUsr (ActFrmNewRubCri + 298) #define ActFrmCreAsgUsr (ActChgMaxRubCri + 298)
#define ActCreFolAsgUsr (ActFrmNewRubCri + 299) #define ActCreFolAsgUsr (ActChgMaxRubCri + 299)
#define ActCreLnkAsgUsr (ActFrmNewRubCri + 300) #define ActCreLnkAsgUsr (ActChgMaxRubCri + 300)
#define ActRenFolAsgUsr (ActFrmNewRubCri + 301) #define ActRenFolAsgUsr (ActChgMaxRubCri + 301)
#define ActRcvFilAsgUsrDZ (ActFrmNewRubCri + 302) #define ActRcvFilAsgUsrDZ (ActChgMaxRubCri + 302)
#define ActRcvFilAsgUsrCla (ActFrmNewRubCri + 303) #define ActRcvFilAsgUsrCla (ActChgMaxRubCri + 303)
#define ActExpAsgUsr (ActFrmNewRubCri + 304) #define ActExpAsgUsr (ActChgMaxRubCri + 304)
#define ActConAsgUsr (ActFrmNewRubCri + 305) #define ActConAsgUsr (ActChgMaxRubCri + 305)
#define ActZIPAsgUsr (ActFrmNewRubCri + 306) #define ActZIPAsgUsr (ActChgMaxRubCri + 306)
#define ActReqDatAsgUsr (ActFrmNewRubCri + 307) #define ActReqDatAsgUsr (ActChgMaxRubCri + 307)
#define ActChgDatAsgUsr (ActFrmNewRubCri + 308) #define ActChgDatAsgUsr (ActChgMaxRubCri + 308)
#define ActDowAsgUsr (ActFrmNewRubCri + 309) #define ActDowAsgUsr (ActChgMaxRubCri + 309)
#define ActReqRemFilWrkUsr (ActFrmNewRubCri + 310) #define ActReqRemFilWrkUsr (ActChgMaxRubCri + 310)
#define ActRemFilWrkUsr (ActFrmNewRubCri + 311) #define ActRemFilWrkUsr (ActChgMaxRubCri + 311)
#define ActRemFolWrkUsr (ActFrmNewRubCri + 312) #define ActRemFolWrkUsr (ActChgMaxRubCri + 312)
#define ActCopWrkUsr (ActFrmNewRubCri + 313) #define ActCopWrkUsr (ActChgMaxRubCri + 313)
#define ActPasWrkUsr (ActFrmNewRubCri + 314) #define ActPasWrkUsr (ActChgMaxRubCri + 314)
#define ActRemTreWrkUsr (ActFrmNewRubCri + 315) #define ActRemTreWrkUsr (ActChgMaxRubCri + 315)
#define ActFrmCreWrkUsr (ActFrmNewRubCri + 316) #define ActFrmCreWrkUsr (ActChgMaxRubCri + 316)
#define ActCreFolWrkUsr (ActFrmNewRubCri + 317) #define ActCreFolWrkUsr (ActChgMaxRubCri + 317)
#define ActCreLnkWrkUsr (ActFrmNewRubCri + 318) #define ActCreLnkWrkUsr (ActChgMaxRubCri + 318)
#define ActRenFolWrkUsr (ActFrmNewRubCri + 319) #define ActRenFolWrkUsr (ActChgMaxRubCri + 319)
#define ActRcvFilWrkUsrDZ (ActFrmNewRubCri + 320) #define ActRcvFilWrkUsrDZ (ActChgMaxRubCri + 320)
#define ActRcvFilWrkUsrCla (ActFrmNewRubCri + 321) #define ActRcvFilWrkUsrCla (ActChgMaxRubCri + 321)
#define ActExpWrkUsr (ActFrmNewRubCri + 322) #define ActExpWrkUsr (ActChgMaxRubCri + 322)
#define ActConWrkUsr (ActFrmNewRubCri + 323) #define ActConWrkUsr (ActChgMaxRubCri + 323)
#define ActZIPWrkUsr (ActFrmNewRubCri + 324) #define ActZIPWrkUsr (ActChgMaxRubCri + 324)
#define ActReqDatWrkUsr (ActFrmNewRubCri + 325) #define ActReqDatWrkUsr (ActChgMaxRubCri + 325)
#define ActChgDatWrkUsr (ActFrmNewRubCri + 326) #define ActChgDatWrkUsr (ActChgMaxRubCri + 326)
#define ActDowWrkUsr (ActFrmNewRubCri + 327) #define ActDowWrkUsr (ActChgMaxRubCri + 327)
#define ActReqRemFilAsgCrs (ActFrmNewRubCri + 328) #define ActReqRemFilAsgCrs (ActChgMaxRubCri + 328)
#define ActRemFilAsgCrs (ActFrmNewRubCri + 329) #define ActRemFilAsgCrs (ActChgMaxRubCri + 329)
#define ActRemFolAsgCrs (ActFrmNewRubCri + 330) #define ActRemFolAsgCrs (ActChgMaxRubCri + 330)
#define ActCopAsgCrs (ActFrmNewRubCri + 331) #define ActCopAsgCrs (ActChgMaxRubCri + 331)
#define ActPasAsgCrs (ActFrmNewRubCri + 332) #define ActPasAsgCrs (ActChgMaxRubCri + 332)
#define ActRemTreAsgCrs (ActFrmNewRubCri + 333) #define ActRemTreAsgCrs (ActChgMaxRubCri + 333)
#define ActFrmCreAsgCrs (ActFrmNewRubCri + 334) #define ActFrmCreAsgCrs (ActChgMaxRubCri + 334)
#define ActCreFolAsgCrs (ActFrmNewRubCri + 335) #define ActCreFolAsgCrs (ActChgMaxRubCri + 335)
#define ActCreLnkAsgCrs (ActFrmNewRubCri + 336) #define ActCreLnkAsgCrs (ActChgMaxRubCri + 336)
#define ActRenFolAsgCrs (ActFrmNewRubCri + 337) #define ActRenFolAsgCrs (ActChgMaxRubCri + 337)
#define ActRcvFilAsgCrsDZ (ActFrmNewRubCri + 338) #define ActRcvFilAsgCrsDZ (ActChgMaxRubCri + 338)
#define ActRcvFilAsgCrsCla (ActFrmNewRubCri + 339) #define ActRcvFilAsgCrsCla (ActChgMaxRubCri + 339)
#define ActExpAsgCrs (ActFrmNewRubCri + 340) #define ActExpAsgCrs (ActChgMaxRubCri + 340)
#define ActConAsgCrs (ActFrmNewRubCri + 341) #define ActConAsgCrs (ActChgMaxRubCri + 341)
#define ActZIPAsgCrs (ActFrmNewRubCri + 342) #define ActZIPAsgCrs (ActChgMaxRubCri + 342)
#define ActReqDatAsgCrs (ActFrmNewRubCri + 343) #define ActReqDatAsgCrs (ActChgMaxRubCri + 343)
#define ActChgDatAsgCrs (ActFrmNewRubCri + 344) #define ActChgDatAsgCrs (ActChgMaxRubCri + 344)
#define ActDowAsgCrs (ActFrmNewRubCri + 345) #define ActDowAsgCrs (ActChgMaxRubCri + 345)
#define ActReqRemFilWrkCrs (ActFrmNewRubCri + 346) #define ActReqRemFilWrkCrs (ActChgMaxRubCri + 346)
#define ActRemFilWrkCrs (ActFrmNewRubCri + 347) #define ActRemFilWrkCrs (ActChgMaxRubCri + 347)
#define ActRemFolWrkCrs (ActFrmNewRubCri + 348) #define ActRemFolWrkCrs (ActChgMaxRubCri + 348)
#define ActCopWrkCrs (ActFrmNewRubCri + 349) #define ActCopWrkCrs (ActChgMaxRubCri + 349)
#define ActPasWrkCrs (ActFrmNewRubCri + 350) #define ActPasWrkCrs (ActChgMaxRubCri + 350)
#define ActRemTreWrkCrs (ActFrmNewRubCri + 351) #define ActRemTreWrkCrs (ActChgMaxRubCri + 351)
#define ActFrmCreWrkCrs (ActFrmNewRubCri + 352) #define ActFrmCreWrkCrs (ActChgMaxRubCri + 352)
#define ActCreFolWrkCrs (ActFrmNewRubCri + 353) #define ActCreFolWrkCrs (ActChgMaxRubCri + 353)
#define ActCreLnkWrkCrs (ActFrmNewRubCri + 354) #define ActCreLnkWrkCrs (ActChgMaxRubCri + 354)
#define ActRenFolWrkCrs (ActFrmNewRubCri + 355) #define ActRenFolWrkCrs (ActChgMaxRubCri + 355)
#define ActRcvFilWrkCrsDZ (ActFrmNewRubCri + 356) #define ActRcvFilWrkCrsDZ (ActChgMaxRubCri + 356)
#define ActRcvFilWrkCrsCla (ActFrmNewRubCri + 357) #define ActRcvFilWrkCrsCla (ActChgMaxRubCri + 357)
#define ActExpWrkCrs (ActFrmNewRubCri + 358) #define ActExpWrkCrs (ActChgMaxRubCri + 358)
#define ActConWrkCrs (ActFrmNewRubCri + 359) #define ActConWrkCrs (ActChgMaxRubCri + 359)
#define ActZIPWrkCrs (ActFrmNewRubCri + 360) #define ActZIPWrkCrs (ActChgMaxRubCri + 360)
#define ActReqDatWrkCrs (ActFrmNewRubCri + 361) #define ActReqDatWrkCrs (ActChgMaxRubCri + 361)
#define ActChgDatWrkCrs (ActFrmNewRubCri + 362) #define ActChgDatWrkCrs (ActChgMaxRubCri + 362)
#define ActDowWrkCrs (ActFrmNewRubCri + 363) #define ActDowWrkCrs (ActChgMaxRubCri + 363)
#define ActChgToSeeMrk (ActFrmNewRubCri + 364) #define ActChgToSeeMrk (ActChgMaxRubCri + 364)
#define ActSeeMrkCrs (ActFrmNewRubCri + 365) #define ActSeeMrkCrs (ActChgMaxRubCri + 365)
#define ActExpSeeMrkCrs (ActFrmNewRubCri + 366) #define ActExpSeeMrkCrs (ActChgMaxRubCri + 366)
#define ActConSeeMrkCrs (ActFrmNewRubCri + 367) #define ActConSeeMrkCrs (ActChgMaxRubCri + 367)
#define ActReqDatSeeMrkCrs (ActFrmNewRubCri + 368) #define ActReqDatSeeMrkCrs (ActChgMaxRubCri + 368)
#define ActReqLnkSeeMrkCrs (ActFrmNewRubCri + 369) #define ActReqLnkSeeMrkCrs (ActChgMaxRubCri + 369)
#define ActSeeMyMrkCrs (ActFrmNewRubCri + 370) #define ActSeeMyMrkCrs (ActChgMaxRubCri + 370)
#define ActSeeMrkGrp (ActFrmNewRubCri + 371) #define ActSeeMrkGrp (ActChgMaxRubCri + 371)
#define ActExpSeeMrkGrp (ActFrmNewRubCri + 372) #define ActExpSeeMrkGrp (ActChgMaxRubCri + 372)
#define ActConSeeMrkGrp (ActFrmNewRubCri + 373) #define ActConSeeMrkGrp (ActChgMaxRubCri + 373)
#define ActReqDatSeeMrkGrp (ActFrmNewRubCri + 374) #define ActReqDatSeeMrkGrp (ActChgMaxRubCri + 374)
#define ActSeeMyMrkGrp (ActFrmNewRubCri + 375) #define ActSeeMyMrkGrp (ActChgMaxRubCri + 375)
#define ActChgToAdmMrk (ActFrmNewRubCri + 376) #define ActChgToAdmMrk (ActChgMaxRubCri + 376)
#define ActAdmMrkCrs (ActFrmNewRubCri + 377) #define ActAdmMrkCrs (ActChgMaxRubCri + 377)
#define ActReqRemFilMrkCrs (ActFrmNewRubCri + 378) #define ActReqRemFilMrkCrs (ActChgMaxRubCri + 378)
#define ActRemFilMrkCrs (ActFrmNewRubCri + 379) #define ActRemFilMrkCrs (ActChgMaxRubCri + 379)
#define ActRemFolMrkCrs (ActFrmNewRubCri + 380) #define ActRemFolMrkCrs (ActChgMaxRubCri + 380)
#define ActCopMrkCrs (ActFrmNewRubCri + 381) #define ActCopMrkCrs (ActChgMaxRubCri + 381)
#define ActPasMrkCrs (ActFrmNewRubCri + 382) #define ActPasMrkCrs (ActChgMaxRubCri + 382)
#define ActRemTreMrkCrs (ActFrmNewRubCri + 383) #define ActRemTreMrkCrs (ActChgMaxRubCri + 383)
#define ActFrmCreMrkCrs (ActFrmNewRubCri + 384) #define ActFrmCreMrkCrs (ActChgMaxRubCri + 384)
#define ActCreFolMrkCrs (ActFrmNewRubCri + 385) #define ActCreFolMrkCrs (ActChgMaxRubCri + 385)
#define ActRenFolMrkCrs (ActFrmNewRubCri + 386) #define ActRenFolMrkCrs (ActChgMaxRubCri + 386)
#define ActRcvFilMrkCrsDZ (ActFrmNewRubCri + 387) #define ActRcvFilMrkCrsDZ (ActChgMaxRubCri + 387)
#define ActRcvFilMrkCrsCla (ActFrmNewRubCri + 388) #define ActRcvFilMrkCrsCla (ActChgMaxRubCri + 388)
#define ActExpAdmMrkCrs (ActFrmNewRubCri + 389) #define ActExpAdmMrkCrs (ActChgMaxRubCri + 389)
#define ActConAdmMrkCrs (ActFrmNewRubCri + 390) #define ActConAdmMrkCrs (ActChgMaxRubCri + 390)
#define ActZIPAdmMrkCrs (ActFrmNewRubCri + 391) #define ActZIPAdmMrkCrs (ActChgMaxRubCri + 391)
#define ActUnhMrkCrs (ActFrmNewRubCri + 392) #define ActUnhMrkCrs (ActChgMaxRubCri + 392)
#define ActHidMrkCrs (ActFrmNewRubCri + 393) #define ActHidMrkCrs (ActChgMaxRubCri + 393)
#define ActReqDatAdmMrkCrs (ActFrmNewRubCri + 394) #define ActReqDatAdmMrkCrs (ActChgMaxRubCri + 394)
#define ActChgDatAdmMrkCrs (ActFrmNewRubCri + 395) #define ActChgDatAdmMrkCrs (ActChgMaxRubCri + 395)
#define ActReqLnkAdmMrkCrs (ActFrmNewRubCri + 396) #define ActReqLnkAdmMrkCrs (ActChgMaxRubCri + 396)
#define ActDowAdmMrkCrs (ActFrmNewRubCri + 397) #define ActDowAdmMrkCrs (ActChgMaxRubCri + 397)
#define ActChgNumRowHeaCrs (ActFrmNewRubCri + 398) #define ActChgNumRowHeaCrs (ActChgMaxRubCri + 398)
#define ActChgNumRowFooCrs (ActFrmNewRubCri + 399) #define ActChgNumRowFooCrs (ActChgMaxRubCri + 399)
#define ActAdmMrkGrp (ActFrmNewRubCri + 400) #define ActAdmMrkGrp (ActChgMaxRubCri + 400)
#define ActReqRemFilMrkGrp (ActFrmNewRubCri + 401) #define ActReqRemFilMrkGrp (ActChgMaxRubCri + 401)
#define ActRemFilMrkGrp (ActFrmNewRubCri + 402) #define ActRemFilMrkGrp (ActChgMaxRubCri + 402)
#define ActRemFolMrkGrp (ActFrmNewRubCri + 403) #define ActRemFolMrkGrp (ActChgMaxRubCri + 403)
#define ActCopMrkGrp (ActFrmNewRubCri + 404) #define ActCopMrkGrp (ActChgMaxRubCri + 404)
#define ActPasMrkGrp (ActFrmNewRubCri + 405) #define ActPasMrkGrp (ActChgMaxRubCri + 405)
#define ActRemTreMrkGrp (ActFrmNewRubCri + 406) #define ActRemTreMrkGrp (ActChgMaxRubCri + 406)
#define ActFrmCreMrkGrp (ActFrmNewRubCri + 407) #define ActFrmCreMrkGrp (ActChgMaxRubCri + 407)
#define ActCreFolMrkGrp (ActFrmNewRubCri + 408) #define ActCreFolMrkGrp (ActChgMaxRubCri + 408)
#define ActRenFolMrkGrp (ActFrmNewRubCri + 409) #define ActRenFolMrkGrp (ActChgMaxRubCri + 409)
#define ActRcvFilMrkGrpDZ (ActFrmNewRubCri + 410) #define ActRcvFilMrkGrpDZ (ActChgMaxRubCri + 410)
#define ActRcvFilMrkGrpCla (ActFrmNewRubCri + 411) #define ActRcvFilMrkGrpCla (ActChgMaxRubCri + 411)
#define ActExpAdmMrkGrp (ActFrmNewRubCri + 412) #define ActExpAdmMrkGrp (ActChgMaxRubCri + 412)
#define ActConAdmMrkGrp (ActFrmNewRubCri + 413) #define ActConAdmMrkGrp (ActChgMaxRubCri + 413)
#define ActZIPAdmMrkGrp (ActFrmNewRubCri + 414) #define ActZIPAdmMrkGrp (ActChgMaxRubCri + 414)
#define ActUnhMrkGrp (ActFrmNewRubCri + 415) #define ActUnhMrkGrp (ActChgMaxRubCri + 415)
#define ActHidMrkGrp (ActFrmNewRubCri + 416) #define ActHidMrkGrp (ActChgMaxRubCri + 416)
#define ActReqDatAdmMrkGrp (ActFrmNewRubCri + 417) #define ActReqDatAdmMrkGrp (ActChgMaxRubCri + 417)
#define ActChgDatAdmMrkGrp (ActFrmNewRubCri + 418) #define ActChgDatAdmMrkGrp (ActChgMaxRubCri + 418)
#define ActDowAdmMrkGrp (ActFrmNewRubCri + 419) #define ActDowAdmMrkGrp (ActChgMaxRubCri + 419)
#define ActChgNumRowHeaGrp (ActFrmNewRubCri + 420) #define ActChgNumRowHeaGrp (ActChgMaxRubCri + 420)
#define ActChgNumRowFooGrp (ActFrmNewRubCri + 421) #define ActChgNumRowFooGrp (ActChgMaxRubCri + 421)
#define ActReqRemFilBrf (ActFrmNewRubCri + 422) #define ActReqRemFilBrf (ActChgMaxRubCri + 422)
#define ActRemFilBrf (ActFrmNewRubCri + 423) #define ActRemFilBrf (ActChgMaxRubCri + 423)
#define ActRemFolBrf (ActFrmNewRubCri + 424) #define ActRemFolBrf (ActChgMaxRubCri + 424)
#define ActCopBrf (ActFrmNewRubCri + 425) #define ActCopBrf (ActChgMaxRubCri + 425)
#define ActPasBrf (ActFrmNewRubCri + 426) #define ActPasBrf (ActChgMaxRubCri + 426)
#define ActRemTreBrf (ActFrmNewRubCri + 427) #define ActRemTreBrf (ActChgMaxRubCri + 427)
#define ActFrmCreBrf (ActFrmNewRubCri + 428) #define ActFrmCreBrf (ActChgMaxRubCri + 428)
#define ActCreFolBrf (ActFrmNewRubCri + 429) #define ActCreFolBrf (ActChgMaxRubCri + 429)
#define ActCreLnkBrf (ActFrmNewRubCri + 430) #define ActCreLnkBrf (ActChgMaxRubCri + 430)
#define ActRenFolBrf (ActFrmNewRubCri + 431) #define ActRenFolBrf (ActChgMaxRubCri + 431)
#define ActRcvFilBrfDZ (ActFrmNewRubCri + 432) #define ActRcvFilBrfDZ (ActChgMaxRubCri + 432)
#define ActRcvFilBrfCla (ActFrmNewRubCri + 433) #define ActRcvFilBrfCla (ActChgMaxRubCri + 433)
#define ActExpBrf (ActFrmNewRubCri + 434) #define ActExpBrf (ActChgMaxRubCri + 434)
#define ActConBrf (ActFrmNewRubCri + 435) #define ActConBrf (ActChgMaxRubCri + 435)
#define ActZIPBrf (ActFrmNewRubCri + 436) #define ActZIPBrf (ActChgMaxRubCri + 436)
#define ActReqDatBrf (ActFrmNewRubCri + 437) #define ActReqDatBrf (ActChgMaxRubCri + 437)
#define ActChgDatBrf (ActFrmNewRubCri + 438) #define ActChgDatBrf (ActChgMaxRubCri + 438)
#define ActDowBrf (ActFrmNewRubCri + 439) #define ActDowBrf (ActChgMaxRubCri + 439)
#define ActReqRemOldBrf (ActFrmNewRubCri + 440) #define ActReqRemOldBrf (ActChgMaxRubCri + 440)
#define ActRemOldBrf (ActFrmNewRubCri + 441) #define ActRemOldBrf (ActChgMaxRubCri + 441)
/*****************************************************************************/ /*****************************************************************************/
/******************************* Users tab ***********************************/ /******************************* Users tab ***********************************/
@ -1760,7 +1768,7 @@
#define ActLst_NUM_ACTIONS (ActChgMyTT1stDay + 1) #define ActLst_NUM_ACTIONS (ActChgMyTT1stDay + 1)
#define ActLst_MAX_ACTION_COD 1959 #define ActLst_MAX_ACTION_COD 1967
#define ActLst_DEFAULT_ACTION_AFTER_LOGIN ActSeeGblTL #define ActLst_DEFAULT_ACTION_AFTER_LOGIN ActSeeGblTL

View File

@ -1354,7 +1354,7 @@ void Agd_MakeEventPublic (void)
/******************** Put a form to create a new event ***********************/ /******************** Put a form to create a new event ***********************/
/*****************************************************************************/ /*****************************************************************************/
void Agd_RequestCreatOrEditEvent (void) void Agd_ReqCreatOrEditEvent (void)
{ {
extern const char *Hlp_PROFILE_Agenda_new_event; extern const char *Hlp_PROFILE_Agenda_new_event;
extern const char *Hlp_PROFILE_Agenda_edit_event; extern const char *Hlp_PROFILE_Agenda_edit_event;
@ -1590,7 +1590,7 @@ void Agd_ReceiveFormEvent (void)
} }
else else
// TODO: The form should be filled with partial data, now is always empty // TODO: The form should be filled with partial data, now is always empty
Agd_RequestCreatOrEditEvent (); Agd_ReqCreatOrEditEvent ();
} }
/*****************************************************************************/ /*****************************************************************************/

View File

@ -111,7 +111,7 @@ void Agd_GetParsAndShowMyAgenda (void);
void Agd_ShowUsrAgenda (void); void Agd_ShowUsrAgenda (void);
void Agd_ShowOtherAgendaAfterLogIn (void); void Agd_ShowOtherAgendaAfterLogIn (void);
void Agd_RequestCreatOrEditEvent (void); void Agd_ReqCreatOrEditEvent (void);
void Agd_PutParsMyAgenda (unsigned Past__FutureEvents, void Agd_PutParsMyAgenda (unsigned Past__FutureEvents,
unsigned PrivatPublicEvents, unsigned PrivatPublicEvents,

View File

@ -1144,7 +1144,7 @@ void Asg_UnhideAssignment (void)
/****************** Put a form to create a new assignment ********************/ /****************** Put a form to create a new assignment ********************/
/*****************************************************************************/ /*****************************************************************************/
void Asg_RequestCreatOrEditAsg (void) void Asg_ReqCreatOrEditAsg (void)
{ {
extern const char *Hlp_ASSESSMENT_Assignments_new_assignment; extern const char *Hlp_ASSESSMENT_Assignments_new_assignment;
extern const char *Hlp_ASSESSMENT_Assignments_edit_assignment; extern const char *Hlp_ASSESSMENT_Assignments_edit_assignment;
@ -1527,7 +1527,7 @@ void Asg_ReceiveFormAssignment (void)
} }
else else
// TODO: The form should be filled with partial data, now is always empty // TODO: The form should be filled with partial data, now is always empty
Asg_RequestCreatOrEditAsg (); Asg_ReqCreatOrEditAsg ();
} }
/*****************************************************************************/ /*****************************************************************************/

View File

@ -90,7 +90,7 @@ void Asg_ShowOneAssignmentInBox (struct Asg_Assignments *Assignments);
Dat_StartEndTime_t Asg_GetParAsgOrder (void); Dat_StartEndTime_t Asg_GetParAsgOrder (void);
void Asg_RequestCreatOrEditAsg (void); void Asg_ReqCreatOrEditAsg (void);
void Asg_GetDataOfAssignmentByCod (struct Asg_Assignment *Asg); void Asg_GetDataOfAssignmentByCod (struct Asg_Assignment *Asg);
void Asg_GetDataOfAssignmentByFolder (struct Asg_Assignment *Asg); void Asg_GetDataOfAssignmentByFolder (struct Asg_Assignment *Asg);

View File

@ -937,7 +937,7 @@ void Att_UnhideAttEvent (void)
/*************** Put a form to create a new attendance event *****************/ /*************** Put a form to create a new attendance event *****************/
/*****************************************************************************/ /*****************************************************************************/
void Att_RequestCreatOrEditAttEvent (void) void Att_ReqCreatOrEditAttEvent (void)
{ {
extern const char *Hlp_USERS_Attendance_new_event; extern const char *Hlp_USERS_Attendance_new_event;
extern const char *Hlp_USERS_Attendance_edit_event; extern const char *Hlp_USERS_Attendance_edit_event;
@ -1252,7 +1252,7 @@ void Att_ReceiveFormAttEvent (void)
Grp_FreeListCodSelectedGrps (); Grp_FreeListCodSelectedGrps ();
} }
else else
Att_RequestCreatOrEditAttEvent (); Att_ReqCreatOrEditAttEvent ();
/***** Show attendance events again *****/ /***** Show attendance events again *****/
Att_SeeAttEvents (); Att_SeeAttEvents ();

View File

@ -87,7 +87,7 @@ void Att_SeeAttEvents (void);
bool Att_CheckIfICanEditAttEvents (void); bool Att_CheckIfICanEditAttEvents (void);
void Att_RequestCreatOrEditAttEvent (void); void Att_ReqCreatOrEditAttEvent (void);
bool Att_GetDataOfAttEventByCod (struct Att_Event *Event); bool Att_GetDataOfAttEventByCod (struct Att_Event *Event);
void Att_AskRemAttEvent (void); void Att_AskRemAttEvent (void);

View File

@ -396,7 +396,7 @@ void Cfe_PrintCallForExam (void)
/************************** Remove a call for exam ***************************/ /************************** Remove a call for exam ***************************/
/*****************************************************************************/ /*****************************************************************************/
void Cfe_ReqRemoveCallForExam (void) void Cfe_ReqRemCallForExam (void)
{ {
extern const char *Txt_Do_you_really_want_to_remove_the_following_call_for_exam; extern const char *Txt_Do_you_really_want_to_remove_the_following_call_for_exam;
struct Cfe_CallsForExams CallsForExams; struct Cfe_CallsForExams CallsForExams;

View File

@ -112,7 +112,7 @@ void Cfe_FreeMemCallForExam (struct Cfe_CallsForExams *CallsForExams);
void Cfe_ReceiveCallForExam1 (void); void Cfe_ReceiveCallForExam1 (void);
void Cfe_ReceiveCallForExam2 (void); void Cfe_ReceiveCallForExam2 (void);
void Cfe_PrintCallForExam (void); void Cfe_PrintCallForExam (void);
void Cfe_ReqRemoveCallForExam (void); void Cfe_ReqRemCallForExam (void);
void Cfe_RemoveCallForExam1 (void); void Cfe_RemoveCallForExam1 (void);
void Cfe_RemoveCallForExam2 (void); void Cfe_RemoveCallForExam2 (void);
void Cfe_HideCallForExam (void); void Cfe_HideCallForExam (void);

View File

@ -796,7 +796,7 @@ static void CtrCfg_NumCrss (void)
/*********** Show a form for sending a logo of the current center ************/ /*********** Show a form for sending a logo of the current center ************/
/*****************************************************************************/ /*****************************************************************************/
void CtrCfg_RequestLogo (void) void CtrCfg_ReqLogo (void)
{ {
Lgo_RequestLogo (HieLvl_CTR); Lgo_RequestLogo (HieLvl_CTR);
} }
@ -823,7 +823,7 @@ void CtrCfg_RemoveLogo (void)
/*********** Show a form for sending a photo of the current center ***********/ /*********** Show a form for sending a photo of the current center ***********/
/*****************************************************************************/ /*****************************************************************************/
void CtrCfg_RequestPhoto (void) void CtrCfg_ReqPhoto (void)
{ {
extern const char *Txt_Photo; extern const char *Txt_Photo;
extern const char *Txt_Recommended_aspect_ratio; extern const char *Txt_Recommended_aspect_ratio;

View File

@ -30,10 +30,10 @@
void CtrCfg_ShowConfiguration (void); void CtrCfg_ShowConfiguration (void);
void CtrCfg_PrintConfiguration (void); void CtrCfg_PrintConfiguration (void);
void CtrCfg_RequestLogo (void); void CtrCfg_ReqLogo (void);
void CtrCfg_ReceiveLogo (void); void CtrCfg_ReceiveLogo (void);
void CtrCfg_RemoveLogo (void); void CtrCfg_RemoveLogo (void);
void CtrCfg_RequestPhoto (void); void CtrCfg_ReqPhoto (void);
void CtrCfg_ReceivePhoto (void); void CtrCfg_ReceivePhoto (void);
void CtrCfg_ChangeCtrPhotoAttr (void); void CtrCfg_ChangeCtrPhotoAttr (void);
void CtrCfg_ChangeCtrIns (void); void CtrCfg_ChangeCtrIns (void);

View File

@ -629,10 +629,19 @@ TODO: Emilce Barrera Mesa: Podr
TODO: Emilce Barrera Mesa: Mis estudiantes presentan muchas dificultades a la hora de poner la foto porque la plataforma es muy exigente respecto al fondo de la imagen. TODO: Emilce Barrera Mesa: Mis estudiantes presentan muchas dificultades a la hora de poner la foto porque la plataforma es muy exigente respecto al fondo de la imagen.
*/ */
#define Log_PLATFORM_VERSION "SWAD 22.74.2 (2023-03-10)" #define Log_PLATFORM_VERSION "SWAD 22.75 (2023-03-17)"
#define CSS_FILE "swad22.57.1.css" #define CSS_FILE "swad22.57.1.css"
#define JS_FILE "swad22.49.js" #define JS_FILE "swad22.49.js"
/* /*
Version 22.75.1: Mar 17, 2023 Fixed up and down criteria. (? lines)
Version 22.75: Mar 17, 2023 New module swad_rubric_criteria. (337631 lines)
Code refactoring in exams.
2 changes necessary in database:
DROP TABLE IF EXISTS rub_criteria;
CREATE TABLE IF NOT EXISTS rub_criteria (CriCod INT NOT NULL AUTO_INCREMENT,RubCod INT NOT NULL,CriInd INT NOT NULL,MinVal DOUBLE PRECISION NOT NULL DEFAULT 0,MaxVal DOUBLE PRECISION NOT NULL DEFAULT 1,Title VARCHAR(2047) NOT NULL,UNIQUE INDEX(CriCod),UNIQUE INDEX(RubCod,CriInd));
If you want to use MyISAM:
ALTER TABLE rub_criteria ENGINE=MyISAM;
Version 22.74.2: Mar 10, 2023 Fixed bugs in exam sets. (336744 lines) Version 22.74.2: Mar 10, 2023 Fixed bugs in exam sets. (336744 lines)
Version 22.74.1: Mar 10, 2023 Fixed links to help. (336741 lines) Version 22.74.1: Mar 10, 2023 Fixed links to help. (336741 lines)
Version 22.74: Mar 10, 2023 New module swad_parameter_code. (336740 lines) Version 22.74: Mar 10, 2023 New module swad_parameter_code. (336740 lines)

View File

@ -2799,21 +2799,27 @@ mysql> DESCRIBE roo_check_in;
/***** Table rub_criteria *****/ /***** Table rub_criteria *****/
/* /*
mysql> DESCRIBE rub_criteria; mysql> DESCRIBE rub_criteria;
+--------+------+------+-----+---------+-------+ +--------+---------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra | | Field | Type | Null | Key | Default | Extra |
+--------+------+------+-----+---------+-------+ +--------+---------------+------+-----+---------+----------------+
| RubCod | int | NO | PRI | NULL | | | CriCod | int | NO | PRI | NULL | auto_increment |
| CriInd | int | NO | PRI | NULL | | | RubCod | int | NO | MUL | NULL | |
| CriCod | int | NO | | NULL | | | CriInd | int | NO | | NULL | |
+--------+------+------+-----+---------+-------+ | MinVal | double | NO | | 0 | |
3 rows in set (0,00 sec) | MaxVal | double | NO | | 1 | |
| Title | varchar(2047) | NO | | NULL | |
+--------+---------------+------+-----+---------+----------------+
6 rows in set (0,00 sec)
*/ */
DB_CreateTable ("CREATE TABLE IF NOT EXISTS rub_criteria (" DB_CreateTable ("CREATE TABLE IF NOT EXISTS rub_criteria ("
"CriCod INT NOT NULL AUTO_INCREMENT,"
"RubCod INT NOT NULL," "RubCod INT NOT NULL,"
"CriInd INT NOT NULL," "CriInd INT NOT NULL,"
"CriCod INT NOT NULL," "MinVal DOUBLE PRECISION NOT NULL DEFAULT 0,"
"UNIQUE INDEX(RubCod,CriInd)," "MaxVal DOUBLE PRECISION NOT NULL DEFAULT 1,"
"UNIQUE INDEX(RubCod,CriCod))"); "Title VARCHAR(2047) NOT NULL,"
"UNIQUE INDEX(CriCod),"
"UNIQUE INDEX(RubCod,CriInd))");
/***** Table rub_rubrics *****/ /***** Table rub_rubrics *****/
/* /*

View File

@ -1535,33 +1535,6 @@ static void Deg_ShowAlertAndButtonToGoToDeg (void)
Ale_ShowAlerts (NULL); Ale_ShowAlerts (NULL);
} }
/*****************************************************************************/
/*********** Show a form for sending a logo of the current degree ************/
/*****************************************************************************/
void Deg_RequestLogo (void)
{
Lgo_RequestLogo (HieLvl_DEG);
}
/*****************************************************************************/
/***************** Receive the logo of the current degree ********************/
/*****************************************************************************/
void Deg_ReceiveLogo (void)
{
Lgo_ReceiveLogo (HieLvl_DEG);
}
/*****************************************************************************/
/****************** Remove the logo of the current degree ********************/
/*****************************************************************************/
void Deg_RemoveLogo (void)
{
Lgo_RemoveLogo (HieLvl_DEG);
}
/*****************************************************************************/ /*****************************************************************************/
/*********************** Get total number of degrees *************************/ /*********************** Get total number of degrees *************************/
/*****************************************************************************/ /*****************************************************************************/

View File

@ -102,10 +102,6 @@ void Deg_ChangeDegWWW (void);
void Deg_ChangeDegStatus (void); void Deg_ChangeDegStatus (void);
void Deg_ContEditAfterChgDeg (void); void Deg_ContEditAfterChgDeg (void);
void Deg_RequestLogo (void);
void Deg_ReceiveLogo (void);
void Deg_RemoveLogo (void);
unsigned Deg_GetCachedNumDegsInSys (void); unsigned Deg_GetCachedNumDegsInSys (void);
void Deg_FlushCacheNumDegsInCty (void); void Deg_FlushCacheNumDegsInCty (void);

View File

@ -442,6 +442,33 @@ void DegCfg_ChangeDegWWW (void)
DegCfg_ShowConfiguration (); DegCfg_ShowConfiguration ();
} }
/*****************************************************************************/
/*********** Show a form for sending a logo of the current degree ************/
/*****************************************************************************/
void DegCfg_ReqLogo (void)
{
Lgo_RequestLogo (HieLvl_DEG);
}
/*****************************************************************************/
/***************** Receive the logo of the current degree ********************/
/*****************************************************************************/
void DegCfg_ReceiveLogo (void)
{
Lgo_ReceiveLogo (HieLvl_DEG);
}
/*****************************************************************************/
/****************** Remove the logo of the current degree ********************/
/*****************************************************************************/
void DegCfg_RemoveLogo (void)
{
Lgo_RemoveLogo (HieLvl_DEG);
}
/*****************************************************************************/ /*****************************************************************************/
/** Show message of success after changing a degree in degree configuration **/ /** Show message of success after changing a degree in degree configuration **/
/*****************************************************************************/ /*****************************************************************************/

View File

@ -34,6 +34,9 @@ void DegCfg_ChangeDegCtr (void);
void DegCfg_RenameDegreeShort (void); void DegCfg_RenameDegreeShort (void);
void DegCfg_RenameDegreeFull (void); void DegCfg_RenameDegreeFull (void);
void DegCfg_ChangeDegWWW (void); void DegCfg_ChangeDegWWW (void);
void DegCfg_ReqLogo (void);
void DegCfg_ReceiveLogo (void);
void DegCfg_RemoveLogo (void);
void DegCfg_ContEditAfterChgDeg (void); void DegCfg_ContEditAfterChgDeg (void);
#endif #endif

View File

@ -1226,10 +1226,10 @@ static void Exa_HideUnhideExam (bool Hide)
} }
/*****************************************************************************/ /*****************************************************************************/
/**************** Request the creation or edition of an exam ******************/ /*************** Request the creation or edition of an exam ******************/
/*****************************************************************************/ /*****************************************************************************/
void Exa_RequestCreatOrEditExam (void) void Exa_ReqCreatOrEditExam (void)
{ {
struct Exa_Exams Exams; struct Exa_Exams Exams;
struct ExaSet_Set Set; struct ExaSet_Set Set;
@ -1427,8 +1427,7 @@ void Exa_ReceiveFormExam (void)
if (!ItsANewExam) if (!ItsANewExam)
Exa_GetDataOfExamByCod (&Exams.Exam); Exa_GetDataOfExamByCod (&Exams.Exam);
/***** If I can edit exams ==> /***** Overwrite some exam data with the data received from form *****/
overwrite some exam data with the data received from form *****/
Exa_ReceiveExamFieldsFromForm (&Exams.Exam,Txt); Exa_ReceiveExamFieldsFromForm (&Exams.Exam,Txt);
if (Exa_CheckExamFieldsReceivedFromForm (&Exams.Exam)) if (Exa_CheckExamFieldsReceivedFromForm (&Exams.Exam))
{ {
@ -1444,7 +1443,7 @@ void Exa_ReceiveFormExam (void)
/***** Show current exam and its sets *****/ /***** Show current exam and its sets *****/
Exa_PutFormsOneExam (&Exams,&Set, Exa_PutFormsOneExam (&Exams,&Set,
ItsANewExam); // It's not a new exam ItsANewExam);
} }
static void Exa_ReceiveExamFieldsFromForm (struct Exa_Exam *Exam, static void Exa_ReceiveExamFieldsFromForm (struct Exa_Exam *Exam,

View File

@ -67,7 +67,7 @@ void Exa_RemoveCrsExams (long CrsCod);
void Exa_HideExam (void); void Exa_HideExam (void);
void Exa_UnhideExam (void); void Exa_UnhideExam (void);
void Exa_RequestCreatOrEditExam (void); void Exa_ReqCreatOrEditExam (void);
void Exa_PutFormsOneExam (struct Exa_Exams *Exams, void Exa_PutFormsOneExam (struct Exa_Exams *Exams,
struct ExaSet_Set *Set, struct ExaSet_Set *Set,
bool ItsANewExam); bool ItsANewExam);

View File

@ -1,5 +1,4 @@
// swad_exam_database.c: exams operations with database // swad_exam_database.c: exams operations with database
/* /*
SWAD (Shared Workspace At a Distance), SWAD (Shared Workspace At a Distance),
is a web platform developed at the University of Granada (Spain), is a web platform developed at the University of Granada (Spain),
@ -524,7 +523,7 @@ void Exa_DB_RemoveAllExamsFromCrs (long CrsCod)
/********************** Create a new set of questions ************************/ /********************** Create a new set of questions ************************/
/*****************************************************************************/ /*****************************************************************************/
long Exa_DB_CreateSet (const struct ExaSet_Set *Set,unsigned SetInd) long Exa_DB_CreateSet (const struct ExaSet_Set *Set)
{ {
return return
DB_QueryINSERTandReturnCode ("can not create new set of questions", DB_QueryINSERTandReturnCode ("can not create new set of questions",
@ -533,31 +532,11 @@ long Exa_DB_CreateSet (const struct ExaSet_Set *Set,unsigned SetInd)
" VALUES" " VALUES"
" (%ld,%u,%u,'%s')", " (%ld,%u,%u,'%s')",
Set->ExaCod, Set->ExaCod,
SetInd, Set->SetInd,
Set->NumQstsToPrint, Set->NumQstsToPrint,
Set->Title); Set->Title);
} }
/*****************************************************************************/
/******************** Update an existing set of questions ********************/
/*****************************************************************************/
void Exa_DB_UpdateSet (const struct ExaSet_Set *Set)
{
DB_QueryUPDATE ("can not update set of questions",
"UPDATE exa_sets"
" SET ExaCod=%ld,"
"SetInd=%u,"
"NumQstsToPrint=%u,"
"Title='%s'"
" WHERE SetCod=%ld",
Set->ExaCod,
Set->SetInd,
Set->NumQstsToPrint,
Set->Title,
Set->SetCod);
}
/*****************************************************************************/ /*****************************************************************************/
/************************ Update set title in database ***********************/ /************************ Update set title in database ***********************/
/*****************************************************************************/ /*****************************************************************************/
@ -565,7 +544,6 @@ void Exa_DB_UpdateSet (const struct ExaSet_Set *Set)
void Exa_DB_UpdateSetTitle (long SetCod,long ExaCod, void Exa_DB_UpdateSetTitle (long SetCod,long ExaCod,
const char NewTitle[ExaSet_MAX_BYTES_TITLE + 1]) const char NewTitle[ExaSet_MAX_BYTES_TITLE + 1])
{ {
/***** Update set of questions changing old title by new title *****/
DB_QueryUPDATE ("can not update the title of a set of questions", DB_QueryUPDATE ("can not update the title of a set of questions",
"UPDATE exa_sets" "UPDATE exa_sets"
" SET Title='%s'" " SET Title='%s'"
@ -597,7 +575,7 @@ void Exa_DB_UpdateNumQstsToExam (long SetCod,long ExaCod,unsigned NumQstsToPrint
/************ Change indexes of sets greater than a given index **************/ /************ Change indexes of sets greater than a given index **************/
/*****************************************************************************/ /*****************************************************************************/
void Exa_DB_UpdateSetIndexesInExamGreaterThan (long ExaCod,long SetInd) void Exa_DB_UpdateSetIndexesInExamGreaterThan (long ExaCod,unsigned SetInd)
{ {
DB_QueryUPDATE ("can not update indexes of sets", DB_QueryUPDATE ("can not update indexes of sets",
"UPDATE exa_sets" "UPDATE exa_sets"

View File

@ -54,12 +54,11 @@ void Exa_DB_RemoveExam (long ExaCod);
void Exa_DB_RemoveAllExamsFromCrs (long CrsCod); void Exa_DB_RemoveAllExamsFromCrs (long CrsCod);
//--------------------------------- Sets -------------------------------------- //--------------------------------- Sets --------------------------------------
long Exa_DB_CreateSet (const struct ExaSet_Set *Set,unsigned SetInd); long Exa_DB_CreateSet (const struct ExaSet_Set *Set);
void Exa_DB_UpdateSet (const struct ExaSet_Set *Set);
void Exa_DB_UpdateSetTitle (long SetCod,long ExaCod, void Exa_DB_UpdateSetTitle (long SetCod,long ExaCod,
const char NewTitle[ExaSet_MAX_BYTES_TITLE + 1]); const char NewTitle[ExaSet_MAX_BYTES_TITLE + 1]);
void Exa_DB_UpdateNumQstsToExam (long SetCod,long ExaCod,unsigned NumQstsToPrint); void Exa_DB_UpdateNumQstsToExam (long SetCod,long ExaCod,unsigned NumQstsToPrint);
void Exa_DB_UpdateSetIndexesInExamGreaterThan (long ExaCod,long SetInd); void Exa_DB_UpdateSetIndexesInExamGreaterThan (long ExaCod,unsigned SetInd);
void Exa_DB_UpdateSetIndex (long SetInd,long SetCod,long ExaCod); void Exa_DB_UpdateSetIndex (long SetInd,long SetCod,long ExaCod);
void Exa_DB_LockTables (void); void Exa_DB_LockTables (void);
unsigned Exa_DB_GetNumSetsExam (long ExaCod); unsigned Exa_DB_GetNumSetsExam (long ExaCod);

View File

@ -722,7 +722,7 @@ static void ExaPrn_WriteQstAndAnsToFill (const struct ExaPrn_Print *Print,
/***** Number of question and answer type *****/ /***** Number of question and answer type *****/
HTM_TD_Begin ("class=\"RT\""); HTM_TD_Begin ("class=\"RT\"");
Qst_WriteNumQst (QstInd + 1,"BIG_INDEX"); Lay_WriteIndex (QstInd + 1,"BIG_INDEX");
Qst_WriteAnswerType (Question->Answer.Type,"DAT_SMALL"); Qst_WriteAnswerType (Question->Answer.Type,"DAT_SMALL");
HTM_TD_End (); HTM_TD_End ();

View File

@ -1885,7 +1885,7 @@ static void ExaRes_WriteQstAndAnsExam (struct Usr_Data *UsrDat,
/***** Number of question and answer type *****/ /***** Number of question and answer type *****/
HTM_TD_Begin ("class=\"RT %s\"",The_GetColorRows ()); HTM_TD_Begin ("class=\"RT %s\"",The_GetColorRows ());
Qst_WriteNumQst (QstInd + 1,ClassNumQst[Question->Validity]); Lay_WriteIndex (QstInd + 1,ClassNumQst[Question->Validity]);
Qst_WriteAnswerType (Question->Answer.Type, Qst_WriteAnswerType (Question->Answer.Type,
ClassAnswerType[Question->Validity]); ClassAnswerType[Question->Validity]);
HTM_TD_End (); HTM_TD_End ();

View File

@ -784,7 +784,7 @@ static void ExaSes_GetSessionDataFromRow (MYSQL_RES *mysql_res,
/********** Request the removal of an exam session (exam instance) ***********/ /********** Request the removal of an exam session (exam instance) ***********/
/*****************************************************************************/ /*****************************************************************************/
void ExaSes_RequestRemoveSession (void) void ExaSes_ReqRemSession (void)
{ {
extern const char *Txt_Do_you_really_want_to_remove_the_session_X; extern const char *Txt_Do_you_really_want_to_remove_the_session_X;
extern const char *Txt_Remove_session; extern const char *Txt_Remove_session;
@ -1108,7 +1108,7 @@ void ExaSes_PutButtonNewSession (struct Exa_Exams *Exams)
/****************** Request the creation of a new session ********************/ /****************** Request the creation of a new session ********************/
/*****************************************************************************/ /*****************************************************************************/
void ExaSes_RequestCreatOrEditSes (void) void ExaSes_ReqCreatOrEditSes (void)
{ {
struct Exa_Exams Exams; struct Exa_Exams Exams;
struct ExaSes_Session Session; struct ExaSes_Session Session;

View File

@ -57,7 +57,7 @@ void ExaSes_GetDataOfSessionByCod (struct ExaSes_Session *Session);
void ExaSes_ToggleVisResultsSesUsr (void); void ExaSes_ToggleVisResultsSesUsr (void);
void ExaSes_RequestRemoveSession (void); void ExaSes_ReqRemSession (void);
void ExaSes_RemoveSession (void); void ExaSes_RemoveSession (void);
void ExaSes_HideSession (void); void ExaSes_HideSession (void);
@ -68,7 +68,7 @@ void ExaSes_GetAndCheckPars (struct Exa_Exams *Exams,
struct ExaSes_Session *Session); struct ExaSes_Session *Session);
void ExaSes_PutButtonNewSession (struct Exa_Exams *Exams); void ExaSes_PutButtonNewSession (struct Exa_Exams *Exams);
void ExaSes_RequestCreatOrEditSes (void); void ExaSes_ReqCreatOrEditSes (void);
void ExaSes_ReceiveFormSession (void); void ExaSes_ReceiveFormSession (void);
bool ExaSes_CheckIfICanAnswerThisSession (const struct Exa_Exam *Exam, bool ExaSes_CheckIfICanAnswerThisSession (const struct Exa_Exam *Exam,

View File

@ -84,9 +84,6 @@ static bool ExaSet_CheckSetTitleReceivedFromForm (const struct ExaSet_Set *Set,
const char NewTitle[ExaSet_MAX_BYTES_TITLE + 1]); const char NewTitle[ExaSet_MAX_BYTES_TITLE + 1]);
static void ExaSet_CreateSet (struct ExaSet_Set *Set); static void ExaSet_CreateSet (struct ExaSet_Set *Set);
static void ExaSet_UpdateSet (const struct ExaSet_Set *Set);
static void ExaSet_PutParSetCod (long SetCod);
static void ExaSet_ListSetQuestions (struct Exa_Exams *Exams, static void ExaSet_ListSetQuestions (struct Exa_Exams *Exams,
const struct ExaSet_Set *Set); const struct ExaSet_Set *Set);
@ -132,7 +129,7 @@ void ExaSet_PutParsOneSet (void *Exams)
if (Exams) if (Exams)
{ {
Exa_PutPars (Exams); Exa_PutPars (Exams);
ExaSet_PutParSetCod (((struct Exa_Exams *) Exams)->SetCod); ParCod_PutPar (ParCod_Set,((struct Exa_Exams *) Exams)->SetCod);
} }
} }
@ -204,7 +201,7 @@ void ExaSet_GetDataOfSetByCod (struct ExaSet_Set *Set)
} }
/*****************************************************************************/ /*****************************************************************************/
/********************* Put a form to create/edit an exam **********************/ /********************* Put a form to create/edit an exam *********************/
/*****************************************************************************/ /*****************************************************************************/
static void ExaSet_PutFormNewSet (struct Exa_Exams *Exams, static void ExaSet_PutFormNewSet (struct Exa_Exams *Exams,
@ -235,7 +232,7 @@ static void ExaSet_PutFormNewSet (struct Exa_Exams *Exams,
/***** Index *****/ /***** Index *****/
HTM_TD_Begin ("class=\"RM\""); HTM_TD_Begin ("class=\"RM\"");
Qst_WriteNumQst (MaxSetInd + 1,"BIG_INDEX"); Lay_WriteIndex (MaxSetInd + 1,"BIG_INDEX");
HTM_TD_End (); HTM_TD_End ();
/***** Title *****/ /***** Title *****/
@ -278,7 +275,6 @@ void ExaSet_ReceiveFormSet (void)
{ {
struct Exa_Exams Exams; struct Exa_Exams Exams;
struct ExaSet_Set Set; struct ExaSet_Set Set;
bool ItsANewSet;
/***** Reset exams context *****/ /***** Reset exams context *****/
Exa_ResetExams (&Exams); Exa_ResetExams (&Exams);
@ -288,8 +284,6 @@ void ExaSet_ReceiveFormSet (void)
/***** Get parameters *****/ /***** Get parameters *****/
Exa_GetPars (&Exams,true); Exa_GetPars (&Exams,true);
Set.ExaCod = Exams.Exam.ExaCod; Set.ExaCod = Exams.Exam.ExaCod;
Exams.SetCod = Set.SetCod = ParCod_GetPar (ParCod_Set);
ItsANewSet = (Set.SetCod <= 0);
/***** Get exam data from database *****/ /***** Get exam data from database *****/
Exa_GetDataOfExamByCod (&Exams.Exam); Exa_GetDataOfExamByCod (&Exams.Exam);
@ -301,13 +295,7 @@ void ExaSet_ReceiveFormSet (void)
/***** If I can edit exams ==> receive set from form *****/ /***** If I can edit exams ==> receive set from form *****/
ExaSet_ReceiveSetFieldsFromForm (&Set); ExaSet_ReceiveSetFieldsFromForm (&Set);
if (ExaSet_CheckSetTitleReceivedFromForm (&Set,Set.Title)) if (ExaSet_CheckSetTitleReceivedFromForm (&Set,Set.Title))
{ ExaSet_CreateSet (&Set); // Add new set to database
/***** Create a new exam or update an existing one *****/
if (ItsANewSet)
ExaSet_CreateSet (&Set); // Add new set to database
else
ExaSet_UpdateSet (&Set); // Update set data in database
}
/***** Show current exam and its sets *****/ /***** Show current exam and its sets *****/
Exa_PutFormsOneExam (&Exams,&Set, Exa_PutFormsOneExam (&Exams,&Set,
@ -462,33 +450,19 @@ static void ExaSet_CreateSet (struct ExaSet_Set *Set)
MaxSetInd = Exa_DB_GetMaxSetIndexInExam (Set->ExaCod); MaxSetInd = Exa_DB_GetMaxSetIndexInExam (Set->ExaCod);
/***** Create a new exam *****/ /***** Create a new exam *****/
Set->SetCod = Exa_DB_CreateSet (Set,MaxSetInd + 1); Set->SetInd = MaxSetInd + 1;
Set->SetCod = Exa_DB_CreateSet (Set);
/***** Write success message *****/ /***** Write success message *****/
Ale_ShowAlert (Ale_SUCCESS,Txt_Created_new_set_of_questions_X, Ale_ShowAlert (Ale_SUCCESS,Txt_Created_new_set_of_questions_X,
Set->Title); Set->Title);
} }
/*****************************************************************************/
/******************** Update an existing set of questions ********************/
/*****************************************************************************/
static void ExaSet_UpdateSet (const struct ExaSet_Set *Set)
{
extern const char *Txt_The_set_of_questions_has_been_modified;
/***** Update the data of the set of questions *****/
Exa_DB_UpdateSet (Set);
/***** Write success message *****/
Ale_ShowAlert (Ale_SUCCESS,Txt_The_set_of_questions_has_been_modified);
}
/*****************************************************************************/ /*****************************************************************************/
/********** Request the creation or edition of an set of questions ***********/ /********** Request the creation or edition of an set of questions ***********/
/*****************************************************************************/ /*****************************************************************************/
void ExaSet_RequestCreatOrEditSet (void) void ExaSet_ReqCreatOrEditSet (void)
{ {
struct Exa_Exams Exams; struct Exa_Exams Exams;
struct ExaSet_Set Set; struct ExaSet_Set Set;
@ -583,15 +557,6 @@ void ExaSet_ListQstsToAddToSet (void)
false); // It's not a new exam false); // It's not a new exam
} }
/*****************************************************************************/
/**************** Write parameter with index of set of questions *****************/
/*****************************************************************************/
static void ExaSet_PutParSetCod (long SetCod)
{
Par_PutParUnsigned (NULL,"SetCod",SetCod);
}
/*****************************************************************************/ /*****************************************************************************/
/************************* List the sets of an exam **************************/ /************************* List the sets of an exam **************************/
/*****************************************************************************/ /*****************************************************************************/
@ -707,6 +672,7 @@ static void ExaSet_ListOneOrMoreSetsForEdition (struct Exa_Exams *Exams,
{ {
/***** Create set of questions *****/ /***** Create set of questions *****/
ExaSet_ResetSet (&Set); ExaSet_ResetSet (&Set);
Set.ExaCod = Exams->Exam.ExaCod;
/***** Get set data *****/ /***** Get set data *****/
row = mysql_fetch_row (mysql_res); row = mysql_fetch_row (mysql_res);
@ -773,7 +739,7 @@ static void ExaSet_ListOneOrMoreSetsForEdition (struct Exa_Exams *Exams,
/***** Index *****/ /***** Index *****/
HTM_TD_Begin ("rowspan=\"2\" class=\"RT %s\"", HTM_TD_Begin ("rowspan=\"2\" class=\"RT %s\"",
The_GetColorRows ()); The_GetColorRows ());
Qst_WriteNumQst (Set.SetInd,"BIG_INDEX"); Lay_WriteIndex (Set.SetInd,"BIG_INDEX");
HTM_TD_End (); HTM_TD_End ();
/***** Title *****/ /***** Title *****/
@ -1158,7 +1124,7 @@ static void ExaSet_ListQuestionForEdition (struct Qst_Question *Question,
/***** Number of question and answer type (row[1]) *****/ /***** Number of question and answer type (row[1]) *****/
HTM_TD_Begin ("class=\"RT %s\"",The_GetColorRows ()); HTM_TD_Begin ("class=\"RT %s\"",The_GetColorRows ());
Qst_WriteNumQst (QstInd,ClassNumQst[Question->Validity]); Lay_WriteIndex (QstInd,ClassNumQst[Question->Validity]);
Qst_WriteAnswerType (Question->Answer.Type, Qst_WriteAnswerType (Question->Answer.Type,
ClassAnswerType[Question->Validity]); ClassAnswerType[Question->Validity]);
HTM_TD_End (); HTM_TD_End ();
@ -1348,7 +1314,7 @@ static void ExaSet_CopyQstFromBankToExamSet (const struct ExaSet_Set *Set,long Q
/***************** Request the removal of a set of questions *****************/ /***************** Request the removal of a set of questions *****************/
/*****************************************************************************/ /*****************************************************************************/
void ExaSet_RequestRemoveSet (void) void ExaSet_ReqRemSet (void)
{ {
extern const char *Txt_Do_you_really_want_to_remove_the_set_of_questions_X; extern const char *Txt_Do_you_really_want_to_remove_the_set_of_questions_X;
extern const char *Txt_Remove_set_of_questions; extern const char *Txt_Remove_set_of_questions;
@ -1519,7 +1485,7 @@ void ExaSet_MoveDownSet (void)
/********************** Request the removal of a question ********************/ /********************** Request the removal of a question ********************/
/*****************************************************************************/ /*****************************************************************************/
void ExaSet_RequestRemoveQstFromSet (void) void ExaSet_ReqRemQstFromSet (void)
{ {
extern const char *Txt_Do_you_really_want_to_remove_the_question_X; extern const char *Txt_Do_you_really_want_to_remove_the_question_X;
extern const char *Txt_Remove_question; extern const char *Txt_Remove_question;

View File

@ -43,7 +43,8 @@ void ExaSet_ReceiveFormSet (void);
void ExaSet_ChangeSetTitle (void); void ExaSet_ChangeSetTitle (void);
void ExaSet_ChangeNumQstsToExam (void); void ExaSet_ChangeNumQstsToExam (void);
void ExaSet_RequestCreatOrEditSet (void); void ExaSet_ReqCreatOrEditSet (void);
void ExaSet_ReqSelectQstsToAddToSet (void); void ExaSet_ReqSelectQstsToAddToSet (void);
void ExaSet_ListQstsToAddToSet (void); void ExaSet_ListQstsToAddToSet (void);
@ -57,13 +58,13 @@ void ExaSet_GetQstDataFromDB (struct Qst_Question *Question);
void ExaSet_AddQstsToSet (void); void ExaSet_AddQstsToSet (void);
void ExaSet_RequestRemoveSet (void); void ExaSet_ReqRemSet (void);
void ExaSet_RemoveSet (void); void ExaSet_RemoveSet (void);
void ExaSet_MoveUpSet (void); void ExaSet_MoveUpSet (void);
void ExaSet_MoveDownSet (void); void ExaSet_MoveDownSet (void);
void ExaSet_RequestRemoveQstFromSet (void); void ExaSet_ReqRemQstFromSet (void);
void ExaSet_RemoveQstFromSet (void); void ExaSet_RemoveQstFromSet (void);
void ExaSet_ValidateQst (void); void ExaSet_ValidateQst (void);

View File

@ -837,12 +837,12 @@ void Fol_UnfollowUsr2 (void)
/***************** Request follow/unfollow several users *********************/ /***************** Request follow/unfollow several users *********************/
/*****************************************************************************/ /*****************************************************************************/
void Fol_RequestFollowStds (void) void Fol_ReqFollowStds (void)
{ {
Fol_RequestFollowUsrs (ActFolSevStd); Fol_RequestFollowUsrs (ActFolSevStd);
} }
void Fol_RequestFollowTchs (void) void Fol_ReqFollowTchs (void)
{ {
Fol_RequestFollowUsrs (ActFolSevTch); Fol_RequestFollowUsrs (ActFolSevTch);
} }
@ -881,12 +881,12 @@ static void Fol_RequestFollowUsrs (Act_Action_t NextAction)
Usr_FreeListsSelectedEncryptedUsrsCods (&Gbl.Usrs.Selected); Usr_FreeListsSelectedEncryptedUsrsCods (&Gbl.Usrs.Selected);
} }
void Fol_RequestUnfollowStds (void) void Fol_ReqUnfollowStds (void)
{ {
Fol_RequestUnfollowUsrs (ActUnfSevStd); Fol_RequestUnfollowUsrs (ActUnfSevStd);
} }
void Fol_RequestUnfollowTchs (void) void Fol_ReqUnfollowTchs (void)
{ {
Fol_RequestUnfollowUsrs (ActUnfSevTch); Fol_RequestUnfollowUsrs (ActUnfSevTch);
} }

View File

@ -62,10 +62,10 @@ void Fol_FollowUsr2 (void);
void Fol_UnfollowUsr1 (void); void Fol_UnfollowUsr1 (void);
void Fol_UnfollowUsr2 (void); void Fol_UnfollowUsr2 (void);
void Fol_RequestFollowStds (void); void Fol_ReqFollowStds (void);
void Fol_RequestFollowTchs (void); void Fol_ReqFollowTchs (void);
void Fol_RequestUnfollowStds (void); void Fol_ReqUnfollowStds (void);
void Fol_RequestUnfollowTchs (void); void Fol_ReqUnfollowTchs (void);
void Fol_FollowUsrs (void); void Fol_FollowUsrs (void);
void Fol_UnfollowUsrs (void); void Fol_UnfollowUsrs (void);

View File

@ -2962,7 +2962,7 @@ void For_RemovePost (void)
/***************** Request the removing of an existing thread ****************/ /***************** Request the removing of an existing thread ****************/
/*****************************************************************************/ /*****************************************************************************/
void For_RequestRemoveThread (void) void For_ReqRemThread (void)
{ {
extern const char *Txt_Do_you_really_want_to_remove_the_entire_thread_X; extern const char *Txt_Do_you_really_want_to_remove_the_entire_thread_X;
extern const char *Txt_Do_you_really_want_to_remove_the_entire_thread; extern const char *Txt_Do_you_really_want_to_remove_the_entire_thread;

View File

@ -162,7 +162,7 @@ void For_GetParsForums (struct For_Forums *Forums);
void For_ReceiveForumPost (void); void For_ReceiveForumPost (void);
void For_RemovePost (void); void For_RemovePost (void);
void For_RequestRemoveThread (void); void For_ReqRemThread (void);
void For_RemoveThread (void); void For_RemoveThread (void);
void For_CutThread (void); void For_CutThread (void);
void For_PasteThread (void); void For_PasteThread (void);

View File

@ -1233,7 +1233,7 @@ void Gam_ListGame (void)
/**************** Request the creation or edition of a game ******************/ /**************** Request the creation or edition of a game ******************/
/*****************************************************************************/ /*****************************************************************************/
void Gam_RequestCreatOrEditGame (void) void Gam_ReqCreatOrEditGame (void)
{ {
struct Gam_Games Games; struct Gam_Games Games;
bool ItsANewGame; bool ItsANewGame;
@ -1912,7 +1912,7 @@ static void Gam_FreeListsSelectedQuestions (struct Gam_Games *Games)
/********************** Request the removal of a question ********************/ /********************** Request the removal of a question ********************/
/*****************************************************************************/ /*****************************************************************************/
void Gam_RequestRemoveQstFromGame (void) void Gam_ReqRemQstFromGame (void)
{ {
extern const char *Txt_Do_you_really_want_to_remove_the_question_X; extern const char *Txt_Do_you_really_want_to_remove_the_question_X;
extern const char *Txt_Remove_question; extern const char *Txt_Remove_question;
@ -2180,7 +2180,7 @@ void Gam_PutButtonNewMatch (struct Gam_Games *Games)
/************* Request the creation of a new match as a teacher **************/ /************* Request the creation of a new match as a teacher **************/
/*****************************************************************************/ /*****************************************************************************/
void Gam_RequestNewMatch (void) void Gam_ReqNewMatch (void)
{ {
struct Gam_Games Games; struct Gam_Games Games;

View File

@ -136,7 +136,7 @@ void Gam_UnhideGame (void);
void Gam_ListGame (void); void Gam_ListGame (void);
void Gam_RequestCreatOrEditGame (void); void Gam_ReqCreatOrEditGame (void);
void Gam_ReceiveFormGame (void); void Gam_ReceiveFormGame (void);
@ -148,14 +148,14 @@ unsigned Gam_GetParQstInd (void);
void Gam_AddQstsToGame (void); void Gam_AddQstsToGame (void);
void Gam_RequestRemoveQstFromGame (void); void Gam_ReqRemQstFromGame (void);
void Gam_RemoveQstFromGame (void); void Gam_RemoveQstFromGame (void);
void Gam_MoveUpQst (void); void Gam_MoveUpQst (void);
void Gam_MoveDownQst (void); void Gam_MoveDownQst (void);
void Gam_PutButtonNewMatch (struct Gam_Games *Games); void Gam_PutButtonNewMatch (struct Gam_Games *Games);
void Gam_RequestNewMatch (void); void Gam_ReqNewMatch (void);
void Gam_ShowTstTagsPresentInAGame (long GamCod); void Gam_ShowTstTagsPresentInAGame (long GamCod);

View File

@ -506,7 +506,7 @@ static void InsCfg_NumDpts (void)
/******** Show a form for sending a logo of the current institution **********/ /******** Show a form for sending a logo of the current institution **********/
/*****************************************************************************/ /*****************************************************************************/
void InsCfg_RequestLogo (void) void InsCfg_ReqLogo (void)
{ {
Lgo_RequestLogo (HieLvl_INS); Lgo_RequestLogo (HieLvl_INS);
} }

View File

@ -30,7 +30,7 @@
void InsCfg_ShowConfiguration (void); void InsCfg_ShowConfiguration (void);
void InsCfg_PrintConfiguration (void); void InsCfg_PrintConfiguration (void);
void InsCfg_RequestLogo (void); void InsCfg_ReqLogo (void);
void InsCfg_ReceiveLogo (void); void InsCfg_ReceiveLogo (void);
void InsCfg_RemoveLogo (void); void InsCfg_RemoveLogo (void);
void InsCfg_ChangeInsCty (void); void InsCfg_ChangeInsCty (void);

View File

@ -1686,6 +1686,18 @@ void Lay_BeginHTMLFile (FILE *File,const char *Title)
Title); // Page title Title); // Page title
} }
/*****************************************************************************/
/************************** Write a div with an index ************************/
/*****************************************************************************/
// Index should be 1, 2, 3...
void Lay_WriteIndex (unsigned Index,const char *Class)
{
HTM_DIV_Begin ("class=\"%s_%s\"",Class,The_GetSuffix ());
HTM_Unsigned (Index);
HTM_DIV_End ();
}
/*****************************************************************************/ /*****************************************************************************/
/***** Get and show number of users who have chosen a layout of columns ******/ /***** Get and show number of users who have chosen a layout of columns ******/
/*****************************************************************************/ /*****************************************************************************/

View File

@ -79,6 +79,8 @@ void Lay_HelpRichEditor (void);
void Lay_BeginHTMLFile (FILE *File,const char *Title); void Lay_BeginHTMLFile (FILE *File,const char *Title);
void Lay_WriteIndex (unsigned Index,const char *Class);
//-------------------------------- Figures ------------------------------------ //-------------------------------- Figures ------------------------------------
void Lay_GetAndShowNumUsrsPerSideColumns (void); void Lay_GetAndShowNumUsrsPerSideColumns (void);

View File

@ -963,7 +963,7 @@ static void Mch_GetMatchDataFromRow (MYSQL_RES *mysql_res,
/************** Request the removal of a match (game instance) ***************/ /************** Request the removal of a match (game instance) ***************/
/*****************************************************************************/ /*****************************************************************************/
void Mch_RequestRemoveMatch (void) void Mch_ReqRemMatch (void)
{ {
extern const char *Txt_Do_you_really_want_to_remove_the_match_X; extern const char *Txt_Do_you_really_want_to_remove_the_match_X;
extern const char *Txt_Remove_match; extern const char *Txt_Remove_match;

View File

@ -103,7 +103,7 @@ void Mch_ListOneOrMoreMatchesNumPlayers (const struct Mch_Match *Match);
void Mch_ToggleVisResultsMchUsr (void); void Mch_ToggleVisResultsMchUsr (void);
void Mch_RequestRemoveMatch (void); void Mch_ReqRemMatch (void);
void Mch_RemoveMatch (void); void Mch_RemoveMatch (void);
void Mch_RemoveMatchesInGameFromAllTables (long GamCod); void Mch_RemoveMatchesInGameFromAllTables (long GamCod);

View File

@ -252,7 +252,7 @@ void Not_RevealHiddenNotice (void)
/********************* Request the removal of a notice ***********************/ /********************* Request the removal of a notice ***********************/
/*****************************************************************************/ /*****************************************************************************/
void Not_RequestRemNotice (void) void Not_ReqRemNotice (void)
{ {
extern const char *Txt_Do_you_really_want_to_remove_the_following_notice; extern const char *Txt_Do_you_really_want_to_remove_the_following_notice;
long NotCod; long NotCod;

View File

@ -60,7 +60,7 @@ void Not_GetHighLightedNotCod (void);
void Not_HideActiveNotice (void); void Not_HideActiveNotice (void);
void Not_RevealHiddenNotice (void); void Not_RevealHiddenNotice (void);
void Not_RequestRemNotice (void); void Not_ReqRemNotice (void);
void Not_RemoveNotice (void); void Not_RemoveNotice (void);
void Not_ShowNotices (Not_Listing_t TypeNoticesListing,long HighlightNotCod); void Not_ShowNotices (Not_Listing_t TypeNoticesListing,long HighlightNotCod);

View File

@ -44,6 +44,7 @@ const char *Par_CodeStr[] =
[ParCod_Att ] = "AttCod", // Attendance event code [ParCod_Att ] = "AttCod", // Attendance event code
[ParCod_Ban ] = "BanCod", // Banner code [ParCod_Ban ] = "BanCod", // Banner code
[ParCod_Bld ] = "BldCod", // Building code [ParCod_Bld ] = "BldCod", // Building code
[ParCod_Cri ] = "CriCod", // Criterion code in rubric
[ParCod_Crs ] = "crs", // Course code [ParCod_Crs ] = "crs", // Course code
[ParCod_Ctr ] = "ctr", // Center code [ParCod_Ctr ] = "ctr", // Center code
[ParCod_Cty ] = "cty", // Country code [ParCod_Cty ] = "cty", // Country code

View File

@ -36,6 +36,7 @@ typedef enum
ParCod_Att, // Attendance event code ParCod_Att, // Attendance event code
ParCod_Ban, // Banner code ParCod_Ban, // Banner code
ParCod_Bld, // Building code ParCod_Bld, // Building code
ParCod_Cri, // Criterion code in rubric
ParCod_Crs, // Course code ParCod_Crs, // Course code
ParCod_Ctr, // Center code ParCod_Ctr, // Center code
ParCod_Cty, // Country code ParCod_Cty, // Country code

View File

@ -88,8 +88,8 @@ static const char *Pho_StrAvgPhotoPrograms[Pho_NUM_AVERAGE_PHOTO_TYPES] =
/***************************** Private prototypes ****************************/ /***************************** Private prototypes ****************************/
/*****************************************************************************/ /*****************************************************************************/
static void Pho_PutIconToRequestRemoveMyPhoto (__attribute__((unused)) void *Args); static void Pho_PutIconToReqRemMyPhoto (__attribute__((unused)) void *Args);
static void Pho_PutIconToRequestRemoveOtherUsrPhoto (__attribute__((unused)) void *Args); static void Pho_PutIconToReqRemOtherUsrPhoto (__attribute__((unused)) void *Args);
static void Pho_ReqOtherUsrPhoto (void); static void Pho_ReqOtherUsrPhoto (void);
static void Pho_ReqPhoto (const struct Usr_Data *UsrDat); static void Pho_ReqPhoto (const struct Usr_Data *UsrDat);
@ -203,7 +203,7 @@ void Pho_PutIconToChangeUsrPhoto (struct Usr_Data *UsrDat)
/************** Put a link to request the removal of my photo ****************/ /************** Put a link to request the removal of my photo ****************/
/*****************************************************************************/ /*****************************************************************************/
static void Pho_PutIconToRequestRemoveMyPhoto (__attribute__((unused)) void *Args) static void Pho_PutIconToReqRemMyPhoto (__attribute__((unused)) void *Args)
{ {
if (Gbl.Usrs.Me.MyPhotoExists) if (Gbl.Usrs.Me.MyPhotoExists)
Lay_PutContextualLinkOnlyIcon (ActReqRemMyPho,NULL, Lay_PutContextualLinkOnlyIcon (ActReqRemMyPho,NULL,
@ -215,7 +215,7 @@ static void Pho_PutIconToRequestRemoveMyPhoto (__attribute__((unused)) void *Arg
/********** Put a link to request the removal of a user's photo **************/ /********** Put a link to request the removal of a user's photo **************/
/*****************************************************************************/ /*****************************************************************************/
static void Pho_PutIconToRequestRemoveOtherUsrPhoto (__attribute__((unused)) void *Args) static void Pho_PutIconToReqRemOtherUsrPhoto (__attribute__((unused)) void *Args)
{ {
char PhotoURL[Cns_MAX_BYTES_WWW + 1]; char PhotoURL[Cns_MAX_BYTES_WWW + 1];
bool PhotoExists; bool PhotoExists;
@ -294,8 +294,8 @@ static void Pho_ReqPhoto (const struct Usr_Data *UsrDat)
/***** Begin box *****/ /***** Begin box *****/
Box_BoxBegin (NULL,Txt_Photo, Box_BoxBegin (NULL,Txt_Photo,
ItsMe ? Pho_PutIconToRequestRemoveMyPhoto : ItsMe ? Pho_PutIconToReqRemMyPhoto :
Pho_PutIconToRequestRemoveOtherUsrPhoto,NULL, Pho_PutIconToReqRemOtherUsrPhoto,NULL,
Hlp_PROFILE_Photo,Box_NOT_CLOSABLE); Hlp_PROFILE_Photo,Box_NOT_CLOSABLE);
/***** Begin form *****/ /***** Begin form *****/
@ -395,7 +395,7 @@ void Pho_RecOtherUsrPhotoDetFaces (void)
/********************** Request the removal of my photo **********************/ /********************** Request the removal of my photo **********************/
/*****************************************************************************/ /*****************************************************************************/
void Pho_ReqRemoveMyPhoto (void) void Pho_ReqRemMyPhoto (void)
{ {
extern const char *Txt_Do_you_really_want_to_remove_your_photo; extern const char *Txt_Do_you_really_want_to_remove_your_photo;
extern const char *Txt_Remove_photo; extern const char *Txt_Remove_photo;
@ -457,7 +457,7 @@ void Pho_RemoveMyPhoto2 (void)
/**************** Request the removal of another user's photo ****************/ /**************** Request the removal of another user's photo ****************/
/*****************************************************************************/ /*****************************************************************************/
void Pho_ReqRemoveUsrPhoto (void) void Pho_ReqRemUsrPhoto (void)
{ {
extern const char *Txt_Photo; extern const char *Txt_Photo;
extern const char *Txt_Do_you_really_want_to_remove_the_photo_of_X; extern const char *Txt_Do_you_really_want_to_remove_the_photo_of_X;

View File

@ -102,10 +102,10 @@ void Pho_SendPhotoUsr (void);
void Pho_RecMyPhotoDetFaces (void); void Pho_RecMyPhotoDetFaces (void);
void Pho_RecOtherUsrPhotoDetFaces (void); void Pho_RecOtherUsrPhotoDetFaces (void);
void Pho_ReqRemoveMyPhoto (void); void Pho_ReqRemMyPhoto (void);
void Pho_RemoveMyPhoto1 (void); void Pho_RemoveMyPhoto1 (void);
void Pho_RemoveMyPhoto2 (void); void Pho_RemoveMyPhoto2 (void);
void Pho_ReqRemoveUsrPhoto (void); void Pho_ReqRemUsrPhoto (void);
void Pho_RemoveUsrPhoto (void); void Pho_RemoveUsrPhoto (void);
void Pho_UpdateMyPhoto1 (void); void Pho_UpdateMyPhoto1 (void);

View File

@ -120,7 +120,7 @@ void Prf_SeeSocialProfiles (void)
if (Gbl.Usrs.Me.Logged) if (Gbl.Usrs.Me.Logged)
Fol_SuggestUsrsToFollowMainZone (); Fol_SuggestUsrsToFollowMainZone ();
else else
Prf_RequestUserProfile (); Prf_ReqUserProfile ();
} }
/*****************************************************************************/ /*****************************************************************************/
@ -172,7 +172,7 @@ void Prf_PutLinkRequestAnotherUserProfile (void)
/************************** Request a user's profile *************************/ /************************** Request a user's profile *************************/
/*****************************************************************************/ /*****************************************************************************/
void Prf_RequestUserProfile (void) void Prf_ReqUserProfile (void)
{ {
extern const char *Hlp_START_Profiles_view_public_profile; extern const char *Hlp_START_Profiles_view_public_profile;
extern const char *Txt_Another_user_s_profile; extern const char *Txt_Another_user_s_profile;
@ -261,7 +261,7 @@ void Prf_GetUsrDatAndShowUserProfile (void)
Ale_ShowAlertUserNotFoundOrYouDoNotHavePermission (); Ale_ShowAlertUserNotFoundOrYouDoNotHavePermission ();
/* Request a user's profile */ /* Request a user's profile */
Prf_RequestUserProfile (); Prf_ReqUserProfile ();
} }
/***** If it's not me, mark possible notification as seen *****/ /***** If it's not me, mark possible notification as seen *****/

View File

@ -56,7 +56,7 @@ char *Prf_GetURLPublicProfile (char URL[Cns_MAX_BYTES_WWW + 1],
const char *NickWithoutArr); const char *NickWithoutArr);
void Prf_PutLinkMyPublicProfile (void); void Prf_PutLinkMyPublicProfile (void);
void Prf_PutLinkRequestAnotherUserProfile (void); void Prf_PutLinkRequestAnotherUserProfile (void);
void Prf_RequestUserProfile (void); void Prf_ReqUserProfile (void);
void Prf_GetUsrDatAndShowUserProfile (void); void Prf_GetUsrDatAndShowUserProfile (void);
bool Prf_ShowUserProfile (struct Usr_Data *UsrDat); bool Prf_ShowUserProfile (struct Usr_Data *UsrDat);

View File

@ -1892,7 +1892,7 @@ void Prg_ViewItemAfterEdit (void)
/*********** List program items with a form to change a given item ***********/ /*********** List program items with a form to change a given item ***********/
/*****************************************************************************/ /*****************************************************************************/
void Prg_RequestChangeItem (void) void Prg_ReqChangeItem (void)
{ {
struct Prg_Item Item; struct Prg_Item Item;
@ -1913,7 +1913,7 @@ void Prg_RequestChangeItem (void)
/************ List program items with a form to create a new item ************/ /************ List program items with a form to create a new item ************/
/*****************************************************************************/ /*****************************************************************************/
void Prg_RequestCreateItem (void) void Prg_ReqCreateItem (void)
{ {
struct Prg_Item Item; struct Prg_Item Item;

View File

@ -169,8 +169,8 @@ unsigned Prg_GetItmIndFromNumItem (unsigned NumItem);
unsigned Prg_GetLevelFromNumItem (unsigned NumItem); unsigned Prg_GetLevelFromNumItem (unsigned NumItem);
void Prg_ViewItemAfterEdit (void); void Prg_ViewItemAfterEdit (void);
void Prg_RequestChangeItem (void); void Prg_ReqChangeItem (void);
void Prg_RequestCreateItem (void); void Prg_ReqCreateItem (void);
void Prg_ReceiveFormChgItem (void); void Prg_ReceiveFormChgItem (void);
void Prg_ReceiveFormNewItem (void); void Prg_ReceiveFormNewItem (void);

View File

@ -286,7 +286,7 @@ static void Prj_GetListProjects (struct Prj_Projects *Projects);
static void Prj_ResetProject (struct Prj_Project *Prj); static void Prj_ResetProject (struct Prj_Project *Prj);
static void Prj_RequestCreatOrEditPrj (struct Prj_Projects *Projects); static void Prj_ReqCreatOrEditPrj (struct Prj_Projects *Projects);
static void Prj_PutFormProject (struct Prj_Projects *Projects,bool ItsANewProject); static void Prj_PutFormProject (struct Prj_Projects *Projects,bool ItsANewProject);
static void Prj_EditOneProjectTxtArea (const char *Id, static void Prj_EditOneProjectTxtArea (const char *Id,
const char *Label,char *TxtField, const char *Label,char *TxtField,
@ -2881,7 +2881,7 @@ static void Prj_FormToSelectUsrs (struct Prj_Projects *Projects,
free (TxtButton); free (TxtButton);
/***** Put a form to create/edit project *****/ /***** Put a form to create/edit project *****/
Prj_RequestCreatOrEditPrj (Projects); Prj_ReqCreatOrEditPrj (Projects);
} }
/*****************************************************************************/ /*****************************************************************************/
@ -2974,7 +2974,7 @@ static void Prj_AddUsrsToProject (Prj_RoleInProject_t RoleInPrj)
Usr_FreeListsSelectedEncryptedUsrsCods (&Prj_MembersToAdd); Usr_FreeListsSelectedEncryptedUsrsCods (&Prj_MembersToAdd);
/***** Put form to edit project again *****/ /***** Put form to edit project again *****/
Prj_RequestCreatOrEditPrj (&Projects); Prj_ReqCreatOrEditPrj (&Projects);
} }
/*****************************************************************************/ /*****************************************************************************/
@ -3075,7 +3075,7 @@ static void Prj_ReqRemUsrFromPrj (struct Prj_Projects *Projects,
Prj_FreeMemProject (&Projects->Prj); Prj_FreeMemProject (&Projects->Prj);
/***** Put form to edit project again *****/ /***** Put form to edit project again *****/
Prj_RequestCreatOrEditPrj (Projects); Prj_ReqCreatOrEditPrj (Projects);
} }
/*****************************************************************************/ /*****************************************************************************/
@ -3144,7 +3144,7 @@ static void Prj_RemUsrFromPrj (Prj_RoleInProject_t RoleInPrj)
Prj_FreeMemProject (&Projects.Prj); Prj_FreeMemProject (&Projects.Prj);
/***** Put form to edit project again *****/ /***** Put form to edit project again *****/
Prj_RequestCreatOrEditPrj (&Projects); Prj_ReqCreatOrEditPrj (&Projects);
} }
/*****************************************************************************/ /*****************************************************************************/
@ -3646,7 +3646,7 @@ void Prj_UnhideProject (void)
/********************* Put a form to create/edit project *********************/ /********************* Put a form to create/edit project *********************/
/*****************************************************************************/ /*****************************************************************************/
void Prj_RequestCreatePrj (void) void Prj_ReqCreatePrj (void)
{ {
struct Prj_Projects Projects; struct Prj_Projects Projects;
@ -3658,10 +3658,10 @@ void Prj_RequestCreatePrj (void)
Projects.Prj.PrjCod = -1L; // It's a new, non existing, project Projects.Prj.PrjCod = -1L; // It's a new, non existing, project
/***** Form to create project *****/ /***** Form to create project *****/
Prj_RequestCreatOrEditPrj (&Projects); Prj_ReqCreatOrEditPrj (&Projects);
} }
void Prj_RequestEditPrj (void) void Prj_ReqEditPrj (void)
{ {
struct Prj_Projects Projects; struct Prj_Projects Projects;
@ -3673,10 +3673,10 @@ void Prj_RequestEditPrj (void)
Projects.Prj.PrjCod = ParCod_GetAndCheckPar (ParCod_Prj); Projects.Prj.PrjCod = ParCod_GetAndCheckPar (ParCod_Prj);
/***** Form to edit project *****/ /***** Form to edit project *****/
Prj_RequestCreatOrEditPrj (&Projects); Prj_ReqCreatOrEditPrj (&Projects);
} }
static void Prj_RequestCreatOrEditPrj (struct Prj_Projects *Projects) static void Prj_ReqCreatOrEditPrj (struct Prj_Projects *Projects)
{ {
bool ItsANewProject = (Projects->Prj.PrjCod < 0); bool ItsANewProject = (Projects->Prj.PrjCod < 0);
@ -4101,7 +4101,7 @@ void Prj_ReceiveFormProject (void)
Prj_PutFormProject (&Projects,ItsANewProject); Prj_PutFormProject (&Projects,ItsANewProject);
/***** Show again form to edit project *****/ /***** Show again form to edit project *****/
Prj_RequestCreatOrEditPrj (&Projects); Prj_ReqCreatOrEditPrj (&Projects);
} }
else else
Err_NoPermissionExit (); Err_NoPermissionExit ();

View File

@ -246,8 +246,8 @@ void Prj_RemStd (void);
void Prj_RemTut (void); void Prj_RemTut (void);
void Prj_RemEvl (void); void Prj_RemEvl (void);
void Prj_RequestCreatePrj (void); void Prj_ReqCreatePrj (void);
void Prj_RequestEditPrj (void); void Prj_ReqEditPrj (void);
void Prj_AllocMemProject (struct Prj_Project *Prj); void Prj_AllocMemProject (struct Prj_Project *Prj);
void Prj_FreeMemProject (struct Prj_Project *Prj); void Prj_FreeMemProject (struct Prj_Project *Prj);

View File

@ -117,7 +117,7 @@ void Qst_Destructor (struct Qst_Questions *Questions)
/*********************** Request the edition of tests ************************/ /*********************** Request the edition of tests ************************/
/*****************************************************************************/ /*****************************************************************************/
void Qst_RequestEditQsts (void) void Qst_ReqEditQsts (void)
{ {
struct Qst_Questions Questions; struct Qst_Questions Questions;
@ -519,7 +519,7 @@ void Qst_ListQuestionForEdition (struct Qst_Question *Question,
/***** Number of question and answer type (row[1]) *****/ /***** Number of question and answer type (row[1]) *****/
HTM_TD_Begin ("class=\"RT %s\"",The_GetColorRows ()); HTM_TD_Begin ("class=\"RT %s\"",The_GetColorRows ());
Qst_WriteNumQst (QstInd,"BIG_INDEX"); Lay_WriteIndex (QstInd,"BIG_INDEX");
if (QuestionExists) if (QuestionExists)
Qst_WriteAnswerType (Question->Answer.Type,"DAT_SMALL"); Qst_WriteAnswerType (Question->Answer.Type,"DAT_SMALL");
HTM_TD_End (); HTM_TD_End ();
@ -567,18 +567,6 @@ void Qst_ListQuestionForEdition (struct Qst_Question *Question,
HTM_TD_End (); HTM_TD_End ();
} }
/*****************************************************************************/
/********************* Write the number of a test question *******************/
/*****************************************************************************/
// Number of question should be 1, 2, 3...
void Qst_WriteNumQst (unsigned NumQst,const char *Class)
{
HTM_DIV_Begin ("class=\"%s_%s\"",Class,The_GetSuffix ());
HTM_Unsigned (NumQst);
HTM_DIV_End ();
}
/*****************************************************************************/ /*****************************************************************************/
/************************** Write the type of answer *************************/ /************************** Write the type of answer *************************/
/*****************************************************************************/ /*****************************************************************************/
@ -984,7 +972,7 @@ void Qst_WriteQuestionListing (struct Qst_Questions *Questions,unsigned QstInd)
/* Number of question and answer type */ /* Number of question and answer type */
HTM_TD_Begin ("class=\"RT %s\"",The_GetColorRows ()); HTM_TD_Begin ("class=\"RT %s\"",The_GetColorRows ());
Qst_WriteNumQst (QstInd + 1,"BIG_INDEX"); Lay_WriteIndex (QstInd + 1,"BIG_INDEX");
Qst_WriteAnswerType (Questions->Question.Answer.Type,"DAT_SMALL"); Qst_WriteAnswerType (Questions->Question.Answer.Type,"DAT_SMALL");
HTM_TD_End (); HTM_TD_End ();
@ -3230,7 +3218,7 @@ long Qst_GetIntAnsFromStr (char *Str)
/***************** Request the removal of selected questions *****************/ /***************** Request the removal of selected questions *****************/
/*****************************************************************************/ /*****************************************************************************/
void Qst_RequestRemoveSelectedQsts (void) void Qst_ReqRemSelectedQsts (void)
{ {
extern const char *Txt_Do_you_really_want_to_remove_the_selected_questions; extern const char *Txt_Do_you_really_want_to_remove_the_selected_questions;
extern const char *Txt_Remove_questions; extern const char *Txt_Remove_questions;
@ -3319,7 +3307,7 @@ void Qst_PutIconToRemoveOneQst (void *QstCod)
/******************** Request the removal of a question **********************/ /******************** Request the removal of a question **********************/
/*****************************************************************************/ /*****************************************************************************/
void Qst_RequestRemoveOneQst (void) void Qst_ReqRemOneQst (void)
{ {
extern const char *Txt_Do_you_really_want_to_remove_the_question_X; extern const char *Txt_Do_you_really_want_to_remove_the_question_X;
extern const char *Txt_Remove_question; extern const char *Txt_Remove_question;

View File

@ -131,7 +131,7 @@ struct Qst_Stats
void Qst_Constructor (struct Qst_Questions *Questions); void Qst_Constructor (struct Qst_Questions *Questions);
void Qst_Destructor (struct Qst_Questions *Questions); void Qst_Destructor (struct Qst_Questions *Questions);
void Qst_RequestEditQsts (void); void Qst_ReqEditQsts (void);
void Qst_ShowFormRequestEditQsts (struct Qst_Questions *Questions); void Qst_ShowFormRequestEditQsts (struct Qst_Questions *Questions);
void Qst_ShowFormAnswerTypes (const struct Qst_AnswerTypes *AnswerTypes); void Qst_ShowFormAnswerTypes (const struct Qst_AnswerTypes *AnswerTypes);
void Qst_RequestSelectQstsForExamSet (struct Exa_Exams *Exams); void Qst_RequestSelectQstsForExamSet (struct Exa_Exams *Exams);
@ -149,7 +149,6 @@ void Qst_PutButtonToAddQuestion (void);
void Qst_ListQuestionForEdition (struct Qst_Question *Question, void Qst_ListQuestionForEdition (struct Qst_Question *Question,
unsigned QstInd,bool QuestionExists, unsigned QstInd,bool QuestionExists,
const char *Anchor); const char *Anchor);
void Qst_WriteNumQst (unsigned NumQst,const char *Class);
void Qst_WriteAnswerType (Qst_AnswerType_t AnswerType,const char *Class); void Qst_WriteAnswerType (Qst_AnswerType_t AnswerType,const char *Class);
void Qst_WriteQstStem (const char *Stem,const char *ClassStem,bool Visible); void Qst_WriteQstStem (const char *Stem,const char *ClassStem,bool Visible);
void Qst_PutFormToEditQstMedia (const struct Med_Media *Media,int NumMedia, void Qst_PutFormToEditQstMedia (const struct Med_Media *Media,int NumMedia,
@ -251,10 +250,10 @@ void Qst_MoveMediaToDefinitiveDirectories (struct Qst_Question *Question);
long Qst_GetIntAnsFromStr (char *Str); long Qst_GetIntAnsFromStr (char *Str);
void Qst_RequestRemoveSelectedQsts (void); void Qst_ReqRemSelectedQsts (void);
void Qst_RemoveSelectedQsts (void); void Qst_RemoveSelectedQsts (void);
void Qst_PutIconToRemoveOneQst (void *QstCod); void Qst_PutIconToRemoveOneQst (void *QstCod);
void Qst_RequestRemoveOneQst (void); void Qst_ReqRemOneQst (void);
void Qst_PutParsRemoveOnlyThisQst (void *QstCod); void Qst_PutParsRemoveOnlyThisQst (void *QstCod);
void Qst_RemoveOneQst (void); void Qst_RemoveOneQst (void);
void Qst_RemoveOneQstFromDB (long CrsCod,long QstCod); void Qst_RemoveOneQstFromDB (long CrsCod,long QstCod);

View File

@ -73,9 +73,6 @@ static void Rub_PutIconsToRemEditOneRubric (struct Rub_Rubrics *Rubrics);
static void Rub_RemoveRubricFromAllTables (long RubCod); static void Rub_RemoveRubricFromAllTables (long RubCod);
static void Rub_PutFormsEditionRubric (struct Rub_Rubrics *Rubrics,
char Txt[Cns_MAX_BYTES_TEXT + 1],
bool ItsANewRubric);
static void Rub_ReceiveRubricFieldsFromForm (struct Rub_Rubric *Rubric, static void Rub_ReceiveRubricFieldsFromForm (struct Rub_Rubric *Rubric,
char Txt[Cns_MAX_BYTES_TEXT + 1]); char Txt[Cns_MAX_BYTES_TEXT + 1]);
static bool Rub_CheckRubricFieldsReceivedFromForm (const struct Rub_Rubric *Rubric); static bool Rub_CheckRubricFieldsReceivedFromForm (const struct Rub_Rubric *Rubric);
@ -122,7 +119,7 @@ void Rub_SeeAllRubrics (void)
Rub_ResetRubrics (&Rubrics); Rub_ResetRubrics (&Rubrics);
/***** Get parameters *****/ /***** Get parameters *****/
Rub_GetPars (&Rubrics); // Return value ignored Rub_GetPars (&Rubrics,false);
/***** Show all rubrics *****/ /***** Show all rubrics *****/
Rub_ListAllRubrics (&Rubrics); Rub_ListAllRubrics (&Rubrics);
@ -236,6 +233,21 @@ bool Rub_CheckIfICanEditRubrics (void)
return ICanEditRubrics[Gbl.Usrs.Me.Role.Logged]; return ICanEditRubrics[Gbl.Usrs.Me.Role.Logged];
} }
/*****************************************************************************/
/*********************** Check if edition is possible ************************/
/*****************************************************************************/
bool Rub_CheckIfEditable (const struct Rub_Rubric *Rubric)
{
if (Rub_CheckIfICanEditRubrics ())
/***** Rubric is editable only if ... *****/
// TODO: Change to control that a rubric is not edited in some circunstances?
return Rubric->NumCriteria == 0 ||
Rubric->NumCriteria != 0;
else
return false; // Questions are not editable
}
/*****************************************************************************/ /*****************************************************************************/
/****************** Put contextual icons in list of rubrics ******************/ /****************** Put contextual icons in list of rubrics ******************/
/*****************************************************************************/ /*****************************************************************************/
@ -304,8 +316,7 @@ void Rub_SeeOneRubric (void)
Rub_ResetRubric (&Rubrics.Rubric); Rub_ResetRubric (&Rubrics.Rubric);
/***** Get parameters *****/ /***** Get parameters *****/
if ((Rubrics.Rubric.RubCod = Rub_GetPars (&Rubrics)) <= 0) Rub_GetPars (&Rubrics,true);
Err_WrongRubricExit ();
Rub_GetDataOfRubricByCod (&Rubrics.Rubric); Rub_GetDataOfRubricByCod (&Rubrics.Rubric);
/***** Show rubric *****/ /***** Show rubric *****/
@ -492,13 +503,19 @@ void Rub_PutPars (void *Rubrics)
/****************** Get parameters used to edit a rubric *********************/ /****************** Get parameters used to edit a rubric *********************/
/*****************************************************************************/ /*****************************************************************************/
long Rub_GetPars (struct Rub_Rubrics *Rubrics) void Rub_GetPars (struct Rub_Rubrics *Rubrics,bool CheckRubCod)
{ {
long (*GetExaCo[2]) (ParCod_Param_t ParCode) =
{
[false] = ParCod_GetPar,
[true ] = ParCod_GetAndCheckPar,
};
/***** Get other parameters *****/ /***** Get other parameters *****/
Rubrics->CurrentPage = Pag_GetParPagNum (Pag_RUBRICS); Rubrics->CurrentPage = Pag_GetParPagNum (Pag_RUBRICS);
/***** Get rubric code *****/ /***** Get rubric code *****/
return ParCod_GetPar (ParCod_Rub); Rubrics->Rubric.RubCod = GetExaCo[CheckRubCod] (ParCod_Rub);
} }
/*****************************************************************************/ /*****************************************************************************/
@ -612,8 +629,7 @@ void Rub_AskRemRubric (void)
Rub_ResetRubric (&Rubrics.Rubric); Rub_ResetRubric (&Rubrics.Rubric);
/***** Get parameters *****/ /***** Get parameters *****/
if ((Rubrics.Rubric.RubCod = Rub_GetPars (&Rubrics)) <= 0) Rub_GetPars (&Rubrics,true);
Err_WrongRubricExit ();
/***** Get data of the rubric from database *****/ /***** Get data of the rubric from database *****/
Rub_GetDataOfRubricByCod (&Rubrics.Rubric); Rub_GetDataOfRubricByCod (&Rubrics.Rubric);
@ -707,8 +723,7 @@ void Rub_ListRubric (void)
Rub_ResetRubric (&Rubrics.Rubric); Rub_ResetRubric (&Rubrics.Rubric);
/***** Get parameters *****/ /***** Get parameters *****/
if ((Rubrics.Rubric.RubCod = Rub_GetPars (&Rubrics)) <= 0) Rub_GetPars (&Rubrics,true);
Err_WrongRubricExit ();
/***** Get rubric data *****/ /***** Get rubric data *****/
Rub_GetDataOfRubricByCod (&Rubrics.Rubric); Rub_GetDataOfRubricByCod (&Rubrics.Rubric);
@ -723,58 +738,72 @@ void Rub_ListRubric (void)
/*************** Request the creation or edition of a rubric *****************/ /*************** Request the creation or edition of a rubric *****************/
/*****************************************************************************/ /*****************************************************************************/
void Rub_RequestCreatOrEditRubric (void) void Rub_ReqCreatOrEditRubric (void)
{ {
struct Rub_Rubrics Rubrics; struct Rub_Rubrics Rubrics;
struct RubCri_Criterion Criterion;
bool ItsANewRubric; bool ItsANewRubric;
char Txt[Cns_MAX_BYTES_TEXT + 1];
/***** Reset rubrics context *****/
Rub_ResetRubrics (&Rubrics);
/***** Reset rubric *****/
Rub_ResetRubric (&Rubrics.Rubric);
/***** Check if I can edit rubrics *****/ /***** Check if I can edit rubrics *****/
if (!Rub_CheckIfICanEditRubrics ()) if (!Rub_CheckIfICanEditRubrics ())
Err_NoPermissionExit (); Err_NoPermissionExit ();
/***** Reset rubrics context *****/
Rub_ResetRubrics (&Rubrics);
Rub_ResetRubric (&Rubrics.Rubric);
RubCri_ResetCriterion (&Criterion);
/***** Get parameters *****/ /***** Get parameters *****/
ItsANewRubric = ((Rubrics.Rubric.RubCod = Rub_GetPars (&Rubrics)) <= 0); Rub_GetPars (&Rubrics,false); // Don't check rubric code
ItsANewRubric = (Rubrics.Rubric.RubCod <= 0);
/***** Get rubric data *****/ /***** Get rubric data *****/
if (ItsANewRubric) if (ItsANewRubric)
{
/* Initialize to empty rubric */ /* Initialize to empty rubric */
Rub_ResetRubric (&Rubrics.Rubric); Rub_ResetRubric (&Rubrics.Rubric);
Txt[0] = '\0';
}
else else
{
/* Get rubric data from database */ /* Get rubric data from database */
Rub_GetDataOfRubricByCod (&Rubrics.Rubric); Rub_GetDataOfRubricByCod (&Rubrics.Rubric);
Rub_DB_GetRubricTxt (Rubrics.Rubric.RubCod,Txt);
}
/***** Put forms to create/edit a rubric *****/ /***** Put form to create/edit a rubric and show criteria *****/
Rub_PutFormsEditionRubric (&Rubrics,Txt,ItsANewRubric); Rub_PutFormsOneRubric (&Rubrics,&Criterion,ItsANewRubric);
}
/***** Show rubrics or criteria *****/ /*****************************************************************************/
/******************** Put forms to create/edit a rubric **********************/
/*****************************************************************************/
void Rub_PutFormsOneRubric (struct Rub_Rubrics *Rubrics,
struct RubCri_Criterion *Criterion,
bool ItsANewRubric)
{
char Txt[Cns_MAX_BYTES_TEXT + 1];
/***** Initialize text / get text from database *****/
if (ItsANewRubric)
Txt[0] = '\0';
else
Rub_DB_GetRubricTxt (Rubrics->Rubric.RubCod,Txt);
/***** Put form to create/edit an exam *****/
Rub_PutFormEditionRubric (Rubrics,Txt,ItsANewRubric);
/***** Show other lists *****/
if (ItsANewRubric) if (ItsANewRubric)
/* Show rubrics again */ /* Show rubrics again */
Rub_ListAllRubrics (&Rubrics); Rub_ListAllRubrics (Rubrics);
else else
/* Show criteria of the rubric ready to be edited */ /* Show list of criteria */
RubCri_ListRubricCriteria (&Rubrics); RubCri_ListCriteria (Rubrics,Criterion);
} }
/*****************************************************************************/ /*****************************************************************************/
/******************** Put a form to create/edit a rubric *********************/ /******************** Put a form to create/edit a rubric *********************/
/*****************************************************************************/ /*****************************************************************************/
static void Rub_PutFormsEditionRubric (struct Rub_Rubrics *Rubrics, void Rub_PutFormEditionRubric (struct Rub_Rubrics *Rubrics,
char Txt[Cns_MAX_BYTES_TEXT + 1], char Txt[Cns_MAX_BYTES_TEXT + 1],
bool ItsANewRubric) bool ItsANewRubric)
{ {
extern const char *Hlp_ASSESSMENT_Rubrics_new_rubric; extern const char *Hlp_ASSESSMENT_Rubrics_new_rubric;
extern const char *Hlp_ASSESSMENT_Rubrics_edit_rubric; extern const char *Hlp_ASSESSMENT_Rubrics_edit_rubric;
@ -854,57 +883,46 @@ static void Rub_PutFormsEditionRubric (struct Rub_Rubrics *Rubrics,
void Rub_ReceiveFormRubric (void) void Rub_ReceiveFormRubric (void)
{ {
struct Rub_Rubrics Rubrics; struct Rub_Rubrics Rubrics;
struct RubCri_Criterion Criterion;
bool ItsANewRubric; bool ItsANewRubric;
char Txt[Cns_MAX_BYTES_TEXT + 1]; char Txt[Cns_MAX_BYTES_TEXT + 1];
/***** Reset rubrics context *****/
Rub_ResetRubrics (&Rubrics);
/***** Reset rubric *****/
Rub_ResetRubric (&Rubrics.Rubric);
/***** Check if I can edit rubrics *****/ /***** Check if I can edit rubrics *****/
if (!Rub_CheckIfICanEditRubrics ()) if (!Rub_CheckIfICanEditRubrics ())
Err_NoPermissionExit (); Err_NoPermissionExit ();
/***** Reset rubrics context *****/
Rub_ResetRubrics (&Rubrics);
Rub_ResetRubric (&Rubrics.Rubric);
RubCri_ResetCriterion (&Criterion);
/***** Get parameters *****/ /***** Get parameters *****/
ItsANewRubric = ((Rubrics.Rubric.RubCod = Rub_GetPars (&Rubrics)) <= 0); Rub_GetPars (&Rubrics,false);
ItsANewRubric = (Rubrics.Rubric.RubCod <= 0);
/***** If I can edit rubrics ==> receive rubric from form *****/ /***** Get all current rubric data from database *****/
if (Rub_CheckIfICanEditRubrics ()) // Some data, not received from form,
// are necessary to show rubric and criteria again
if (!ItsANewRubric)
Rub_GetDataOfRubricByCod (&Rubrics.Rubric);
/***** Overwrite some rubric data with the data received from form *****/
Rub_ReceiveRubricFieldsFromForm (&Rubrics.Rubric,Txt);
if (Rub_CheckRubricFieldsReceivedFromForm (&Rubrics.Rubric))
{ {
Rub_ReceiveRubricFieldsFromForm (&Rubrics.Rubric,Txt); /***** Create a new rubric or update an existing one *****/
if (Rub_CheckRubricFieldsReceivedFromForm (&Rubrics.Rubric)) if (ItsANewRubric)
{ {
/***** Create a new rubric or update an existing one *****/ Rub_CreateRubric (&Rubrics.Rubric,Txt); // Add new rubric to database
if (ItsANewRubric) ItsANewRubric = false;
Rub_CreateRubric (&Rubrics.Rubric,Txt); // Add new rubric to database
else
Rub_UpdateRubric (&Rubrics.Rubric,Txt); // Update rubric data in database
/***** Put forms to edit the rubric created or updated *****/
Rub_PutFormsEditionRubric (&Rubrics,Txt,
false); // No new rubric
/***** Show criteria of the rubric ready to be edited ******/
RubCri_ListRubricCriteria (&Rubrics);
} }
else else
{ Rub_UpdateRubric (&Rubrics.Rubric,Txt); // Update rubric data in database
/***** Put forms to create/edit the rubric *****/
Rub_PutFormsEditionRubric (&Rubrics,Txt,ItsANewRubric);
/***** Show rubrics or criteria *****/
if (ItsANewRubric)
/* Show rubrics again */
Rub_ListAllRubrics (&Rubrics);
else
/* Show criteria of the rubric ready to be edited */
RubCri_ListRubricCriteria (&Rubrics);
}
} }
else
Err_NoPermissionExit (); /***** Show current rubric and its criteria *****/
Rub_PutFormsOneRubric (&Rubrics,&Criterion,
ItsANewRubric);
} }
static void Rub_ReceiveRubricFieldsFromForm (struct Rub_Rubric *Rubric, static void Rub_ReceiveRubricFieldsFromForm (struct Rub_Rubric *Rubric,

View File

@ -27,35 +27,14 @@
/********************************* Headers ***********************************/ /********************************* Headers ***********************************/
/*****************************************************************************/ /*****************************************************************************/
#include "swad_rubric_type.h"
#include "swad_string.h" #include "swad_string.h"
/*****************************************************************************/ /*****************************************************************************/
/************************** Public types and constants ***********************/ /************************** Public types and constants ***********************/
/*****************************************************************************/ /*****************************************************************************/
#define Rub_MAX_CHARS_TITLE (128 - 1) // 127 #define RubCri_AFTER_LAST_CRITERION ((unsigned)((1UL << 31) - 1)) // 2^31 - 1, don't change this number because it is used in database
#define Rub_MAX_BYTES_TITLE ((Rub_MAX_CHARS_TITLE + 1) * Str_MAX_BYTES_PER_CHAR - 1) // 2047
#define Rub_AFTER_LAST_CRITERION ((unsigned)((1UL << 31) - 1)) // 2^31 - 1, don't change this number because it is used in database
struct Rub_Rubric
{
long RubCod; // Rubric code
long CrsCod; // Course code
long UsrCod; // Author code
char Title[Rub_MAX_BYTES_TITLE + 1];
unsigned NumCriteria; // Number of criteria in the rubric
};
struct Rub_Rubrics
{
bool LstIsRead; // Is the list already read from database...
// ...or it needs to be read?
unsigned Num; // Total number of rubrics
long *Lst; // List of rubric codes
unsigned CurrentPage;
struct Rub_Rubric Rubric; // Selected/current rubric
};
/*****************************************************************************/ /*****************************************************************************/
/***************************** Public prototypes *****************************/ /***************************** Public prototypes *****************************/
@ -67,6 +46,7 @@ void Rub_ResetRubric (struct Rub_Rubric *Rubric);
void Rub_SeeAllRubrics (void); void Rub_SeeAllRubrics (void);
void Rub_ListAllRubrics (struct Rub_Rubrics *Rubrics); void Rub_ListAllRubrics (struct Rub_Rubrics *Rubrics);
bool Rub_CheckIfICanEditRubrics (void); bool Rub_CheckIfICanEditRubrics (void);
bool Rub_CheckIfEditable (const struct Rub_Rubric *Rubric);
void Rub_SeeOneRubric (void); void Rub_SeeOneRubric (void);
void Rub_ShowOnlyOneRubric (struct Rub_Rubrics *Rubrics, void Rub_ShowOnlyOneRubric (struct Rub_Rubrics *Rubrics,
bool ListRubricDims); bool ListRubricDims);
@ -76,7 +56,7 @@ void Rub_ShowOnlyOneRubricEnd (void);
void Rub_SetCurrentRubCod (long GamCod); void Rub_SetCurrentRubCod (long GamCod);
void Rub_PutPars (void *Rubrics); void Rub_PutPars (void *Rubrics);
long Rub_GetPars (struct Rub_Rubrics *Rubrics); void Rub_GetPars (struct Rub_Rubrics *Rubrics,bool CheckRubCod);
void Rub_GetListRubrics (struct Rub_Rubrics *Rubrics); void Rub_GetListRubrics (struct Rub_Rubrics *Rubrics);
void Rub_GetDataOfRubricByCod (struct Rub_Rubric *Rubric); void Rub_GetDataOfRubricByCod (struct Rub_Rubric *Rubric);
@ -89,7 +69,13 @@ void Rub_RemoveCrsRubrics (long CrsCod);
void Rub_ListRubric (void); void Rub_ListRubric (void);
void Rub_RequestCreatOrEditRubric (void); void Rub_ReqCreatOrEditRubric (void);
void Rub_PutFormsOneRubric (struct Rub_Rubrics *Rubrics,
struct RubCri_Criterion *Criterion,
bool ItsANewRubric);
void Rub_PutFormEditionRubric (struct Rub_Rubrics *Rubrics,
char Txt[Cns_MAX_BYTES_TEXT + 1],
bool ItsANewRubric);
void Rub_ReceiveFormRubric (void); void Rub_ReceiveFormRubric (void);

File diff suppressed because it is too large Load Diff

View File

@ -24,37 +24,21 @@
along with this program. If not, see <http://www.gnu.org/licenses/>. along with this program. If not, see <http://www.gnu.org/licenses/>.
*/ */
/*****************************************************************************/ /*****************************************************************************/
/************************** Public types and constants ***********************/ /********************************* Headers ***********************************/
/*****************************************************************************/ /*****************************************************************************/
#define Rub_MAX_CHARS_CRITERION_TITLE (128 - 1) // 127 #include "swad_rubric_type.h"
#define Rub_MAX_BYTES_CRITERION_TITLE ((Rub_MAX_CHARS_CRITERION_TITLE + 1) * Str_MAX_BYTES_PER_CHAR - 1) // 2047
#define Rub_AFTER_LAST_CRITERION ((unsigned)((1UL << 31) - 1)) // 2^31 - 1, don't change this number because it is used in database
struct Rub_Criterion
{
long RubCod; // Rubric code
long CriCod; // Course code
char Title[Rub_MAX_BYTES_CRITERION_TITLE + 1];
};
/*****************************************************************************/ /*****************************************************************************/
/***************************** Public prototypes *****************************/ /***************************** Public prototypes *****************************/
/*****************************************************************************/ /*****************************************************************************/
void RubCri_CriterionConstructor (struct Rub_Criterion *Criterion); void RubCri_CriterionConstructor (struct RubCri_Criterion *Criterion);
void RubCri_CriterionDestructor (struct Rub_Criterion *Criterion); void RubCri_CriterionDestructor (struct RubCri_Criterion *Criterion);
void RubCri_PutParCriCod (void *CriCod); void RubCri_ListCriterionForEdition (struct RubCri_Criterion *Criterion,
bool RubCri_GetCriterionDataFromDB (struct Rub_Criterion *Criterion);
void RubCri_ListCriterionForEdition (struct Rub_Criterion *Criterion,
unsigned CriInd,bool CriterionExists, unsigned CriInd,bool CriterionExists,
const char *Anchor); const char *Anchor);
void RubCri_WriteNumCriterion (unsigned NumDim,const char *Class);
void RubCri_WriteCriterionTitle (const char *Title,const char *ClassTitle,bool Visible);
void RubCri_PutIconToAddNewCriterion (void *Rubrics); void RubCri_PutIconToAddNewCriterion (void *Rubrics);
void RubCri_PutButtonToAddNewCriterion (struct Rub_Rubrics *Rubrics); void RubCri_PutButtonToAddNewCriterion (struct Rub_Rubrics *Rubrics);
@ -62,8 +46,30 @@ void RubCri_PutButtonToAddNewCriterion (struct Rub_Rubrics *Rubrics);
void RubCri_PutParCriInd (unsigned CriInd); void RubCri_PutParCriInd (unsigned CriInd);
unsigned RubCri_GetParCriInd (void); unsigned RubCri_GetParCriInd (void);
void RubCri_ListRubricCriteria (struct Rub_Rubrics *Rubrics); void RubCri_ReqCreatOrEditCriterion (void);
void RubCri_RequestCreatOrEditCri (void); /*****************************************************************************/
/***************************** Public prototypes *****************************/
/*****************************************************************************/
void RubCri_GetDataOfCriterionByCod (struct RubCri_Criterion *Criterion);
void RubCri_ReceiveFormCriterion (void);
void RubCri_ChangeCriterionTitle (void);
void RubCri_ChangeMinValueCriterion (void);
void RubCri_ChangeMaxValueCriterion (void);
void RubCri_ListCriteria (struct Rub_Rubrics *Rubrics,
struct RubCri_Criterion *Criterion);
void RubCri_ResetCriterion (struct RubCri_Criterion *Criterion);
void RubCri_ReqRemCriterion (void);
void RubCri_RemoveCriterion (void);
void RubCri_MoveUpCriterion (void);
void RubCri_MoveDownCriterion (void);
void RubCri_WriteCriterionTitle (const struct RubCri_Criterion *Criterion);
#endif #endif

View File

@ -31,10 +31,22 @@
#include "swad_database.h" #include "swad_database.h"
#include "swad_error.h" #include "swad_error.h"
#include "swad_rubric.h"
#include "swad_rubric_database.h" #include "swad_rubric_database.h"
#include "swad_global.h" #include "swad_global.h"
/*****************************************************************************/
/**************************** Private constants ******************************/
/*****************************************************************************/
#define RubCri_AFTER_LAST_CRITERION ((unsigned)((1UL << 31) - 1)) // 2^31 - 1, don't change this number because it is used in database
// Fields in database for minimum/maximum criterion values
static const char *RubCri_ValuesFields[RubCri_NUM_VALUES] =
{
[RubCri_MIN] = "MinVal",
[RubCri_MAX] = "MaxVal",
};
/*****************************************************************************/ /*****************************************************************************/
/************** External global variables from others modules ****************/ /************** External global variables from others modules ****************/
/*****************************************************************************/ /*****************************************************************************/
@ -333,26 +345,73 @@ void Rub_DB_RemoveCrsRubrics (long CrsCod)
} }
/*****************************************************************************/ /*****************************************************************************/
/**************** Insert criterion in the table of criteria *****************/ /********************** Create a new rubric criterion ************************/
/*****************************************************************************/ /*****************************************************************************/
void Rub_DB_InsertCriterionInRubric (long RubCod,unsigned CriInd,long CriCod) long Rub_DB_CreateCriterion (const struct RubCri_Criterion *Criterion)
{ {
DB_QueryINSERT ("can not add criterion to rubric", long CriCod;
"INSERT INTO rub_criteria"
" (RubCod,CriInd,CriCod)" Str_SetDecimalPointToUS (); // To write the decimal point as a dot
" VALUES" CriCod =
" (%ld,%u,%ld)", DB_QueryINSERTandReturnCode ("can not create new criterion",
RubCod, "INSERT INTO rub_criteria"
CriInd, " (RubCod,CriInd,%s,%s,Title)"
CriCod); " VALUES"
" (%ld,%u,%.15lg,%.15lg,'%s')",
RubCri_ValuesFields[RubCri_MIN],
RubCri_ValuesFields[RubCri_MAX],
Criterion->RubCod,
Criterion->CriInd,
Criterion->Values[RubCri_MIN],
Criterion->Values[RubCri_MAX],
Criterion->Title);
Str_SetDecimalPointToLocal (); // Return to local system
return CriCod;
} }
/*****************************************************************************/ /*****************************************************************************/
/*********** Update indexes of criteria greater than a given one ***********/ /********************* Update criterion title in database ********************/
/*****************************************************************************/ /*****************************************************************************/
void Rub_DB_UpdateIndexesOfCriteriaGreaterThan (long RubCod,unsigned CriInd) void Rub_DB_UpdateCriterionTitle (long CriCod,long RubCod,
const char NewTitle[RubCri_MAX_BYTES_TITLE + 1])
{
DB_QueryUPDATE ("can not update the title of a criterion",
"UPDATE rub_criteria"
" SET Title='%s'"
" WHERE CriCod=%ld"
" AND RubCod=%ld", // Extra check
NewTitle,
CriCod,
RubCod);
}
/*****************************************************************************/
/********************* Update criterion value in database ********************/
/*****************************************************************************/
void Rub_DB_UpdateCriterionValue (long CriCod,long RubCod,
RubCri_ValueRange_t ValueRange,double Value)
{
Str_SetDecimalPointToUS (); // To write the decimal point as a dot
DB_QueryUPDATE ("can not update the value of a criterion",
"UPDATE rub_criteria"
" SET %s=%.15lg"
" WHERE CriCod=%ld"
" AND RubCod=%ld", // Extra check
RubCri_ValuesFields[ValueRange],Value,
CriCod,
RubCod);
Str_SetDecimalPointToLocal (); // Return to local system
}
/*****************************************************************************/
/************ Update indexes of criteria greater than a given one ************/
/*****************************************************************************/
void Rub_DB_UpdateCriteriaIndexesInRubricGreaterThan (long RubCod,unsigned CriInd)
{ {
DB_QueryUPDATE ("can not update indexes of criteria", DB_QueryUPDATE ("can not update indexes of criteria",
"UPDATE rub_criteria" "UPDATE rub_criteria"
@ -405,22 +464,6 @@ unsigned Rub_DB_GetNumCriteriaInRubric (long RubCod)
RubCod); RubCod);
} }
/*****************************************************************************/
/*********************** Get the criteria of a rubric ***********************/
/*****************************************************************************/
unsigned Rub_DB_GetRubricCriteriaBasic (MYSQL_RES **mysql_res,long RubCod)
{
return (unsigned)
DB_QuerySELECT (mysql_res,"can not get rubric criteria",
"SELECT CriCod," // row[0]
"CriInd" // row[1]
" FROM rub_criteria"
" WHERE RubCod=%ld"
" ORDER BY CriInd",
RubCod);
}
/*****************************************************************************/ /*****************************************************************************/
/********* Get criterion code given rubric and index of criterion ************/ /********* Get criterion code given rubric and index of criterion ************/
/*****************************************************************************/ /*****************************************************************************/
@ -510,24 +553,73 @@ unsigned Rub_DB_GetNextCriterionIndexInRubric (long RubCod,unsigned CriInd)
" FROM rub_criteria" " FROM rub_criteria"
" WHERE RubCod=%ld" " WHERE RubCod=%ld"
" AND CriInd>%u", " AND CriInd>%u",
Rub_AFTER_LAST_CRITERION, // End of criteria has been reached RubCri_AFTER_LAST_CRITERION, // End of criteria has been reached
RubCod, RubCod,
CriInd); CriInd);
} }
/*****************************************************************************/ /*****************************************************************************/
/****************** Get data of a criterion from database ********************/ /********************* Get criteria in a given rubric ************************/
/*****************************************************************************/ /*****************************************************************************/
unsigned Rub_DB_GetCriterionData (MYSQL_RES **mysql_res,long CriCod) unsigned Rub_DB_GetCriteria (MYSQL_RES **mysql_res,long RubCod)
{ {
return (unsigned) return (unsigned)
DB_QuerySELECT (mysql_res,"can not get a criterion", DB_QuerySELECT (mysql_res,"can not get criteria",
"SELECT Title" // row[0] "SELECT CriCod," // row[0]
"CriInd," // row[1]
"%s," // row[2]
"%s," // row[3]
"Title" // row[4]
" FROM rub_criteria" " FROM rub_criteria"
" WHERE CriCod=%ld" " WHERE RubCod=%ld"
" AND CrsCod=%ld", // Extra check " ORDER BY CriInd",
CriCod, RubCri_ValuesFields[RubCri_MIN],
RubCri_ValuesFields[RubCri_MAX],
RubCod);
}
/*****************************************************************************/
/***************** Get rubric criterion data using its code ******************/
/*****************************************************************************/
unsigned Rub_DB_GetDataOfCriterionByCod (MYSQL_RES **mysql_res,long CriCod)
{
return (unsigned)
DB_QuerySELECT (mysql_res,"can not get criterion data",
"SELECT CriCod," // row[0]
"RubCod," // row[1]
"CriInd," // row[2]
"%s," // row[3]
"%s," // row[4]
"Title" // row[5]
" FROM rub_criteria"
" WHERE CriCod=%ld",
RubCri_ValuesFields[RubCri_MIN],
RubCri_ValuesFields[RubCri_MAX],
CriCod);
}
/*****************************************************************************/
/************** Check if the title of a rubric criterion exists **************/
/*****************************************************************************/
bool Rub_DB_CheckIfSimilarCriterionExists (const struct RubCri_Criterion *Criterion,
const char Title[RubCri_MAX_BYTES_TITLE + 1])
{
return
DB_QueryEXISTS ("can not check similar criterion",
"SELECT EXISTS"
"(SELECT *"
" FROM rub_criteria,"
"rub_rubrics"
" WHERE rub_criteria.ExaCod=%ld"
" AND rub_criteria.Title='%s'"
" AND rub_criteria.SetCod<>%ld"
" AND rub_criteria.ExaCod=rub_rubrics.ExaCod"
" AND rub_rubrics.CrsCod=%ld)", // Extra check
Criterion->RubCod,Title,
Criterion->CriCod,
Gbl.Hierarchy.Crs.CrsCod); Gbl.Hierarchy.Crs.CrsCod);
} }
@ -634,15 +726,15 @@ double Rub_DB_GetNumCriteriaPerRubric (HieLvl_Level_t Scope)
/*********************** Remove criterion from a rubric **********************/ /*********************** Remove criterion from a rubric **********************/
/*****************************************************************************/ /*****************************************************************************/
void Rub_DB_RemoveCriterionFromRubric (long RubCod,unsigned CriInd) void Rub_DB_RemoveCriterionFromRubric (long CriCod,long RubCod)
{ {
DB_QueryDELETE ("can not remove a criterion", DB_QueryDELETE ("can not remove rubric criterion",
"DELETE FROM rub_criteria" "DELETE FROM rub_criteria"
" WHERE RubCod=%ld" " WHERE CriCod=%ld"
" AND CriInd=%u", " AND RubCod=%ld",
RubCod, CriCod,
CriInd); RubCod);
} }
/*****************************************************************************/ /*****************************************************************************/
/**************************** Remove rubric criteria *************************/ /**************************** Remove rubric criteria *************************/

View File

@ -31,6 +31,7 @@
#include "swad_game.h" #include "swad_game.h"
#include "swad_hierarchy_level.h" #include "swad_hierarchy_level.h"
#include "swad_rubric_type.h"
/*****************************************************************************/ /*****************************************************************************/
/***************************** Public prototypes *****************************/ /***************************** Public prototypes *****************************/
@ -53,22 +54,29 @@ void Rub_DB_RemoveRubric (long RubCod);
void Rub_DB_RemoveCrsRubrics (long CrsCod); void Rub_DB_RemoveCrsRubrics (long CrsCod);
//--------------------------- Rubric criteria ------------------------------- //--------------------------- Rubric criteria -------------------------------
void Rub_DB_InsertCriterionInRubric (long RubCod,unsigned CriInd,long CriCod); long Rub_DB_CreateCriterion (const struct RubCri_Criterion *Criterion);
void Rub_DB_UpdateIndexesOfCriteriaGreaterThan (long RubCod,unsigned CriInd); void Rub_DB_UpdateCriterionTitle (long CriCod,long RubCod,
const char NewTitle[RubCri_MAX_BYTES_TITLE + 1]);
void Rub_DB_UpdateCriterionValue (long CriCod,long RubCod,
RubCri_ValueRange_t ValueRange,double Value);
void Rub_DB_UpdateCriteriaIndexesInRubricGreaterThan (long RubCod,unsigned CriInd);
void Rub_DB_UpdateCriterionIndex (long CriInd,long RubCod,long CriCod); void Rub_DB_UpdateCriterionIndex (long CriInd,long RubCod,long CriCod);
void Rub_DB_LockTable (void); void Rub_DB_LockTable (void);
unsigned Rub_DB_GetNumCriteriaInRubric (long RubCod); unsigned Rub_DB_GetNumCriteriaInRubric (long RubCod);
unsigned Rub_DB_GetRubricCriteriaBasic (MYSQL_RES **mysql_res,long RubCod);
long Rub_DB_GetCriCodFromCriInd (long RubCod,unsigned QstInd); long Rub_DB_GetCriCodFromCriInd (long RubCod,unsigned QstInd);
unsigned Rub_DB_GetCriIndFromCriCod (long RubCod,long QstCod); unsigned Rub_DB_GetCriIndFromCriCod (long RubCod,long QstCod);
unsigned Rub_DB_GetMaxCriterionIndexInRubric (long RubCod); unsigned Rub_DB_GetMaxCriterionIndexInRubric (long RubCod);
unsigned Rub_DB_GetPrevCriterionIndexInRubric (long RubCod,unsigned QstInd); unsigned Rub_DB_GetPrevCriterionIndexInRubric (long RubCod,unsigned QstInd);
unsigned Rub_DB_GetNextCriterionIndexInRubric (long RubCod,unsigned QstInd); unsigned Rub_DB_GetNextCriterionIndexInRubric (long RubCod,unsigned QstInd);
unsigned Rub_DB_GetCriterionData (MYSQL_RES **mysql_res,long CriCod); unsigned Rub_DB_GetCriteria (MYSQL_RES **mysql_res,long RubCod);
unsigned Rub_DB_GetDataOfCriterionByCod (MYSQL_RES **mysql_res,long CriCod);
bool Rub_DB_CheckIfSimilarCriterionExists (const struct RubCri_Criterion *Criterion,
const char Title[RubCri_MAX_BYTES_TITLE + 1]);
double Rub_DB_GetNumCriteriaPerRubric (HieLvl_Level_t Scope); double Rub_DB_GetNumCriteriaPerRubric (HieLvl_Level_t Scope);
void Rub_DB_RemoveCriterionFromRubric (long RubCod,unsigned CriInd); void Rub_DB_RemoveCriterionFromRubric (long CriCod,long RubCod);
void Rub_DB_RemoveRubricCriteria (long RubCod); void Rub_DB_RemoveRubricCriteria (long RubCod);
void Rub_DB_RemoveCrsRubricCriteria (long CrsCod); void Rub_DB_RemoveCrsRubricCriteria (long CrsCod);

85
swad_rubric_type.h Normal file
View File

@ -0,0 +1,85 @@
// swad_rubric_type.h: definition of types for rubrics
#ifndef _SWAD_RUB_TYP
#define _SWAD_RUB_TYP
/*
SWAD (Shared Workspace At a Distance),
is a web platform developed at the University of Granada (Spain),
and used to support university teaching.
This file is part of SWAD core.
Copyright (C) 1999-2023 Antonio Cañas Vargas
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU Affero General 3 License as
published by the Free Software Foundation, either version 3 of the
License, or (at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU Affero General Public License for more details.
You should have received a copy of the GNU Affero General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
/*****************************************************************************/
/********************************* Headers ***********************************/
/*****************************************************************************/
#include <stdbool.h> // For boolean type
#include "swad_date.h"
#include "swad_hierarchy_level.h"
#include "swad_string.h"
/*****************************************************************************/
/************************** Public types and constants ***********************/
/*****************************************************************************/
#define Rub_MAX_CHARS_TITLE (128 - 1) // 127
#define Rub_MAX_BYTES_TITLE ((Rub_MAX_CHARS_TITLE + 1) * Str_MAX_BYTES_PER_CHAR - 1) // 2047
#define RubCri_MAX_CHARS_TITLE (128 - 1) // 127
#define RubCri_MAX_BYTES_TITLE ((RubCri_MAX_CHARS_TITLE + 1) * Str_MAX_BYTES_PER_CHAR - 1) // 2047
#define RubCri_NUM_VALUES 2
typedef enum
{
RubCri_MIN = 0,
RubCri_MAX = 1,
} RubCri_ValueRange_t;
struct Rub_Rubric
{
long RubCod; // Rubric code
long CrsCod; // Course code
long UsrCod; // Author code
char Title[Rub_MAX_BYTES_TITLE + 1];
unsigned NumCriteria; // Number of criteria in the rubric
};
struct Rub_Rubrics
{
bool LstIsRead; // Is the list already read from database...
// ...or it needs to be read?
unsigned Num; // Total number of rubrics
long *Lst; // List of rubric codes
unsigned CurrentPage;
struct Rub_Rubric Rubric; // Selected/current rubric
long CriCod; // Selected/current criterion code
unsigned CriInd; // Current citerion index
long QstCod; // Current question code
};
struct RubCri_Criterion
{
long RubCod; // Rubric code
long CriCod; // Criterion code
unsigned CriInd; // Criterion index (position in the rubric)
double Values[RubCri_NUM_VALUES];
char Title[RubCri_MAX_BYTES_TITLE + 1]; // Title of the criterion
};
#endif

View File

@ -1634,7 +1634,7 @@ void Svy_UnhideSurvey (void)
/********************* Put a form to create a new survey *********************/ /********************* Put a form to create a new survey *********************/
/*****************************************************************************/ /*****************************************************************************/
void Svy_RequestCreatOrEditSvy (void) void Svy_ReqCreatOrEditSvy (void)
{ {
extern const char *Hlp_ANALYTICS_Surveys_new_survey; extern const char *Hlp_ANALYTICS_Surveys_new_survey;
extern const char *Hlp_ANALYTICS_Surveys_edit_survey; extern const char *Hlp_ANALYTICS_Surveys_edit_survey;
@ -2093,7 +2093,7 @@ void Svy_ReceiveFormSurvey (void)
Grp_FreeListCodSelectedGrps (); Grp_FreeListCodSelectedGrps ();
} }
else else
Svy_RequestCreatOrEditSvy (); Svy_ReqCreatOrEditSvy ();
/***** Notify by email about the new survey *****/ /***** Notify by email about the new survey *****/
if (NewSvy.Scope == HieLvl_CRS) // Notify only the surveys for a course, not for a degree or global if (NewSvy.Scope == HieLvl_CRS) // Notify only the surveys for a course, not for a degree or global
@ -2248,7 +2248,7 @@ void Svy_RemoveSurveys (HieLvl_Level_t Scope,long Cod)
/*********** Put a form to edit/create a question in survey *****************/ /*********** Put a form to edit/create a question in survey *****************/
/*****************************************************************************/ /*****************************************************************************/
void Svy_RequestEditQuestion (void) void Svy_ReqEditQuestion (void)
{ {
struct Svy_Surveys Surveys; struct Svy_Surveys Surveys;
struct Svy_Question SvyQst; struct Svy_Question SvyQst;
@ -3104,7 +3104,7 @@ static void Svy_PutParsRemoveOneQst (void *Surveys)
/********************** Request the removal of a question ********************/ /********************** Request the removal of a question ********************/
/*****************************************************************************/ /*****************************************************************************/
void Svy_RequestRemoveQst (void) void Svy_ReqRemQst (void)
{ {
extern const char *Txt_Do_you_really_want_to_remove_the_question_X; extern const char *Txt_Do_you_really_want_to_remove_the_question_X;
extern const char *Txt_Remove_question; extern const char *Txt_Remove_question;

View File

@ -93,7 +93,7 @@ void Svy_SeeAllSurveys (void);
void Svy_ListAllSurveys (struct Svy_Surveys *Surveys); void Svy_ListAllSurveys (struct Svy_Surveys *Surveys);
void Svy_SeeOneSurvey (void); void Svy_SeeOneSurvey (void);
void Svy_PutParSvyOrder (Dat_StartEndTime_t SelectedOrder); void Svy_PutParSvyOrder (Dat_StartEndTime_t SelectedOrder);
void Svy_RequestCreatOrEditSvy (void); void Svy_ReqCreatOrEditSvy (void);
void Svy_GetDataOfSurveyByCod (struct Svy_Survey *Svy); void Svy_GetDataOfSurveyByCod (struct Svy_Survey *Svy);
void Svy_GetDataOfSurveyByFolder (struct Svy_Survey *Svy); void Svy_GetDataOfSurveyByFolder (struct Svy_Survey *Svy);
void Svy_FreeListSurveys (struct Svy_Surveys *Surveys); void Svy_FreeListSurveys (struct Svy_Surveys *Surveys);
@ -109,10 +109,10 @@ void Svy_UnhideSurvey (void);
void Svy_ReceiveFormSurvey (void); void Svy_ReceiveFormSurvey (void);
void Svy_RemoveSurveys (HieLvl_Level_t Scope,long Cod); void Svy_RemoveSurveys (HieLvl_Level_t Scope,long Cod);
void Svy_RequestEditQuestion (void); void Svy_ReqEditQuestion (void);
void Svy_ReceiveQst (void); void Svy_ReceiveQst (void);
void Svy_RequestRemoveQst (void); void Svy_ReqRemQst (void);
void Svy_RemoveQst (void); void Svy_RemoveQst (void);
void Svy_ReceiveSurveyAnswers (void); void Svy_ReceiveSurveyAnswers (void);

View File

@ -94,7 +94,7 @@ static unsigned Tst_GetParNumQsts (void);
/********************* Request a self-assessment test ************************/ /********************* Request a self-assessment test ************************/
/*****************************************************************************/ /*****************************************************************************/
void Tst_RequestTest (void) void Tst_ReqTest (void)
{ {
struct Qst_Questions Questions; struct Qst_Questions Questions;

View File

@ -58,7 +58,7 @@ typedef enum
/***************************** Public prototypes *****************************/ /***************************** Public prototypes *****************************/
/*****************************************************************************/ /*****************************************************************************/
void Tst_RequestTest (void); void Tst_ReqTest (void);
void Tst_ShowNewTest (void); void Tst_ShowNewTest (void);
void Tst_ReceiveTestDraft (void); void Tst_ReceiveTestDraft (void);

View File

@ -293,7 +293,7 @@ static void TstPrn_WriteQstAndAnsToFill (struct TstPrn_PrintedQuestion *PrintedQ
/***** Number of question and answer type *****/ /***** Number of question and answer type *****/
HTM_TD_Begin ("class=\"RT %s\"",The_GetColorRows ()); HTM_TD_Begin ("class=\"RT %s\"",The_GetColorRows ());
Qst_WriteNumQst (QstInd + 1,"BIG_INDEX"); Lay_WriteIndex (QstInd + 1,"BIG_INDEX");
Qst_WriteAnswerType (Question->Answer.Type,"DAT_SMALL"); Qst_WriteAnswerType (Question->Answer.Type,"DAT_SMALL");
HTM_TD_End (); HTM_TD_End ();
@ -640,7 +640,7 @@ static void TstPrn_WriteQstAndAnsExam (struct Usr_Data *UsrDat,
/***** Number of question and answer type *****/ /***** Number of question and answer type *****/
HTM_TD_Begin ("class=\"RT %s\"",The_GetColorRows ()); HTM_TD_Begin ("class=\"RT %s\"",The_GetColorRows ());
Qst_WriteNumQst (QstInd + 1,"BIG_INDEX"); Lay_WriteIndex (QstInd + 1,"BIG_INDEX");
if (QuestionUneditedAfterExam) if (QuestionUneditedAfterExam)
Qst_WriteAnswerType (Question->Answer.Type,"DAT_SMALL"); Qst_WriteAnswerType (Question->Answer.Type,"DAT_SMALL");
HTM_TD_End (); HTM_TD_End ();

View File

@ -1621,6 +1621,29 @@ const char *Txt_Alphabetic_BR_code_BR_ISO_3166_1 =
"Alphabetic<br />code<br />ISO 3166-1"; // Çeviri lazim! "Alphabetic<br />code<br />ISO 3166-1"; // Çeviri lazim!
#endif #endif
const char *Txt_Already_existed_a_criterion_in_this_rubric_with_the_title_X = // Warning: it is very important to include %s in the following sentences
#if L==1 // ca
"Ja existia un criteri en aquesta r&uacute;brica amb el t&iacute;tol <strong>%s</strong>.";
#elif L==2 // de
"In dieser Rubrik existierte bereits ein Kriterium mit dem Titel <strong>%s</strong>.";
#elif L==3 // en
"Already existed a criterion in this rubric with the title <strong>%s</strong>.";
#elif L==4 // es
"Ya exist&iacute;a un criterio en esta r&uacute;brica con el t&iacute;tulo <strong>%s</strong>.";
#elif L==5 // fr
"Il existe d&eacute;j&agrave; un crit&egrave;re dans cette rubrique avec le titre <strong>%s</strong>.";
#elif L==6 // gn
"Ya exist&iacute;a un criterio en esta r&uacute;brica con el t&iacute;tulo <strong>%s</strong>."; // Okoteve traducción
#elif L==7 // it
"Esiste gi&agrave; un criterio in questa rubrica con il titolo <strong>%s</strong>.";
#elif L==8 // pl
"By&lstrok;o ju&zdot; kryterium w tej rubryce z tytu&lstrok;em <strong>%s</strong>.";
#elif L==9 // pt
"J&aacute; existia um crit&eacute;rio nesta rubrica com o t&iacute;tulo <strong>%s</strong>.";
#elif L==10 // tr
"Bu de&gbreve;erlendirme tablosunda <strong>%s</strong> ba&scedil;l&inodot;kl&inodot; bir &ouml;l&ccedil;&uuml;t zaten vard&inodot;.";
#endif
const char *Txt_Already_existed_a_game_with_the_title_X = // Warning: it is very important to include %s in the following sentences const char *Txt_Already_existed_a_game_with_the_title_X = // Warning: it is very important to include %s in the following sentences
#if L==1 // ca #if L==1 // ca
"Ja existia un joc amb el t&iacute;tol <strong>%s</strong>."; "Ja existia un joc amb el t&iacute;tol <strong>%s</strong>.";
@ -6730,6 +6753,29 @@ const char *Txt_Create_course =
"Create course"; // Çeviri lazim! "Create course"; // Çeviri lazim!
#endif #endif
const char *Txt_Create_criterion =
#if L==1 // ca
"Crear criteri";
#elif L==2 // de
"Kriterium eingeben";
#elif L==3 // en
"Create criterion";
#elif L==4 // es
"Crear criterio";
#elif L==5 // fr
"Cr&eacute;er crit&egrave;re";
#elif L==6 // gn
"Crear criterio"; // Okoteve traducción
#elif L==7 // it
"Crear criterio";
#elif L==8 // pl
"Utw&oacute;rz kryterium";
#elif L==9 // pt
"Criar crit&eacute;rio";
#elif L==10 // tr
"&Ouml;l&ccedil;&uuml;t olu&scedil;tur";
#endif
const char *Txt_Create_degree = const char *Txt_Create_degree =
#if L==1 // ca #if L==1 // ca
"Crear titulaci&oacute;"; "Crear titulaci&oacute;";
@ -7417,7 +7463,7 @@ const char *Txt_Created_new_assignment_X = // Warning: it is very important to i
#elif L==9 // pt #elif L==9 // pt
"Criada nova atividade <strong>%s</strong>."; "Criada nova atividade <strong>%s</strong>.";
#elif L==10 // tr #elif L==10 // tr
"Created new assignment <strong>%s</strong>."; // Çeviri lazim! "Yeni atama <strong>%s</strong> olu&scedil;turuldu.";
#endif #endif
const char *Txt_Created_new_banner_X = // Warning: it is very important to include %s in the following sentences const char *Txt_Created_new_banner_X = // Warning: it is very important to include %s in the following sentences
@ -7440,7 +7486,7 @@ const char *Txt_Created_new_banner_X = // Warning: it is very important to inclu
#elif L==9 // pt #elif L==9 // pt
"Criado novo banner <strong>%s</strong>."; "Criado novo banner <strong>%s</strong>.";
#elif L==10 // tr #elif L==10 // tr
"Created new banner <strong>%s</strong>."; // Çeviri lazim! "Yeni banner <strong>%s</strong> olu&scedil;turuldu.";
#endif #endif
const char *Txt_Created_new_building_X = // Warning: it is very important to include %s in the following sentences const char *Txt_Created_new_building_X = // Warning: it is very important to include %s in the following sentences
@ -7463,7 +7509,7 @@ const char *Txt_Created_new_building_X = // Warning: it is very important to inc
#elif L==9 // pt #elif L==9 // pt
"Criado novo edif&iacute;cio <strong>%s</strong>."; "Criado novo edif&iacute;cio <strong>%s</strong>.";
#elif L==10 // tr #elif L==10 // tr
"Created new building <strong>%s</strong>."; // Çeviri lazim! "Yeni bina <strong>%s</strong> olu&scedil;turuldu.";
#endif #endif
const char *Txt_Created_new_call_for_exam = const char *Txt_Created_new_call_for_exam =
@ -7486,7 +7532,7 @@ const char *Txt_Created_new_call_for_exam =
#elif L==9 // pt #elif L==9 // pt
"Criado nova chamada para exame."; "Criado nova chamada para exame.";
#elif L==10 // tr #elif L==10 // tr
"Created new call for exam."; // Çeviri lazim! "S&inodot;nav i&ccedil;in yeni &ccedil;a&gbreve;r&inodot; olu&scedil;turuldu.";
#endif #endif
const char *Txt_Created_new_center_X = // Warning: it is very important to include %s in the following sentences const char *Txt_Created_new_center_X = // Warning: it is very important to include %s in the following sentences
@ -7509,7 +7555,7 @@ const char *Txt_Created_new_center_X = // Warning: it is very important to inclu
#elif L==9 // pt #elif L==9 // pt
"Criado novo centro <strong>%s</strong>."; "Criado novo centro <strong>%s</strong>.";
#elif L==10 // tr #elif L==10 // tr
"Created new center <strong>%s</strong>."; // Çeviri lazim! "Yeni merkez <strong>%s</strong> olu&scedil;turuldu.";
#endif #endif
const char *Txt_Created_new_country_X = // Warning: it is very important to include %s in the following sentences const char *Txt_Created_new_country_X = // Warning: it is very important to include %s in the following sentences
@ -7532,7 +7578,7 @@ const char *Txt_Created_new_country_X = // Warning: it is very important to incl
#elif L==9 // pt #elif L==9 // pt
"Criado novo pa&iacute;s <strong>%s</strong>."; "Criado novo pa&iacute;s <strong>%s</strong>.";
#elif L==10 // tr #elif L==10 // tr
"Created new country <strong>%s</strong>."; // Çeviri lazim! "Yeni &uuml;lke <strong>%s</strong> olu&scedil;turuldu.";
#endif #endif
const char *Txt_Created_new_course_X = // Warning: it is very important to include %s in the following sentences const char *Txt_Created_new_course_X = // Warning: it is very important to include %s in the following sentences
@ -7555,7 +7601,30 @@ const char *Txt_Created_new_course_X = // Warning: it is very important to inclu
#elif L==9 // pt #elif L==9 // pt
"Criada nova disciplina <strong>%s</strong>."; "Criada nova disciplina <strong>%s</strong>.";
#elif L==10 // tr #elif L==10 // tr
"Created new course <strong>%s</strong>."; // Çeviri lazim! "Yeni kurs <strong>%s</strong> olu&scedil;turuldu.";
#endif
const char *Txt_Created_new_criterion_X = // Warning: it is very important to include %s in the following sentences
#if L==1 // ca
"Creat nou criteri <strong>%s</strong>.";
#elif L==2 // de
"Neues Kriterium <strong>%s</strong> eingegeben.";
#elif L==3 // en
"Created new criterion <strong>%s</strong>.";
#elif L==4 // es
"Creado nuevo criterio <strong>%s</strong>.";
#elif L==5 // fr
"Cr&eacute;&eacute; nouveau crit&egrave;re <strong>%s</strong>.";
#elif L==6 // gn
"Creado nuevo criterio <strong>%s</strong>."; // Okoteve traducción
#elif L==7 // it
"Creato nuovo criterio <strong>%s</strong>.";
#elif L==8 // pl
"Utworzono nowe kryterium <strong>%s</strong>.";
#elif L==9 // pt
"Criado novo crit&eacute;rio <strong>%s</strong>.";
#elif L==10 // tr
"Yeni kriter <strong>%s</strong> olu&scedil;turuldu.";
#endif #endif
const char *Txt_Created_new_degree_X = // Warning: it is very important to include %s in the following sentences const char *Txt_Created_new_degree_X = // Warning: it is very important to include %s in the following sentences
@ -7578,7 +7647,7 @@ const char *Txt_Created_new_degree_X = // Warning: it is very important to inclu
#elif L==9 // pt #elif L==9 // pt
"Criada novo grau <strong>%s</strong>."; "Criada novo grau <strong>%s</strong>.";
#elif L==10 // tr #elif L==10 // tr
"Created new degree <strong>%s</strong>."; // Çeviri lazim! "Yeni derece <strong>%s</strong> olu&scedil;turuldu.";
#endif #endif
const char *Txt_Created_new_department_X = // Warning: it is very important to include %s in the following sentences const char *Txt_Created_new_department_X = // Warning: it is very important to include %s in the following sentences
@ -7601,7 +7670,7 @@ const char *Txt_Created_new_department_X = // Warning: it is very important to i
#elif L==9 // pt #elif L==9 // pt
"Criado novo departamento <strong>%s</strong>."; "Criado novo departamento <strong>%s</strong>.";
#elif L==10 // tr #elif L==10 // tr
"Created new department <strong>%s</strong>."; // Çeviri lazim! "Yeni departman <strong>%s</strong> olu&scedil;turuldu.";
#endif #endif
const char *Txt_Created_new_email_domain_X = // Warning: it is very important to include %s in the following sentences const char *Txt_Created_new_email_domain_X = // Warning: it is very important to include %s in the following sentences
@ -7624,7 +7693,7 @@ const char *Txt_Created_new_email_domain_X = // Warning: it is very important to
#elif L==9 // pt #elif L==9 // pt
"Criado novo dom&iacute;nio de email <strong>%s</strong>."; "Criado novo dom&iacute;nio de email <strong>%s</strong>.";
#elif L==10 // tr #elif L==10 // tr
"Created new email domain <strong>%s</strong>."; // Çeviri lazim! "Yeni e-posta etki alan&inodot; <strong>%s</strong> olu&scedil;turuldu.";
#endif #endif
const char *Txt_Created_new_event_X = // Warning: it is very important to include %s in the following sentences const char *Txt_Created_new_event_X = // Warning: it is very important to include %s in the following sentences
@ -7647,7 +7716,7 @@ const char *Txt_Created_new_event_X = // Warning: it is very important to includ
#elif L==9 // pt #elif L==9 // pt
"Criado novo evento <strong>%s</strong>."; "Criado novo evento <strong>%s</strong>.";
#elif L==10 // tr #elif L==10 // tr
"Created new event <strong>%s</strong>."; // Çeviri lazim! "Yeni etkinlik <strong>%s</strong> olu&scedil;turuldu.";
#endif #endif
const char *Txt_Created_new_exam_X = // Warning: it is very important to include %s in the following sentences const char *Txt_Created_new_exam_X = // Warning: it is very important to include %s in the following sentences
@ -7670,7 +7739,7 @@ const char *Txt_Created_new_exam_X = // Warning: it is very important to include
#elif L==9 // pt #elif L==9 // pt
"Criado novo exame <strong>%s</strong>."; "Criado novo exame <strong>%s</strong>.";
#elif L==10 // tr #elif L==10 // tr
"Created new exam <strong>%s</strong>."; // Çeviri lazim! "Yeni s&inodot;nav <strong>%s</strong> olu&scedil;turuldu.";
#endif #endif
const char *Txt_Created_new_game_X = // Warning: it is very important to include %s in the following sentences const char *Txt_Created_new_game_X = // Warning: it is very important to include %s in the following sentences
@ -7693,7 +7762,7 @@ const char *Txt_Created_new_game_X = // Warning: it is very important to include
#elif L==9 // pt #elif L==9 // pt
"Criado novo jogo <strong>%s</strong>."; "Criado novo jogo <strong>%s</strong>.";
#elif L==10 // tr #elif L==10 // tr
"Created new game <strong>%s</strong>."; // Çeviri lazim! "Yeni oyun <strong>%s</strong> olu&scedil;turuldu.";
#endif #endif
const char *Txt_Created_new_group_X = // Warning: it is very important to include %s in the following sentences const char *Txt_Created_new_group_X = // Warning: it is very important to include %s in the following sentences
@ -7716,7 +7785,7 @@ const char *Txt_Created_new_group_X = // Warning: it is very important to includ
#elif L==9 // pt #elif L==9 // pt
"Criado novo grupo <strong>%s</strong>."; "Criado novo grupo <strong>%s</strong>.";
#elif L==10 // tr #elif L==10 // tr
"Created new group <strong>%s</strong>."; // Çeviri lazim! "Yeni grup <strong>%s</strong> olu&scedil;turuldu.";
#endif #endif
const char *Txt_Created_new_holiday_X = // Warning: it is very important to include %s in the following sentences const char *Txt_Created_new_holiday_X = // Warning: it is very important to include %s in the following sentences
@ -7739,7 +7808,7 @@ const char *Txt_Created_new_holiday_X = // Warning: it is very important to incl
#elif L==9 // pt #elif L==9 // pt
"Criado nova f&eacute;ria <strong>%s</strong>."; "Criado nova f&eacute;ria <strong>%s</strong>.";
#elif L==10 // tr #elif L==10 // tr
"Created new holiday <strong>%s</strong>."; // Çeviri lazim! "Yeni tatil <strong>%s</strong> olu&scedil;turuldu.";
#endif #endif
const char *Txt_Created_new_institution_X = // Warning: it is very important to include %s in the following sentences const char *Txt_Created_new_institution_X = // Warning: it is very important to include %s in the following sentences
@ -7762,7 +7831,7 @@ const char *Txt_Created_new_institution_X = // Warning: it is very important to
#elif L==9 // pt #elif L==9 // pt
"Criada nova institu&ccedil;&atilde;o <strong>%s</strong>."; "Criada nova institu&ccedil;&atilde;o <strong>%s</strong>.";
#elif L==10 // tr #elif L==10 // tr
"Created new institution <strong>%s</strong>."; // Çeviri lazim! "Yeni kurum <strong>%s</strong> olu&scedil;turuldu.";
#endif #endif
const char *Txt_Created_new_link_X = // Warning: it is very important to include %s in the following sentences const char *Txt_Created_new_link_X = // Warning: it is very important to include %s in the following sentences
@ -7785,7 +7854,7 @@ const char *Txt_Created_new_link_X = // Warning: it is very important to include
#elif L==9 // pt #elif L==9 // pt
"Criado nova liga&ccedil;&atilde;o <strong>%s</strong>."; "Criado nova liga&ccedil;&atilde;o <strong>%s</strong>.";
#elif L==10 // tr #elif L==10 // tr
"Created new link <strong>%s</strong>."; // Çeviri lazim! "Yeni ba&gbreve;lant&inodot; <strong>%s</strong> olu&scedil;turuldu.";
#endif #endif
const char *Txt_Created_new_place_X = // Warning: it is very important to include %s in the following sentences const char *Txt_Created_new_place_X = // Warning: it is very important to include %s in the following sentences
@ -7808,7 +7877,7 @@ const char *Txt_Created_new_place_X = // Warning: it is very important to includ
#elif L==9 // pt #elif L==9 // pt
"Criado nova localiza&ccedil;&atilde;o <strong>%s</strong>."; "Criado nova localiza&ccedil;&atilde;o <strong>%s</strong>.";
#elif L==10 // tr #elif L==10 // tr
"Created new place <strong>%s</strong>."; // Çeviri lazim! "Yeni yer <strong>%s</strong> olu&scedil;turuldu.";
#endif #endif
const char *Txt_Created_new_plugin_X = // Warning: it is very important to include %s in the following sentences const char *Txt_Created_new_plugin_X = // Warning: it is very important to include %s in the following sentences
@ -7831,7 +7900,7 @@ const char *Txt_Created_new_plugin_X = // Warning: it is very important to inclu
#elif L==9 // pt #elif L==9 // pt
"Criado novo plugin <strong>%s</strong>."; "Criado novo plugin <strong>%s</strong>.";
#elif L==10 // tr #elif L==10 // tr
"Created new plugin <strong>%s</strong>."; // Çeviri lazim! "Yeni eklenti <strong>%s</strong> olu&scedil;turuldu.";
#endif #endif
const char *Txt_Created_new_project_X = // Warning: it is very important to include %s in the following sentences const char *Txt_Created_new_project_X = // Warning: it is very important to include %s in the following sentences
@ -7854,7 +7923,7 @@ const char *Txt_Created_new_project_X = // Warning: it is very important to incl
#elif L==9 // pt #elif L==9 // pt
"Criado novo projeto <strong>%s</strong>."; "Criado novo projeto <strong>%s</strong>.";
#elif L==10 // tr #elif L==10 // tr
"Created new project <strong>%s</strong>."; // Çeviri lazim! "Yeni proje <strong>%s</strong> olu&scedil;turuldu.";
#endif #endif
const char *Txt_Created_new_record_field_X = // Warning: it is very important to include %s in the following sentences const char *Txt_Created_new_record_field_X = // Warning: it is very important to include %s in the following sentences
@ -7877,7 +7946,7 @@ const char *Txt_Created_new_record_field_X = // Warning: it is very important to
#elif L==9 // pt #elif L==9 // pt
"Criado novo campo de cart&atilde;o <strong>%s</strong>."; "Criado novo campo de cart&atilde;o <strong>%s</strong>.";
#elif L==10 // tr #elif L==10 // tr
"Created new record field <strong>%s</strong>."; // Çeviri lazim! "Yeni kay&inodot;t alan&inodot; <strong>%s</strong> olu&scedil;turuldu.";
#endif #endif
const char *Txt_Created_new_room_X = // Warning: it is very important to include %s in the following sentences const char *Txt_Created_new_room_X = // Warning: it is very important to include %s in the following sentences
@ -7900,7 +7969,7 @@ const char *Txt_Created_new_room_X = // Warning: it is very important to include
#elif L==9 // pt #elif L==9 // pt
"Criada nova sala <strong>%s</strong>."; "Criada nova sala <strong>%s</strong>.";
#elif L==10 // tr #elif L==10 // tr
"Created new room <strong>%s</strong>."; // Çeviri lazim! "Yeni oda <strong>%s</strong> olu&scedil;turuldu.";
#endif #endif
const char *Txt_Created_new_rubric_X = // Warning: it is very important to include %s in the following sentences const char *Txt_Created_new_rubric_X = // Warning: it is very important to include %s in the following sentences
@ -7946,7 +8015,7 @@ const char *Txt_Created_new_set_of_questions_X = // Warning: it is very importan
#elif L==9 // pt #elif L==9 // pt
"Criado novo conjunto de perguntas <strong>%s</strong>."; "Criado novo conjunto de perguntas <strong>%s</strong>.";
#elif L==10 // tr #elif L==10 // tr
"Created new set of questions <strong>%s</strong>."; // Çeviri lazim! "Yeni soru grubu <strong>%s</strong> olu&scedil;turuldu.";
#endif #endif
const char *Txt_Created_new_survey_X = // Warning: it is very important to include %s in the following sentences const char *Txt_Created_new_survey_X = // Warning: it is very important to include %s in the following sentences
@ -7969,7 +8038,7 @@ const char *Txt_Created_new_survey_X = // Warning: it is very important to inclu
#elif L==9 // pt #elif L==9 // pt
"Criado novo inqu&eacute;rito <strong>%s</strong>."; "Criado novo inqu&eacute;rito <strong>%s</strong>.";
#elif L==10 // tr #elif L==10 // tr
"Created new survey <strong>%s</strong>."; // Çeviri lazim! "Yeni anket <strong>%s</strong> olu&scedil;turuldu.";
#endif #endif
const char *Txt_Created_new_type_of_degree_X = // Warning: it is very important to include %s in the following sentences const char *Txt_Created_new_type_of_degree_X = // Warning: it is very important to include %s in the following sentences
@ -7992,7 +8061,7 @@ const char *Txt_Created_new_type_of_degree_X = // Warning: it is very important
#elif L==9 // pt #elif L==9 // pt
"Criado novo tipo de grau <strong>%s</strong>."; "Criado novo tipo de grau <strong>%s</strong>.";
#elif L==10 // tr #elif L==10 // tr
"Created new type of degree <strong>%s</strong>."; // Çeviri lazim! "Yeni tip derecesi <strong>%s</strong> olu&scedil;turuldu.";
#endif #endif
const char *Txt_Created_new_type_of_group_X = // Warning: it is very important to include %s in the following sentences const char *Txt_Created_new_type_of_group_X = // Warning: it is very important to include %s in the following sentences
@ -8015,7 +8084,7 @@ const char *Txt_Created_new_type_of_group_X = // Warning: it is very important t
#elif L==9 // pt #elif L==9 // pt
"Criado novo tipo de grupo <strong>%s</strong>."; "Criado novo tipo de grupo <strong>%s</strong>.";
#elif L==10 // tr #elif L==10 // tr
"Created new type of group <strong>%s</strong>."; // Çeviri lazim! "Yeni tip grubu <strong>%s</strong> olu&scedil;turuldu.";
#endif #endif
const char *Txt_Created_tables_in_the_database_that_did_not_exist = const char *Txt_Created_tables_in_the_database_that_did_not_exist =
@ -10225,6 +10294,29 @@ const char *Txt_Do_you_really_want_to_remove_the_assignment_X = // Warning: it i
"Do you really want to remove the assignment <strong>%s</strong>?"; // Çeviri lazim! "Do you really want to remove the assignment <strong>%s</strong>?"; // Çeviri lazim!
#endif #endif
const char *Txt_Do_you_really_want_to_remove_the_criterion_X = // Warning: it is very important to include %s in the following sentences
#if L==1 // ca
"De veres voleu eliminar el criteri <strong>%s</strong>?";
#elif L==2 // de
"Wollen Sie der Kriterium <strong>%s</strong> wirklich entfernen?";
#elif L==3 // en
"Do you really want to remove the criterion <strong>%s</strong>?";
#elif L==4 // es
"&iquest;Realmente desea eliminar el criterio <strong>%s</strong>?";
#elif L==5 // fr
"Voulez-vous vraiment supprimer le crit&egrave;re <strong>%s</strong>?";
#elif L==6 // gn
"&iquest;Realmente desea eliminar el criterio <strong>%s</strong>?"; // Okoteve traducción
#elif L==7 // it
"Vuoi realmente rimuovere il criterio <strong>%s</strong>?";
#elif L==8 // pl
"Czy na pewno chcesz usun&aogon;&cacute; kryterium <strong>%s</strong>?";
#elif L==9 // pt
"Voc&ecirc; realmente deseja remover o crit&eacute;rio <strong>%s</strong>?";
#elif L==10 // tr
"<strong>%s</strong> kriterini ger&ccedil;ekten kald&inodot;rmak istiyor musunuz?";
#endif
const char *Txt_Do_you_really_want_to_remove_the_entire_thread = const char *Txt_Do_you_really_want_to_remove_the_entire_thread =
#if L==1 // ca #if L==1 // ca
"De veres voleu eliminar tota la discusi&oacute;?"; "De veres voleu eliminar tota la discusi&oacute;?";
@ -20863,6 +20955,29 @@ const char *Txt_Max_BR_students =
"Max.<br />stud."; // Çeviri lazim! "Max.<br />stud."; // Çeviri lazim!
#endif #endif
const char *Txt_Maximum =
#if L==1 // ca
"M&agrave;xim";
#elif L==2 // de
"Maximum";
#elif L==3 // en
"Maximum";
#elif L==4 // es
"M&aacute;ximo";
#elif L==5 // fr
"Maximum";
#elif L==6 // gn
"M&aacute;ximo"; // Okoteve traducción
#elif L==7 // it
"Massimo";
#elif L==8 // pl
"Maksimum";
#elif L==9 // pt
"M&aacute;ximo";
#elif L==10 // tr
"Maksimum";
#endif
const char *Txt_maximum = const char *Txt_maximum =
#if L==1 // ca #if L==1 // ca
"m&agrave;xim"; "m&agrave;xim";
@ -20883,7 +20998,7 @@ const char *Txt_maximum =
#elif L==9 // pt #elif L==9 // pt
"m&aacute;ximo"; "m&aacute;ximo";
#elif L==10 // tr #elif L==10 // tr
"maximum"; // Çeviri lazim! "maksimum";
#endif #endif
const char *Txt_Maximum_grade = const char *Txt_Maximum_grade =
@ -20906,7 +21021,7 @@ const char *Txt_Maximum_grade =
#elif L==9 // pt #elif L==9 // pt
"Nota m&aacute;xima"; "Nota m&aacute;xima";
#elif L==10 // tr #elif L==10 // tr
"Maximum grade"; // Çeviri lazim! "Maksimum derece";
#endif #endif
const char *Txt_Members = // Project members const char *Txt_Members = // Project members
@ -23448,9 +23563,32 @@ const char *Txt_Messages_sent_from_A_COURSE =
"Messages sent from"; // Çeviri lazim! "Messages sent from"; // Çeviri lazim!
#endif #endif
const char *Txt_Minimum =
#if L==1 // ca
"M&iacute;nim";
#elif L==2 // de
"Mindest";
#elif L==3 // en
"Minimum";
#elif L==4 // es
"M&iacute;nimo";
#elif L==5 // fr
"Minimum";
#elif L==6 // gn
"M&iacute;nimo"; // Okoteve traducción
#elif L==7 // it
"Minimo";
#elif L==8 // pl
"Minimum";
#elif L==9 // pt
"M&iacute;nimo";
#elif L==10 // tr
"Asgari";
#endif
const char *Txt_minimum = const char *Txt_minimum =
#if L==1 // ca #if L==1 // ca
"m&iacute;nimo"; // Necessita traducció "m&iacute;nim";
#elif L==2 // de #elif L==2 // de
"Mindest"; "Mindest";
#elif L==3 // en #elif L==3 // en
@ -23468,7 +23606,7 @@ const char *Txt_minimum =
#elif L==9 // pt #elif L==9 // pt
"m&iacute;nimo"; "m&iacute;nimo";
#elif L==10 // tr #elif L==10 // tr
"minimum"; // Çeviri lazim! "asgari";
#endif #endif
const char *Txt_Minimum_time_seconds_per_question_between_two_tests = const char *Txt_Minimum_time_seconds_per_question_between_two_tests =
@ -35035,6 +35173,29 @@ const char *Txt_Remove_assignment =
"Atamay&inodot; kald&inodot;r"; "Atamay&inodot; kald&inodot;r";
#endif #endif
const char *Txt_Remove_criterion =
#if L==1 // ca
"Eliminar criteri";
#elif L==2 // de
"Kriterium entfernen";
#elif L==3 // en
"Remove criterion";
#elif L==4 // es
"Eliminar criterio";
#elif L==5 // fr
"Supprimer crit&egrave;re";
#elif L==6 // gn
"Eliminar criterio"; // Okoteve traducción
#elif L==7 // it
"Rimuovere criterio";
#elif L==8 // pl
"Usu&nacute; kryterium";
#elif L==9 // pt
"Remover crit&eacute;rio";
#elif L==10 // tr
"Kriter kald&inodot;r";
#endif
const char *Txt_Remove_event = const char *Txt_Remove_event =
#if L==1 // ca #if L==1 // ca
"Eliminar esdeveniment"; "Eliminar esdeveniment";
@ -52704,7 +52865,7 @@ const char *Txt_The_session_has_expired =
#elif L==10 // tr #elif L==10 // tr
"The session has expired."; // Çeviri lazim! "The session has expired."; // Çeviri lazim!
#endif #endif
/*
const char *Txt_The_set_of_questions_has_been_modified = const char *Txt_The_set_of_questions_has_been_modified =
#if L==1 // ca #if L==1 // ca
"El conjunt de preguntes ha estat modificat."; "El conjunt de preguntes ha estat modificat.";
@ -52727,7 +52888,7 @@ const char *Txt_The_set_of_questions_has_been_modified =
#elif L==10 // tr #elif L==10 // tr
"Soru seti de&gbreve;i&scedil;tirildi."; "Soru seti de&gbreve;i&scedil;tirildi.";
#endif #endif
*/
const char *Txt_The_size_of_the_file_exceeds_the_maximum_allowed_X = // Warning: it is very important to include %s in the following sentences const char *Txt_The_size_of_the_file_exceeds_the_maximum_allowed_X = // Warning: it is very important to include %s in the following sentences
#if L==1 // ca #if L==1 // ca
"La mida del fitxer" "La mida del fitxer"

View File

@ -822,7 +822,7 @@ static long TmlCom_ReceiveComm (void)
/**************** Request the removal of a comment in a note *****************/ /**************** Request the removal of a comment in a note *****************/
/*****************************************************************************/ /*****************************************************************************/
void TmlCom_RequestRemComUsr (void) void TmlCom_ReqRemComUsr (void)
{ {
struct Tml_Timeline Timeline; struct Tml_Timeline Timeline;
@ -848,7 +848,7 @@ void TmlCom_RequestRemComUsr (void)
HTM_SECTION_End (); HTM_SECTION_End ();
} }
void TmlCom_RequestRemComGbl (void) void TmlCom_ReqRemComGbl (void)
{ {
struct Tml_Timeline Timeline; struct Tml_Timeline Timeline;

View File

@ -65,8 +65,8 @@ void TmlCom_ShowHiddenCommsGbl (void);
void TmlCom_ReceiveCommUsr (void); void TmlCom_ReceiveCommUsr (void);
void TmlCom_ReceiveCommGbl (void); void TmlCom_ReceiveCommGbl (void);
void TmlCom_RequestRemComUsr (void); void TmlCom_ReqRemComUsr (void);
void TmlCom_RequestRemComGbl (void); void TmlCom_ReqRemComGbl (void);
void TmlCom_RemoveComUsr (void); void TmlCom_RemoveComUsr (void);
void TmlCom_RemoveComGbl (void); void TmlCom_RemoveComGbl (void);

View File

@ -111,7 +111,7 @@ static void TmlNot_WriteFavShaRem (const struct Tml_Timeline *Timeline,
static void TmlNot_PutFormToRemoveNote (const struct Tml_Timeline *Timeline, static void TmlNot_PutFormToRemoveNote (const struct Tml_Timeline *Timeline,
long NotCod); long NotCod);
static void TmlNot_RequestRemovalNote (struct Tml_Timeline *Timeline); static void TmlNot_ReqRemNote (struct Tml_Timeline *Timeline);
static void TmlNot_PutParsRemoveNote (void *Timeline); static void TmlNot_PutParsRemoveNote (void *Timeline);
static void TmlNot_RemoveNote (void); static void TmlNot_RemoveNote (void);
static void TmlNot_RemoveNoteMediaAndDBEntries (struct TmlNot_Note *Not); static void TmlNot_RemoveNoteMediaAndDBEntries (struct TmlNot_Note *Not);
@ -963,7 +963,7 @@ void TmlNot_MarkNotesChildrenOfFolderAsUnavailable (const char *Path)
/*********************** Request the removal of a note ***********************/ /*********************** Request the removal of a note ***********************/
/*****************************************************************************/ /*****************************************************************************/
void TmlNot_RequestRemNoteUsr (void) void TmlNot_ReqRemNoteUsr (void)
{ {
struct Tml_Timeline Timeline; struct Tml_Timeline Timeline;
@ -980,7 +980,7 @@ void TmlNot_RequestRemNoteUsr (void)
HTM_SECTION_Begin (Tml_TIMELINE_SECTION_ID); HTM_SECTION_Begin (Tml_TIMELINE_SECTION_ID);
/***** Request the removal of note *****/ /***** Request the removal of note *****/
TmlNot_RequestRemovalNote (&Timeline); TmlNot_ReqRemNote (&Timeline);
/***** Write timeline again (user) *****/ /***** Write timeline again (user) *****/
Tml_ShowTimelineUsr (&Timeline); Tml_ShowTimelineUsr (&Timeline);
@ -989,7 +989,7 @@ void TmlNot_RequestRemNoteUsr (void)
HTM_SECTION_End (); HTM_SECTION_End ();
} }
void TmlNot_RequestRemNoteGbl (void) void TmlNot_ReqRemNoteGbl (void)
{ {
struct Tml_Timeline Timeline; struct Tml_Timeline Timeline;
@ -997,13 +997,13 @@ void TmlNot_RequestRemNoteGbl (void)
Tml_InitTimelineGbl (&Timeline); Tml_InitTimelineGbl (&Timeline);
/***** Request the removal of note *****/ /***** Request the removal of note *****/
TmlNot_RequestRemovalNote (&Timeline); TmlNot_ReqRemNote (&Timeline);
/***** Write timeline again (global) *****/ /***** Write timeline again (global) *****/
Tml_ShowNoteAndTimelineGbl (&Timeline); Tml_ShowNoteAndTimelineGbl (&Timeline);
} }
static void TmlNot_RequestRemovalNote (struct Tml_Timeline *Timeline) static void TmlNot_ReqRemNote (struct Tml_Timeline *Timeline)
{ {
extern const char *Txt_Do_you_really_want_to_remove_the_following_post; extern const char *Txt_Do_you_really_want_to_remove_the_following_post;
struct TmlNot_Note Not; struct TmlNot_Note Not;

View File

@ -106,8 +106,8 @@ void TmlNot_StoreAndPublishNoteInternal (TmlNot_Type_t NoteType,long Cod,
void TmlNot_MarkNoteOneFileAsUnavailable (const char *Path); void TmlNot_MarkNoteOneFileAsUnavailable (const char *Path);
void TmlNot_MarkNotesChildrenOfFolderAsUnavailable (const char *Path); void TmlNot_MarkNotesChildrenOfFolderAsUnavailable (const char *Path);
void TmlNot_RequestRemNoteUsr (void); void TmlNot_ReqRemNoteUsr (void);
void TmlNot_RequestRemNoteGbl (void); void TmlNot_ReqRemNoteGbl (void);
void TmlNot_RemoveNoteUsr (void); void TmlNot_RemoveNoteUsr (void);
void TmlNot_RemoveNoteGbl (void); void TmlNot_RemoveNoteGbl (void);