mirror of https://github.com/acanas/swad-core.git
Version19.234
This commit is contained in:
parent
3941c8e791
commit
9513528b25
|
@ -660,15 +660,17 @@ const struct Act_Actions Act_Actions[Act_NUM_ACTIONS] =
|
||||||
[ActRemOneTstQst ] = { 133,-1,TabUnk,ActEdiTstQst ,0x220,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Tst_RemoveOneQst ,NULL},
|
[ActRemOneTstQst ] = { 133,-1,TabUnk,ActEdiTstQst ,0x220,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Tst_RemoveOneQst ,NULL},
|
||||||
[ActChgShfTstQst ] = { 455,-1,TabUnk,ActEdiTstQst ,0x220,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Tst_ChangeShuffleQst ,NULL},
|
[ActChgShfTstQst ] = { 455,-1,TabUnk,ActEdiTstQst ,0x220,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Tst_ChangeShuffleQst ,NULL},
|
||||||
|
|
||||||
|
[ActEdiTag ] = {1907,-1,TabUnk,ActEdiTstQst ,0x220,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Tag_ShowFormEditTags ,NULL},
|
||||||
|
[ActEnaTag ] = { 453,-1,TabUnk,ActEdiTstQst ,0x220,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Tag_EnableTag ,NULL},
|
||||||
|
[ActDisTag ] = { 452,-1,TabUnk,ActEdiTstQst ,0x220,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Tag_DisableTag ,NULL},
|
||||||
|
[ActRenTag ] = { 143,-1,TabUnk,ActEdiTstQst ,0x220,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Tag_RenameTag ,NULL},
|
||||||
|
|
||||||
[ActSeeTst ] = { 29,-1,TabUnk,ActReqTst ,0x238,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Tst_ShowNewTest ,NULL},
|
[ActSeeTst ] = { 29,-1,TabUnk,ActReqTst ,0x238,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Tst_ShowNewTest ,NULL},
|
||||||
[ActReqAssTst ] = {1837,-1,TabUnk,ActReqTst ,0x238,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Tst_ReceiveTestDraft ,NULL},
|
[ActReqAssTst ] = {1837,-1,TabUnk,ActReqTst ,0x238,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Tst_ReceiveTestDraft ,NULL},
|
||||||
[ActAssTst ] = { 98,-1,TabUnk,ActReqTst ,0x238,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Tst_AssessTest ,NULL},
|
[ActAssTst ] = { 98,-1,TabUnk,ActReqTst ,0x238,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Tst_AssessTest ,NULL},
|
||||||
|
|
||||||
[ActCfgTst ] = { 451,-1,TabUnk,ActReqTst ,0x220,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Tst_ShowFormConfig ,NULL},
|
[ActCfgTst ] = { 451,-1,TabUnk,ActReqTst ,0x220,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Tst_ShowFormConfig ,NULL},
|
||||||
[ActEnableTag ] = { 453,-1,TabUnk,ActReqTst ,0x220,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Tst_EnableTag ,NULL},
|
[ActRcvCfgTst ] = { 454,-1,TabUnk,ActReqTst ,0x220,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,TstCfg_ReceiveConfigTst ,NULL},
|
||||||
[ActDisableTag ] = { 452,-1,TabUnk,ActReqTst ,0x220,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Tst_DisableTag ,NULL},
|
|
||||||
[ActRenTag ] = { 143,-1,TabUnk,ActReqTst ,0x220,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Tst_RenameTag ,NULL},
|
|
||||||
[ActRcvCfgTst ] = { 454,-1,TabUnk,ActReqTst ,0x220,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,TstCfg_ReceiveConfigTst ,NULL},
|
|
||||||
|
|
||||||
[ActReqSeeMyTstRes ] = {1083,-1,TabUnk,ActReqTst ,0x208,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,Dat_SetIniEndDates ,TstPrn_SelDatesToSeeMyExams ,NULL},
|
[ActReqSeeMyTstRes ] = {1083,-1,TabUnk,ActReqTst ,0x208,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,Dat_SetIniEndDates ,TstPrn_SelDatesToSeeMyExams ,NULL},
|
||||||
[ActSeeMyTstRes ] = {1084,-1,TabUnk,ActReqTst ,0x208,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,TstPrn_ShowMyExams ,NULL},
|
[ActSeeMyTstRes ] = {1084,-1,TabUnk,ActReqTst ,0x208,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,TstPrn_ShowMyExams ,NULL},
|
||||||
|
@ -679,8 +681,8 @@ const struct Act_Actions Act_Actions[Act_NUM_ACTIONS] =
|
||||||
|
|
||||||
[ActSeeExa ] = {1849,-1,TabUnk,ActSeeAllExa ,0x238,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Exa_SeeOneExam ,NULL},
|
[ActSeeExa ] = {1849,-1,TabUnk,ActSeeAllExa ,0x238,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Exa_SeeOneExam ,NULL},
|
||||||
|
|
||||||
[ActReqNewExaEvt ] = {1852,-1,TabUnk,ActSeeAllExa ,0x230,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,ExaSes_RequestCreatOrEditSession ,NULL},
|
[ActReqNewExaEvt ] = {1852,-1,TabUnk,ActSeeAllExa ,0x230,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,ExaSes_RequestCreatOrEditSession,NULL},
|
||||||
[ActEdiOneExaEvt ] = {1902,-1,TabUnk,ActSeeAllExa ,0x238,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,ExaSes_RequestCreatOrEditSession ,NULL},
|
[ActEdiOneExaEvt ] = {1902,-1,TabUnk,ActSeeAllExa ,0x238,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,ExaSes_RequestCreatOrEditSession,NULL},
|
||||||
[ActNewExaEvt ] = {1853,-1,TabUnk,ActSeeAllExa ,0x230,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,ExaSes_ReceiveFormSession ,NULL},
|
[ActNewExaEvt ] = {1853,-1,TabUnk,ActSeeAllExa ,0x230,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,ExaSes_ReceiveFormSession ,NULL},
|
||||||
[ActChgExaEvt ] = {1903,-1,TabUnk,ActSeeAllExa ,0x238,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,ExaSes_ReceiveFormSession ,NULL},
|
[ActChgExaEvt ] = {1903,-1,TabUnk,ActSeeAllExa ,0x238,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,ExaSes_ReceiveFormSession ,NULL},
|
||||||
[ActReqRemExaEvt ] = {1850,-1,TabUnk,ActSeeAllExa ,0x230,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,ExaSes_RequestRemoveSession ,NULL},
|
[ActReqRemExaEvt ] = {1850,-1,TabUnk,ActSeeAllExa ,0x230,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,ExaSes_RequestRemoveSession ,NULL},
|
||||||
|
@ -2258,8 +2260,8 @@ Act_Action_t Act_FromActCodToAction[1 + Act_MAX_ACTION_COD] = // Do not reuse un
|
||||||
-1, // #449 (obsolete action)
|
-1, // #449 (obsolete action)
|
||||||
-1, // #450 (obsolete action)
|
-1, // #450 (obsolete action)
|
||||||
ActCfgTst, // #451
|
ActCfgTst, // #451
|
||||||
ActDisableTag, // #452
|
ActDisTag, // #452
|
||||||
ActEnableTag, // #453
|
ActEnaTag, // #453
|
||||||
ActRcvCfgTst, // #454
|
ActRcvCfgTst, // #454
|
||||||
ActChgShfTstQst, // #455
|
ActChgShfTstQst, // #455
|
||||||
-1, // #456 (obsolete action)
|
-1, // #456 (obsolete action)
|
||||||
|
@ -3713,6 +3715,7 @@ Act_Action_t Act_FromActCodToAction[1 + Act_MAX_ACTION_COD] = // Do not reuse un
|
||||||
ActSeeExaPrn, // #1904
|
ActSeeExaPrn, // #1904
|
||||||
ActEndExaPrn, // #1905
|
ActEndExaPrn, // #1905
|
||||||
ActAnsExaPrn, // #1906
|
ActAnsExaPrn, // #1906
|
||||||
|
ActEdiTag, // #1907
|
||||||
};
|
};
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
254
swad_action.h
254
swad_action.h
|
@ -64,7 +64,7 @@ typedef enum
|
||||||
|
|
||||||
typedef signed int Act_Action_t; // Must be a signed type, because -1 is used to indicate obsolete action
|
typedef signed int Act_Action_t; // Must be a signed type, because -1 is used to indicate obsolete action
|
||||||
|
|
||||||
#define Act_MAX_ACTION_COD 1906
|
#define Act_MAX_ACTION_COD 1907
|
||||||
|
|
||||||
#define Act_MAX_OPTIONS_IN_MENU_PER_TAB 13
|
#define Act_MAX_OPTIONS_IN_MENU_PER_TAB 13
|
||||||
|
|
||||||
|
@ -628,148 +628,150 @@ typedef signed int Act_Action_t; // Must be a signed type, because -1 is used to
|
||||||
#define ActRemOneTstQst (ActChgCrsTT1stDay + 107)
|
#define ActRemOneTstQst (ActChgCrsTT1stDay + 107)
|
||||||
#define ActChgShfTstQst (ActChgCrsTT1stDay + 108)
|
#define ActChgShfTstQst (ActChgCrsTT1stDay + 108)
|
||||||
|
|
||||||
#define ActSeeTst (ActChgCrsTT1stDay + 109)
|
#define ActEdiTag (ActChgCrsTT1stDay + 109)
|
||||||
#define ActReqAssTst (ActChgCrsTT1stDay + 110)
|
#define ActEnaTag (ActChgCrsTT1stDay + 110)
|
||||||
#define ActAssTst (ActChgCrsTT1stDay + 111)
|
#define ActDisTag (ActChgCrsTT1stDay + 111)
|
||||||
#define ActCfgTst (ActChgCrsTT1stDay + 112)
|
#define ActRenTag (ActChgCrsTT1stDay + 112)
|
||||||
#define ActEnableTag (ActChgCrsTT1stDay + 113)
|
|
||||||
#define ActDisableTag (ActChgCrsTT1stDay + 114)
|
|
||||||
#define ActRenTag (ActChgCrsTT1stDay + 115)
|
|
||||||
#define ActRcvCfgTst (ActChgCrsTT1stDay + 116)
|
|
||||||
|
|
||||||
#define ActReqSeeMyTstRes (ActChgCrsTT1stDay + 117)
|
#define ActSeeTst (ActChgCrsTT1stDay + 113)
|
||||||
#define ActSeeMyTstRes (ActChgCrsTT1stDay + 118)
|
#define ActReqAssTst (ActChgCrsTT1stDay + 114)
|
||||||
#define ActSeeOneTstResMe (ActChgCrsTT1stDay + 119)
|
#define ActAssTst (ActChgCrsTT1stDay + 115)
|
||||||
#define ActReqSeeUsrTstRes (ActChgCrsTT1stDay + 120)
|
#define ActCfgTst (ActChgCrsTT1stDay + 116)
|
||||||
#define ActSeeUsrTstRes (ActChgCrsTT1stDay + 121)
|
#define ActRcvCfgTst (ActChgCrsTT1stDay + 117)
|
||||||
#define ActSeeOneTstResOth (ActChgCrsTT1stDay + 122)
|
|
||||||
|
|
||||||
#define ActSeeExa (ActChgCrsTT1stDay + 123)
|
#define ActReqSeeMyTstRes (ActChgCrsTT1stDay + 118)
|
||||||
|
#define ActSeeMyTstRes (ActChgCrsTT1stDay + 119)
|
||||||
|
#define ActSeeOneTstResMe (ActChgCrsTT1stDay + 120)
|
||||||
|
#define ActReqSeeUsrTstRes (ActChgCrsTT1stDay + 121)
|
||||||
|
#define ActSeeUsrTstRes (ActChgCrsTT1stDay + 122)
|
||||||
|
#define ActSeeOneTstResOth (ActChgCrsTT1stDay + 123)
|
||||||
|
|
||||||
#define ActReqNewExaEvt (ActChgCrsTT1stDay + 124)
|
#define ActSeeExa (ActChgCrsTT1stDay + 124)
|
||||||
#define ActEdiOneExaEvt (ActChgCrsTT1stDay + 125)
|
|
||||||
#define ActNewExaEvt (ActChgCrsTT1stDay + 126)
|
|
||||||
#define ActChgExaEvt (ActChgCrsTT1stDay + 127)
|
|
||||||
#define ActReqRemExaEvt (ActChgCrsTT1stDay + 128)
|
|
||||||
#define ActRemExaEvt (ActChgCrsTT1stDay + 129)
|
|
||||||
#define ActHidExaEvt (ActChgCrsTT1stDay + 130)
|
|
||||||
#define ActShoExaEvt (ActChgCrsTT1stDay + 131)
|
|
||||||
|
|
||||||
#define ActSeeMyExaEvtResCrs (ActChgCrsTT1stDay + 132)
|
#define ActReqNewExaEvt (ActChgCrsTT1stDay + 125)
|
||||||
#define ActSeeMyExaEvtResExa (ActChgCrsTT1stDay + 133)
|
#define ActEdiOneExaEvt (ActChgCrsTT1stDay + 126)
|
||||||
#define ActSeeMyExaEvtResEvt (ActChgCrsTT1stDay + 134)
|
#define ActNewExaEvt (ActChgCrsTT1stDay + 127)
|
||||||
#define ActSeeOneExaEvtResMe (ActChgCrsTT1stDay + 135)
|
#define ActChgExaEvt (ActChgCrsTT1stDay + 128)
|
||||||
|
#define ActReqRemExaEvt (ActChgCrsTT1stDay + 129)
|
||||||
|
#define ActRemExaEvt (ActChgCrsTT1stDay + 130)
|
||||||
|
#define ActHidExaEvt (ActChgCrsTT1stDay + 131)
|
||||||
|
#define ActShoExaEvt (ActChgCrsTT1stDay + 132)
|
||||||
|
|
||||||
#define ActReqSeeAllExaEvtRes (ActChgCrsTT1stDay + 136)
|
#define ActSeeMyExaEvtResCrs (ActChgCrsTT1stDay + 133)
|
||||||
#define ActSeeAllExaEvtResCrs (ActChgCrsTT1stDay + 137)
|
#define ActSeeMyExaEvtResExa (ActChgCrsTT1stDay + 134)
|
||||||
#define ActSeeAllExaEvtResExa (ActChgCrsTT1stDay + 138)
|
#define ActSeeMyExaEvtResEvt (ActChgCrsTT1stDay + 135)
|
||||||
#define ActSeeAllExaEvtResEvt (ActChgCrsTT1stDay + 139)
|
#define ActSeeOneExaEvtResMe (ActChgCrsTT1stDay + 136)
|
||||||
#define ActSeeOneExaEvtResOth (ActChgCrsTT1stDay + 140)
|
|
||||||
|
|
||||||
#define ActChgVisResExaEvtUsr (ActChgCrsTT1stDay + 141)
|
#define ActReqSeeAllExaEvtRes (ActChgCrsTT1stDay + 137)
|
||||||
|
#define ActSeeAllExaEvtResCrs (ActChgCrsTT1stDay + 138)
|
||||||
|
#define ActSeeAllExaEvtResExa (ActChgCrsTT1stDay + 139)
|
||||||
|
#define ActSeeAllExaEvtResEvt (ActChgCrsTT1stDay + 140)
|
||||||
|
#define ActSeeOneExaEvtResOth (ActChgCrsTT1stDay + 141)
|
||||||
|
|
||||||
#define ActFrmNewExa (ActChgCrsTT1stDay + 142)
|
#define ActChgVisResExaEvtUsr (ActChgCrsTT1stDay + 142)
|
||||||
#define ActEdiOneExa (ActChgCrsTT1stDay + 143)
|
|
||||||
#define ActNewExa (ActChgCrsTT1stDay + 144)
|
|
||||||
#define ActChgExa (ActChgCrsTT1stDay + 145)
|
|
||||||
#define ActReqRemExa (ActChgCrsTT1stDay + 146)
|
|
||||||
#define ActRemExa (ActChgCrsTT1stDay + 147)
|
|
||||||
#define ActHidExa (ActChgCrsTT1stDay + 148)
|
|
||||||
#define ActShoExa (ActChgCrsTT1stDay + 149)
|
|
||||||
#define ActFrmNewExaSet (ActChgCrsTT1stDay + 150)
|
|
||||||
#define ActNewExaSet (ActChgCrsTT1stDay + 151)
|
|
||||||
#define ActReqRemExaSet (ActChgCrsTT1stDay + 152)
|
|
||||||
#define ActRemExaSet (ActChgCrsTT1stDay + 153)
|
|
||||||
#define ActUp_ExaSet (ActChgCrsTT1stDay + 154)
|
|
||||||
#define ActDwnExaSet (ActChgCrsTT1stDay + 155)
|
|
||||||
#define ActChgTitExaSet (ActChgCrsTT1stDay + 156)
|
|
||||||
#define ActChgNumQstExaSet (ActChgCrsTT1stDay + 157)
|
|
||||||
|
|
||||||
#define ActReqAddQstExaSet (ActChgCrsTT1stDay + 158)
|
#define ActFrmNewExa (ActChgCrsTT1stDay + 143)
|
||||||
#define ActLstTstQstForSet (ActChgCrsTT1stDay + 159)
|
#define ActEdiOneExa (ActChgCrsTT1stDay + 144)
|
||||||
#define ActAddQstToExa (ActChgCrsTT1stDay + 160)
|
#define ActNewExa (ActChgCrsTT1stDay + 145)
|
||||||
#define ActReqRemSetQst (ActChgCrsTT1stDay + 161)
|
#define ActChgExa (ActChgCrsTT1stDay + 146)
|
||||||
#define ActRemExaQst (ActChgCrsTT1stDay + 162)
|
#define ActReqRemExa (ActChgCrsTT1stDay + 147)
|
||||||
|
#define ActRemExa (ActChgCrsTT1stDay + 148)
|
||||||
|
#define ActHidExa (ActChgCrsTT1stDay + 149)
|
||||||
|
#define ActShoExa (ActChgCrsTT1stDay + 150)
|
||||||
|
#define ActFrmNewExaSet (ActChgCrsTT1stDay + 151)
|
||||||
|
#define ActNewExaSet (ActChgCrsTT1stDay + 152)
|
||||||
|
#define ActReqRemExaSet (ActChgCrsTT1stDay + 153)
|
||||||
|
#define ActRemExaSet (ActChgCrsTT1stDay + 154)
|
||||||
|
#define ActUp_ExaSet (ActChgCrsTT1stDay + 155)
|
||||||
|
#define ActDwnExaSet (ActChgCrsTT1stDay + 156)
|
||||||
|
#define ActChgTitExaSet (ActChgCrsTT1stDay + 157)
|
||||||
|
#define ActChgNumQstExaSet (ActChgCrsTT1stDay + 158)
|
||||||
|
|
||||||
#define ActSeeExaPrn (ActChgCrsTT1stDay + 163)
|
#define ActReqAddQstExaSet (ActChgCrsTT1stDay + 159)
|
||||||
#define ActAnsExaPrn (ActChgCrsTT1stDay + 164)
|
#define ActLstTstQstForSet (ActChgCrsTT1stDay + 160)
|
||||||
#define ActEndExaPrn (ActChgCrsTT1stDay + 165)
|
#define ActAddQstToExa (ActChgCrsTT1stDay + 161)
|
||||||
|
#define ActReqRemSetQst (ActChgCrsTT1stDay + 162)
|
||||||
|
#define ActRemExaQst (ActChgCrsTT1stDay + 163)
|
||||||
|
|
||||||
#define ActSeeGam (ActChgCrsTT1stDay + 166)
|
#define ActSeeExaPrn (ActChgCrsTT1stDay + 164)
|
||||||
#define ActReqRemMch (ActChgCrsTT1stDay + 167)
|
#define ActAnsExaPrn (ActChgCrsTT1stDay + 165)
|
||||||
#define ActRemMch (ActChgCrsTT1stDay + 168)
|
#define ActEndExaPrn (ActChgCrsTT1stDay + 166)
|
||||||
#define ActReqNewMch (ActChgCrsTT1stDay + 169)
|
|
||||||
#define ActNewMch (ActChgCrsTT1stDay + 170)
|
|
||||||
#define ActResMch (ActChgCrsTT1stDay + 171)
|
|
||||||
#define ActBckMch (ActChgCrsTT1stDay + 172)
|
|
||||||
#define ActPlyPauMch (ActChgCrsTT1stDay + 173)
|
|
||||||
#define ActFwdMch (ActChgCrsTT1stDay + 174)
|
|
||||||
#define ActChgNumColMch (ActChgCrsTT1stDay + 175)
|
|
||||||
#define ActChgVisResMchQst (ActChgCrsTT1stDay + 176)
|
|
||||||
#define ActMchCntDwn (ActChgCrsTT1stDay + 177)
|
|
||||||
#define ActRefMchTch (ActChgCrsTT1stDay + 178)
|
|
||||||
|
|
||||||
#define ActJoiMch (ActChgCrsTT1stDay + 179)
|
#define ActSeeGam (ActChgCrsTT1stDay + 167)
|
||||||
#define ActSeeMchAnsQstStd (ActChgCrsTT1stDay + 180)
|
#define ActReqRemMch (ActChgCrsTT1stDay + 168)
|
||||||
#define ActRemMchAnsQstStd (ActChgCrsTT1stDay + 181)
|
#define ActRemMch (ActChgCrsTT1stDay + 169)
|
||||||
#define ActAnsMchQstStd (ActChgCrsTT1stDay + 182)
|
#define ActReqNewMch (ActChgCrsTT1stDay + 170)
|
||||||
#define ActRefMchStd (ActChgCrsTT1stDay + 183)
|
#define ActNewMch (ActChgCrsTT1stDay + 171)
|
||||||
|
#define ActResMch (ActChgCrsTT1stDay + 172)
|
||||||
|
#define ActBckMch (ActChgCrsTT1stDay + 173)
|
||||||
|
#define ActPlyPauMch (ActChgCrsTT1stDay + 174)
|
||||||
|
#define ActFwdMch (ActChgCrsTT1stDay + 175)
|
||||||
|
#define ActChgNumColMch (ActChgCrsTT1stDay + 176)
|
||||||
|
#define ActChgVisResMchQst (ActChgCrsTT1stDay + 177)
|
||||||
|
#define ActMchCntDwn (ActChgCrsTT1stDay + 178)
|
||||||
|
#define ActRefMchTch (ActChgCrsTT1stDay + 179)
|
||||||
|
|
||||||
#define ActSeeMyMchResCrs (ActChgCrsTT1stDay + 184)
|
#define ActJoiMch (ActChgCrsTT1stDay + 180)
|
||||||
#define ActSeeMyMchResGam (ActChgCrsTT1stDay + 185)
|
#define ActSeeMchAnsQstStd (ActChgCrsTT1stDay + 181)
|
||||||
#define ActSeeMyMchResMch (ActChgCrsTT1stDay + 186)
|
#define ActRemMchAnsQstStd (ActChgCrsTT1stDay + 182)
|
||||||
#define ActSeeOneMchResMe (ActChgCrsTT1stDay + 187)
|
#define ActAnsMchQstStd (ActChgCrsTT1stDay + 183)
|
||||||
|
#define ActRefMchStd (ActChgCrsTT1stDay + 184)
|
||||||
|
|
||||||
#define ActReqSeeAllMchRes (ActChgCrsTT1stDay + 188)
|
#define ActSeeMyMchResCrs (ActChgCrsTT1stDay + 185)
|
||||||
#define ActSeeAllMchResCrs (ActChgCrsTT1stDay + 189)
|
#define ActSeeMyMchResGam (ActChgCrsTT1stDay + 186)
|
||||||
#define ActSeeAllMchResGam (ActChgCrsTT1stDay + 190)
|
#define ActSeeMyMchResMch (ActChgCrsTT1stDay + 187)
|
||||||
#define ActSeeAllMchResMch (ActChgCrsTT1stDay + 191)
|
#define ActSeeOneMchResMe (ActChgCrsTT1stDay + 188)
|
||||||
#define ActSeeOneMchResOth (ActChgCrsTT1stDay + 192)
|
|
||||||
|
|
||||||
#define ActChgVisResMchUsr (ActChgCrsTT1stDay + 193)
|
#define ActReqSeeAllMchRes (ActChgCrsTT1stDay + 189)
|
||||||
|
#define ActSeeAllMchResCrs (ActChgCrsTT1stDay + 190)
|
||||||
|
#define ActSeeAllMchResGam (ActChgCrsTT1stDay + 191)
|
||||||
|
#define ActSeeAllMchResMch (ActChgCrsTT1stDay + 192)
|
||||||
|
#define ActSeeOneMchResOth (ActChgCrsTT1stDay + 193)
|
||||||
|
|
||||||
#define ActFrmNewGam (ActChgCrsTT1stDay + 194)
|
#define ActChgVisResMchUsr (ActChgCrsTT1stDay + 194)
|
||||||
#define ActEdiOneGam (ActChgCrsTT1stDay + 195)
|
|
||||||
#define ActNewGam (ActChgCrsTT1stDay + 196)
|
|
||||||
#define ActChgGam (ActChgCrsTT1stDay + 197)
|
|
||||||
#define ActReqRemGam (ActChgCrsTT1stDay + 198)
|
|
||||||
#define ActRemGam (ActChgCrsTT1stDay + 199)
|
|
||||||
#define ActHidGam (ActChgCrsTT1stDay + 200)
|
|
||||||
#define ActShoGam (ActChgCrsTT1stDay + 201)
|
|
||||||
#define ActAddOneGamQst (ActChgCrsTT1stDay + 202)
|
|
||||||
#define ActGamLstTstQst (ActChgCrsTT1stDay + 203)
|
|
||||||
#define ActAddTstQstToGam (ActChgCrsTT1stDay + 204)
|
|
||||||
#define ActReqRemGamQst (ActChgCrsTT1stDay + 205)
|
|
||||||
#define ActRemGamQst (ActChgCrsTT1stDay + 206)
|
|
||||||
#define ActUp_GamQst (ActChgCrsTT1stDay + 207)
|
|
||||||
#define ActDwnGamQst (ActChgCrsTT1stDay + 208)
|
|
||||||
|
|
||||||
#define ActSeeSvy (ActChgCrsTT1stDay + 209)
|
#define ActFrmNewGam (ActChgCrsTT1stDay + 195)
|
||||||
#define ActAnsSvy (ActChgCrsTT1stDay + 210)
|
#define ActEdiOneGam (ActChgCrsTT1stDay + 196)
|
||||||
#define ActFrmNewSvy (ActChgCrsTT1stDay + 211)
|
#define ActNewGam (ActChgCrsTT1stDay + 197)
|
||||||
#define ActEdiOneSvy (ActChgCrsTT1stDay + 212)
|
#define ActChgGam (ActChgCrsTT1stDay + 198)
|
||||||
#define ActNewSvy (ActChgCrsTT1stDay + 213)
|
#define ActReqRemGam (ActChgCrsTT1stDay + 199)
|
||||||
#define ActChgSvy (ActChgCrsTT1stDay + 214)
|
#define ActRemGam (ActChgCrsTT1stDay + 200)
|
||||||
#define ActReqRemSvy (ActChgCrsTT1stDay + 215)
|
#define ActHidGam (ActChgCrsTT1stDay + 201)
|
||||||
#define ActRemSvy (ActChgCrsTT1stDay + 216)
|
#define ActShoGam (ActChgCrsTT1stDay + 202)
|
||||||
#define ActReqRstSvy (ActChgCrsTT1stDay + 217)
|
#define ActAddOneGamQst (ActChgCrsTT1stDay + 203)
|
||||||
#define ActRstSvy (ActChgCrsTT1stDay + 218)
|
#define ActGamLstTstQst (ActChgCrsTT1stDay + 204)
|
||||||
#define ActHidSvy (ActChgCrsTT1stDay + 219)
|
#define ActAddTstQstToGam (ActChgCrsTT1stDay + 205)
|
||||||
#define ActShoSvy (ActChgCrsTT1stDay + 220)
|
#define ActReqRemGamQst (ActChgCrsTT1stDay + 206)
|
||||||
#define ActEdiOneSvyQst (ActChgCrsTT1stDay + 221)
|
#define ActRemGamQst (ActChgCrsTT1stDay + 207)
|
||||||
#define ActRcvSvyQst (ActChgCrsTT1stDay + 222)
|
#define ActUp_GamQst (ActChgCrsTT1stDay + 208)
|
||||||
#define ActReqRemSvyQst (ActChgCrsTT1stDay + 223)
|
#define ActDwnGamQst (ActChgCrsTT1stDay + 209)
|
||||||
#define ActRemSvyQst (ActChgCrsTT1stDay + 224)
|
|
||||||
|
|
||||||
#define ActSeeOneExaAnn (ActChgCrsTT1stDay + 225)
|
#define ActSeeSvy (ActChgCrsTT1stDay + 210)
|
||||||
#define ActSeeDatExaAnn (ActChgCrsTT1stDay + 226)
|
#define ActAnsSvy (ActChgCrsTT1stDay + 211)
|
||||||
#define ActEdiExaAnn (ActChgCrsTT1stDay + 227)
|
#define ActFrmNewSvy (ActChgCrsTT1stDay + 212)
|
||||||
#define ActRcvExaAnn (ActChgCrsTT1stDay + 228)
|
#define ActEdiOneSvy (ActChgCrsTT1stDay + 213)
|
||||||
#define ActPrnExaAnn (ActChgCrsTT1stDay + 229)
|
#define ActNewSvy (ActChgCrsTT1stDay + 214)
|
||||||
#define ActReqRemExaAnn (ActChgCrsTT1stDay + 230)
|
#define ActChgSvy (ActChgCrsTT1stDay + 215)
|
||||||
#define ActRemExaAnn (ActChgCrsTT1stDay + 231)
|
#define ActReqRemSvy (ActChgCrsTT1stDay + 216)
|
||||||
#define ActHidExaAnn (ActChgCrsTT1stDay + 232)
|
#define ActRemSvy (ActChgCrsTT1stDay + 217)
|
||||||
#define ActShoExaAnn (ActChgCrsTT1stDay + 233)
|
#define ActReqRstSvy (ActChgCrsTT1stDay + 218)
|
||||||
|
#define ActRstSvy (ActChgCrsTT1stDay + 219)
|
||||||
|
#define ActHidSvy (ActChgCrsTT1stDay + 220)
|
||||||
|
#define ActShoSvy (ActChgCrsTT1stDay + 221)
|
||||||
|
#define ActEdiOneSvyQst (ActChgCrsTT1stDay + 222)
|
||||||
|
#define ActRcvSvyQst (ActChgCrsTT1stDay + 223)
|
||||||
|
#define ActReqRemSvyQst (ActChgCrsTT1stDay + 224)
|
||||||
|
#define ActRemSvyQst (ActChgCrsTT1stDay + 225)
|
||||||
|
|
||||||
|
#define ActSeeOneExaAnn (ActChgCrsTT1stDay + 226)
|
||||||
|
#define ActSeeDatExaAnn (ActChgCrsTT1stDay + 227)
|
||||||
|
#define ActEdiExaAnn (ActChgCrsTT1stDay + 228)
|
||||||
|
#define ActRcvExaAnn (ActChgCrsTT1stDay + 229)
|
||||||
|
#define ActPrnExaAnn (ActChgCrsTT1stDay + 230)
|
||||||
|
#define ActReqRemExaAnn (ActChgCrsTT1stDay + 231)
|
||||||
|
#define ActRemExaAnn (ActChgCrsTT1stDay + 232)
|
||||||
|
#define ActHidExaAnn (ActChgCrsTT1stDay + 233)
|
||||||
|
#define ActShoExaAnn (ActChgCrsTT1stDay + 234)
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
/******************************** Files tab **********************************/
|
/******************************** Files tab **********************************/
|
||||||
|
|
|
@ -557,12 +557,19 @@ enscript -2 --landscape --color --file-align=2 --highlight --line-numbers -o - *
|
||||||
En OpenSWAD:
|
En OpenSWAD:
|
||||||
ps2pdf source.ps destination.pdf
|
ps2pdf source.ps destination.pdf
|
||||||
*/
|
*/
|
||||||
#define Log_PLATFORM_VERSION "SWAD 19.233 (2020-05-17)"
|
#define Log_PLATFORM_VERSION "SWAD 19.234 (2020-05-17)"
|
||||||
#define CSS_FILE "swad19.230.1.css"
|
#define CSS_FILE "swad19.230.1.css"
|
||||||
#define JS_FILE "swad19.230.3.js"
|
#define JS_FILE "swad19.230.3.js"
|
||||||
/*
|
/*
|
||||||
TODO: Comprobar si el directorio público que devuelve Ses_GetPublicDirFromCache sigue existiendo.
|
TODO: Comprobar si el directorio público que devuelve Ses_GetPublicDirFromCache sigue existiendo.
|
||||||
// Si no existe, hay que crear un nuevo directorio y meterlo en cache
|
// Si no existe, hay que crear un nuevo directorio y meterlo en cache
|
||||||
|
TODO: ¿Mover importar y exportar a icono en la esquina?
|
||||||
|
|
||||||
|
Version 19.234: May 17, 2020 Option to edit tags in bank of questions. (301061 lines)
|
||||||
|
Copy the following 3 icons to icon public directory:
|
||||||
|
sudo cp icon/tag.svg /var/www/html/swad/icon/
|
||||||
|
sudo cp icon/tags.svg /var/www/html/swad/icon/
|
||||||
|
sudo cp icon/hashtag.svg /var/www/html/swad/icon/
|
||||||
|
|
||||||
Version 19.233: May 17, 2020 Exam event is renamed as exam session. (301028 lines)
|
Version 19.233: May 17, 2020 Exam event is renamed as exam session. (301028 lines)
|
||||||
7 changes necessary in database:
|
7 changes necessary in database:
|
||||||
|
|
69
swad_test.c
69
swad_test.c
|
@ -158,16 +158,17 @@ static void Tst_PutIconsBankQsts (void *Test);
|
||||||
static void Tst_PutIconsTests (__attribute__((unused)) void *Args);
|
static void Tst_PutIconsTests (__attribute__((unused)) void *Args);
|
||||||
static void Tst_PutButtonToAddQuestion (void);
|
static void Tst_PutButtonToAddQuestion (void);
|
||||||
|
|
||||||
static long Tst_GetParamTagCode (void);
|
static long Tag_GetParamTagCode (void);
|
||||||
static bool Tst_CheckIfCurrentCrsHasTestTags (void);
|
static bool Tst_CheckIfCurrentCrsHasTestTags (void);
|
||||||
static unsigned Tst_GetAllTagsFromCurrentCrs (MYSQL_RES **mysql_res);
|
static unsigned Tst_GetAllTagsFromCurrentCrs (MYSQL_RES **mysql_res);
|
||||||
static unsigned Tst_GetEnabledTagsFromThisCrs (MYSQL_RES **mysql_res);
|
static unsigned Tst_GetEnabledTagsFromThisCrs (MYSQL_RES **mysql_res);
|
||||||
static void Tst_ShowFormSelTags (const struct Tst_Tags *Tags,
|
|
||||||
|
static void Tag_ShowFormSelTags (const struct Tst_Tags *Tags,
|
||||||
MYSQL_RES *mysql_res,
|
MYSQL_RES *mysql_res,
|
||||||
bool ShowOnlyEnabledTags);
|
bool ShowOnlyEnabledTags);
|
||||||
static void Tst_ShowFormEditTags (void);
|
static void Tag_PutIconEnable (long TagCod,const char *TagTxt);
|
||||||
static void Tst_PutIconEnable (long TagCod,const char *TagTxt);
|
static void Tag_PutIconDisable (long TagCod,const char *TagTxt);
|
||||||
static void Tst_PutIconDisable (long TagCod,const char *TagTxt);
|
|
||||||
static void Tst_ShowFormConfigTst (void);
|
static void Tst_ShowFormConfigTst (void);
|
||||||
|
|
||||||
static void Tst_PutInputFieldNumQst (const char *Field,const char *Label,
|
static void Tst_PutInputFieldNumQst (const char *Field,const char *Label,
|
||||||
|
@ -385,7 +386,7 @@ static void Tst_ShowFormRequestTest (struct Tst_Test *Test)
|
||||||
HTM_TABLE_BeginPadding (2);
|
HTM_TABLE_BeginPadding (2);
|
||||||
|
|
||||||
/***** Selection of tags *****/
|
/***** Selection of tags *****/
|
||||||
Tst_ShowFormSelTags (&Test->Tags,mysql_res,true);
|
Tag_ShowFormSelTags (&Test->Tags,mysql_res,true);
|
||||||
|
|
||||||
/***** Selection of types of answers *****/
|
/***** Selection of types of answers *****/
|
||||||
Tst_ShowFormAnswerTypes (&Test->AnswerTypes);
|
Tst_ShowFormAnswerTypes (&Test->AnswerTypes);
|
||||||
|
@ -1242,7 +1243,7 @@ static void Tst_ShowFormRequestEditTests (struct Tst_Test *Test)
|
||||||
HTM_TABLE_BeginPadding (2);
|
HTM_TABLE_BeginPadding (2);
|
||||||
|
|
||||||
/***** Selection of tags *****/
|
/***** Selection of tags *****/
|
||||||
Tst_ShowFormSelTags (&Test->Tags,mysql_res,false);
|
Tag_ShowFormSelTags (&Test->Tags,mysql_res,false);
|
||||||
|
|
||||||
/***** Selection of types of answers *****/
|
/***** Selection of types of answers *****/
|
||||||
Tst_ShowFormAnswerTypes (&Test->AnswerTypes);
|
Tst_ShowFormAnswerTypes (&Test->AnswerTypes);
|
||||||
|
@ -1340,7 +1341,7 @@ static void Tst_ShowFormRequestSelectTestsForSet (struct Exa_Exams *Exams,
|
||||||
HTM_TABLE_BeginPadding (2);
|
HTM_TABLE_BeginPadding (2);
|
||||||
|
|
||||||
/***** Selection of tags *****/
|
/***** Selection of tags *****/
|
||||||
Tst_ShowFormSelTags (&Test->Tags,mysql_res,false);
|
Tag_ShowFormSelTags (&Test->Tags,mysql_res,false);
|
||||||
|
|
||||||
/***** Selection of types of answers *****/
|
/***** Selection of types of answers *****/
|
||||||
Tst_ShowFormAnswerTypes (&Test->AnswerTypes);
|
Tst_ShowFormAnswerTypes (&Test->AnswerTypes);
|
||||||
|
@ -1402,7 +1403,7 @@ static void Tst_ShowFormRequestSelectTestsForGame (struct Gam_Games *Games,
|
||||||
HTM_TABLE_BeginPadding (2);
|
HTM_TABLE_BeginPadding (2);
|
||||||
|
|
||||||
/***** Selection of tags *****/
|
/***** Selection of tags *****/
|
||||||
Tst_ShowFormSelTags (&Test->Tags,mysql_res,false);
|
Tag_ShowFormSelTags (&Test->Tags,mysql_res,false);
|
||||||
|
|
||||||
/***** Starting and ending dates in the search *****/
|
/***** Starting and ending dates in the search *****/
|
||||||
Dat_PutFormStartEndClientLocalDateTimesWithYesterdayToday (SetHMS);
|
Dat_PutFormStartEndClientLocalDateTimesWithYesterdayToday (SetHMS);
|
||||||
|
@ -1468,11 +1469,16 @@ static void Tst_PutIconsBankQsts (void *Test)
|
||||||
NULL,NULL,
|
NULL,NULL,
|
||||||
Txt_New_question);
|
Txt_New_question);
|
||||||
|
|
||||||
|
/***** Put form to edit tags *****/
|
||||||
|
Lay_PutContextualLinkOnlyIcon (ActEdiTag,NULL,
|
||||||
|
NULL,NULL,
|
||||||
|
"tag.svg",
|
||||||
|
"Editar descriptores"); // TODO: Need translation!!!
|
||||||
|
|
||||||
/***** Put icon to show a figure *****/
|
/***** Put icon to show a figure *****/
|
||||||
Fig_PutIconToShowFigure (Fig_TESTS);
|
Fig_PutIconToShowFigure (Fig_TESTS);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
/********************* Put contextual icons in tests *************************/
|
/********************* Put contextual icons in tests *************************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
@ -1533,46 +1539,43 @@ void Tst_ShowFormConfig (void)
|
||||||
|
|
||||||
/***** Form to configure test *****/
|
/***** Form to configure test *****/
|
||||||
Tst_ShowFormConfigTst ();
|
Tst_ShowFormConfigTst ();
|
||||||
|
|
||||||
/***** Form to edit tags *****/
|
|
||||||
Tst_ShowFormEditTags ();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
/******************************* Enable a test tag ***************************/
|
/******************************* Enable a test tag ***************************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
void Tst_EnableTag (void)
|
void Tag_EnableTag (void)
|
||||||
{
|
{
|
||||||
long TagCod = Tst_GetParamTagCode ();
|
long TagCod = Tag_GetParamTagCode ();
|
||||||
|
|
||||||
/***** Change tag status to enabled *****/
|
/***** Change tag status to enabled *****/
|
||||||
Tst_EnableOrDisableTag (TagCod,false);
|
Tst_EnableOrDisableTag (TagCod,false);
|
||||||
|
|
||||||
/***** Show again the form to configure test *****/
|
/***** Show again the form to edit tags *****/
|
||||||
Tst_ShowFormConfig ();
|
Tag_ShowFormEditTags ();
|
||||||
}
|
}
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
/****************************** Disable a test tag ***************************/
|
/****************************** Disable a test tag ***************************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
void Tst_DisableTag (void)
|
void Tag_DisableTag (void)
|
||||||
{
|
{
|
||||||
long TagCod = Tst_GetParamTagCode ();
|
long TagCod = Tag_GetParamTagCode ();
|
||||||
|
|
||||||
/***** Change tag status to disabled *****/
|
/***** Change tag status to disabled *****/
|
||||||
Tst_EnableOrDisableTag (TagCod,true);
|
Tst_EnableOrDisableTag (TagCod,true);
|
||||||
|
|
||||||
/***** Show again the form to configure test *****/
|
/***** Show again the form to edit tags *****/
|
||||||
Tst_ShowFormConfig ();
|
Tag_ShowFormEditTags ();
|
||||||
}
|
}
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
/************************* Get parameter with tag code ***********************/
|
/************************* Get parameter with tag code ***********************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
static long Tst_GetParamTagCode (void)
|
static long Tag_GetParamTagCode (void)
|
||||||
{
|
{
|
||||||
long TagCod;
|
long TagCod;
|
||||||
|
|
||||||
|
@ -1587,7 +1590,7 @@ static long Tst_GetParamTagCode (void)
|
||||||
/************************ Rename a tag of test questions *********************/
|
/************************ Rename a tag of test questions *********************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
void Tst_RenameTag (void)
|
void Tag_RenameTag (void)
|
||||||
{
|
{
|
||||||
extern const char *Txt_The_tag_X_has_been_renamed_as_Y;
|
extern const char *Txt_The_tag_X_has_been_renamed_as_Y;
|
||||||
extern const char *Txt_The_tag_X_has_not_changed;
|
extern const char *Txt_The_tag_X_has_not_changed;
|
||||||
|
@ -1696,8 +1699,8 @@ void Tst_RenameTag (void)
|
||||||
else // New tag empty
|
else // New tag empty
|
||||||
Ale_ShowAlertYouCanNotLeaveFieldEmpty ();
|
Ale_ShowAlertYouCanNotLeaveFieldEmpty ();
|
||||||
|
|
||||||
/***** Show again the form to configure test *****/
|
/***** Show again the form to edit tags *****/
|
||||||
Tst_ShowFormConfig ();
|
Tag_ShowFormEditTags ();
|
||||||
}
|
}
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
@ -1802,7 +1805,7 @@ static unsigned Tst_GetEnabledTagsFromThisCrs (MYSQL_RES **mysql_res)
|
||||||
/********************* Show a form to select test tags ***********************/
|
/********************* Show a form to select test tags ***********************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
static void Tst_ShowFormSelTags (const struct Tst_Tags *Tags,
|
static void Tag_ShowFormSelTags (const struct Tst_Tags *Tags,
|
||||||
MYSQL_RES *mysql_res,
|
MYSQL_RES *mysql_res,
|
||||||
bool ShowOnlyEnabledTags)
|
bool ShowOnlyEnabledTags)
|
||||||
{
|
{
|
||||||
|
@ -1906,7 +1909,7 @@ static void Tst_ShowFormSelTags (const struct Tst_Tags *Tags,
|
||||||
/************* Show a form to enable/disable and rename test tags ************/
|
/************* Show a form to enable/disable and rename test tags ************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
static void Tst_ShowFormEditTags (void)
|
void Tag_ShowFormEditTags (void)
|
||||||
{
|
{
|
||||||
extern const char *Hlp_ASSESSMENT_Tests_configuring_tests;
|
extern const char *Hlp_ASSESSMENT_Tests_configuring_tests;
|
||||||
extern const char *Txt_No_test_questions;
|
extern const char *Txt_No_test_questions;
|
||||||
|
@ -1943,9 +1946,9 @@ static void Tst_ShowFormEditTags (void)
|
||||||
|
|
||||||
/* Form to enable / disable this tag */
|
/* Form to enable / disable this tag */
|
||||||
if (row[2][0] == 'Y') // Tag disabled
|
if (row[2][0] == 'Y') // Tag disabled
|
||||||
Tst_PutIconEnable (TagCod,row[1]);
|
Tag_PutIconEnable (TagCod,row[1]);
|
||||||
else
|
else
|
||||||
Tst_PutIconDisable (TagCod,row[1]);
|
Tag_PutIconDisable (TagCod,row[1]);
|
||||||
|
|
||||||
/* Form to rename this tag */
|
/* Form to rename this tag */
|
||||||
HTM_TD_Begin ("class=\"LM\"");
|
HTM_TD_Begin ("class=\"LM\"");
|
||||||
|
@ -1974,12 +1977,12 @@ static void Tst_ShowFormEditTags (void)
|
||||||
/******************* Put a link and an icon to enable a tag ******************/
|
/******************* Put a link and an icon to enable a tag ******************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
static void Tst_PutIconEnable (long TagCod,const char *TagTxt)
|
static void Tag_PutIconEnable (long TagCod,const char *TagTxt)
|
||||||
{
|
{
|
||||||
extern const char *Txt_Tag_X_not_allowed_Click_to_allow_it;
|
extern const char *Txt_Tag_X_not_allowed_Click_to_allow_it;
|
||||||
|
|
||||||
HTM_TD_Begin ("class=\"BM\"");
|
HTM_TD_Begin ("class=\"BM\"");
|
||||||
Frm_StartForm (ActEnableTag);
|
Frm_StartForm (ActEnaTag);
|
||||||
Par_PutHiddenParamLong (NULL,"TagCod",TagCod);
|
Par_PutHiddenParamLong (NULL,"TagCod",TagCod);
|
||||||
Ico_PutIconLink ("eye-slash-red.svg",
|
Ico_PutIconLink ("eye-slash-red.svg",
|
||||||
Str_BuildStringStr (Txt_Tag_X_not_allowed_Click_to_allow_it,
|
Str_BuildStringStr (Txt_Tag_X_not_allowed_Click_to_allow_it,
|
||||||
|
@ -1993,12 +1996,12 @@ static void Tst_PutIconEnable (long TagCod,const char *TagTxt)
|
||||||
/****************** Put a link and an icon to disable a tag ******************/
|
/****************** Put a link and an icon to disable a tag ******************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
static void Tst_PutIconDisable (long TagCod,const char *TagTxt)
|
static void Tag_PutIconDisable (long TagCod,const char *TagTxt)
|
||||||
{
|
{
|
||||||
extern const char *Txt_Tag_X_allowed_Click_to_disable_it;
|
extern const char *Txt_Tag_X_allowed_Click_to_disable_it;
|
||||||
|
|
||||||
HTM_TD_Begin ("class=\"BM\"");
|
HTM_TD_Begin ("class=\"BM\"");
|
||||||
Frm_StartForm (ActDisableTag);
|
Frm_StartForm (ActDisTag);
|
||||||
Par_PutHiddenParamLong (NULL,"TagCod",TagCod);
|
Par_PutHiddenParamLong (NULL,"TagCod",TagCod);
|
||||||
Ico_PutIconLink ("eye-green.svg",
|
Ico_PutIconLink ("eye-green.svg",
|
||||||
Str_BuildStringStr (Txt_Tag_X_allowed_Click_to_disable_it,
|
Str_BuildStringStr (Txt_Tag_X_allowed_Click_to_disable_it,
|
||||||
|
|
|
@ -143,12 +143,14 @@ unsigned long Tst_GetTagsQst (long QstCod,MYSQL_RES **mysql_res);
|
||||||
void Tst_GetAndWriteTagsQst (long QstCod);
|
void Tst_GetAndWriteTagsQst (long QstCod);
|
||||||
|
|
||||||
void Tst_ShowFormConfig (void);
|
void Tst_ShowFormConfig (void);
|
||||||
void Tst_EnableTag (void);
|
void Tag_EnableTag (void);
|
||||||
void Tst_DisableTag (void);
|
void Tag_DisableTag (void);
|
||||||
void Tst_RenameTag (void);
|
void Tag_RenameTag (void);
|
||||||
|
|
||||||
bool Tst_CheckIfCourseHaveTestsAndPluggableIsUnknown (void);
|
bool Tst_CheckIfCourseHaveTestsAndPluggableIsUnknown (void);
|
||||||
|
|
||||||
|
void Tag_ShowFormEditTags (void);
|
||||||
|
|
||||||
unsigned Tst_CountNumQuestionsInList (const char *ListQuestions);
|
unsigned Tst_CountNumQuestionsInList (const char *ListQuestions);
|
||||||
|
|
||||||
void Tst_ShowFormEditOneQst (void);
|
void Tst_ShowFormEditOneQst (void);
|
||||||
|
|
|
@ -9762,6 +9762,90 @@ const char *Txt_Actions[Act_NUM_ACTIONS] =
|
||||||
"" // Potrzebujesz tlumaczenie
|
"" // Potrzebujesz tlumaczenie
|
||||||
#elif L==9 // pt
|
#elif L==9 // pt
|
||||||
"" // Precisa de tradução
|
"" // Precisa de tradução
|
||||||
|
#endif
|
||||||
|
,
|
||||||
|
[ActEdiTag] =
|
||||||
|
#if L==1 // ca
|
||||||
|
"" // Necessita traducció
|
||||||
|
#elif L==2 // de
|
||||||
|
"" // Need Übersetzung
|
||||||
|
#elif L==3 // en
|
||||||
|
"Edit tags in the question bank"
|
||||||
|
#elif L==4 // es
|
||||||
|
"Editar descriptores del banco de preguntas"
|
||||||
|
#elif L==5 // fr
|
||||||
|
"" // Besoin de traduction
|
||||||
|
#elif L==6 // gn
|
||||||
|
"" // Okoteve traducción
|
||||||
|
#elif L==7 // it
|
||||||
|
"" // Bisogno di traduzione
|
||||||
|
#elif L==8 // pl
|
||||||
|
"" // Potrzebujesz tlumaczenie
|
||||||
|
#elif L==9 // pt
|
||||||
|
"" // Precisa de tradução
|
||||||
|
#endif
|
||||||
|
,
|
||||||
|
[ActEnaTag] =
|
||||||
|
#if L==1 // ca
|
||||||
|
"" // Necessita traducció
|
||||||
|
#elif L==2 // de
|
||||||
|
"" // Need Übersetzung
|
||||||
|
#elif L==3 // en
|
||||||
|
"Enable a tag in the question bank"
|
||||||
|
#elif L==4 // es
|
||||||
|
"Habilitar un descriptor del banco de preguntas"
|
||||||
|
#elif L==5 // fr
|
||||||
|
"" // Besoin de traduction
|
||||||
|
#elif L==6 // gn
|
||||||
|
"" // Okoteve traducción
|
||||||
|
#elif L==7 // it
|
||||||
|
"" // Bisogno di traduzione
|
||||||
|
#elif L==8 // pl
|
||||||
|
"" // Potrzebujesz tlumaczenie
|
||||||
|
#elif L==9 // pt
|
||||||
|
"" // Precisa de tradução
|
||||||
|
#endif
|
||||||
|
,
|
||||||
|
[ActDisTag] =
|
||||||
|
#if L==1 // ca
|
||||||
|
"" // Necessita traducció
|
||||||
|
#elif L==2 // de
|
||||||
|
"" // Need Übersetzung
|
||||||
|
#elif L==3 // en
|
||||||
|
"Disable a tag in the question bank"
|
||||||
|
#elif L==4 // es
|
||||||
|
"Inhabilitar un descriptor del banco de preguntas"
|
||||||
|
#elif L==5 // fr
|
||||||
|
"" // Besoin de traduction
|
||||||
|
#elif L==6 // gn
|
||||||
|
"" // Okoteve traducción
|
||||||
|
#elif L==7 // it
|
||||||
|
"" // Bisogno di traduzione
|
||||||
|
#elif L==8 // pl
|
||||||
|
"" // Potrzebujesz tlumaczenie
|
||||||
|
#elif L==9 // pt
|
||||||
|
"" // Precisa de tradução
|
||||||
|
#endif
|
||||||
|
,
|
||||||
|
[ActRenTag] =
|
||||||
|
#if L==1 // ca
|
||||||
|
"" // Necessita traducció
|
||||||
|
#elif L==2 // de
|
||||||
|
"" // Need Übersetzung
|
||||||
|
#elif L==3 // en
|
||||||
|
"Rename a tag in the question bank"
|
||||||
|
#elif L==4 // es
|
||||||
|
"Renombrar un descriptor del banco de preguntas"
|
||||||
|
#elif L==5 // fr
|
||||||
|
"" // Besoin de traduction
|
||||||
|
#elif L==6 // gn
|
||||||
|
"" // Okoteve traducción
|
||||||
|
#elif L==7 // it
|
||||||
|
"" // Bisogno di traduzione
|
||||||
|
#elif L==8 // pl
|
||||||
|
"" // Potrzebujesz tlumaczenie
|
||||||
|
#elif L==9 // pt
|
||||||
|
"" // Precisa de tradução
|
||||||
#endif
|
#endif
|
||||||
,
|
,
|
||||||
[ActSeeTst] =
|
[ActSeeTst] =
|
||||||
|
@ -9846,69 +9930,6 @@ const char *Txt_Actions[Act_NUM_ACTIONS] =
|
||||||
"" // Potrzebujesz tlumaczenie
|
"" // Potrzebujesz tlumaczenie
|
||||||
#elif L==9 // pt
|
#elif L==9 // pt
|
||||||
"" // Precisa de tradução
|
"" // Precisa de tradução
|
||||||
#endif
|
|
||||||
,
|
|
||||||
[ActEnableTag] =
|
|
||||||
#if L==1 // ca
|
|
||||||
"" // Necessita traducció
|
|
||||||
#elif L==2 // de
|
|
||||||
"" // Need Übersetzung
|
|
||||||
#elif L==3 // en
|
|
||||||
"Enable a test tag"
|
|
||||||
#elif L==4 // es
|
|
||||||
"Habilitar un descriptor de test"
|
|
||||||
#elif L==5 // fr
|
|
||||||
"" // Besoin de traduction
|
|
||||||
#elif L==6 // gn
|
|
||||||
"" // Okoteve traducción
|
|
||||||
#elif L==7 // it
|
|
||||||
"" // Bisogno di traduzione
|
|
||||||
#elif L==8 // pl
|
|
||||||
"" // Potrzebujesz tlumaczenie
|
|
||||||
#elif L==9 // pt
|
|
||||||
"" // Precisa de tradução
|
|
||||||
#endif
|
|
||||||
,
|
|
||||||
[ActDisableTag] =
|
|
||||||
#if L==1 // ca
|
|
||||||
"" // Necessita traducció
|
|
||||||
#elif L==2 // de
|
|
||||||
"" // Need Übersetzung
|
|
||||||
#elif L==3 // en
|
|
||||||
"Disable a test tag"
|
|
||||||
#elif L==4 // es
|
|
||||||
"Inhabilitar un descriptor de test"
|
|
||||||
#elif L==5 // fr
|
|
||||||
"" // Besoin de traduction
|
|
||||||
#elif L==6 // gn
|
|
||||||
"" // Okoteve traducción
|
|
||||||
#elif L==7 // it
|
|
||||||
"" // Bisogno di traduzione
|
|
||||||
#elif L==8 // pl
|
|
||||||
"" // Potrzebujesz tlumaczenie
|
|
||||||
#elif L==9 // pt
|
|
||||||
"" // Precisa de tradução
|
|
||||||
#endif
|
|
||||||
,
|
|
||||||
[ActRenTag] =
|
|
||||||
#if L==1 // ca
|
|
||||||
"" // Necessita traducció
|
|
||||||
#elif L==2 // de
|
|
||||||
"" // Need Übersetzung
|
|
||||||
#elif L==3 // en
|
|
||||||
"Rename a test tag"
|
|
||||||
#elif L==4 // es
|
|
||||||
"Renombrar un descriptor de test"
|
|
||||||
#elif L==5 // fr
|
|
||||||
"" // Besoin de traduction
|
|
||||||
#elif L==6 // gn
|
|
||||||
"" // Okoteve traducción
|
|
||||||
#elif L==7 // it
|
|
||||||
"" // Bisogno di traduzione
|
|
||||||
#elif L==8 // pl
|
|
||||||
"" // Potrzebujesz tlumaczenie
|
|
||||||
#elif L==9 // pt
|
|
||||||
"" // Precisa de tradução
|
|
||||||
#endif
|
#endif
|
||||||
,
|
,
|
||||||
[ActRcvCfgTst] =
|
[ActRcvCfgTst] =
|
||||||
|
|
Loading…
Reference in New Issue