Version19.112.3

This commit is contained in:
Antonio Cañas Vargas 2020-01-04 23:40:21 +01:00
parent 46ced958e5
commit f93a1da346
5 changed files with 57 additions and 97 deletions

View File

@ -94,55 +94,7 @@ extern struct Globals Gbl;
/************************* Private global variables **************************/
/*****************************************************************************/
/*
Files:
517. ActSeeAdmDocIns Documents zone of the institution (see or admin)
518. ActAdmShaIns Admin the shared files zone of the institution
519. ActSeeAdmDocCtr Documents zone of the centre (see or admin)
520. ActAdmShaCtr Admin the shared files zone of the centre
521. ActSeeAdmDocDeg Documents zone of the degree (see or admin)
522. ActAdmShaDeg Admin the shared files zone of the degree
523. ActSeeAdmDocCrsGrp Documents zone of the course (see or admin)
524. ActAdmTchCrsGrp Request the administration of the files of the teachers' zone of the course or of a group
525. ActAdmShaCrsGrp Request the administration of the files of the shared zone of the course or of a group
526. ActAdmAsgWrkUsr One user sends works of the course
527. ActReqAsgWrkCrs A teacher requests edition of works sent to the course
528. ActSeeAdmMrk Marks zone (see or admin)
529. ActAdmBrf Show the briefcase of private archives
530. ActChgToSeeDocIns Change to see institution documents
531. ActSeeDocIns See the files of the documents zone of the institution
532. ActExpSeeDocIns Expand a folder in institution documents
533. ActConSeeDocIns Contract a folder in institution documents
534. ActZIPSeeDocIns Compress a folder in institution documents
535. ActReqDatSeeDocIns Ask for metadata of a file of the documents zone of the institution
536. ActDowSeeDocIns Download a file in documents zone of the institution
537. ActChgToAdmDocIns Change to administrate institution documents
538. ActAdmDocIns Admin the files of the documents zone of the institution
539. ActReqRemFilDocIns Request removal of a file in the documents zone of the institution
540. ActRemFilDocIns Remove a file in the documents zone of the institution
541. ActRemFolDocIns Remove a folder empty the documents zone of the institution
542. ActCopDocIns Set source of copy in the documents zone of the institution
543. ActPasDocIns Paste a folder or file in the documents zone of the institution
544. ActRemTreDocIns Remove a folder no empty in the documents zone of the institution
545. ActFrmCreDocIns Form to crear a folder or file in the documents zone of the institution
546. ActCreFolDocIns Create a new folder in the documents zone of the institution
547. ActCreLnkDocIns Create a new link in the documents zone of the institution
548. ActRenFolDocIns Rename a folder in the documents zone of the institution
549. ActRcvFilDocInsDZ Receive a file in the documents zone of the institution using Dropzone.js
550. ActRcvFilDocInsCla Receive a file in the documents zone of the institution using the classic way
551. ActExpAdmDocIns Expand a folder when administrating the documents zone of the institution
552. ActConAdmDocIns Contract a folder when administrating the documents zone of the institution
553. ActZIPAdmDocIns Compress a folder when administrating the documents zone of the institution
554. ActShoDocIns Show hidden folder or file of the documents zone of the institution
555. ActHidDocIns Hide folder or file of the documents zone of the institution
556. ActReqDatAdmDocIns Ask for metadata of a file of the documents zone of the institution
557. ActChgDatAdmDocIns Change metadata of a file of the documents zone of the institution
558. ActDowAdmDocIns Download a file of the documents zone of the institution
559. ActReqRemFilShaIns Request removal of a shared file of the institution
560. ActRemFilShaIns Remove a shared file of the institution
561. ActRemFolShaIns Remove an empty shared folder of the institution

View File

@ -492,14 +492,17 @@ enscript -2 --landscape --color --file-align=2 --highlight --line-numbers -o - *
En OpenSWAD:
ps2pdf source.ps destination.pdf
*/
#define Log_PLATFORM_VERSION "SWAD 19.112.1 (2020-01-03)"
#define Log_PLATFORM_VERSION "SWAD 19.112.3 (2020-01-04)"
#define CSS_FILE "swad19.112.css"
#define JS_FILE "swad19.91.1.js"
/*
// TODO: Hacer un nuevo rol en los TFG: tutor externo (profesor de áreas no vinculadas con el centro, profesionales de empresas, etc.)
// TODO: Impedir la creación y edición de proyectos si no son editables.
// TODO: No se puede entrar con DNI '1' suponiendo que no tenga password ¿por qué?
// TODO: Mapas más estrechos en móvil
Version 19.112.3: Jan 04, 2020 Fixed bug in hierarchy. (278357 lines)
Version 19.112.2: Jan 04, 2020 Changing action descriptions from database to swad-core. Not finished. (278351 lines)
Version 19.112.1: Jan 03, 2020 Code refactoring in maps. (278391 lines)
Version 19.112: Jan 03, 2020 Map in country information. (278380 lines)
Version 19.111.3: Jan 03, 2020 Code refactoring in maps. (278251 lines)

View File

@ -525,7 +525,8 @@ void Hie_InitHierarchy (void)
/***** If course code is available, get course data *****/
if (Gbl.Hierarchy.Crs.CrsCod > 0)
{
if (Crs_GetDataOfCourseByCod (&Gbl.Hierarchy.Crs,Crs_GET_BASIC_DATA)) // Course found
if (Crs_GetDataOfCourseByCod (&Gbl.Hierarchy.Crs, // Course found
Crs_GET_EXTRA_DATA)) // Get extra data because they may be needed later
Gbl.Hierarchy.Deg.DegCod = Gbl.Hierarchy.Crs.DegCod;
else
Hie_ResetHierarchy ();
@ -534,7 +535,8 @@ void Hie_InitHierarchy (void)
/***** If degree code is available, get degree data *****/
if (Gbl.Hierarchy.Deg.DegCod > 0)
{
if (Deg_GetDataOfDegreeByCod (&Gbl.Hierarchy.Deg,Deg_GET_BASIC_DATA)) // Degree found
if (Deg_GetDataOfDegreeByCod (&Gbl.Hierarchy.Deg, // Degree found
Deg_GET_EXTRA_DATA)) // Get extra data because they may be needed later
{
Gbl.Hierarchy.Ctr.CtrCod = Gbl.Hierarchy.Deg.CtrCod;
Gbl.Hierarchy.Ins.InsCod = Deg_GetInsCodOfDegreeByCod (Gbl.Hierarchy.Deg.DegCod);
@ -546,7 +548,8 @@ void Hie_InitHierarchy (void)
/***** If centre code is available, get centre data *****/
if (Gbl.Hierarchy.Ctr.CtrCod > 0)
{
if (Ctr_GetDataOfCentreByCod (&Gbl.Hierarchy.Ctr,Ctr_GET_BASIC_DATA)) // Centre found
if (Ctr_GetDataOfCentreByCod (&Gbl.Hierarchy.Ctr, // Degree found
Ctr_GET_EXTRA_DATA)) // Get extra data because they may be needed later
Gbl.Hierarchy.Ins.InsCod = Gbl.Hierarchy.Ctr.InsCod;
else
Hie_ResetHierarchy ();
@ -555,7 +558,8 @@ void Hie_InitHierarchy (void)
/***** If institution code is available, get institution data *****/
if (Gbl.Hierarchy.Ins.InsCod > 0)
{
if (Ins_GetDataOfInstitutionByCod (&Gbl.Hierarchy.Ins,Ins_GET_BASIC_DATA)) // Institution found
if (Ins_GetDataOfInstitutionByCod (&Gbl.Hierarchy.Ins, // Institution found
Ins_GET_EXTRA_DATA)) // Get extra data because they may be needed later
Gbl.Hierarchy.Cty.CtyCod = Gbl.Hierarchy.Ins.CtyCod;
else
Hie_ResetHierarchy ();

View File

@ -613,7 +613,7 @@ void Mrk_ShowMyMarks (void)
/* Select a random student from the course */
if (Gbl.Crs.Grps.GrpCod > 0) // Group zone
{
if (Grp_CountNumUsrsInGrp (Rol_STD,Gbl.Crs.Grps.GrpCod))
if (Grp_CountNumUsrsInGrp (Rol_STD,Gbl.Crs.Grps.GrpCod)) // If there are students in this group
{
Gbl.Usrs.Other.UsrDat.UsrCod = Usr_GetRamdomStdFromGrp (Gbl.Crs.Grps.GrpCod);
UsrDat = &Gbl.Usrs.Other.UsrDat;
@ -623,7 +623,8 @@ void Mrk_ShowMyMarks (void)
}
else // Course zone
{
if (Gbl.Hierarchy.Crs.NumUsrs[Rol_STD]) // If there are students in this course
// if (Usr_GetNumUsrsInCrs (Rol_STD,Gbl.Hierarchy.Crs.CrsCod)) // If there are students in this course
if (Gbl.Hierarchy.Crs.NumUsrs[Rol_STD])
{
Gbl.Usrs.Other.UsrDat.UsrCod = Usr_GetRamdomStdFromCrs (Gbl.Hierarchy.Crs.CrsCod);
UsrDat = &Gbl.Usrs.Other.UsrDat;

View File

@ -10904,7 +10904,7 @@ const char *Txt_Actions[Act_NUM_ACTIONS] =
#elif L==2 // de
"" // Need Übersetzung
#elif L==3 // en
""
"Documents zone of the institution (see or admin)"
#elif L==4 // es
""
#elif L==5 // fr
@ -10925,7 +10925,7 @@ const char *Txt_Actions[Act_NUM_ACTIONS] =
#elif L==2 // de
"" // Need Übersetzung
#elif L==3 // en
""
"Admin the shared files zone of the institution"
#elif L==4 // es
""
#elif L==5 // fr
@ -10946,7 +10946,7 @@ const char *Txt_Actions[Act_NUM_ACTIONS] =
#elif L==2 // de
"" // Need Übersetzung
#elif L==3 // en
""
"Documents zone of the centre (see or admin)"
#elif L==4 // es
""
#elif L==5 // fr
@ -10967,7 +10967,7 @@ const char *Txt_Actions[Act_NUM_ACTIONS] =
#elif L==2 // de
"" // Need Übersetzung
#elif L==3 // en
""
"Admin the shared files zone of the centre"
#elif L==4 // es
""
#elif L==5 // fr
@ -10988,7 +10988,7 @@ const char *Txt_Actions[Act_NUM_ACTIONS] =
#elif L==2 // de
"" // Need Übersetzung
#elif L==3 // en
""
"Documents zone of the degree (see or admin)"
#elif L==4 // es
""
#elif L==5 // fr
@ -11009,7 +11009,7 @@ const char *Txt_Actions[Act_NUM_ACTIONS] =
#elif L==2 // de
"" // Need Übersetzung
#elif L==3 // en
""
"Admin the shared files zone of the degree"
#elif L==4 // es
""
#elif L==5 // fr
@ -11030,7 +11030,7 @@ const char *Txt_Actions[Act_NUM_ACTIONS] =
#elif L==2 // de
"" // Need Übersetzung
#elif L==3 // en
""
"Documents zone of the course (see or admin)"
#elif L==4 // es
""
#elif L==5 // fr
@ -11051,7 +11051,7 @@ const char *Txt_Actions[Act_NUM_ACTIONS] =
#elif L==2 // de
"" // Need Übersetzung
#elif L==3 // en
""
"Request the administration of the files of the teachers' zone of the course or of a group"
#elif L==4 // es
""
#elif L==5 // fr
@ -11072,7 +11072,7 @@ const char *Txt_Actions[Act_NUM_ACTIONS] =
#elif L==2 // de
"" // Need Übersetzung
#elif L==3 // en
""
"Request the administration of the files of the shared zone of the course or of a group"
#elif L==4 // es
""
#elif L==5 // fr
@ -11093,7 +11093,7 @@ const char *Txt_Actions[Act_NUM_ACTIONS] =
#elif L==2 // de
"" // Need Übersetzung
#elif L==3 // en
""
"One user sends works of the course"
#elif L==4 // es
""
#elif L==5 // fr
@ -11114,7 +11114,7 @@ const char *Txt_Actions[Act_NUM_ACTIONS] =
#elif L==2 // de
"" // Need Übersetzung
#elif L==3 // en
""
"A teacher requests edition of works sent to the course"
#elif L==4 // es
""
#elif L==5 // fr
@ -11135,7 +11135,7 @@ const char *Txt_Actions[Act_NUM_ACTIONS] =
#elif L==2 // de
"" // Need Übersetzung
#elif L==3 // en
""
"Marks zone (see or admin)"
#elif L==4 // es
""
#elif L==5 // fr
@ -11156,7 +11156,7 @@ const char *Txt_Actions[Act_NUM_ACTIONS] =
#elif L==2 // de
"" // Need Übersetzung
#elif L==3 // en
""
"Show the briefcase of private archives"
#elif L==4 // es
""
#elif L==5 // fr
@ -11177,7 +11177,7 @@ const char *Txt_Actions[Act_NUM_ACTIONS] =
#elif L==2 // de
"" // Need Übersetzung
#elif L==3 // en
""
"Change to see institution documents"
#elif L==4 // es
""
#elif L==5 // fr
@ -11198,7 +11198,7 @@ const char *Txt_Actions[Act_NUM_ACTIONS] =
#elif L==2 // de
"" // Need Übersetzung
#elif L==3 // en
""
"See the files of the documents zone of the institution"
#elif L==4 // es
""
#elif L==5 // fr
@ -11219,7 +11219,7 @@ const char *Txt_Actions[Act_NUM_ACTIONS] =
#elif L==2 // de
"" // Need Übersetzung
#elif L==3 // en
""
"Expand a folder in institution documents"
#elif L==4 // es
""
#elif L==5 // fr
@ -11240,7 +11240,7 @@ const char *Txt_Actions[Act_NUM_ACTIONS] =
#elif L==2 // de
"" // Need Übersetzung
#elif L==3 // en
""
"Contract a folder in institution documents"
#elif L==4 // es
""
#elif L==5 // fr
@ -11261,7 +11261,7 @@ const char *Txt_Actions[Act_NUM_ACTIONS] =
#elif L==2 // de
"" // Need Übersetzung
#elif L==3 // en
""
"Compress a folder in institution documents"
#elif L==4 // es
""
#elif L==5 // fr
@ -11282,7 +11282,7 @@ const char *Txt_Actions[Act_NUM_ACTIONS] =
#elif L==2 // de
"" // Need Übersetzung
#elif L==3 // en
""
"Ask for metadata of a file of the documents zone of the institution"
#elif L==4 // es
""
#elif L==5 // fr
@ -11303,7 +11303,7 @@ const char *Txt_Actions[Act_NUM_ACTIONS] =
#elif L==2 // de
"" // Need Übersetzung
#elif L==3 // en
""
"Download a file in documents zone of the institution"
#elif L==4 // es
""
#elif L==5 // fr
@ -11324,7 +11324,7 @@ const char *Txt_Actions[Act_NUM_ACTIONS] =
#elif L==2 // de
"" // Need Übersetzung
#elif L==3 // en
""
"Change to administrate institution documents"
#elif L==4 // es
""
#elif L==5 // fr
@ -11345,7 +11345,7 @@ const char *Txt_Actions[Act_NUM_ACTIONS] =
#elif L==2 // de
"" // Need Übersetzung
#elif L==3 // en
""
"Admin the files of the documents zone of the institution"
#elif L==4 // es
""
#elif L==5 // fr
@ -11366,7 +11366,7 @@ const char *Txt_Actions[Act_NUM_ACTIONS] =
#elif L==2 // de
"" // Need Übersetzung
#elif L==3 // en
""
"Request removal of a file in the documents zone of the institution"
#elif L==4 // es
""
#elif L==5 // fr
@ -11387,7 +11387,7 @@ const char *Txt_Actions[Act_NUM_ACTIONS] =
#elif L==2 // de
"" // Need Übersetzung
#elif L==3 // en
""
"Remove a file in the documents zone of the institution"
#elif L==4 // es
""
#elif L==5 // fr
@ -11408,7 +11408,7 @@ const char *Txt_Actions[Act_NUM_ACTIONS] =
#elif L==2 // de
"" // Need Übersetzung
#elif L==3 // en
""
"Remove a folder empty the documents zone of the institution"
#elif L==4 // es
""
#elif L==5 // fr
@ -11429,7 +11429,7 @@ const char *Txt_Actions[Act_NUM_ACTIONS] =
#elif L==2 // de
"" // Need Übersetzung
#elif L==3 // en
""
"Set source of copy in the documents zone of the institution"
#elif L==4 // es
""
#elif L==5 // fr
@ -11450,7 +11450,7 @@ const char *Txt_Actions[Act_NUM_ACTIONS] =
#elif L==2 // de
"" // Need Übersetzung
#elif L==3 // en
""
"Paste a folder or file in the documents zone of the institution"
#elif L==4 // es
""
#elif L==5 // fr
@ -11471,7 +11471,7 @@ const char *Txt_Actions[Act_NUM_ACTIONS] =
#elif L==2 // de
"" // Need Übersetzung
#elif L==3 // en
""
"Remove a folder no empty in the documents zone of the institution"
#elif L==4 // es
""
#elif L==5 // fr
@ -11492,7 +11492,7 @@ const char *Txt_Actions[Act_NUM_ACTIONS] =
#elif L==2 // de
"" // Need Übersetzung
#elif L==3 // en
""
"Form to crear a folder or file in the documents zone of the institution"
#elif L==4 // es
""
#elif L==5 // fr
@ -11513,7 +11513,7 @@ const char *Txt_Actions[Act_NUM_ACTIONS] =
#elif L==2 // de
"" // Need Übersetzung
#elif L==3 // en
""
"Create a new folder in the documents zone of the institution"
#elif L==4 // es
""
#elif L==5 // fr
@ -11534,7 +11534,7 @@ const char *Txt_Actions[Act_NUM_ACTIONS] =
#elif L==2 // de
"" // Need Übersetzung
#elif L==3 // en
""
"Create a new link in the documents zone of the institution"
#elif L==4 // es
""
#elif L==5 // fr
@ -11555,7 +11555,7 @@ const char *Txt_Actions[Act_NUM_ACTIONS] =
#elif L==2 // de
"" // Need Übersetzung
#elif L==3 // en
""
"Rename a folder in the documents zone of the institution"
#elif L==4 // es
""
#elif L==5 // fr
@ -11576,7 +11576,7 @@ const char *Txt_Actions[Act_NUM_ACTIONS] =
#elif L==2 // de
"" // Need Übersetzung
#elif L==3 // en
""
"Receive a file in the documents zone of the institution using Dropzone.js"
#elif L==4 // es
""
#elif L==5 // fr
@ -11597,7 +11597,7 @@ const char *Txt_Actions[Act_NUM_ACTIONS] =
#elif L==2 // de
"" // Need Übersetzung
#elif L==3 // en
""
"Receive a file in the documents zone of the institution using the classic way"
#elif L==4 // es
""
#elif L==5 // fr
@ -11618,7 +11618,7 @@ const char *Txt_Actions[Act_NUM_ACTIONS] =
#elif L==2 // de
"" // Need Übersetzung
#elif L==3 // en
""
"Expand a folder when administrating the documents zone of the institution"
#elif L==4 // es
""
#elif L==5 // fr
@ -11639,7 +11639,7 @@ const char *Txt_Actions[Act_NUM_ACTIONS] =
#elif L==2 // de
"" // Need Übersetzung
#elif L==3 // en
""
"Contract a folder when administrating the documents zone of the institution"
#elif L==4 // es
""
#elif L==5 // fr
@ -11660,7 +11660,7 @@ const char *Txt_Actions[Act_NUM_ACTIONS] =
#elif L==2 // de
"" // Need Übersetzung
#elif L==3 // en
""
"Compress a folder when administrating the documents zone of the institution"
#elif L==4 // es
""
#elif L==5 // fr
@ -11681,7 +11681,7 @@ const char *Txt_Actions[Act_NUM_ACTIONS] =
#elif L==2 // de
"" // Need Übersetzung
#elif L==3 // en
""
"Show hidden folder or file of the documents zone of the institution"
#elif L==4 // es
""
#elif L==5 // fr
@ -11702,7 +11702,7 @@ const char *Txt_Actions[Act_NUM_ACTIONS] =
#elif L==2 // de
"" // Need Übersetzung
#elif L==3 // en
""
"Hide folder or file of the documents zone of the institution"
#elif L==4 // es
""
#elif L==5 // fr
@ -11723,7 +11723,7 @@ const char *Txt_Actions[Act_NUM_ACTIONS] =
#elif L==2 // de
"" // Need Übersetzung
#elif L==3 // en
""
"Ask for metadata of a file of the documents zone of the institution"
#elif L==4 // es
""
#elif L==5 // fr
@ -11744,7 +11744,7 @@ const char *Txt_Actions[Act_NUM_ACTIONS] =
#elif L==2 // de
"" // Need Übersetzung
#elif L==3 // en
""
"Change metadata of a file of the documents zone of the institution"
#elif L==4 // es
""
#elif L==5 // fr
@ -11765,7 +11765,7 @@ const char *Txt_Actions[Act_NUM_ACTIONS] =
#elif L==2 // de
"" // Need Übersetzung
#elif L==3 // en
""
"Download a file of the documents zone of the institution"
#elif L==4 // es
""
#elif L==5 // fr