Version 16.40

This commit is contained in:
Antonio Cañas Vargas 2016-10-23 17:20:06 +02:00
parent 7a77fe68ce
commit 6ac2ec7a87
5 changed files with 292 additions and 271 deletions

View File

@ -457,6 +457,7 @@ Course:
316. ActPrnCrsInf Print information on the course 316. ActPrnCrsInf Print information on the course
317. ActChgCrsDegCfg Request change of degree in course configuration 317. ActChgCrsDegCfg Request change of degree in course configuration
NEW. ActRenCrsFulCfg Request change of full name of a course in course configuration
318. ActChgInsCrsCodCfg Change institutional code in course configuration 318. ActChgInsCrsCodCfg Change institutional code in course configuration
319. ActChgCrsYeaCfg Change year/semester in course configuration 319. ActChgCrsYeaCfg Change year/semester in course configuration
320. ActEdiCrsInf Edit general information about the course 320. ActEdiCrsInf Edit general information about the course
@ -1816,6 +1817,7 @@ struct Act_Actions Act_Actions[Act_NUM_ACTIONS] =
/* ActPrnCrsInf */{1028,-1,TabUnk,ActSeeCrsInf ,0x1FF,0x1FF,0x000,Act_CONT_NORM,Act_BLNK_WINDOW,NULL ,Crs_PrintConfiguration ,NULL}, /* ActPrnCrsInf */{1028,-1,TabUnk,ActSeeCrsInf ,0x1FF,0x1FF,0x000,Act_CONT_NORM,Act_BLNK_WINDOW,NULL ,Crs_PrintConfiguration ,NULL},
/* ActChgCrsDegCfg */{1587,-1,TabUnk,ActSeeCrsInf ,0x1C0,0x1C0,0x1C0,Act_CONT_NORM,Act_THIS_WINDOW,Crs_ChangeCrsDegInConfig ,Crs_ContEditAfterChgCrsInConfig,NULL}, /* ActChgCrsDegCfg */{1587,-1,TabUnk,ActSeeCrsInf ,0x1C0,0x1C0,0x1C0,Act_CONT_NORM,Act_THIS_WINDOW,Crs_ChangeCrsDegInConfig ,Crs_ContEditAfterChgCrsInConfig,NULL},
/* ActRenCrsFulCfg */{1600,-1,TabUnk,ActSeeCrsInf ,0x1E0,0x1E0,0x1E0,Act_CONT_NORM,Act_THIS_WINDOW,Crs_RenameCourseFullInConfig ,Crs_ContEditAfterChgCrsInConfig,NULL},
/* ActChgInsCrsCodCfg*/{1024,-1,TabUnk,ActSeeCrsInf ,0x110,0x100,0x000,Act_CONT_NORM,Act_THIS_WINDOW,Crs_ChangeInsCrsCodInConfig ,Crs_ContEditAfterChgCrsInConfig,NULL}, /* ActChgInsCrsCodCfg*/{1024,-1,TabUnk,ActSeeCrsInf ,0x110,0x100,0x000,Act_CONT_NORM,Act_THIS_WINDOW,Crs_ChangeInsCrsCodInConfig ,Crs_ContEditAfterChgCrsInConfig,NULL},
/* ActChgCrsYeaCfg */{1573,-1,TabUnk,ActSeeCrsInf ,0x110,0x100,0x000,Act_CONT_NORM,Act_THIS_WINDOW,Crs_ChangeCrsYearInConfig ,Crs_ContEditAfterChgCrsInConfig,NULL}, /* ActChgCrsYeaCfg */{1573,-1,TabUnk,ActSeeCrsInf ,0x110,0x100,0x000,Act_CONT_NORM,Act_THIS_WINDOW,Crs_ChangeCrsYearInConfig ,Crs_ContEditAfterChgCrsInConfig,NULL},
/* ActEdiCrsInf */{ 848,-1,TabUnk,ActSeeCrsInf ,0x110,0x100,0x000,Act_CONT_NORM,Act_THIS_WINDOW,NULL ,Inf_FormsToSelSendInfo ,NULL}, /* ActEdiCrsInf */{ 848,-1,TabUnk,ActSeeCrsInf ,0x110,0x100,0x000,Act_CONT_NORM,Act_THIS_WINDOW,NULL ,Inf_FormsToSelSendInfo ,NULL},
@ -4467,6 +4469,7 @@ Act_Action_t Act_FromActCodToAction[1+Act_MAX_ACTION_COD] = // Do not reuse uniq
ActRenDegFulCfg, // #1597 ActRenDegFulCfg, // #1597
ActRenDegShoCfg, // #1598 ActRenDegShoCfg, // #1598
ActChgDegWWWCfg, // #1599 ActChgDegWWWCfg, // #1599
ActRenCrsFulCfg, // #1600
}; };
/*****************************************************************************/ /*****************************************************************************/

View File

@ -55,9 +55,9 @@ typedef enum
typedef int Act_Action_t; // Must be a signed type, because -1 is used to indicate obsolete action typedef int Act_Action_t; // Must be a signed type, because -1 is used to indicate obsolete action
#define Act_NUM_ACTIONS (1+9+51+14+93+73+70+247+186+155+172+36+30+86) #define Act_NUM_ACTIONS (1+9+51+14+93+73+70+248+186+155+172+36+30+86)
#define Act_MAX_ACTION_COD 1599 #define Act_MAX_ACTION_COD 1600
#define Act_MAX_OPTIONS_IN_MENU_PER_TAB 11 #define Act_MAX_OPTIONS_IN_MENU_PER_TAB 11
@ -453,253 +453,254 @@ typedef int Act_Action_t; // Must be a signed type, because -1 is used to indica
#define ActCrsSch (ActDowShaDeg+ 12) #define ActCrsSch (ActDowShaDeg+ 12)
#define ActPrnCrsInf (ActDowShaDeg+ 13) #define ActPrnCrsInf (ActDowShaDeg+ 13)
#define ActChgCrsDegCfg (ActDowShaDeg+ 14) #define ActChgCrsDegCfg (ActDowShaDeg+ 14)
#define ActChgInsCrsCodCfg (ActDowShaDeg+ 15) #define ActRenCrsFulCfg (ActDowShaDeg+ 15)
#define ActChgCrsYeaCfg (ActDowShaDeg+ 16) #define ActChgInsCrsCodCfg (ActDowShaDeg+ 16)
#define ActEdiCrsInf (ActDowShaDeg+ 17) #define ActChgCrsYeaCfg (ActDowShaDeg+ 17)
#define ActEdiTchGui (ActDowShaDeg+ 18) #define ActEdiCrsInf (ActDowShaDeg+ 18)
#define ActPrnCrsTT (ActDowShaDeg+ 19) #define ActEdiTchGui (ActDowShaDeg+ 19)
#define ActEdiCrsTT (ActDowShaDeg+ 20) #define ActPrnCrsTT (ActDowShaDeg+ 20)
#define ActChgCrsTT (ActDowShaDeg+ 21) #define ActEdiCrsTT (ActDowShaDeg+ 21)
#define ActChgCrsTT1stDay (ActDowShaDeg+ 22) #define ActChgCrsTT (ActDowShaDeg+ 22)
#define ActSeeSylLec (ActDowShaDeg+ 23) #define ActChgCrsTT1stDay (ActDowShaDeg+ 23)
#define ActSeeSylPra (ActDowShaDeg+ 24) #define ActSeeSylLec (ActDowShaDeg+ 24)
#define ActEdiSylLec (ActDowShaDeg+ 25) #define ActSeeSylPra (ActDowShaDeg+ 25)
#define ActEdiSylPra (ActDowShaDeg+ 26) #define ActEdiSylLec (ActDowShaDeg+ 26)
#define ActDelItmSylLec (ActDowShaDeg+ 27) #define ActEdiSylPra (ActDowShaDeg+ 27)
#define ActDelItmSylPra (ActDowShaDeg+ 28) #define ActDelItmSylLec (ActDowShaDeg+ 28)
#define ActUp_IteSylLec (ActDowShaDeg+ 29) #define ActDelItmSylPra (ActDowShaDeg+ 29)
#define ActUp_IteSylPra (ActDowShaDeg+ 30) #define ActUp_IteSylLec (ActDowShaDeg+ 30)
#define ActDwnIteSylLec (ActDowShaDeg+ 31) #define ActUp_IteSylPra (ActDowShaDeg+ 31)
#define ActDwnIteSylPra (ActDowShaDeg+ 32) #define ActDwnIteSylLec (ActDowShaDeg+ 32)
#define ActRgtIteSylLec (ActDowShaDeg+ 33) #define ActDwnIteSylPra (ActDowShaDeg+ 33)
#define ActRgtIteSylPra (ActDowShaDeg+ 34) #define ActRgtIteSylLec (ActDowShaDeg+ 34)
#define ActLftIteSylLec (ActDowShaDeg+ 35) #define ActRgtIteSylPra (ActDowShaDeg+ 35)
#define ActLftIteSylPra (ActDowShaDeg+ 36) #define ActLftIteSylLec (ActDowShaDeg+ 36)
#define ActInsIteSylLec (ActDowShaDeg+ 37) #define ActLftIteSylPra (ActDowShaDeg+ 37)
#define ActInsIteSylPra (ActDowShaDeg+ 38) #define ActInsIteSylLec (ActDowShaDeg+ 38)
#define ActModIteSylLec (ActDowShaDeg+ 39) #define ActInsIteSylPra (ActDowShaDeg+ 39)
#define ActModIteSylPra (ActDowShaDeg+ 40) #define ActModIteSylLec (ActDowShaDeg+ 40)
#define ActModIteSylPra (ActDowShaDeg+ 41)
#define ActChgToSeeDocCrs (ActDowShaDeg+ 41) #define ActChgToSeeDocCrs (ActDowShaDeg+ 42)
#define ActSeeDocCrs (ActDowShaDeg+ 42) #define ActSeeDocCrs (ActDowShaDeg+ 43)
#define ActExpSeeDocCrs (ActDowShaDeg+ 43) #define ActExpSeeDocCrs (ActDowShaDeg+ 44)
#define ActConSeeDocCrs (ActDowShaDeg+ 44) #define ActConSeeDocCrs (ActDowShaDeg+ 45)
#define ActZIPSeeDocCrs (ActDowShaDeg+ 45) #define ActZIPSeeDocCrs (ActDowShaDeg+ 46)
#define ActReqDatSeeDocCrs (ActDowShaDeg+ 46) #define ActReqDatSeeDocCrs (ActDowShaDeg+ 47)
#define ActDowSeeDocCrs (ActDowShaDeg+ 47) #define ActDowSeeDocCrs (ActDowShaDeg+ 48)
#define ActSeeDocGrp (ActDowShaDeg+ 48) #define ActSeeDocGrp (ActDowShaDeg+ 49)
#define ActExpSeeDocGrp (ActDowShaDeg+ 49) #define ActExpSeeDocGrp (ActDowShaDeg+ 50)
#define ActConSeeDocGrp (ActDowShaDeg+ 50) #define ActConSeeDocGrp (ActDowShaDeg+ 51)
#define ActZIPSeeDocGrp (ActDowShaDeg+ 51) #define ActZIPSeeDocGrp (ActDowShaDeg+ 52)
#define ActReqDatSeeDocGrp (ActDowShaDeg+ 52) #define ActReqDatSeeDocGrp (ActDowShaDeg+ 53)
#define ActDowSeeDocGrp (ActDowShaDeg+ 53) #define ActDowSeeDocGrp (ActDowShaDeg+ 54)
#define ActChgToAdmDocCrs (ActDowShaDeg+ 54) #define ActChgToAdmDocCrs (ActDowShaDeg+ 55)
#define ActAdmDocCrs (ActDowShaDeg+ 55) #define ActAdmDocCrs (ActDowShaDeg+ 56)
#define ActReqRemFilDocCrs (ActDowShaDeg+ 56) #define ActReqRemFilDocCrs (ActDowShaDeg+ 57)
#define ActRemFilDocCrs (ActDowShaDeg+ 57) #define ActRemFilDocCrs (ActDowShaDeg+ 58)
#define ActRemFolDocCrs (ActDowShaDeg+ 58) #define ActRemFolDocCrs (ActDowShaDeg+ 59)
#define ActCopDocCrs (ActDowShaDeg+ 59) #define ActCopDocCrs (ActDowShaDeg+ 60)
#define ActPasDocCrs (ActDowShaDeg+ 60) #define ActPasDocCrs (ActDowShaDeg+ 61)
#define ActRemTreDocCrs (ActDowShaDeg+ 61) #define ActRemTreDocCrs (ActDowShaDeg+ 62)
#define ActFrmCreDocCrs (ActDowShaDeg+ 62) #define ActFrmCreDocCrs (ActDowShaDeg+ 63)
#define ActCreFolDocCrs (ActDowShaDeg+ 63) #define ActCreFolDocCrs (ActDowShaDeg+ 64)
#define ActCreLnkDocCrs (ActDowShaDeg+ 64) #define ActCreLnkDocCrs (ActDowShaDeg+ 65)
#define ActRenFolDocCrs (ActDowShaDeg+ 65) #define ActRenFolDocCrs (ActDowShaDeg+ 66)
#define ActRcvFilDocCrsDZ (ActDowShaDeg+ 66) #define ActRcvFilDocCrsDZ (ActDowShaDeg+ 67)
#define ActRcvFilDocCrsCla (ActDowShaDeg+ 67) #define ActRcvFilDocCrsCla (ActDowShaDeg+ 68)
#define ActExpAdmDocCrs (ActDowShaDeg+ 68) #define ActExpAdmDocCrs (ActDowShaDeg+ 69)
#define ActConAdmDocCrs (ActDowShaDeg+ 69) #define ActConAdmDocCrs (ActDowShaDeg+ 70)
#define ActZIPAdmDocCrs (ActDowShaDeg+ 70) #define ActZIPAdmDocCrs (ActDowShaDeg+ 71)
#define ActShoDocCrs (ActDowShaDeg+ 71) #define ActShoDocCrs (ActDowShaDeg+ 72)
#define ActHidDocCrs (ActDowShaDeg+ 72) #define ActHidDocCrs (ActDowShaDeg+ 73)
#define ActReqDatAdmDocCrs (ActDowShaDeg+ 73) #define ActReqDatAdmDocCrs (ActDowShaDeg+ 74)
#define ActChgDatAdmDocCrs (ActDowShaDeg+ 74) #define ActChgDatAdmDocCrs (ActDowShaDeg+ 75)
#define ActDowAdmDocCrs (ActDowShaDeg+ 75) #define ActDowAdmDocCrs (ActDowShaDeg+ 76)
#define ActAdmDocGrp (ActDowShaDeg+ 76) #define ActAdmDocGrp (ActDowShaDeg+ 77)
#define ActReqRemFilDocGrp (ActDowShaDeg+ 77) #define ActReqRemFilDocGrp (ActDowShaDeg+ 78)
#define ActRemFilDocGrp (ActDowShaDeg+ 78) #define ActRemFilDocGrp (ActDowShaDeg+ 79)
#define ActRemFolDocGrp (ActDowShaDeg+ 79) #define ActRemFolDocGrp (ActDowShaDeg+ 80)
#define ActCopDocGrp (ActDowShaDeg+ 80) #define ActCopDocGrp (ActDowShaDeg+ 81)
#define ActPasDocGrp (ActDowShaDeg+ 81) #define ActPasDocGrp (ActDowShaDeg+ 82)
#define ActRemTreDocGrp (ActDowShaDeg+ 82) #define ActRemTreDocGrp (ActDowShaDeg+ 83)
#define ActFrmCreDocGrp (ActDowShaDeg+ 83) #define ActFrmCreDocGrp (ActDowShaDeg+ 84)
#define ActCreFolDocGrp (ActDowShaDeg+ 84) #define ActCreFolDocGrp (ActDowShaDeg+ 85)
#define ActCreLnkDocGrp (ActDowShaDeg+ 85) #define ActCreLnkDocGrp (ActDowShaDeg+ 86)
#define ActRenFolDocGrp (ActDowShaDeg+ 86) #define ActRenFolDocGrp (ActDowShaDeg+ 87)
#define ActRcvFilDocGrpDZ (ActDowShaDeg+ 87) #define ActRcvFilDocGrpDZ (ActDowShaDeg+ 88)
#define ActRcvFilDocGrpCla (ActDowShaDeg+ 88) #define ActRcvFilDocGrpCla (ActDowShaDeg+ 89)
#define ActExpAdmDocGrp (ActDowShaDeg+ 89) #define ActExpAdmDocGrp (ActDowShaDeg+ 90)
#define ActConAdmDocGrp (ActDowShaDeg+ 90) #define ActConAdmDocGrp (ActDowShaDeg+ 91)
#define ActZIPAdmDocGrp (ActDowShaDeg+ 91) #define ActZIPAdmDocGrp (ActDowShaDeg+ 92)
#define ActShoDocGrp (ActDowShaDeg+ 92) #define ActShoDocGrp (ActDowShaDeg+ 93)
#define ActHidDocGrp (ActDowShaDeg+ 93) #define ActHidDocGrp (ActDowShaDeg+ 94)
#define ActReqDatAdmDocGrp (ActDowShaDeg+ 94) #define ActReqDatAdmDocGrp (ActDowShaDeg+ 95)
#define ActChgDatAdmDocGrp (ActDowShaDeg+ 95) #define ActChgDatAdmDocGrp (ActDowShaDeg+ 96)
#define ActDowAdmDocGrp (ActDowShaDeg+ 96) #define ActDowAdmDocGrp (ActDowShaDeg+ 97)
#define ActChgToAdmTch (ActDowShaDeg+ 97) #define ActChgToAdmTch (ActDowShaDeg+ 98)
#define ActAdmTchCrs (ActDowShaDeg+ 98) #define ActAdmTchCrs (ActDowShaDeg+ 99)
#define ActReqRemFilTchCrs (ActDowShaDeg+ 99) #define ActReqRemFilTchCrs (ActDowShaDeg+100)
#define ActRemFilTchCrs (ActDowShaDeg+100) #define ActRemFilTchCrs (ActDowShaDeg+101)
#define ActRemFolTchCrs (ActDowShaDeg+101) #define ActRemFolTchCrs (ActDowShaDeg+102)
#define ActCopTchCrs (ActDowShaDeg+102) #define ActCopTchCrs (ActDowShaDeg+103)
#define ActPasTchCrs (ActDowShaDeg+103) #define ActPasTchCrs (ActDowShaDeg+104)
#define ActRemTreTchCrs (ActDowShaDeg+104) #define ActRemTreTchCrs (ActDowShaDeg+105)
#define ActFrmCreTchCrs (ActDowShaDeg+105) #define ActFrmCreTchCrs (ActDowShaDeg+106)
#define ActCreFolTchCrs (ActDowShaDeg+106) #define ActCreFolTchCrs (ActDowShaDeg+107)
#define ActCreLnkTchCrs (ActDowShaDeg+107) #define ActCreLnkTchCrs (ActDowShaDeg+108)
#define ActRenFolTchCrs (ActDowShaDeg+108) #define ActRenFolTchCrs (ActDowShaDeg+109)
#define ActRcvFilTchCrsDZ (ActDowShaDeg+109) #define ActRcvFilTchCrsDZ (ActDowShaDeg+110)
#define ActRcvFilTchCrsCla (ActDowShaDeg+110) #define ActRcvFilTchCrsCla (ActDowShaDeg+111)
#define ActExpTchCrs (ActDowShaDeg+111) #define ActExpTchCrs (ActDowShaDeg+112)
#define ActConTchCrs (ActDowShaDeg+112) #define ActConTchCrs (ActDowShaDeg+113)
#define ActZIPTchCrs (ActDowShaDeg+113) #define ActZIPTchCrs (ActDowShaDeg+114)
#define ActReqDatTchCrs (ActDowShaDeg+114) #define ActReqDatTchCrs (ActDowShaDeg+115)
#define ActChgDatTchCrs (ActDowShaDeg+115) #define ActChgDatTchCrs (ActDowShaDeg+116)
#define ActDowTchCrs (ActDowShaDeg+116) #define ActDowTchCrs (ActDowShaDeg+117)
#define ActAdmTchGrp (ActDowShaDeg+117) #define ActAdmTchGrp (ActDowShaDeg+118)
#define ActReqRemFilTchGrp (ActDowShaDeg+118) #define ActReqRemFilTchGrp (ActDowShaDeg+119)
#define ActRemFilTchGrp (ActDowShaDeg+119) #define ActRemFilTchGrp (ActDowShaDeg+120)
#define ActRemFolTchGrp (ActDowShaDeg+120) #define ActRemFolTchGrp (ActDowShaDeg+121)
#define ActCopTchGrp (ActDowShaDeg+121) #define ActCopTchGrp (ActDowShaDeg+122)
#define ActPasTchGrp (ActDowShaDeg+122) #define ActPasTchGrp (ActDowShaDeg+123)
#define ActRemTreTchGrp (ActDowShaDeg+123) #define ActRemTreTchGrp (ActDowShaDeg+124)
#define ActFrmCreTchGrp (ActDowShaDeg+124) #define ActFrmCreTchGrp (ActDowShaDeg+125)
#define ActCreFolTchGrp (ActDowShaDeg+125) #define ActCreFolTchGrp (ActDowShaDeg+126)
#define ActCreLnkTchGrp (ActDowShaDeg+126) #define ActCreLnkTchGrp (ActDowShaDeg+127)
#define ActRenFolTchGrp (ActDowShaDeg+127) #define ActRenFolTchGrp (ActDowShaDeg+128)
#define ActRcvFilTchGrpDZ (ActDowShaDeg+128) #define ActRcvFilTchGrpDZ (ActDowShaDeg+129)
#define ActRcvFilTchGrpCla (ActDowShaDeg+129) #define ActRcvFilTchGrpCla (ActDowShaDeg+130)
#define ActExpTchGrp (ActDowShaDeg+130) #define ActExpTchGrp (ActDowShaDeg+131)
#define ActConTchGrp (ActDowShaDeg+131) #define ActConTchGrp (ActDowShaDeg+132)
#define ActZIPTchGrp (ActDowShaDeg+132) #define ActZIPTchGrp (ActDowShaDeg+133)
#define ActReqDatTchGrp (ActDowShaDeg+133) #define ActReqDatTchGrp (ActDowShaDeg+134)
#define ActChgDatTchGrp (ActDowShaDeg+134) #define ActChgDatTchGrp (ActDowShaDeg+135)
#define ActDowTchGrp (ActDowShaDeg+135) #define ActDowTchGrp (ActDowShaDeg+136)
#define ActChgToAdmSha (ActDowShaDeg+136) #define ActChgToAdmSha (ActDowShaDeg+137)
#define ActAdmShaCrs (ActDowShaDeg+137) #define ActAdmShaCrs (ActDowShaDeg+138)
#define ActReqRemFilShaCrs (ActDowShaDeg+138) #define ActReqRemFilShaCrs (ActDowShaDeg+139)
#define ActRemFilShaCrs (ActDowShaDeg+139) #define ActRemFilShaCrs (ActDowShaDeg+140)
#define ActRemFolShaCrs (ActDowShaDeg+140) #define ActRemFolShaCrs (ActDowShaDeg+141)
#define ActCopShaCrs (ActDowShaDeg+141) #define ActCopShaCrs (ActDowShaDeg+142)
#define ActPasShaCrs (ActDowShaDeg+142) #define ActPasShaCrs (ActDowShaDeg+143)
#define ActRemTreShaCrs (ActDowShaDeg+143) #define ActRemTreShaCrs (ActDowShaDeg+144)
#define ActFrmCreShaCrs (ActDowShaDeg+144) #define ActFrmCreShaCrs (ActDowShaDeg+145)
#define ActCreFolShaCrs (ActDowShaDeg+145) #define ActCreFolShaCrs (ActDowShaDeg+146)
#define ActCreLnkShaCrs (ActDowShaDeg+146) #define ActCreLnkShaCrs (ActDowShaDeg+147)
#define ActRenFolShaCrs (ActDowShaDeg+147) #define ActRenFolShaCrs (ActDowShaDeg+148)
#define ActRcvFilShaCrsDZ (ActDowShaDeg+148) #define ActRcvFilShaCrsDZ (ActDowShaDeg+149)
#define ActRcvFilShaCrsCla (ActDowShaDeg+149) #define ActRcvFilShaCrsCla (ActDowShaDeg+150)
#define ActExpShaCrs (ActDowShaDeg+150) #define ActExpShaCrs (ActDowShaDeg+151)
#define ActConShaCrs (ActDowShaDeg+151) #define ActConShaCrs (ActDowShaDeg+152)
#define ActZIPShaCrs (ActDowShaDeg+152) #define ActZIPShaCrs (ActDowShaDeg+153)
#define ActReqDatShaCrs (ActDowShaDeg+153) #define ActReqDatShaCrs (ActDowShaDeg+154)
#define ActChgDatShaCrs (ActDowShaDeg+154) #define ActChgDatShaCrs (ActDowShaDeg+155)
#define ActDowShaCrs (ActDowShaDeg+155) #define ActDowShaCrs (ActDowShaDeg+156)
#define ActAdmShaGrp (ActDowShaDeg+156) #define ActAdmShaGrp (ActDowShaDeg+157)
#define ActReqRemFilShaGrp (ActDowShaDeg+157) #define ActReqRemFilShaGrp (ActDowShaDeg+158)
#define ActRemFilShaGrp (ActDowShaDeg+158) #define ActRemFilShaGrp (ActDowShaDeg+159)
#define ActRemFolShaGrp (ActDowShaDeg+159) #define ActRemFolShaGrp (ActDowShaDeg+160)
#define ActCopShaGrp (ActDowShaDeg+160) #define ActCopShaGrp (ActDowShaDeg+161)
#define ActPasShaGrp (ActDowShaDeg+161) #define ActPasShaGrp (ActDowShaDeg+162)
#define ActRemTreShaGrp (ActDowShaDeg+162) #define ActRemTreShaGrp (ActDowShaDeg+163)
#define ActFrmCreShaGrp (ActDowShaDeg+163) #define ActFrmCreShaGrp (ActDowShaDeg+164)
#define ActCreFolShaGrp (ActDowShaDeg+164) #define ActCreFolShaGrp (ActDowShaDeg+165)
#define ActCreLnkShaGrp (ActDowShaDeg+165) #define ActCreLnkShaGrp (ActDowShaDeg+166)
#define ActRenFolShaGrp (ActDowShaDeg+166) #define ActRenFolShaGrp (ActDowShaDeg+167)
#define ActRcvFilShaGrpDZ (ActDowShaDeg+167) #define ActRcvFilShaGrpDZ (ActDowShaDeg+168)
#define ActRcvFilShaGrpCla (ActDowShaDeg+168) #define ActRcvFilShaGrpCla (ActDowShaDeg+169)
#define ActExpShaGrp (ActDowShaDeg+169) #define ActExpShaGrp (ActDowShaDeg+170)
#define ActConShaGrp (ActDowShaDeg+170) #define ActConShaGrp (ActDowShaDeg+171)
#define ActZIPShaGrp (ActDowShaDeg+171) #define ActZIPShaGrp (ActDowShaDeg+172)
#define ActReqDatShaGrp (ActDowShaDeg+172) #define ActReqDatShaGrp (ActDowShaDeg+173)
#define ActChgDatShaGrp (ActDowShaDeg+173) #define ActChgDatShaGrp (ActDowShaDeg+174)
#define ActDowShaGrp (ActDowShaDeg+174) #define ActDowShaGrp (ActDowShaDeg+175)
#define ActEdiBib (ActDowShaDeg+175) #define ActEdiBib (ActDowShaDeg+176)
#define ActEdiFAQ (ActDowShaDeg+176) #define ActEdiFAQ (ActDowShaDeg+177)
#define ActEdiCrsLnk (ActDowShaDeg+177) #define ActEdiCrsLnk (ActDowShaDeg+178)
#define ActChgFrcReaCrsInf (ActDowShaDeg+178) #define ActChgFrcReaCrsInf (ActDowShaDeg+179)
#define ActChgFrcReaTchGui (ActDowShaDeg+179) #define ActChgFrcReaTchGui (ActDowShaDeg+180)
#define ActChgFrcReaSylLec (ActDowShaDeg+180) #define ActChgFrcReaSylLec (ActDowShaDeg+181)
#define ActChgFrcReaSylPra (ActDowShaDeg+181) #define ActChgFrcReaSylPra (ActDowShaDeg+182)
#define ActChgFrcReaBib (ActDowShaDeg+182) #define ActChgFrcReaBib (ActDowShaDeg+183)
#define ActChgFrcReaFAQ (ActDowShaDeg+183) #define ActChgFrcReaFAQ (ActDowShaDeg+184)
#define ActChgFrcReaCrsLnk (ActDowShaDeg+184) #define ActChgFrcReaCrsLnk (ActDowShaDeg+185)
#define ActChgHavReaCrsInf (ActDowShaDeg+185) #define ActChgHavReaCrsInf (ActDowShaDeg+186)
#define ActChgHavReaTchGui (ActDowShaDeg+186) #define ActChgHavReaTchGui (ActDowShaDeg+187)
#define ActChgHavReaSylLec (ActDowShaDeg+187) #define ActChgHavReaSylLec (ActDowShaDeg+188)
#define ActChgHavReaSylPra (ActDowShaDeg+188) #define ActChgHavReaSylPra (ActDowShaDeg+189)
#define ActChgHavReaBib (ActDowShaDeg+189) #define ActChgHavReaBib (ActDowShaDeg+190)
#define ActChgHavReaFAQ (ActDowShaDeg+190) #define ActChgHavReaFAQ (ActDowShaDeg+191)
#define ActChgHavReaCrsLnk (ActDowShaDeg+191) #define ActChgHavReaCrsLnk (ActDowShaDeg+192)
#define ActSelInfSrcCrsInf (ActDowShaDeg+192) #define ActSelInfSrcCrsInf (ActDowShaDeg+193)
#define ActSelInfSrcTchGui (ActDowShaDeg+193) #define ActSelInfSrcTchGui (ActDowShaDeg+194)
#define ActSelInfSrcSylLec (ActDowShaDeg+194) #define ActSelInfSrcSylLec (ActDowShaDeg+195)
#define ActSelInfSrcSylPra (ActDowShaDeg+195) #define ActSelInfSrcSylPra (ActDowShaDeg+196)
#define ActSelInfSrcBib (ActDowShaDeg+196) #define ActSelInfSrcBib (ActDowShaDeg+197)
#define ActSelInfSrcFAQ (ActDowShaDeg+197) #define ActSelInfSrcFAQ (ActDowShaDeg+198)
#define ActSelInfSrcCrsLnk (ActDowShaDeg+198) #define ActSelInfSrcCrsLnk (ActDowShaDeg+199)
#define ActRcvURLCrsInf (ActDowShaDeg+199) #define ActRcvURLCrsInf (ActDowShaDeg+200)
#define ActRcvURLTchGui (ActDowShaDeg+200) #define ActRcvURLTchGui (ActDowShaDeg+201)
#define ActRcvURLSylLec (ActDowShaDeg+201) #define ActRcvURLSylLec (ActDowShaDeg+202)
#define ActRcvURLSylPra (ActDowShaDeg+202) #define ActRcvURLSylPra (ActDowShaDeg+203)
#define ActRcvURLBib (ActDowShaDeg+203) #define ActRcvURLBib (ActDowShaDeg+204)
#define ActRcvURLFAQ (ActDowShaDeg+204) #define ActRcvURLFAQ (ActDowShaDeg+205)
#define ActRcvURLCrsLnk (ActDowShaDeg+205) #define ActRcvURLCrsLnk (ActDowShaDeg+206)
#define ActRcvPagCrsInf (ActDowShaDeg+206) #define ActRcvPagCrsInf (ActDowShaDeg+207)
#define ActRcvPagTchGui (ActDowShaDeg+207) #define ActRcvPagTchGui (ActDowShaDeg+208)
#define ActRcvPagSylLec (ActDowShaDeg+208) #define ActRcvPagSylLec (ActDowShaDeg+209)
#define ActRcvPagSylPra (ActDowShaDeg+209) #define ActRcvPagSylPra (ActDowShaDeg+210)
#define ActRcvPagBib (ActDowShaDeg+210) #define ActRcvPagBib (ActDowShaDeg+211)
#define ActRcvPagFAQ (ActDowShaDeg+211) #define ActRcvPagFAQ (ActDowShaDeg+212)
#define ActRcvPagCrsLnk (ActDowShaDeg+212) #define ActRcvPagCrsLnk (ActDowShaDeg+213)
#define ActEditorCrsInf (ActDowShaDeg+213) #define ActEditorCrsInf (ActDowShaDeg+214)
#define ActEditorTchGui (ActDowShaDeg+214) #define ActEditorTchGui (ActDowShaDeg+215)
#define ActEditorSylLec (ActDowShaDeg+215) #define ActEditorSylLec (ActDowShaDeg+216)
#define ActEditorSylPra (ActDowShaDeg+216) #define ActEditorSylPra (ActDowShaDeg+217)
#define ActEditorBib (ActDowShaDeg+217) #define ActEditorBib (ActDowShaDeg+218)
#define ActEditorFAQ (ActDowShaDeg+218) #define ActEditorFAQ (ActDowShaDeg+219)
#define ActEditorCrsLnk (ActDowShaDeg+219) #define ActEditorCrsLnk (ActDowShaDeg+220)
#define ActPlaTxtEdiCrsInf (ActDowShaDeg+220) #define ActPlaTxtEdiCrsInf (ActDowShaDeg+221)
#define ActPlaTxtEdiTchGui (ActDowShaDeg+221) #define ActPlaTxtEdiTchGui (ActDowShaDeg+222)
#define ActPlaTxtEdiSylLec (ActDowShaDeg+222) #define ActPlaTxtEdiSylLec (ActDowShaDeg+223)
#define ActPlaTxtEdiSylPra (ActDowShaDeg+223) #define ActPlaTxtEdiSylPra (ActDowShaDeg+224)
#define ActPlaTxtEdiBib (ActDowShaDeg+224) #define ActPlaTxtEdiBib (ActDowShaDeg+225)
#define ActPlaTxtEdiFAQ (ActDowShaDeg+225) #define ActPlaTxtEdiFAQ (ActDowShaDeg+226)
#define ActPlaTxtEdiCrsLnk (ActDowShaDeg+226) #define ActPlaTxtEdiCrsLnk (ActDowShaDeg+227)
#define ActRchTxtEdiCrsInf (ActDowShaDeg+227) #define ActRchTxtEdiCrsInf (ActDowShaDeg+228)
#define ActRchTxtEdiTchGui (ActDowShaDeg+228) #define ActRchTxtEdiTchGui (ActDowShaDeg+229)
#define ActRchTxtEdiSylLec (ActDowShaDeg+229) #define ActRchTxtEdiSylLec (ActDowShaDeg+230)
#define ActRchTxtEdiSylPra (ActDowShaDeg+230) #define ActRchTxtEdiSylPra (ActDowShaDeg+231)
#define ActRchTxtEdiBib (ActDowShaDeg+231) #define ActRchTxtEdiBib (ActDowShaDeg+232)
#define ActRchTxtEdiFAQ (ActDowShaDeg+232) #define ActRchTxtEdiFAQ (ActDowShaDeg+233)
#define ActRchTxtEdiCrsLnk (ActDowShaDeg+233) #define ActRchTxtEdiCrsLnk (ActDowShaDeg+234)
#define ActRcvPlaTxtCrsInf (ActDowShaDeg+234) #define ActRcvPlaTxtCrsInf (ActDowShaDeg+235)
#define ActRcvPlaTxtTchGui (ActDowShaDeg+235) #define ActRcvPlaTxtTchGui (ActDowShaDeg+236)
#define ActRcvPlaTxtSylLec (ActDowShaDeg+236) #define ActRcvPlaTxtSylLec (ActDowShaDeg+237)
#define ActRcvPlaTxtSylPra (ActDowShaDeg+237) #define ActRcvPlaTxtSylPra (ActDowShaDeg+238)
#define ActRcvPlaTxtBib (ActDowShaDeg+238) #define ActRcvPlaTxtBib (ActDowShaDeg+239)
#define ActRcvPlaTxtFAQ (ActDowShaDeg+239) #define ActRcvPlaTxtFAQ (ActDowShaDeg+240)
#define ActRcvPlaTxtCrsLnk (ActDowShaDeg+240) #define ActRcvPlaTxtCrsLnk (ActDowShaDeg+241)
#define ActRcvRchTxtCrsInf (ActDowShaDeg+241) #define ActRcvRchTxtCrsInf (ActDowShaDeg+242)
#define ActRcvRchTxtTchGui (ActDowShaDeg+242) #define ActRcvRchTxtTchGui (ActDowShaDeg+243)
#define ActRcvRchTxtSylLec (ActDowShaDeg+243) #define ActRcvRchTxtSylLec (ActDowShaDeg+244)
#define ActRcvRchTxtSylPra (ActDowShaDeg+244) #define ActRcvRchTxtSylPra (ActDowShaDeg+245)
#define ActRcvRchTxtBib (ActDowShaDeg+245) #define ActRcvRchTxtBib (ActDowShaDeg+246)
#define ActRcvRchTxtFAQ (ActDowShaDeg+246) #define ActRcvRchTxtFAQ (ActDowShaDeg+247)
#define ActRcvRchTxtCrsLnk (ActDowShaDeg+247) #define ActRcvRchTxtCrsLnk (ActDowShaDeg+248)
/*****************************************************************************/ /*****************************************************************************/
/***************************** Assessment tab ********************************/ /***************************** Assessment tab ********************************/

View File

@ -150,13 +150,17 @@
/****************************** Public constants *****************************/ /****************************** Public constants *****************************/
/*****************************************************************************/ /*****************************************************************************/
#define Log_PLATFORM_VERSION "SWAD 16.39 (2016-10-23)" #define Log_PLATFORM_VERSION "SWAD 16.40 (2016-10-23)"
#define CSS_FILE "swad16.32.1.css" #define CSS_FILE "swad16.32.1.css"
#define JS_FILE "swad15.238.1.js" #define JS_FILE "swad15.238.1.js"
// Number of lines (includes comments but not blank lines) has been got with the following command: // Number of lines (includes comments but not blank lines) has been got with the following command:
// nl swad*.c swad*.h css/swad*.css py/swad*.py js/swad*.js soap/swad*.h sql/swad*.sql | tail -1 // nl swad*.c swad*.h css/swad*.css py/swad*.py js/swad*.js soap/swad*.h sql/swad*.sql | tail -1
/* /*
Version 16.40: Oct 23, 2016 New form in degree configuration to change full name. (205427 lines)
1 change necessary in database:
INSERT INTO actions (ActCod,Language,Obsolete,Txt) VALUES ('1600','es','N','Cambiar nombre completo asig.');
Version 16.39: Oct 23, 2016 New form in degree configuration to change WWW. (205404 lines) Version 16.39: Oct 23, 2016 New form in degree configuration to change WWW. (205404 lines)
2 changes necessary in database: 2 changes necessary in database:
UPDATE actions SET Txt='Cambiar web de titulación' WHERE ActCod='554' AND Language='es'; UPDATE actions SET Txt='Cambiar web de titulación' WHERE ActCod='554' AND Language='es';

View File

@ -103,7 +103,9 @@ static void Crs_UpdateCrsDegDB (long CrsCod,long DegCod);
static void Crs_UpdateCrsYear (struct Course *Crs,unsigned NewYear); static void Crs_UpdateCrsYear (struct Course *Crs,unsigned NewYear);
static void Crs_EmptyCourseCompletely (long CrsCod); static void Crs_EmptyCourseCompletely (long CrsCod);
static bool Crs_RenameCourse (struct Course *Crs,Cns_ShortOrFullName_t ShortOrFullName);
static void Crs_GetCrsCodFromForm (void);
static void Crs_RenameCourse (struct Course *Crs,Cns_ShortOrFullName_t ShortOrFullName);
static void Crs_PutButtonToGoToCrs (struct Course *Crs); static void Crs_PutButtonToGoToCrs (struct Course *Crs);
static void Crs_PutButtonToRegisterInCrs (struct Course *Crs); static void Crs_PutButtonToRegisterInCrs (struct Course *Crs);
@ -250,16 +252,31 @@ static void Crs_Configuration (bool PrintView)
/***** Course full name *****/ /***** Course full name *****/
fprintf (Gbl.F.Out,"<tr>" fprintf (Gbl.F.Out,"<tr>"
"<td class=\"%s RIGHT_MIDDLE\">" "<td class=\"%s RIGHT_MIDDLE\">"
"%s:" "%s:"
"</td>" "</td>"
"<td class=\"DAT_N LEFT_MIDDLE\">" "<td class=\"DAT_N LEFT_MIDDLE\">",
"%s" The_ClassForm[Gbl.Prefs.Theme],
"</td>" Txt_Course);
"</tr>", if (!PrintView &&
The_ClassForm[Gbl.Prefs.Theme], Gbl.Usrs.Me.LoggedRole >= Rol_DEG_ADM)
Txt_Course, // Only degree admins, centre admins, institution admins and system admins can edit course full name
Gbl.CurrentCrs.Crs.FullName); {
/* Form to change course full name */
Act_FormStart (ActRenCrsFulCfg);
fprintf (Gbl.F.Out,"<input type=\"text\" name=\"FullName\""
" maxlength=\"%u\" value=\"%s\""
" class=\"INPUT_FULL_NAME\""
" onchange=\"document.getElementById('%s').submit();\" />",
Crs_MAX_LENGTH_COURSE_FULL_NAME,
Gbl.CurrentCrs.Crs.FullName,
Gbl.Form.Id);
Act_FormEnd ();
}
else // I can not edit course full name
fprintf (Gbl.F.Out,"%s",Gbl.CurrentCrs.Crs.FullName);
fprintf (Gbl.F.Out,"</td>"
"</tr>");
/***** Course short name *****/ /***** Course short name *****/
fprintf (Gbl.F.Out,"<tr>" fprintf (Gbl.F.Out,"<tr>"
@ -2622,13 +2639,8 @@ void Crs_UpdateInstitutionalCrsCod (struct Course *Crs,const char *NewInstitutio
void Crs_RenameCourseShort (void) void Crs_RenameCourseShort (void)
{ {
struct Course *Crs; Crs_GetCrsCodFromForm ();
Crs_RenameCourse (&Gbl.Degs.EditingCrs,Cns_SHORT_NAME);
Crs = &Gbl.Degs.EditingCrs;
if (Crs_RenameCourse (Crs,Cns_SHORT_NAME))
if (Crs->CrsCod == Gbl.CurrentCrs.Crs.CrsCod) // If renaming current course...
strcpy (Gbl.CurrentCrs.Crs.ShortName,Crs->ShortName); // Overwrite current course name in order to show correctly in page title and heading
} }
/*****************************************************************************/ /*****************************************************************************/
@ -2637,22 +2649,31 @@ void Crs_RenameCourseShort (void)
void Crs_RenameCourseFull (void) void Crs_RenameCourseFull (void)
{ {
struct Course *Crs; Crs_GetCrsCodFromForm ();
Crs_RenameCourse (&Gbl.Degs.EditingCrs,Cns_FULL_NAME);
}
Crs = &Gbl.Degs.EditingCrs; void Crs_RenameCourseFullInConfig (void)
{
Crs_RenameCourse (&Gbl.CurrentCrs.Crs,Cns_FULL_NAME);
}
if (Crs_RenameCourse (Crs,Cns_FULL_NAME)) /*****************************************************************************/
if (Crs->CrsCod == Gbl.CurrentCrs.Crs.CrsCod) // If renaming current course... /************************ Get the code of the course *************************/
strcpy (Gbl.CurrentCrs.Crs.FullName,Crs->FullName); // Overwrite current course name in order to show correctly in page title and heading /*****************************************************************************/
static void Crs_GetCrsCodFromForm (void)
{
/***** Get the code of the course *****/
if ((Gbl.Degs.EditingCrs.CrsCod = Crs_GetParamOtherCrsCod ()) < 0)
Lay_ShowErrorAndExit ("Code of course is missing.");
} }
/*****************************************************************************/ /*****************************************************************************/
/************************ Change the name of a course ************************/ /************************ Change the name of a course ************************/
/*****************************************************************************/ /*****************************************************************************/
// Returns true if the course is renamed
// Returns false if the course is not renamed
static bool Crs_RenameCourse (struct Course *Crs,Cns_ShortOrFullName_t ShortOrFullName) static void Crs_RenameCourse (struct Course *Crs,Cns_ShortOrFullName_t ShortOrFullName)
{ {
extern const char *Txt_You_can_not_leave_the_name_of_the_course_X_empty; extern const char *Txt_You_can_not_leave_the_name_of_the_course_X_empty;
extern const char *Txt_The_course_X_already_exists; extern const char *Txt_The_course_X_already_exists;
@ -2665,7 +2686,6 @@ static bool Crs_RenameCourse (struct Course *Crs,Cns_ShortOrFullName_t ShortOrFu
unsigned MaxLength = 0; // Initialized to avoid warning unsigned MaxLength = 0; // Initialized to avoid warning
char *CurrentCrsName = NULL; // Initialized to avoid warning char *CurrentCrsName = NULL; // Initialized to avoid warning
char NewCrsName[Crs_MAX_LENGTH_COURSE_FULL_NAME+1]; char NewCrsName[Crs_MAX_LENGTH_COURSE_FULL_NAME+1];
bool CourseHasBeenRenamed = false;
switch (ShortOrFullName) switch (ShortOrFullName)
{ {
@ -2684,10 +2704,6 @@ static bool Crs_RenameCourse (struct Course *Crs,Cns_ShortOrFullName_t ShortOrFu
} }
/***** Get parameters from form *****/ /***** Get parameters from form *****/
/* Get the code of the course */
if ((Crs->CrsCod = Crs_GetParamOtherCrsCod ()) == -1L)
Lay_ShowErrorAndExit ("Code of course is missing.");
/* Get the new name for the course */ /* Get the new name for the course */
Par_GetParToText (ParamName,NewCrsName,MaxLength); Par_GetParToText (ParamName,NewCrsName,MaxLength);
@ -2730,8 +2746,6 @@ static bool Crs_RenameCourse (struct Course *Crs,Cns_ShortOrFullName_t ShortOrFu
/* Change current course name in order to display it properly */ /* Change current course name in order to display it properly */
strncpy (CurrentCrsName,NewCrsName,MaxLength); strncpy (CurrentCrsName,NewCrsName,MaxLength);
CurrentCrsName[MaxLength] = '\0'; CurrentCrsName[MaxLength] = '\0';
CourseHasBeenRenamed = true;
} }
} }
else // The same name else // The same name
@ -2744,8 +2758,6 @@ static bool Crs_RenameCourse (struct Course *Crs,Cns_ShortOrFullName_t ShortOrFu
Gbl.Error = true; Gbl.Error = true;
strcpy (Gbl.Message,Txt_You_dont_have_permission_to_edit_this_course); strcpy (Gbl.Message,Txt_You_dont_have_permission_to_edit_this_course);
} }
return CourseHasBeenRenamed;
} }
/*****************************************************************************/ /*****************************************************************************/

View File

@ -125,6 +125,7 @@ void Crs_ChangeCrsYear (void);
void Crs_UpdateInstitutionalCrsCod (struct Course *Crs,const char *NewInstitutionalCrsCod); void Crs_UpdateInstitutionalCrsCod (struct Course *Crs,const char *NewInstitutionalCrsCod);
void Crs_RenameCourseShort (void); void Crs_RenameCourseShort (void);
void Crs_RenameCourseFull (void); void Crs_RenameCourseFull (void);
void Crs_RenameCourseFullInConfig (void);
void Crs_ChangeCrsStatus (void); void Crs_ChangeCrsStatus (void);
void Crs_ContEditAfterChgCrs (void); void Crs_ContEditAfterChgCrs (void);