mirror of https://github.com/acanas/swad-core.git
Version 21.117: Sep 12, 2022 New database table with clipboards for program resources.
This commit is contained in:
parent
0302baa8ef
commit
dfed213480
|
@ -1017,6 +1017,7 @@ const struct Act_Actions Act_Actions[Act_NUM_ACTIONS] =
|
|||
[ActConSeeDocCrs ] = { 476,-1,TabUnk,ActSeeAdmDocCrsGrp ,0x238,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_204_NO_CONT,Brw_ContractFileTree ,NULL ,NULL},
|
||||
[ActZIPSeeDocCrs ] = {1124,-1,TabUnk,ActSeeAdmDocCrsGrp ,0x238,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,ZIP_CompressFileTree ,NULL},
|
||||
[ActReqDatSeeDocCrs ] = {1033,-1,TabUnk,ActSeeAdmDocCrsGrp ,0x3F8,0x3C7, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Brw_ShowFileMetadata ,NULL},
|
||||
[ActReqLnkSeeDocCrs ] = {1930,-1,TabUnk,ActSeeAdmDocCrsGrp ,0x220,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Brw_GetLinkToFile ,NULL},
|
||||
[ActDowSeeDocCrs ] = {1111,-1,TabUnk,ActSeeAdmDocCrsGrp ,0x3F8,0x3C7, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_DOWNLD_FILE,Brw_DownloadFile ,NULL ,NULL},
|
||||
|
||||
[ActSeeDocGrp ] = {1200,-1,TabUnk,ActSeeAdmDocCrsGrp ,0x238,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Brw_ShowFileBrowserOrWorks ,NULL},
|
||||
|
@ -1048,6 +1049,7 @@ const struct Act_Actions Act_Actions[Act_NUM_ACTIONS] =
|
|||
[ActHidDocCrs ] = { 465,-1,TabUnk,ActSeeAdmDocCrsGrp ,0x220,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Brw_SetDocumentAsHidden ,NULL},
|
||||
[ActReqDatAdmDocCrs ] = {1029,-1,TabUnk,ActSeeAdmDocCrsGrp ,0x220,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Brw_ShowFileMetadata ,NULL},
|
||||
[ActChgDatAdmDocCrs ] = { 996,-1,TabUnk,ActSeeAdmDocCrsGrp ,0x220,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Brw_ChgFileMetadata ,NULL},
|
||||
[ActReqLnkAdmDocCrs ] = {1931,-1,TabUnk,ActSeeAdmDocCrsGrp ,0x220,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Brw_GetLinkToFile ,NULL},
|
||||
[ActDowAdmDocCrs ] = {1113,-1,TabUnk,ActSeeAdmDocCrsGrp ,0x220,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_DOWNLD_FILE,Brw_DownloadFile ,NULL ,NULL},
|
||||
|
||||
[ActAdmDocGrp ] = {1201,-1,TabUnk,ActSeeAdmDocCrsGrp ,0x220,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Brw_ShowFileBrowserOrWorks ,NULL},
|
||||
|
@ -3769,6 +3771,8 @@ Act_Action_t Act_FromActCodToAction[1 + Act_MAX_ACTION_COD] = // Do not reuse un
|
|||
ActSeePrgItm, // #1927
|
||||
ActRenPrgRsc, // #1928
|
||||
ActNewPrgRsc, // #1929
|
||||
ActReqLnkSeeDocCrs, // #1930
|
||||
ActReqLnkAdmDocCrs, // #1931
|
||||
};
|
||||
|
||||
/*****************************************************************************/
|
||||
|
|
558
swad_action.h
558
swad_action.h
|
@ -65,7 +65,7 @@ typedef enum
|
|||
|
||||
typedef signed int Act_Action_t; // Must be a signed type, because -1 is used to indicate obsolete action
|
||||
|
||||
#define Act_MAX_ACTION_COD 1929
|
||||
#define Act_MAX_ACTION_COD 1931
|
||||
|
||||
#define Act_MAX_OPTIONS_IN_MENU_PER_TAB 13
|
||||
|
||||
|
@ -962,304 +962,306 @@ typedef signed int Act_Action_t; // Must be a signed type, because -1 is used to
|
|||
#define ActConSeeDocCrs (ActRemSvyQst + 158)
|
||||
#define ActZIPSeeDocCrs (ActRemSvyQst + 159)
|
||||
#define ActReqDatSeeDocCrs (ActRemSvyQst + 160)
|
||||
#define ActDowSeeDocCrs (ActRemSvyQst + 161)
|
||||
#define ActReqLnkSeeDocCrs (ActRemSvyQst + 161)
|
||||
#define ActDowSeeDocCrs (ActRemSvyQst + 162)
|
||||
|
||||
#define ActSeeDocGrp (ActRemSvyQst + 162)
|
||||
#define ActExpSeeDocGrp (ActRemSvyQst + 163)
|
||||
#define ActConSeeDocGrp (ActRemSvyQst + 164)
|
||||
#define ActZIPSeeDocGrp (ActRemSvyQst + 165)
|
||||
#define ActReqDatSeeDocGrp (ActRemSvyQst + 166)
|
||||
#define ActDowSeeDocGrp (ActRemSvyQst + 167)
|
||||
#define ActSeeDocGrp (ActRemSvyQst + 163)
|
||||
#define ActExpSeeDocGrp (ActRemSvyQst + 164)
|
||||
#define ActConSeeDocGrp (ActRemSvyQst + 165)
|
||||
#define ActZIPSeeDocGrp (ActRemSvyQst + 166)
|
||||
#define ActReqDatSeeDocGrp (ActRemSvyQst + 167)
|
||||
#define ActDowSeeDocGrp (ActRemSvyQst + 168)
|
||||
|
||||
#define ActChgToAdmDocCrs (ActRemSvyQst + 168)
|
||||
#define ActAdmDocCrs (ActRemSvyQst + 169)
|
||||
#define ActReqRemFilDocCrs (ActRemSvyQst + 170)
|
||||
#define ActRemFilDocCrs (ActRemSvyQst + 171)
|
||||
#define ActRemFolDocCrs (ActRemSvyQst + 172)
|
||||
#define ActCopDocCrs (ActRemSvyQst + 173)
|
||||
#define ActPasDocCrs (ActRemSvyQst + 174)
|
||||
#define ActRemTreDocCrs (ActRemSvyQst + 175)
|
||||
#define ActFrmCreDocCrs (ActRemSvyQst + 176)
|
||||
#define ActCreFolDocCrs (ActRemSvyQst + 177)
|
||||
#define ActCreLnkDocCrs (ActRemSvyQst + 178)
|
||||
#define ActRenFolDocCrs (ActRemSvyQst + 179)
|
||||
#define ActRcvFilDocCrsDZ (ActRemSvyQst + 180)
|
||||
#define ActRcvFilDocCrsCla (ActRemSvyQst + 181)
|
||||
#define ActExpAdmDocCrs (ActRemSvyQst + 182)
|
||||
#define ActConAdmDocCrs (ActRemSvyQst + 183)
|
||||
#define ActZIPAdmDocCrs (ActRemSvyQst + 184)
|
||||
#define ActUnhDocCrs (ActRemSvyQst + 185)
|
||||
#define ActHidDocCrs (ActRemSvyQst + 186)
|
||||
#define ActReqDatAdmDocCrs (ActRemSvyQst + 187)
|
||||
#define ActChgDatAdmDocCrs (ActRemSvyQst + 188)
|
||||
#define ActDowAdmDocCrs (ActRemSvyQst + 189)
|
||||
#define ActChgToAdmDocCrs (ActRemSvyQst + 169)
|
||||
#define ActAdmDocCrs (ActRemSvyQst + 170)
|
||||
#define ActReqRemFilDocCrs (ActRemSvyQst + 171)
|
||||
#define ActRemFilDocCrs (ActRemSvyQst + 172)
|
||||
#define ActRemFolDocCrs (ActRemSvyQst + 173)
|
||||
#define ActCopDocCrs (ActRemSvyQst + 174)
|
||||
#define ActPasDocCrs (ActRemSvyQst + 175)
|
||||
#define ActRemTreDocCrs (ActRemSvyQst + 176)
|
||||
#define ActFrmCreDocCrs (ActRemSvyQst + 177)
|
||||
#define ActCreFolDocCrs (ActRemSvyQst + 178)
|
||||
#define ActCreLnkDocCrs (ActRemSvyQst + 179)
|
||||
#define ActRenFolDocCrs (ActRemSvyQst + 180)
|
||||
#define ActRcvFilDocCrsDZ (ActRemSvyQst + 181)
|
||||
#define ActRcvFilDocCrsCla (ActRemSvyQst + 182)
|
||||
#define ActExpAdmDocCrs (ActRemSvyQst + 183)
|
||||
#define ActConAdmDocCrs (ActRemSvyQst + 184)
|
||||
#define ActZIPAdmDocCrs (ActRemSvyQst + 185)
|
||||
#define ActUnhDocCrs (ActRemSvyQst + 186)
|
||||
#define ActHidDocCrs (ActRemSvyQst + 187)
|
||||
#define ActReqDatAdmDocCrs (ActRemSvyQst + 188)
|
||||
#define ActChgDatAdmDocCrs (ActRemSvyQst + 189)
|
||||
#define ActReqLnkAdmDocCrs (ActRemSvyQst + 190)
|
||||
#define ActDowAdmDocCrs (ActRemSvyQst + 191)
|
||||
|
||||
#define ActAdmDocGrp (ActRemSvyQst + 190)
|
||||
#define ActReqRemFilDocGrp (ActRemSvyQst + 191)
|
||||
#define ActRemFilDocGrp (ActRemSvyQst + 192)
|
||||
#define ActRemFolDocGrp (ActRemSvyQst + 193)
|
||||
#define ActCopDocGrp (ActRemSvyQst + 194)
|
||||
#define ActPasDocGrp (ActRemSvyQst + 195)
|
||||
#define ActRemTreDocGrp (ActRemSvyQst + 196)
|
||||
#define ActFrmCreDocGrp (ActRemSvyQst + 197)
|
||||
#define ActCreFolDocGrp (ActRemSvyQst + 198)
|
||||
#define ActCreLnkDocGrp (ActRemSvyQst + 199)
|
||||
#define ActRenFolDocGrp (ActRemSvyQst + 200)
|
||||
#define ActRcvFilDocGrpDZ (ActRemSvyQst + 201)
|
||||
#define ActRcvFilDocGrpCla (ActRemSvyQst + 202)
|
||||
#define ActExpAdmDocGrp (ActRemSvyQst + 203)
|
||||
#define ActConAdmDocGrp (ActRemSvyQst + 204)
|
||||
#define ActZIPAdmDocGrp (ActRemSvyQst + 205)
|
||||
#define ActUnhDocGrp (ActRemSvyQst + 206)
|
||||
#define ActHidDocGrp (ActRemSvyQst + 207)
|
||||
#define ActReqDatAdmDocGrp (ActRemSvyQst + 208)
|
||||
#define ActChgDatAdmDocGrp (ActRemSvyQst + 209)
|
||||
#define ActDowAdmDocGrp (ActRemSvyQst + 210)
|
||||
#define ActAdmDocGrp (ActRemSvyQst + 192)
|
||||
#define ActReqRemFilDocGrp (ActRemSvyQst + 193)
|
||||
#define ActRemFilDocGrp (ActRemSvyQst + 194)
|
||||
#define ActRemFolDocGrp (ActRemSvyQst + 195)
|
||||
#define ActCopDocGrp (ActRemSvyQst + 196)
|
||||
#define ActPasDocGrp (ActRemSvyQst + 197)
|
||||
#define ActRemTreDocGrp (ActRemSvyQst + 198)
|
||||
#define ActFrmCreDocGrp (ActRemSvyQst + 199)
|
||||
#define ActCreFolDocGrp (ActRemSvyQst + 200)
|
||||
#define ActCreLnkDocGrp (ActRemSvyQst + 201)
|
||||
#define ActRenFolDocGrp (ActRemSvyQst + 202)
|
||||
#define ActRcvFilDocGrpDZ (ActRemSvyQst + 203)
|
||||
#define ActRcvFilDocGrpCla (ActRemSvyQst + 204)
|
||||
#define ActExpAdmDocGrp (ActRemSvyQst + 205)
|
||||
#define ActConAdmDocGrp (ActRemSvyQst + 206)
|
||||
#define ActZIPAdmDocGrp (ActRemSvyQst + 207)
|
||||
#define ActUnhDocGrp (ActRemSvyQst + 208)
|
||||
#define ActHidDocGrp (ActRemSvyQst + 209)
|
||||
#define ActReqDatAdmDocGrp (ActRemSvyQst + 210)
|
||||
#define ActChgDatAdmDocGrp (ActRemSvyQst + 211)
|
||||
#define ActDowAdmDocGrp (ActRemSvyQst + 212)
|
||||
|
||||
#define ActChgToAdmTch (ActRemSvyQst + 211)
|
||||
#define ActChgToAdmTch (ActRemSvyQst + 213)
|
||||
|
||||
#define ActAdmTchCrs (ActRemSvyQst + 212)
|
||||
#define ActReqRemFilTchCrs (ActRemSvyQst + 213)
|
||||
#define ActRemFilTchCrs (ActRemSvyQst + 214)
|
||||
#define ActRemFolTchCrs (ActRemSvyQst + 215)
|
||||
#define ActCopTchCrs (ActRemSvyQst + 216)
|
||||
#define ActPasTchCrs (ActRemSvyQst + 217)
|
||||
#define ActRemTreTchCrs (ActRemSvyQst + 218)
|
||||
#define ActFrmCreTchCrs (ActRemSvyQst + 219)
|
||||
#define ActCreFolTchCrs (ActRemSvyQst + 220)
|
||||
#define ActCreLnkTchCrs (ActRemSvyQst + 221)
|
||||
#define ActRenFolTchCrs (ActRemSvyQst + 222)
|
||||
#define ActRcvFilTchCrsDZ (ActRemSvyQst + 223)
|
||||
#define ActRcvFilTchCrsCla (ActRemSvyQst + 224)
|
||||
#define ActExpTchCrs (ActRemSvyQst + 225)
|
||||
#define ActConTchCrs (ActRemSvyQst + 226)
|
||||
#define ActZIPTchCrs (ActRemSvyQst + 227)
|
||||
#define ActReqDatTchCrs (ActRemSvyQst + 228)
|
||||
#define ActChgDatTchCrs (ActRemSvyQst + 229)
|
||||
#define ActDowTchCrs (ActRemSvyQst + 230)
|
||||
#define ActAdmTchCrs (ActRemSvyQst + 214)
|
||||
#define ActReqRemFilTchCrs (ActRemSvyQst + 215)
|
||||
#define ActRemFilTchCrs (ActRemSvyQst + 216)
|
||||
#define ActRemFolTchCrs (ActRemSvyQst + 217)
|
||||
#define ActCopTchCrs (ActRemSvyQst + 218)
|
||||
#define ActPasTchCrs (ActRemSvyQst + 219)
|
||||
#define ActRemTreTchCrs (ActRemSvyQst + 220)
|
||||
#define ActFrmCreTchCrs (ActRemSvyQst + 221)
|
||||
#define ActCreFolTchCrs (ActRemSvyQst + 222)
|
||||
#define ActCreLnkTchCrs (ActRemSvyQst + 223)
|
||||
#define ActRenFolTchCrs (ActRemSvyQst + 224)
|
||||
#define ActRcvFilTchCrsDZ (ActRemSvyQst + 225)
|
||||
#define ActRcvFilTchCrsCla (ActRemSvyQst + 226)
|
||||
#define ActExpTchCrs (ActRemSvyQst + 227)
|
||||
#define ActConTchCrs (ActRemSvyQst + 228)
|
||||
#define ActZIPTchCrs (ActRemSvyQst + 229)
|
||||
#define ActReqDatTchCrs (ActRemSvyQst + 230)
|
||||
#define ActChgDatTchCrs (ActRemSvyQst + 231)
|
||||
#define ActDowTchCrs (ActRemSvyQst + 232)
|
||||
|
||||
#define ActAdmTchGrp (ActRemSvyQst + 231)
|
||||
#define ActReqRemFilTchGrp (ActRemSvyQst + 232)
|
||||
#define ActRemFilTchGrp (ActRemSvyQst + 233)
|
||||
#define ActRemFolTchGrp (ActRemSvyQst + 234)
|
||||
#define ActCopTchGrp (ActRemSvyQst + 235)
|
||||
#define ActPasTchGrp (ActRemSvyQst + 236)
|
||||
#define ActRemTreTchGrp (ActRemSvyQst + 237)
|
||||
#define ActFrmCreTchGrp (ActRemSvyQst + 238)
|
||||
#define ActCreFolTchGrp (ActRemSvyQst + 239)
|
||||
#define ActCreLnkTchGrp (ActRemSvyQst + 240)
|
||||
#define ActRenFolTchGrp (ActRemSvyQst + 241)
|
||||
#define ActRcvFilTchGrpDZ (ActRemSvyQst + 242)
|
||||
#define ActRcvFilTchGrpCla (ActRemSvyQst + 243)
|
||||
#define ActExpTchGrp (ActRemSvyQst + 244)
|
||||
#define ActConTchGrp (ActRemSvyQst + 245)
|
||||
#define ActZIPTchGrp (ActRemSvyQst + 246)
|
||||
#define ActReqDatTchGrp (ActRemSvyQst + 247)
|
||||
#define ActChgDatTchGrp (ActRemSvyQst + 248)
|
||||
#define ActDowTchGrp (ActRemSvyQst + 249)
|
||||
#define ActAdmTchGrp (ActRemSvyQst + 233)
|
||||
#define ActReqRemFilTchGrp (ActRemSvyQst + 234)
|
||||
#define ActRemFilTchGrp (ActRemSvyQst + 235)
|
||||
#define ActRemFolTchGrp (ActRemSvyQst + 236)
|
||||
#define ActCopTchGrp (ActRemSvyQst + 237)
|
||||
#define ActPasTchGrp (ActRemSvyQst + 238)
|
||||
#define ActRemTreTchGrp (ActRemSvyQst + 239)
|
||||
#define ActFrmCreTchGrp (ActRemSvyQst + 240)
|
||||
#define ActCreFolTchGrp (ActRemSvyQst + 241)
|
||||
#define ActCreLnkTchGrp (ActRemSvyQst + 242)
|
||||
#define ActRenFolTchGrp (ActRemSvyQst + 243)
|
||||
#define ActRcvFilTchGrpDZ (ActRemSvyQst + 244)
|
||||
#define ActRcvFilTchGrpCla (ActRemSvyQst + 245)
|
||||
#define ActExpTchGrp (ActRemSvyQst + 246)
|
||||
#define ActConTchGrp (ActRemSvyQst + 247)
|
||||
#define ActZIPTchGrp (ActRemSvyQst + 248)
|
||||
#define ActReqDatTchGrp (ActRemSvyQst + 249)
|
||||
#define ActChgDatTchGrp (ActRemSvyQst + 250)
|
||||
#define ActDowTchGrp (ActRemSvyQst + 251)
|
||||
|
||||
#define ActChgToAdmSha (ActRemSvyQst + 250)
|
||||
#define ActChgToAdmSha (ActRemSvyQst + 252)
|
||||
|
||||
#define ActAdmShaCrs (ActRemSvyQst + 251)
|
||||
#define ActReqRemFilShaCrs (ActRemSvyQst + 252)
|
||||
#define ActRemFilShaCrs (ActRemSvyQst + 253)
|
||||
#define ActRemFolShaCrs (ActRemSvyQst + 254)
|
||||
#define ActCopShaCrs (ActRemSvyQst + 255)
|
||||
#define ActPasShaCrs (ActRemSvyQst + 256)
|
||||
#define ActRemTreShaCrs (ActRemSvyQst + 257)
|
||||
#define ActFrmCreShaCrs (ActRemSvyQst + 258)
|
||||
#define ActCreFolShaCrs (ActRemSvyQst + 259)
|
||||
#define ActCreLnkShaCrs (ActRemSvyQst + 260)
|
||||
#define ActRenFolShaCrs (ActRemSvyQst + 261)
|
||||
#define ActRcvFilShaCrsDZ (ActRemSvyQst + 262)
|
||||
#define ActRcvFilShaCrsCla (ActRemSvyQst + 263)
|
||||
#define ActExpShaCrs (ActRemSvyQst + 264)
|
||||
#define ActConShaCrs (ActRemSvyQst + 265)
|
||||
#define ActZIPShaCrs (ActRemSvyQst + 266)
|
||||
#define ActReqDatShaCrs (ActRemSvyQst + 267)
|
||||
#define ActChgDatShaCrs (ActRemSvyQst + 268)
|
||||
#define ActDowShaCrs (ActRemSvyQst + 269)
|
||||
#define ActAdmShaCrs (ActRemSvyQst + 253)
|
||||
#define ActReqRemFilShaCrs (ActRemSvyQst + 254)
|
||||
#define ActRemFilShaCrs (ActRemSvyQst + 255)
|
||||
#define ActRemFolShaCrs (ActRemSvyQst + 256)
|
||||
#define ActCopShaCrs (ActRemSvyQst + 257)
|
||||
#define ActPasShaCrs (ActRemSvyQst + 258)
|
||||
#define ActRemTreShaCrs (ActRemSvyQst + 259)
|
||||
#define ActFrmCreShaCrs (ActRemSvyQst + 260)
|
||||
#define ActCreFolShaCrs (ActRemSvyQst + 261)
|
||||
#define ActCreLnkShaCrs (ActRemSvyQst + 262)
|
||||
#define ActRenFolShaCrs (ActRemSvyQst + 263)
|
||||
#define ActRcvFilShaCrsDZ (ActRemSvyQst + 264)
|
||||
#define ActRcvFilShaCrsCla (ActRemSvyQst + 265)
|
||||
#define ActExpShaCrs (ActRemSvyQst + 266)
|
||||
#define ActConShaCrs (ActRemSvyQst + 267)
|
||||
#define ActZIPShaCrs (ActRemSvyQst + 268)
|
||||
#define ActReqDatShaCrs (ActRemSvyQst + 269)
|
||||
#define ActChgDatShaCrs (ActRemSvyQst + 270)
|
||||
#define ActDowShaCrs (ActRemSvyQst + 271)
|
||||
|
||||
#define ActAdmShaGrp (ActRemSvyQst + 270)
|
||||
#define ActReqRemFilShaGrp (ActRemSvyQst + 271)
|
||||
#define ActRemFilShaGrp (ActRemSvyQst + 272)
|
||||
#define ActRemFolShaGrp (ActRemSvyQst + 273)
|
||||
#define ActCopShaGrp (ActRemSvyQst + 274)
|
||||
#define ActPasShaGrp (ActRemSvyQst + 275)
|
||||
#define ActRemTreShaGrp (ActRemSvyQst + 276)
|
||||
#define ActFrmCreShaGrp (ActRemSvyQst + 277)
|
||||
#define ActCreFolShaGrp (ActRemSvyQst + 278)
|
||||
#define ActCreLnkShaGrp (ActRemSvyQst + 279)
|
||||
#define ActRenFolShaGrp (ActRemSvyQst + 280)
|
||||
#define ActRcvFilShaGrpDZ (ActRemSvyQst + 281)
|
||||
#define ActRcvFilShaGrpCla (ActRemSvyQst + 282)
|
||||
#define ActExpShaGrp (ActRemSvyQst + 283)
|
||||
#define ActConShaGrp (ActRemSvyQst + 284)
|
||||
#define ActZIPShaGrp (ActRemSvyQst + 285)
|
||||
#define ActReqDatShaGrp (ActRemSvyQst + 286)
|
||||
#define ActChgDatShaGrp (ActRemSvyQst + 287)
|
||||
#define ActDowShaGrp (ActRemSvyQst + 288)
|
||||
#define ActAdmShaGrp (ActRemSvyQst + 272)
|
||||
#define ActReqRemFilShaGrp (ActRemSvyQst + 273)
|
||||
#define ActRemFilShaGrp (ActRemSvyQst + 274)
|
||||
#define ActRemFolShaGrp (ActRemSvyQst + 275)
|
||||
#define ActCopShaGrp (ActRemSvyQst + 276)
|
||||
#define ActPasShaGrp (ActRemSvyQst + 277)
|
||||
#define ActRemTreShaGrp (ActRemSvyQst + 278)
|
||||
#define ActFrmCreShaGrp (ActRemSvyQst + 279)
|
||||
#define ActCreFolShaGrp (ActRemSvyQst + 280)
|
||||
#define ActCreLnkShaGrp (ActRemSvyQst + 281)
|
||||
#define ActRenFolShaGrp (ActRemSvyQst + 282)
|
||||
#define ActRcvFilShaGrpDZ (ActRemSvyQst + 283)
|
||||
#define ActRcvFilShaGrpCla (ActRemSvyQst + 284)
|
||||
#define ActExpShaGrp (ActRemSvyQst + 285)
|
||||
#define ActConShaGrp (ActRemSvyQst + 286)
|
||||
#define ActZIPShaGrp (ActRemSvyQst + 287)
|
||||
#define ActReqDatShaGrp (ActRemSvyQst + 288)
|
||||
#define ActChgDatShaGrp (ActRemSvyQst + 289)
|
||||
#define ActDowShaGrp (ActRemSvyQst + 290)
|
||||
|
||||
#define ActAdmAsgWrkCrs (ActRemSvyQst + 289)
|
||||
#define ActAdmAsgWrkCrs (ActRemSvyQst + 291)
|
||||
|
||||
#define ActReqRemFilAsgUsr (ActRemSvyQst + 290)
|
||||
#define ActRemFilAsgUsr (ActRemSvyQst + 291)
|
||||
#define ActRemFolAsgUsr (ActRemSvyQst + 292)
|
||||
#define ActCopAsgUsr (ActRemSvyQst + 293)
|
||||
#define ActPasAsgUsr (ActRemSvyQst + 294)
|
||||
#define ActRemTreAsgUsr (ActRemSvyQst + 295)
|
||||
#define ActFrmCreAsgUsr (ActRemSvyQst + 296)
|
||||
#define ActCreFolAsgUsr (ActRemSvyQst + 297)
|
||||
#define ActCreLnkAsgUsr (ActRemSvyQst + 298)
|
||||
#define ActRenFolAsgUsr (ActRemSvyQst + 299)
|
||||
#define ActRcvFilAsgUsrDZ (ActRemSvyQst + 300)
|
||||
#define ActRcvFilAsgUsrCla (ActRemSvyQst + 301)
|
||||
#define ActExpAsgUsr (ActRemSvyQst + 302)
|
||||
#define ActConAsgUsr (ActRemSvyQst + 303)
|
||||
#define ActZIPAsgUsr (ActRemSvyQst + 304)
|
||||
#define ActReqDatAsgUsr (ActRemSvyQst + 305)
|
||||
#define ActChgDatAsgUsr (ActRemSvyQst + 306)
|
||||
#define ActDowAsgUsr (ActRemSvyQst + 307)
|
||||
#define ActReqRemFilAsgUsr (ActRemSvyQst + 292)
|
||||
#define ActRemFilAsgUsr (ActRemSvyQst + 293)
|
||||
#define ActRemFolAsgUsr (ActRemSvyQst + 294)
|
||||
#define ActCopAsgUsr (ActRemSvyQst + 295)
|
||||
#define ActPasAsgUsr (ActRemSvyQst + 296)
|
||||
#define ActRemTreAsgUsr (ActRemSvyQst + 297)
|
||||
#define ActFrmCreAsgUsr (ActRemSvyQst + 298)
|
||||
#define ActCreFolAsgUsr (ActRemSvyQst + 299)
|
||||
#define ActCreLnkAsgUsr (ActRemSvyQst + 300)
|
||||
#define ActRenFolAsgUsr (ActRemSvyQst + 301)
|
||||
#define ActRcvFilAsgUsrDZ (ActRemSvyQst + 302)
|
||||
#define ActRcvFilAsgUsrCla (ActRemSvyQst + 303)
|
||||
#define ActExpAsgUsr (ActRemSvyQst + 304)
|
||||
#define ActConAsgUsr (ActRemSvyQst + 305)
|
||||
#define ActZIPAsgUsr (ActRemSvyQst + 306)
|
||||
#define ActReqDatAsgUsr (ActRemSvyQst + 307)
|
||||
#define ActChgDatAsgUsr (ActRemSvyQst + 308)
|
||||
#define ActDowAsgUsr (ActRemSvyQst + 309)
|
||||
|
||||
#define ActReqRemFilWrkUsr (ActRemSvyQst + 308)
|
||||
#define ActRemFilWrkUsr (ActRemSvyQst + 309)
|
||||
#define ActRemFolWrkUsr (ActRemSvyQst + 310)
|
||||
#define ActCopWrkUsr (ActRemSvyQst + 311)
|
||||
#define ActPasWrkUsr (ActRemSvyQst + 312)
|
||||
#define ActRemTreWrkUsr (ActRemSvyQst + 313)
|
||||
#define ActFrmCreWrkUsr (ActRemSvyQst + 314)
|
||||
#define ActCreFolWrkUsr (ActRemSvyQst + 315)
|
||||
#define ActCreLnkWrkUsr (ActRemSvyQst + 316)
|
||||
#define ActRenFolWrkUsr (ActRemSvyQst + 317)
|
||||
#define ActRcvFilWrkUsrDZ (ActRemSvyQst + 318)
|
||||
#define ActRcvFilWrkUsrCla (ActRemSvyQst + 319)
|
||||
#define ActExpWrkUsr (ActRemSvyQst + 320)
|
||||
#define ActConWrkUsr (ActRemSvyQst + 321)
|
||||
#define ActZIPWrkUsr (ActRemSvyQst + 322)
|
||||
#define ActReqDatWrkUsr (ActRemSvyQst + 323)
|
||||
#define ActChgDatWrkUsr (ActRemSvyQst + 324)
|
||||
#define ActDowWrkUsr (ActRemSvyQst + 325)
|
||||
#define ActReqRemFilWrkUsr (ActRemSvyQst + 310)
|
||||
#define ActRemFilWrkUsr (ActRemSvyQst + 311)
|
||||
#define ActRemFolWrkUsr (ActRemSvyQst + 312)
|
||||
#define ActCopWrkUsr (ActRemSvyQst + 313)
|
||||
#define ActPasWrkUsr (ActRemSvyQst + 314)
|
||||
#define ActRemTreWrkUsr (ActRemSvyQst + 315)
|
||||
#define ActFrmCreWrkUsr (ActRemSvyQst + 316)
|
||||
#define ActCreFolWrkUsr (ActRemSvyQst + 317)
|
||||
#define ActCreLnkWrkUsr (ActRemSvyQst + 318)
|
||||
#define ActRenFolWrkUsr (ActRemSvyQst + 319)
|
||||
#define ActRcvFilWrkUsrDZ (ActRemSvyQst + 320)
|
||||
#define ActRcvFilWrkUsrCla (ActRemSvyQst + 321)
|
||||
#define ActExpWrkUsr (ActRemSvyQst + 322)
|
||||
#define ActConWrkUsr (ActRemSvyQst + 323)
|
||||
#define ActZIPWrkUsr (ActRemSvyQst + 324)
|
||||
#define ActReqDatWrkUsr (ActRemSvyQst + 325)
|
||||
#define ActChgDatWrkUsr (ActRemSvyQst + 326)
|
||||
#define ActDowWrkUsr (ActRemSvyQst + 327)
|
||||
|
||||
#define ActReqRemFilAsgCrs (ActRemSvyQst + 326)
|
||||
#define ActRemFilAsgCrs (ActRemSvyQst + 327)
|
||||
#define ActRemFolAsgCrs (ActRemSvyQst + 328)
|
||||
#define ActCopAsgCrs (ActRemSvyQst + 329)
|
||||
#define ActPasAsgCrs (ActRemSvyQst + 330)
|
||||
#define ActRemTreAsgCrs (ActRemSvyQst + 331)
|
||||
#define ActFrmCreAsgCrs (ActRemSvyQst + 332)
|
||||
#define ActCreFolAsgCrs (ActRemSvyQst + 333)
|
||||
#define ActCreLnkAsgCrs (ActRemSvyQst + 334)
|
||||
#define ActRenFolAsgCrs (ActRemSvyQst + 335)
|
||||
#define ActRcvFilAsgCrsDZ (ActRemSvyQst + 336)
|
||||
#define ActRcvFilAsgCrsCla (ActRemSvyQst + 337)
|
||||
#define ActExpAsgCrs (ActRemSvyQst + 338)
|
||||
#define ActConAsgCrs (ActRemSvyQst + 339)
|
||||
#define ActZIPAsgCrs (ActRemSvyQst + 340)
|
||||
#define ActReqDatAsgCrs (ActRemSvyQst + 341)
|
||||
#define ActChgDatAsgCrs (ActRemSvyQst + 342)
|
||||
#define ActDowAsgCrs (ActRemSvyQst + 343)
|
||||
#define ActReqRemFilAsgCrs (ActRemSvyQst + 328)
|
||||
#define ActRemFilAsgCrs (ActRemSvyQst + 329)
|
||||
#define ActRemFolAsgCrs (ActRemSvyQst + 330)
|
||||
#define ActCopAsgCrs (ActRemSvyQst + 331)
|
||||
#define ActPasAsgCrs (ActRemSvyQst + 332)
|
||||
#define ActRemTreAsgCrs (ActRemSvyQst + 333)
|
||||
#define ActFrmCreAsgCrs (ActRemSvyQst + 334)
|
||||
#define ActCreFolAsgCrs (ActRemSvyQst + 335)
|
||||
#define ActCreLnkAsgCrs (ActRemSvyQst + 336)
|
||||
#define ActRenFolAsgCrs (ActRemSvyQst + 337)
|
||||
#define ActRcvFilAsgCrsDZ (ActRemSvyQst + 338)
|
||||
#define ActRcvFilAsgCrsCla (ActRemSvyQst + 339)
|
||||
#define ActExpAsgCrs (ActRemSvyQst + 340)
|
||||
#define ActConAsgCrs (ActRemSvyQst + 341)
|
||||
#define ActZIPAsgCrs (ActRemSvyQst + 342)
|
||||
#define ActReqDatAsgCrs (ActRemSvyQst + 343)
|
||||
#define ActChgDatAsgCrs (ActRemSvyQst + 344)
|
||||
#define ActDowAsgCrs (ActRemSvyQst + 345)
|
||||
|
||||
#define ActReqRemFilWrkCrs (ActRemSvyQst + 344)
|
||||
#define ActRemFilWrkCrs (ActRemSvyQst + 345)
|
||||
#define ActRemFolWrkCrs (ActRemSvyQst + 346)
|
||||
#define ActCopWrkCrs (ActRemSvyQst + 347)
|
||||
#define ActPasWrkCrs (ActRemSvyQst + 348)
|
||||
#define ActRemTreWrkCrs (ActRemSvyQst + 349)
|
||||
#define ActFrmCreWrkCrs (ActRemSvyQst + 350)
|
||||
#define ActCreFolWrkCrs (ActRemSvyQst + 351)
|
||||
#define ActCreLnkWrkCrs (ActRemSvyQst + 352)
|
||||
#define ActRenFolWrkCrs (ActRemSvyQst + 353)
|
||||
#define ActRcvFilWrkCrsDZ (ActRemSvyQst + 354)
|
||||
#define ActRcvFilWrkCrsCla (ActRemSvyQst + 355)
|
||||
#define ActExpWrkCrs (ActRemSvyQst + 356)
|
||||
#define ActConWrkCrs (ActRemSvyQst + 357)
|
||||
#define ActZIPWrkCrs (ActRemSvyQst + 358)
|
||||
#define ActReqDatWrkCrs (ActRemSvyQst + 359)
|
||||
#define ActChgDatWrkCrs (ActRemSvyQst + 360)
|
||||
#define ActDowWrkCrs (ActRemSvyQst + 361)
|
||||
#define ActReqRemFilWrkCrs (ActRemSvyQst + 346)
|
||||
#define ActRemFilWrkCrs (ActRemSvyQst + 347)
|
||||
#define ActRemFolWrkCrs (ActRemSvyQst + 348)
|
||||
#define ActCopWrkCrs (ActRemSvyQst + 349)
|
||||
#define ActPasWrkCrs (ActRemSvyQst + 350)
|
||||
#define ActRemTreWrkCrs (ActRemSvyQst + 351)
|
||||
#define ActFrmCreWrkCrs (ActRemSvyQst + 352)
|
||||
#define ActCreFolWrkCrs (ActRemSvyQst + 353)
|
||||
#define ActCreLnkWrkCrs (ActRemSvyQst + 354)
|
||||
#define ActRenFolWrkCrs (ActRemSvyQst + 355)
|
||||
#define ActRcvFilWrkCrsDZ (ActRemSvyQst + 356)
|
||||
#define ActRcvFilWrkCrsCla (ActRemSvyQst + 357)
|
||||
#define ActExpWrkCrs (ActRemSvyQst + 358)
|
||||
#define ActConWrkCrs (ActRemSvyQst + 359)
|
||||
#define ActZIPWrkCrs (ActRemSvyQst + 360)
|
||||
#define ActReqDatWrkCrs (ActRemSvyQst + 361)
|
||||
#define ActChgDatWrkCrs (ActRemSvyQst + 362)
|
||||
#define ActDowWrkCrs (ActRemSvyQst + 363)
|
||||
|
||||
#define ActChgToSeeMrk (ActRemSvyQst + 362)
|
||||
#define ActChgToSeeMrk (ActRemSvyQst + 364)
|
||||
|
||||
#define ActSeeMrkCrs (ActRemSvyQst + 363)
|
||||
#define ActExpSeeMrkCrs (ActRemSvyQst + 364)
|
||||
#define ActConSeeMrkCrs (ActRemSvyQst + 365)
|
||||
#define ActReqDatSeeMrkCrs (ActRemSvyQst + 366)
|
||||
#define ActSeeMyMrkCrs (ActRemSvyQst + 367)
|
||||
#define ActSeeMrkCrs (ActRemSvyQst + 365)
|
||||
#define ActExpSeeMrkCrs (ActRemSvyQst + 366)
|
||||
#define ActConSeeMrkCrs (ActRemSvyQst + 367)
|
||||
#define ActReqDatSeeMrkCrs (ActRemSvyQst + 368)
|
||||
#define ActSeeMyMrkCrs (ActRemSvyQst + 369)
|
||||
|
||||
#define ActSeeMrkGrp (ActRemSvyQst + 368)
|
||||
#define ActExpSeeMrkGrp (ActRemSvyQst + 369)
|
||||
#define ActConSeeMrkGrp (ActRemSvyQst + 370)
|
||||
#define ActReqDatSeeMrkGrp (ActRemSvyQst + 371)
|
||||
#define ActSeeMyMrkGrp (ActRemSvyQst + 372)
|
||||
#define ActSeeMrkGrp (ActRemSvyQst + 370)
|
||||
#define ActExpSeeMrkGrp (ActRemSvyQst + 371)
|
||||
#define ActConSeeMrkGrp (ActRemSvyQst + 372)
|
||||
#define ActReqDatSeeMrkGrp (ActRemSvyQst + 373)
|
||||
#define ActSeeMyMrkGrp (ActRemSvyQst + 374)
|
||||
|
||||
#define ActChgToAdmMrk (ActRemSvyQst + 373)
|
||||
#define ActChgToAdmMrk (ActRemSvyQst + 375)
|
||||
|
||||
#define ActAdmMrkCrs (ActRemSvyQst + 374)
|
||||
#define ActReqRemFilMrkCrs (ActRemSvyQst + 375)
|
||||
#define ActRemFilMrkCrs (ActRemSvyQst + 376)
|
||||
#define ActRemFolMrkCrs (ActRemSvyQst + 377)
|
||||
#define ActCopMrkCrs (ActRemSvyQst + 378)
|
||||
#define ActPasMrkCrs (ActRemSvyQst + 379)
|
||||
#define ActRemTreMrkCrs (ActRemSvyQst + 380)
|
||||
#define ActFrmCreMrkCrs (ActRemSvyQst + 381)
|
||||
#define ActCreFolMrkCrs (ActRemSvyQst + 382)
|
||||
#define ActRenFolMrkCrs (ActRemSvyQst + 383)
|
||||
#define ActRcvFilMrkCrsDZ (ActRemSvyQst + 384)
|
||||
#define ActRcvFilMrkCrsCla (ActRemSvyQst + 385)
|
||||
#define ActExpAdmMrkCrs (ActRemSvyQst + 386)
|
||||
#define ActConAdmMrkCrs (ActRemSvyQst + 387)
|
||||
#define ActZIPAdmMrkCrs (ActRemSvyQst + 388)
|
||||
#define ActUnhMrkCrs (ActRemSvyQst + 389)
|
||||
#define ActHidMrkCrs (ActRemSvyQst + 390)
|
||||
#define ActReqDatAdmMrkCrs (ActRemSvyQst + 391)
|
||||
#define ActChgDatAdmMrkCrs (ActRemSvyQst + 392)
|
||||
#define ActDowAdmMrkCrs (ActRemSvyQst + 393)
|
||||
#define ActChgNumRowHeaCrs (ActRemSvyQst + 394)
|
||||
#define ActChgNumRowFooCrs (ActRemSvyQst + 395)
|
||||
#define ActAdmMrkCrs (ActRemSvyQst + 376)
|
||||
#define ActReqRemFilMrkCrs (ActRemSvyQst + 377)
|
||||
#define ActRemFilMrkCrs (ActRemSvyQst + 378)
|
||||
#define ActRemFolMrkCrs (ActRemSvyQst + 379)
|
||||
#define ActCopMrkCrs (ActRemSvyQst + 380)
|
||||
#define ActPasMrkCrs (ActRemSvyQst + 381)
|
||||
#define ActRemTreMrkCrs (ActRemSvyQst + 382)
|
||||
#define ActFrmCreMrkCrs (ActRemSvyQst + 383)
|
||||
#define ActCreFolMrkCrs (ActRemSvyQst + 384)
|
||||
#define ActRenFolMrkCrs (ActRemSvyQst + 385)
|
||||
#define ActRcvFilMrkCrsDZ (ActRemSvyQst + 386)
|
||||
#define ActRcvFilMrkCrsCla (ActRemSvyQst + 387)
|
||||
#define ActExpAdmMrkCrs (ActRemSvyQst + 388)
|
||||
#define ActConAdmMrkCrs (ActRemSvyQst + 389)
|
||||
#define ActZIPAdmMrkCrs (ActRemSvyQst + 390)
|
||||
#define ActUnhMrkCrs (ActRemSvyQst + 391)
|
||||
#define ActHidMrkCrs (ActRemSvyQst + 392)
|
||||
#define ActReqDatAdmMrkCrs (ActRemSvyQst + 393)
|
||||
#define ActChgDatAdmMrkCrs (ActRemSvyQst + 394)
|
||||
#define ActDowAdmMrkCrs (ActRemSvyQst + 395)
|
||||
#define ActChgNumRowHeaCrs (ActRemSvyQst + 396)
|
||||
#define ActChgNumRowFooCrs (ActRemSvyQst + 397)
|
||||
|
||||
#define ActAdmMrkGrp (ActRemSvyQst + 396)
|
||||
#define ActReqRemFilMrkGrp (ActRemSvyQst + 397)
|
||||
#define ActRemFilMrkGrp (ActRemSvyQst + 398)
|
||||
#define ActRemFolMrkGrp (ActRemSvyQst + 399)
|
||||
#define ActCopMrkGrp (ActRemSvyQst + 400)
|
||||
#define ActPasMrkGrp (ActRemSvyQst + 401)
|
||||
#define ActRemTreMrkGrp (ActRemSvyQst + 402)
|
||||
#define ActFrmCreMrkGrp (ActRemSvyQst + 403)
|
||||
#define ActCreFolMrkGrp (ActRemSvyQst + 404)
|
||||
#define ActRenFolMrkGrp (ActRemSvyQst + 405)
|
||||
#define ActRcvFilMrkGrpDZ (ActRemSvyQst + 406)
|
||||
#define ActRcvFilMrkGrpCla (ActRemSvyQst + 407)
|
||||
#define ActExpAdmMrkGrp (ActRemSvyQst + 408)
|
||||
#define ActConAdmMrkGrp (ActRemSvyQst + 409)
|
||||
#define ActZIPAdmMrkGrp (ActRemSvyQst + 410)
|
||||
#define ActUnhMrkGrp (ActRemSvyQst + 411)
|
||||
#define ActHidMrkGrp (ActRemSvyQst + 412)
|
||||
#define ActReqDatAdmMrkGrp (ActRemSvyQst + 413)
|
||||
#define ActChgDatAdmMrkGrp (ActRemSvyQst + 414)
|
||||
#define ActDowAdmMrkGrp (ActRemSvyQst + 415)
|
||||
#define ActChgNumRowHeaGrp (ActRemSvyQst + 416)
|
||||
#define ActChgNumRowFooGrp (ActRemSvyQst + 417)
|
||||
#define ActAdmMrkGrp (ActRemSvyQst + 398)
|
||||
#define ActReqRemFilMrkGrp (ActRemSvyQst + 399)
|
||||
#define ActRemFilMrkGrp (ActRemSvyQst + 400)
|
||||
#define ActRemFolMrkGrp (ActRemSvyQst + 401)
|
||||
#define ActCopMrkGrp (ActRemSvyQst + 402)
|
||||
#define ActPasMrkGrp (ActRemSvyQst + 403)
|
||||
#define ActRemTreMrkGrp (ActRemSvyQst + 404)
|
||||
#define ActFrmCreMrkGrp (ActRemSvyQst + 405)
|
||||
#define ActCreFolMrkGrp (ActRemSvyQst + 406)
|
||||
#define ActRenFolMrkGrp (ActRemSvyQst + 407)
|
||||
#define ActRcvFilMrkGrpDZ (ActRemSvyQst + 408)
|
||||
#define ActRcvFilMrkGrpCla (ActRemSvyQst + 409)
|
||||
#define ActExpAdmMrkGrp (ActRemSvyQst + 410)
|
||||
#define ActConAdmMrkGrp (ActRemSvyQst + 411)
|
||||
#define ActZIPAdmMrkGrp (ActRemSvyQst + 412)
|
||||
#define ActUnhMrkGrp (ActRemSvyQst + 413)
|
||||
#define ActHidMrkGrp (ActRemSvyQst + 414)
|
||||
#define ActReqDatAdmMrkGrp (ActRemSvyQst + 415)
|
||||
#define ActChgDatAdmMrkGrp (ActRemSvyQst + 416)
|
||||
#define ActDowAdmMrkGrp (ActRemSvyQst + 417)
|
||||
#define ActChgNumRowHeaGrp (ActRemSvyQst + 418)
|
||||
#define ActChgNumRowFooGrp (ActRemSvyQst + 419)
|
||||
|
||||
#define ActReqRemFilBrf (ActRemSvyQst + 418)
|
||||
#define ActRemFilBrf (ActRemSvyQst + 419)
|
||||
#define ActRemFolBrf (ActRemSvyQst + 420)
|
||||
#define ActCopBrf (ActRemSvyQst + 421)
|
||||
#define ActPasBrf (ActRemSvyQst + 422)
|
||||
#define ActRemTreBrf (ActRemSvyQst + 423)
|
||||
#define ActFrmCreBrf (ActRemSvyQst + 424)
|
||||
#define ActCreFolBrf (ActRemSvyQst + 425)
|
||||
#define ActCreLnkBrf (ActRemSvyQst + 426)
|
||||
#define ActRenFolBrf (ActRemSvyQst + 427)
|
||||
#define ActRcvFilBrfDZ (ActRemSvyQst + 428)
|
||||
#define ActRcvFilBrfCla (ActRemSvyQst + 429)
|
||||
#define ActExpBrf (ActRemSvyQst + 430)
|
||||
#define ActConBrf (ActRemSvyQst + 431)
|
||||
#define ActZIPBrf (ActRemSvyQst + 432)
|
||||
#define ActReqDatBrf (ActRemSvyQst + 433)
|
||||
#define ActChgDatBrf (ActRemSvyQst + 434)
|
||||
#define ActDowBrf (ActRemSvyQst + 435)
|
||||
#define ActReqRemOldBrf (ActRemSvyQst + 436)
|
||||
#define ActRemOldBrf (ActRemSvyQst + 437)
|
||||
#define ActReqRemFilBrf (ActRemSvyQst + 420)
|
||||
#define ActRemFilBrf (ActRemSvyQst + 421)
|
||||
#define ActRemFolBrf (ActRemSvyQst + 422)
|
||||
#define ActCopBrf (ActRemSvyQst + 423)
|
||||
#define ActPasBrf (ActRemSvyQst + 424)
|
||||
#define ActRemTreBrf (ActRemSvyQst + 425)
|
||||
#define ActFrmCreBrf (ActRemSvyQst + 426)
|
||||
#define ActCreFolBrf (ActRemSvyQst + 427)
|
||||
#define ActCreLnkBrf (ActRemSvyQst + 428)
|
||||
#define ActRenFolBrf (ActRemSvyQst + 429)
|
||||
#define ActRcvFilBrfDZ (ActRemSvyQst + 430)
|
||||
#define ActRcvFilBrfCla (ActRemSvyQst + 431)
|
||||
#define ActExpBrf (ActRemSvyQst + 432)
|
||||
#define ActConBrf (ActRemSvyQst + 433)
|
||||
#define ActZIPBrf (ActRemSvyQst + 434)
|
||||
#define ActReqDatBrf (ActRemSvyQst + 435)
|
||||
#define ActChgDatBrf (ActRemSvyQst + 436)
|
||||
#define ActDowBrf (ActRemSvyQst + 437)
|
||||
#define ActReqRemOldBrf (ActRemSvyQst + 438)
|
||||
#define ActRemOldBrf (ActRemSvyQst + 439)
|
||||
|
||||
/*****************************************************************************/
|
||||
/******************************* Users tab ***********************************/
|
||||
|
|
167
swad_browser.c
167
swad_browser.c
|
@ -449,6 +449,39 @@ static const Act_Action_t Brw_ActReqDatFile[Brw_NUM_TYPES_FILE_BROWSER] =
|
|||
[Brw_ADMI_ASS_PRJ] = ActReqDatAssPrj,
|
||||
};
|
||||
|
||||
static const Act_Action_t Brw_ActReqLnk[Brw_NUM_TYPES_FILE_BROWSER] =
|
||||
{
|
||||
[Brw_UNKNOWN ] = ActUnk,
|
||||
[Brw_SHOW_DOC_CRS] = ActReqLnkSeeDocCrs,
|
||||
[Brw_SHOW_MRK_CRS] = ActUnk, // ActReqLnkSeeMrkCrs,
|
||||
[Brw_ADMI_DOC_CRS] = ActReqLnkAdmDocCrs,
|
||||
[Brw_ADMI_SHR_CRS] = ActUnk,
|
||||
[Brw_ADMI_SHR_GRP] = ActUnk,
|
||||
[Brw_ADMI_WRK_USR] = ActUnk,
|
||||
[Brw_ADMI_WRK_CRS] = ActUnk,
|
||||
[Brw_ADMI_MRK_CRS] = ActUnk, // ActReqLnkAdmMrkCrs,
|
||||
[Brw_ADMI_BRF_USR] = ActUnk,
|
||||
[Brw_SHOW_DOC_GRP] = ActUnk,
|
||||
[Brw_ADMI_DOC_GRP] = ActUnk,
|
||||
[Brw_SHOW_MRK_GRP] = ActUnk, // ActReqLnkSeeMrkGrp,
|
||||
[Brw_ADMI_MRK_GRP] = ActUnk, // ActReqLnkAdmMrkGrp,
|
||||
[Brw_ADMI_ASG_USR] = ActUnk,
|
||||
[Brw_ADMI_ASG_CRS] = ActUnk,
|
||||
[Brw_SHOW_DOC_DEG] = ActUnk,
|
||||
[Brw_ADMI_DOC_DEG] = ActUnk,
|
||||
[Brw_SHOW_DOC_CTR] = ActUnk,
|
||||
[Brw_ADMI_DOC_CTR] = ActUnk,
|
||||
[Brw_SHOW_DOC_INS] = ActUnk,
|
||||
[Brw_ADMI_DOC_INS] = ActUnk,
|
||||
[Brw_ADMI_SHR_DEG] = ActUnk,
|
||||
[Brw_ADMI_SHR_CTR] = ActUnk,
|
||||
[Brw_ADMI_SHR_INS] = ActUnk,
|
||||
[Brw_ADMI_TCH_CRS] = ActUnk,
|
||||
[Brw_ADMI_TCH_GRP] = ActUnk,
|
||||
[Brw_ADMI_DOC_PRJ] = ActUnk,
|
||||
[Brw_ADMI_ASS_PRJ] = ActUnk,
|
||||
};
|
||||
|
||||
static const Act_Action_t Brw_ActDowFile[Brw_NUM_TYPES_FILE_BROWSER] =
|
||||
{
|
||||
[Brw_UNKNOWN ] = ActUnk,
|
||||
|
@ -1260,6 +1293,9 @@ static void Brw_PutFormToCreateALink (const char *FileNameToShow);
|
|||
static bool Brw_RcvFileInFileBrw (Brw_UploadType_t UploadType);
|
||||
static bool Brw_CheckIfUploadIsAllowed (const char *FileType);
|
||||
|
||||
static void Brw_PutIconToGetLinkToFile (void *FileMetadata);
|
||||
static void Brw_PutParamsToGetLinkToFile (void *FileMetadata);
|
||||
|
||||
static bool Brw_CheckIfICanEditFileMetadata (long IAmTheOwner);
|
||||
static bool Brw_CheckIfIAmOwnerOfFile (long PublisherUsrCod);
|
||||
static void Brw_WriteBigLinkToDownloadFile (const char *URL,
|
||||
|
@ -1523,6 +1559,7 @@ void Brw_GetParAndInitFileBrowser (void)
|
|||
case ActConSeeDocCrs:
|
||||
case ActZIPSeeDocCrs:
|
||||
case ActReqDatSeeDocCrs:
|
||||
case ActReqLnkSeeDocCrs:
|
||||
case ActDowSeeDocCrs:
|
||||
Gbl.FileBrowser.Type = Brw_SHOW_DOC_CRS;
|
||||
break;
|
||||
|
@ -1559,6 +1596,7 @@ void Brw_GetParAndInitFileBrowser (void)
|
|||
case ActHidDocCrs:
|
||||
case ActReqDatAdmDocCrs:
|
||||
case ActChgDatAdmDocCrs:
|
||||
case ActReqLnkAdmDocCrs:
|
||||
case ActDowAdmDocCrs:
|
||||
Gbl.FileBrowser.Type = Brw_ADMI_DOC_CRS;
|
||||
break;
|
||||
|
@ -7842,6 +7880,7 @@ void Brw_ShowFileMetadata (void)
|
|||
bool ICanEdit;
|
||||
bool ICanChangePublic = false;
|
||||
bool FileHasPublisher;
|
||||
bool PutIconToGetLink;
|
||||
Brw_License_t License;
|
||||
unsigned LicenseUnsigned;
|
||||
|
||||
|
@ -7928,6 +7967,23 @@ void Brw_ShowFileMetadata (void)
|
|||
FileMetadata.FilFolLnk.Name,
|
||||
FileNameToShow);
|
||||
|
||||
/***** Begin box *****/
|
||||
PutIconToGetLink = (Gbl.FileBrowser.Type == Brw_SHOW_DOC_CRS || // Only document zone
|
||||
Gbl.FileBrowser.Type == Brw_ADMI_DOC_CRS) &&
|
||||
(FileMetadata.FilFolLnk.Type == Brw_IS_FILE || // Only files or links
|
||||
FileMetadata.FilFolLnk.Type == Brw_IS_LINK) &&
|
||||
(Gbl.Usrs.Me.Role.Logged == Rol_TCH || // Only if I am teacher or superuser
|
||||
Gbl.Usrs.Me.Role.Logged == Rol_SYS_ADM);
|
||||
if (PutIconToGetLink)
|
||||
Box_BoxShadowBegin (NULL,NULL,
|
||||
Brw_PutIconToGetLinkToFile,&FileMetadata,
|
||||
NULL);
|
||||
else
|
||||
Box_BoxShadowBegin (NULL,NULL,
|
||||
NULL,NULL,
|
||||
NULL);
|
||||
|
||||
|
||||
/***** Begin form to update the metadata of a file *****/
|
||||
if (ICanEdit) // I can edit file properties
|
||||
{
|
||||
|
@ -7950,16 +8006,14 @@ void Brw_ShowFileMetadata (void)
|
|||
}
|
||||
|
||||
Frm_BeginForm (Brw_ActRecDatFile[Gbl.FileBrowser.Type]);
|
||||
Brw_PutParamsFileBrowser (NULL, // Not used
|
||||
NULL, // Not used
|
||||
Brw_PutParamsFileBrowser (NULL, // Not used
|
||||
NULL, // Not used
|
||||
Brw_IS_UNKNOWN, // Not used
|
||||
FileMetadata.FilCod);
|
||||
}
|
||||
|
||||
/***** Begin box and table *****/
|
||||
Box_BoxTableShadowBegin (NULL,NULL,
|
||||
NULL,NULL,
|
||||
NULL,2);
|
||||
/***** Begin table *****/
|
||||
HTM_TABLE_BeginWidePadding (2);
|
||||
|
||||
/***** Link to download the file *****/
|
||||
HTM_TR_Begin (NULL);
|
||||
|
@ -7976,7 +8030,7 @@ void Brw_ShowFileMetadata (void)
|
|||
Frm_LabelColumn ("RT",NULL,Txt_Filename);
|
||||
|
||||
HTM_TD_Begin ("class=\"LB DAT_STRONG_%s\"",
|
||||
The_GetSuffix ());
|
||||
The_GetSuffix ());
|
||||
Brw_WriteSmallLinkToDownloadFile (URL,&FileMetadata,FileNameToShow);
|
||||
HTM_TD_End ();
|
||||
|
||||
|
@ -7988,13 +8042,13 @@ void Brw_ShowFileMetadata (void)
|
|||
Frm_LabelColumn ("RT",NULL,Txt_Uploaded_by);
|
||||
|
||||
HTM_TD_Begin ("class=\"LB DAT_STRONG_%s\"",
|
||||
The_GetSuffix ());
|
||||
The_GetSuffix ());
|
||||
if (FileHasPublisher)
|
||||
{
|
||||
/* Show photo */
|
||||
Pho_ShowUsrPhotoIfAllowed (&PublisherUsrDat,
|
||||
ClassPhoto[Gbl.Prefs.PhotoShape],Pho_ZOOM,
|
||||
false);
|
||||
ClassPhoto[Gbl.Prefs.PhotoShape],Pho_ZOOM,
|
||||
false);
|
||||
|
||||
/* Write name */
|
||||
HTM_NBSP ();
|
||||
|
@ -8018,7 +8072,7 @@ void Brw_ShowFileMetadata (void)
|
|||
Frm_LabelColumn ("RT",NULL,Txt_File_size);
|
||||
|
||||
HTM_TD_Begin ("class=\"LB DAT_STRONG_%s\"",
|
||||
The_GetSuffix ());
|
||||
The_GetSuffix ());
|
||||
HTM_Txt (FileSizeStr);
|
||||
HTM_TD_End ();
|
||||
|
||||
|
@ -8030,7 +8084,7 @@ void Brw_ShowFileMetadata (void)
|
|||
Frm_LabelColumn ("RT",NULL,Txt_Date_of_creation);
|
||||
|
||||
HTM_TD_Begin ("id=\"filedate\" class=\"LB DAT_STRONG_%s\"",
|
||||
The_GetSuffix ());
|
||||
The_GetSuffix ());
|
||||
Dat_WriteLocalDateHMSFromUTC ("filedate",FileMetadata.Time,
|
||||
Gbl.Prefs.DateFormat,Dat_SEPARATOR_COMMA,
|
||||
true,true,true,0x7);
|
||||
|
@ -8043,12 +8097,12 @@ void Brw_ShowFileMetadata (void)
|
|||
|
||||
/* Label */
|
||||
Frm_LabelColumn ("RT",ICanChangePublic ? "PublicFile" :
|
||||
NULL,
|
||||
Txt_Availability);
|
||||
NULL,
|
||||
Txt_Availability);
|
||||
|
||||
/* Data */
|
||||
HTM_TD_Begin ("class=\"LT DAT_STRONG_%s\"",
|
||||
The_GetSuffix ());
|
||||
The_GetSuffix ());
|
||||
if (ICanChangePublic) // I can change file to public
|
||||
{
|
||||
HTM_SELECT_Begin (HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
|
@ -8073,12 +8127,12 @@ void Brw_ShowFileMetadata (void)
|
|||
|
||||
/* Label */
|
||||
Frm_LabelColumn ("RT",ICanEdit ? "License" :
|
||||
NULL,
|
||||
Txt_License);
|
||||
NULL,
|
||||
Txt_License);
|
||||
|
||||
/* Data */
|
||||
HTM_TD_Begin ("class=\"LT DAT_STRONG_%s\"",
|
||||
The_GetSuffix ());
|
||||
The_GetSuffix ());
|
||||
if (ICanEdit) // I can edit file properties
|
||||
{
|
||||
HTM_SELECT_Begin (HTM_DONT_SUBMIT_ON_CHANGE,
|
||||
|
@ -8105,10 +8159,10 @@ void Brw_ShowFileMetadata (void)
|
|||
{
|
||||
HTM_TR_Begin (NULL);
|
||||
|
||||
Frm_LabelColumn ("RT",NULL,Txt_My_views);
|
||||
Frm_LabelColumn ("RT",NULL,Txt_My_views);
|
||||
|
||||
HTM_TD_Begin ("class=\"LB DAT_STRONG_%s\"",
|
||||
The_GetSuffix ());
|
||||
The_GetSuffix ());
|
||||
HTM_Unsigned (FileMetadata.NumMyViews);
|
||||
HTM_TD_End ();
|
||||
|
||||
|
@ -8121,7 +8175,7 @@ void Brw_ShowFileMetadata (void)
|
|||
Frm_LabelColumn ("RT",NULL,Txt_Identified_views);
|
||||
|
||||
HTM_TD_Begin ("class=\"LB DAT_STRONG_%s\"",
|
||||
The_GetSuffix ());
|
||||
The_GetSuffix ());
|
||||
HTM_TxtF ("%u ",FileMetadata.NumViewsFromLoggedUsrs);
|
||||
HTM_TxtF ("(%u %s)",
|
||||
FileMetadata.NumLoggedUsrs,
|
||||
|
@ -8137,24 +8191,24 @@ void Brw_ShowFileMetadata (void)
|
|||
Frm_LabelColumn ("RT",NULL,Txt_Public_views);
|
||||
|
||||
HTM_TD_Begin ("class=\"LB DAT_STRONG_%s\"",
|
||||
The_GetSuffix ());
|
||||
The_GetSuffix ());
|
||||
HTM_Unsigned (FileMetadata.NumPublicViews);
|
||||
HTM_TD_End ();
|
||||
|
||||
HTM_TR_End ();
|
||||
|
||||
/***** End box *****/
|
||||
/***** End table *****/
|
||||
HTM_TABLE_End ();
|
||||
|
||||
/***** End form *****/
|
||||
if (ICanEdit) // I can edit file properties
|
||||
{
|
||||
/* End table, send button and end box */
|
||||
Box_BoxTableWithButtonEnd (Btn_CONFIRM_BUTTON,Txt_Save_file_properties);
|
||||
|
||||
/* End form */
|
||||
Btn_PutButton (Btn_CONFIRM_BUTTON,Txt_Save_file_properties);
|
||||
Frm_EndForm ();
|
||||
}
|
||||
else
|
||||
/* End table and box */
|
||||
Box_BoxTableEnd ();
|
||||
|
||||
/***** End box *****/
|
||||
Box_BoxEnd ();
|
||||
|
||||
/***** Mark possible notifications as seen *****/
|
||||
switch (Gbl.FileBrowser.Type)
|
||||
|
@ -8231,6 +8285,57 @@ void Brw_ShowFileMetadata (void)
|
|||
Brw_ShowAgainFileBrowserOrWorks ();
|
||||
}
|
||||
|
||||
/*****************************************************************************/
|
||||
/*********************** Put icon to get link to file ************************/
|
||||
/*****************************************************************************/
|
||||
|
||||
static void Brw_PutIconToGetLinkToFile (void *FileMetadata)
|
||||
{
|
||||
Ico_PutContextualIconToGetLink (Brw_ActReqLnk[Gbl.FileBrowser.Type],
|
||||
Brw_PutParamsToGetLinkToFile,FileMetadata);
|
||||
}
|
||||
|
||||
static void Brw_PutParamsToGetLinkToFile (void *FileMetadata)
|
||||
{
|
||||
if (FileMetadata)
|
||||
Brw_PutParamsFileBrowser (NULL, // Not used
|
||||
NULL, // Not used
|
||||
Brw_IS_UNKNOWN, // Not used
|
||||
((struct FileMetadata *) FileMetadata)->FilCod);
|
||||
}
|
||||
|
||||
/*****************************************************************************/
|
||||
/*********************** Put icon to get link to file ************************/
|
||||
/*****************************************************************************/
|
||||
|
||||
void Brw_GetLinkToFile (void)
|
||||
{
|
||||
extern const char *Txt_Link_to_resource_X_copied_into_clipboard;
|
||||
struct FileMetadata FileMetadata;
|
||||
bool Found;
|
||||
|
||||
/***** Get parameters related to file browser *****/
|
||||
Brw_GetParAndInitFileBrowser ();
|
||||
|
||||
/***** Get file metadata *****/
|
||||
FileMetadata.FilCod = Brw_GetParamFilCod ();
|
||||
Brw_GetFileMetadataByCod (&FileMetadata);
|
||||
Found = Brw_GetFileTypeSizeAndDate (&FileMetadata);
|
||||
|
||||
if (Found)
|
||||
{
|
||||
/***** Copy link to file into resource clipboard *****/
|
||||
// Prg_DB_CopyToClipboard (&FileMetadata);
|
||||
|
||||
/***** Write sucess message *****/
|
||||
Ale_ShowAlert (Ale_SUCCESS,Txt_Link_to_resource_X_copied_into_clipboard,
|
||||
FileMetadata.FilFolLnk.Name);
|
||||
}
|
||||
|
||||
/***** Show again the file browser *****/
|
||||
Brw_ShowAgainFileBrowserOrWorks ();
|
||||
}
|
||||
|
||||
/*****************************************************************************/
|
||||
/******************* Download a file from a file browser *********************/
|
||||
/*****************************************************************************/
|
||||
|
@ -8717,7 +8822,7 @@ void Brw_ChgFileMetadata (void)
|
|||
|
||||
/***** Write sucess message *****/
|
||||
Ale_ShowAlert (Ale_SUCCESS,Txt_The_properties_of_file_X_have_been_saved,
|
||||
Gbl.FileBrowser.FilFolLnk.Name);
|
||||
FileMetadata.FilFolLnk.Name);
|
||||
}
|
||||
else
|
||||
/***** Write error message and exit *****/
|
||||
|
|
|
@ -225,6 +225,9 @@ void Brw_SetDocumentAsVisible (void);
|
|||
void Brw_SetDocumentAsHidden (void);
|
||||
bool Brw_CheckIfFileOrFolderIsSetAsHiddenInDB (Brw_FileType_t FileType,const char *Path);
|
||||
void Brw_ShowFileMetadata (void);
|
||||
|
||||
void Brw_GetLinkToFile (void);
|
||||
|
||||
void Brw_DownloadFile (void);
|
||||
void Brw_GetLinkToDownloadFile (const char *PathInTree,const char *FileName,char *URL);
|
||||
void Brw_ChgFileMetadata (void);
|
||||
|
|
|
@ -606,13 +606,15 @@ TODO: Fix bug: error al enviar un mensaje a dos recipientes, error on duplicate
|
|||
|
||||
TODO: Attach pdf files in multimedia.
|
||||
*/
|
||||
#define Log_PLATFORM_VERSION "SWAD 21.116.3 (2022-09-10)"
|
||||
#define Log_PLATFORM_VERSION "SWAD 21.117 (2022-09-12)"
|
||||
#define CSS_FILE "swad21.107.1.css"
|
||||
#define JS_FILE "swad21.100.js"
|
||||
/*
|
||||
Version 21.117: Sep 10, 2022 New database table with clipboards for program resources. (? lines)
|
||||
Version 21.117: Sep 12, 2022 New database table with clipboards for program resources.
|
||||
New actions to get link to file in course document area. (329514 lines)
|
||||
1 change necessary in database:
|
||||
CREATE TABLE IF NOT EXISTS prg_clipboards...
|
||||
ALTER TABLE prg_resources ADD COLUMN Type ENUM('none','asg','cfe','exa','gam','svy','doc','mrk','att','for') NOT NULL DEFAULT 'none' AFTER Hidden;
|
||||
CREATE TABLE IF NOT EXISTS prg_clipboards (UsrCod INT NOT NULL,CrsCod INT NOT NULL,Type ENUM('none','asg','cfe','exa','gam','svy','doc','mrk','att','for') NOT NULL DEFAULT 'none',Cod INT NOT NULL DEFAULT -1,CopyTime TIMESTAMP,INDEX(UsrCod,CrsCod,CopyTime),INDEX(CrsCod,Type,Cod),INDEX(CopyTime));
|
||||
If you want to use MyISAM:
|
||||
ALTER TABLE prg_clipboards ENGINE=MyISAM;
|
||||
|
||||
|
|
112
swad_database.c
112
swad_database.c
|
@ -727,7 +727,15 @@ mysql> DESCRIBE crs_info_read;
|
|||
DB_CreateTable ("CREATE TABLE IF NOT EXISTS crs_info_read ("
|
||||
"UsrCod INT NOT NULL,"
|
||||
"CrsCod INT NOT NULL,"
|
||||
"InfoType ENUM('intro','description','theory','practices','bibliography','FAQ','links','assessment') NOT NULL,"
|
||||
"InfoType ENUM("
|
||||
"'intro',"
|
||||
"'description',"
|
||||
"'theory',"
|
||||
"'practices',"
|
||||
"'bibliography',"
|
||||
"'FAQ',"
|
||||
"'links',"
|
||||
"'assessment') NOT NULL,"
|
||||
"UNIQUE INDEX(UsrCod,CrsCod,InfoType))");
|
||||
|
||||
/***** Table crs_info_src *****/
|
||||
|
@ -745,7 +753,15 @@ mysql> DESCRIBE crs_info_src;
|
|||
*/
|
||||
DB_CreateTable ("CREATE TABLE IF NOT EXISTS crs_info_src ("
|
||||
"CrsCod INT NOT NULL DEFAULT -1,"
|
||||
"InfoType ENUM('intro','description','theory','practices','bibliography','FAQ','links','assessment') NOT NULL,"
|
||||
"InfoType ENUM("
|
||||
"'intro',"
|
||||
"'description',"
|
||||
"'theory',"
|
||||
"'practices',"
|
||||
"'bibliography',"
|
||||
"'FAQ',"
|
||||
"'links',"
|
||||
"'assessment') NOT NULL,"
|
||||
"InfoSrc ENUM('none','editor','plain_text','rich_text','page','URL') NOT NULL,"
|
||||
"MustBeRead ENUM('N','Y') NOT NULL DEFAULT 'N',"
|
||||
"UNIQUE INDEX(CrsCod,InfoType))");
|
||||
|
@ -765,7 +781,15 @@ mysql> DESCRIBE crs_info_txt;
|
|||
*/
|
||||
DB_CreateTable ("CREATE TABLE IF NOT EXISTS crs_info_txt ("
|
||||
"CrsCod INT NOT NULL DEFAULT -1,"
|
||||
"InfoType ENUM('intro','description','theory','practices','bibliography','FAQ','links','assessment') NOT NULL,"
|
||||
"InfoType ENUM("
|
||||
"'intro',"
|
||||
"'description',"
|
||||
"'theory',"
|
||||
"'practices',"
|
||||
"'bibliography',"
|
||||
"'FAQ',"
|
||||
"'links',"
|
||||
"'assessment') NOT NULL,"
|
||||
"InfoTxtHTML LONGTEXT NOT NULL,"
|
||||
"InfoTxtMD LONGTEXT NOT NULL,"
|
||||
"UNIQUE INDEX(CrsCod,InfoType))");
|
||||
|
@ -2094,7 +2118,15 @@ mysql> DESCRIBE med_media;
|
|||
*/
|
||||
DB_CreateTable ("CREATE TABLE IF NOT EXISTS med_media ("
|
||||
"MedCod INT NOT NULL AUTO_INCREMENT,"
|
||||
"Type ENUM('none','jpg','gif','mp4','webm','ogg','youtube','embed') NOT NULL DEFAULT 'none',"
|
||||
"Type ENUM("
|
||||
"'none',"
|
||||
"'jpg',"
|
||||
"'gif',"
|
||||
"'mp4',"
|
||||
"'webm',"
|
||||
"'ogg',"
|
||||
"'youtube',"
|
||||
"'embed') NOT NULL DEFAULT 'none',"
|
||||
"Name VARCHAR(43) NOT NULL DEFAULT ''," // Med_BYTES_NAME
|
||||
"URL VARCHAR(255) NOT NULL DEFAULT ''," // Cns_MAX_BYTES_WWW
|
||||
"Title VARCHAR(2047) NOT NULL DEFAULT ''," // Med_MAX_BYTES_TITLE
|
||||
|
@ -2421,26 +2453,36 @@ mysql> DESCRIBE plg_plugins;
|
|||
/***** Table prg_clipboards *****/
|
||||
/*
|
||||
mysql> DESCRIBE prg_clipboards;
|
||||
+-------------+------------+------+-----+-------------------+-----------------------------+
|
||||
| Field | Type | Null | Key | Default | Extra |
|
||||
+-------------+------------+------+-----+-------------------+-----------------------------+
|
||||
| UsrCod | int(11) | NO | PRI | NULL | |
|
||||
| FileBrowser | tinyint(4) | NO | MUL | NULL | |
|
||||
| Cod | int(11) | NO | | -1 | |
|
||||
| WorksUsrCod | int(11) | NO | MUL | NULL | |
|
||||
| FileType | tinyint(4) | NO | | 0 | |
|
||||
| Path | text | NO | | NULL | |
|
||||
| CopyTime | timestamp | NO | | CURRENT_TIMESTAMP | on update CURRENT_TIMESTAMP |
|
||||
+-------------+------------+------+-----+-------------------+-----------------------------+
|
||||
7 rows in set (0.00 sec)
|
||||
+----------+--------------------------------------------------------------------+------+-----+---------+-------+
|
||||
| Field | Type | Null | Key | Default | Extra |
|
||||
+----------+--------------------------------------------------------------------+------+-----+---------+-------+
|
||||
| UsrCod | int | NO | MUL | NULL | |
|
||||
| CrsCod | int | NO | MUL | NULL | |
|
||||
| Type | enum('none','asg','cfe','exa','gam','svy','doc','mrk','att','for') | NO | | none | |
|
||||
| Cod | int | NO | | -1 | |
|
||||
| CopyTime | timestamp | YES | MUL | NULL | |
|
||||
+----------+--------------------------------------------------------------------+------+-----+---------+-------+
|
||||
5 rows in set (0,00 sec)
|
||||
*/
|
||||
DB_CreateTable ("CREATE TABLE IF NOT EXISTS prg_clipboards ("
|
||||
"UsrCod INT NOT NULL,"
|
||||
"RscType TINYINT NOT NULL DEFAULT 0,"
|
||||
"CrsCod INT NOT NULL,"
|
||||
"Type ENUM("
|
||||
"'none',"
|
||||
"'asg',"
|
||||
"'cfe',"
|
||||
"'exa',"
|
||||
"'gam',"
|
||||
"'svy',"
|
||||
"'doc',"
|
||||
"'mrk',"
|
||||
"'att',"
|
||||
"'for') NOT NULL DEFAULT 'none',"
|
||||
"Cod INT NOT NULL DEFAULT -1,"
|
||||
"CopyTime TIMESTAMP,"
|
||||
"INDEX(UsrCod),"
|
||||
"INDEX(RscType,Cod)))");
|
||||
"INDEX(UsrCod,CrsCod,CopyTime),"
|
||||
"INDEX(CrsCod,Type,Cod),"
|
||||
"INDEX(CopyTime))");
|
||||
|
||||
/***** Table prg_items *****/
|
||||
/*
|
||||
|
@ -2478,22 +2520,34 @@ mysql> DESCRIBE prg_items;
|
|||
/***** Table prg_resources *****/
|
||||
/*
|
||||
mysql> DESCRIBE prg_resources;
|
||||
+--------+---------------+------+-----+---------+----------------+
|
||||
| Field | Type | Null | Key | Default | Extra |
|
||||
+--------+---------------+------+-----+---------+----------------+
|
||||
| RscCod | int | NO | PRI | NULL | auto_increment |
|
||||
| ItmCod | int | NO | MUL | -1 | |
|
||||
| RscInd | int | NO | | 0 | |
|
||||
| Hidden | enum('N','Y') | NO | | N | |
|
||||
| Title | varchar(2047) | NO | | NULL | |
|
||||
+--------+---------------+------+-----+---------+----------------+
|
||||
5 rows in set (0,00 sec)
|
||||
+--------+--------------------------------------------------------------------+------+-----+---------+----------------+
|
||||
| Field | Type | Null | Key | Default | Extra |
|
||||
+--------+--------------------------------------------------------------------+------+-----+---------+----------------+
|
||||
| RscCod | int | NO | PRI | NULL | auto_increment |
|
||||
| ItmCod | int | NO | MUL | -1 | |
|
||||
| RscInd | int | NO | | 0 | |
|
||||
| Hidden | enum('N','Y') | NO | | N | |
|
||||
| Type | enum('none','asg','cfe','exa','gam','svy','doc','mrk','att','for') | NO | | none | |
|
||||
| Title | varchar(2047) | NO | | NULL | |
|
||||
+--------+--------------------------------------------------------------------+------+-----+---------+----------------+
|
||||
6 rows in set (0,00 sec)
|
||||
*/
|
||||
DB_CreateTable ("CREATE TABLE IF NOT EXISTS prg_resources ("
|
||||
"RscCod INT NOT NULL AUTO_INCREMENT,"
|
||||
"ItmCod INT NOT NULL DEFAULT -1,"
|
||||
"RscInd INT NOT NULL DEFAULT 0,"
|
||||
"Hidden ENUM('N','Y') NOT NULL DEFAULT 'N',"
|
||||
"Type ENUM("
|
||||
"'none',"
|
||||
"'asg',"
|
||||
"'cfe',"
|
||||
"'exa',"
|
||||
"'gam',"
|
||||
"'svy',"
|
||||
"'doc',"
|
||||
"'mrk',"
|
||||
"'att',"
|
||||
"'for') NOT NULL DEFAULT 'none',"
|
||||
"Title VARCHAR(2047) NOT NULL," // PrgRsc_MAX_BYTES_PROGRAM_RESOURCE_TITLE
|
||||
"UNIQUE INDEX(RscCod),"
|
||||
"UNIQUE INDEX(ItmCod,RscInd))");
|
||||
|
|
|
@ -307,6 +307,14 @@ void Ico_PutContextualIconToPrint (Act_Action_t NextAction,
|
|||
"print.svg",Ico_BLACK);
|
||||
}
|
||||
|
||||
void Ico_PutContextualIconToGetLink (Act_Action_t NextAction,
|
||||
void (*FuncParams) (void *Args),void *Args)
|
||||
{
|
||||
Lay_PutContextualLinkOnlyIcon (NextAction,NULL,
|
||||
FuncParams,Args,
|
||||
"link.svg",Ico_BLACK);
|
||||
}
|
||||
|
||||
void Ico_PutContextualIconToCopy (Act_Action_t NextAction,
|
||||
void (*FuncParams) (void *Args),void *Args)
|
||||
{
|
||||
|
|
|
@ -81,6 +81,8 @@ void Ico_PutContextualIconToHideUnhide (const Act_Action_t NextAction[2],const c
|
|||
bool Hidden);
|
||||
void Ico_PutContextualIconToPrint (Act_Action_t NextAction,
|
||||
void (*FuncParams) (void *Args),void *Args);
|
||||
void Ico_PutContextualIconToGetLink (Act_Action_t NextAction,
|
||||
void (*FuncParams) (void *Args),void *Args);
|
||||
void Ico_PutContextualIconToCopy (Act_Action_t NextAction,
|
||||
void (*FuncParams) (void *Args),void *Args);
|
||||
void Ico_PutContextualIconToPaste (Act_Action_t NextAction,
|
||||
|
|
|
@ -49,6 +49,51 @@ typedef enum
|
|||
PrgRsc_MOVE_DOWN,
|
||||
} PrgRsc_MoveUpDown_t;
|
||||
|
||||
#define PrgRsc_NUM_TYPES 10
|
||||
typedef enum
|
||||
{
|
||||
PrgRsc_NONE,
|
||||
// gui TEACHING_GUIDE // Link to teaching guide
|
||||
// bib BIBLIOGRAPHY // Link to bibliography
|
||||
// faq FAQ // Link to FAQ
|
||||
// lnk LINKS // Link to links
|
||||
// tmt TIMETABLE // Link to timetable
|
||||
PrgRsc_ASSIGNMENT,
|
||||
// prj PROJECT // A project is only for some students
|
||||
PrgRsc_CALL_FOR_EXAM,
|
||||
// tst TEST // User selects tags, teacher should select
|
||||
PrgRsc_EXAM,
|
||||
PrgRsc_GAME,
|
||||
PrgRsc_SURVEY,
|
||||
PrgRsc_DOCUMENT,
|
||||
PrgRsc_MARKS,
|
||||
// grp GROUPS // ??? User select groups
|
||||
PrgRsc_ATTENDANCE_EVENT,
|
||||
PrgRsc_FORUM_THREAD,
|
||||
} PrgRsc_Type_t;
|
||||
|
||||
const char *PrgRsc_TypesDB[PrgRsc_NUM_TYPES] =
|
||||
{
|
||||
[PrgRsc_NONE ] = "non",
|
||||
// gui TEACHING_GUIDE // Link to teaching guide
|
||||
// bib BIBLIOGRAPHY // Link to bibliography
|
||||
// faq FAQ // Link to FAQ
|
||||
// lnk LINKS // Link to links
|
||||
// tmt TIMETABLE // Link to timetable
|
||||
[PrgRsc_ASSIGNMENT ] = "asg",
|
||||
// prj PROJECT // A project is only for some students
|
||||
[PrgRsc_CALL_FOR_EXAM ] = "cfe",
|
||||
// tst TEST // User selects tags, teacher should select
|
||||
[PrgRsc_EXAM ] = "exa",
|
||||
[PrgRsc_GAME ] = "gam",
|
||||
[PrgRsc_SURVEY ] = "svy",
|
||||
[PrgRsc_DOCUMENT ] = "doc",
|
||||
[PrgRsc_MARKS ] = "mrk",
|
||||
// grp GROUPS // ??? User select groups
|
||||
[PrgRsc_ATTENDANCE_EVENT] = "att",
|
||||
[PrgRsc_FORUM_THREAD ] = "for",
|
||||
};
|
||||
|
||||
/*****************************************************************************/
|
||||
/***************************** Private variables *****************************/
|
||||
/*****************************************************************************/
|
||||
|
|
23
swad_text.c
23
swad_text.c
|
@ -19798,6 +19798,29 @@ const char *Txt_Link_to_call_for_exam =
|
|||
"Link to call for exam"; // Çeviri lazim!
|
||||
#endif
|
||||
|
||||
const char *Txt_Link_to_resource_X_copied_into_clipboard = // Warning: it is very important to include %s in the following sentences
|
||||
#if L==1 // ca
|
||||
"Enllaç al recurs %s copiat al porta-retalls.";
|
||||
#elif L==2 // de
|
||||
"Link zu Ressource %s in die Zwischenablage kopiert.";
|
||||
#elif L==3 // en
|
||||
"Link to resource %s copied into clipboard.";
|
||||
#elif L==4 // es
|
||||
"Enlace al recurso %s copiado en el portapapeles.";
|
||||
#elif L==5 // fr
|
||||
"Lien vers la ressource %s copié dans le presse-papiers.";
|
||||
#elif L==6 // gn
|
||||
"Enlace al recurso %s copiado en el portapapeles."; // Okoteve traducción
|
||||
#elif L==7 // it
|
||||
"Collegamento alla risorsa %s copiata negli appunti.";
|
||||
#elif L==8 // pl
|
||||
"Link do zasobu %s skopiowany do schowka.";
|
||||
#elif L==9 // pt
|
||||
"Link para o recurso %s copiado para a área de transferência.";
|
||||
#elif L==10 // tr
|
||||
"Panoya kopyalanan %s kaynağına bağlantı.";
|
||||
#endif
|
||||
|
||||
const char *Txt_List_of_detailed_clicks =
|
||||
#if L==1 // ca
|
||||
"Llistat de clics detallats";
|
||||
|
|
|
@ -17586,6 +17586,29 @@ const char *Txt_Actions[Act_NUM_ACTIONS] =
|
|||
"See file metadata in documents zone of course" // Precisa de tradução
|
||||
#elif L==10 // tr
|
||||
"See file metadata in documents zone of course" // Çeviri lazim!
|
||||
#endif
|
||||
,
|
||||
[ActReqLnkSeeDocCrs] =
|
||||
#if L==1 // ca
|
||||
"Copy link to file when showing course documents area" // Necessita traducció
|
||||
#elif L==2 // de
|
||||
"Copy link to file when showing course documents area" // Need Übersetzung
|
||||
#elif L==3 // en
|
||||
"Copy link to file when showing course documents area"
|
||||
#elif L==4 // es
|
||||
"Copiar enlace a archivo viendo zona de documentos de asignatura"
|
||||
#elif L==5 // fr
|
||||
"Copy link to file when showing course documents area" // Besoin de traduction
|
||||
#elif L==6 // gn
|
||||
"Copiar enlace a archivo viendo zona de documentos de asignatura" // Okoteve traducción
|
||||
#elif L==7 // it
|
||||
"Copy link to file when showing course documents area" // Bisogno di traduzione
|
||||
#elif L==8 // pl
|
||||
"Copy link to file when showing course documents area" // Potrzebujesz tlumaczenie
|
||||
#elif L==9 // pt
|
||||
"Copy link to file when showing course documents area" // Precisa de tradução
|
||||
#elif L==10 // tr
|
||||
"Copy link to file when showing course documents area" // Çeviri lazim!
|
||||
#endif
|
||||
,
|
||||
[ActDowSeeDocCrs] =
|
||||
|
@ -18230,6 +18253,29 @@ const char *Txt_Actions[Act_NUM_ACTIONS] =
|
|||
"Change file metadata in documents zone of course" // Precisa de tradução
|
||||
#elif L==10 // tr
|
||||
"Change file metadata in documents zone of course" // Çeviri lazim!
|
||||
#endif
|
||||
,
|
||||
[ActReqLnkAdmDocCrs] =
|
||||
#if L==1 // ca
|
||||
"Copy link to file when managing course documents area" // Necessita traducció
|
||||
#elif L==2 // de
|
||||
"Copy link to file when managing course documents area" // Need Übersetzung
|
||||
#elif L==3 // en
|
||||
"Copy link to file when managing course documents area"
|
||||
#elif L==4 // es
|
||||
"Copiar enlace a archivo administrando zona de documentos de asignatura"
|
||||
#elif L==5 // fr
|
||||
"Copy link to file when managing course documents area" // Besoin de traduction
|
||||
#elif L==6 // gn
|
||||
"Copiar enlace a archivo administrando zona de documentos de asignatura" // Okoteve traducción
|
||||
#elif L==7 // it
|
||||
"Copy link to file when managing course documents area" // Bisogno di traduzione
|
||||
#elif L==8 // pl
|
||||
"Copy link to file when managing course documents area" // Potrzebujesz tlumaczenie
|
||||
#elif L==9 // pt
|
||||
"Copy link to file when managing course documents area" // Precisa de tradução
|
||||
#elif L==10 // tr
|
||||
"Copy link to file when managing course documents area" // Çeviri lazim!
|
||||
#endif
|
||||
,
|
||||
[ActDowAdmDocCrs] =
|
||||
|
|
|
@ -1052,7 +1052,7 @@ static void TmlNot_RequestRemovalNote (struct Tml_Timeline *Timeline)
|
|||
/* End alert */
|
||||
Timeline->NotCod = Not.NotCod; // Note to be removed
|
||||
TmlFrm_EndAlertRemove (Timeline,TmlFrm_REM_NOTE,
|
||||
TmlNot_PutParamsRemoveNote);
|
||||
TmlNot_PutParamsRemoveNote);
|
||||
}
|
||||
|
||||
/*****************************************************************************/
|
||||
|
|
Loading…
Reference in New Issue