diff --git a/swad_action.c b/swad_action.c index 24e5c0b2..d3b0102f 100644 --- a/swad_action.c +++ b/swad_action.c @@ -285,6 +285,7 @@ Centre: 171. ActPrnCtrInf Print information on the current centre 172. ActChgCtrInsCfg Request change of the institution of a centre in centre configuration + NEW. ActRenCtrShoCfg Change short name centre in centre configuration NEW. ActRenCtrFulCfg Change full name centre in centre configuration 173. ActReqCtrLog Show form to send the logo of the current centre 174. ActRecCtrLog Receive and store the logo of the current centre @@ -1636,6 +1637,7 @@ struct Act_Actions Act_Actions[Act_NUM_ACTIONS] = /* ActPrnCtrInf */{1152,-1,TabUnk,ActSeeCtrInf ,0x1FF,0x1FF,0x1FF,Act_CONT_NORM,Act_BLNK_WINDOW,NULL ,Ctr_PrintConfiguration ,NULL}, /* ActChgCtrInsCfg */{1589,-1,TabUnk,ActSeeCtrInf ,0x100,0x100,0x100,Act_CONT_NORM,Act_THIS_WINDOW,Ctr_ChangeCtrInsInConfig ,Ctr_ContEditAfterChgCtrInConfig,NULL}, + /* ActRenCtrShoCfg */{1595,-1,TabUnk,ActSeeCtrInf ,0x180,0x180,0x180,Act_CONT_NORM,Act_THIS_WINDOW,Ctr_RenameCentreShortInConfig ,Ctr_ContEditAfterChgCtrInConfig,NULL}, /* ActRenCtrFulCfg */{1594,-1,TabUnk,ActSeeCtrInf ,0x180,0x180,0x180,Act_CONT_NORM,Act_THIS_WINDOW,Ctr_RenameCentreFullInConfig ,Ctr_ContEditAfterChgCtrInConfig,NULL}, /* ActReqCtrLog */{1244,-1,TabUnk,ActSeeCtrInf ,0x100,0x100,0x100,Act_CONT_NORM,Act_THIS_WINDOW,NULL ,Ctr_RequestLogo ,NULL}, /* ActRecCtrLog */{1051,-1,TabUnk,ActSeeCtrInf ,0x100,0x100,0x100,Act_CONT_DATA,Act_THIS_WINDOW,Ctr_ReceiveLogo ,Ctr_ShowConfiguration ,NULL}, @@ -4452,6 +4454,7 @@ Act_Action_t Act_FromActCodToAction[1+Act_MAX_ACTION_COD] = // Do not reuse uniq ActRenInsShoCfg, // #1592 ActChgInsWWWCfg, // #1593 ActRenCtrFulCfg, // #1594 + ActRenCtrShoCfg, // #1595 }; /*****************************************************************************/ diff --git a/swad_action.h b/swad_action.h index 6430a9c5..b7683760 100644 --- a/swad_action.h +++ b/swad_action.h @@ -55,11 +55,11 @@ typedef enum 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+71+67+247+186+155+172+36+30+86) +#define Act_NUM_ACTIONS (1+9+51+14+93+72+67+247+186+155+172+36+30+86) -#define Act_MAX_ACTION_COD 1594 +#define Act_MAX_ACTION_COD 1595 -#define Act_MAX_OPTIONS_IN_MENU_PER_TAB 20 +#define Act_MAX_OPTIONS_IN_MENU_PER_TAB 11 #define Act_MAX_LENGTH_ID (32+Cry_LENGTH_ENCRYPTED_STR_SHA256_BASE64+10+1) @@ -285,72 +285,73 @@ typedef int Act_Action_t; // Must be a signed type, because -1 is used to indica #define ActCtrSch (ActDowShaIns+ 6) #define ActPrnCtrInf (ActDowShaIns+ 7) #define ActChgCtrInsCfg (ActDowShaIns+ 8) -#define ActRenCtrFulCfg (ActDowShaIns+ 9) -#define ActReqCtrLog (ActDowShaIns+ 10) -#define ActRecCtrLog (ActDowShaIns+ 11) -#define ActRemCtrLog (ActDowShaIns+ 12) -#define ActReqCtrPho (ActDowShaIns+ 13) -#define ActRecCtrPho (ActDowShaIns+ 14) -#define ActChgCtrPhoAtt (ActDowShaIns+ 15) +#define ActRenCtrShoCfg (ActDowShaIns+ 9) +#define ActRenCtrFulCfg (ActDowShaIns+ 10) +#define ActReqCtrLog (ActDowShaIns+ 11) +#define ActRecCtrLog (ActDowShaIns+ 12) +#define ActRemCtrLog (ActDowShaIns+ 13) +#define ActReqCtrPho (ActDowShaIns+ 14) +#define ActRecCtrPho (ActDowShaIns+ 15) +#define ActChgCtrPhoAtt (ActDowShaIns+ 16) -#define ActEdiDeg (ActDowShaIns+ 16) -#define ActReqDeg (ActDowShaIns+ 17) -#define ActNewDeg (ActDowShaIns+ 18) -#define ActRemDeg (ActDowShaIns+ 19) -#define ActRenDegSho (ActDowShaIns+ 20) -#define ActRenDegFul (ActDowShaIns+ 21) -#define ActChgDegTyp (ActDowShaIns+ 22) -#define ActChgDegWWW (ActDowShaIns+ 23) -#define ActChgDegSta (ActDowShaIns+ 24) +#define ActEdiDeg (ActDowShaIns+ 17) +#define ActReqDeg (ActDowShaIns+ 18) +#define ActNewDeg (ActDowShaIns+ 19) +#define ActRemDeg (ActDowShaIns+ 20) +#define ActRenDegSho (ActDowShaIns+ 21) +#define ActRenDegFul (ActDowShaIns+ 22) +#define ActChgDegTyp (ActDowShaIns+ 23) +#define ActChgDegWWW (ActDowShaIns+ 24) +#define ActChgDegSta (ActDowShaIns+ 25) -#define ActChgToSeeDocCtr (ActDowShaIns+ 25) -#define ActSeeDocCtr (ActDowShaIns+ 26) -#define ActExpSeeDocCtr (ActDowShaIns+ 27) -#define ActConSeeDocCtr (ActDowShaIns+ 28) -#define ActZIPSeeDocCtr (ActDowShaIns+ 29) -#define ActReqDatSeeDocCtr (ActDowShaIns+ 30) -#define ActDowSeeDocCtr (ActDowShaIns+ 31) -#define ActChgToAdmDocCtr (ActDowShaIns+ 32) -#define ActAdmDocCtr (ActDowShaIns+ 33) -#define ActReqRemFilDocCtr (ActDowShaIns+ 34) -#define ActRemFilDocCtr (ActDowShaIns+ 35) -#define ActRemFolDocCtr (ActDowShaIns+ 36) -#define ActCopDocCtr (ActDowShaIns+ 37) -#define ActPasDocCtr (ActDowShaIns+ 38) -#define ActRemTreDocCtr (ActDowShaIns+ 39) -#define ActFrmCreDocCtr (ActDowShaIns+ 40) -#define ActCreFolDocCtr (ActDowShaIns+ 41) -#define ActCreLnkDocCtr (ActDowShaIns+ 42) -#define ActRenFolDocCtr (ActDowShaIns+ 43) -#define ActRcvFilDocCtrDZ (ActDowShaIns+ 44) -#define ActRcvFilDocCtrCla (ActDowShaIns+ 45) -#define ActExpAdmDocCtr (ActDowShaIns+ 46) -#define ActConAdmDocCtr (ActDowShaIns+ 47) -#define ActZIPAdmDocCtr (ActDowShaIns+ 48) -#define ActShoDocCtr (ActDowShaIns+ 49) -#define ActHidDocCtr (ActDowShaIns+ 50) -#define ActReqDatAdmDocCtr (ActDowShaIns+ 51) -#define ActChgDatAdmDocCtr (ActDowShaIns+ 52) -#define ActDowAdmDocCtr (ActDowShaIns+ 53) +#define ActChgToSeeDocCtr (ActDowShaIns+ 26) +#define ActSeeDocCtr (ActDowShaIns+ 27) +#define ActExpSeeDocCtr (ActDowShaIns+ 28) +#define ActConSeeDocCtr (ActDowShaIns+ 29) +#define ActZIPSeeDocCtr (ActDowShaIns+ 30) +#define ActReqDatSeeDocCtr (ActDowShaIns+ 31) +#define ActDowSeeDocCtr (ActDowShaIns+ 32) +#define ActChgToAdmDocCtr (ActDowShaIns+ 33) +#define ActAdmDocCtr (ActDowShaIns+ 34) +#define ActReqRemFilDocCtr (ActDowShaIns+ 35) +#define ActRemFilDocCtr (ActDowShaIns+ 36) +#define ActRemFolDocCtr (ActDowShaIns+ 37) +#define ActCopDocCtr (ActDowShaIns+ 38) +#define ActPasDocCtr (ActDowShaIns+ 39) +#define ActRemTreDocCtr (ActDowShaIns+ 40) +#define ActFrmCreDocCtr (ActDowShaIns+ 41) +#define ActCreFolDocCtr (ActDowShaIns+ 42) +#define ActCreLnkDocCtr (ActDowShaIns+ 43) +#define ActRenFolDocCtr (ActDowShaIns+ 44) +#define ActRcvFilDocCtrDZ (ActDowShaIns+ 45) +#define ActRcvFilDocCtrCla (ActDowShaIns+ 46) +#define ActExpAdmDocCtr (ActDowShaIns+ 47) +#define ActConAdmDocCtr (ActDowShaIns+ 48) +#define ActZIPAdmDocCtr (ActDowShaIns+ 49) +#define ActShoDocCtr (ActDowShaIns+ 50) +#define ActHidDocCtr (ActDowShaIns+ 51) +#define ActReqDatAdmDocCtr (ActDowShaIns+ 52) +#define ActChgDatAdmDocCtr (ActDowShaIns+ 53) +#define ActDowAdmDocCtr (ActDowShaIns+ 54) -#define ActReqRemFilShaCtr (ActDowShaIns+ 54) -#define ActRemFilShaCtr (ActDowShaIns+ 55) -#define ActRemFolShaCtr (ActDowShaIns+ 56) -#define ActCopShaCtr (ActDowShaIns+ 57) -#define ActPasShaCtr (ActDowShaIns+ 58) -#define ActRemTreShaCtr (ActDowShaIns+ 59) -#define ActFrmCreShaCtr (ActDowShaIns+ 60) -#define ActCreFolShaCtr (ActDowShaIns+ 61) -#define ActCreLnkShaCtr (ActDowShaIns+ 62) -#define ActRenFolShaCtr (ActDowShaIns+ 63) -#define ActRcvFilShaCtrDZ (ActDowShaIns+ 64) -#define ActRcvFilShaCtrCla (ActDowShaIns+ 65) -#define ActExpShaCtr (ActDowShaIns+ 66) -#define ActConShaCtr (ActDowShaIns+ 67) -#define ActZIPShaCtr (ActDowShaIns+ 68) -#define ActReqDatShaCtr (ActDowShaIns+ 69) -#define ActChgDatShaCtr (ActDowShaIns+ 70) -#define ActDowShaCtr (ActDowShaIns+ 71) +#define ActReqRemFilShaCtr (ActDowShaIns+ 55) +#define ActRemFilShaCtr (ActDowShaIns+ 56) +#define ActRemFolShaCtr (ActDowShaIns+ 57) +#define ActCopShaCtr (ActDowShaIns+ 58) +#define ActPasShaCtr (ActDowShaIns+ 59) +#define ActRemTreShaCtr (ActDowShaIns+ 60) +#define ActFrmCreShaCtr (ActDowShaIns+ 61) +#define ActCreFolShaCtr (ActDowShaIns+ 62) +#define ActCreLnkShaCtr (ActDowShaIns+ 63) +#define ActRenFolShaCtr (ActDowShaIns+ 64) +#define ActRcvFilShaCtrDZ (ActDowShaIns+ 65) +#define ActRcvFilShaCtrCla (ActDowShaIns+ 66) +#define ActExpShaCtr (ActDowShaIns+ 67) +#define ActConShaCtr (ActDowShaIns+ 68) +#define ActZIPShaCtr (ActDowShaIns+ 69) +#define ActReqDatShaCtr (ActDowShaIns+ 70) +#define ActChgDatShaCtr (ActDowShaIns+ 71) +#define ActDowShaCtr (ActDowShaIns+ 72) /*****************************************************************************/ /********************************* Degree tab ********************************/ diff --git a/swad_centre.c b/swad_centre.c index af55f636..26e1e514 100644 --- a/swad_centre.c +++ b/swad_centre.c @@ -410,7 +410,7 @@ static void Ctr_Configuration (bool PrintView) The_ClassForm[Gbl.Prefs.Theme], Txt_Centre); if (!PrintView && - Gbl.Usrs.Me.LoggedRole >= Rol_CTR_ADM) // Only centre admins and system admins can edit centre full name + Gbl.Usrs.Me.LoggedRole >= Rol_INS_ADM) // Only institution admins and system admins can edit centre full name { Act_FormStart (ActRenCtrFulCfg); fprintf (Gbl.F.Out,"" "" - "%s:" - "" - "" - "%s" - "" - "", + "%s:" + "" + "", The_ClassForm[Gbl.Prefs.Theme], - Txt_Short_name, - Gbl.CurrentCtr.Ctr.ShortName); + Txt_Short_name); + if (!PrintView && + Gbl.Usrs.Me.LoggedRole >= Rol_INS_ADM) // Only institution admins and system admins can edit centre short name + { + Act_FormStart (ActRenCtrShoCfg); + fprintf (Gbl.F.Out,"", + Ctr_MAX_LENGTH_CENTRE_SHORT_NAME, + Gbl.CurrentCtr.Ctr.ShortName, + Gbl.Form.Id); + Act_FormEnd (); + } + else // I can not edit centre short name + fprintf (Gbl.F.Out,"%s",Gbl.CurrentCtr.Ctr.ShortName); + fprintf (Gbl.F.Out,"" + ""); /***** Centre WWW *****/ if (Gbl.CurrentCtr.Ctr.WWW[0]) @@ -1765,6 +1778,11 @@ void Ctr_RenameCentreShort (void) Ctr_RenameCentre (&Gbl.Ctrs.EditingCtr,Cns_SHORT_NAME); } +void Ctr_RenameCentreShortInConfig (void) + { + Ctr_RenameCentre (&Gbl.CurrentCtr.Ctr,Cns_SHORT_NAME); + } + /*****************************************************************************/ /********************* Change the full name of a centre **********************/ /*****************************************************************************/ diff --git a/swad_centre.h b/swad_centre.h index 75e13e26..4d922335 100644 --- a/swad_centre.h +++ b/swad_centre.h @@ -109,6 +109,7 @@ void Ctr_ChangeCtrInsInConfig (void); void Ctr_ContEditAfterChgCtrInConfig (void); void Ctr_ChangeCentrePlace (void); void Ctr_RenameCentreShort (void); +void Ctr_RenameCentreShortInConfig (void); void Ctr_RenameCentreFull (void); void Ctr_RenameCentreFullInConfig (void); void Ctr_ChangeCtrWWW (void); diff --git a/swad_changelog.h b/swad_changelog.h index e32db6e9..9380294c 100644 --- a/swad_changelog.h +++ b/swad_changelog.h @@ -150,13 +150,17 @@ /****************************** Public constants *****************************/ /*****************************************************************************/ -#define Log_PLATFORM_VERSION "SWAD 16.34 (2016-10-22)" +#define Log_PLATFORM_VERSION "SWAD 16.35 (2016-10-23)" #define CSS_FILE "swad16.32.1.css" #define JS_FILE "swad15.238.1.js" // 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 /* + Version 16.35: Oct 23, 2016 New form in centre configuration to change short name. (205248 lines) + 1 change necessary in database: +INSERT INTO actions (ActCod,Language,Obsolete,Txt) VALUES ('1595','es','N','Cambiar nombre breve centro'); + Version 16.34: Oct 22, 2016 New form in centre configuration to change full name. (205223 lines) 1 change necessary in database: INSERT INTO actions (ActCod,Language,Obsolete,Txt) VALUES ('1594','es','N','Cambiar nombre completo centro');