mirror of https://github.com/acanas/swad-core.git
Version 18.27.8
This commit is contained in:
parent
bc4a63ca02
commit
267af87d3c
|
@ -364,10 +364,11 @@ En OpenSWAD:
|
|||
ps2pdf source.ps destination.pdf
|
||||
*/
|
||||
|
||||
#define Log_PLATFORM_VERSION "SWAD 18.27.7 (2019-01-04)"
|
||||
#define Log_PLATFORM_VERSION "SWAD 18.27.8 (2019-01-05)"
|
||||
#define CSS_FILE "swad18.22.css"
|
||||
#define JS_FILE "swad17.17.1.js"
|
||||
/*
|
||||
Version 18.27.8: Jan 05, 2019 Get classroom short name from database in listing of groups. (239130 lines)
|
||||
Version 18.27.7: Jan 04, 2019 Show classroom in listing of groups. (239121 lines)
|
||||
Version 18.27.6: Jan 04, 2019 Selection of classroom in form to edit group. (239099 lines)
|
||||
Version 18.27.5: Jan 04, 2019 Selection of classroom in form to create group. (238964 lines)
|
||||
|
|
|
@ -12052,7 +12052,7 @@ void Brw_RemoveZonesOfGroupsOfType (long GrpTypCod)
|
|||
MYSQL_ROW row;
|
||||
unsigned long NumRow;
|
||||
unsigned long NumRows;
|
||||
struct GroupData GrpDat;
|
||||
long GrpCod;
|
||||
|
||||
/***** Query database *****/
|
||||
if ((NumRows = Grp_GetGrpsOfType (GrpTypCod,&mysql_res))) // If there exists groups...
|
||||
|
@ -12064,14 +12064,11 @@ void Brw_RemoveZonesOfGroupsOfType (long GrpTypCod)
|
|||
row = mysql_fetch_row (mysql_res);
|
||||
|
||||
/* Group code is in row[0] */
|
||||
if (sscanf (row[0],"%ld",&(GrpDat.GrpCod)) != 1)
|
||||
if (sscanf (row[0],"%ld",&GrpCod) != 1)
|
||||
Lay_ShowErrorAndExit ("Wrong group code.");
|
||||
|
||||
/* Get name and type of the group from database */
|
||||
Grp_GetDataOfGroupByCod (&GrpDat);
|
||||
|
||||
/* Remove file zones of this group */
|
||||
Brw_RemoveGrpZones (Gbl.CurrentCrs.Crs.CrsCod,GrpDat.GrpCod);
|
||||
Brw_RemoveGrpZones (Gbl.CurrentCrs.Crs.CrsCod,GrpCod);
|
||||
}
|
||||
|
||||
/***** Free structure that stores the query result *****/
|
||||
|
|
45
swad_group.c
45
swad_group.c
|
@ -2490,7 +2490,7 @@ static void Grp_WriteRowGrp (struct Group *Grp,bool Highlight)
|
|||
Grp->GrpName);
|
||||
|
||||
/***** Classroom *****/
|
||||
fprintf (Gbl.F.Out,"<td class=\"DAT LEFT_MIDDLE");
|
||||
fprintf (Gbl.F.Out,"<td class=\"DAT CENTER_MIDDLE");
|
||||
if (Highlight)
|
||||
fprintf (Gbl.F.Out," LIGHT_BLUE");
|
||||
fprintf (Gbl.F.Out,"\">"
|
||||
|
@ -3016,23 +3016,31 @@ void Grp_GetListGrpTypesAndGrpsInThisCrs (Grp_WhichGroupTypes_t WhichGroupTypes)
|
|||
/* Get classroom code (row[2]) */
|
||||
Grp->Classroom.ClaCod = Str_ConvertStrCodToLongCod (row[2]);
|
||||
|
||||
/* Get classroom short name (row[3]) */
|
||||
if (row[3])
|
||||
Str_Copy (Grp->Classroom.ShrtName,row[3],
|
||||
Cla_MAX_BYTES_SHRT_NAME);
|
||||
else
|
||||
Grp->Classroom.ShrtName[0] = '\0';
|
||||
|
||||
/* Get number of current users in group */
|
||||
for (Role = Rol_TCH;
|
||||
Role >= Rol_STD;
|
||||
Role--)
|
||||
Grp->NumUsrs[Role] = Grp_CountNumUsrsInGrp (Role,Grp->GrpCod);
|
||||
|
||||
/* Get maximum number of students in group (row[3]) */
|
||||
Grp->MaxStudents = Grp_ConvertToNumMaxStdsGrp (row[3]);
|
||||
/* Get maximum number of students in group (row[4]) */
|
||||
Grp->MaxStudents = Grp_ConvertToNumMaxStdsGrp (row[4]);
|
||||
|
||||
/* Get whether group is open ('Y') or closed ('N') (row[4]) */
|
||||
Grp->Open = (row[4][0] == 'Y');
|
||||
/* Get whether group is open ('Y') or closed ('N') (row[5]) */
|
||||
Grp->Open = (row[5][0] == 'Y');
|
||||
|
||||
/* Get whether group have file zones ('Y') or not ('N') (row[5]) */
|
||||
Grp->FileZones = (row[5][0] == 'Y');
|
||||
/* Get whether group have file zones ('Y') or not ('N') (row[6]) */
|
||||
Grp->FileZones = (row[6][0] == 'Y');
|
||||
}
|
||||
}
|
||||
else // Error: groups should be found, but really they haven't be found. This never should happen.
|
||||
else // Error: groups should be found, but really they haven't be found.
|
||||
// This never should happen.
|
||||
GrpTyp->NumGrps = 0;
|
||||
|
||||
/***** Free structure that stores the query result *****/
|
||||
|
@ -3111,16 +3119,19 @@ static unsigned Grp_CountNumGrpsInThisCrsOfType (long GrpTypCod)
|
|||
unsigned long Grp_GetGrpsOfType (long GrpTypCod,MYSQL_RES **mysql_res)
|
||||
{
|
||||
/***** Get groups of a type from database *****/
|
||||
// Don't use INNER JOIN because there are groups without assigned classroom
|
||||
return DB_QuerySELECT (mysql_res,"can not get groups of a type",
|
||||
"SELECT GrpCod,"
|
||||
"GrpName,"
|
||||
"ClaCod,"
|
||||
"MaxStudents,"
|
||||
"Open,"
|
||||
"FileZones"
|
||||
" FROM crs_grp"
|
||||
" WHERE GrpTypCod=%ld"
|
||||
" ORDER BY GrpName",
|
||||
"SELECT crs_grp.GrpCod,"
|
||||
"crs_grp.GrpName,"
|
||||
"crs_grp.ClaCod,"
|
||||
"classrooms.ShortName,"
|
||||
"crs_grp.MaxStudents,"
|
||||
"crs_grp.Open,"
|
||||
"crs_grp.FileZones"
|
||||
" FROM crs_grp LEFT JOIN classrooms"
|
||||
" ON crs_grp.ClaCod=classrooms.ClaCod"
|
||||
" WHERE crs_grp.GrpTypCod=%ld"
|
||||
" ORDER BY crs_grp.GrpName",
|
||||
GrpTypCod);
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue