Version 22.107.40:May 10, 2023 Changes in creation of test questions and survey questions.

This commit is contained in:
acanas 2023-05-11 10:21:32 +02:00
parent d7446c3106
commit 1bd200959b
8 changed files with 239 additions and 229 deletions

View File

@ -705,7 +705,8 @@ const struct Act_Actions ActLst_Actions[ActLst_NUM_ACTIONS] =
[ActReqImpTstQst ] = {1007,-1,TabUnk,ActEdiTstQst ,0x220,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,QstImp_ShowFormImpQstsFromXML ,NULL}, [ActReqImpTstQst ] = {1007,-1,TabUnk,ActEdiTstQst ,0x220,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,QstImp_ShowFormImpQstsFromXML ,NULL},
[ActImpTstQst ] = {1008,-1,TabUnk,ActEdiTstQst ,0x220,0x200, 0, 0, 0, 0, 0,Act_CONT_DATA,Act_BRW_1ST_TAB,NULL ,QstImp_ImpQstsFromXML ,NULL}, [ActImpTstQst ] = {1008,-1,TabUnk,ActEdiTstQst ,0x220,0x200, 0, 0, 0, 0, 0,Act_CONT_DATA,Act_BRW_1ST_TAB,NULL ,QstImp_ImpQstsFromXML ,NULL},
[ActLstTstQst ] = { 132,-1,TabUnk,ActEdiTstQst ,0x220,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Qst_ListQuestionsToEdit ,NULL}, [ActLstTstQst ] = { 132,-1,TabUnk,ActEdiTstQst ,0x220,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Qst_ListQuestionsToEdit ,NULL},
[ActRcvTstQst ] = { 126,-1,TabUnk,ActEdiTstQst ,0x220,0x200, 0, 0, 0, 0, 0,Act_CONT_DATA,Act_BRW_1ST_TAB,NULL ,Qst_ReceiveQst ,NULL}, [ActNewTstQst ] = { 126,-1,TabUnk,ActEdiTstQst ,0x220,0x200, 0, 0, 0, 0, 0,Act_CONT_DATA,Act_BRW_1ST_TAB,NULL ,Qst_ReceiveQst ,NULL},
[ActChgTstQst ] = {1975,-1,TabUnk,ActEdiTstQst ,0x220,0x200, 0, 0, 0, 0, 0,Act_CONT_DATA,Act_BRW_1ST_TAB,NULL ,Qst_ReceiveQst ,NULL},
[ActReqRemSevTstQst ] = {1835,-1,TabUnk,ActEdiTstQst ,0x220,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Qst_ReqRemSelectedQsts ,NULL}, [ActReqRemSevTstQst ] = {1835,-1,TabUnk,ActEdiTstQst ,0x220,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Qst_ReqRemSelectedQsts ,NULL},
[ActRemSevTstQst ] = {1836,-1,TabUnk,ActEdiTstQst ,0x220,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Qst_RemoveSelectedQsts ,NULL}, [ActRemSevTstQst ] = {1836,-1,TabUnk,ActEdiTstQst ,0x220,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Qst_RemoveSelectedQsts ,NULL},
[ActReqRemOneTstQst ] = {1523,-1,TabUnk,ActEdiTstQst ,0x220,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Qst_ReqRemOneQst ,NULL}, [ActReqRemOneTstQst ] = {1523,-1,TabUnk,ActEdiTstQst ,0x220,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Qst_ReqRemOneQst ,NULL},
@ -1792,7 +1793,8 @@ const struct Act_Actions ActLst_Actions[ActLst_NUM_ACTIONS] =
[ActUnhSvy ] = { 978,-1,TabUnk,ActSeeAllSvy ,0x3E0,0x3C0,0x3C0,0x3C0,0x3C0,0x3C0,0x3C0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Svy_UnhideSurvey ,NULL}, [ActUnhSvy ] = { 978,-1,TabUnk,ActSeeAllSvy ,0x3E0,0x3C0,0x3C0,0x3C0,0x3C0,0x3C0,0x3C0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Svy_UnhideSurvey ,NULL},
[ActReqLnkSvy ] = {1937,-1,TabUnk,ActSeeAllSvy ,0x220,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,SvyRsc_GetLinkToSurvey ,NULL}, [ActReqLnkSvy ] = {1937,-1,TabUnk,ActSeeAllSvy ,0x220,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,SvyRsc_GetLinkToSurvey ,NULL},
[ActEdiOneSvyQst ] = { 979,-1,TabUnk,ActSeeAllSvy ,0x3E0,0x3C0,0x3C0,0x3C0,0x3C0,0x3C0,0x3C0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Svy_ReqEditQuestion ,NULL}, [ActEdiOneSvyQst ] = { 979,-1,TabUnk,ActSeeAllSvy ,0x3E0,0x3C0,0x3C0,0x3C0,0x3C0,0x3C0,0x3C0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Svy_ReqEditQuestion ,NULL},
[ActRcvSvyQst ] = { 980,-1,TabUnk,ActSeeAllSvy ,0x3E0,0x3C0,0x3C0,0x3C0,0x3C0,0x3C0,0x3C0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Svy_ReceiveQst ,NULL}, [ActNewSvyQst ] = { 980,-1,TabUnk,ActSeeAllSvy ,0x3E0,0x3C0,0x3C0,0x3C0,0x3C0,0x3C0,0x3C0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Svy_ReceiveQst ,NULL},
[ActChgSvyQst ] = {1976,-1,TabUnk,ActSeeAllSvy ,0x3E0,0x3C0,0x3C0,0x3C0,0x3C0,0x3C0,0x3C0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Svy_ReceiveQst ,NULL},
[ActReqRemSvyQst ] = {1524,-1,TabUnk,ActSeeAllSvy ,0x3E0,0x3C0,0x3C0,0x3C0,0x3C0,0x3C0,0x3C0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Svy_ReqRemQst ,NULL}, [ActReqRemSvyQst ] = {1524,-1,TabUnk,ActSeeAllSvy ,0x3E0,0x3C0,0x3C0,0x3C0,0x3C0,0x3C0,0x3C0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Svy_ReqRemQst ,NULL},
[ActRemSvyQst ] = { 981,-1,TabUnk,ActSeeAllSvy ,0x3E0,0x3C0,0x3C0,0x3C0,0x3C0,0x3C0,0x3C0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Svy_RemoveQst ,NULL}, [ActRemSvyQst ] = { 981,-1,TabUnk,ActSeeAllSvy ,0x3E0,0x3C0,0x3C0,0x3C0,0x3C0,0x3C0,0x3C0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Svy_RemoveQst ,NULL},
@ -2018,7 +2020,7 @@ Act_Action_t ActLst_FromActCodToAction[1 + ActLst_MAX_ACTION_COD] = // Do not re
-1, // #123 (obsolete action) -1, // #123 (obsolete action)
-1, // #124 (obsolete action) -1, // #124 (obsolete action)
-1, // #125 (obsolete action) -1, // #125 (obsolete action)
ActRcvTstQst, // #126 ActNewTstQst, // #126
ActPrnRecSevTch, // #127 ActPrnRecSevTch, // #127
-1, // #128 (obsolete action) -1, // #128 (obsolete action)
-1, // #129 (obsolete action) -1, // #129 (obsolete action)
@ -2872,7 +2874,7 @@ Act_Action_t ActLst_FromActCodToAction[1 + ActLst_MAX_ACTION_COD] = // Do not re
ActHidSvy, // #977 ActHidSvy, // #977
ActUnhSvy, // #978 ActUnhSvy, // #978
ActEdiOneSvyQst, // #979 ActEdiOneSvyQst, // #979
ActRcvSvyQst, // #980 ActNewSvyQst, // #980
ActRemSvyQst, // #981 ActRemSvyQst, // #981
ActSeeOneSvy, // #982 ActSeeOneSvy, // #982
ActAnsSvy, // #983 ActAnsSvy, // #983
@ -3867,4 +3869,6 @@ Act_Action_t ActLst_FromActCodToAction[1 + ActLst_MAX_ACTION_COD] = // Do not re
ActSeeRscCli_InRub, // #1972 ActSeeRscCli_InRub, // #1972
ActRemRscCli_InRub, // #1973 ActRemRscCli_InRub, // #1973
ActChgPrjSco, // #1974 ActChgPrjSco, // #1974
ActChgTstQst, // #1975
ActChgSvyQst, // #1976
}; };

View File

@ -631,158 +631,159 @@
#define ActReqImpTstQst (ActChgCrsTT1stDay + 104) #define ActReqImpTstQst (ActChgCrsTT1stDay + 104)
#define ActImpTstQst (ActChgCrsTT1stDay + 105) #define ActImpTstQst (ActChgCrsTT1stDay + 105)
#define ActLstTstQst (ActChgCrsTT1stDay + 106) #define ActLstTstQst (ActChgCrsTT1stDay + 106)
#define ActRcvTstQst (ActChgCrsTT1stDay + 107) #define ActNewTstQst (ActChgCrsTT1stDay + 107)
#define ActReqRemSevTstQst (ActChgCrsTT1stDay + 108) #define ActChgTstQst (ActChgCrsTT1stDay + 108)
#define ActRemSevTstQst (ActChgCrsTT1stDay + 109) #define ActReqRemSevTstQst (ActChgCrsTT1stDay + 109)
#define ActReqRemOneTstQst (ActChgCrsTT1stDay + 110) #define ActRemSevTstQst (ActChgCrsTT1stDay + 110)
#define ActRemOneTstQst (ActChgCrsTT1stDay + 111) #define ActReqRemOneTstQst (ActChgCrsTT1stDay + 111)
#define ActChgShfTstQst (ActChgCrsTT1stDay + 112) #define ActRemOneTstQst (ActChgCrsTT1stDay + 112)
#define ActChgShfTstQst (ActChgCrsTT1stDay + 113)
#define ActEdiTag (ActChgCrsTT1stDay + 113) #define ActEdiTag (ActChgCrsTT1stDay + 114)
#define ActEnaTag (ActChgCrsTT1stDay + 114) #define ActEnaTag (ActChgCrsTT1stDay + 115)
#define ActDisTag (ActChgCrsTT1stDay + 115) #define ActDisTag (ActChgCrsTT1stDay + 116)
#define ActRenTag (ActChgCrsTT1stDay + 116) #define ActRenTag (ActChgCrsTT1stDay + 117)
#define ActSeeTst (ActChgCrsTT1stDay + 117) #define ActSeeTst (ActChgCrsTT1stDay + 118)
#define ActReqAssTst (ActChgCrsTT1stDay + 118) #define ActReqAssTst (ActChgCrsTT1stDay + 119)
#define ActAssTst (ActChgCrsTT1stDay + 119) #define ActAssTst (ActChgCrsTT1stDay + 120)
#define ActCfgTst (ActChgCrsTT1stDay + 120) #define ActCfgTst (ActChgCrsTT1stDay + 121)
#define ActRcvCfgTst (ActChgCrsTT1stDay + 121) #define ActRcvCfgTst (ActChgCrsTT1stDay + 122)
#define ActReqSeeMyTstRes (ActChgCrsTT1stDay + 122) #define ActReqSeeMyTstRes (ActChgCrsTT1stDay + 123)
#define ActSeeMyTstResCrs (ActChgCrsTT1stDay + 123) #define ActSeeMyTstResCrs (ActChgCrsTT1stDay + 124)
#define ActSeeOneTstResMe (ActChgCrsTT1stDay + 124) #define ActSeeOneTstResMe (ActChgCrsTT1stDay + 125)
#define ActReqSeeUsrTstRes (ActChgCrsTT1stDay + 125) #define ActReqSeeUsrTstRes (ActChgCrsTT1stDay + 126)
#define ActSeeUsrTstResCrs (ActChgCrsTT1stDay + 126) #define ActSeeUsrTstResCrs (ActChgCrsTT1stDay + 127)
#define ActSeeOneTstResOth (ActChgCrsTT1stDay + 127) #define ActSeeOneTstResOth (ActChgCrsTT1stDay + 128)
#define ActSeeOneExa (ActChgCrsTT1stDay + 128) #define ActSeeOneExa (ActChgCrsTT1stDay + 129)
#define ActFrmNewExa (ActChgCrsTT1stDay + 129) #define ActFrmNewExa (ActChgCrsTT1stDay + 130)
#define ActEdiOneExa (ActChgCrsTT1stDay + 130) #define ActEdiOneExa (ActChgCrsTT1stDay + 131)
#define ActNewExa (ActChgCrsTT1stDay + 131) #define ActNewExa (ActChgCrsTT1stDay + 132)
#define ActChgExa (ActChgCrsTT1stDay + 132) #define ActChgExa (ActChgCrsTT1stDay + 133)
#define ActReqRemExa (ActChgCrsTT1stDay + 133) #define ActReqRemExa (ActChgCrsTT1stDay + 134)
#define ActRemExa (ActChgCrsTT1stDay + 134) #define ActRemExa (ActChgCrsTT1stDay + 135)
#define ActHidExa (ActChgCrsTT1stDay + 135) #define ActHidExa (ActChgCrsTT1stDay + 136)
#define ActUnhExa (ActChgCrsTT1stDay + 136) #define ActUnhExa (ActChgCrsTT1stDay + 137)
#define ActReqLnkExa (ActChgCrsTT1stDay + 137) #define ActReqLnkExa (ActChgCrsTT1stDay + 138)
#define ActNewExaSet (ActChgCrsTT1stDay + 138) #define ActNewExaSet (ActChgCrsTT1stDay + 139)
#define ActReqRemExaSet (ActChgCrsTT1stDay + 139) #define ActReqRemExaSet (ActChgCrsTT1stDay + 140)
#define ActRemExaSet (ActChgCrsTT1stDay + 140) #define ActRemExaSet (ActChgCrsTT1stDay + 141)
#define ActUp_ExaSet (ActChgCrsTT1stDay + 141) #define ActUp_ExaSet (ActChgCrsTT1stDay + 142)
#define ActDwnExaSet (ActChgCrsTT1stDay + 142) #define ActDwnExaSet (ActChgCrsTT1stDay + 143)
#define ActChgTitExaSet (ActChgCrsTT1stDay + 143) #define ActChgTitExaSet (ActChgCrsTT1stDay + 144)
#define ActChgNumQstExaSet (ActChgCrsTT1stDay + 144) #define ActChgNumQstExaSet (ActChgCrsTT1stDay + 145)
#define ActReqAddQstExaSet (ActChgCrsTT1stDay + 145) #define ActReqAddQstExaSet (ActChgCrsTT1stDay + 146)
#define ActLstTstQstForSet (ActChgCrsTT1stDay + 146) #define ActLstTstQstForSet (ActChgCrsTT1stDay + 147)
#define ActAddQstToExa (ActChgCrsTT1stDay + 147) #define ActAddQstToExa (ActChgCrsTT1stDay + 148)
#define ActReqRemSetQst (ActChgCrsTT1stDay + 148) #define ActReqRemSetQst (ActChgCrsTT1stDay + 149)
#define ActRemExaQst (ActChgCrsTT1stDay + 149) #define ActRemExaQst (ActChgCrsTT1stDay + 150)
#define ActValSetQst (ActChgCrsTT1stDay + 150) #define ActValSetQst (ActChgCrsTT1stDay + 151)
#define ActInvSetQst (ActChgCrsTT1stDay + 151) #define ActInvSetQst (ActChgCrsTT1stDay + 152)
#define ActReqNewExaSes (ActChgCrsTT1stDay + 152) #define ActReqNewExaSes (ActChgCrsTT1stDay + 153)
#define ActEdiOneExaSes (ActChgCrsTT1stDay + 153) #define ActEdiOneExaSes (ActChgCrsTT1stDay + 154)
#define ActNewExaSes (ActChgCrsTT1stDay + 154) #define ActNewExaSes (ActChgCrsTT1stDay + 155)
#define ActChgExaSes (ActChgCrsTT1stDay + 155) #define ActChgExaSes (ActChgCrsTT1stDay + 156)
#define ActReqRemExaSes (ActChgCrsTT1stDay + 156) #define ActReqRemExaSes (ActChgCrsTT1stDay + 157)
#define ActRemExaSes (ActChgCrsTT1stDay + 157) #define ActRemExaSes (ActChgCrsTT1stDay + 158)
#define ActHidExaSes (ActChgCrsTT1stDay + 158) #define ActHidExaSes (ActChgCrsTT1stDay + 159)
#define ActUnhExaSes (ActChgCrsTT1stDay + 159) #define ActUnhExaSes (ActChgCrsTT1stDay + 160)
#define ActSeeExaPrn (ActChgCrsTT1stDay + 160) #define ActSeeExaPrn (ActChgCrsTT1stDay + 161)
#define ActAnsExaPrn (ActChgCrsTT1stDay + 161) #define ActAnsExaPrn (ActChgCrsTT1stDay + 162)
#define ActEndExaPrn (ActChgCrsTT1stDay + 162) #define ActEndExaPrn (ActChgCrsTT1stDay + 163)
#define ActSeeMyExaResCrs (ActChgCrsTT1stDay + 163) #define ActSeeMyExaResCrs (ActChgCrsTT1stDay + 164)
#define ActSeeMyExaResExa (ActChgCrsTT1stDay + 164) #define ActSeeMyExaResExa (ActChgCrsTT1stDay + 165)
#define ActSeeMyExaResSes (ActChgCrsTT1stDay + 165) #define ActSeeMyExaResSes (ActChgCrsTT1stDay + 166)
#define ActSeeOneExaResMe (ActChgCrsTT1stDay + 166) #define ActSeeOneExaResMe (ActChgCrsTT1stDay + 167)
#define ActReqSeeUsrExaRes (ActChgCrsTT1stDay + 167) #define ActReqSeeUsrExaRes (ActChgCrsTT1stDay + 168)
#define ActSeeUsrExaResCrs (ActChgCrsTT1stDay + 168) #define ActSeeUsrExaResCrs (ActChgCrsTT1stDay + 169)
#define ActSeeUsrExaResExa (ActChgCrsTT1stDay + 169) #define ActSeeUsrExaResExa (ActChgCrsTT1stDay + 170)
#define ActSeeUsrExaResSes (ActChgCrsTT1stDay + 170) #define ActSeeUsrExaResSes (ActChgCrsTT1stDay + 171)
#define ActSeeOneExaResOth (ActChgCrsTT1stDay + 171) #define ActSeeOneExaResOth (ActChgCrsTT1stDay + 172)
#define ActChgVisExaRes (ActChgCrsTT1stDay + 172) #define ActChgVisExaRes (ActChgCrsTT1stDay + 173)
#define ActSeeOneGam (ActChgCrsTT1stDay + 173) #define ActSeeOneGam (ActChgCrsTT1stDay + 174)
#define ActReqRemMch (ActChgCrsTT1stDay + 174) #define ActReqRemMch (ActChgCrsTT1stDay + 175)
#define ActRemMch (ActChgCrsTT1stDay + 175) #define ActRemMch (ActChgCrsTT1stDay + 176)
#define ActEdiMch (ActChgCrsTT1stDay + 176) #define ActEdiMch (ActChgCrsTT1stDay + 177)
#define ActChgMch (ActChgCrsTT1stDay + 177) #define ActChgMch (ActChgCrsTT1stDay + 178)
#define ActReqNewMch (ActChgCrsTT1stDay + 178) #define ActReqNewMch (ActChgCrsTT1stDay + 179)
#define ActNewMch (ActChgCrsTT1stDay + 179) #define ActNewMch (ActChgCrsTT1stDay + 180)
#define ActResMch (ActChgCrsTT1stDay + 180) #define ActResMch (ActChgCrsTT1stDay + 181)
#define ActBckMch (ActChgCrsTT1stDay + 181) #define ActBckMch (ActChgCrsTT1stDay + 182)
#define ActPlyPauMch (ActChgCrsTT1stDay + 182) #define ActPlyPauMch (ActChgCrsTT1stDay + 183)
#define ActFwdMch (ActChgCrsTT1stDay + 183) #define ActFwdMch (ActChgCrsTT1stDay + 184)
#define ActChgNumColMch (ActChgCrsTT1stDay + 184) #define ActChgNumColMch (ActChgCrsTT1stDay + 185)
#define ActChgVisResMchQst (ActChgCrsTT1stDay + 185) #define ActChgVisResMchQst (ActChgCrsTT1stDay + 186)
#define ActMchCntDwn (ActChgCrsTT1stDay + 186) #define ActMchCntDwn (ActChgCrsTT1stDay + 187)
#define ActRefMchTch (ActChgCrsTT1stDay + 187) #define ActRefMchTch (ActChgCrsTT1stDay + 188)
#define ActJoiMch (ActChgCrsTT1stDay + 188) #define ActJoiMch (ActChgCrsTT1stDay + 189)
#define ActSeeMchAnsQstStd (ActChgCrsTT1stDay + 189) #define ActSeeMchAnsQstStd (ActChgCrsTT1stDay + 190)
#define ActRemMchAnsQstStd (ActChgCrsTT1stDay + 190) #define ActRemMchAnsQstStd (ActChgCrsTT1stDay + 191)
#define ActAnsMchQstStd (ActChgCrsTT1stDay + 191) #define ActAnsMchQstStd (ActChgCrsTT1stDay + 192)
#define ActRefMchStd (ActChgCrsTT1stDay + 192) #define ActRefMchStd (ActChgCrsTT1stDay + 193)
#define ActSeeMyMchResCrs (ActChgCrsTT1stDay + 193) #define ActSeeMyMchResCrs (ActChgCrsTT1stDay + 194)
#define ActSeeMyMchResGam (ActChgCrsTT1stDay + 194) #define ActSeeMyMchResGam (ActChgCrsTT1stDay + 195)
#define ActSeeMyMchResMch (ActChgCrsTT1stDay + 195) #define ActSeeMyMchResMch (ActChgCrsTT1stDay + 196)
#define ActSeeOneMchResMe (ActChgCrsTT1stDay + 196) #define ActSeeOneMchResMe (ActChgCrsTT1stDay + 197)
#define ActReqSeeUsrMchRes (ActChgCrsTT1stDay + 197) #define ActReqSeeUsrMchRes (ActChgCrsTT1stDay + 198)
#define ActSeeUsrMchResCrs (ActChgCrsTT1stDay + 198) #define ActSeeUsrMchResCrs (ActChgCrsTT1stDay + 199)
#define ActSeeUsrMchResGam (ActChgCrsTT1stDay + 199) #define ActSeeUsrMchResGam (ActChgCrsTT1stDay + 200)
#define ActSeeUsrMchResMch (ActChgCrsTT1stDay + 200) #define ActSeeUsrMchResMch (ActChgCrsTT1stDay + 201)
#define ActSeeOneMchResOth (ActChgCrsTT1stDay + 201) #define ActSeeOneMchResOth (ActChgCrsTT1stDay + 202)
#define ActChgVisResMchUsr (ActChgCrsTT1stDay + 202) #define ActChgVisResMchUsr (ActChgCrsTT1stDay + 203)
#define ActLstOneGam (ActChgCrsTT1stDay + 203) #define ActLstOneGam (ActChgCrsTT1stDay + 204)
#define ActFrmNewGam (ActChgCrsTT1stDay + 204) #define ActFrmNewGam (ActChgCrsTT1stDay + 205)
#define ActEdiOneGam (ActChgCrsTT1stDay + 205) #define ActEdiOneGam (ActChgCrsTT1stDay + 206)
#define ActNewGam (ActChgCrsTT1stDay + 206) #define ActNewGam (ActChgCrsTT1stDay + 207)
#define ActChgGam (ActChgCrsTT1stDay + 207) #define ActChgGam (ActChgCrsTT1stDay + 208)
#define ActReqRemGam (ActChgCrsTT1stDay + 208) #define ActReqRemGam (ActChgCrsTT1stDay + 209)
#define ActRemGam (ActChgCrsTT1stDay + 209) #define ActRemGam (ActChgCrsTT1stDay + 210)
#define ActHidGam (ActChgCrsTT1stDay + 210) #define ActHidGam (ActChgCrsTT1stDay + 211)
#define ActUnhGam (ActChgCrsTT1stDay + 211) #define ActUnhGam (ActChgCrsTT1stDay + 212)
#define ActAddOneGamQst (ActChgCrsTT1stDay + 212) #define ActAddOneGamQst (ActChgCrsTT1stDay + 213)
#define ActGamLstTstQst (ActChgCrsTT1stDay + 213) #define ActGamLstTstQst (ActChgCrsTT1stDay + 214)
#define ActAddTstQstToGam (ActChgCrsTT1stDay + 214) #define ActAddTstQstToGam (ActChgCrsTT1stDay + 215)
#define ActReqRemGamQst (ActChgCrsTT1stDay + 215) #define ActReqRemGamQst (ActChgCrsTT1stDay + 216)
#define ActRemGamQst (ActChgCrsTT1stDay + 216) #define ActRemGamQst (ActChgCrsTT1stDay + 217)
#define ActUp_GamQst (ActChgCrsTT1stDay + 217) #define ActUp_GamQst (ActChgCrsTT1stDay + 218)
#define ActDwnGamQst (ActChgCrsTT1stDay + 218) #define ActDwnGamQst (ActChgCrsTT1stDay + 219)
#define ActReqLnkGam (ActChgCrsTT1stDay + 219) #define ActReqLnkGam (ActChgCrsTT1stDay + 220)
#define ActSeeOneRub (ActChgCrsTT1stDay + 220) #define ActSeeOneRub (ActChgCrsTT1stDay + 221)
#define ActFrmNewRub (ActChgCrsTT1stDay + 221) #define ActFrmNewRub (ActChgCrsTT1stDay + 222)
#define ActEdiOneRub (ActChgCrsTT1stDay + 222) #define ActEdiOneRub (ActChgCrsTT1stDay + 223)
#define ActNewRub (ActChgCrsTT1stDay + 223) #define ActNewRub (ActChgCrsTT1stDay + 224)
#define ActChgRub (ActChgCrsTT1stDay + 224) #define ActChgRub (ActChgCrsTT1stDay + 225)
#define ActReqRemRub (ActChgCrsTT1stDay + 225) #define ActReqRemRub (ActChgCrsTT1stDay + 226)
#define ActRemRub (ActChgCrsTT1stDay + 226) #define ActRemRub (ActChgCrsTT1stDay + 227)
#define ActReqLnkRub (ActChgCrsTT1stDay + 227) #define ActReqLnkRub (ActChgCrsTT1stDay + 228)
#define ActSeeRscCli_InRub (ActChgCrsTT1stDay + 228) #define ActSeeRscCli_InRub (ActChgCrsTT1stDay + 229)
#define ActRemRscCli_InRub (ActChgCrsTT1stDay + 229) #define ActRemRscCli_InRub (ActChgCrsTT1stDay + 230)
#define ActNewRubCri (ActChgCrsTT1stDay + 230) #define ActNewRubCri (ActChgCrsTT1stDay + 231)
#define ActReqRemRubCri (ActChgCrsTT1stDay + 231) #define ActReqRemRubCri (ActChgCrsTT1stDay + 232)
#define ActRemRubCri (ActChgCrsTT1stDay + 232) #define ActRemRubCri (ActChgCrsTT1stDay + 233)
#define ActUp_RubCri (ActChgCrsTT1stDay + 233) #define ActUp_RubCri (ActChgCrsTT1stDay + 234)
#define ActDwnRubCri (ActChgCrsTT1stDay + 234) #define ActDwnRubCri (ActChgCrsTT1stDay + 235)
#define ActChgTitRubCri (ActChgCrsTT1stDay + 235) #define ActChgTitRubCri (ActChgCrsTT1stDay + 236)
#define ActChgLnkRubCri (ActChgCrsTT1stDay + 236) #define ActChgLnkRubCri (ActChgCrsTT1stDay + 237)
#define ActChgMinRubCri (ActChgCrsTT1stDay + 237) #define ActChgMinRubCri (ActChgCrsTT1stDay + 238)
#define ActChgMaxRubCri (ActChgCrsTT1stDay + 238) #define ActChgMaxRubCri (ActChgCrsTT1stDay + 239)
#define ActChgWeiRubCri (ActChgCrsTT1stDay + 239) #define ActChgWeiRubCri (ActChgCrsTT1stDay + 240)
/*****************************************************************************/ /*****************************************************************************/
/******************************** Files tab **********************************/ /******************************** Files tab **********************************/
@ -1682,18 +1683,19 @@
#define ActReqLnkSvy (ActMaiUsr + 24) #define ActReqLnkSvy (ActMaiUsr + 24)
#define ActEdiOneSvyQst (ActMaiUsr + 25) #define ActEdiOneSvyQst (ActMaiUsr + 25)
#define ActRcvSvyQst (ActMaiUsr + 26) #define ActNewSvyQst (ActMaiUsr + 26)
#define ActReqRemSvyQst (ActMaiUsr + 27) #define ActChgSvyQst (ActMaiUsr + 27)
#define ActRemSvyQst (ActMaiUsr + 28) #define ActReqRemSvyQst (ActMaiUsr + 28)
#define ActRemSvyQst (ActMaiUsr + 29)
#define ActSeeAccGbl (ActMaiUsr + 29) #define ActSeeAccGbl (ActMaiUsr + 30)
#define ActReqAccCrs (ActMaiUsr + 30) #define ActReqAccCrs (ActMaiUsr + 31)
#define ActSeeAccCrs (ActMaiUsr + 31) #define ActSeeAccCrs (ActMaiUsr + 32)
#define ActLstClk (ActMaiUsr + 32) #define ActLstClk (ActMaiUsr + 33)
#define ActRefLstClk (ActMaiUsr + 33) #define ActRefLstClk (ActMaiUsr + 34)
#define ActSeeMyUsgRep (ActMaiUsr + 34) #define ActSeeMyUsgRep (ActMaiUsr + 35)
/*****************************************************************************/ /*****************************************************************************/
/******************************** Profile tab ********************************/ /******************************** Profile tab ********************************/
@ -1778,7 +1780,7 @@
#define ActLst_NUM_ACTIONS (ActChgMyTT1stDay + 1) #define ActLst_NUM_ACTIONS (ActChgMyTT1stDay + 1)
#define ActLst_MAX_ACTION_COD 1974 #define ActLst_MAX_ACTION_COD 1976
#define ActLst_DEFAULT_ACTION_AFTER_LOGIN ActSeeGblTL #define ActLst_DEFAULT_ACTION_AFTER_LOGIN ActSeeGblTL

View File

@ -3398,8 +3398,8 @@ static void Brw_WriteTopBeforeShowingFileBrowser (void)
else if (Brw_GetIfCrsAssigWorksFileBrowser ()) else if (Brw_GetIfCrsAssigWorksFileBrowser ())
{ {
if (!Gbl.FileBrowser.ZIP.CreateZIP) if (!Gbl.FileBrowser.ZIP.CreateZIP)
ZIP_PutLinkToCreateZIPAsgWrk (); // Create a zip file with the ZIP_PutLinkToCreateZIPAsgWrk (); // Create a zip file with the...
// works of the selected users //... works of the selected users
} }
Mnu_ContextMenuEnd (); Mnu_ContextMenuEnd ();

View File

@ -629,10 +629,11 @@ TODO: Emilce Barrera Mesa: Podr
TODO: Emilce Barrera Mesa: Mis estudiantes presentan muchas dificultades a la hora de poner la foto porque la plataforma es muy exigente respecto al fondo de la imagen. TODO: Emilce Barrera Mesa: Mis estudiantes presentan muchas dificultades a la hora de poner la foto porque la plataforma es muy exigente respecto al fondo de la imagen.
*/ */
#define Log_PLATFORM_VERSION "SWAD 22.107.39 (2023-05-10)" #define Log_PLATFORM_VERSION "SWAD 22.107.40 (2023-05-10)"
#define CSS_FILE "swad22.107.36.css" #define CSS_FILE "swad22.107.36.css"
#define JS_FILE "swad22.49.js" #define JS_FILE "swad22.49.js"
/* /*
Version 22.107.40:May 10, 2023 Changes in creation of test questions and survey questions. (? lines)
Version 22.107.39:May 10, 2023 Changes in creation of user account. (337435 lines) Version 22.107.39:May 10, 2023 Changes in creation of user account. (337435 lines)
Version 22.107.38:May 10, 2023 Changes in edition of mail domains. (337455 lines) Version 22.107.38:May 10, 2023 Changes in edition of mail domains. (337455 lines)
Version 22.107.37:May 10, 2023 Changes in edition of attendance events and agenda events. (337484 lines) Version 22.107.37:May 10, 2023 Changes in edition of attendance events and agenda events. (337484 lines)

View File

@ -1806,7 +1806,7 @@ void Qst_PutFormEditOneQst (struct Qst_Question *Question)
extern const char *Txt_Expand; extern const char *Txt_Expand;
extern const char *Txt_Contract; extern const char *Txt_Contract;
extern const char *Txt_Save_changes; extern const char *Txt_Save_changes;
extern const char *Txt_Create_question; extern const char *Txt_Create;
MYSQL_RES *mysql_res; MYSQL_RES *mysql_res;
MYSQL_ROW row; MYSQL_ROW row;
unsigned NumTags; unsigned NumTags;
@ -1823,9 +1823,10 @@ void Qst_PutFormEditOneQst (struct Qst_Question *Question)
char StrInteger[Cns_MAX_DECIMAL_DIGITS_UINT + 1]; char StrInteger[Cns_MAX_DECIMAL_DIGITS_UINT + 1];
char *Title; char *Title;
char *FuncOnChange; char *FuncOnChange;
bool NewQuestion = (Question->QstCod > 0);
/***** Begin box *****/ /***** Begin box *****/
if (Question->QstCod > 0) // The question already has assigned a code if (NewQuestion) // The question already has assigned a code
{ {
if (asprintf (&Title,Txt_Question_code_X,Question->QstCod) < 0) if (asprintf (&Title,Txt_Question_code_X,Question->QstCod) < 0)
Err_NotEnoughMemoryExit (); Err_NotEnoughMemoryExit ();
@ -1839,7 +1840,8 @@ void Qst_PutFormEditOneQst (struct Qst_Question *Question)
Hlp_ASSESSMENT_Questions_writing_a_question,Box_NOT_CLOSABLE); Hlp_ASSESSMENT_Questions_writing_a_question,Box_NOT_CLOSABLE);
/***** Begin form *****/ /***** Begin form *****/
Frm_BeginForm (ActRcvTstQst); Frm_BeginForm (NewQuestion ? ActNewTstQst :
ActChgTstQst);
ParCod_PutPar (ParCod_Qst,Question->QstCod); ParCod_PutPar (ParCod_Qst,Question->QstCod);
/***** Begin table *****/ /***** Begin table *****/
@ -2212,7 +2214,7 @@ void Qst_PutFormEditOneQst (struct Qst_Question *Question)
if (Question->QstCod > 0) // The question already has assigned a code if (Question->QstCod > 0) // The question already has assigned a code
Btn_PutConfirmButton (Txt_Save_changes); Btn_PutConfirmButton (Txt_Save_changes);
else else
Btn_PutCreateButton (Txt_Create_question); Btn_PutCreateButton (Txt_Create);
/***** End form *****/ /***** End form *****/
Frm_EndForm (); Frm_EndForm ();
@ -2737,7 +2739,7 @@ void Qst_GetQstFromForm (struct Qst_Question *Question)
Ale_ShowAlertsAndExit (); Ale_ShowAlertsAndExit ();
Par_GetParText ("AnsInt",Question->Answer.Options[0].Text, Par_GetParText ("AnsInt",Question->Answer.Options[0].Text,
Cns_MAX_DECIMAL_DIGITS_LONG); Cns_MAX_DECIMAL_DIGITS_LONG);
break; break;
case Qst_ANS_FLOAT: case Qst_ANS_FLOAT:
if (!Qst_AllocateTextChoiceAnswer (Question,0)) if (!Qst_AllocateTextChoiceAnswer (Question,0))
@ -2745,14 +2747,14 @@ void Qst_GetQstFromForm (struct Qst_Question *Question)
Ale_ShowAlertsAndExit (); Ale_ShowAlertsAndExit ();
Par_GetParText ("AnsFloatMin",Question->Answer.Options[0].Text, Par_GetParText ("AnsFloatMin",Question->Answer.Options[0].Text,
Qst_MAX_BYTES_FLOAT_ANSWER); Qst_MAX_BYTES_FLOAT_ANSWER);
if (!Qst_AllocateTextChoiceAnswer (Question,1)) if (!Qst_AllocateTextChoiceAnswer (Question,1))
/* Abort on error */ /* Abort on error */
Ale_ShowAlertsAndExit (); Ale_ShowAlertsAndExit ();
Par_GetParText ("AnsFloatMax",Question->Answer.Options[1].Text, Par_GetParText ("AnsFloatMax",Question->Answer.Options[1].Text,
Qst_MAX_BYTES_FLOAT_ANSWER); Qst_MAX_BYTES_FLOAT_ANSWER);
break; break;
case Qst_ANS_TRUE_FALSE: case Qst_ANS_TRUE_FALSE:
Par_GetParText ("AnsTF",TF,1); Par_GetParText ("AnsTF",TF,1);

View File

@ -2268,17 +2268,17 @@ static void Svy_ShowFormEditOneQst (struct Svy_Surveys *Surveys,
extern const char *Txt_Type; extern const char *Txt_Type;
extern const char *Txt_SURVEY_STR_ANSWER_TYPES[Svy_NUM_ANS_TYPES]; extern const char *Txt_SURVEY_STR_ANSWER_TYPES[Svy_NUM_ANS_TYPES];
extern const char *Txt_Save_changes; extern const char *Txt_Save_changes;
extern const char *Txt_Create_question; extern const char *Txt_Create;
MYSQL_RES *mysql_res; MYSQL_RES *mysql_res;
MYSQL_ROW row; MYSQL_ROW row;
unsigned NumAns; unsigned NumAns;
unsigned NumAnswers = 0; unsigned NumAnswers = 0;
char *Title; char *Title;
Svy_AnswerType_t AnsType; Svy_AnswerType_t AnsType;
bool NewQuestion = (SvyQst->QstCod <= 0);
if (Gbl.Action.Act == ActEdiOneSvyQst) // If no receiving the question, but editing a new or existing question if (Gbl.Action.Act == ActEdiOneSvyQst) // If no receiving the question, but editing a new or existing question
{ if (!NewQuestion)
if ((SvyQst->QstCod > 0)) // If parameter QstCod received ==> question already exists in the database
{ {
/***** Get question data from database *****/ /***** Get question data from database *****/
if (Svy_DB_GetQstDataByCod (&mysql_res,SvyQst->QstCod,Surveys->Svy.SvyCod)) if (Svy_DB_GetQstDataByCod (&mysql_res,SvyQst->QstCod,Surveys->Svy.SvyCod))
@ -2308,10 +2308,13 @@ static void Svy_ShowFormEditOneQst (struct Svy_Surveys *Surveys,
/* Free structure that stores the query result */ /* Free structure that stores the query result */
DB_FreeMySQLResult (&mysql_res); DB_FreeMySQLResult (&mysql_res);
} }
}
/***** Begin box *****/ /***** Begin box *****/
if (SvyQst->QstCod > 0) // If the question already has assigned a code if (NewQuestion)
Box_BoxBegin (NULL,Txt_Question,
NULL,NULL,
Hlp_ANALYTICS_Surveys_questions,Box_NOT_CLOSABLE);
else
{ {
/* Parameters for contextual icon */ /* Parameters for contextual icon */
Surveys->QstCod = SvyQst->QstCod; Surveys->QstCod = SvyQst->QstCod;
@ -2323,13 +2326,10 @@ static void Svy_ShowFormEditOneQst (struct Svy_Surveys *Surveys,
NULL,Box_NOT_CLOSABLE); NULL,Box_NOT_CLOSABLE);
free (Title); free (Title);
} }
else
Box_BoxBegin (NULL,Txt_Question,
NULL,NULL,
Hlp_ANALYTICS_Surveys_questions,Box_NOT_CLOSABLE);
/***** Begin form *****/ /***** Begin form *****/
Frm_BeginForm (ActRcvSvyQst); Frm_BeginForm (NewQuestion ? ActNewSvyQst :
ActChgSvyQst);
ParCod_PutPar (ParCod_Svy,Surveys->Svy.SvyCod); ParCod_PutPar (ParCod_Svy,Surveys->Svy.SvyCod);
ParCod_PutPar (ParCod_Qst,SvyQst->QstCod); ParCod_PutPar (ParCod_Qst,SvyQst->QstCod);
@ -2421,10 +2421,10 @@ static void Svy_ShowFormEditOneQst (struct Svy_Surveys *Surveys,
HTM_TABLE_End (); HTM_TABLE_End ();
/***** Send button *****/ /***** Send button *****/
if (SvyQst->QstCod > 0) // If the question already has assigned a code if (NewQuestion) // If the question already has assigned a code
Btn_PutConfirmButton (Txt_Save_changes); Btn_PutCreateButton (Txt_Create);
else else
Btn_PutCreateButton (Txt_Create_question); Btn_PutConfirmButton (Txt_Save_changes);
/***** End form *****/ /***** End form *****/
Frm_EndForm (); Frm_EndForm ();
@ -2690,7 +2690,8 @@ static void Svy_ListSvyQuestions (struct Svy_Surveys *Surveys)
char Stem[Cns_MAX_BYTES_TEXT + 1]; char Stem[Cns_MAX_BYTES_TEXT + 1];
bool Editing = (Gbl.Action.Act == ActEdiOneSvy || bool Editing = (Gbl.Action.Act == ActEdiOneSvy ||
Gbl.Action.Act == ActEdiOneSvyQst || Gbl.Action.Act == ActEdiOneSvyQst ||
Gbl.Action.Act == ActRcvSvyQst); Gbl.Action.Act == ActNewSvyQst ||
Gbl.Action.Act == ActChgSvyQst);
bool PutFormAnswerSurvey = Surveys->Svy.Status.ICanAnswer && !Editing; bool PutFormAnswerSurvey = Surveys->Svy.Status.ICanAnswer && !Editing;
/***** Begin box *****/ /***** Begin box *****/

View File

@ -6664,52 +6664,6 @@ const char *Txt_Create_BR_notification =
"Create<br />notification"; // Çeviri lazim! "Create<br />notification"; // Çeviri lazim!
#endif #endif
const char *Txt_Create_password =
#if L==1 // ca
"Crear contrasenya";
#elif L==2 // de
"Passwort erstellen";
#elif L==3 // en
"Crear password";
#elif L==4 // es
"Cambiar contrase&ntilde;a";
#elif L==5 // fr
"Cr&eacute;er le mot de passe";
#elif L==6 // gn
"Crear contrase&ntilde;a"; // Okoteve traducción
#elif L==7 // it
"Cambiare password";
#elif L==8 // pl
"Utw&oacute;rz has&lstrok;o";
#elif L==9 // pt
"Criar senha";
#elif L==10 // tr
"&Scedil;ifre olu&scedil;tur";
#endif
const char *Txt_Create_question =
#if L==1 // ca
"Crear pregunta";
#elif L==2 // de
"Frage erstellen";
#elif L==3 // en
"Create question";
#elif L==4 // es
"Crear pregunta";
#elif L==5 // fr
"Cr&eacute;er question";
#elif L==6 // gn
"Crear pregunta"; // Okoteve traducción
#elif L==7 // it
"Crea domanda";
#elif L==8 // pl
"Utw&oacute;rz pytanie";
#elif L==9 // pt
"Criar pergunta";
#elif L==10 // tr
"Create question"; // Çeviri lazim!
#endif
const char *Txt_Create_ZIP_file = const char *Txt_Create_ZIP_file =
#if L==1 // ca #if L==1 // ca
"Crear arxiu ZIP"; "Crear arxiu ZIP";

View File

@ -11355,27 +11355,50 @@ const char *Txt_Actions[ActLst_NUM_ACTIONS] =
"List test questions for edition" // Çeviri lazim! "List test questions for edition" // Çeviri lazim!
#endif #endif
, ,
[ActRcvTstQst] = [ActNewTstQst] =
#if L==1 // ca #if L==1 // ca
"Create/Change test question" // Necessita traducció "Crear pregunta"
#elif L==2 // de #elif L==2 // de
"Create/Change test question" // Need Übersetzung "Frage erstellen"
#elif L==3 // en #elif L==3 // en
"Create/Change test question" "Create question"
#elif L==4 // es #elif L==4 // es
"Crear/Cambiar pregunta de test" "Crear pregunta"
#elif L==5 // fr #elif L==5 // fr
"Create/Change test question" // Besoin de traduction "Cr&eacute;er question"
#elif L==6 // gn #elif L==6 // gn
"Crear/Cambiar pregunta de test" // Okoteve traducción "Crear pregunta" // Okoteve traducción
#elif L==7 // it #elif L==7 // it
"Create/Change test question" // Bisogno di traduzione "Crea domanda"
#elif L==8 // pl #elif L==8 // pl
"Create/Change test question" // Potrzebujesz tlumaczenie "Utw&oacute;rz pytanie"
#elif L==9 // pt #elif L==9 // pt
"Create/Change test question" // Precisa de tradução "Criar pergunta"
#elif L==10 // tr #elif L==10 // tr
"Create/Change test question" // Çeviri lazim! "Create question" // Çeviri lazim!
#endif
,
[ActChgTstQst] =
#if L==1 // ca
"Change test question" // Necessita traducció
#elif L==2 // de
"Change test question" // Need Übersetzung
#elif L==3 // en
"Change test question"
#elif L==4 // es
"Cambiar pregunta de test"
#elif L==5 // fr
"Change test question" // Besoin de traduction
#elif L==6 // gn
"Cambiar pregunta de test" // Okoteve traducción
#elif L==7 // it
"Change test question" // Bisogno di traduzione
#elif L==8 // pl
"Change test question" // Potrzebujesz tlumaczenie
#elif L==9 // pt
"Change test question" // Precisa de tradução
#elif L==10 // tr
"Change test question" // Çeviri lazim!
#endif #endif
, ,
[ActReqRemSevTstQst] = [ActReqRemSevTstQst] =
@ -33067,7 +33090,7 @@ const char *Txt_Actions[ActLst_NUM_ACTIONS] =
"Edit new survey question" // Çeviri lazim! "Edit new survey question" // Çeviri lazim!
#endif #endif
, ,
[ActRcvSvyQst] = [ActNewSvyQst] =
#if L==1 // ca #if L==1 // ca
"Create survey question" // Necessita traducció "Create survey question" // Necessita traducció
#elif L==2 // de #elif L==2 // de
@ -33088,6 +33111,29 @@ const char *Txt_Actions[ActLst_NUM_ACTIONS] =
"Create survey question" // Precisa de tradução "Create survey question" // Precisa de tradução
#elif L==10 // tr #elif L==10 // tr
"Create survey question" // Çeviri lazim! "Create survey question" // Çeviri lazim!
#endif
,
[ActChgSvyQst] =
#if L==1 // ca
"Change survey question" // Necessita traducció
#elif L==2 // de
"Change survey question" // Need Übersetzung
#elif L==3 // en
"Change survey question"
#elif L==4 // es
"Cambiar pregunta de encuesta"
#elif L==5 // fr
"Change survey question" // Besoin de traduction
#elif L==6 // gn
"Cambiar pregunta de encuesta" // Okoteve traducción
#elif L==7 // it
"Change survey question" // Bisogno di traduzione
#elif L==8 // pl
"Change survey question" // Potrzebujesz tlumaczenie
#elif L==9 // pt
"Change survey question" // Precisa de tradução
#elif L==10 // tr
"Change survey question" // Çeviri lazim!
#endif #endif
, ,
[ActReqRemSvyQst] = [ActReqRemSvyQst] =