mirror of https://github.com/acanas/swad-core.git
Version 22.7: Sep 17, 2022 Link to calls for exams in program.
This commit is contained in:
parent
4bc73f6552
commit
e5d9888810
|
@ -3988,7 +3988,7 @@ table.CELLS_PAD_10 > tbody > tr > td {padding:10px;}
|
|||
.LOG_R_PINK {color:#660000; font-family:"Arial Narrow","Nimbus Sans L","DejaVu LGC Sans Condensed",sans-serif; font-size:11pt;}
|
||||
.LOG_R_DARK {color:#ff8080; font-family:"Arial Narrow","Nimbus Sans L","DejaVu LGC Sans Condensed",sans-serif; font-size:11pt;}
|
||||
|
||||
/***************************** Exam announcement *****************************/
|
||||
/****************************** Calls for exams ******************************/
|
||||
/* Bottom space is used for signatures */
|
||||
.CALL_FOR_EXAM_VISIBLE
|
||||
{
|
||||
|
@ -4003,6 +4003,11 @@ table.CELLS_PAD_10 > tbody > tr > td {padding:10px;}
|
|||
padding:25px 25px 125px 25px;
|
||||
opacity:0.3;
|
||||
}
|
||||
.CALL_FOR_EXAM_TIT
|
||||
{
|
||||
font-weight:bold;
|
||||
text-transform:uppercase;
|
||||
}
|
||||
|
||||
/*********************** Media (image/video) uploading ***********************/
|
||||
.MED_UPLOADER
|
|
@ -683,6 +683,7 @@ const struct Act_Actions Act_Actions[Act_NUM_ACTIONS] =
|
|||
[ActRemCfe ] = { 187,-1,TabUnk,ActSeeAllExaAnn ,0x220,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,Cfe_RemoveCallForExam1 ,Cfe_RemoveCallForExam2 ,NULL},
|
||||
[ActHidCfe ] = {1620,-1,TabUnk,ActSeeAllExaAnn ,0x220,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,Cfe_HideCallForExam ,Cfe_ListCallsForExamsEdit ,NULL},
|
||||
[ActUnhCfe ] = {1621,-1,TabUnk,ActSeeAllExaAnn ,0x220,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,Cfe_UnhideCallForExam ,Cfe_ListCallsForExamsEdit ,NULL},
|
||||
[ActReqLnkCfe ] = {1934,-1,TabUnk,ActSeeAllExaAnn ,0x220,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Cfe_GetLinkToFile ,NULL},
|
||||
|
||||
[ActEdiOneTstQst ] = { 105,-1,TabUnk,ActEdiTstQst ,0x220,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Qst_ShowFormEditOneQst ,NULL},
|
||||
[ActReqImpTstQst ] = {1007,-1,TabUnk,ActEdiTstQst ,0x220,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,QstImp_ShowFormImpQstsFromXML ,NULL},
|
||||
|
@ -3777,6 +3778,7 @@ Act_Action_t Act_FromActCodToAction[1 + Act_MAX_ACTION_COD] = // Do not reuse un
|
|||
ActReqLnkAdmDocCrs, // #1931
|
||||
ActSeeCliPrgRsc, // #1932
|
||||
ActChgLnkPrgRsc, // #1933
|
||||
ActReqLnkCfe, // #1934
|
||||
};
|
||||
|
||||
/*****************************************************************************/
|
||||
|
|
267
swad_action.h
267
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 1933
|
||||
#define Act_MAX_ACTION_COD 1934
|
||||
|
||||
#define Act_MAX_OPTIONS_IN_MENU_PER_TAB 13
|
||||
|
||||
|
@ -642,156 +642,157 @@ typedef signed int Act_Action_t; // Must be a signed type, because -1 is used to
|
|||
#define ActRemCfe (ActChgCrsTT1stDay + 105)
|
||||
#define ActHidCfe (ActChgCrsTT1stDay + 106)
|
||||
#define ActUnhCfe (ActChgCrsTT1stDay + 107)
|
||||
#define ActReqLnkCfe (ActChgCrsTT1stDay + 108)
|
||||
|
||||
#define ActEdiOneTstQst (ActChgCrsTT1stDay + 108)
|
||||
#define ActReqImpTstQst (ActChgCrsTT1stDay + 109)
|
||||
#define ActImpTstQst (ActChgCrsTT1stDay + 110)
|
||||
#define ActLstTstQst (ActChgCrsTT1stDay + 111)
|
||||
#define ActRcvTstQst (ActChgCrsTT1stDay + 112)
|
||||
#define ActReqRemSevTstQst (ActChgCrsTT1stDay + 113)
|
||||
#define ActRemSevTstQst (ActChgCrsTT1stDay + 114)
|
||||
#define ActReqRemOneTstQst (ActChgCrsTT1stDay + 115)
|
||||
#define ActRemOneTstQst (ActChgCrsTT1stDay + 116)
|
||||
#define ActChgShfTstQst (ActChgCrsTT1stDay + 117)
|
||||
#define ActEdiOneTstQst (ActChgCrsTT1stDay + 109)
|
||||
#define ActReqImpTstQst (ActChgCrsTT1stDay + 110)
|
||||
#define ActImpTstQst (ActChgCrsTT1stDay + 111)
|
||||
#define ActLstTstQst (ActChgCrsTT1stDay + 112)
|
||||
#define ActRcvTstQst (ActChgCrsTT1stDay + 113)
|
||||
#define ActReqRemSevTstQst (ActChgCrsTT1stDay + 114)
|
||||
#define ActRemSevTstQst (ActChgCrsTT1stDay + 115)
|
||||
#define ActReqRemOneTstQst (ActChgCrsTT1stDay + 116)
|
||||
#define ActRemOneTstQst (ActChgCrsTT1stDay + 117)
|
||||
#define ActChgShfTstQst (ActChgCrsTT1stDay + 118)
|
||||
|
||||
#define ActEdiTag (ActChgCrsTT1stDay + 118)
|
||||
#define ActEnaTag (ActChgCrsTT1stDay + 119)
|
||||
#define ActDisTag (ActChgCrsTT1stDay + 120)
|
||||
#define ActRenTag (ActChgCrsTT1stDay + 121)
|
||||
#define ActEdiTag (ActChgCrsTT1stDay + 119)
|
||||
#define ActEnaTag (ActChgCrsTT1stDay + 120)
|
||||
#define ActDisTag (ActChgCrsTT1stDay + 121)
|
||||
#define ActRenTag (ActChgCrsTT1stDay + 122)
|
||||
|
||||
#define ActSeeTst (ActChgCrsTT1stDay + 122)
|
||||
#define ActReqAssTst (ActChgCrsTT1stDay + 123)
|
||||
#define ActAssTst (ActChgCrsTT1stDay + 124)
|
||||
#define ActCfgTst (ActChgCrsTT1stDay + 125)
|
||||
#define ActRcvCfgTst (ActChgCrsTT1stDay + 126)
|
||||
#define ActSeeTst (ActChgCrsTT1stDay + 123)
|
||||
#define ActReqAssTst (ActChgCrsTT1stDay + 124)
|
||||
#define ActAssTst (ActChgCrsTT1stDay + 125)
|
||||
#define ActCfgTst (ActChgCrsTT1stDay + 126)
|
||||
#define ActRcvCfgTst (ActChgCrsTT1stDay + 127)
|
||||
|
||||
#define ActReqSeeMyTstRes (ActChgCrsTT1stDay + 127)
|
||||
#define ActSeeMyTstResCrs (ActChgCrsTT1stDay + 128)
|
||||
#define ActSeeOneTstResMe (ActChgCrsTT1stDay + 129)
|
||||
#define ActReqSeeUsrTstRes (ActChgCrsTT1stDay + 130)
|
||||
#define ActSeeUsrTstResCrs (ActChgCrsTT1stDay + 131)
|
||||
#define ActSeeOneTstResOth (ActChgCrsTT1stDay + 132)
|
||||
#define ActReqSeeMyTstRes (ActChgCrsTT1stDay + 128)
|
||||
#define ActSeeMyTstResCrs (ActChgCrsTT1stDay + 129)
|
||||
#define ActSeeOneTstResMe (ActChgCrsTT1stDay + 130)
|
||||
#define ActReqSeeUsrTstRes (ActChgCrsTT1stDay + 131)
|
||||
#define ActSeeUsrTstResCrs (ActChgCrsTT1stDay + 132)
|
||||
#define ActSeeOneTstResOth (ActChgCrsTT1stDay + 133)
|
||||
|
||||
#define ActSeeExa (ActChgCrsTT1stDay + 133)
|
||||
#define ActSeeExa (ActChgCrsTT1stDay + 134)
|
||||
|
||||
#define ActFrmNewExa (ActChgCrsTT1stDay + 134)
|
||||
#define ActEdiOneExa (ActChgCrsTT1stDay + 135)
|
||||
#define ActNewExa (ActChgCrsTT1stDay + 136)
|
||||
#define ActChgExa (ActChgCrsTT1stDay + 137)
|
||||
#define ActReqRemExa (ActChgCrsTT1stDay + 138)
|
||||
#define ActRemExa (ActChgCrsTT1stDay + 139)
|
||||
#define ActHidExa (ActChgCrsTT1stDay + 140)
|
||||
#define ActUnhExa (ActChgCrsTT1stDay + 141)
|
||||
#define ActFrmNewExaSet (ActChgCrsTT1stDay + 142)
|
||||
#define ActNewExaSet (ActChgCrsTT1stDay + 143)
|
||||
#define ActReqRemExaSet (ActChgCrsTT1stDay + 144)
|
||||
#define ActRemExaSet (ActChgCrsTT1stDay + 145)
|
||||
#define ActUp_ExaSet (ActChgCrsTT1stDay + 146)
|
||||
#define ActDwnExaSet (ActChgCrsTT1stDay + 147)
|
||||
#define ActChgTitExaSet (ActChgCrsTT1stDay + 148)
|
||||
#define ActChgNumQstExaSet (ActChgCrsTT1stDay + 149)
|
||||
#define ActFrmNewExa (ActChgCrsTT1stDay + 135)
|
||||
#define ActEdiOneExa (ActChgCrsTT1stDay + 136)
|
||||
#define ActNewExa (ActChgCrsTT1stDay + 137)
|
||||
#define ActChgExa (ActChgCrsTT1stDay + 138)
|
||||
#define ActReqRemExa (ActChgCrsTT1stDay + 139)
|
||||
#define ActRemExa (ActChgCrsTT1stDay + 140)
|
||||
#define ActHidExa (ActChgCrsTT1stDay + 141)
|
||||
#define ActUnhExa (ActChgCrsTT1stDay + 142)
|
||||
#define ActFrmNewExaSet (ActChgCrsTT1stDay + 143)
|
||||
#define ActNewExaSet (ActChgCrsTT1stDay + 144)
|
||||
#define ActReqRemExaSet (ActChgCrsTT1stDay + 145)
|
||||
#define ActRemExaSet (ActChgCrsTT1stDay + 146)
|
||||
#define ActUp_ExaSet (ActChgCrsTT1stDay + 147)
|
||||
#define ActDwnExaSet (ActChgCrsTT1stDay + 148)
|
||||
#define ActChgTitExaSet (ActChgCrsTT1stDay + 149)
|
||||
#define ActChgNumQstExaSet (ActChgCrsTT1stDay + 150)
|
||||
|
||||
#define ActReqAddQstExaSet (ActChgCrsTT1stDay + 150)
|
||||
#define ActLstTstQstForSet (ActChgCrsTT1stDay + 151)
|
||||
#define ActAddQstToExa (ActChgCrsTT1stDay + 152)
|
||||
#define ActReqRemSetQst (ActChgCrsTT1stDay + 153)
|
||||
#define ActRemExaQst (ActChgCrsTT1stDay + 154)
|
||||
#define ActValSetQst (ActChgCrsTT1stDay + 155)
|
||||
#define ActInvSetQst (ActChgCrsTT1stDay + 156)
|
||||
#define ActReqAddQstExaSet (ActChgCrsTT1stDay + 151)
|
||||
#define ActLstTstQstForSet (ActChgCrsTT1stDay + 152)
|
||||
#define ActAddQstToExa (ActChgCrsTT1stDay + 153)
|
||||
#define ActReqRemSetQst (ActChgCrsTT1stDay + 154)
|
||||
#define ActRemExaQst (ActChgCrsTT1stDay + 155)
|
||||
#define ActValSetQst (ActChgCrsTT1stDay + 156)
|
||||
#define ActInvSetQst (ActChgCrsTT1stDay + 157)
|
||||
|
||||
#define ActReqNewExaSes (ActChgCrsTT1stDay + 157)
|
||||
#define ActEdiOneExaSes (ActChgCrsTT1stDay + 158)
|
||||
#define ActNewExaSes (ActChgCrsTT1stDay + 159)
|
||||
#define ActChgExaSes (ActChgCrsTT1stDay + 160)
|
||||
#define ActReqRemExaSes (ActChgCrsTT1stDay + 161)
|
||||
#define ActRemExaSes (ActChgCrsTT1stDay + 162)
|
||||
#define ActHidExaSes (ActChgCrsTT1stDay + 163)
|
||||
#define ActUnhExaSes (ActChgCrsTT1stDay + 164)
|
||||
#define ActReqNewExaSes (ActChgCrsTT1stDay + 158)
|
||||
#define ActEdiOneExaSes (ActChgCrsTT1stDay + 159)
|
||||
#define ActNewExaSes (ActChgCrsTT1stDay + 160)
|
||||
#define ActChgExaSes (ActChgCrsTT1stDay + 161)
|
||||
#define ActReqRemExaSes (ActChgCrsTT1stDay + 162)
|
||||
#define ActRemExaSes (ActChgCrsTT1stDay + 163)
|
||||
#define ActHidExaSes (ActChgCrsTT1stDay + 164)
|
||||
#define ActUnhExaSes (ActChgCrsTT1stDay + 165)
|
||||
|
||||
#define ActSeeExaPrn (ActChgCrsTT1stDay + 165)
|
||||
#define ActAnsExaPrn (ActChgCrsTT1stDay + 166)
|
||||
#define ActEndExaPrn (ActChgCrsTT1stDay + 167)
|
||||
#define ActSeeExaPrn (ActChgCrsTT1stDay + 166)
|
||||
#define ActAnsExaPrn (ActChgCrsTT1stDay + 167)
|
||||
#define ActEndExaPrn (ActChgCrsTT1stDay + 168)
|
||||
|
||||
#define ActSeeMyExaResCrs (ActChgCrsTT1stDay + 168)
|
||||
#define ActSeeMyExaResExa (ActChgCrsTT1stDay + 169)
|
||||
#define ActSeeMyExaResSes (ActChgCrsTT1stDay + 170)
|
||||
#define ActSeeOneExaResMe (ActChgCrsTT1stDay + 171)
|
||||
#define ActReqSeeUsrExaRes (ActChgCrsTT1stDay + 172)
|
||||
#define ActSeeUsrExaResCrs (ActChgCrsTT1stDay + 173)
|
||||
#define ActSeeUsrExaResExa (ActChgCrsTT1stDay + 174)
|
||||
#define ActSeeUsrExaResSes (ActChgCrsTT1stDay + 175)
|
||||
#define ActSeeOneExaResOth (ActChgCrsTT1stDay + 176)
|
||||
#define ActChgVisExaRes (ActChgCrsTT1stDay + 177)
|
||||
#define ActSeeMyExaResCrs (ActChgCrsTT1stDay + 169)
|
||||
#define ActSeeMyExaResExa (ActChgCrsTT1stDay + 170)
|
||||
#define ActSeeMyExaResSes (ActChgCrsTT1stDay + 171)
|
||||
#define ActSeeOneExaResMe (ActChgCrsTT1stDay + 172)
|
||||
#define ActReqSeeUsrExaRes (ActChgCrsTT1stDay + 173)
|
||||
#define ActSeeUsrExaResCrs (ActChgCrsTT1stDay + 174)
|
||||
#define ActSeeUsrExaResExa (ActChgCrsTT1stDay + 175)
|
||||
#define ActSeeUsrExaResSes (ActChgCrsTT1stDay + 176)
|
||||
#define ActSeeOneExaResOth (ActChgCrsTT1stDay + 177)
|
||||
#define ActChgVisExaRes (ActChgCrsTT1stDay + 178)
|
||||
|
||||
#define ActSeeGam (ActChgCrsTT1stDay + 178)
|
||||
#define ActReqRemMch (ActChgCrsTT1stDay + 179)
|
||||
#define ActRemMch (ActChgCrsTT1stDay + 180)
|
||||
#define ActEdiMch (ActChgCrsTT1stDay + 181)
|
||||
#define ActChgMch (ActChgCrsTT1stDay + 182)
|
||||
#define ActReqNewMch (ActChgCrsTT1stDay + 183)
|
||||
#define ActNewMch (ActChgCrsTT1stDay + 184)
|
||||
#define ActResMch (ActChgCrsTT1stDay + 185)
|
||||
#define ActBckMch (ActChgCrsTT1stDay + 186)
|
||||
#define ActPlyPauMch (ActChgCrsTT1stDay + 187)
|
||||
#define ActFwdMch (ActChgCrsTT1stDay + 188)
|
||||
#define ActChgNumColMch (ActChgCrsTT1stDay + 189)
|
||||
#define ActChgVisResMchQst (ActChgCrsTT1stDay + 190)
|
||||
#define ActMchCntDwn (ActChgCrsTT1stDay + 191)
|
||||
#define ActRefMchTch (ActChgCrsTT1stDay + 192)
|
||||
#define ActSeeGam (ActChgCrsTT1stDay + 179)
|
||||
#define ActReqRemMch (ActChgCrsTT1stDay + 180)
|
||||
#define ActRemMch (ActChgCrsTT1stDay + 181)
|
||||
#define ActEdiMch (ActChgCrsTT1stDay + 182)
|
||||
#define ActChgMch (ActChgCrsTT1stDay + 183)
|
||||
#define ActReqNewMch (ActChgCrsTT1stDay + 184)
|
||||
#define ActNewMch (ActChgCrsTT1stDay + 185)
|
||||
#define ActResMch (ActChgCrsTT1stDay + 186)
|
||||
#define ActBckMch (ActChgCrsTT1stDay + 187)
|
||||
#define ActPlyPauMch (ActChgCrsTT1stDay + 188)
|
||||
#define ActFwdMch (ActChgCrsTT1stDay + 189)
|
||||
#define ActChgNumColMch (ActChgCrsTT1stDay + 190)
|
||||
#define ActChgVisResMchQst (ActChgCrsTT1stDay + 191)
|
||||
#define ActMchCntDwn (ActChgCrsTT1stDay + 192)
|
||||
#define ActRefMchTch (ActChgCrsTT1stDay + 193)
|
||||
|
||||
#define ActJoiMch (ActChgCrsTT1stDay + 193)
|
||||
#define ActSeeMchAnsQstStd (ActChgCrsTT1stDay + 194)
|
||||
#define ActRemMchAnsQstStd (ActChgCrsTT1stDay + 195)
|
||||
#define ActAnsMchQstStd (ActChgCrsTT1stDay + 196)
|
||||
#define ActRefMchStd (ActChgCrsTT1stDay + 197)
|
||||
#define ActJoiMch (ActChgCrsTT1stDay + 194)
|
||||
#define ActSeeMchAnsQstStd (ActChgCrsTT1stDay + 195)
|
||||
#define ActRemMchAnsQstStd (ActChgCrsTT1stDay + 196)
|
||||
#define ActAnsMchQstStd (ActChgCrsTT1stDay + 197)
|
||||
#define ActRefMchStd (ActChgCrsTT1stDay + 198)
|
||||
|
||||
#define ActSeeMyMchResCrs (ActChgCrsTT1stDay + 198)
|
||||
#define ActSeeMyMchResGam (ActChgCrsTT1stDay + 199)
|
||||
#define ActSeeMyMchResMch (ActChgCrsTT1stDay + 200)
|
||||
#define ActSeeOneMchResMe (ActChgCrsTT1stDay + 201)
|
||||
#define ActSeeMyMchResCrs (ActChgCrsTT1stDay + 199)
|
||||
#define ActSeeMyMchResGam (ActChgCrsTT1stDay + 200)
|
||||
#define ActSeeMyMchResMch (ActChgCrsTT1stDay + 201)
|
||||
#define ActSeeOneMchResMe (ActChgCrsTT1stDay + 202)
|
||||
|
||||
#define ActReqSeeUsrMchRes (ActChgCrsTT1stDay + 202)
|
||||
#define ActSeeUsrMchResCrs (ActChgCrsTT1stDay + 203)
|
||||
#define ActSeeUsrMchResGam (ActChgCrsTT1stDay + 204)
|
||||
#define ActSeeUsrMchResMch (ActChgCrsTT1stDay + 205)
|
||||
#define ActSeeOneMchResOth (ActChgCrsTT1stDay + 206)
|
||||
#define ActReqSeeUsrMchRes (ActChgCrsTT1stDay + 203)
|
||||
#define ActSeeUsrMchResCrs (ActChgCrsTT1stDay + 204)
|
||||
#define ActSeeUsrMchResGam (ActChgCrsTT1stDay + 205)
|
||||
#define ActSeeUsrMchResMch (ActChgCrsTT1stDay + 206)
|
||||
#define ActSeeOneMchResOth (ActChgCrsTT1stDay + 207)
|
||||
|
||||
#define ActChgVisResMchUsr (ActChgCrsTT1stDay + 207)
|
||||
#define ActChgVisResMchUsr (ActChgCrsTT1stDay + 208)
|
||||
|
||||
#define ActLstOneGam (ActChgCrsTT1stDay + 208)
|
||||
#define ActLstOneGam (ActChgCrsTT1stDay + 209)
|
||||
|
||||
#define ActFrmNewGam (ActChgCrsTT1stDay + 209)
|
||||
#define ActEdiOneGam (ActChgCrsTT1stDay + 210)
|
||||
#define ActNewGam (ActChgCrsTT1stDay + 211)
|
||||
#define ActChgGam (ActChgCrsTT1stDay + 212)
|
||||
#define ActReqRemGam (ActChgCrsTT1stDay + 213)
|
||||
#define ActRemGam (ActChgCrsTT1stDay + 214)
|
||||
#define ActHidGam (ActChgCrsTT1stDay + 215)
|
||||
#define ActUnhGam (ActChgCrsTT1stDay + 216)
|
||||
#define ActAddOneGamQst (ActChgCrsTT1stDay + 217)
|
||||
#define ActGamLstTstQst (ActChgCrsTT1stDay + 218)
|
||||
#define ActAddTstQstToGam (ActChgCrsTT1stDay + 219)
|
||||
#define ActReqRemGamQst (ActChgCrsTT1stDay + 220)
|
||||
#define ActRemGamQst (ActChgCrsTT1stDay + 221)
|
||||
#define ActUp_GamQst (ActChgCrsTT1stDay + 222)
|
||||
#define ActDwnGamQst (ActChgCrsTT1stDay + 223)
|
||||
#define ActFrmNewGam (ActChgCrsTT1stDay + 210)
|
||||
#define ActEdiOneGam (ActChgCrsTT1stDay + 211)
|
||||
#define ActNewGam (ActChgCrsTT1stDay + 212)
|
||||
#define ActChgGam (ActChgCrsTT1stDay + 213)
|
||||
#define ActReqRemGam (ActChgCrsTT1stDay + 214)
|
||||
#define ActRemGam (ActChgCrsTT1stDay + 215)
|
||||
#define ActHidGam (ActChgCrsTT1stDay + 216)
|
||||
#define ActUnhGam (ActChgCrsTT1stDay + 217)
|
||||
#define ActAddOneGamQst (ActChgCrsTT1stDay + 218)
|
||||
#define ActGamLstTstQst (ActChgCrsTT1stDay + 219)
|
||||
#define ActAddTstQstToGam (ActChgCrsTT1stDay + 220)
|
||||
#define ActReqRemGamQst (ActChgCrsTT1stDay + 221)
|
||||
#define ActRemGamQst (ActChgCrsTT1stDay + 222)
|
||||
#define ActUp_GamQst (ActChgCrsTT1stDay + 223)
|
||||
#define ActDwnGamQst (ActChgCrsTT1stDay + 224)
|
||||
|
||||
#define ActSeeSvy (ActChgCrsTT1stDay + 224)
|
||||
#define ActAnsSvy (ActChgCrsTT1stDay + 225)
|
||||
#define ActFrmNewSvy (ActChgCrsTT1stDay + 226)
|
||||
#define ActEdiOneSvy (ActChgCrsTT1stDay + 227)
|
||||
#define ActNewSvy (ActChgCrsTT1stDay + 228)
|
||||
#define ActChgSvy (ActChgCrsTT1stDay + 229)
|
||||
#define ActReqRemSvy (ActChgCrsTT1stDay + 230)
|
||||
#define ActRemSvy (ActChgCrsTT1stDay + 231)
|
||||
#define ActReqRstSvy (ActChgCrsTT1stDay + 232)
|
||||
#define ActRstSvy (ActChgCrsTT1stDay + 233)
|
||||
#define ActHidSvy (ActChgCrsTT1stDay + 234)
|
||||
#define ActUnhSvy (ActChgCrsTT1stDay + 235)
|
||||
#define ActEdiOneSvyQst (ActChgCrsTT1stDay + 236)
|
||||
#define ActRcvSvyQst (ActChgCrsTT1stDay + 237)
|
||||
#define ActReqRemSvyQst (ActChgCrsTT1stDay + 238)
|
||||
#define ActRemSvyQst (ActChgCrsTT1stDay + 239)
|
||||
#define ActSeeSvy (ActChgCrsTT1stDay + 225)
|
||||
#define ActAnsSvy (ActChgCrsTT1stDay + 226)
|
||||
#define ActFrmNewSvy (ActChgCrsTT1stDay + 227)
|
||||
#define ActEdiOneSvy (ActChgCrsTT1stDay + 228)
|
||||
#define ActNewSvy (ActChgCrsTT1stDay + 229)
|
||||
#define ActChgSvy (ActChgCrsTT1stDay + 230)
|
||||
#define ActReqRemSvy (ActChgCrsTT1stDay + 231)
|
||||
#define ActRemSvy (ActChgCrsTT1stDay + 232)
|
||||
#define ActReqRstSvy (ActChgCrsTT1stDay + 233)
|
||||
#define ActRstSvy (ActChgCrsTT1stDay + 234)
|
||||
#define ActHidSvy (ActChgCrsTT1stDay + 235)
|
||||
#define ActUnhSvy (ActChgCrsTT1stDay + 236)
|
||||
#define ActEdiOneSvyQst (ActChgCrsTT1stDay + 237)
|
||||
#define ActRcvSvyQst (ActChgCrsTT1stDay + 238)
|
||||
#define ActReqRemSvyQst (ActChgCrsTT1stDay + 239)
|
||||
#define ActRemSvyQst (ActChgCrsTT1stDay + 240)
|
||||
|
||||
/*****************************************************************************/
|
||||
/******************************** Files tab **********************************/
|
||||
|
|
|
@ -5319,7 +5319,7 @@ static void Brw_WriteFileName (unsigned Level,bool IsPublic)
|
|||
}
|
||||
|
||||
/*****************************************************************************/
|
||||
/******************** Get summary and content of a file **********************/
|
||||
/******************** Write file name in course program **********************/
|
||||
/*****************************************************************************/
|
||||
|
||||
void Brw_WriteFileNameInCrsProgram (long FilCod,bool PutFormToDownload)
|
||||
|
@ -8348,7 +8348,7 @@ static void Brw_PutParamsToGetLinkToFile (void *FileMetadata)
|
|||
}
|
||||
|
||||
/*****************************************************************************/
|
||||
/*********************** Put icon to get link to file ************************/
|
||||
/****************************** Get link to file *****************************/
|
||||
/*****************************************************************************/
|
||||
|
||||
void Brw_GetLinkToFile (void)
|
||||
|
|
|
@ -882,7 +882,7 @@ static void Cfe_ShowCallForExam (struct Cfe_CallsForExams *CallsForExams,
|
|||
extern const char *Hlp_ASSESSMENT_Calls_for_exam_new_call;
|
||||
extern const char *Hlp_ASSESSMENT_Announcements_edit_announcement;
|
||||
extern const char *Txt_YEAR_OF_DEGREE[1 + Deg_MAX_YEARS_PER_DEGREE];
|
||||
extern const char *Txt_CALL_FOR_EXAM;
|
||||
extern const char *Txt_Call_for_exam;
|
||||
extern const char *Txt_CALL_FOR_EXAM_Course;
|
||||
extern const char *Txt_CALL_FOR_EXAM_Year_or_semester;
|
||||
extern const char *Txt_CALL_FOR_EXAM_Session;
|
||||
|
@ -1005,13 +1005,11 @@ static void Cfe_ShowCallForExam (struct Cfe_CallsForExams *CallsForExams,
|
|||
|
||||
/***** Title *****/
|
||||
HTM_TR_Begin (NULL);
|
||||
HTM_TD_Begin ("colspan=\"2\" class=\"CM DAT_STRONG_%s\"",
|
||||
HTM_TD_Begin ("colspan=\"2\" class=\"CM CALL_FOR_EXAM_TIT DAT_STRONG_%s\"",
|
||||
The_GetSuffix ());
|
||||
HTM_NBSP ();
|
||||
HTM_BR ();
|
||||
HTM_STRONG_Begin ();
|
||||
HTM_Txt (Txt_CALL_FOR_EXAM);
|
||||
HTM_STRONG_End ();
|
||||
HTM_TxtF (Txt_Call_for_exam);
|
||||
HTM_BR ();
|
||||
HTM_NBSP ();
|
||||
HTM_TD_End ();
|
||||
|
@ -1528,6 +1526,12 @@ static void Cfe_PutIconsCallForExam (void *CallsForExams)
|
|||
Ico_PutContextualIconToPrint (ActPrnCfe,
|
||||
Cfe_PutParamExaCodToEdit,
|
||||
&((struct Cfe_CallsForExams *) CallsForExams)->ExaCod);
|
||||
|
||||
/***** Link to get resource link *****/
|
||||
if (Gbl.Usrs.Me.Role.Logged == Rol_SYS_ADM) // Only if I am superuser // TODO: Include teachers
|
||||
Ico_PutContextualIconToGetLink (ActReqLnkCfe,NULL,
|
||||
Cfe_PutParamExaCodToEdit,
|
||||
&((struct Cfe_CallsForExams *) CallsForExams)->ExaCod);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -1678,3 +1682,65 @@ static void Cfe_GetNotifContentCallForExam (const struct Cfe_CallsForExams *Call
|
|||
Txt_CALL_FOR_EXAM_Other_information,CallsForExams->CallForExam.OtherInfo) < 0)
|
||||
Err_NotEnoughMemoryExit ();
|
||||
}
|
||||
|
||||
/*****************************************************************************/
|
||||
/******************** Write file name in course program **********************/
|
||||
/*****************************************************************************/
|
||||
|
||||
void Cfe_WriteCallForExamInCrsProgram (long ExaCod,bool PutFormToGo)
|
||||
{
|
||||
extern const char *Txt_Call_for_exam;
|
||||
|
||||
/***** Begin form to download file *****/
|
||||
if (PutFormToGo)
|
||||
{
|
||||
Frm_BeginForm (ActSeeOneCfe);
|
||||
Cfe_PutHiddenParamExaCod (ExaCod);
|
||||
HTM_BUTTON_Submit_Begin (Txt_Call_for_exam,
|
||||
"class=\"LM BT_LINK PRG_RSC_%s\"",
|
||||
The_GetSuffix ());
|
||||
}
|
||||
|
||||
/***** Write filename *****/
|
||||
HTM_Txt ("Convocatoria de examen");
|
||||
|
||||
/***** End form to download file *****/
|
||||
if (PutFormToGo)
|
||||
{
|
||||
HTM_BUTTON_End ();
|
||||
|
||||
Frm_EndForm ();
|
||||
}
|
||||
}
|
||||
|
||||
/*****************************************************************************/
|
||||
/*********************** Get link to call for exam ************************/
|
||||
/*****************************************************************************/
|
||||
|
||||
void Cfe_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 (PrgRsc_DOCUMENT,FileMetadata.FilCod);
|
||||
|
||||
/***** Write sucess message *****/
|
||||
Ale_ShowAlert (Ale_SUCCESS,Txt_Link_to_resource_X_copied_into_clipboard,
|
||||
"Convocatoria");
|
||||
// }
|
||||
|
||||
/***** Show again the file browser *****/
|
||||
// Brw_ShowAgainFileBrowserOrWorks ();
|
||||
}
|
||||
|
|
|
@ -126,4 +126,8 @@ void Cfe_GetSummaryAndContentCallForExam (char SummaryStr[Ntf_MAX_BYTES_SUMMARY
|
|||
char **ContentStr,
|
||||
long ExaCod,bool GetContent);
|
||||
|
||||
void Cfe_WriteCallForExamInCrsProgram (long ExaCod,bool PutFormToGo);
|
||||
|
||||
void Cfe_GetLinkToFile (void);
|
||||
|
||||
#endif
|
||||
|
|
|
@ -606,10 +606,11 @@ 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 22.6 (2022-09-17)"
|
||||
#define CSS_FILE "swad22.5.css"
|
||||
#define Log_PLATFORM_VERSION "SWAD 22.7 (2022-09-17)"
|
||||
#define CSS_FILE "swad22.7.css"
|
||||
#define JS_FILE "swad21.100.js"
|
||||
/*
|
||||
Version 22.7: Sep 17, 2022 Link to calls for exams in program. (? lines)
|
||||
Version 22.6: Sep 17, 2022 Changes in edition of program items. (330065 lines)
|
||||
Version 22.5: Sep 16, 2022 Link to download document in program. (330018 lines)
|
||||
Version 22.4.2: Sep 16, 2022 Changes in edition of program items. (329982 lines)
|
||||
|
|
|
@ -226,7 +226,7 @@ void Prg_ShowAllItems (Prg_ListingType_t ListingType,
|
|||
[Prg_END_EDIT_ITEM ] = Prg_PutIconsEditItems,
|
||||
[Prg_RECEIVE_ITEM ] = Prg_PutIconsEditItems,
|
||||
[Prg_EDIT_RESOURCES ] = Prg_PutIconsEditItems,
|
||||
[Prg_SHOW_CLIPBOARD ] = Prg_PutIconsEditItems,
|
||||
[Prg_EDIT_RESOURCE_LINK ] = Prg_PutIconsEditItems,
|
||||
[Prg_CHANGE_RESOURCE_LINK] = Prg_PutIconsEditItems,
|
||||
[Prg_END_EDIT_RES ] = Prg_PutIconsEditItems,
|
||||
};
|
||||
|
@ -247,7 +247,7 @@ void Prg_ShowAllItems (Prg_ListingType_t ListingType,
|
|||
break;
|
||||
case Prg_RECEIVE_ITEM:
|
||||
// case Prg_EDIT_RESOURCES: // Uncomment to higlight item
|
||||
// case Prg_SHOW_CLIPBOARD: // Uncomment to higlight item
|
||||
// case Prg_EDIT_RESOURCE_LINK: // Uncomment to higlight item
|
||||
// case Prg_CHANGE_RESOURCE_LINK: // Uncomment to higlight item
|
||||
// case Prg_END_EDIT_RES: // Uncomment to higlight item
|
||||
if (SelectedItmCod > 0)
|
||||
|
@ -305,7 +305,7 @@ void Prg_ShowAllItems (Prg_ListingType_t ListingType,
|
|||
{
|
||||
case Prg_FORM_EDIT_ITEM:
|
||||
case Prg_EDIT_RESOURCES:
|
||||
case Prg_SHOW_CLIPBOARD:
|
||||
case Prg_EDIT_RESOURCE_LINK:
|
||||
case Prg_CHANGE_RESOURCE_LINK:
|
||||
case Prg_END_EDIT_RES:
|
||||
if (Item.Hierarchy.ItmCod != SelectedItmCod)
|
||||
|
@ -460,7 +460,7 @@ static void Prg_WriteRowItem (Prg_ListingType_t ListingType,
|
|||
[Prg_END_EDIT_ITEM ] = true,
|
||||
[Prg_RECEIVE_ITEM ] = true,
|
||||
[Prg_EDIT_RESOURCES ] = true,
|
||||
[Prg_SHOW_CLIPBOARD ] = true,
|
||||
[Prg_EDIT_RESOURCE_LINK ] = true,
|
||||
[Prg_CHANGE_RESOURCE_LINK] = true,
|
||||
[Prg_END_EDIT_RES ] = true,
|
||||
};
|
||||
|
@ -1223,8 +1223,8 @@ void Prg_ResetItem (struct Prg_Item *Item)
|
|||
Item->Resource.Hierarchy.RscCod = -1L;
|
||||
Item->Resource.Hierarchy.RscInd = 0;
|
||||
Item->Resource.Hierarchy.Hidden = false;
|
||||
Item->Resource.Type = PrgRsc_NONE;
|
||||
Item->Resource.Cod = -1L;
|
||||
Item->Resource.Link.Type = PrgRsc_NONE;
|
||||
Item->Resource.Link.Cod = -1L;
|
||||
Item->Resource.Title[0] = '\0';
|
||||
Item->Resource.Title[0] = '\0';
|
||||
}
|
||||
|
|
|
@ -27,6 +27,8 @@
|
|||
|
||||
#include <string.h> // For string functions
|
||||
|
||||
#include "swad_browser.h"
|
||||
#include "swad_call_for_exam.h"
|
||||
#include "swad_error.h"
|
||||
#include "swad_form.h"
|
||||
#include "swad_global.h"
|
||||
|
@ -1012,7 +1014,11 @@ static void PrgRsc_WriteLinkName (const struct Prg_Link *Link,bool PutForm)
|
|||
HTM_Txt ("sin enlace"); // TODO: Need translation!!!!!
|
||||
break;
|
||||
case PrgRsc_ASSIGNMENT:
|
||||
Ale_ShowAlert (Ale_ERROR,"Not implemented!");
|
||||
break;
|
||||
case PrgRsc_CALL_FOR_EXAM:
|
||||
Cfe_WriteCallForExamInCrsProgram (Link->Cod,PutForm);
|
||||
break;
|
||||
case PrgRsc_EXAM:
|
||||
case PrgRsc_GAME:
|
||||
case PrgRsc_SURVEY:
|
||||
|
|
46
swad_text.c
46
swad_text.c
|
@ -3746,29 +3746,6 @@ const char *Txt_Calendar =
|
|||
"Takvim";
|
||||
#endif
|
||||
|
||||
const char *Txt_CALL_FOR_EXAM =
|
||||
#if L==1 // ca
|
||||
"CONVOCATÒRIA D'EXAMEN";
|
||||
#elif L==2 // de
|
||||
"PRÜFUNGSAUFRUF";
|
||||
#elif L==3 // en
|
||||
"CALL FOR EXAM";
|
||||
#elif L==4 // es
|
||||
"CONVOCATORIA DE EXAMEN";
|
||||
#elif L==5 // fr
|
||||
"CONVOCATION À UN EXAMEN";
|
||||
#elif L==6 // gn
|
||||
"CONVOCATORIA DE EXAMEN"; // Okoteve traducción
|
||||
#elif L==7 // it
|
||||
"APPELLO D'ESAME";
|
||||
#elif L==8 // pl
|
||||
"OGLOSZENIE egzaminu";
|
||||
#elif L==9 // pt
|
||||
"CHAMADA DE EXAME";
|
||||
#elif L==10 // tr
|
||||
"CALL FOR EXAM"; // Çeviri lazim!
|
||||
#endif
|
||||
|
||||
const char *Txt_CALL_FOR_EXAM_Approximate_duration =
|
||||
#if L==1 // ca
|
||||
"Durada aproximada";
|
||||
|
@ -4068,6 +4045,29 @@ const char *Txt_CALL_FOR_EXAM_Year_or_semester = // 1, 2, 3..., not 1984, 2038..
|
|||
"Year or semester"; // Çeviri lazim!
|
||||
#endif
|
||||
|
||||
const char *Txt_Call_for_exam =
|
||||
#if L==1 // ca
|
||||
"Convocatòria d'examen";
|
||||
#elif L==2 // de
|
||||
"Aufrufe für Prüfung";
|
||||
#elif L==3 // en
|
||||
"Call for exam";
|
||||
#elif L==4 // es
|
||||
"Convocatoria de examen";
|
||||
#elif L==5 // fr
|
||||
"Convocation à un examen";
|
||||
#elif L==6 // gn
|
||||
"Convocatoria de examen"; // Okoteve traducción
|
||||
#elif L==7 // it
|
||||
"Appello d'esame";
|
||||
#elif L==8 // pl
|
||||
"Ogloszenie egzamin";
|
||||
#elif L==9 // pt
|
||||
"Chamada para exame";
|
||||
#elif L==10 // tr
|
||||
"Call for exam"; // Çeviri lazim!
|
||||
#endif
|
||||
|
||||
const char *Txt_Call_for_exam_removed =
|
||||
#if L==1 // ca
|
||||
"Convocatòria d'examen eliminada.";
|
||||
|
|
|
@ -10985,6 +10985,29 @@ const char *Txt_Actions[Act_NUM_ACTIONS] =
|
|||
"Unhide exam announcement" // Precisa de tradução
|
||||
#elif L==10 // tr
|
||||
"Unhide exam announcement" // Çeviri lazim!
|
||||
#endif
|
||||
,
|
||||
[ActReqLnkCfe] =
|
||||
#if L==1 // ca
|
||||
"Copy link to exam announcement" // Necessita traducció
|
||||
#elif L==2 // de
|
||||
"Copy link to exam announcement" // Need Übersetzung
|
||||
#elif L==3 // en
|
||||
"Copy link to exam announcement"
|
||||
#elif L==4 // es
|
||||
"Copiar enlace a convocatoria de examen"
|
||||
#elif L==5 // fr
|
||||
"Copy link to exam announcement" // Besoin de traduction
|
||||
#elif L==6 // gn
|
||||
"Copiar enlace a convocatoria de examen" // Okoteve traducción
|
||||
#elif L==7 // it
|
||||
"Copy link to exam announcement" // Bisogno di traduzione
|
||||
#elif L==8 // pl
|
||||
"Copy link to exam announcement" // Potrzebujesz tlumaczenie
|
||||
#elif L==9 // pt
|
||||
"Copy link to exam announcement" // Precisa de tradução
|
||||
#elif L==10 // tr
|
||||
"Copy link to exam announcement" // Çeviri lazim!
|
||||
#endif
|
||||
,
|
||||
[ActEdiOneTstQst] =
|
||||
|
|
Loading…
Reference in New Issue