swad-core/swad_action.h

1541 lines
61 KiB
C

// swad_action.h: actions
#ifndef _SWAD_ACT
#define _SWAD_ACT
/*
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-2017 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 Public 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_cryptography.h"
#include "swad_tab.h"
#include "swad_text.h"
/*****************************************************************************/
/****************************** Public constants *****************************/
/*****************************************************************************/
#define Act_MAX_LENGTH_ACTION_TXT 255
typedef enum
{
Act_CONT_NORM,
Act_CONT_DATA,
} Act_Content_t;
typedef enum
{
Act_THIS_WINDOW, // The current tab in the browser
Act_BLNK_WINDOW, // A new blank tab in the browser
Act_UPLOAD_FILE, // Upload a file. Do not write HTML content. Write Status code instead for Dropzone.js
Act_DOWNLD_FILE, // Download a file in a new window. Do not write HTML content.
} Act_BrowserWindow_t;
typedef int Act_Action_t; // Must be a signed type, because -1 is used to indicate obsolete action
#define Act_NUM_ACTIONS (1+9+51+14+93+73+70+249+189+159+172+36+31+97)
#define Act_MAX_ACTION_COD 1621
#define Act_MAX_OPTIONS_IN_MENU_PER_TAB 11
#define Act_MAX_LENGTH_ID (32+Cry_LENGTH_ENCRYPTED_STR_SHA256_BASE64+10+1)
/*****************************************************************************/
/************************* Not asociates with tabs ***************************/
/*****************************************************************************/
#define ActAll 0
#define ActUnk 1
#define ActHom 2
#define ActMnu 3
// The following 5 actions use AJAX to refresh only a part of the page
#define ActRefCon 4
#define ActRefLstClk 5
#define ActRefNewSocPubGbl 6
#define ActRefOldSocPubGbl 7
#define ActRefOldSocPubUsr 8
#define ActWebSvc 9
/*****************************************************************************/
/******************************** System tab *********************************/
/*****************************************************************************/
// Actions in menu
#define ActSysReqSch (ActWebSvc+ 1)
#define ActSeeCty (ActWebSvc+ 2)
#define ActSeePen (ActWebSvc+ 3)
#define ActReqRemOldCrs (ActWebSvc+ 4)
#define ActSeeDegTyp (ActWebSvc+ 5)
#define ActSeeMai (ActWebSvc+ 6)
#define ActSeeBan (ActWebSvc+ 7)
#define ActSeeLnk (ActWebSvc+ 8)
#define ActLstPlg (ActWebSvc+ 9)
#define ActSetUp (ActWebSvc+ 10)
// Secondary actions
#define ActSysSch (ActWebSvc+ 11)
#define ActEdiDegTyp (ActWebSvc+ 12)
#define ActEdiCty (ActWebSvc+ 13)
#define ActNewCty (ActWebSvc+ 14)
#define ActRemCty (ActWebSvc+ 15)
#define ActRenCty (ActWebSvc+ 16)
#define ActChgCtyWWW (ActWebSvc+ 17)
#define ActNewDegTyp (ActWebSvc+ 18)
#define ActRemDegTyp (ActWebSvc+ 19)
#define ActRenDegTyp (ActWebSvc+ 20)
#define ActRemOldCrs (ActWebSvc+ 21)
#define ActEdiMai (ActWebSvc+ 22)
#define ActNewMai (ActWebSvc+ 23)
#define ActRemMai (ActWebSvc+ 24)
#define ActRenMaiSho (ActWebSvc+ 25)
#define ActRenMaiFul (ActWebSvc+ 26)
#define ActEdiBan (ActWebSvc+ 27)
#define ActNewBan (ActWebSvc+ 28)
#define ActRemBan (ActWebSvc+ 29)
#define ActShoBan (ActWebSvc+ 30)
#define ActHidBan (ActWebSvc+ 31)
#define ActRenBanSho (ActWebSvc+ 32)
#define ActRenBanFul (ActWebSvc+ 33)
#define ActChgBanImg (ActWebSvc+ 34)
#define ActChgBanWWW (ActWebSvc+ 35)
#define ActClkBan (ActWebSvc+ 36)
#define ActEdiLnk (ActWebSvc+ 37)
#define ActNewLnk (ActWebSvc+ 38)
#define ActRemLnk (ActWebSvc+ 39)
#define ActRenLnkSho (ActWebSvc+ 40)
#define ActRenLnkFul (ActWebSvc+ 41)
#define ActChgLnkWWW (ActWebSvc+ 42)
#define ActEdiPlg (ActWebSvc+ 43)
#define ActNewPlg (ActWebSvc+ 44)
#define ActRemPlg (ActWebSvc+ 45)
#define ActRenPlg (ActWebSvc+ 46)
#define ActChgPlgDes (ActWebSvc+ 47)
#define ActChgPlgLog (ActWebSvc+ 48)
#define ActChgPlgAppKey (ActWebSvc+ 49)
#define ActChgPlgURL (ActWebSvc+ 50)
#define ActChgPlgIP (ActWebSvc+ 51)
/*****************************************************************************/
/******************************** Country tab ********************************/
/*****************************************************************************/
// Actions in menu
#define ActCtyReqSch (ActChgPlgIP+ 1)
#define ActSeeCtyInf (ActChgPlgIP+ 2)
#define ActSeeIns (ActChgPlgIP+ 3)
// Secondary actions
#define ActCtySch (ActChgPlgIP+ 4)
#define ActPrnCtyInf (ActChgPlgIP+ 5)
#define ActChgCtyMapAtt (ActChgPlgIP+ 6)
#define ActEdiIns (ActChgPlgIP+ 7)
#define ActReqIns (ActChgPlgIP+ 8)
#define ActNewIns (ActChgPlgIP+ 9)
#define ActRemIns (ActChgPlgIP+ 10)
#define ActRenInsSho (ActChgPlgIP+ 11)
#define ActRenInsFul (ActChgPlgIP+ 12)
#define ActChgInsWWW (ActChgPlgIP+ 13)
#define ActChgInsSta (ActChgPlgIP+ 14)
/*****************************************************************************/
/****************************** Institution tab ******************************/
/*****************************************************************************/
// Actions in menu
#define ActInsReqSch (ActChgInsSta+ 1)
#define ActSeeInsInf (ActChgInsSta+ 2)
#define ActSeeCtr (ActChgInsSta+ 3)
#define ActSeeDpt (ActChgInsSta+ 4)
#define ActSeePlc (ActChgInsSta+ 5)
#define ActSeeHld (ActChgInsSta+ 6)
#define ActSeeAdmDocIns (ActChgInsSta+ 7)
#define ActAdmShaIns (ActChgInsSta+ 8)
// Secondary actions
#define ActInsSch (ActChgInsSta+ 9)
#define ActPrnInsInf (ActChgInsSta+ 10)
#define ActChgInsCtyCfg (ActChgInsSta+ 11)
#define ActRenInsShoCfg (ActChgInsSta+ 12)
#define ActRenInsFulCfg (ActChgInsSta+ 13)
#define ActChgInsWWWCfg (ActChgInsSta+ 14)
#define ActReqInsLog (ActChgInsSta+ 15)
#define ActRecInsLog (ActChgInsSta+ 16)
#define ActRemInsLog (ActChgInsSta+ 17)
#define ActEdiCtr (ActChgInsSta+ 18)
#define ActReqCtr (ActChgInsSta+ 19)
#define ActNewCtr (ActChgInsSta+ 20)
#define ActRemCtr (ActChgInsSta+ 21)
#define ActChgCtrPlc (ActChgInsSta+ 22)
#define ActRenCtrSho (ActChgInsSta+ 23)
#define ActRenCtrFul (ActChgInsSta+ 24)
#define ActChgCtrWWW (ActChgInsSta+ 25)
#define ActChgCtrSta (ActChgInsSta+ 26)
#define ActEdiDpt (ActChgInsSta+ 27)
#define ActNewDpt (ActChgInsSta+ 28)
#define ActRemDpt (ActChgInsSta+ 29)
#define ActChgDptIns (ActChgInsSta+ 30)
#define ActRenDptSho (ActChgInsSta+ 31)
#define ActRenDptFul (ActChgInsSta+ 32)
#define ActChgDptWWW (ActChgInsSta+ 33)
#define ActEdiPlc (ActChgInsSta+ 34)
#define ActNewPlc (ActChgInsSta+ 35)
#define ActRemPlc (ActChgInsSta+ 36)
#define ActRenPlcSho (ActChgInsSta+ 37)
#define ActRenPlcFul (ActChgInsSta+ 38)
#define ActEdiHld (ActChgInsSta+ 39)
#define ActNewHld (ActChgInsSta+ 40)
#define ActRemHld (ActChgInsSta+ 41)
#define ActChgHldPlc (ActChgInsSta+ 42)
#define ActChgHldTyp (ActChgInsSta+ 43)
#define ActChgHldStrDat (ActChgInsSta+ 44)
#define ActChgHldEndDat (ActChgInsSta+ 45)
#define ActRenHld (ActChgInsSta+ 46)
#define ActChgToSeeDocIns (ActChgInsSta+ 47)
#define ActSeeDocIns (ActChgInsSta+ 48)
#define ActExpSeeDocIns (ActChgInsSta+ 49)
#define ActConSeeDocIns (ActChgInsSta+ 50)
#define ActZIPSeeDocIns (ActChgInsSta+ 51)
#define ActReqDatSeeDocIns (ActChgInsSta+ 52)
#define ActDowSeeDocIns (ActChgInsSta+ 53)
#define ActChgToAdmDocIns (ActChgInsSta+ 54)
#define ActAdmDocIns (ActChgInsSta+ 55)
#define ActReqRemFilDocIns (ActChgInsSta+ 56)
#define ActRemFilDocIns (ActChgInsSta+ 57)
#define ActRemFolDocIns (ActChgInsSta+ 58)
#define ActCopDocIns (ActChgInsSta+ 59)
#define ActPasDocIns (ActChgInsSta+ 60)
#define ActRemTreDocIns (ActChgInsSta+ 61)
#define ActFrmCreDocIns (ActChgInsSta+ 62)
#define ActCreFolDocIns (ActChgInsSta+ 63)
#define ActCreLnkDocIns (ActChgInsSta+ 64)
#define ActRenFolDocIns (ActChgInsSta+ 65)
#define ActRcvFilDocInsDZ (ActChgInsSta+ 66)
#define ActRcvFilDocInsCla (ActChgInsSta+ 67)
#define ActExpAdmDocIns (ActChgInsSta+ 68)
#define ActConAdmDocIns (ActChgInsSta+ 69)
#define ActZIPAdmDocIns (ActChgInsSta+ 70)
#define ActShoDocIns (ActChgInsSta+ 71)
#define ActHidDocIns (ActChgInsSta+ 72)
#define ActReqDatAdmDocIns (ActChgInsSta+ 73)
#define ActChgDatAdmDocIns (ActChgInsSta+ 74)
#define ActDowAdmDocIns (ActChgInsSta+ 75)
#define ActReqRemFilShaIns (ActChgInsSta+ 76)
#define ActRemFilShaIns (ActChgInsSta+ 77)
#define ActRemFolShaIns (ActChgInsSta+ 78)
#define ActCopShaIns (ActChgInsSta+ 79)
#define ActPasShaIns (ActChgInsSta+ 80)
#define ActRemTreShaIns (ActChgInsSta+ 81)
#define ActFrmCreShaIns (ActChgInsSta+ 82)
#define ActCreFolShaIns (ActChgInsSta+ 83)
#define ActCreLnkShaIns (ActChgInsSta+ 84)
#define ActRenFolShaIns (ActChgInsSta+ 85)
#define ActRcvFilShaInsDZ (ActChgInsSta+ 86)
#define ActRcvFilShaInsCla (ActChgInsSta+ 87)
#define ActExpShaIns (ActChgInsSta+ 88)
#define ActConShaIns (ActChgInsSta+ 89)
#define ActZIPShaIns (ActChgInsSta+ 90)
#define ActReqDatShaIns (ActChgInsSta+ 91)
#define ActChgDatShaIns (ActChgInsSta+ 92)
#define ActDowShaIns (ActChgInsSta+ 93)
/*****************************************************************************/
/********************************* Centre tab ********************************/
/*****************************************************************************/
// Actions in menu
#define ActCtrReqSch (ActDowShaIns+ 1)
#define ActSeeCtrInf (ActDowShaIns+ 2)
#define ActSeeDeg (ActDowShaIns+ 3)
#define ActSeeAdmDocCtr (ActDowShaIns+ 4)
#define ActAdmShaCtr (ActDowShaIns+ 5)
// Secondary actions
#define ActCtrSch (ActDowShaIns+ 6)
#define ActPrnCtrInf (ActDowShaIns+ 7)
#define ActChgCtrInsCfg (ActDowShaIns+ 8)
#define ActRenCtrShoCfg (ActDowShaIns+ 9)
#define ActRenCtrFulCfg (ActDowShaIns+ 10)
#define ActChgCtrWWWCfg (ActDowShaIns+ 11)
#define ActReqCtrLog (ActDowShaIns+ 12)
#define ActRecCtrLog (ActDowShaIns+ 13)
#define ActRemCtrLog (ActDowShaIns+ 14)
#define ActReqCtrPho (ActDowShaIns+ 15)
#define ActRecCtrPho (ActDowShaIns+ 16)
#define ActChgCtrPhoAtt (ActDowShaIns+ 17)
#define ActEdiDeg (ActDowShaIns+ 18)
#define ActReqDeg (ActDowShaIns+ 19)
#define ActNewDeg (ActDowShaIns+ 20)
#define ActRemDeg (ActDowShaIns+ 21)
#define ActRenDegSho (ActDowShaIns+ 22)
#define ActRenDegFul (ActDowShaIns+ 23)
#define ActChgDegTyp (ActDowShaIns+ 24)
#define ActChgDegWWW (ActDowShaIns+ 25)
#define ActChgDegSta (ActDowShaIns+ 26)
#define ActChgToSeeDocCtr (ActDowShaIns+ 27)
#define ActSeeDocCtr (ActDowShaIns+ 28)
#define ActExpSeeDocCtr (ActDowShaIns+ 29)
#define ActConSeeDocCtr (ActDowShaIns+ 30)
#define ActZIPSeeDocCtr (ActDowShaIns+ 31)
#define ActReqDatSeeDocCtr (ActDowShaIns+ 32)
#define ActDowSeeDocCtr (ActDowShaIns+ 33)
#define ActChgToAdmDocCtr (ActDowShaIns+ 34)
#define ActAdmDocCtr (ActDowShaIns+ 35)
#define ActReqRemFilDocCtr (ActDowShaIns+ 36)
#define ActRemFilDocCtr (ActDowShaIns+ 37)
#define ActRemFolDocCtr (ActDowShaIns+ 38)
#define ActCopDocCtr (ActDowShaIns+ 39)
#define ActPasDocCtr (ActDowShaIns+ 40)
#define ActRemTreDocCtr (ActDowShaIns+ 41)
#define ActFrmCreDocCtr (ActDowShaIns+ 42)
#define ActCreFolDocCtr (ActDowShaIns+ 43)
#define ActCreLnkDocCtr (ActDowShaIns+ 44)
#define ActRenFolDocCtr (ActDowShaIns+ 45)
#define ActRcvFilDocCtrDZ (ActDowShaIns+ 46)
#define ActRcvFilDocCtrCla (ActDowShaIns+ 47)
#define ActExpAdmDocCtr (ActDowShaIns+ 48)
#define ActConAdmDocCtr (ActDowShaIns+ 49)
#define ActZIPAdmDocCtr (ActDowShaIns+ 50)
#define ActShoDocCtr (ActDowShaIns+ 51)
#define ActHidDocCtr (ActDowShaIns+ 52)
#define ActReqDatAdmDocCtr (ActDowShaIns+ 53)
#define ActChgDatAdmDocCtr (ActDowShaIns+ 54)
#define ActDowAdmDocCtr (ActDowShaIns+ 55)
#define ActReqRemFilShaCtr (ActDowShaIns+ 56)
#define ActRemFilShaCtr (ActDowShaIns+ 57)
#define ActRemFolShaCtr (ActDowShaIns+ 58)
#define ActCopShaCtr (ActDowShaIns+ 59)
#define ActPasShaCtr (ActDowShaIns+ 60)
#define ActRemTreShaCtr (ActDowShaIns+ 61)
#define ActFrmCreShaCtr (ActDowShaIns+ 62)
#define ActCreFolShaCtr (ActDowShaIns+ 63)
#define ActCreLnkShaCtr (ActDowShaIns+ 64)
#define ActRenFolShaCtr (ActDowShaIns+ 65)
#define ActRcvFilShaCtrDZ (ActDowShaIns+ 66)
#define ActRcvFilShaCtrCla (ActDowShaIns+ 67)
#define ActExpShaCtr (ActDowShaIns+ 68)
#define ActConShaCtr (ActDowShaIns+ 69)
#define ActZIPShaCtr (ActDowShaIns+ 70)
#define ActReqDatShaCtr (ActDowShaIns+ 71)
#define ActChgDatShaCtr (ActDowShaIns+ 72)
#define ActDowShaCtr (ActDowShaIns+ 73)
/*****************************************************************************/
/********************************* Degree tab ********************************/
/*****************************************************************************/
// Actions in menu
#define ActDegReqSch (ActDowShaCtr+ 1)
#define ActSeeDegInf (ActDowShaCtr+ 2)
#define ActSeeCrs (ActDowShaCtr+ 3)
#define ActSeeAdmDocDeg (ActDowShaCtr+ 4)
#define ActAdmShaDeg (ActDowShaCtr+ 5)
// Secondary actions
#define ActDegSch (ActDowShaCtr+ 6)
#define ActPrnDegInf (ActDowShaCtr+ 7)
#define ActChgDegCtrCfg (ActDowShaCtr+ 8)
#define ActRenDegShoCfg (ActDowShaCtr+ 9)
#define ActRenDegFulCfg (ActDowShaCtr+ 10)
#define ActChgDegWWWCfg (ActDowShaCtr+ 11)
#define ActReqDegLog (ActDowShaCtr+ 12)
#define ActRecDegLog (ActDowShaCtr+ 13)
#define ActRemDegLog (ActDowShaCtr+ 14)
#define ActEdiCrs (ActDowShaCtr+ 15)
#define ActReqCrs (ActDowShaCtr+ 16)
#define ActNewCrs (ActDowShaCtr+ 17)
#define ActRemCrs (ActDowShaCtr+ 18)
#define ActChgInsCrsCod (ActDowShaCtr+ 19)
#define ActChgCrsYea (ActDowShaCtr+ 20)
#define ActRenCrsSho (ActDowShaCtr+ 21)
#define ActRenCrsFul (ActDowShaCtr+ 22)
#define ActChgCrsSta (ActDowShaCtr+ 23)
#define ActChgToSeeDocDeg (ActDowShaCtr+ 24)
#define ActSeeDocDeg (ActDowShaCtr+ 25)
#define ActExpSeeDocDeg (ActDowShaCtr+ 26)
#define ActConSeeDocDeg (ActDowShaCtr+ 27)
#define ActZIPSeeDocDeg (ActDowShaCtr+ 28)
#define ActReqDatSeeDocDeg (ActDowShaCtr+ 29)
#define ActDowSeeDocDeg (ActDowShaCtr+ 30)
#define ActChgToAdmDocDeg (ActDowShaCtr+ 31)
#define ActAdmDocDeg (ActDowShaCtr+ 32)
#define ActReqRemFilDocDeg (ActDowShaCtr+ 33)
#define ActRemFilDocDeg (ActDowShaCtr+ 34)
#define ActRemFolDocDeg (ActDowShaCtr+ 35)
#define ActCopDocDeg (ActDowShaCtr+ 36)
#define ActPasDocDeg (ActDowShaCtr+ 37)
#define ActRemTreDocDeg (ActDowShaCtr+ 38)
#define ActFrmCreDocDeg (ActDowShaCtr+ 39)
#define ActCreFolDocDeg (ActDowShaCtr+ 40)
#define ActCreLnkDocDeg (ActDowShaCtr+ 41)
#define ActRenFolDocDeg (ActDowShaCtr+ 42)
#define ActRcvFilDocDegDZ (ActDowShaCtr+ 43)
#define ActRcvFilDocDegCla (ActDowShaCtr+ 44)
#define ActExpAdmDocDeg (ActDowShaCtr+ 45)
#define ActConAdmDocDeg (ActDowShaCtr+ 46)
#define ActZIPAdmDocDeg (ActDowShaCtr+ 47)
#define ActShoDocDeg (ActDowShaCtr+ 48)
#define ActHidDocDeg (ActDowShaCtr+ 49)
#define ActReqDatAdmDocDeg (ActDowShaCtr+ 50)
#define ActChgDatAdmDocDeg (ActDowShaCtr+ 51)
#define ActDowAdmDocDeg (ActDowShaCtr+ 52)
#define ActReqRemFilShaDeg (ActDowShaCtr+ 53)
#define ActRemFilShaDeg (ActDowShaCtr+ 54)
#define ActRemFolShaDeg (ActDowShaCtr+ 55)
#define ActCopShaDeg (ActDowShaCtr+ 56)
#define ActPasShaDeg (ActDowShaCtr+ 57)
#define ActRemTreShaDeg (ActDowShaCtr+ 58)
#define ActFrmCreShaDeg (ActDowShaCtr+ 59)
#define ActCreFolShaDeg (ActDowShaCtr+ 60)
#define ActCreLnkShaDeg (ActDowShaCtr+ 61)
#define ActRenFolShaDeg (ActDowShaCtr+ 62)
#define ActRcvFilShaDegDZ (ActDowShaCtr+ 63)
#define ActRcvFilShaDegCla (ActDowShaCtr+ 64)
#define ActExpShaDeg (ActDowShaCtr+ 65)
#define ActConShaDeg (ActDowShaCtr+ 66)
#define ActZIPShaDeg (ActDowShaCtr+ 67)
#define ActReqDatShaDeg (ActDowShaCtr+ 68)
#define ActChgDatShaDeg (ActDowShaCtr+ 69)
#define ActDowShaDeg (ActDowShaCtr+ 70)
/*****************************************************************************/
/******************************** Course tab *********************************/
/*****************************************************************************/
// Actions in menu
#define ActCrsReqSch (ActDowShaDeg+ 1)
#define ActSeeCrsInf (ActDowShaDeg+ 2)
#define ActSeeTchGui (ActDowShaDeg+ 3)
#define ActSeeSyl (ActDowShaDeg+ 4)
#define ActSeeAdmDocCrsGrp (ActDowShaDeg+ 5)
#define ActAdmTchCrsGrp (ActDowShaDeg+ 6)
#define ActAdmShaCrsGrp (ActDowShaDeg+ 7)
#define ActSeeCrsTT (ActDowShaDeg+ 8)
#define ActSeeBib (ActDowShaDeg+ 9)
#define ActSeeFAQ (ActDowShaDeg+ 10)
#define ActSeeCrsLnk (ActDowShaDeg+ 11)
// Secondary actions
#define ActCrsSch (ActDowShaDeg+ 12)
#define ActPrnCrsInf (ActDowShaDeg+ 13)
#define ActChgCrsDegCfg (ActDowShaDeg+ 14)
#define ActRenCrsShoCfg (ActDowShaDeg+ 15)
#define ActRenCrsFulCfg (ActDowShaDeg+ 16)
#define ActChgInsCrsCodCfg (ActDowShaDeg+ 17)
#define ActChgCrsYeaCfg (ActDowShaDeg+ 18)
#define ActEdiCrsInf (ActDowShaDeg+ 19)
#define ActEdiTchGui (ActDowShaDeg+ 20)
#define ActPrnCrsTT (ActDowShaDeg+ 21)
#define ActEdiCrsTT (ActDowShaDeg+ 22)
#define ActChgCrsTT (ActDowShaDeg+ 23)
#define ActChgCrsTT1stDay (ActDowShaDeg+ 24)
#define ActSeeSylLec (ActDowShaDeg+ 25)
#define ActSeeSylPra (ActDowShaDeg+ 26)
#define ActEdiSylLec (ActDowShaDeg+ 27)
#define ActEdiSylPra (ActDowShaDeg+ 28)
#define ActDelItmSylLec (ActDowShaDeg+ 29)
#define ActDelItmSylPra (ActDowShaDeg+ 30)
#define ActUp_IteSylLec (ActDowShaDeg+ 31)
#define ActUp_IteSylPra (ActDowShaDeg+ 32)
#define ActDwnIteSylLec (ActDowShaDeg+ 33)
#define ActDwnIteSylPra (ActDowShaDeg+ 34)
#define ActRgtIteSylLec (ActDowShaDeg+ 35)
#define ActRgtIteSylPra (ActDowShaDeg+ 36)
#define ActLftIteSylLec (ActDowShaDeg+ 37)
#define ActLftIteSylPra (ActDowShaDeg+ 38)
#define ActInsIteSylLec (ActDowShaDeg+ 39)
#define ActInsIteSylPra (ActDowShaDeg+ 40)
#define ActModIteSylLec (ActDowShaDeg+ 41)
#define ActModIteSylPra (ActDowShaDeg+ 42)
#define ActChgToSeeDocCrs (ActDowShaDeg+ 43)
#define ActSeeDocCrs (ActDowShaDeg+ 44)
#define ActExpSeeDocCrs (ActDowShaDeg+ 45)
#define ActConSeeDocCrs (ActDowShaDeg+ 46)
#define ActZIPSeeDocCrs (ActDowShaDeg+ 47)
#define ActReqDatSeeDocCrs (ActDowShaDeg+ 48)
#define ActDowSeeDocCrs (ActDowShaDeg+ 49)
#define ActSeeDocGrp (ActDowShaDeg+ 50)
#define ActExpSeeDocGrp (ActDowShaDeg+ 51)
#define ActConSeeDocGrp (ActDowShaDeg+ 52)
#define ActZIPSeeDocGrp (ActDowShaDeg+ 53)
#define ActReqDatSeeDocGrp (ActDowShaDeg+ 54)
#define ActDowSeeDocGrp (ActDowShaDeg+ 55)
#define ActChgToAdmDocCrs (ActDowShaDeg+ 56)
#define ActAdmDocCrs (ActDowShaDeg+ 57)
#define ActReqRemFilDocCrs (ActDowShaDeg+ 58)
#define ActRemFilDocCrs (ActDowShaDeg+ 59)
#define ActRemFolDocCrs (ActDowShaDeg+ 60)
#define ActCopDocCrs (ActDowShaDeg+ 61)
#define ActPasDocCrs (ActDowShaDeg+ 62)
#define ActRemTreDocCrs (ActDowShaDeg+ 63)
#define ActFrmCreDocCrs (ActDowShaDeg+ 64)
#define ActCreFolDocCrs (ActDowShaDeg+ 65)
#define ActCreLnkDocCrs (ActDowShaDeg+ 66)
#define ActRenFolDocCrs (ActDowShaDeg+ 67)
#define ActRcvFilDocCrsDZ (ActDowShaDeg+ 68)
#define ActRcvFilDocCrsCla (ActDowShaDeg+ 69)
#define ActExpAdmDocCrs (ActDowShaDeg+ 70)
#define ActConAdmDocCrs (ActDowShaDeg+ 71)
#define ActZIPAdmDocCrs (ActDowShaDeg+ 72)
#define ActShoDocCrs (ActDowShaDeg+ 73)
#define ActHidDocCrs (ActDowShaDeg+ 74)
#define ActReqDatAdmDocCrs (ActDowShaDeg+ 75)
#define ActChgDatAdmDocCrs (ActDowShaDeg+ 76)
#define ActDowAdmDocCrs (ActDowShaDeg+ 77)
#define ActAdmDocGrp (ActDowShaDeg+ 78)
#define ActReqRemFilDocGrp (ActDowShaDeg+ 79)
#define ActRemFilDocGrp (ActDowShaDeg+ 80)
#define ActRemFolDocGrp (ActDowShaDeg+ 81)
#define ActCopDocGrp (ActDowShaDeg+ 82)
#define ActPasDocGrp (ActDowShaDeg+ 83)
#define ActRemTreDocGrp (ActDowShaDeg+ 84)
#define ActFrmCreDocGrp (ActDowShaDeg+ 85)
#define ActCreFolDocGrp (ActDowShaDeg+ 86)
#define ActCreLnkDocGrp (ActDowShaDeg+ 87)
#define ActRenFolDocGrp (ActDowShaDeg+ 88)
#define ActRcvFilDocGrpDZ (ActDowShaDeg+ 89)
#define ActRcvFilDocGrpCla (ActDowShaDeg+ 90)
#define ActExpAdmDocGrp (ActDowShaDeg+ 91)
#define ActConAdmDocGrp (ActDowShaDeg+ 92)
#define ActZIPAdmDocGrp (ActDowShaDeg+ 93)
#define ActShoDocGrp (ActDowShaDeg+ 94)
#define ActHidDocGrp (ActDowShaDeg+ 95)
#define ActReqDatAdmDocGrp (ActDowShaDeg+ 96)
#define ActChgDatAdmDocGrp (ActDowShaDeg+ 97)
#define ActDowAdmDocGrp (ActDowShaDeg+ 98)
#define ActChgToAdmTch (ActDowShaDeg+ 99)
#define ActAdmTchCrs (ActDowShaDeg+100)
#define ActReqRemFilTchCrs (ActDowShaDeg+101)
#define ActRemFilTchCrs (ActDowShaDeg+102)
#define ActRemFolTchCrs (ActDowShaDeg+103)
#define ActCopTchCrs (ActDowShaDeg+104)
#define ActPasTchCrs (ActDowShaDeg+105)
#define ActRemTreTchCrs (ActDowShaDeg+106)
#define ActFrmCreTchCrs (ActDowShaDeg+107)
#define ActCreFolTchCrs (ActDowShaDeg+108)
#define ActCreLnkTchCrs (ActDowShaDeg+109)
#define ActRenFolTchCrs (ActDowShaDeg+110)
#define ActRcvFilTchCrsDZ (ActDowShaDeg+111)
#define ActRcvFilTchCrsCla (ActDowShaDeg+112)
#define ActExpTchCrs (ActDowShaDeg+113)
#define ActConTchCrs (ActDowShaDeg+114)
#define ActZIPTchCrs (ActDowShaDeg+115)
#define ActReqDatTchCrs (ActDowShaDeg+116)
#define ActChgDatTchCrs (ActDowShaDeg+117)
#define ActDowTchCrs (ActDowShaDeg+118)
#define ActAdmTchGrp (ActDowShaDeg+119)
#define ActReqRemFilTchGrp (ActDowShaDeg+120)
#define ActRemFilTchGrp (ActDowShaDeg+121)
#define ActRemFolTchGrp (ActDowShaDeg+122)
#define ActCopTchGrp (ActDowShaDeg+123)
#define ActPasTchGrp (ActDowShaDeg+124)
#define ActRemTreTchGrp (ActDowShaDeg+125)
#define ActFrmCreTchGrp (ActDowShaDeg+126)
#define ActCreFolTchGrp (ActDowShaDeg+127)
#define ActCreLnkTchGrp (ActDowShaDeg+128)
#define ActRenFolTchGrp (ActDowShaDeg+129)
#define ActRcvFilTchGrpDZ (ActDowShaDeg+130)
#define ActRcvFilTchGrpCla (ActDowShaDeg+131)
#define ActExpTchGrp (ActDowShaDeg+132)
#define ActConTchGrp (ActDowShaDeg+133)
#define ActZIPTchGrp (ActDowShaDeg+134)
#define ActReqDatTchGrp (ActDowShaDeg+135)
#define ActChgDatTchGrp (ActDowShaDeg+136)
#define ActDowTchGrp (ActDowShaDeg+137)
#define ActChgToAdmSha (ActDowShaDeg+138)
#define ActAdmShaCrs (ActDowShaDeg+139)
#define ActReqRemFilShaCrs (ActDowShaDeg+140)
#define ActRemFilShaCrs (ActDowShaDeg+141)
#define ActRemFolShaCrs (ActDowShaDeg+142)
#define ActCopShaCrs (ActDowShaDeg+143)
#define ActPasShaCrs (ActDowShaDeg+144)
#define ActRemTreShaCrs (ActDowShaDeg+145)
#define ActFrmCreShaCrs (ActDowShaDeg+146)
#define ActCreFolShaCrs (ActDowShaDeg+147)
#define ActCreLnkShaCrs (ActDowShaDeg+148)
#define ActRenFolShaCrs (ActDowShaDeg+149)
#define ActRcvFilShaCrsDZ (ActDowShaDeg+150)
#define ActRcvFilShaCrsCla (ActDowShaDeg+151)
#define ActExpShaCrs (ActDowShaDeg+152)
#define ActConShaCrs (ActDowShaDeg+153)
#define ActZIPShaCrs (ActDowShaDeg+154)
#define ActReqDatShaCrs (ActDowShaDeg+155)
#define ActChgDatShaCrs (ActDowShaDeg+156)
#define ActDowShaCrs (ActDowShaDeg+157)
#define ActAdmShaGrp (ActDowShaDeg+158)
#define ActReqRemFilShaGrp (ActDowShaDeg+159)
#define ActRemFilShaGrp (ActDowShaDeg+160)
#define ActRemFolShaGrp (ActDowShaDeg+161)
#define ActCopShaGrp (ActDowShaDeg+162)
#define ActPasShaGrp (ActDowShaDeg+163)
#define ActRemTreShaGrp (ActDowShaDeg+164)
#define ActFrmCreShaGrp (ActDowShaDeg+165)
#define ActCreFolShaGrp (ActDowShaDeg+166)
#define ActCreLnkShaGrp (ActDowShaDeg+167)
#define ActRenFolShaGrp (ActDowShaDeg+168)
#define ActRcvFilShaGrpDZ (ActDowShaDeg+169)
#define ActRcvFilShaGrpCla (ActDowShaDeg+170)
#define ActExpShaGrp (ActDowShaDeg+171)
#define ActConShaGrp (ActDowShaDeg+172)
#define ActZIPShaGrp (ActDowShaDeg+173)
#define ActReqDatShaGrp (ActDowShaDeg+174)
#define ActChgDatShaGrp (ActDowShaDeg+175)
#define ActDowShaGrp (ActDowShaDeg+176)
#define ActEdiBib (ActDowShaDeg+177)
#define ActEdiFAQ (ActDowShaDeg+178)
#define ActEdiCrsLnk (ActDowShaDeg+179)
#define ActChgFrcReaCrsInf (ActDowShaDeg+180)
#define ActChgFrcReaTchGui (ActDowShaDeg+181)
#define ActChgFrcReaSylLec (ActDowShaDeg+182)
#define ActChgFrcReaSylPra (ActDowShaDeg+183)
#define ActChgFrcReaBib (ActDowShaDeg+184)
#define ActChgFrcReaFAQ (ActDowShaDeg+185)
#define ActChgFrcReaCrsLnk (ActDowShaDeg+186)
#define ActChgHavReaCrsInf (ActDowShaDeg+187)
#define ActChgHavReaTchGui (ActDowShaDeg+188)
#define ActChgHavReaSylLec (ActDowShaDeg+189)
#define ActChgHavReaSylPra (ActDowShaDeg+190)
#define ActChgHavReaBib (ActDowShaDeg+191)
#define ActChgHavReaFAQ (ActDowShaDeg+192)
#define ActChgHavReaCrsLnk (ActDowShaDeg+193)
#define ActSelInfSrcCrsInf (ActDowShaDeg+194)
#define ActSelInfSrcTchGui (ActDowShaDeg+195)
#define ActSelInfSrcSylLec (ActDowShaDeg+196)
#define ActSelInfSrcSylPra (ActDowShaDeg+197)
#define ActSelInfSrcBib (ActDowShaDeg+198)
#define ActSelInfSrcFAQ (ActDowShaDeg+199)
#define ActSelInfSrcCrsLnk (ActDowShaDeg+200)
#define ActRcvURLCrsInf (ActDowShaDeg+201)
#define ActRcvURLTchGui (ActDowShaDeg+202)
#define ActRcvURLSylLec (ActDowShaDeg+203)
#define ActRcvURLSylPra (ActDowShaDeg+204)
#define ActRcvURLBib (ActDowShaDeg+205)
#define ActRcvURLFAQ (ActDowShaDeg+206)
#define ActRcvURLCrsLnk (ActDowShaDeg+207)
#define ActRcvPagCrsInf (ActDowShaDeg+208)
#define ActRcvPagTchGui (ActDowShaDeg+209)
#define ActRcvPagSylLec (ActDowShaDeg+210)
#define ActRcvPagSylPra (ActDowShaDeg+211)
#define ActRcvPagBib (ActDowShaDeg+212)
#define ActRcvPagFAQ (ActDowShaDeg+213)
#define ActRcvPagCrsLnk (ActDowShaDeg+214)
#define ActEditorCrsInf (ActDowShaDeg+215)
#define ActEditorTchGui (ActDowShaDeg+216)
#define ActEditorSylLec (ActDowShaDeg+217)
#define ActEditorSylPra (ActDowShaDeg+218)
#define ActEditorBib (ActDowShaDeg+219)
#define ActEditorFAQ (ActDowShaDeg+220)
#define ActEditorCrsLnk (ActDowShaDeg+221)
#define ActPlaTxtEdiCrsInf (ActDowShaDeg+222)
#define ActPlaTxtEdiTchGui (ActDowShaDeg+223)
#define ActPlaTxtEdiSylLec (ActDowShaDeg+224)
#define ActPlaTxtEdiSylPra (ActDowShaDeg+225)
#define ActPlaTxtEdiBib (ActDowShaDeg+226)
#define ActPlaTxtEdiFAQ (ActDowShaDeg+227)
#define ActPlaTxtEdiCrsLnk (ActDowShaDeg+228)
#define ActRchTxtEdiCrsInf (ActDowShaDeg+229)
#define ActRchTxtEdiTchGui (ActDowShaDeg+230)
#define ActRchTxtEdiSylLec (ActDowShaDeg+231)
#define ActRchTxtEdiSylPra (ActDowShaDeg+232)
#define ActRchTxtEdiBib (ActDowShaDeg+233)
#define ActRchTxtEdiFAQ (ActDowShaDeg+234)
#define ActRchTxtEdiCrsLnk (ActDowShaDeg+235)
#define ActRcvPlaTxtCrsInf (ActDowShaDeg+236)
#define ActRcvPlaTxtTchGui (ActDowShaDeg+237)
#define ActRcvPlaTxtSylLec (ActDowShaDeg+238)
#define ActRcvPlaTxtSylPra (ActDowShaDeg+239)
#define ActRcvPlaTxtBib (ActDowShaDeg+240)
#define ActRcvPlaTxtFAQ (ActDowShaDeg+241)
#define ActRcvPlaTxtCrsLnk (ActDowShaDeg+242)
#define ActRcvRchTxtCrsInf (ActDowShaDeg+243)
#define ActRcvRchTxtTchGui (ActDowShaDeg+244)
#define ActRcvRchTxtSylLec (ActDowShaDeg+245)
#define ActRcvRchTxtSylPra (ActDowShaDeg+246)
#define ActRcvRchTxtBib (ActDowShaDeg+247)
#define ActRcvRchTxtFAQ (ActDowShaDeg+248)
#define ActRcvRchTxtCrsLnk (ActDowShaDeg+249)
/*****************************************************************************/
/***************************** Assessment tab ********************************/
/*****************************************************************************/
// Actions in menu
#define ActSeeAss (ActRcvRchTxtCrsLnk+ 1)
#define ActSeeAsg (ActRcvRchTxtCrsLnk+ 2)
#define ActAdmAsgWrkUsr (ActRcvRchTxtCrsLnk+ 3)
#define ActReqAsgWrkCrs (ActRcvRchTxtCrsLnk+ 4)
#define ActReqTst (ActRcvRchTxtCrsLnk+ 5)
#define ActSeeCal (ActRcvRchTxtCrsLnk+ 6)
#define ActSeeAllExaAnn (ActRcvRchTxtCrsLnk+ 7)
#define ActSeeAdmMrk (ActRcvRchTxtCrsLnk+ 8)
// Secondary actions
#define ActEdiAss (ActRcvRchTxtCrsLnk+ 9)
#define ActChgFrcReaAss (ActRcvRchTxtCrsLnk+ 10)
#define ActChgHavReaAss (ActRcvRchTxtCrsLnk+ 11)
#define ActSelInfSrcAss (ActRcvRchTxtCrsLnk+ 12)
#define ActRcvURLAss (ActRcvRchTxtCrsLnk+ 13)
#define ActRcvPagAss (ActRcvRchTxtCrsLnk+ 14)
#define ActEditorAss (ActRcvRchTxtCrsLnk+ 15)
#define ActPlaTxtEdiAss (ActRcvRchTxtCrsLnk+ 16)
#define ActRchTxtEdiAss (ActRcvRchTxtCrsLnk+ 17)
#define ActRcvPlaTxtAss (ActRcvRchTxtCrsLnk+ 18)
#define ActRcvRchTxtAss (ActRcvRchTxtCrsLnk+ 19)
#define ActFrmNewAsg (ActRcvRchTxtCrsLnk+ 20)
#define ActEdiOneAsg (ActRcvRchTxtCrsLnk+ 21)
#define ActNewAsg (ActRcvRchTxtCrsLnk+ 22)
#define ActChgAsg (ActRcvRchTxtCrsLnk+ 23)
#define ActReqRemAsg (ActRcvRchTxtCrsLnk+ 24)
#define ActRemAsg (ActRcvRchTxtCrsLnk+ 25)
#define ActHidAsg (ActRcvRchTxtCrsLnk+ 26)
#define ActShoAsg (ActRcvRchTxtCrsLnk+ 27)
#define ActAdmAsgWrkCrs (ActRcvRchTxtCrsLnk+ 28)
#define ActReqRemFilAsgUsr (ActRcvRchTxtCrsLnk+ 29)
#define ActRemFilAsgUsr (ActRcvRchTxtCrsLnk+ 30)
#define ActRemFolAsgUsr (ActRcvRchTxtCrsLnk+ 31)
#define ActCopAsgUsr (ActRcvRchTxtCrsLnk+ 32)
#define ActPasAsgUsr (ActRcvRchTxtCrsLnk+ 33)
#define ActRemTreAsgUsr (ActRcvRchTxtCrsLnk+ 34)
#define ActFrmCreAsgUsr (ActRcvRchTxtCrsLnk+ 35)
#define ActCreFolAsgUsr (ActRcvRchTxtCrsLnk+ 36)
#define ActCreLnkAsgUsr (ActRcvRchTxtCrsLnk+ 37)
#define ActRenFolAsgUsr (ActRcvRchTxtCrsLnk+ 38)
#define ActRcvFilAsgUsrDZ (ActRcvRchTxtCrsLnk+ 39)
#define ActRcvFilAsgUsrCla (ActRcvRchTxtCrsLnk+ 40)
#define ActExpAsgUsr (ActRcvRchTxtCrsLnk+ 41)
#define ActConAsgUsr (ActRcvRchTxtCrsLnk+ 42)
#define ActZIPAsgUsr (ActRcvRchTxtCrsLnk+ 43)
#define ActReqDatAsgUsr (ActRcvRchTxtCrsLnk+ 44)
#define ActChgDatAsgUsr (ActRcvRchTxtCrsLnk+ 45)
#define ActDowAsgUsr (ActRcvRchTxtCrsLnk+ 46)
#define ActReqRemFilWrkUsr (ActRcvRchTxtCrsLnk+ 47)
#define ActRemFilWrkUsr (ActRcvRchTxtCrsLnk+ 48)
#define ActRemFolWrkUsr (ActRcvRchTxtCrsLnk+ 49)
#define ActCopWrkUsr (ActRcvRchTxtCrsLnk+ 50)
#define ActPasWrkUsr (ActRcvRchTxtCrsLnk+ 51)
#define ActRemTreWrkUsr (ActRcvRchTxtCrsLnk+ 52)
#define ActFrmCreWrkUsr (ActRcvRchTxtCrsLnk+ 53)
#define ActCreFolWrkUsr (ActRcvRchTxtCrsLnk+ 54)
#define ActCreLnkWrkUsr (ActRcvRchTxtCrsLnk+ 55)
#define ActRenFolWrkUsr (ActRcvRchTxtCrsLnk+ 56)
#define ActRcvFilWrkUsrDZ (ActRcvRchTxtCrsLnk+ 57)
#define ActRcvFilWrkUsrCla (ActRcvRchTxtCrsLnk+ 58)
#define ActExpWrkUsr (ActRcvRchTxtCrsLnk+ 59)
#define ActConWrkUsr (ActRcvRchTxtCrsLnk+ 60)
#define ActZIPWrkUsr (ActRcvRchTxtCrsLnk+ 61)
#define ActReqDatWrkUsr (ActRcvRchTxtCrsLnk+ 62)
#define ActChgDatWrkUsr (ActRcvRchTxtCrsLnk+ 63)
#define ActDowWrkUsr (ActRcvRchTxtCrsLnk+ 64)
#define ActReqRemFilAsgCrs (ActRcvRchTxtCrsLnk+ 65)
#define ActRemFilAsgCrs (ActRcvRchTxtCrsLnk+ 66)
#define ActRemFolAsgCrs (ActRcvRchTxtCrsLnk+ 67)
#define ActCopAsgCrs (ActRcvRchTxtCrsLnk+ 68)
#define ActPasAsgCrs (ActRcvRchTxtCrsLnk+ 69)
#define ActRemTreAsgCrs (ActRcvRchTxtCrsLnk+ 70)
#define ActFrmCreAsgCrs (ActRcvRchTxtCrsLnk+ 71)
#define ActCreFolAsgCrs (ActRcvRchTxtCrsLnk+ 72)
#define ActCreLnkAsgCrs (ActRcvRchTxtCrsLnk+ 73)
#define ActRenFolAsgCrs (ActRcvRchTxtCrsLnk+ 74)
#define ActRcvFilAsgCrsDZ (ActRcvRchTxtCrsLnk+ 75)
#define ActRcvFilAsgCrsCla (ActRcvRchTxtCrsLnk+ 76)
#define ActExpAsgCrs (ActRcvRchTxtCrsLnk+ 77)
#define ActConAsgCrs (ActRcvRchTxtCrsLnk+ 78)
#define ActZIPAsgCrs (ActRcvRchTxtCrsLnk+ 79)
#define ActReqDatAsgCrs (ActRcvRchTxtCrsLnk+ 80)
#define ActChgDatAsgCrs (ActRcvRchTxtCrsLnk+ 81)
#define ActDowAsgCrs (ActRcvRchTxtCrsLnk+ 82)
#define ActReqRemFilWrkCrs (ActRcvRchTxtCrsLnk+ 83)
#define ActRemFilWrkCrs (ActRcvRchTxtCrsLnk+ 84)
#define ActRemFolWrkCrs (ActRcvRchTxtCrsLnk+ 85)
#define ActCopWrkCrs (ActRcvRchTxtCrsLnk+ 86)
#define ActPasWrkCrs (ActRcvRchTxtCrsLnk+ 87)
#define ActRemTreWrkCrs (ActRcvRchTxtCrsLnk+ 88)
#define ActFrmCreWrkCrs (ActRcvRchTxtCrsLnk+ 89)
#define ActCreFolWrkCrs (ActRcvRchTxtCrsLnk+ 90)
#define ActCreLnkWrkCrs (ActRcvRchTxtCrsLnk+ 91)
#define ActRenFolWrkCrs (ActRcvRchTxtCrsLnk+ 92)
#define ActRcvFilWrkCrsDZ (ActRcvRchTxtCrsLnk+ 93)
#define ActRcvFilWrkCrsCla (ActRcvRchTxtCrsLnk+ 94)
#define ActExpWrkCrs (ActRcvRchTxtCrsLnk+ 95)
#define ActConWrkCrs (ActRcvRchTxtCrsLnk+ 96)
#define ActZIPWrkCrs (ActRcvRchTxtCrsLnk+ 97)
#define ActReqDatWrkCrs (ActRcvRchTxtCrsLnk+ 98)
#define ActChgDatWrkCrs (ActRcvRchTxtCrsLnk+ 99)
#define ActDowWrkCrs (ActRcvRchTxtCrsLnk+100)
#define ActSeeTst (ActRcvRchTxtCrsLnk+101)
#define ActAssTst (ActRcvRchTxtCrsLnk+102)
#define ActEdiTstQst (ActRcvRchTxtCrsLnk+103)
#define ActEdiOneTstQst (ActRcvRchTxtCrsLnk+104)
#define ActReqImpTstQst (ActRcvRchTxtCrsLnk+105)
#define ActImpTstQst (ActRcvRchTxtCrsLnk+106)
#define ActLstTstQst (ActRcvRchTxtCrsLnk+107)
#define ActRcvTstQst (ActRcvRchTxtCrsLnk+108)
#define ActReqRemTstQst (ActRcvRchTxtCrsLnk+109)
#define ActRemTstQst (ActRcvRchTxtCrsLnk+110)
#define ActShfTstQst (ActRcvRchTxtCrsLnk+111)
#define ActCfgTst (ActRcvRchTxtCrsLnk+112)
#define ActEnableTag (ActRcvRchTxtCrsLnk+113)
#define ActDisableTag (ActRcvRchTxtCrsLnk+114)
#define ActRenTag (ActRcvRchTxtCrsLnk+115)
#define ActRcvCfgTst (ActRcvRchTxtCrsLnk+116)
#define ActReqSeeMyTstRes (ActRcvRchTxtCrsLnk+117)
#define ActSeeMyTstRes (ActRcvRchTxtCrsLnk+118)
#define ActSeeOneTstResMe (ActRcvRchTxtCrsLnk+119)
#define ActReqSeeUsrTstRes (ActRcvRchTxtCrsLnk+120)
#define ActSeeUsrTstRes (ActRcvRchTxtCrsLnk+121)
#define ActSeeOneTstResOth (ActRcvRchTxtCrsLnk+122)
#define ActPrnCal (ActRcvRchTxtCrsLnk+123)
#define ActChgCal1stDay (ActRcvRchTxtCrsLnk+124)
#define ActSeeOneExaAnn (ActRcvRchTxtCrsLnk+125)
#define ActSeeDatExaAnn (ActRcvRchTxtCrsLnk+126)
#define ActEdiExaAnn (ActRcvRchTxtCrsLnk+127)
#define ActRcvExaAnn (ActRcvRchTxtCrsLnk+128)
#define ActPrnExaAnn (ActRcvRchTxtCrsLnk+129)
#define ActReqRemExaAnn (ActRcvRchTxtCrsLnk+130)
#define ActRemExaAnn (ActRcvRchTxtCrsLnk+131)
#define ActHidExaAnn (ActRcvRchTxtCrsLnk+132)
#define ActShoExaAnn (ActRcvRchTxtCrsLnk+133)
#define ActChgToSeeMrk (ActRcvRchTxtCrsLnk+134)
#define ActSeeMrkCrs (ActRcvRchTxtCrsLnk+135)
#define ActExpSeeMrkCrs (ActRcvRchTxtCrsLnk+136)
#define ActConSeeMrkCrs (ActRcvRchTxtCrsLnk+137)
#define ActReqDatSeeMrkCrs (ActRcvRchTxtCrsLnk+138)
#define ActSeeMyMrkCrs (ActRcvRchTxtCrsLnk+139)
#define ActSeeMrkGrp (ActRcvRchTxtCrsLnk+140)
#define ActExpSeeMrkGrp (ActRcvRchTxtCrsLnk+141)
#define ActConSeeMrkGrp (ActRcvRchTxtCrsLnk+142)
#define ActReqDatSeeMrkGrp (ActRcvRchTxtCrsLnk+143)
#define ActSeeMyMrkGrp (ActRcvRchTxtCrsLnk+144)
#define ActChgToAdmMrk (ActRcvRchTxtCrsLnk+145)
#define ActAdmMrkCrs (ActRcvRchTxtCrsLnk+146)
#define ActReqRemFilMrkCrs (ActRcvRchTxtCrsLnk+147)
#define ActRemFilMrkCrs (ActRcvRchTxtCrsLnk+148)
#define ActRemFolMrkCrs (ActRcvRchTxtCrsLnk+149)
#define ActCopMrkCrs (ActRcvRchTxtCrsLnk+150)
#define ActPasMrkCrs (ActRcvRchTxtCrsLnk+151)
#define ActRemTreMrkCrs (ActRcvRchTxtCrsLnk+152)
#define ActFrmCreMrkCrs (ActRcvRchTxtCrsLnk+153)
#define ActCreFolMrkCrs (ActRcvRchTxtCrsLnk+154)
#define ActRenFolMrkCrs (ActRcvRchTxtCrsLnk+155)
#define ActRcvFilMrkCrsDZ (ActRcvRchTxtCrsLnk+156)
#define ActRcvFilMrkCrsCla (ActRcvRchTxtCrsLnk+157)
#define ActExpAdmMrkCrs (ActRcvRchTxtCrsLnk+158)
#define ActConAdmMrkCrs (ActRcvRchTxtCrsLnk+159)
#define ActZIPAdmMrkCrs (ActRcvRchTxtCrsLnk+160)
#define ActShoMrkCrs (ActRcvRchTxtCrsLnk+161)
#define ActHidMrkCrs (ActRcvRchTxtCrsLnk+162)
#define ActReqDatAdmMrkCrs (ActRcvRchTxtCrsLnk+163)
#define ActChgDatAdmMrkCrs (ActRcvRchTxtCrsLnk+164)
#define ActDowAdmMrkCrs (ActRcvRchTxtCrsLnk+165)
#define ActChgNumRowHeaCrs (ActRcvRchTxtCrsLnk+166)
#define ActChgNumRowFooCrs (ActRcvRchTxtCrsLnk+167)
#define ActAdmMrkGrp (ActRcvRchTxtCrsLnk+168)
#define ActReqRemFilMrkGrp (ActRcvRchTxtCrsLnk+169)
#define ActRemFilMrkGrp (ActRcvRchTxtCrsLnk+170)
#define ActRemFolMrkGrp (ActRcvRchTxtCrsLnk+171)
#define ActCopMrkGrp (ActRcvRchTxtCrsLnk+172)
#define ActPasMrkGrp (ActRcvRchTxtCrsLnk+173)
#define ActRemTreMrkGrp (ActRcvRchTxtCrsLnk+174)
#define ActFrmCreMrkGrp (ActRcvRchTxtCrsLnk+175)
#define ActCreFolMrkGrp (ActRcvRchTxtCrsLnk+176)
#define ActRenFolMrkGrp (ActRcvRchTxtCrsLnk+177)
#define ActRcvFilMrkGrpDZ (ActRcvRchTxtCrsLnk+178)
#define ActRcvFilMrkGrpCla (ActRcvRchTxtCrsLnk+179)
#define ActExpAdmMrkGrp (ActRcvRchTxtCrsLnk+180)
#define ActConAdmMrkGrp (ActRcvRchTxtCrsLnk+181)
#define ActZIPAdmMrkGrp (ActRcvRchTxtCrsLnk+182)
#define ActShoMrkGrp (ActRcvRchTxtCrsLnk+183)
#define ActHidMrkGrp (ActRcvRchTxtCrsLnk+184)
#define ActReqDatAdmMrkGrp (ActRcvRchTxtCrsLnk+185)
#define ActChgDatAdmMrkGrp (ActRcvRchTxtCrsLnk+186)
#define ActDowAdmMrkGrp (ActRcvRchTxtCrsLnk+187)
#define ActChgNumRowHeaGrp (ActRcvRchTxtCrsLnk+188)
#define ActChgNumRowFooGrp (ActRcvRchTxtCrsLnk+189)
/*****************************************************************************/
/******************************* Users tab ***********************************/
/*****************************************************************************/
// Actions in menu
#define ActReqSelGrp (ActChgNumRowFooGrp+ 1)
#define ActLstStd (ActChgNumRowFooGrp+ 2)
#define ActLstTch (ActChgNumRowFooGrp+ 3)
#define ActLstOth (ActChgNumRowFooGrp+ 4)
#define ActSeeAtt (ActChgNumRowFooGrp+ 5)
#define ActReqSignUp (ActChgNumRowFooGrp+ 6)
#define ActSeeSignUpReq (ActChgNumRowFooGrp+ 7)
#define ActLstCon (ActChgNumRowFooGrp+ 8)
// Secondary actions
#define ActChgGrp (ActChgNumRowFooGrp+ 9)
#define ActReqEdiGrp (ActChgNumRowFooGrp+ 10)
#define ActNewGrpTyp (ActChgNumRowFooGrp+ 11)
#define ActReqRemGrpTyp (ActChgNumRowFooGrp+ 12)
#define ActRemGrpTyp (ActChgNumRowFooGrp+ 13)
#define ActRenGrpTyp (ActChgNumRowFooGrp+ 14)
#define ActChgMdtGrpTyp (ActChgNumRowFooGrp+ 15)
#define ActChgMulGrpTyp (ActChgNumRowFooGrp+ 16)
#define ActChgTimGrpTyp (ActChgNumRowFooGrp+ 17)
#define ActNewGrp (ActChgNumRowFooGrp+ 18)
#define ActReqRemGrp (ActChgNumRowFooGrp+ 19)
#define ActRemGrp (ActChgNumRowFooGrp+ 20)
#define ActOpeGrp (ActChgNumRowFooGrp+ 21)
#define ActCloGrp (ActChgNumRowFooGrp+ 22)
#define ActEnaFilZonGrp (ActChgNumRowFooGrp+ 23)
#define ActDisFilZonGrp (ActChgNumRowFooGrp+ 24)
#define ActChgGrpTyp (ActChgNumRowFooGrp+ 25)
#define ActRenGrp (ActChgNumRowFooGrp+ 26)
#define ActChgMaxStdGrp (ActChgNumRowFooGrp+ 27)
#define ActLstGst (ActChgNumRowFooGrp+ 28)
#define ActPrnGstPho (ActChgNumRowFooGrp+ 29)
#define ActPrnStdPho (ActChgNumRowFooGrp+ 30)
#define ActPrnTchPho (ActChgNumRowFooGrp+ 31)
#define ActLstGstAll (ActChgNumRowFooGrp+ 32)
#define ActLstStdAll (ActChgNumRowFooGrp+ 33)
#define ActLstTchAll (ActChgNumRowFooGrp+ 34)
#define ActSeeRecOneStd (ActChgNumRowFooGrp+ 35)
#define ActSeeRecOneTch (ActChgNumRowFooGrp+ 36)
#define ActSeeRecSevGst (ActChgNumRowFooGrp+ 37)
#define ActSeeRecSevStd (ActChgNumRowFooGrp+ 38)
#define ActSeeRecSevTch (ActChgNumRowFooGrp+ 39)
#define ActPrnRecSevGst (ActChgNumRowFooGrp+ 40)
#define ActPrnRecSevStd (ActChgNumRowFooGrp+ 41)
#define ActPrnRecSevTch (ActChgNumRowFooGrp+ 42)
#define ActRcvRecOthUsr (ActChgNumRowFooGrp+ 43)
#define ActEdiRecFie (ActChgNumRowFooGrp+ 44)
#define ActNewFie (ActChgNumRowFooGrp+ 45)
#define ActReqRemFie (ActChgNumRowFooGrp+ 46)
#define ActRemFie (ActChgNumRowFooGrp+ 47)
#define ActRenFie (ActChgNumRowFooGrp+ 48)
#define ActChgRowFie (ActChgNumRowFooGrp+ 49)
#define ActChgVisFie (ActChgNumRowFooGrp+ 50)
#define ActRcvRecCrs (ActChgNumRowFooGrp+ 51)
#define ActFrmLogInUsrAgd (ActChgNumRowFooGrp+ 52)
#define ActLogInUsrAgd (ActChgNumRowFooGrp+ 53)
#define ActLogInUsrAgdLan (ActChgNumRowFooGrp+ 54)
#define ActSeeUsrAgd (ActChgNumRowFooGrp+ 55)
#define ActReqEnrSevStd (ActChgNumRowFooGrp+ 56)
#define ActReqEnrSevTch (ActChgNumRowFooGrp+ 57)
#define ActReqLstStdAtt (ActChgNumRowFooGrp+ 58)
#define ActSeeLstMyAtt (ActChgNumRowFooGrp+ 59)
#define ActPrnLstMyAtt (ActChgNumRowFooGrp+ 60)
#define ActSeeLstStdAtt (ActChgNumRowFooGrp+ 61)
#define ActPrnLstStdAtt (ActChgNumRowFooGrp+ 62)
#define ActFrmNewAtt (ActChgNumRowFooGrp+ 63)
#define ActEdiOneAtt (ActChgNumRowFooGrp+ 64)
#define ActNewAtt (ActChgNumRowFooGrp+ 65)
#define ActChgAtt (ActChgNumRowFooGrp+ 66)
#define ActReqRemAtt (ActChgNumRowFooGrp+ 67)
#define ActRemAtt (ActChgNumRowFooGrp+ 68)
#define ActHidAtt (ActChgNumRowFooGrp+ 69)
#define ActShoAtt (ActChgNumRowFooGrp+ 70)
#define ActSeeOneAtt (ActChgNumRowFooGrp+ 71)
#define ActRecAttStd (ActChgNumRowFooGrp+ 72)
#define ActRecAttMe (ActChgNumRowFooGrp+ 73)
#define ActSignUp (ActChgNumRowFooGrp+ 74)
#define ActUpdSignUpReq (ActChgNumRowFooGrp+ 75)
#define ActReqRejSignUp (ActChgNumRowFooGrp+ 76)
#define ActRejSignUp (ActChgNumRowFooGrp+ 77)
#define ActReqMdfOneOth (ActChgNumRowFooGrp+ 78)
#define ActReqMdfOneStd (ActChgNumRowFooGrp+ 79)
#define ActReqMdfOneTch (ActChgNumRowFooGrp+ 80)
#define ActReqMdfOth (ActChgNumRowFooGrp+ 81)
#define ActReqMdfStd (ActChgNumRowFooGrp+ 82)
#define ActReqMdfTch (ActChgNumRowFooGrp+ 83)
#define ActReqOthPho (ActChgNumRowFooGrp+ 84)
#define ActReqStdPho (ActChgNumRowFooGrp+ 85)
#define ActReqTchPho (ActChgNumRowFooGrp+ 86)
#define ActDetOthPho (ActChgNumRowFooGrp+ 87)
#define ActDetStdPho (ActChgNumRowFooGrp+ 88)
#define ActDetTchPho (ActChgNumRowFooGrp+ 89)
#define ActUpdOthPho (ActChgNumRowFooGrp+ 90)
#define ActUpdStdPho (ActChgNumRowFooGrp+ 91)
#define ActUpdTchPho (ActChgNumRowFooGrp+ 92)
#define ActReqRemOthPho (ActChgNumRowFooGrp+ 93)
#define ActReqRemStdPho (ActChgNumRowFooGrp+ 94)
#define ActReqRemTchPho (ActChgNumRowFooGrp+ 95)
#define ActRemOthPho (ActChgNumRowFooGrp+ 96)
#define ActRemStdPho (ActChgNumRowFooGrp+ 97)
#define ActRemTchPho (ActChgNumRowFooGrp+ 98)
#define ActCreOth (ActChgNumRowFooGrp+ 99)
#define ActCreStd (ActChgNumRowFooGrp+100)
#define ActCreTch (ActChgNumRowFooGrp+101)
#define ActUpdOth (ActChgNumRowFooGrp+102)
#define ActUpdStd (ActChgNumRowFooGrp+103)
#define ActUpdTch (ActChgNumRowFooGrp+104)
#define ActReqAccEnrStd (ActChgNumRowFooGrp+105)
#define ActReqAccEnrTch (ActChgNumRowFooGrp+106)
#define ActAccEnrStd (ActChgNumRowFooGrp+107)
#define ActAccEnrTch (ActChgNumRowFooGrp+108)
#define ActRemMe_Std (ActChgNumRowFooGrp+109)
#define ActRemMe_Tch (ActChgNumRowFooGrp+110)
#define ActNewAdmIns (ActChgNumRowFooGrp+111)
#define ActRemAdmIns (ActChgNumRowFooGrp+112)
#define ActNewAdmCtr (ActChgNumRowFooGrp+113)
#define ActRemAdmCtr (ActChgNumRowFooGrp+114)
#define ActNewAdmDeg (ActChgNumRowFooGrp+115)
#define ActRemAdmDeg (ActChgNumRowFooGrp+116)
#define ActRcvFrmEnrSevStd (ActChgNumRowFooGrp+117)
#define ActRcvFrmEnrSevTch (ActChgNumRowFooGrp+118)
#define ActReqCnfID_Oth (ActChgNumRowFooGrp+119)
#define ActReqCnfID_Std (ActChgNumRowFooGrp+120)
#define ActReqCnfID_Tch (ActChgNumRowFooGrp+121)
#define ActCnfID_Oth (ActChgNumRowFooGrp+122)
#define ActCnfID_Std (ActChgNumRowFooGrp+123)
#define ActCnfID_Tch (ActChgNumRowFooGrp+124)
#define ActFrmIDsOth (ActChgNumRowFooGrp+125)
#define ActFrmIDsStd (ActChgNumRowFooGrp+126)
#define ActFrmIDsTch (ActChgNumRowFooGrp+127)
#define ActRemID_Oth (ActChgNumRowFooGrp+128)
#define ActRemID_Std (ActChgNumRowFooGrp+129)
#define ActRemID_Tch (ActChgNumRowFooGrp+130)
#define ActNewID_Oth (ActChgNumRowFooGrp+131)
#define ActNewID_Std (ActChgNumRowFooGrp+132)
#define ActNewID_Tch (ActChgNumRowFooGrp+133)
#define ActFrmPwdOth (ActChgNumRowFooGrp+134)
#define ActFrmPwdStd (ActChgNumRowFooGrp+135)
#define ActFrmPwdTch (ActChgNumRowFooGrp+136)
#define ActChgPwdOth (ActChgNumRowFooGrp+137)
#define ActChgPwdStd (ActChgNumRowFooGrp+138)
#define ActChgPwdTch (ActChgNumRowFooGrp+139)
#define ActFrmMaiOth (ActChgNumRowFooGrp+140)
#define ActFrmMaiStd (ActChgNumRowFooGrp+141)
#define ActFrmMaiTch (ActChgNumRowFooGrp+142)
#define ActRemMaiOth (ActChgNumRowFooGrp+143)
#define ActRemMaiStd (ActChgNumRowFooGrp+144)
#define ActRemMaiTch (ActChgNumRowFooGrp+145)
#define ActNewMaiOth (ActChgNumRowFooGrp+146)
#define ActNewMaiStd (ActChgNumRowFooGrp+147)
#define ActNewMaiTch (ActChgNumRowFooGrp+148)
#define ActRemStdCrs (ActChgNumRowFooGrp+149)
#define ActRemTchCrs (ActChgNumRowFooGrp+150)
#define ActRemUsrGbl (ActChgNumRowFooGrp+151)
#define ActReqRemAllStdCrs (ActChgNumRowFooGrp+152)
#define ActRemAllStdCrs (ActChgNumRowFooGrp+153)
#define ActReqRemOldUsr (ActChgNumRowFooGrp+154)
#define ActRemOldUsr (ActChgNumRowFooGrp+155)
#define ActLstDupUsr (ActChgNumRowFooGrp+156)
#define ActLstSimUsr (ActChgNumRowFooGrp+157)
#define ActRemDupUsr (ActChgNumRowFooGrp+158)
#define ActLstClk (ActChgNumRowFooGrp+159)
/*****************************************************************************/
/******************************** Social tab *********************************/
/*****************************************************************************/
// Actions in menu
#define ActSeeSocTmlGbl (ActLstClk+ 1)
#define ActSeeSocPrf (ActLstClk+ 2)
#define ActSeeFor (ActLstClk+ 3)
#define ActSeeChtRms (ActLstClk+ 4)
// Secondary actions
#define ActRcvSocPstGbl (ActLstClk+ 5)
#define ActRcvSocComGbl (ActLstClk+ 6)
#define ActShaSocNotGbl (ActLstClk+ 7)
#define ActUnsSocNotGbl (ActLstClk+ 8)
#define ActFavSocNotGbl (ActLstClk+ 9)
#define ActUnfSocNotGbl (ActLstClk+ 10)
#define ActFavSocComGbl (ActLstClk+ 11)
#define ActUnfSocComGbl (ActLstClk+ 12)
#define ActReqRemSocPubGbl (ActLstClk+ 13)
#define ActRemSocPubGbl (ActLstClk+ 14)
#define ActReqRemSocComGbl (ActLstClk+ 15)
#define ActRemSocComGbl (ActLstClk+ 16)
#define ActReqPubPrf (ActLstClk+ 17)
#define ActRcvSocPstUsr (ActLstClk+ 18)
#define ActRcvSocComUsr (ActLstClk+ 19)
#define ActShaSocNotUsr (ActLstClk+ 20)
#define ActUnsSocNotUsr (ActLstClk+ 21)
#define ActFavSocNotUsr (ActLstClk+ 22)
#define ActUnfSocNotUsr (ActLstClk+ 23)
#define ActFavSocComUsr (ActLstClk+ 24)
#define ActUnfSocComUsr (ActLstClk+ 25)
#define ActReqRemSocPubUsr (ActLstClk+ 26)
#define ActRemSocPubUsr (ActLstClk+ 27)
#define ActReqRemSocComUsr (ActLstClk+ 28)
#define ActRemSocComUsr (ActLstClk+ 29)
#define ActSeePubPrf (ActLstClk+ 30)
#define ActCal1stClkTim (ActLstClk+ 31)
#define ActCalNumClk (ActLstClk+ 32)
#define ActCalNumFilVie (ActLstClk+ 33)
#define ActCalNumForPst (ActLstClk+ 34)
#define ActCalNumMsgSnt (ActLstClk+ 35)
#define ActFolUsr (ActLstClk+ 36)
#define ActUnfUsr (ActLstClk+ 37)
#define ActSeeFlg (ActLstClk+ 38)
#define ActSeeFlr (ActLstClk+ 39)
#define ActSeeForCrsUsr (ActLstClk+ 40)
#define ActSeeForCrsTch (ActLstClk+ 41)
#define ActSeeForDegUsr (ActLstClk+ 42)
#define ActSeeForDegTch (ActLstClk+ 43)
#define ActSeeForCtrUsr (ActLstClk+ 44)
#define ActSeeForCtrTch (ActLstClk+ 45)
#define ActSeeForInsUsr (ActLstClk+ 46)
#define ActSeeForInsTch (ActLstClk+ 47)
#define ActSeeForGenUsr (ActLstClk+ 48)
#define ActSeeForGenTch (ActLstClk+ 49)
#define ActSeeForSWAUsr (ActLstClk+ 50)
#define ActSeeForSWATch (ActLstClk+ 51)
#define ActSeePstForCrsUsr (ActLstClk+ 52)
#define ActSeePstForCrsTch (ActLstClk+ 53)
#define ActSeePstForDegUsr (ActLstClk+ 54)
#define ActSeePstForDegTch (ActLstClk+ 55)
#define ActSeePstForCtrUsr (ActLstClk+ 56)
#define ActSeePstForCtrTch (ActLstClk+ 57)
#define ActSeePstForInsUsr (ActLstClk+ 58)
#define ActSeePstForInsTch (ActLstClk+ 59)
#define ActSeePstForGenUsr (ActLstClk+ 60)
#define ActSeePstForGenTch (ActLstClk+ 61)
#define ActSeePstForSWAUsr (ActLstClk+ 62)
#define ActSeePstForSWATch (ActLstClk+ 63)
#define ActRcvThrForCrsUsr (ActLstClk+ 64)
#define ActRcvThrForCrsTch (ActLstClk+ 65)
#define ActRcvThrForDegUsr (ActLstClk+ 66)
#define ActRcvThrForDegTch (ActLstClk+ 67)
#define ActRcvThrForCtrUsr (ActLstClk+ 68)
#define ActRcvThrForCtrTch (ActLstClk+ 69)
#define ActRcvThrForInsUsr (ActLstClk+ 70)
#define ActRcvThrForInsTch (ActLstClk+ 71)
#define ActRcvThrForGenUsr (ActLstClk+ 72)
#define ActRcvThrForGenTch (ActLstClk+ 73)
#define ActRcvThrForSWAUsr (ActLstClk+ 74)
#define ActRcvThrForSWATch (ActLstClk+ 75)
#define ActRcvRepForCrsUsr (ActLstClk+ 76)
#define ActRcvRepForCrsTch (ActLstClk+ 77)
#define ActRcvRepForDegUsr (ActLstClk+ 78)
#define ActRcvRepForDegTch (ActLstClk+ 79)
#define ActRcvRepForCtrUsr (ActLstClk+ 80)
#define ActRcvRepForCtrTch (ActLstClk+ 81)
#define ActRcvRepForInsUsr (ActLstClk+ 82)
#define ActRcvRepForInsTch (ActLstClk+ 83)
#define ActRcvRepForGenUsr (ActLstClk+ 84)
#define ActRcvRepForGenTch (ActLstClk+ 85)
#define ActRcvRepForSWAUsr (ActLstClk+ 86)
#define ActRcvRepForSWATch (ActLstClk+ 87)
#define ActReqDelThrCrsUsr (ActLstClk+ 88)
#define ActReqDelThrCrsTch (ActLstClk+ 89)
#define ActReqDelThrDegUsr (ActLstClk+ 90)
#define ActReqDelThrDegTch (ActLstClk+ 91)
#define ActReqDelThrCtrUsr (ActLstClk+ 92)
#define ActReqDelThrCtrTch (ActLstClk+ 93)
#define ActReqDelThrInsUsr (ActLstClk+ 94)
#define ActReqDelThrInsTch (ActLstClk+ 95)
#define ActReqDelThrGenUsr (ActLstClk+ 96)
#define ActReqDelThrGenTch (ActLstClk+ 97)
#define ActReqDelThrSWAUsr (ActLstClk+ 98)
#define ActReqDelThrSWATch (ActLstClk+ 99)
#define ActDelThrForCrsUsr (ActLstClk+100)
#define ActDelThrForCrsTch (ActLstClk+101)
#define ActDelThrForDegUsr (ActLstClk+102)
#define ActDelThrForDegTch (ActLstClk+103)
#define ActDelThrForCtrUsr (ActLstClk+104)
#define ActDelThrForCtrTch (ActLstClk+105)
#define ActDelThrForInsUsr (ActLstClk+106)
#define ActDelThrForInsTch (ActLstClk+107)
#define ActDelThrForGenUsr (ActLstClk+108)
#define ActDelThrForGenTch (ActLstClk+109)
#define ActDelThrForSWAUsr (ActLstClk+110)
#define ActDelThrForSWATch (ActLstClk+111)
#define ActCutThrForCrsUsr (ActLstClk+112)
#define ActCutThrForCrsTch (ActLstClk+113)
#define ActCutThrForDegUsr (ActLstClk+114)
#define ActCutThrForDegTch (ActLstClk+115)
#define ActCutThrForCtrUsr (ActLstClk+116)
#define ActCutThrForCtrTch (ActLstClk+117)
#define ActCutThrForInsUsr (ActLstClk+118)
#define ActCutThrForInsTch (ActLstClk+119)
#define ActCutThrForGenUsr (ActLstClk+120)
#define ActCutThrForGenTch (ActLstClk+121)
#define ActCutThrForSWAUsr (ActLstClk+122)
#define ActCutThrForSWATch (ActLstClk+123)
#define ActPasThrForCrsUsr (ActLstClk+124)
#define ActPasThrForCrsTch (ActLstClk+125)
#define ActPasThrForDegUsr (ActLstClk+126)
#define ActPasThrForDegTch (ActLstClk+127)
#define ActPasThrForCtrUsr (ActLstClk+128)
#define ActPasThrForCtrTch (ActLstClk+129)
#define ActPasThrForInsUsr (ActLstClk+130)
#define ActPasThrForInsTch (ActLstClk+131)
#define ActPasThrForGenUsr (ActLstClk+132)
#define ActPasThrForGenTch (ActLstClk+133)
#define ActPasThrForSWAUsr (ActLstClk+134)
#define ActPasThrForSWATch (ActLstClk+135)
#define ActDelPstForCrsUsr (ActLstClk+136)
#define ActDelPstForCrsTch (ActLstClk+137)
#define ActDelPstForDegUsr (ActLstClk+138)
#define ActDelPstForDegTch (ActLstClk+139)
#define ActDelPstForCtrUsr (ActLstClk+140)
#define ActDelPstForCtrTch (ActLstClk+141)
#define ActDelPstForInsUsr (ActLstClk+142)
#define ActDelPstForInsTch (ActLstClk+143)
#define ActDelPstForGenUsr (ActLstClk+144)
#define ActDelPstForGenTch (ActLstClk+145)
#define ActDelPstForSWAUsr (ActLstClk+146)
#define ActDelPstForSWATch (ActLstClk+147)
#define ActEnbPstForCrsUsr (ActLstClk+148)
#define ActEnbPstForCrsTch (ActLstClk+149)
#define ActEnbPstForDegUsr (ActLstClk+150)
#define ActEnbPstForDegTch (ActLstClk+151)
#define ActEnbPstForCtrUsr (ActLstClk+152)
#define ActEnbPstForCtrTch (ActLstClk+153)
#define ActEnbPstForInsUsr (ActLstClk+154)
#define ActEnbPstForInsTch (ActLstClk+155)
#define ActEnbPstForGenUsr (ActLstClk+156)
#define ActEnbPstForGenTch (ActLstClk+157)
#define ActEnbPstForSWAUsr (ActLstClk+158)
#define ActEnbPstForSWATch (ActLstClk+159)
#define ActDisPstForCrsUsr (ActLstClk+160)
#define ActDisPstForCrsTch (ActLstClk+161)
#define ActDisPstForDegUsr (ActLstClk+162)
#define ActDisPstForDegTch (ActLstClk+163)
#define ActDisPstForCtrUsr (ActLstClk+164)
#define ActDisPstForCtrTch (ActLstClk+165)
#define ActDisPstForInsUsr (ActLstClk+166)
#define ActDisPstForInsTch (ActLstClk+167)
#define ActDisPstForGenUsr (ActLstClk+168)
#define ActDisPstForGenTch (ActLstClk+169)
#define ActDisPstForSWAUsr (ActLstClk+170)
#define ActDisPstForSWATch (ActLstClk+171)
#define ActCht (ActLstClk+172)
/*****************************************************************************/
/******************************* Messages tab ********************************/
/*****************************************************************************/
// Actions in menu
#define ActSeeNtf (ActCht+ 1)
#define ActSeeAnn (ActCht+ 2)
#define ActSeeAllNot (ActCht+ 3)
#define ActReqMsgUsr (ActCht+ 4)
#define ActSeeRcvMsg (ActCht+ 5)
#define ActSeeSntMsg (ActCht+ 6)
#define ActMaiStd (ActCht+ 7)
// Secondary actions
#define ActWriAnn (ActCht+ 8)
#define ActRcvAnn (ActCht+ 9)
#define ActHidAnn (ActCht+ 10)
#define ActRevAnn (ActCht+ 11)
#define ActRemAnn (ActCht+ 12)
#define ActSeeOneNot (ActCht+ 13)
#define ActWriNot (ActCht+ 14)
#define ActRcvNot (ActCht+ 15)
#define ActHidNot (ActCht+ 16)
#define ActRevNot (ActCht+ 17)
#define ActReqRemNot (ActCht+ 18)
#define ActRemNot (ActCht+ 19)
#define ActSeeNewNtf (ActCht+ 20)
#define ActMrkNtfSee (ActCht+ 21)
#define ActRcvMsgUsr (ActCht+ 22)
#define ActReqDelAllSntMsg (ActCht+ 23)
#define ActReqDelAllRcvMsg (ActCht+ 24)
#define ActDelAllSntMsg (ActCht+ 25)
#define ActDelAllRcvMsg (ActCht+ 26)
#define ActDelSntMsg (ActCht+ 27)
#define ActDelRcvMsg (ActCht+ 28)
#define ActExpSntMsg (ActCht+ 29)
#define ActExpRcvMsg (ActCht+ 30)
#define ActConSntMsg (ActCht+ 31)
#define ActConRcvMsg (ActCht+ 32)
#define ActLstBanUsr (ActCht+ 33)
#define ActBanUsrMsg (ActCht+ 34)
#define ActUnbUsrMsg (ActCht+ 35)
#define ActUnbUsrLst (ActCht+ 36)
/*****************************************************************************/
/****************************** Statistics tab *******************************/
/*****************************************************************************/
// Actions in menu
#define ActSeeAllSvy (ActUnbUsrLst+ 1)
#define ActReqUseGbl (ActUnbUsrLst+ 2)
#define ActSeePhoDeg (ActUnbUsrLst+ 3)
#define ActReqStaCrs (ActUnbUsrLst+ 4)
#define ActReqAccGbl (ActUnbUsrLst+ 5)
#define ActReqMyUsgRep (ActUnbUsrLst+ 6)
#define ActMFUAct (ActUnbUsrLst+ 7)
// Secondary actions
#define ActSeeOneSvy (ActUnbUsrLst+ 8)
#define ActAnsSvy (ActUnbUsrLst+ 9)
#define ActFrmNewSvy (ActUnbUsrLst+ 10)
#define ActEdiOneSvy (ActUnbUsrLst+ 11)
#define ActNewSvy (ActUnbUsrLst+ 12)
#define ActChgSvy (ActUnbUsrLst+ 13)
#define ActReqRemSvy (ActUnbUsrLst+ 14)
#define ActRemSvy (ActUnbUsrLst+ 15)
#define ActReqRstSvy (ActUnbUsrLst+ 16)
#define ActRstSvy (ActUnbUsrLst+ 17)
#define ActHidSvy (ActUnbUsrLst+ 18)
#define ActShoSvy (ActUnbUsrLst+ 19)
#define ActEdiOneSvyQst (ActUnbUsrLst+ 20)
#define ActRcvSvyQst (ActUnbUsrLst+ 21)
#define ActReqRemSvyQst (ActUnbUsrLst+ 22)
#define ActRemSvyQst (ActUnbUsrLst+ 23)
#define ActSeeUseGbl (ActUnbUsrLst+ 24)
#define ActPrnPhoDeg (ActUnbUsrLst+ 25)
#define ActCalPhoDeg (ActUnbUsrLst+ 26)
#define ActSeeAccGbl (ActUnbUsrLst+ 27)
#define ActReqAccCrs (ActUnbUsrLst+ 28)
#define ActSeeAccCrs (ActUnbUsrLst+ 29)
#define ActSeeAllStaCrs (ActUnbUsrLst+ 30)
#define ActSeeMyUsgRep (ActUnbUsrLst+ 31)
/*****************************************************************************/
/******************************** Profile tab ********************************/
/*****************************************************************************/
// Actions in menu
#define ActFrmLogIn (ActSeeMyUsgRep+ 1)
#define ActFrmRolSes (ActSeeMyUsgRep+ 2)
#define ActMyCrs (ActSeeMyUsgRep+ 3)
#define ActSeeMyTT (ActSeeMyUsgRep+ 4)
#define ActSeeMyAgd (ActSeeMyUsgRep+ 5)
#define ActFrmMyAcc (ActSeeMyUsgRep+ 6)
#define ActReqEdiRecCom (ActSeeMyUsgRep+ 7)
#define ActEdiPrf (ActSeeMyUsgRep+ 8)
#define ActAdmBrf (ActSeeMyUsgRep+ 9)
// Secondary actions
#define ActReqSndNewPwd (ActSeeMyUsgRep+10)
#define ActSndNewPwd (ActSeeMyUsgRep+11)
#define ActLogOut (ActSeeMyUsgRep+12)
#define ActLogIn (ActSeeMyUsgRep+13)
#define ActLogInNew (ActSeeMyUsgRep+14)
#define ActLogInLan (ActSeeMyUsgRep+15)
#define ActAnnSee (ActSeeMyUsgRep+16)
#define ActChgMyRol (ActSeeMyUsgRep+17)
#define ActFrmNewEvtMyAgd (ActSeeMyUsgRep+18)
#define ActEdiOneEvtMyAgd (ActSeeMyUsgRep+19)
#define ActNewEvtMyAgd (ActSeeMyUsgRep+20)
#define ActChgEvtMyAgd (ActSeeMyUsgRep+21)
#define ActReqRemEvtMyAgd (ActSeeMyUsgRep+22)
#define ActRemEvtMyAgd (ActSeeMyUsgRep+23)
#define ActHidEvtMyAgd (ActSeeMyUsgRep+24)
#define ActShoEvtMyAgd (ActSeeMyUsgRep+25)
#define ActPrvEvtMyAgd (ActSeeMyUsgRep+26)
#define ActPubEvtMyAgd (ActSeeMyUsgRep+27)
#define ActSeeMyPubAgd (ActSeeMyUsgRep+28)
#define ActPrnAgdQR (ActSeeMyUsgRep+29)
#define ActChkUsrAcc (ActSeeMyUsgRep+30)
#define ActCreUsrAcc (ActSeeMyUsgRep+31)
#define ActRemID_Me (ActSeeMyUsgRep+32)
#define ActNewIDMe (ActSeeMyUsgRep+33)
#define ActRemOldNic (ActSeeMyUsgRep+34)
#define ActChgNic (ActSeeMyUsgRep+35)
#define ActRemMaiMe (ActSeeMyUsgRep+36)
#define ActNewMaiMe (ActSeeMyUsgRep+37)
#define ActCnfMai (ActSeeMyUsgRep+38)
#define ActFrmChgMyPwd (ActSeeMyUsgRep+39)
#define ActChgPwd (ActSeeMyUsgRep+40)
#define ActReqRemMyAcc (ActSeeMyUsgRep+41)
#define ActRemMyAcc (ActSeeMyUsgRep+42)
#define ActChgMyData (ActSeeMyUsgRep+43)
#define ActReqMyPho (ActSeeMyUsgRep+44)
#define ActDetMyPho (ActSeeMyUsgRep+45)
#define ActUpdMyPho (ActSeeMyUsgRep+46)
#define ActReqRemMyPho (ActSeeMyUsgRep+47)
#define ActRemMyPho (ActSeeMyUsgRep+48)
#define ActEdiPri (ActSeeMyUsgRep+49)
#define ActChgPriPho (ActSeeMyUsgRep+50)
#define ActChgPriPrf (ActSeeMyUsgRep+51)
#define ActReqEdiMyIns (ActSeeMyUsgRep+52)
#define ActChgCtyMyIns (ActSeeMyUsgRep+53)
#define ActChgMyIns (ActSeeMyUsgRep+54)
#define ActChgMyCtr (ActSeeMyUsgRep+55)
#define ActChgMyDpt (ActSeeMyUsgRep+56)
#define ActChgMyOff (ActSeeMyUsgRep+57)
#define ActChgMyOffPho (ActSeeMyUsgRep+58)
#define ActReqEdiMyNet (ActSeeMyUsgRep+59)
#define ActChgMyNet (ActSeeMyUsgRep+60)
#define ActChgThe (ActSeeMyUsgRep+61)
#define ActReqChgLan (ActSeeMyUsgRep+62)
#define ActChgLan (ActSeeMyUsgRep+63)
#define ActChg1stDay (ActSeeMyUsgRep+64)
#define ActChgCol (ActSeeMyUsgRep+65)
#define ActHidLftCol (ActSeeMyUsgRep+66)
#define ActHidRgtCol (ActSeeMyUsgRep+67)
#define ActShoLftCol (ActSeeMyUsgRep+68)
#define ActShoRgtCol (ActSeeMyUsgRep+69)
#define ActChgIco (ActSeeMyUsgRep+70)
#define ActChgMnu (ActSeeMyUsgRep+71)
#define ActChgNtfPrf (ActSeeMyUsgRep+72)
#define ActPrnUsrQR (ActSeeMyUsgRep+73)
#define ActPrnMyTT (ActSeeMyUsgRep+74)
#define ActEdiTut (ActSeeMyUsgRep+75)
#define ActChgTut (ActSeeMyUsgRep+76)
#define ActChgMyTT1stDay (ActSeeMyUsgRep+77)
#define ActReqRemFilBrf (ActSeeMyUsgRep+78)
#define ActRemFilBrf (ActSeeMyUsgRep+79)
#define ActRemFolBrf (ActSeeMyUsgRep+80)
#define ActCopBrf (ActSeeMyUsgRep+81)
#define ActPasBrf (ActSeeMyUsgRep+82)
#define ActRemTreBrf (ActSeeMyUsgRep+83)
#define ActFrmCreBrf (ActSeeMyUsgRep+84)
#define ActCreFolBrf (ActSeeMyUsgRep+85)
#define ActCreLnkBrf (ActSeeMyUsgRep+86)
#define ActRenFolBrf (ActSeeMyUsgRep+87)
#define ActRcvFilBrfDZ (ActSeeMyUsgRep+88)
#define ActRcvFilBrfCla (ActSeeMyUsgRep+89)
#define ActExpBrf (ActSeeMyUsgRep+90)
#define ActConBrf (ActSeeMyUsgRep+91)
#define ActZIPBrf (ActSeeMyUsgRep+92)
#define ActReqDatBrf (ActSeeMyUsgRep+93)
#define ActChgDatBrf (ActSeeMyUsgRep+94)
#define ActDowBrf (ActSeeMyUsgRep+95)
#define ActReqRemOldBrf (ActSeeMyUsgRep+96)
#define ActRemOldBrf (ActSeeMyUsgRep+97)
/*****************************************************************************/
/******************************** Public types *******************************/
/*****************************************************************************/
struct Act_Tabs
{
char *Icon;
};
struct Act_Actions
{
long ActCod; // Unique, time-persistent numerical code for the action
signed int IndexInMenu;
Tab_Tab_t Tab;
Act_Action_t SuperAction;
unsigned PermisIfIBelongToCrs;
unsigned PermisIfIDontBelongToCrs;
unsigned PermisIfNoCrsSelected;
Act_Content_t ContentType;
Act_BrowserWindow_t BrowserWindow;
void (*FunctionPriori)();
void (*FunctionPosteriori)();
const char *Icon;
};
/*****************************************************************************/
/***************************** Public prototypes *****************************/
/*****************************************************************************/
bool Act_CheckIfIHavePermissionToExecuteAction (Act_Action_t Action);
const char *Act_GetTitleAction (Act_Action_t Action);
const char *Act_GetSubtitleAction (Act_Action_t Action);
char *Act_GetActionTextFromDB (long ActCod,char *Txt);
void Act_FormGoToStart (Act_Action_t NextAction);
void Act_FormStart (Act_Action_t NextAction);
void Act_FormStartOnSubmit (Act_Action_t NextAction,const char *OnSubmit);
void Act_FormStartUnique (Act_Action_t NextAction);
void Act_FormStartAnchor (Act_Action_t NextAction,const char *Anchor);
void Act_FormStartUniqueAnchor (Act_Action_t NextAction,const char *Anchor);
void Act_FormStartId (Act_Action_t NextAction,const char *Id);
void Act_SetParamsForm (char *ParamsStr,Act_Action_t NextAction,
bool PutParameterLocationIfNoSesion);
void Act_FormEnd (void);
void Act_LinkFormSubmit (const char *Title,const char *LinkStyle,
const char *OnSubmit);
void Act_LinkFormSubmitUnique (const char *Title,const char *LinkStyle);
void Act_LinkFormSubmitId (const char *Title,const char *LinkStyle,
const char *Id,const char *OnSubmit);
void Act_LinkFormSubmitAnimated (const char *Title,const char *LinkStyle,
const char *OnSubmit);
void Act_SetUniqueId (char UniqueId[Act_MAX_LENGTH_ID]);
void Act_AdjustActionWhenNoUsrLogged (void);
void Act_AdjustCurrentAction (void);
#endif