Version 22.66.2: Mar 03, 2023 Fixed bugs in figures.

This commit is contained in:
acanas 2023-03-03 00:28:27 +01:00
parent 4952598ea7
commit 6439db55e4
25 changed files with 296 additions and 293 deletions

View File

@ -1486,7 +1486,7 @@ unsigned Brw_DB_GetNumberOfPublicFiles (MYSQL_RES **mysql_res,Brw_License_t Lice
"COUNT(*)" // row[1] "COUNT(*)" // row[1]
" FROM brw_files" " FROM brw_files"
" WHERE License=%u" " WHERE License=%u"
" GROUP BY Public", " GROUP BY Public",
(unsigned) License); (unsigned) License);
case HieLvl_CTY: case HieLvl_CTY:
return (unsigned) return (unsigned)
@ -1505,7 +1505,7 @@ unsigned Brw_DB_GetNumberOfPublicFiles (MYSQL_RES **mysql_res,Brw_License_t Lice
" AND crs_courses.CrsCod=brw_files.Cod" " AND crs_courses.CrsCod=brw_files.Cod"
" AND brw_files.FileBrowser IN (%u,%u)" " AND brw_files.FileBrowser IN (%u,%u)"
" AND brw_files.License=%u" " AND brw_files.License=%u"
" GROUP BY brw_files.Public", " GROUP BY brw_files.Public",
Gbl.Hierarchy.Cty.CtyCod, Gbl.Hierarchy.Cty.CtyCod,
(unsigned) Brw_ADMI_DOC_CRS, (unsigned) Brw_ADMI_DOC_CRS,
(unsigned) Brw_ADMI_SHR_CRS, (unsigned) Brw_ADMI_SHR_CRS,
@ -1525,7 +1525,7 @@ unsigned Brw_DB_GetNumberOfPublicFiles (MYSQL_RES **mysql_res,Brw_License_t Lice
" AND crs_courses.CrsCod=brw_files.Cod" " AND crs_courses.CrsCod=brw_files.Cod"
" AND brw_files.FileBrowser IN (%u,%u)" " AND brw_files.FileBrowser IN (%u,%u)"
" AND brw_files.License=%u" " AND brw_files.License=%u"
" GROUP BY brw_files.Public", " GROUP BY brw_files.Public",
Gbl.Hierarchy.Ins.InsCod, Gbl.Hierarchy.Ins.InsCod,
(unsigned) Brw_ADMI_DOC_CRS, (unsigned) Brw_ADMI_DOC_CRS,
(unsigned) Brw_ADMI_SHR_CRS, (unsigned) Brw_ADMI_SHR_CRS,
@ -1543,7 +1543,7 @@ unsigned Brw_DB_GetNumberOfPublicFiles (MYSQL_RES **mysql_res,Brw_License_t Lice
" AND crs_courses.CrsCod=brw_files.Cod" " AND crs_courses.CrsCod=brw_files.Cod"
" AND brw_files.FileBrowser IN (%u,%u)" " AND brw_files.FileBrowser IN (%u,%u)"
" AND brw_files.License=%u" " AND brw_files.License=%u"
" GROUP BY brw_files.Public", " GROUP BY brw_files.Public",
Gbl.Hierarchy.Ctr.CtrCod, Gbl.Hierarchy.Ctr.CtrCod,
(unsigned) Brw_ADMI_DOC_CRS, (unsigned) Brw_ADMI_DOC_CRS,
(unsigned) Brw_ADMI_SHR_CRS, (unsigned) Brw_ADMI_SHR_CRS,
@ -1559,7 +1559,7 @@ unsigned Brw_DB_GetNumberOfPublicFiles (MYSQL_RES **mysql_res,Brw_License_t Lice
" AND crs_courses.CrsCod=brw_files.Cod" " AND crs_courses.CrsCod=brw_files.Cod"
" AND brw_files.FileBrowser IN (%u,%u)" " AND brw_files.FileBrowser IN (%u,%u)"
" AND brw_files.License=%u" " AND brw_files.License=%u"
" GROUP BY brw_files.Public", " GROUP BY brw_files.Public",
Gbl.Hierarchy.Deg.DegCod, Gbl.Hierarchy.Deg.DegCod,
(unsigned) Brw_ADMI_DOC_CRS, (unsigned) Brw_ADMI_DOC_CRS,
(unsigned) Brw_ADMI_SHR_CRS, (unsigned) Brw_ADMI_SHR_CRS,
@ -1573,7 +1573,7 @@ unsigned Brw_DB_GetNumberOfPublicFiles (MYSQL_RES **mysql_res,Brw_License_t Lice
" WHERE Cod=%ld" " WHERE Cod=%ld"
" AND FileBrowser IN (%u,%u)" " AND FileBrowser IN (%u,%u)"
" AND License=%u" " AND License=%u"
" GROUP BY Public", " GROUP BY Public",
Gbl.Hierarchy.Crs.CrsCod, Gbl.Hierarchy.Crs.CrsCod,
(unsigned) Brw_ADMI_DOC_CRS, (unsigned) Brw_ADMI_DOC_CRS,
(unsigned) Brw_ADMI_SHR_CRS, (unsigned) Brw_ADMI_SHR_CRS,

View File

@ -142,7 +142,7 @@ unsigned Ctr_DB_GetListOfCtrsFullWithNumUsrs (MYSQL_RES **mysql_res,
" FROM ctr_centers,usr_data" " FROM ctr_centers,usr_data"
" WHERE ctr_centers.InsCod=%ld" " WHERE ctr_centers.InsCod=%ld"
" AND ctr_centers.CtrCod=usr_data.CtrCod" " AND ctr_centers.CtrCod=usr_data.CtrCod"
" GROUP BY ctr_centers.CtrCod)" " GROUP BY ctr_centers.CtrCod)"
" UNION " " UNION "
"(SELECT CtrCod," // row[ 0] "(SELECT CtrCod," // row[ 0]
"InsCod," // row[ 1] "InsCod," // row[ 1]
@ -162,7 +162,7 @@ unsigned Ctr_DB_GetListOfCtrsFullWithNumUsrs (MYSQL_RES **mysql_res,
" (SELECT DISTINCT " " (SELECT DISTINCT "
"CtrCod" "CtrCod"
" FROM usr_data))" " FROM usr_data))"
" ORDER BY %s", " ORDER BY %s",
InsCod, InsCod,
InsCod, InsCod,
OrderBySubQuery[SelectedOrder]); OrderBySubQuery[SelectedOrder]);
@ -188,8 +188,8 @@ unsigned Ctr_DB_GetCtrsWithPendingDegs (MYSQL_RES **mysql_res)
" AND deg_degrees.CtrCod=ctr_admin.CtrCod" " AND deg_degrees.CtrCod=ctr_admin.CtrCod"
" AND ctr_admin.UsrCod=%ld" " AND ctr_admin.UsrCod=%ld"
" AND deg_degrees.CtrCod=ctr_centers.CtrCod" " AND deg_degrees.CtrCod=ctr_centers.CtrCod"
" GROUP BY deg_degrees.CtrCod" " GROUP BY deg_degrees.CtrCod"
" ORDER BY ctr_centers.ShortName", " ORDER BY ctr_centers.ShortName",
(unsigned) Hie_STATUS_BIT_PENDING, (unsigned) Hie_STATUS_BIT_PENDING,
Gbl.Usrs.Me.UsrDat.UsrCod); Gbl.Usrs.Me.UsrDat.UsrCod);
case Rol_SYS_ADM: case Rol_SYS_ADM:
@ -201,8 +201,8 @@ unsigned Ctr_DB_GetCtrsWithPendingDegs (MYSQL_RES **mysql_res)
"ctr_centers" "ctr_centers"
" WHERE (deg_degrees.Status & %u)<>0" " WHERE (deg_degrees.Status & %u)<>0"
" AND deg_degrees.CtrCod=ctr_centers.CtrCod" " AND deg_degrees.CtrCod=ctr_centers.CtrCod"
" GROUP BY deg_degrees.CtrCod" " GROUP BY deg_degrees.CtrCod"
" ORDER BY ctr_centers.ShortName", " ORDER BY ctr_centers.ShortName",
(unsigned) Hie_STATUS_BIT_PENDING); (unsigned) Hie_STATUS_BIT_PENDING);
default: // Forbidden for other users default: // Forbidden for other users
Err_WrongRoleExit (); Err_WrongRoleExit ();
@ -728,8 +728,8 @@ unsigned Ctr_DB_GetCtrsFromUsr (MYSQL_RES **mysql_res,long UsrCod,long InsCod)
" AND crs_courses.DegCod=deg_degrees.DegCod" " AND crs_courses.DegCod=deg_degrees.DegCod"
" AND deg_degrees.CtrCod=ctr_centers.CtrCod" " AND deg_degrees.CtrCod=ctr_centers.CtrCod"
" AND ctr_centers.InsCod=%ld" " AND ctr_centers.InsCod=%ld"
" GROUP BY ctr_centers.CtrCod" " GROUP BY ctr_centers.CtrCod"
" ORDER BY ctr_centers.ShortName", " ORDER BY ctr_centers.ShortName",
UsrCod, UsrCod,
InsCod); InsCod);
else else
@ -745,8 +745,8 @@ unsigned Ctr_DB_GetCtrsFromUsr (MYSQL_RES **mysql_res,long UsrCod,long InsCod)
" AND crs_users.CrsCod=crs_courses.CrsCod" " AND crs_users.CrsCod=crs_courses.CrsCod"
" AND crs_courses.DegCod=deg_degrees.DegCod" " AND crs_courses.DegCod=deg_degrees.DegCod"
" AND deg_degrees.CtrCod=ctr_centers.CtrCod" " AND deg_degrees.CtrCod=ctr_centers.CtrCod"
" GROUP BY ctr_centers.CtrCod" " GROUP BY ctr_centers.CtrCod"
" ORDER BY ctr_centers.ShortName", " ORDER BY ctr_centers.ShortName",
UsrCod); UsrCod);
} }

View File

@ -629,11 +629,12 @@ TODO: Emilce Barrera Mesa: Podr
TODO: Emilce Barrera Mesa: Mis estudiantes presentan muchas dificultades a la hora de poner la foto porque la plataforma es muy exigente respecto al fondo de la imagen. TODO: Emilce Barrera Mesa: Mis estudiantes presentan muchas dificultades a la hora de poner la foto porque la plataforma es muy exigente respecto al fondo de la imagen.
*/ */
#define Log_PLATFORM_VERSION "SWAD 22.66 (2023-03-02)" #define Log_PLATFORM_VERSION "SWAD 22.66.2 (2023-03-03)"
#define CSS_FILE "swad22.57.1.css" #define CSS_FILE "swad22.57.1.css"
#define JS_FILE "swad22.49.js" #define JS_FILE "swad22.49.js"
/* /*
Version 22.66.1: Mar 02, 2023 Rubric removal. (337125 lines) Version 22.66.2: Mar 03, 2023 Fixed bugs in figures. (337128 lines)
Version 22.66.1: Mar 02, 2023 Rubric removal. (337126 lines)
Version 22.66: Mar 02, 2023 New module swad_rubric_criteria for rubric criteria. (337125 lines) Version 22.66: Mar 02, 2023 New module swad_rubric_criteria for rubric criteria. (337125 lines)
Version 22.65.1: Mar 02, 2023 Changes in rubrics. Not finished. (337012 lines) Version 22.65.1: Mar 02, 2023 Changes in rubrics. Not finished. (337012 lines)
Version 22.65: Mar 01, 2023 New module swad_rubric for rubrics. Not finished. (336989 lines) Version 22.65: Mar 01, 2023 New module swad_rubric for rubrics. Not finished. (336989 lines)

View File

@ -136,8 +136,8 @@ unsigned Cty_DB_GetCtysWithPendingInss (MYSQL_RES **mysql_res)
"cty_countrs" "cty_countrs"
" WHERE (ins_instits.Status & %u)<>0" " WHERE (ins_instits.Status & %u)<>0"
" AND ins_instits.CtyCod=cty_countrs.CtyCod" " AND ins_instits.CtyCod=cty_countrs.CtyCod"
" GROUP BY ins_instits.CtyCod" " GROUP BY ins_instits.CtyCod"
" ORDER BY cty_countrs.Name_%s", " ORDER BY cty_countrs.Name_%s",
(unsigned) Hie_STATUS_BIT_PENDING, (unsigned) Hie_STATUS_BIT_PENDING,
Lan_STR_LANG_ID[Gbl.Prefs.Language]); Lan_STR_LANG_ID[Gbl.Prefs.Language]);
} }
@ -201,7 +201,7 @@ unsigned Cty_DB_GetCtysFull (MYSQL_RES **mysql_res)
" FROM cty_countrs," " FROM cty_countrs,"
"usr_data" "usr_data"
" WHERE cty_countrs.CtyCod=usr_data.CtyCod" " WHERE cty_countrs.CtyCod=usr_data.CtyCod"
" GROUP BY cty_countrs.CtyCod)" " GROUP BY cty_countrs.CtyCod)"
" UNION " " UNION "
"(SELECT CtyCod," // row[0] "(SELECT CtyCod," // row[0]
"Alpha2," // row[1] "Alpha2," // row[1]
@ -213,7 +213,7 @@ unsigned Cty_DB_GetCtysFull (MYSQL_RES **mysql_res)
" (SELECT DISTINCT " " (SELECT DISTINCT "
"CtyCod" "CtyCod"
" FROM usr_data))" " FROM usr_data))"
" ORDER BY %s", " ORDER BY %s",
SubQueryNam1,SubQueryWWW1, SubQueryNam1,SubQueryWWW1,
SubQueryNam2,SubQueryWWW2,OrderBySubQuery); SubQueryNam2,SubQueryWWW2,OrderBySubQuery);
@ -565,8 +565,8 @@ unsigned Cty_DB_GetCtysFromUsr (MYSQL_RES **mysql_res,long UsrCod)
" AND deg_degrees.CtrCod=ctr_centers.CtrCod" " AND deg_degrees.CtrCod=ctr_centers.CtrCod"
" AND ctr_centers.InsCod=ins_instits.InsCod" " AND ctr_centers.InsCod=ins_instits.InsCod"
" AND ins_instits.CtyCod=cty_countrs.CtyCod" " AND ins_instits.CtyCod=cty_countrs.CtyCod"
" GROUP BY cty_countrs.CtyCod" " GROUP BY cty_countrs.CtyCod"
" ORDER BY cty_countrs.Name_%s", " ORDER BY cty_countrs.Name_%s",
UsrCod, UsrCod,
Lan_STR_LANG_ID[Gbl.Prefs.Language]); Lan_STR_LANG_ID[Gbl.Prefs.Language]);
} }

View File

@ -175,7 +175,7 @@ unsigned Deg_DB_GetDegreeTypes (MYSQL_RES **mysql_res,
" FROM deg_degrees," " FROM deg_degrees,"
"deg_types" "deg_types"
" WHERE deg_degrees.DegTypCod=deg_types.DegTypCod" " WHERE deg_degrees.DegTypCod=deg_types.DegTypCod"
" GROUP BY deg_degrees.DegTypCod)" " GROUP BY deg_degrees.DegTypCod)"
" UNION " " UNION "
"(SELECT DegTypCod," // row[0] "(SELECT DegTypCod," // row[0]
"DegTypName," // row[1] "DegTypName," // row[1]
@ -187,7 +187,7 @@ unsigned Deg_DB_GetDegreeTypes (MYSQL_RES **mysql_res,
" WHERE DegTypCod NOT IN" " WHERE DegTypCod NOT IN"
" (SELECT DegTypCod" " (SELECT DegTypCod"
" FROM deg_degrees))" " FROM deg_degrees))"
" ORDER BY %s", " ORDER BY %s",
OrderBySubQuery[Order]); OrderBySubQuery[Order]);
case HieLvl_CTY: case HieLvl_CTY:
/* Get only degree types with degrees in the current country */ /* Get only degree types with degrees in the current country */
@ -204,8 +204,8 @@ unsigned Deg_DB_GetDegreeTypes (MYSQL_RES **mysql_res,
" AND ins_instits.InsCod=ctr_centers.InsCod" " AND ins_instits.InsCod=ctr_centers.InsCod"
" AND ctr_centers.CtrCod=deg_degrees.CtrCod" " AND ctr_centers.CtrCod=deg_degrees.CtrCod"
" AND deg_degrees.DegTypCod=deg_types.DegTypCod" " AND deg_degrees.DegTypCod=deg_types.DegTypCod"
" GROUP BY deg_degrees.DegTypCod" " GROUP BY deg_degrees.DegTypCod"
" ORDER BY %s", " ORDER BY %s",
Gbl.Hierarchy.Cty.CtyCod, Gbl.Hierarchy.Cty.CtyCod,
OrderBySubQuery[Order]); OrderBySubQuery[Order]);
case HieLvl_INS: case HieLvl_INS:
@ -221,8 +221,8 @@ unsigned Deg_DB_GetDegreeTypes (MYSQL_RES **mysql_res,
" WHERE ctr_centers.InsCod=%ld" " WHERE ctr_centers.InsCod=%ld"
" AND ctr_centers.CtrCod=deg_degrees.CtrCod" " AND ctr_centers.CtrCod=deg_degrees.CtrCod"
" AND deg_degrees.DegTypCod=deg_types.DegTypCod" " AND deg_degrees.DegTypCod=deg_types.DegTypCod"
" GROUP BY deg_degrees.DegTypCod" " GROUP BY deg_degrees.DegTypCod"
" ORDER BY %s", " ORDER BY %s",
Gbl.Hierarchy.Ins.InsCod, Gbl.Hierarchy.Ins.InsCod,
OrderBySubQuery[Order]); OrderBySubQuery[Order]);
case HieLvl_CTR: case HieLvl_CTR:
@ -236,8 +236,8 @@ unsigned Deg_DB_GetDegreeTypes (MYSQL_RES **mysql_res,
"deg_types" "deg_types"
" WHERE deg_degrees.CtrCod=%ld" " WHERE deg_degrees.CtrCod=%ld"
" AND deg_degrees.DegTypCod=deg_types.DegTypCod" " AND deg_degrees.DegTypCod=deg_types.DegTypCod"
" GROUP BY deg_degrees.DegTypCod" " GROUP BY deg_degrees.DegTypCod"
" ORDER BY %s", " ORDER BY %s",
Gbl.Hierarchy.Ctr.CtrCod, Gbl.Hierarchy.Ctr.CtrCod,
OrderBySubQuery[Order]); OrderBySubQuery[Order]);
case HieLvl_DEG: case HieLvl_DEG:
@ -252,8 +252,8 @@ unsigned Deg_DB_GetDegreeTypes (MYSQL_RES **mysql_res,
"deg_types" "deg_types"
" WHERE deg_degrees.DegCod=%ld" " WHERE deg_degrees.DegCod=%ld"
" AND deg_degrees.DegTypCod=deg_types.DegTypCod" " AND deg_degrees.DegTypCod=deg_types.DegTypCod"
" GROUP BY deg_degrees.DegTypCod" " GROUP BY deg_degrees.DegTypCod"
" ORDER BY %s", " ORDER BY %s",
Gbl.Hierarchy.Deg.DegCod, Gbl.Hierarchy.Deg.DegCod,
OrderBySubQuery[Order]); OrderBySubQuery[Order]);
default: default:
@ -462,8 +462,8 @@ unsigned Deg_DB_GetDegsWithPendingCrss (MYSQL_RES **mysql_res)
" AND usr_admins.Cod=crs_courses.DegCod" " AND usr_admins.Cod=crs_courses.DegCod"
" AND (crs_courses.Status & %u)<>0" " AND (crs_courses.Status & %u)<>0"
" AND crs_courses.DegCod=deg_degrees.DegCod" " AND crs_courses.DegCod=deg_degrees.DegCod"
" GROUP BY crs_courses.DegCod" " GROUP BY crs_courses.DegCod"
" ORDER BY deg_degrees.ShortName", " ORDER BY deg_degrees.ShortName",
Gbl.Usrs.Me.UsrDat.UsrCod, Gbl.Usrs.Me.UsrDat.UsrCod,
Sco_GetDBStrFromScope (HieLvl_DEG), Sco_GetDBStrFromScope (HieLvl_DEG),
(unsigned) Hie_STATUS_BIT_PENDING); (unsigned) Hie_STATUS_BIT_PENDING);
@ -476,8 +476,8 @@ unsigned Deg_DB_GetDegsWithPendingCrss (MYSQL_RES **mysql_res)
"deg_degrees" "deg_degrees"
" WHERE (crs_courses.Status & %u)<>0" " WHERE (crs_courses.Status & %u)<>0"
" AND crs_courses.DegCod=deg_degrees.DegCod" " AND crs_courses.DegCod=deg_degrees.DegCod"
" GROUP BY crs_courses.DegCod" " GROUP BY crs_courses.DegCod"
" ORDER BY deg_degrees.ShortName", " ORDER BY deg_degrees.ShortName",
(unsigned) Hie_STATUS_BIT_PENDING); (unsigned) Hie_STATUS_BIT_PENDING);
default: // Forbidden for other users default: // Forbidden for other users
Err_WrongRoleExit (); Err_WrongRoleExit ();
@ -766,8 +766,8 @@ unsigned Deg_DB_GetDegsFromUsr (MYSQL_RES **mysql_res,long UsrCod,long CtrCod)
" AND crs_users.CrsCod=crs_courses.CrsCod" " AND crs_users.CrsCod=crs_courses.CrsCod"
" AND crs_courses.DegCod=deg_degrees.DegCod" " AND crs_courses.DegCod=deg_degrees.DegCod"
" AND deg_degrees.CtrCod=%ld" " AND deg_degrees.CtrCod=%ld"
" GROUP BY deg_degrees.DegCod" " GROUP BY deg_degrees.DegCod"
" ORDER BY deg_degrees.ShortName", " ORDER BY deg_degrees.ShortName",
UsrCod, UsrCod,
CtrCod); CtrCod);
else else
@ -781,8 +781,8 @@ unsigned Deg_DB_GetDegsFromUsr (MYSQL_RES **mysql_res,long UsrCod,long CtrCod)
" WHERE crs_users.UsrCod=%ld" " WHERE crs_users.UsrCod=%ld"
" AND crs_users.CrsCod=crs_courses.CrsCod" " AND crs_users.CrsCod=crs_courses.CrsCod"
" AND crs_courses.DegCod=deg_degrees.DegCod" " AND crs_courses.DegCod=deg_degrees.DegCod"
" GROUP BY deg_degrees.DegCod" " GROUP BY deg_degrees.DegCod"
" ORDER BY deg_degrees.ShortName", " ORDER BY deg_degrees.ShortName",
UsrCod); UsrCod);
} }
@ -806,8 +806,8 @@ unsigned Deg_DB_GetUsrMainDeg (MYSQL_RES **mysql_res,long UsrCod)
"crs_courses" "crs_courses"
" WHERE crs_users.UsrCod=%ld" " WHERE crs_users.UsrCod=%ld"
" AND crs_users.CrsCod=crs_courses.CrsCod" " AND crs_users.CrsCod=crs_courses.CrsCod"
" GROUP BY crs_courses.DegCod" " GROUP BY crs_courses.DegCod"
" ORDER BY N DESC" // Ordered by number of courses in which user is enroled " ORDER BY N DESC" // Ordered by number of courses in which user is enroled
" LIMIT 1)" // We need only the main degree " LIMIT 1)" // We need only the main degree
" AS main_degree" " AS main_degree"

View File

@ -83,7 +83,7 @@ unsigned Dpt_DB_GetListDepartments (MYSQL_RES **mysql_res,
" AND dpt_departments.DptCod=usr_data.DptCod" " AND dpt_departments.DptCod=usr_data.DptCod"
" AND usr_data.UsrCod=crs_users.UsrCod" " AND usr_data.UsrCod=crs_users.UsrCod"
" AND crs_users.Role IN (%u,%u)" " AND crs_users.Role IN (%u,%u)"
" GROUP BY dpt_departments.DptCod)" " GROUP BY dpt_departments.DptCod)"
" UNION " " UNION "
"(SELECT DptCod," // row[0] "(SELECT DptCod," // row[0]
"InsCod," // row[1] "InsCod," // row[1]
@ -99,7 +99,7 @@ unsigned Dpt_DB_GetListDepartments (MYSQL_RES **mysql_res,
" FROM usr_data,crs_users" " FROM usr_data,crs_users"
" WHERE crs_users.Role IN (%u,%u)" " WHERE crs_users.Role IN (%u,%u)"
" AND crs_users.UsrCod=usr_data.UsrCod))" " AND crs_users.UsrCod=usr_data.UsrCod))"
" ORDER BY %s", " ORDER BY %s",
InsCod,(unsigned) Rol_NET,(unsigned) Rol_TCH, InsCod,(unsigned) Rol_NET,(unsigned) Rol_TCH,
InsCod,(unsigned) Rol_NET,(unsigned) Rol_TCH, InsCod,(unsigned) Rol_NET,(unsigned) Rol_TCH,
OrderBySubQuery[SelectedOrder]); OrderBySubQuery[SelectedOrder]);
@ -125,7 +125,7 @@ unsigned Dpt_DB_GetDataOfDepartmentByCod (MYSQL_RES **mysql_res,long DptCod)
" AND dpt_departments.DptCod=usr_data.DptCod" " AND dpt_departments.DptCod=usr_data.DptCod"
" AND usr_data.UsrCod=crs_users.UsrCod" " AND usr_data.UsrCod=crs_users.UsrCod"
" AND crs_users.Role=%u" " AND crs_users.Role=%u"
" GROUP BY dpt_departments.DptCod)" " GROUP BY dpt_departments.DptCod)"
" UNION " " UNION "
"(SELECT InsCod," // row[0] "(SELECT InsCod," // row[0]
"ShortName," // row[1] "ShortName," // row[1]

View File

@ -46,9 +46,9 @@ unsigned Dup_DB_GetListDuplicateUsrs (MYSQL_RES **mysql_res)
"COUNT(*) AS N," // row[1] "COUNT(*) AS N," // row[1]
"UNIX_TIMESTAMP(MIN(InformTime)) AS T" // row[2] "UNIX_TIMESTAMP(MIN(InformTime)) AS T" // row[2]
" FROM usr_duplicated" " FROM usr_duplicated"
" GROUP BY UsrCod" " GROUP BY UsrCod"
" ORDER BY N DESC," " ORDER BY N DESC,"
"T DESC"); "T DESC");
} }
/*****************************************************************************/ /*****************************************************************************/

View File

@ -680,13 +680,14 @@ double Enr_DB_GetAverageNumUsrsPerCrs (HieLvl_Level_t Scope,long Cod,Rol_Role_t
"SELECT AVG(NumUsrs)" "SELECT AVG(NumUsrs)"
" FROM (SELECT COUNT(UsrCod) AS NumUsrs" " FROM (SELECT COUNT(UsrCod) AS NumUsrs"
" FROM crs_users" " FROM crs_users"
" GROUP BY CrsCod) AS NumUsrsTable"); " GROUP BY CrsCod) AS NumUsrsTable");
else else
return DB_QuerySELECTDouble ("can not get number of users per course", return DB_QuerySELECTDouble ("can not get number of users per course",
"SELECT AVG(NumUsrs)" "SELECT AVG(NumUsrs)"
" FROM (SELECT COUNT(UsrCod) AS NumUsrs" " FROM (SELECT COUNT(UsrCod) AS NumUsrs"
" FROM crs_users" " FROM crs_users"
" WHERE Role=%u GROUP BY CrsCod) AS NumUsrsTable", " WHERE Role=%u"
" GROUP BY CrsCod) AS NumUsrsTable",
(unsigned) Role); (unsigned) Role);
case HieLvl_CTY: case HieLvl_CTY:
if (Role == Rol_UNK) // Any user if (Role == Rol_UNK) // Any user
@ -703,7 +704,7 @@ double Enr_DB_GetAverageNumUsrsPerCrs (HieLvl_Level_t Scope,long Cod,Rol_Role_t
" AND ctr_centers.CtrCod=deg_degrees.CtrCod" " AND ctr_centers.CtrCod=deg_degrees.CtrCod"
" AND deg_degrees.DegCod=crs_courses.DegCod" " AND deg_degrees.DegCod=crs_courses.DegCod"
" AND crs_courses.CrsCod=crs_users.CrsCod" " AND crs_courses.CrsCod=crs_users.CrsCod"
" GROUP BY crs_users.CrsCod) AS NumUsrsTable", " GROUP BY crs_users.CrsCod) AS NumUsrsTable",
Cod); Cod);
else else
return DB_QuerySELECTDouble ("can not get number of users per course", return DB_QuerySELECTDouble ("can not get number of users per course",
@ -720,7 +721,7 @@ double Enr_DB_GetAverageNumUsrsPerCrs (HieLvl_Level_t Scope,long Cod,Rol_Role_t
" AND deg_degrees.DegCod=crs_courses.DegCod" " AND deg_degrees.DegCod=crs_courses.DegCod"
" AND crs_courses.CrsCod=crs_users.CrsCod" " AND crs_courses.CrsCod=crs_users.CrsCod"
" AND crs_users.Role=%u" " AND crs_users.Role=%u"
" GROUP BY crs_users.CrsCod) AS NumUsrsTable", " GROUP BY crs_users.CrsCod) AS NumUsrsTable",
Cod, Cod,
(unsigned) Role); (unsigned) Role);
case HieLvl_INS: case HieLvl_INS:
@ -736,7 +737,7 @@ double Enr_DB_GetAverageNumUsrsPerCrs (HieLvl_Level_t Scope,long Cod,Rol_Role_t
" AND ctr_centers.CtrCod=deg_degrees.CtrCod" " AND ctr_centers.CtrCod=deg_degrees.CtrCod"
" AND deg_degrees.DegCod=crs_courses.DegCod" " AND deg_degrees.DegCod=crs_courses.DegCod"
" AND crs_courses.CrsCod=crs_users.CrsCod" " AND crs_courses.CrsCod=crs_users.CrsCod"
" GROUP BY crs_users.CrsCod) AS NumUsrsTable", " GROUP BY crs_users.CrsCod) AS NumUsrsTable",
Cod); Cod);
else else
return DB_QuerySELECTDouble ("can not get number of users per course", return DB_QuerySELECTDouble ("can not get number of users per course",
@ -751,7 +752,7 @@ double Enr_DB_GetAverageNumUsrsPerCrs (HieLvl_Level_t Scope,long Cod,Rol_Role_t
" AND deg_degrees.DegCod=crs_courses.DegCod" " AND deg_degrees.DegCod=crs_courses.DegCod"
" AND crs_courses.CrsCod=crs_users.CrsCod" " AND crs_courses.CrsCod=crs_users.CrsCod"
" AND crs_users.Role=%u" " AND crs_users.Role=%u"
" GROUP BY crs_users.CrsCod) AS NumUsrsTable", " GROUP BY crs_users.CrsCod) AS NumUsrsTable",
Cod, Cod,
(unsigned) Role); (unsigned) Role);
case HieLvl_CTR: case HieLvl_CTR:
@ -765,7 +766,7 @@ double Enr_DB_GetAverageNumUsrsPerCrs (HieLvl_Level_t Scope,long Cod,Rol_Role_t
" WHERE deg_degrees.CtrCod=%ld" " WHERE deg_degrees.CtrCod=%ld"
" AND deg_degrees.DegCod=crs_courses.DegCod" " AND deg_degrees.DegCod=crs_courses.DegCod"
" AND crs_courses.CrsCod=crs_users.CrsCod" " AND crs_courses.CrsCod=crs_users.CrsCod"
" GROUP BY crs_users.CrsCod) AS NumUsrsTable", " GROUP BY crs_users.CrsCod) AS NumUsrsTable",
Cod); Cod);
else else
return DB_QuerySELECTDouble ("can not get number of users per course", return DB_QuerySELECTDouble ("can not get number of users per course",
@ -778,7 +779,7 @@ double Enr_DB_GetAverageNumUsrsPerCrs (HieLvl_Level_t Scope,long Cod,Rol_Role_t
" AND deg_degrees.DegCod=crs_courses.DegCod" " AND deg_degrees.DegCod=crs_courses.DegCod"
" AND crs_courses.CrsCod=crs_users.CrsCod" " AND crs_courses.CrsCod=crs_users.CrsCod"
" AND crs_users.Role=%u" " AND crs_users.Role=%u"
" GROUP BY crs_users.CrsCod) AS NumUsrsTable", " GROUP BY crs_users.CrsCod) AS NumUsrsTable",
Cod, Cod,
(unsigned) Role); (unsigned) Role);
case HieLvl_DEG: case HieLvl_DEG:
@ -790,7 +791,7 @@ double Enr_DB_GetAverageNumUsrsPerCrs (HieLvl_Level_t Scope,long Cod,Rol_Role_t
"crs_users" "crs_users"
" WHERE crs_courses.DegCod=%ld" " WHERE crs_courses.DegCod=%ld"
" AND crs_courses.CrsCod=crs_users.CrsCod" " AND crs_courses.CrsCod=crs_users.CrsCod"
" GROUP BY crs_users.CrsCod) AS NumUsrsTable", " GROUP BY crs_users.CrsCod) AS NumUsrsTable",
Cod); Cod);
else else
return DB_QuerySELECTDouble ("can not get number of users per course", return DB_QuerySELECTDouble ("can not get number of users per course",
@ -801,7 +802,7 @@ double Enr_DB_GetAverageNumUsrsPerCrs (HieLvl_Level_t Scope,long Cod,Rol_Role_t
" WHERE crs_courses.DegCod=%ld" " WHERE crs_courses.DegCod=%ld"
" AND crs_courses.CrsCod=crs_users.CrsCod" " AND crs_courses.CrsCod=crs_users.CrsCod"
" AND crs_users.Role=%u" " AND crs_users.Role=%u"
" GROUP BY crs_users.CrsCod) AS NumUsrsTable", " GROUP BY crs_users.CrsCod) AS NumUsrsTable",
Cod, Cod,
(unsigned) Role); (unsigned) Role);
case HieLvl_CRS: case HieLvl_CRS:
@ -831,14 +832,14 @@ double Enr_DB_GetAverageNumCrssPerUsr (HieLvl_Level_t Scope,long Cod,Rol_Role_t
"SELECT AVG(NumCrss)" "SELECT AVG(NumCrss)"
" FROM (SELECT COUNT(CrsCod) AS NumCrss" " FROM (SELECT COUNT(CrsCod) AS NumCrss"
" FROM crs_users" " FROM crs_users"
" GROUP BY UsrCod) AS NumCrssTable"); " GROUP BY UsrCod) AS NumCrssTable");
else else
return DB_QuerySELECTDouble ("can not get number of courses per user", return DB_QuerySELECTDouble ("can not get number of courses per user",
"SELECT AVG(NumCrss)" "SELECT AVG(NumCrss)"
" FROM (SELECT COUNT(CrsCod) AS NumCrss" " FROM (SELECT COUNT(CrsCod) AS NumCrss"
" FROM crs_users" " FROM crs_users"
" WHERE Role=%u" " WHERE Role=%u"
" GROUP BY UsrCod) AS NumCrssTable", " GROUP BY UsrCod) AS NumCrssTable",
(unsigned) Role); (unsigned) Role);
case HieLvl_CTY: case HieLvl_CTY:
if (Role == Rol_UNK) // Any user if (Role == Rol_UNK) // Any user
@ -855,7 +856,7 @@ double Enr_DB_GetAverageNumCrssPerUsr (HieLvl_Level_t Scope,long Cod,Rol_Role_t
" AND ctr_centers.CtrCod=deg_degrees.CtrCod" " AND ctr_centers.CtrCod=deg_degrees.CtrCod"
" AND deg_degrees.DegCod=crs_courses.DegCod" " AND deg_degrees.DegCod=crs_courses.DegCod"
" AND crs_courses.CrsCod=crs_users.CrsCod" " AND crs_courses.CrsCod=crs_users.CrsCod"
" GROUP BY crs_users.UsrCod) AS NumCrssTable", " GROUP BY crs_users.UsrCod) AS NumCrssTable",
Cod); Cod);
else else
return DB_QuerySELECTDouble ("can not get number of courses per user", return DB_QuerySELECTDouble ("can not get number of courses per user",
@ -872,7 +873,7 @@ double Enr_DB_GetAverageNumCrssPerUsr (HieLvl_Level_t Scope,long Cod,Rol_Role_t
" AND deg_degrees.DegCod=crs_courses.DegCod" " AND deg_degrees.DegCod=crs_courses.DegCod"
" AND crs_courses.CrsCod=crs_users.CrsCod" " AND crs_courses.CrsCod=crs_users.CrsCod"
" AND crs_users.Role=%u" " AND crs_users.Role=%u"
" GROUP BY crs_users.UsrCod) AS NumCrssTable", " GROUP BY crs_users.UsrCod) AS NumCrssTable",
Cod, Cod,
(unsigned) Role); (unsigned) Role);
case HieLvl_INS: case HieLvl_INS:
@ -888,7 +889,7 @@ double Enr_DB_GetAverageNumCrssPerUsr (HieLvl_Level_t Scope,long Cod,Rol_Role_t
" AND ctr_centers.CtrCod=deg_degrees.CtrCod" " AND ctr_centers.CtrCod=deg_degrees.CtrCod"
" AND deg_degrees.DegCod=crs_courses.DegCod" " AND deg_degrees.DegCod=crs_courses.DegCod"
" AND crs_courses.CrsCod=crs_users.CrsCod" " AND crs_courses.CrsCod=crs_users.CrsCod"
" GROUP BY crs_users.UsrCod) AS NumCrssTable", " GROUP BY crs_users.UsrCod) AS NumCrssTable",
Cod); Cod);
else else
return DB_QuerySELECTDouble ("can not get number of courses per user", return DB_QuerySELECTDouble ("can not get number of courses per user",
@ -903,7 +904,7 @@ double Enr_DB_GetAverageNumCrssPerUsr (HieLvl_Level_t Scope,long Cod,Rol_Role_t
" AND deg_degrees.DegCod=crs_courses.DegCod" " AND deg_degrees.DegCod=crs_courses.DegCod"
" AND crs_courses.CrsCod=crs_users.CrsCod" " AND crs_courses.CrsCod=crs_users.CrsCod"
" AND crs_users.Role=%u" " AND crs_users.Role=%u"
" GROUP BY crs_users.UsrCod) AS NumCrssTable", " GROUP BY crs_users.UsrCod) AS NumCrssTable",
Cod, Cod,
(unsigned) Role); (unsigned) Role);
case HieLvl_CTR: case HieLvl_CTR:
@ -917,7 +918,7 @@ double Enr_DB_GetAverageNumCrssPerUsr (HieLvl_Level_t Scope,long Cod,Rol_Role_t
" WHERE deg_degrees.CtrCod=%ld" " WHERE deg_degrees.CtrCod=%ld"
" AND deg_degrees.DegCod=crs_courses.DegCod" " AND deg_degrees.DegCod=crs_courses.DegCod"
" AND crs_courses.CrsCod=crs_users.CrsCod" " AND crs_courses.CrsCod=crs_users.CrsCod"
" GROUP BY crs_users.UsrCod) AS NumCrssTable", " GROUP BY crs_users.UsrCod) AS NumCrssTable",
Cod); Cod);
else else
return DB_QuerySELECTDouble ("can not get number of courses per user", return DB_QuerySELECTDouble ("can not get number of courses per user",
@ -930,7 +931,7 @@ double Enr_DB_GetAverageNumCrssPerUsr (HieLvl_Level_t Scope,long Cod,Rol_Role_t
" AND deg_degrees.DegCod=crs_courses.DegCod" " AND deg_degrees.DegCod=crs_courses.DegCod"
" AND crs_courses.CrsCod=crs_users.CrsCod" " AND crs_courses.CrsCod=crs_users.CrsCod"
" AND crs_users.Role=%u" " AND crs_users.Role=%u"
" GROUP BY crs_users.UsrCod) AS NumCrssTable", " GROUP BY crs_users.UsrCod) AS NumCrssTable",
Cod, Cod,
(unsigned) Role); (unsigned) Role);
case HieLvl_DEG: case HieLvl_DEG:
@ -942,7 +943,7 @@ double Enr_DB_GetAverageNumCrssPerUsr (HieLvl_Level_t Scope,long Cod,Rol_Role_t
"crs_users" "crs_users"
" WHERE crs_courses.DegCod=%ld" " WHERE crs_courses.DegCod=%ld"
" AND crs_courses.CrsCod=crs_users.CrsCod" " AND crs_courses.CrsCod=crs_users.CrsCod"
" GROUP BY crs_users.UsrCod) AS NumCrssTable", " GROUP BY crs_users.UsrCod) AS NumCrssTable",
Cod); Cod);
else else
return DB_QuerySELECTDouble ("can not get number of courses per user", return DB_QuerySELECTDouble ("can not get number of courses per user",
@ -953,7 +954,7 @@ double Enr_DB_GetAverageNumCrssPerUsr (HieLvl_Level_t Scope,long Cod,Rol_Role_t
" WHERE crs_courses.DegCod=%ld" " WHERE crs_courses.DegCod=%ld"
" AND crs_courses.CrsCod=crs_users.CrsCod" " AND crs_courses.CrsCod=crs_users.CrsCod"
" AND crs_users.Role=%u" " AND crs_users.Role=%u"
" GROUP BY crs_users.UsrCod) AS NumCrssTable", " GROUP BY crs_users.UsrCod) AS NumCrssTable",
Cod, Cod,
(unsigned) Role); (unsigned) Role);
case HieLvl_CRS: case HieLvl_CRS:

View File

@ -168,8 +168,8 @@ unsigned Exa_DB_GetListExams (MYSQL_RES **mysql_res,Exa_Order_t SelectedOrder)
" ON exa_exams.ExaCod=exa_sessions.ExaCod" " ON exa_exams.ExaCod=exa_sessions.ExaCod"
" WHERE exa_exams.CrsCod=%ld" " WHERE exa_exams.CrsCod=%ld"
"%s" "%s"
" GROUP BY exa_exams.ExaCod" " GROUP BY exa_exams.ExaCod"
" ORDER BY %s", " ORDER BY %s",
Gbl.Hierarchy.Crs.CrsCod, Gbl.Hierarchy.Crs.CrsCod,
HiddenSubQuery, HiddenSubQuery,
OrderBySubQuery[SelectedOrder]); OrderBySubQuery[SelectedOrder]);
@ -290,7 +290,7 @@ unsigned Exa_DB_GetNumCoursesWithExams (HieLvl_Level_t Scope)
" AND ctr_centers.CtrCod=deg_degrees.CtrCod" " AND ctr_centers.CtrCod=deg_degrees.CtrCod"
" AND deg_degrees.DegCod=crs_courses.DegCod" " AND deg_degrees.DegCod=crs_courses.DegCod"
" AND crs_courses.CrsCod=exa_exams.CrsCod", " AND crs_courses.CrsCod=exa_exams.CrsCod",
Gbl.Hierarchy.Ins.InsCod); Gbl.Hierarchy.Cty.CtyCod);
case HieLvl_INS: case HieLvl_INS:
return DB_QueryCOUNT ("can not get number of courses with exams", return DB_QueryCOUNT ("can not get number of courses with exams",
"SELECT COUNT(DISTINCT exa_exams.CrsCod)" "SELECT COUNT(DISTINCT exa_exams.CrsCod)"
@ -419,7 +419,7 @@ double Exa_DB_GetNumQstsPerCrsExam (HieLvl_Level_t Scope)
" FROM exa_exams," " FROM exa_exams,"
"exa_set_questions" "exa_set_questions"
" WHERE exa_exams.ExaCod=exa_set_questions.ExaCod" " WHERE exa_exams.ExaCod=exa_set_questions.ExaCod"
" GROUP BY exa_set_questions.ExaCod) AS NumQstsTable"); " GROUP BY exa_set_questions.ExaCod) AS NumQstsTable");
case HieLvl_CTY: case HieLvl_CTY:
return DB_QuerySELECTDouble ("can not get number of questions per exam", return DB_QuerySELECTDouble ("can not get number of questions per exam",
"SELECT AVG(NumQsts)" "SELECT AVG(NumQsts)"
@ -436,7 +436,7 @@ double Exa_DB_GetNumQstsPerCrsExam (HieLvl_Level_t Scope)
" AND deg_degrees.DegCod=crs_courses.DegCod" " AND deg_degrees.DegCod=crs_courses.DegCod"
" AND crs_courses.CrsCod=exa_exams.CrsCod" " AND crs_courses.CrsCod=exa_exams.CrsCod"
" AND exa_exams.ExaCod=exa_set_questions.ExaCod" " AND exa_exams.ExaCod=exa_set_questions.ExaCod"
" GROUP BY exa_set_questions.ExaCod) AS NumQstsTable", " GROUP BY exa_set_questions.ExaCod) AS NumQstsTable",
Gbl.Hierarchy.Cty.CtyCod); Gbl.Hierarchy.Cty.CtyCod);
case HieLvl_INS: case HieLvl_INS:
return DB_QuerySELECTDouble ("can not get number of questions per exam", return DB_QuerySELECTDouble ("can not get number of questions per exam",
@ -452,7 +452,7 @@ double Exa_DB_GetNumQstsPerCrsExam (HieLvl_Level_t Scope)
" AND deg_degrees.DegCod=crs_courses.DegCod" " AND deg_degrees.DegCod=crs_courses.DegCod"
" AND crs_courses.CrsCod=exa_exams.CrsCod" " AND crs_courses.CrsCod=exa_exams.CrsCod"
" AND exa_exams.ExaCod=exa_set_questions.ExaCod" " AND exa_exams.ExaCod=exa_set_questions.ExaCod"
" GROUP BY exa_set_questions.ExaCod) AS NumQstsTable", " GROUP BY exa_set_questions.ExaCod) AS NumQstsTable",
Gbl.Hierarchy.Ins.InsCod); Gbl.Hierarchy.Ins.InsCod);
case HieLvl_CTR: case HieLvl_CTR:
return DB_QuerySELECTDouble ("can not get number of questions per exam", return DB_QuerySELECTDouble ("can not get number of questions per exam",
@ -466,7 +466,7 @@ double Exa_DB_GetNumQstsPerCrsExam (HieLvl_Level_t Scope)
" AND deg_degrees.DegCod=crs_courses.DegCod" " AND deg_degrees.DegCod=crs_courses.DegCod"
" AND crs_courses.CrsCod=exa_exams.CrsCod" " AND crs_courses.CrsCod=exa_exams.CrsCod"
" AND exa_exams.ExaCod=exa_set_questions.ExaCod" " AND exa_exams.ExaCod=exa_set_questions.ExaCod"
" GROUP BY exa_set_questions.ExaCod) AS NumQstsTable", " GROUP BY exa_set_questions.ExaCod) AS NumQstsTable",
Gbl.Hierarchy.Ctr.CtrCod); Gbl.Hierarchy.Ctr.CtrCod);
case HieLvl_DEG: case HieLvl_DEG:
return DB_QuerySELECTDouble ("can not get number of questions per exam", return DB_QuerySELECTDouble ("can not get number of questions per exam",
@ -478,7 +478,7 @@ double Exa_DB_GetNumQstsPerCrsExam (HieLvl_Level_t Scope)
" WHERE crs_courses.DegCod=%ld" " WHERE crs_courses.DegCod=%ld"
" AND crs_courses.CrsCod=exa_exams.CrsCod" " AND crs_courses.CrsCod=exa_exams.CrsCod"
" AND exa_exams.ExaCod=exa_set_questions.ExaCod" " AND exa_exams.ExaCod=exa_set_questions.ExaCod"
" GROUP BY exa_set_questions.ExaCod) AS NumQstsTable", " GROUP BY exa_set_questions.ExaCod) AS NumQstsTable",
Gbl.Hierarchy.Deg.DegCod); Gbl.Hierarchy.Deg.DegCod);
case HieLvl_CRS: case HieLvl_CRS:
return DB_QuerySELECTDouble ("can not get number of questions per exam", return DB_QuerySELECTDouble ("can not get number of questions per exam",
@ -488,7 +488,7 @@ double Exa_DB_GetNumQstsPerCrsExam (HieLvl_Level_t Scope)
"exa_set_questions" "exa_set_questions"
" WHERE exa_exams.Cod=%ld" " WHERE exa_exams.Cod=%ld"
" AND exa_exams.ExaCod=exa_set_questions.ExaCod" " AND exa_exams.ExaCod=exa_set_questions.ExaCod"
" GROUP BY exa_set_questions.ExaCod) AS NumQstsTable", " GROUP BY exa_set_questions.ExaCod) AS NumQstsTable",
Gbl.Hierarchy.Crs.CrsCod); Gbl.Hierarchy.Crs.CrsCod);
default: default:
Err_WrongScopeExit (); Err_WrongScopeExit ();

View File

@ -419,7 +419,7 @@ double Fol_DB_GetNumFollowedPerFollower (unsigned Fol)
"SELECT AVG(N)" "SELECT AVG(N)"
" FROM (SELECT COUNT(%s) AS N" " FROM (SELECT COUNT(%s) AS N"
" FROM usr_follow" " FROM usr_follow"
" GROUP BY %s) AS F", " GROUP BY %s) AS F",
FieldDB[Fol], FieldDB[Fol],
FieldDB[1 - Fol]); FieldDB[1 - Fol]);
case HieLvl_CTY: case HieLvl_CTY:
@ -438,7 +438,7 @@ double Fol_DB_GetNumFollowedPerFollower (unsigned Fol)
" AND deg_degrees.DegCod=crs_courses.DegCod" " AND deg_degrees.DegCod=crs_courses.DegCod"
" AND crs_courses.CrsCod=crs_users.CrsCod" " AND crs_courses.CrsCod=crs_users.CrsCod"
" AND crs_users.UsrCod=usr_follow.%s" " AND crs_users.UsrCod=usr_follow.%s"
" GROUP BY %s) AS F", " GROUP BY %s) AS F",
FieldDB[Fol], FieldDB[Fol],
Gbl.Hierarchy.Cty.CtyCod, Gbl.Hierarchy.Cty.CtyCod,
FieldDB[Fol], FieldDB[Fol],
@ -457,7 +457,7 @@ double Fol_DB_GetNumFollowedPerFollower (unsigned Fol)
" AND deg_degrees.DegCod=crs_courses.DegCod" " AND deg_degrees.DegCod=crs_courses.DegCod"
" AND crs_courses.CrsCod=crs_users.CrsCod" " AND crs_courses.CrsCod=crs_users.CrsCod"
" AND crs_users.UsrCod=usr_follow.%s" " AND crs_users.UsrCod=usr_follow.%s"
" GROUP BY %s) AS F", " GROUP BY %s) AS F",
FieldDB[Fol], FieldDB[Fol],
Gbl.Hierarchy.Ins.InsCod, Gbl.Hierarchy.Ins.InsCod,
FieldDB[Fol], FieldDB[Fol],
@ -474,7 +474,7 @@ double Fol_DB_GetNumFollowedPerFollower (unsigned Fol)
" AND deg_degrees.DegCod=crs_courses.DegCod" " AND deg_degrees.DegCod=crs_courses.DegCod"
" AND crs_courses.CrsCod=crs_users.CrsCod" " AND crs_courses.CrsCod=crs_users.CrsCod"
" AND crs_users.UsrCod=usr_follow.%s" " AND crs_users.UsrCod=usr_follow.%s"
" GROUP BY %s) AS F", " GROUP BY %s) AS F",
FieldDB[Fol], FieldDB[Fol],
Gbl.Hierarchy.Ctr.CtrCod, Gbl.Hierarchy.Ctr.CtrCod,
FieldDB[Fol], FieldDB[Fol],
@ -489,7 +489,7 @@ double Fol_DB_GetNumFollowedPerFollower (unsigned Fol)
" WHERE crs_courses.DegCod=%ld" " WHERE crs_courses.DegCod=%ld"
" AND crs_courses.CrsCod=crs_users.CrsCod" " AND crs_courses.CrsCod=crs_users.CrsCod"
" AND crs_users.UsrCod=usr_follow.%s" " AND crs_users.UsrCod=usr_follow.%s"
" GROUP BY %s) AS F", " GROUP BY %s) AS F",
FieldDB[Fol], FieldDB[Fol],
Gbl.Hierarchy.Deg.DegCod, Gbl.Hierarchy.Deg.DegCod,
FieldDB[Fol], FieldDB[Fol],
@ -502,7 +502,7 @@ double Fol_DB_GetNumFollowedPerFollower (unsigned Fol)
"usr_follow" "usr_follow"
" WHERE crs_users.CrsCod=%ld" " WHERE crs_users.CrsCod=%ld"
" AND crs_users.UsrCod=usr_follow.%s" " AND crs_users.UsrCod=usr_follow.%s"
" GROUP BY %s) AS F", " GROUP BY %s) AS F",
FieldDB[Fol], FieldDB[Fol],
Gbl.Hierarchy.Crs.CrsCod, Gbl.Hierarchy.Crs.CrsCod,
FieldDB[Fol], FieldDB[Fol],
@ -567,9 +567,9 @@ unsigned Fol_DB_GetRankingFollowers (MYSQL_RES **mysql_res)
"SELECT FollowedCod," // row[0] "SELECT FollowedCod," // row[0]
"COUNT(FollowerCod) AS N" // row[1] "COUNT(FollowerCod) AS N" // row[1]
" FROM usr_follow" " FROM usr_follow"
" GROUP BY FollowedCod" " GROUP BY FollowedCod"
" ORDER BY N DESC," " ORDER BY N DESC,"
"FollowedCod" "FollowedCod"
" LIMIT 100"); " LIMIT 100");
case HieLvl_CTY: case HieLvl_CTY:
return (unsigned) return (unsigned)
@ -588,9 +588,9 @@ unsigned Fol_DB_GetRankingFollowers (MYSQL_RES **mysql_res)
" AND deg_degrees.DegCod=crs_courses.DegCod" " AND deg_degrees.DegCod=crs_courses.DegCod"
" AND crs_courses.CrsCod=crs_users.CrsCod" " AND crs_courses.CrsCod=crs_users.CrsCod"
" AND crs_users.UsrCod=usr_follow.FollowedCod" " AND crs_users.UsrCod=usr_follow.FollowedCod"
" GROUP BY usr_follow.FollowedCod" " GROUP BY usr_follow.FollowedCod"
" ORDER BY N DESC," " ORDER BY N DESC,"
"usr_follow.FollowedCod" "usr_follow.FollowedCod"
" LIMIT 100", " LIMIT 100",
Gbl.Hierarchy.Cty.CtyCod); Gbl.Hierarchy.Cty.CtyCod);
case HieLvl_INS: case HieLvl_INS:
@ -608,9 +608,9 @@ unsigned Fol_DB_GetRankingFollowers (MYSQL_RES **mysql_res)
" AND deg_degrees.DegCod=crs_courses.DegCod" " AND deg_degrees.DegCod=crs_courses.DegCod"
" AND crs_courses.CrsCod=crs_users.CrsCod" " AND crs_courses.CrsCod=crs_users.CrsCod"
" AND crs_users.UsrCod=usr_follow.FollowedCod" " AND crs_users.UsrCod=usr_follow.FollowedCod"
" GROUP BY usr_follow.FollowedCod" " GROUP BY usr_follow.FollowedCod"
" ORDER BY N DESC," " ORDER BY N DESC,"
"usr_follow.FollowedCod" "usr_follow.FollowedCod"
" LIMIT 100", " LIMIT 100",
Gbl.Hierarchy.Ins.InsCod); Gbl.Hierarchy.Ins.InsCod);
case HieLvl_CTR: case HieLvl_CTR:
@ -626,9 +626,9 @@ unsigned Fol_DB_GetRankingFollowers (MYSQL_RES **mysql_res)
" AND deg_degrees.DegCod=crs_courses.DegCod" " AND deg_degrees.DegCod=crs_courses.DegCod"
" AND crs_courses.CrsCod=crs_users.CrsCod" " AND crs_courses.CrsCod=crs_users.CrsCod"
" AND crs_users.UsrCod=usr_follow.FollowedCod" " AND crs_users.UsrCod=usr_follow.FollowedCod"
" GROUP BY usr_follow.FollowedCod" " GROUP BY usr_follow.FollowedCod"
" ORDER BY N DESC," " ORDER BY N DESC,"
"usr_follow.FollowedCod" "usr_follow.FollowedCod"
" LIMIT 100", " LIMIT 100",
Gbl.Hierarchy.Ctr.CtrCod); Gbl.Hierarchy.Ctr.CtrCod);
case HieLvl_DEG: case HieLvl_DEG:
@ -642,9 +642,9 @@ unsigned Fol_DB_GetRankingFollowers (MYSQL_RES **mysql_res)
" WHERE crs_courses.DegCod=%ld" " WHERE crs_courses.DegCod=%ld"
" AND crs_courses.CrsCod=crs_users.CrsCod" " AND crs_courses.CrsCod=crs_users.CrsCod"
" AND crs_users.UsrCod=usr_follow.FollowedCod" " AND crs_users.UsrCod=usr_follow.FollowedCod"
" GROUP BY usr_follow.FollowedCod" " GROUP BY usr_follow.FollowedCod"
" ORDER BY N DESC," " ORDER BY N DESC,"
"usr_follow.FollowedCod" "usr_follow.FollowedCod"
" LIMIT 100", " LIMIT 100",
Gbl.Hierarchy.Deg.DegCod); Gbl.Hierarchy.Deg.DegCod);
case HieLvl_CRS: case HieLvl_CRS:
@ -656,9 +656,9 @@ unsigned Fol_DB_GetRankingFollowers (MYSQL_RES **mysql_res)
"usr_follow" "usr_follow"
" WHERE crs_users.CrsCod=%ld" " WHERE crs_users.CrsCod=%ld"
" AND crs_users.UsrCod=usr_follow.FollowedCod" " AND crs_users.UsrCod=usr_follow.FollowedCod"
" GROUP BY usr_follow.FollowedCod" " GROUP BY usr_follow.FollowedCod"
" ORDER BY N DESC," " ORDER BY N DESC,"
"usr_follow.FollowedCod" "usr_follow.FollowedCod"
" LIMIT 100", " LIMIT 100",
Gbl.Hierarchy.Crs.CrsCod); Gbl.Hierarchy.Crs.CrsCod);
break; break;

View File

@ -350,7 +350,7 @@ unsigned For_DB_GetThreadAndNumPostsGivenPstCod (MYSQL_RES **mysql_res,long PstC
" (SELECT ThrCod" " (SELECT ThrCod"
" FROM for_posts" " FROM for_posts"
" WHERE PstCod=%ld)" " WHERE PstCod=%ld)"
" GROUP BY ThrCod;", " GROUP BY ThrCod;",
PstCod); PstCod);
} }
@ -368,7 +368,7 @@ unsigned For_DB_GetPublishersInThreadExceptMe (MYSQL_RES **mysql_res,long PstCod
" WHERE ThrCod=(SELECT ThrCod" " WHERE ThrCod=(SELECT ThrCod"
" FROM for_posts" " FROM for_posts"
" WHERE PstCod=%ld)" " WHERE PstCod=%ld)"
" AND UsrCod<>%ld", " AND UsrCod<>%ld",
PstCod, PstCod,
Gbl.Usrs.Me.UsrDat.UsrCod); Gbl.Usrs.Me.UsrDat.UsrCod);
} }

View File

@ -158,8 +158,8 @@ unsigned Gam_DB_GetListGames (MYSQL_RES **mysql_res,Gam_Order_t SelectedOrder)
" ON gam_games.GamCod=mch_matches.GamCod" " ON gam_games.GamCod=mch_matches.GamCod"
" WHERE gam_games.CrsCod=%ld" " WHERE gam_games.CrsCod=%ld"
"%s" "%s"
" GROUP BY gam_games.GamCod" " GROUP BY gam_games.GamCod"
" ORDER BY %s", " ORDER BY %s",
Gbl.Hierarchy.Crs.CrsCod, Gbl.Hierarchy.Crs.CrsCod,
HiddenSubQuery, HiddenSubQuery,
OrderBySubQuery[SelectedOrder]); OrderBySubQuery[SelectedOrder]);
@ -191,10 +191,10 @@ unsigned Gam_DB_GetListAvailableGames (MYSQL_RES **mysql_res)
" ON gam_games.GamCod=mch_matches.GamCod" " ON gam_games.GamCod=mch_matches.GamCod"
" WHERE gam_games.CrsCod=%ld" " WHERE gam_games.CrsCod=%ld"
" AND Hidden='N'" " AND Hidden='N'"
" GROUP BY gam_games.GamCod" " GROUP BY gam_games.GamCod"
" ORDER BY StartTime DESC," " ORDER BY StartTime DESC,"
"EndTime DESC," "EndTime DESC,"
"gam_games.Title DESC", "gam_games.Title DESC",
Gbl.Hierarchy.Crs.CrsCod); Gbl.Hierarchy.Crs.CrsCod);
} }
@ -298,7 +298,7 @@ unsigned Gam_DB_GetNumCoursesWithGames (HieLvl_Level_t Scope)
" AND ctr_centers.CtrCod=deg_degrees.CtrCod" " AND ctr_centers.CtrCod=deg_degrees.CtrCod"
" AND deg_degrees.DegCod=crs_courses.DegCod" " AND deg_degrees.DegCod=crs_courses.DegCod"
" AND crs_courses.CrsCod=gam_games.CrsCod", " AND crs_courses.CrsCod=gam_games.CrsCod",
Gbl.Hierarchy.Ins.InsCod); Gbl.Hierarchy.Cty.CtyCod);
case HieLvl_INS: case HieLvl_INS:
return (unsigned) return (unsigned)
DB_QueryCOUNT ("can not get number of courses with games", DB_QueryCOUNT ("can not get number of courses with games",
@ -665,7 +665,7 @@ double Gam_DB_GetNumQstsPerGame (HieLvl_Level_t Scope)
" FROM gam_games," " FROM gam_games,"
"gam_questions" "gam_questions"
" WHERE gam_games.GamCod=gam_questions.GamCod" " WHERE gam_games.GamCod=gam_questions.GamCod"
" GROUP BY gam_questions.GamCod) AS NumQstsTable"); " GROUP BY gam_questions.GamCod) AS NumQstsTable");
case HieLvl_CTY: case HieLvl_CTY:
return return
DB_QuerySELECTDouble ("can not get number of questions per game", DB_QuerySELECTDouble ("can not get number of questions per game",
@ -683,7 +683,7 @@ double Gam_DB_GetNumQstsPerGame (HieLvl_Level_t Scope)
" AND deg_degrees.DegCod=crs_courses.DegCod" " AND deg_degrees.DegCod=crs_courses.DegCod"
" AND crs_courses.CrsCod=gam_games.CrsCod" " AND crs_courses.CrsCod=gam_games.CrsCod"
" AND gam_games.GamCod=gam_questions.GamCod" " AND gam_games.GamCod=gam_questions.GamCod"
" GROUP BY gam_questions.GamCod) AS NumQstsTable", " GROUP BY gam_questions.GamCod) AS NumQstsTable",
Gbl.Hierarchy.Cty.CtyCod); Gbl.Hierarchy.Cty.CtyCod);
case HieLvl_INS: case HieLvl_INS:
return return
@ -700,7 +700,7 @@ double Gam_DB_GetNumQstsPerGame (HieLvl_Level_t Scope)
" AND deg_degrees.DegCod=crs_courses.DegCod" " AND deg_degrees.DegCod=crs_courses.DegCod"
" AND crs_courses.CrsCod=gam_games.CrsCod" " AND crs_courses.CrsCod=gam_games.CrsCod"
" AND gam_games.GamCod=gam_questions.GamCod" " AND gam_games.GamCod=gam_questions.GamCod"
" GROUP BY gam_questions.GamCod) AS NumQstsTable", " GROUP BY gam_questions.GamCod) AS NumQstsTable",
Gbl.Hierarchy.Ins.InsCod); Gbl.Hierarchy.Ins.InsCod);
case HieLvl_CTR: case HieLvl_CTR:
return return
@ -715,7 +715,7 @@ double Gam_DB_GetNumQstsPerGame (HieLvl_Level_t Scope)
" AND deg_degrees.DegCod=crs_courses.DegCod" " AND deg_degrees.DegCod=crs_courses.DegCod"
" AND crs_courses.CrsCod=gam_games.CrsCod" " AND crs_courses.CrsCod=gam_games.CrsCod"
" AND gam_games.GamCod=gam_questions.GamCod" " AND gam_games.GamCod=gam_questions.GamCod"
" GROUP BY gam_questions.GamCod) AS NumQstsTable", " GROUP BY gam_questions.GamCod) AS NumQstsTable",
Gbl.Hierarchy.Ctr.CtrCod); Gbl.Hierarchy.Ctr.CtrCod);
case HieLvl_DEG: case HieLvl_DEG:
return return
@ -728,7 +728,7 @@ double Gam_DB_GetNumQstsPerGame (HieLvl_Level_t Scope)
" WHERE crs_courses.DegCod=%ld" " WHERE crs_courses.DegCod=%ld"
" AND crs_courses.CrsCod=gam_games.CrsCod" " AND crs_courses.CrsCod=gam_games.CrsCod"
" AND gam_games.GamCod=gam_questions.GamCod" " AND gam_games.GamCod=gam_questions.GamCod"
" GROUP BY gam_questions.GamCod) AS NumQstsTable", " GROUP BY gam_questions.GamCod) AS NumQstsTable",
Gbl.Hierarchy.Deg.DegCod); Gbl.Hierarchy.Deg.DegCod);
case HieLvl_CRS: case HieLvl_CRS:
return return
@ -739,7 +739,7 @@ double Gam_DB_GetNumQstsPerGame (HieLvl_Level_t Scope)
"gam_questions" "gam_questions"
" WHERE gam_games.Cod=%ld" " WHERE gam_games.Cod=%ld"
" AND gam_games.GamCod=gam_questions.GamCod" " AND gam_games.GamCod=gam_questions.GamCod"
" GROUP BY gam_questions.GamCod) AS NumQstsTable", " GROUP BY gam_questions.GamCod) AS NumQstsTable",
Gbl.Hierarchy.Crs.CrsCod); Gbl.Hierarchy.Crs.CrsCod);
default: default:
Err_WrongScopeExit (); Err_WrongScopeExit ();
@ -780,7 +780,7 @@ unsigned Gam_DB_GetNumAnswersOfQstsInGame (MYSQL_RES **mysql_res,long GamCod)
"gam_questions" "gam_questions"
" WHERE gam_questions.GamCod=%ld" " WHERE gam_questions.GamCod=%ld"
" AND gam_questions.QstCod=tst_answers.QstCod" " AND gam_questions.QstCod=tst_answers.QstCod"
" GROUP BY tst_answers.QstCod", " GROUP BY tst_answers.QstCod",
GamCod); GamCod);
} }

View File

@ -424,8 +424,8 @@ unsigned Grp_DB_GetGrpTypesWithGrpsInCrs (MYSQL_RES **mysql_res,long CrsCod)
"grp_groups" "grp_groups"
" WHERE grp_types.CrsCod=%ld" " WHERE grp_types.CrsCod=%ld"
" AND grp_types.GrpTypCod=grp_groups.GrpTypCod" " AND grp_types.GrpTypCod=grp_groups.GrpTypCod"
" GROUP BY grp_types.GrpTypCod" " GROUP BY grp_types.GrpTypCod"
" ORDER BY grp_types.GrpTypName", " ORDER BY grp_types.GrpTypName",
CrsCod); CrsCod);
} }
@ -449,7 +449,7 @@ unsigned Grp_DB_GetAllGrpTypesInCrs (MYSQL_RES **mysql_res,long CrsCod)
"grp_groups" "grp_groups"
" WHERE grp_types.CrsCod=%ld" " WHERE grp_types.CrsCod=%ld"
" AND grp_types.GrpTypCod=grp_groups.GrpTypCod" " AND grp_types.GrpTypCod=grp_groups.GrpTypCod"
" GROUP BY grp_types.GrpTypCod)" " GROUP BY grp_types.GrpTypCod)"
" UNION " " UNION "
"(SELECT GrpTypCod," // row[0] "(SELECT GrpTypCod," // row[0]
"GrpTypName," // row[1] "GrpTypName," // row[1]
@ -463,7 +463,7 @@ unsigned Grp_DB_GetAllGrpTypesInCrs (MYSQL_RES **mysql_res,long CrsCod)
" AND GrpTypCod NOT IN" " AND GrpTypCod NOT IN"
" (SELECT GrpTypCod" " (SELECT GrpTypCod"
" FROM grp_groups))" " FROM grp_groups))"
" ORDER BY GrpTypName", " ORDER BY GrpTypName",
CrsCod, CrsCod,
CrsCod); CrsCod);
} }
@ -954,8 +954,8 @@ bool Grp_DB_CheckIfAvailableGrpTyp (long GrpTypCod)
" AND grp_groups.GrpCod=grp_users.GrpCod" " AND grp_groups.GrpCod=grp_users.GrpCod"
" AND grp_users.UsrCod=crs_users.UsrCod" " AND grp_users.UsrCod=crs_users.UsrCod"
" AND crs_users.Role=%u" // Student " AND crs_users.Role=%u" // Student
" GROUP BY grp_groups.GrpCod" " GROUP BY grp_groups.GrpCod"
" HAVING NumStudents<MaxStudents" // Not full " HAVING NumStudents<MaxStudents" // Not full
") AS available_grp_types_with_stds" ") AS available_grp_types_with_stds"
" UNION " " UNION "

View File

@ -178,8 +178,8 @@ unsigned Ind_DB_GetTableOfCourses (MYSQL_RES **mysql_res,
" AND crs_users.Role=%u" " AND crs_users.Role=%u"
" AND crs_users.UsrCod=usr_data.UsrCod" " AND crs_users.UsrCod=usr_data.UsrCod"
" AND usr_data.DptCod=%ld" " AND usr_data.DptCod=%ld"
" ORDER BY deg_degrees.FullName," " ORDER BY deg_degrees.FullName,"
"crs_courses.FullName", "crs_courses.FullName",
Gbl.Hierarchy.Cty.CtyCod, Gbl.Hierarchy.Cty.CtyCod,
(unsigned) Rol_TCH, (unsigned) Rol_TCH,
Indicators->DptCod); Indicators->DptCod);
@ -198,8 +198,8 @@ unsigned Ind_DB_GetTableOfCourses (MYSQL_RES **mysql_res,
" AND ins_instits.InsCod=ctr_centers.InsCod" " AND ins_instits.InsCod=ctr_centers.InsCod"
" AND ctr_centers.CtrCod=deg_degrees.CtrCod" " AND ctr_centers.CtrCod=deg_degrees.CtrCod"
" AND deg_degrees.DegCod=crs_courses.DegCod" " AND deg_degrees.DegCod=crs_courses.DegCod"
" ORDER BY deg_degrees.FullName," " ORDER BY deg_degrees.FullName,"
"crs_courses.FullName", "crs_courses.FullName",
Gbl.Hierarchy.Cty.CtyCod); Gbl.Hierarchy.Cty.CtyCod);
case HieLvl_INS: case HieLvl_INS:
if (Indicators->DptCod >= 0) // 0 means another department if (Indicators->DptCod >= 0) // 0 means another department
@ -222,8 +222,8 @@ unsigned Ind_DB_GetTableOfCourses (MYSQL_RES **mysql_res,
" AND crs_users.Role=%u" " AND crs_users.Role=%u"
" AND crs_users.UsrCod=usr_data.UsrCod" " AND crs_users.UsrCod=usr_data.UsrCod"
" AND usr_data.DptCod=%ld" " AND usr_data.DptCod=%ld"
" ORDER BY deg_degrees.FullName," " ORDER BY deg_degrees.FullName,"
"crs_courses.FullName", "crs_courses.FullName",
Gbl.Hierarchy.Ins.InsCod, Gbl.Hierarchy.Ins.InsCod,
(unsigned) Rol_TCH, (unsigned) Rol_TCH,
Indicators->DptCod); Indicators->DptCod);
@ -240,8 +240,8 @@ unsigned Ind_DB_GetTableOfCourses (MYSQL_RES **mysql_res,
" WHERE ctr_centers.InsCod=%ld" " WHERE ctr_centers.InsCod=%ld"
" AND ctr_centers.CtrCod=deg_degrees.CtrCod" " AND ctr_centers.CtrCod=deg_degrees.CtrCod"
" AND deg_degrees.DegCod=crs_courses.DegCod" " AND deg_degrees.DegCod=crs_courses.DegCod"
" ORDER BY deg_degrees.FullName," " ORDER BY deg_degrees.FullName,"
"crs_courses.FullName", "crs_courses.FullName",
Gbl.Hierarchy.Ins.InsCod); Gbl.Hierarchy.Ins.InsCod);
case HieLvl_CTR: case HieLvl_CTR:
if (Indicators->DptCod >= 0) // 0 means another department if (Indicators->DptCod >= 0) // 0 means another department
@ -262,8 +262,8 @@ unsigned Ind_DB_GetTableOfCourses (MYSQL_RES **mysql_res,
" AND crs_users.Role=%u" " AND crs_users.Role=%u"
" AND crs_users.UsrCod=usr_data.UsrCod" " AND crs_users.UsrCod=usr_data.UsrCod"
" AND usr_data.DptCod=%ld" " AND usr_data.DptCod=%ld"
" ORDER BY deg_degrees.FullName," " ORDER BY deg_degrees.FullName,"
"crs_courses.FullName", "crs_courses.FullName",
Gbl.Hierarchy.Ctr.CtrCod, Gbl.Hierarchy.Ctr.CtrCod,
(unsigned) Rol_TCH, (unsigned) Rol_TCH,
Indicators->DptCod); Indicators->DptCod);
@ -278,8 +278,8 @@ unsigned Ind_DB_GetTableOfCourses (MYSQL_RES **mysql_res,
"crs_courses" "crs_courses"
" WHERE deg_degrees.CtrCod=%ld" " WHERE deg_degrees.CtrCod=%ld"
" AND deg_degrees.DegCod=crs_courses.DegCod" " AND deg_degrees.DegCod=crs_courses.DegCod"
" ORDER BY deg_degrees.FullName," " ORDER BY deg_degrees.FullName,"
"crs_courses.FullName", "crs_courses.FullName",
Gbl.Hierarchy.Ctr.CtrCod); Gbl.Hierarchy.Ctr.CtrCod);
case HieLvl_DEG: case HieLvl_DEG:
if (Indicators->DptCod >= 0) // 0 means another department if (Indicators->DptCod >= 0) // 0 means another department
@ -300,8 +300,8 @@ unsigned Ind_DB_GetTableOfCourses (MYSQL_RES **mysql_res,
" AND crs_users.Role=%u" " AND crs_users.Role=%u"
" AND crs_users.UsrCod=usr_data.UsrCod" " AND crs_users.UsrCod=usr_data.UsrCod"
" AND usr_data.DptCod=%ld" " AND usr_data.DptCod=%ld"
" ORDER BY deg_degrees.FullName," " ORDER BY deg_degrees.FullName,"
"crs_courses.FullName", "crs_courses.FullName",
Gbl.Hierarchy.Deg.DegCod, Gbl.Hierarchy.Deg.DegCod,
(unsigned) Rol_TCH, (unsigned) Rol_TCH,
Indicators->DptCod); Indicators->DptCod);
@ -316,8 +316,8 @@ unsigned Ind_DB_GetTableOfCourses (MYSQL_RES **mysql_res,
"crs_courses" "crs_courses"
" WHERE deg_degrees.DegCod=%ld" " WHERE deg_degrees.DegCod=%ld"
" AND deg_degrees.DegCod=crs_courses.DegCod" " AND deg_degrees.DegCod=crs_courses.DegCod"
" ORDER BY deg_degrees.FullName," " ORDER BY deg_degrees.FullName,"
"crs_courses.FullName", "crs_courses.FullName",
Gbl.Hierarchy.Deg.DegCod); Gbl.Hierarchy.Deg.DegCod);
case HieLvl_CRS: case HieLvl_CRS:
if (Indicators->DptCod >= 0) // 0 means another department if (Indicators->DptCod >= 0) // 0 means another department
@ -339,8 +339,8 @@ unsigned Ind_DB_GetTableOfCourses (MYSQL_RES **mysql_res,
" AND crs_users.Role=%u" " AND crs_users.Role=%u"
" AND crs_users.UsrCod=usr_data.UsrCod" " AND crs_users.UsrCod=usr_data.UsrCod"
" AND usr_data.DptCod=%ld" " AND usr_data.DptCod=%ld"
" ORDER BY deg_degrees.FullName," " ORDER BY deg_degrees.FullName,"
"crs_courses.FullName", "crs_courses.FullName",
Gbl.Hierarchy.Crs.CrsCod, Gbl.Hierarchy.Crs.CrsCod,
Gbl.Hierarchy.Crs.CrsCod, Gbl.Hierarchy.Crs.CrsCod,
(unsigned) Rol_TCH, (unsigned) Rol_TCH,
@ -356,8 +356,8 @@ unsigned Ind_DB_GetTableOfCourses (MYSQL_RES **mysql_res,
"crs_courses" "crs_courses"
" WHERE crs_courses.CrsCod=%ld" " WHERE crs_courses.CrsCod=%ld"
" AND deg_degrees.DegCod=crs_courses.DegCod" " AND deg_degrees.DegCod=crs_courses.DegCod"
" ORDER BY deg_degrees.FullName," " ORDER BY deg_degrees.FullName,"
"crs_courses.FullName", "crs_courses.FullName",
Gbl.Hierarchy.Crs.CrsCod); Gbl.Hierarchy.Crs.CrsCod);
default: default:
Err_WrongScopeExit (); Err_WrongScopeExit ();

View File

@ -222,8 +222,8 @@ unsigned Ins_DB_GetAllInsWithPendingCtr (MYSQL_RES **mysql_res)
"ins_instits" "ins_instits"
" WHERE (ctr_centers.Status & %u)<>0" " WHERE (ctr_centers.Status & %u)<>0"
" AND ctr_centers.InsCod=ins_instits.InsCod" " AND ctr_centers.InsCod=ins_instits.InsCod"
" GROUP BY ctr_centers.InsCod" " GROUP BY ctr_centers.InsCod"
" ORDER BY ins_instits.ShortName", " ORDER BY ins_instits.ShortName",
(unsigned) Hie_STATUS_BIT_PENDING); (unsigned) Hie_STATUS_BIT_PENDING);
} }
@ -244,8 +244,8 @@ unsigned Ins_DB_GetInsWithPendingCtrsAdminByMe (MYSQL_RES **mysql_res)
" AND ctr_centers.InsCod=ins_admin.InsCod" " AND ctr_centers.InsCod=ins_admin.InsCod"
" AND ins_admin.UsrCod=%ld" " AND ins_admin.UsrCod=%ld"
" AND ctr_centers.InsCod=ins_instits.InsCod" " AND ctr_centers.InsCod=ins_instits.InsCod"
" GROUP BY ctr_centers.InsCod" " GROUP BY ctr_centers.InsCod"
" ORDER BY ins_instits.ShortName", " ORDER BY ins_instits.ShortName",
(unsigned) Hie_STATUS_BIT_PENDING, (unsigned) Hie_STATUS_BIT_PENDING,
Gbl.Usrs.Me.UsrDat.UsrCod); Gbl.Usrs.Me.UsrDat.UsrCod);
} }
@ -317,7 +317,7 @@ unsigned Ins_DB_GetFullListOfInssInCty (MYSQL_RES **mysql_res,long CtyCod)
"usr_data" "usr_data"
" WHERE ins_instits.CtyCod=%ld" " WHERE ins_instits.CtyCod=%ld"
" AND ins_instits.InsCod=usr_data.InsCod" " AND ins_instits.InsCod=usr_data.InsCod"
" GROUP BY ins_instits.InsCod)" " GROUP BY ins_instits.InsCod)"
" UNION " " UNION "
"(SELECT InsCod," // row[0] "(SELECT InsCod," // row[0]
"CtyCod," // row[1] "CtyCod," // row[1]
@ -353,8 +353,8 @@ unsigned Ins_DB_GetInssOrderedByNumCtrs (MYSQL_RES **mysql_res)
"SELECT InsCod," // row[0] "SELECT InsCod," // row[0]
"COUNT(*) AS N" // row[1] "COUNT(*) AS N" // row[1]
" FROM ctr_centers" " FROM ctr_centers"
" GROUP BY InsCod" " GROUP BY InsCod"
" ORDER BY N DESC"); " ORDER BY N DESC");
case HieLvl_CTY: case HieLvl_CTY:
return (unsigned) return (unsigned)
DB_QuerySELECT (mysql_res,"can not get institutions", DB_QuerySELECT (mysql_res,"can not get institutions",
@ -364,8 +364,8 @@ unsigned Ins_DB_GetInssOrderedByNumCtrs (MYSQL_RES **mysql_res)
"ctr_centers" "ctr_centers"
" WHERE ins_instits.CtyCod=%ld" " WHERE ins_instits.CtyCod=%ld"
" AND ins_instits.InsCod=ctr_centers.InsCod" " AND ins_instits.InsCod=ctr_centers.InsCod"
" GROUP BY ctr_centers.InsCod" " GROUP BY ctr_centers.InsCod"
" ORDER BY N DESC", " ORDER BY N DESC",
Gbl.Hierarchy.Cty.CtyCod); Gbl.Hierarchy.Cty.CtyCod);
case HieLvl_INS: case HieLvl_INS:
case HieLvl_CTR: case HieLvl_CTR:
@ -377,7 +377,7 @@ unsigned Ins_DB_GetInssOrderedByNumCtrs (MYSQL_RES **mysql_res)
"COUNT(*) AS N" // row[1] "COUNT(*) AS N" // row[1]
" FROM ctr_centers" " FROM ctr_centers"
" WHERE InsCod=%ld" " WHERE InsCod=%ld"
" GROUP BY InsCod", " GROUP BY InsCod",
Gbl.Hierarchy.Ins.InsCod); Gbl.Hierarchy.Ins.InsCod);
default: default:
Err_WrongScopeExit (); Err_WrongScopeExit ();
@ -401,8 +401,8 @@ unsigned Ins_DB_GetInssOrderedByNumDegs (MYSQL_RES **mysql_res)
" FROM ctr_centers," " FROM ctr_centers,"
"deg_degrees" "deg_degrees"
" WHERE ctr_centers.CtrCod=deg_degrees.CtrCod" " WHERE ctr_centers.CtrCod=deg_degrees.CtrCod"
" GROUP BY InsCod" " GROUP BY InsCod"
" ORDER BY N DESC"); " ORDER BY N DESC");
case HieLvl_CTY: case HieLvl_CTY:
return (unsigned) return (unsigned)
DB_QuerySELECT (mysql_res,"can not get institutions", DB_QuerySELECT (mysql_res,"can not get institutions",
@ -414,8 +414,8 @@ unsigned Ins_DB_GetInssOrderedByNumDegs (MYSQL_RES **mysql_res)
" WHERE ins_instits.CtyCod=%ld" " WHERE ins_instits.CtyCod=%ld"
" AND ins_instits.InsCod=ctr_centers.InsCod" " AND ins_instits.InsCod=ctr_centers.InsCod"
" AND ctr_centers.CtrCod=deg_degrees.CtrCod" " AND ctr_centers.CtrCod=deg_degrees.CtrCod"
" GROUP BY ctr_centers.InsCod" " GROUP BY ctr_centers.InsCod"
" ORDER BY N DESC", " ORDER BY N DESC",
Gbl.Hierarchy.Cty.CtyCod); Gbl.Hierarchy.Cty.CtyCod);
case HieLvl_INS: case HieLvl_INS:
case HieLvl_CTR: case HieLvl_CTR:
@ -429,8 +429,8 @@ unsigned Ins_DB_GetInssOrderedByNumDegs (MYSQL_RES **mysql_res)
"deg_degrees" "deg_degrees"
" WHERE ctr_centers.InsCod=%ld" " WHERE ctr_centers.InsCod=%ld"
" AND ctr_centers.CtrCod=deg_degrees.CtrCod" " AND ctr_centers.CtrCod=deg_degrees.CtrCod"
" GROUP BY ctr_centers.InsCod" " GROUP BY ctr_centers.InsCod"
" ORDER BY N DESC", " ORDER BY N DESC",
Gbl.Hierarchy.Ins.InsCod); Gbl.Hierarchy.Ins.InsCod);
default: default:
Err_WrongScopeExit (); Err_WrongScopeExit ();
@ -456,8 +456,8 @@ unsigned Ins_DB_GetInssOrderedByNumCrss (MYSQL_RES **mysql_res)
"crs_courses" "crs_courses"
" WHERE ctr_centers.CtrCod=deg_degrees.CtrCod" " WHERE ctr_centers.CtrCod=deg_degrees.CtrCod"
" AND deg_degrees.DegCod=crs_courses.DegCod" " AND deg_degrees.DegCod=crs_courses.DegCod"
" GROUP BY InsCod" " GROUP BY InsCod"
" ORDER BY N DESC"); " ORDER BY N DESC");
case HieLvl_CTY: case HieLvl_CTY:
return (unsigned) return (unsigned)
DB_QuerySELECT (mysql_res,"can not get institutions", DB_QuerySELECT (mysql_res,"can not get institutions",
@ -471,8 +471,8 @@ unsigned Ins_DB_GetInssOrderedByNumCrss (MYSQL_RES **mysql_res)
" AND ins_instits.InsCod=ctr_centers.InsCod" " AND ins_instits.InsCod=ctr_centers.InsCod"
" AND ctr_centers.CtrCod=deg_degrees.CtrCod" " AND ctr_centers.CtrCod=deg_degrees.CtrCod"
" AND deg_degrees.DegCod=crs_courses.DegCod" " AND deg_degrees.DegCod=crs_courses.DegCod"
" GROUP BY ctr_centers.InsCod" " GROUP BY ctr_centers.InsCod"
" ORDER BY N DESC", " ORDER BY N DESC",
Gbl.Hierarchy.Cty.CtyCod); Gbl.Hierarchy.Cty.CtyCod);
case HieLvl_INS: case HieLvl_INS:
case HieLvl_CTR: case HieLvl_CTR:
@ -488,8 +488,8 @@ unsigned Ins_DB_GetInssOrderedByNumCrss (MYSQL_RES **mysql_res)
" WHERE ctr_centers.InsCod=%ld" " WHERE ctr_centers.InsCod=%ld"
" AND ctr_centers.CtrCod=deg_degrees.CtrCod" " AND ctr_centers.CtrCod=deg_degrees.CtrCod"
" AND deg_degrees.DegCod=crs_courses.DegCod" " AND deg_degrees.DegCod=crs_courses.DegCod"
" GROUP BY ctr_centers.InsCod" " GROUP BY ctr_centers.InsCod"
" ORDER BY N DESC", " ORDER BY N DESC",
Gbl.Hierarchy.Ins.InsCod); Gbl.Hierarchy.Ins.InsCod);
default: default:
Err_WrongScopeExit (); Err_WrongScopeExit ();
@ -518,8 +518,8 @@ unsigned Ins_DB_GetInssOrderedByNumUsrsInCrss (MYSQL_RES **mysql_res)
" WHERE ctr_centers.CtrCod=deg_degrees.CtrCod" " WHERE ctr_centers.CtrCod=deg_degrees.CtrCod"
" AND deg_degrees.DegCod=crs_courses.DegCod" " AND deg_degrees.DegCod=crs_courses.DegCod"
" AND crs_courses.CrsCod=crs_users.CrsCod" " AND crs_courses.CrsCod=crs_users.CrsCod"
" GROUP BY InsCod" " GROUP BY InsCod"
" ORDER BY N DESC"); " ORDER BY N DESC");
case HieLvl_CTY: case HieLvl_CTY:
return (unsigned) return (unsigned)
DB_QuerySELECT (mysql_res,"can not get institutions", DB_QuerySELECT (mysql_res,"can not get institutions",
@ -535,8 +535,8 @@ unsigned Ins_DB_GetInssOrderedByNumUsrsInCrss (MYSQL_RES **mysql_res)
" AND ctr_centers.CtrCod=deg_degrees.CtrCod" " AND ctr_centers.CtrCod=deg_degrees.CtrCod"
" AND deg_degrees.DegCod=crs_courses.DegCod" " AND deg_degrees.DegCod=crs_courses.DegCod"
" AND crs_courses.CrsCod=crs_users.CrsCod" " AND crs_courses.CrsCod=crs_users.CrsCod"
" GROUP BY ctr_centers.InsCod" " GROUP BY ctr_centers.InsCod"
" ORDER BY N DESC", " ORDER BY N DESC",
Gbl.Hierarchy.Cty.CtyCod); Gbl.Hierarchy.Cty.CtyCod);
case HieLvl_INS: case HieLvl_INS:
case HieLvl_CTR: case HieLvl_CTR:
@ -554,8 +554,8 @@ unsigned Ins_DB_GetInssOrderedByNumUsrsInCrss (MYSQL_RES **mysql_res)
" AND ctr_centers.CtrCod=deg_degrees.CtrCod" " AND ctr_centers.CtrCod=deg_degrees.CtrCod"
" AND deg_degrees.DegCod=crs_courses.DegCod" " AND deg_degrees.DegCod=crs_courses.DegCod"
" AND crs_courses.CrsCod=crs_users.CrsCod" " AND crs_courses.CrsCod=crs_users.CrsCod"
" GROUP BY ctr_centers.InsCod" " GROUP BY ctr_centers.InsCod"
" ORDER BY N DESC", " ORDER BY N DESC",
Gbl.Hierarchy.Ins.InsCod); Gbl.Hierarchy.Ins.InsCod);
default: default:
Err_WrongScopeExit (); Err_WrongScopeExit ();
@ -578,8 +578,8 @@ unsigned Ins_DB_GetInssOrderedByNumUsrsWhoClaimToBelongToThem (MYSQL_RES **mysql
"COUNT(*) AS N" // row[1] "COUNT(*) AS N" // row[1]
" FROM usr_data" " FROM usr_data"
" WHERE InsCod>0" " WHERE InsCod>0"
" GROUP BY InsCod" " GROUP BY InsCod"
" ORDER BY N DESC"); " ORDER BY N DESC");
case HieLvl_CTY: case HieLvl_CTY:
return (unsigned) return (unsigned)
DB_QuerySELECT (mysql_res,"can not get institutions", DB_QuerySELECT (mysql_res,"can not get institutions",
@ -588,8 +588,8 @@ unsigned Ins_DB_GetInssOrderedByNumUsrsWhoClaimToBelongToThem (MYSQL_RES **mysql
" FROM ins_instits,usr_data" " FROM ins_instits,usr_data"
" WHERE ins_instits.CtyCod=%ld" " WHERE ins_instits.CtyCod=%ld"
" AND ins_instits.InsCod=usr_data.InsCod" " AND ins_instits.InsCod=usr_data.InsCod"
" GROUP BY usr_data.InsCod" " GROUP BY usr_data.InsCod"
" ORDER BY N DESC", " ORDER BY N DESC",
Gbl.Hierarchy.Cty.CtyCod); Gbl.Hierarchy.Cty.CtyCod);
case HieLvl_INS: case HieLvl_INS:
case HieLvl_CTR: case HieLvl_CTR:
@ -601,8 +601,8 @@ unsigned Ins_DB_GetInssOrderedByNumUsrsWhoClaimToBelongToThem (MYSQL_RES **mysql
"COUNT(*) AS N" // row[1] "COUNT(*) AS N" // row[1]
" FROM usr_data" " FROM usr_data"
" WHERE InsCod=%ld" " WHERE InsCod=%ld"
" GROUP BY InsCod" " GROUP BY InsCod"
" ORDER BY N DESC", " ORDER BY N DESC",
Gbl.Hierarchy.Ins.InsCod); Gbl.Hierarchy.Ins.InsCod);
default: default:
Err_WrongScopeExit (); Err_WrongScopeExit ();
@ -767,8 +767,8 @@ unsigned Ins_DB_GetInssFromUsr (MYSQL_RES **mysql_res,long UsrCod,long CtyCod)
" AND deg_degrees.CtrCod=ctr_centers.CtrCod" " AND deg_degrees.CtrCod=ctr_centers.CtrCod"
" AND ctr_centers.InsCod=ins_instits.InsCod" " AND ctr_centers.InsCod=ins_instits.InsCod"
" AND ins_instits.CtyCod=%ld" " AND ins_instits.CtyCod=%ld"
" GROUP BY ins_instits.InsCod" " GROUP BY ins_instits.InsCod"
" ORDER BY ins_instits.ShortName", " ORDER BY ins_instits.ShortName",
UsrCod, UsrCod,
CtyCod); CtyCod);
else else
@ -786,8 +786,8 @@ unsigned Ins_DB_GetInssFromUsr (MYSQL_RES **mysql_res,long UsrCod,long CtyCod)
" AND crs_courses.DegCod=deg_degrees.DegCod" " AND crs_courses.DegCod=deg_degrees.DegCod"
" AND deg_degrees.CtrCod=ctr_centers.CtrCod" " AND deg_degrees.CtrCod=ctr_centers.CtrCod"
" AND ctr_centers.InsCod=ins_instits.InsCod" " AND ctr_centers.InsCod=ins_instits.InsCod"
" GROUP BY ins_instits.InsCod" " GROUP BY ins_instits.InsCod"
" ORDER BY ins_instits.ShortName", " ORDER BY ins_instits.ShortName",
UsrCod); UsrCod);
} }

View File

@ -220,8 +220,8 @@ unsigned Log_DB_GetMyClicksGroupedByAction (MYSQL_RES **mysql_res,
" FROM log" " FROM log"
" WHERE ClickTime>=FROM_UNIXTIME(%ld)" " WHERE ClickTime>=FROM_UNIXTIME(%ld)"
" AND UsrCod=%ld" " AND UsrCod=%ld"
" GROUP BY ActCod" " GROUP BY ActCod"
" ORDER BY N DESC" " ORDER BY N DESC"
" LIMIT %u", " LIMIT %u",
(long) FirstClickTimeUTC, (long) FirstClickTimeUTC,
Gbl.Usrs.Me.UsrDat.UsrCod, Gbl.Usrs.Me.UsrDat.UsrCod,
@ -247,7 +247,7 @@ unsigned Log_DB_GetMyMaxHitsPerYear (MYSQL_RES **mysql_res,
" WHERE ClickTime>=FROM_UNIXTIME(%ld)" " WHERE ClickTime>=FROM_UNIXTIME(%ld)"
" AND UsrCod=%ld" " AND UsrCod=%ld"
" AND CrsCod<=0" " AND CrsCod<=0"
" GROUP BY Year" " GROUP BY Year"
// --------------------------------------------------------- // ---------------------------------------------------------
" UNION " " UNION "
// Clicks as student, non-editing teacher or teacher in courses // Clicks as student, non-editing teacher or teacher in courses
@ -261,9 +261,9 @@ unsigned Log_DB_GetMyMaxHitsPerYear (MYSQL_RES **mysql_res,
" AND Role>=%u" // Student " AND Role>=%u" // Student
" AND Role<=%u" // Teacher " AND Role<=%u" // Teacher
" AND CrsCod>0" " AND CrsCod>0"
" GROUP BY CrsCod," " GROUP BY CrsCod,"
"Year," "Year,"
"Role" "Role"
// --------------------------------------------------------- // ---------------------------------------------------------
") AS hits_per_crs_year", ") AS hits_per_crs_year",
(unsigned) Rol_UNK, (unsigned) Rol_UNK,
@ -293,12 +293,13 @@ unsigned Log_DB_GetMyCrssAndHitsPerCrs (MYSQL_RES **mysql_res,Rol_Role_t Role)
" ON my_courses.CrsCod=log.CrsCod" " ON my_courses.CrsCod=log.CrsCod"
" WHERE log.UsrCod=%ld" " WHERE log.UsrCod=%ld"
" AND log.Role=%u" " AND log.Role=%u"
" GROUP BY my_courses.CrsCod" " GROUP BY my_courses.CrsCod"
" ORDER BY N DESC," " ORDER BY N DESC,"
"my_courses.CrsCod DESC", "my_courses.CrsCod DESC",
Gbl.Usrs.Me.UsrDat.UsrCod,(unsigned) Role, Gbl.Usrs.Me.UsrDat.UsrCod,(unsigned) Role,
Gbl.Usrs.Me.UsrDat.UsrCod,(unsigned) Role); Gbl.Usrs.Me.UsrDat.UsrCod,(unsigned) Role);
} }
/*****************************************************************************/ /*****************************************************************************/
/************************** Get my historic courses **************************/ /************************** Get my historic courses **************************/
/*****************************************************************************/ /*****************************************************************************/
@ -314,7 +315,7 @@ unsigned Log_DB_GetMyHistoricCrss (MYSQL_RES **mysql_res,
" WHERE UsrCod=%ld" " WHERE UsrCod=%ld"
" AND Role=%u" " AND Role=%u"
" AND CrsCod>0" " AND CrsCod>0"
" GROUP BY CrsCod" " GROUP BY CrsCod"
" HAVING N>%u" " HAVING N>%u"
" ORDER BY N DESC", " ORDER BY N DESC",
Gbl.Usrs.Me.UsrDat.UsrCod, Gbl.Usrs.Me.UsrDat.UsrCod,
@ -350,10 +351,10 @@ unsigned Log_DB_GetMyHitsPerYear (MYSQL_RES **mysql_res,
" FROM log" " FROM log"
" WHERE ClickTime>=FROM_UNIXTIME(%ld)" " WHERE ClickTime>=FROM_UNIXTIME(%ld)"
" AND UsrCod=%ld" " AND UsrCod=%ld"
"%s" "%s"
"%s" "%s"
" GROUP BY Year" " GROUP BY Year"
" ORDER BY Year DESC", " ORDER BY Year DESC",
(long) FirstClickTimeUTC, (long) FirstClickTimeUTC,
Gbl.Usrs.Me.UsrDat.UsrCod, Gbl.Usrs.Me.UsrDat.UsrCod,
SubQueryCrs, SubQueryCrs,

View File

@ -311,7 +311,7 @@ void Mai_DB_CreateTmpTables (void)
" SELECT SUBSTRING_INDEX(E_mail,'@',-1) AS Domain," " SELECT SUBSTRING_INDEX(E_mail,'@',-1) AS Domain,"
"COUNT(*) as N" "COUNT(*) as N"
" FROM usr_emails" " FROM usr_emails"
" GROUP BY Domain"); " GROUP BY Domain");
DB_CreateTmpTable ("CREATE TEMPORARY TABLE T2 ENGINE=MEMORY" DB_CreateTmpTable ("CREATE TEMPORARY TABLE T2 ENGINE=MEMORY"
" SELECT *" " SELECT *"

View File

@ -1240,8 +1240,8 @@ unsigned Mch_DB_GetMaxUsrsPerScore (long MchCod)
" FROM (SELECT COUNT(*) AS NumUsrs" " FROM (SELECT COUNT(*) AS NumUsrs"
" FROM mch_results" " FROM mch_results"
" WHERE MchCod=%ld" " WHERE MchCod=%ld"
" GROUP BY Score" " GROUP BY Score"
" ORDER BY Score) AS Scores", " ORDER BY Score) AS Scores",
MchCod); MchCod);
} }
@ -1257,7 +1257,7 @@ unsigned Mch_DB_GetNumUsrsPerScore (MYSQL_RES **mysql_res,long MchCod)
"COUNT(*) AS NumUsrs" // row[1] "COUNT(*) AS NumUsrs" // row[1]
" FROM mch_results" " FROM mch_results"
" WHERE MchCod=%ld" " WHERE MchCod=%ld"
" GROUP BY Score" " GROUP BY Score"
" ORDER BY Score DESC", " ORDER BY Score DESC",
MchCod); MchCod);
} }

View File

@ -129,9 +129,9 @@ unsigned Net_DB_GetWebAndSocialNetworksStats (MYSQL_RES **mysql_res)
"SELECT Web," // row[0] "SELECT Web," // row[0]
"COUNT(*) AS N" // row[1] "COUNT(*) AS N" // row[1]
" FROM usr_webs" " FROM usr_webs"
" GROUP BY Web" " GROUP BY Web"
" ORDER BY N DESC," " ORDER BY N DESC,"
"Web"); "Web");
case HieLvl_CTY: case HieLvl_CTY:
return (unsigned) return (unsigned)
DB_QuerySELECT (mysql_res,"can not get number of users" DB_QuerySELECT (mysql_res,"can not get number of users"
@ -150,9 +150,9 @@ unsigned Net_DB_GetWebAndSocialNetworksStats (MYSQL_RES **mysql_res)
" AND deg_degrees.DegCod=crs_courses.DegCod" " AND deg_degrees.DegCod=crs_courses.DegCod"
" AND crs_courses.CrsCod=crs_users.CrsCod" " AND crs_courses.CrsCod=crs_users.CrsCod"
" AND crs_users.UsrCod=usr_webs.UsrCod" " AND crs_users.UsrCod=usr_webs.UsrCod"
" GROUP BY usr_webs.Web" " GROUP BY usr_webs.Web"
" ORDER BY N DESC," " ORDER BY N DESC,"
"usr_webs.Web", "usr_webs.Web",
Gbl.Hierarchy.Cty.CtyCod); Gbl.Hierarchy.Cty.CtyCod);
case HieLvl_INS: case HieLvl_INS:
return (unsigned) return (unsigned)
@ -170,9 +170,9 @@ unsigned Net_DB_GetWebAndSocialNetworksStats (MYSQL_RES **mysql_res)
" AND deg_degrees.DegCod=crs_courses.DegCod" " AND deg_degrees.DegCod=crs_courses.DegCod"
" AND crs_courses.CrsCod=crs_users.CrsCod" " AND crs_courses.CrsCod=crs_users.CrsCod"
" AND crs_users.UsrCod=usr_webs.UsrCod" " AND crs_users.UsrCod=usr_webs.UsrCod"
" GROUP BY usr_webs.Web" " GROUP BY usr_webs.Web"
" ORDER BY N DESC," " ORDER BY N DESC,"
"usr_webs.Web", "usr_webs.Web",
Gbl.Hierarchy.Ins.InsCod); Gbl.Hierarchy.Ins.InsCod);
case HieLvl_CTR: case HieLvl_CTR:
return (unsigned) return (unsigned)
@ -188,9 +188,9 @@ unsigned Net_DB_GetWebAndSocialNetworksStats (MYSQL_RES **mysql_res)
" AND deg_degrees.DegCod=crs_courses.DegCod" " AND deg_degrees.DegCod=crs_courses.DegCod"
" AND crs_courses.CrsCod=crs_users.CrsCod" " AND crs_courses.CrsCod=crs_users.CrsCod"
" AND crs_users.UsrCod=usr_webs.UsrCod" " AND crs_users.UsrCod=usr_webs.UsrCod"
" GROUP BY usr_webs.Web" " GROUP BY usr_webs.Web"
" ORDER BY N DESC," " ORDER BY N DESC,"
"usr_webs.Web", "usr_webs.Web",
Gbl.Hierarchy.Ctr.CtrCod); Gbl.Hierarchy.Ctr.CtrCod);
case HieLvl_DEG: case HieLvl_DEG:
return (unsigned) return (unsigned)
@ -204,9 +204,9 @@ unsigned Net_DB_GetWebAndSocialNetworksStats (MYSQL_RES **mysql_res)
" WHERE crs_courses.DegCod=%ld" " WHERE crs_courses.DegCod=%ld"
" AND crs_courses.CrsCod=crs_users.CrsCod" " AND crs_courses.CrsCod=crs_users.CrsCod"
" AND crs_users.UsrCod=usr_webs.UsrCod" " AND crs_users.UsrCod=usr_webs.UsrCod"
" GROUP BY usr_webs.Web" " GROUP BY usr_webs.Web"
" ORDER BY N DESC," " ORDER BY N DESC,"
"usr_webs.Web", "usr_webs.Web",
Gbl.Hierarchy.Deg.DegCod); Gbl.Hierarchy.Deg.DegCod);
case HieLvl_CRS: case HieLvl_CRS:
return (unsigned) return (unsigned)
@ -218,9 +218,9 @@ unsigned Net_DB_GetWebAndSocialNetworksStats (MYSQL_RES **mysql_res)
"usr_webs" "usr_webs"
" WHERE crs_users.CrsCod=%ld" " WHERE crs_users.CrsCod=%ld"
" AND crs_users.UsrCod=usr_webs.UsrCod" " AND crs_users.UsrCod=usr_webs.UsrCod"
" GROUP BY usr_webs.Web" " GROUP BY usr_webs.Web"
" ORDER BY N DESC," " ORDER BY N DESC,"
"usr_webs.Web", "usr_webs.Web",
Gbl.Hierarchy.Crs.CrsCod); Gbl.Hierarchy.Crs.CrsCod);
break; break;
default: default:

View File

@ -90,7 +90,7 @@ unsigned Plc_DB_GetListPlaces (MYSQL_RES **mysql_res,Plc_Order_t SelectedOrder)
" WHERE plc_places.InsCod=%ld" " WHERE plc_places.InsCod=%ld"
" AND plc_places.PlcCod=ctr_centers.PlcCod" " AND plc_places.PlcCod=ctr_centers.PlcCod"
" AND ctr_centers.InsCod=%ld" " AND ctr_centers.InsCod=%ld"
" GROUP BY plc_places.PlcCod)" " GROUP BY plc_places.PlcCod)"
" UNION " " UNION "
"(SELECT PlcCod," "(SELECT PlcCod,"
"ShortName," "ShortName,"
@ -103,7 +103,7 @@ unsigned Plc_DB_GetListPlaces (MYSQL_RES **mysql_res,Plc_Order_t SelectedOrder)
"PlcCod" "PlcCod"
" FROM ctr_centers" " FROM ctr_centers"
" WHERE InsCod=%ld))" " WHERE InsCod=%ld))"
" ORDER BY %s", " ORDER BY %s",
Gbl.Hierarchy.Ins.InsCod, Gbl.Hierarchy.Ins.InsCod,
Gbl.Hierarchy.Ins.InsCod, Gbl.Hierarchy.Ins.InsCod,
Gbl.Hierarchy.Ins.InsCod, Gbl.Hierarchy.Ins.InsCod,
@ -127,7 +127,7 @@ unsigned Plc_DB_GetDataOfPlaceByCod (MYSQL_RES **mysql_res,long PlcCod)
" WHERE plc_places.PlcCod=%ld" " WHERE plc_places.PlcCod=%ld"
" AND plc_places.PlcCod=ctr_centers.PlcCod" " AND plc_places.PlcCod=ctr_centers.PlcCod"
" AND ctr_centers.PlcCod=%ld" " AND ctr_centers.PlcCod=%ld"
" GROUP BY plc_places.PlcCod)" " GROUP BY plc_places.PlcCod)"
" UNION " " UNION "
"(SELECT ShortName," // row[0] "(SELECT ShortName," // row[0]
"FullName," // row[1] "FullName," // row[1]

View File

@ -273,8 +273,8 @@ unsigned Prf_DB_GetRankingFigure (MYSQL_RES **mysql_res,const char *FieldName)
" AND UsrCod NOT IN" " AND UsrCod NOT IN"
" (SELECT UsrCod" " (SELECT UsrCod"
" FROM usr_banned)" " FROM usr_banned)"
" ORDER BY %s DESC," " ORDER BY %s DESC,"
"UsrCod" "UsrCod"
" LIMIT 100", " LIMIT 100",
FieldName, FieldName,
FieldName, FieldName,
@ -301,8 +301,8 @@ unsigned Prf_DB_GetRankingFigure (MYSQL_RES **mysql_res,const char *FieldName)
" AND usr_figures.UsrCod NOT IN" " AND usr_figures.UsrCod NOT IN"
" (SELECT UsrCod" " (SELECT UsrCod"
" FROM usr_banned)" " FROM usr_banned)"
" ORDER BY usr_figures.%s DESC," " ORDER BY usr_figures.%s DESC,"
"usr_figures.UsrCod" "usr_figures.UsrCod"
" LIMIT 100", " LIMIT 100",
FieldName, FieldName,
Gbl.Hierarchy.Cty.CtyCod, Gbl.Hierarchy.Cty.CtyCod,
@ -328,8 +328,8 @@ unsigned Prf_DB_GetRankingFigure (MYSQL_RES **mysql_res,const char *FieldName)
" AND usr_figures.UsrCod NOT IN" " AND usr_figures.UsrCod NOT IN"
" (SELECT UsrCod" " (SELECT UsrCod"
" FROM usr_banned)" " FROM usr_banned)"
" ORDER BY usr_figures.%s DESC," " ORDER BY usr_figures.%s DESC,"
"usr_figures.UsrCod" "usr_figures.UsrCod"
" LIMIT 100", " LIMIT 100",
FieldName, FieldName,
Gbl.Hierarchy.Ins.InsCod, Gbl.Hierarchy.Ins.InsCod,
@ -353,8 +353,8 @@ unsigned Prf_DB_GetRankingFigure (MYSQL_RES **mysql_res,const char *FieldName)
" AND usr_figures.UsrCod NOT IN" " AND usr_figures.UsrCod NOT IN"
" (SELECT UsrCod" " (SELECT UsrCod"
" FROM usr_banned)" " FROM usr_banned)"
" ORDER BY usr_figures.%s DESC," " ORDER BY usr_figures.%s DESC,"
"usr_figures.UsrCod" "usr_figures.UsrCod"
" LIMIT 100", " LIMIT 100",
FieldName, FieldName,
Gbl.Hierarchy.Ctr.CtrCod, Gbl.Hierarchy.Ctr.CtrCod,
@ -376,8 +376,8 @@ unsigned Prf_DB_GetRankingFigure (MYSQL_RES **mysql_res,const char *FieldName)
" AND usr_figures.UsrCod NOT IN" " AND usr_figures.UsrCod NOT IN"
" (SELECT UsrCod" " (SELECT UsrCod"
" FROM usr_banned)" " FROM usr_banned)"
" ORDER BY usr_figures.%s DESC," " ORDER BY usr_figures.%s DESC,"
"usr_figures.UsrCod" "usr_figures.UsrCod"
" LIMIT 100", " LIMIT 100",
FieldName, FieldName,
Gbl.Hierarchy.Deg.DegCod, Gbl.Hierarchy.Deg.DegCod,
@ -397,8 +397,8 @@ unsigned Prf_DB_GetRankingFigure (MYSQL_RES **mysql_res,const char *FieldName)
" AND usr_figures.UsrCod NOT IN" " AND usr_figures.UsrCod NOT IN"
" (SELECT UsrCod" " (SELECT UsrCod"
" FROM usr_banned)" " FROM usr_banned)"
" ORDER BY usr_figures.%s DESC," " ORDER BY usr_figures.%s DESC,"
"usr_figures.UsrCod" "usr_figures.UsrCod"
" LIMIT 100", " LIMIT 100",
FieldName, FieldName,
Gbl.Hierarchy.Crs.CrsCod, Gbl.Hierarchy.Crs.CrsCod,
@ -430,8 +430,8 @@ unsigned Prf_DB_GetRankingClicksPerDay (MYSQL_RES **mysql_res)
" AND UsrCod NOT IN" " AND UsrCod NOT IN"
" (SELECT UsrCod" " (SELECT UsrCod"
" FROM usr_banned)" " FROM usr_banned)"
" ORDER BY NumClicksPerDay DESC," " ORDER BY NumClicksPerDay DESC,"
"UsrCod" "UsrCod"
" LIMIT 100"); " LIMIT 100");
case HieLvl_CTY: case HieLvl_CTY:
return (unsigned) return (unsigned)
@ -457,8 +457,8 @@ unsigned Prf_DB_GetRankingClicksPerDay (MYSQL_RES **mysql_res)
" AND usr_figures.UsrCod NOT IN" " AND usr_figures.UsrCod NOT IN"
" (SELECT UsrCod" " (SELECT UsrCod"
" FROM usr_banned)" " FROM usr_banned)"
" ORDER BY NumClicksPerDay DESC," " ORDER BY NumClicksPerDay DESC,"
"usr_figures.UsrCod" "usr_figures.UsrCod"
" LIMIT 100", " LIMIT 100",
Gbl.Hierarchy.Cty.CtyCod); Gbl.Hierarchy.Cty.CtyCod);
case HieLvl_INS: case HieLvl_INS:
@ -483,8 +483,8 @@ unsigned Prf_DB_GetRankingClicksPerDay (MYSQL_RES **mysql_res)
" AND usr_figures.UsrCod NOT IN" " AND usr_figures.UsrCod NOT IN"
" (SELECT UsrCod" " (SELECT UsrCod"
" FROM usr_banned)" " FROM usr_banned)"
" ORDER BY NumClicksPerDay DESC," " ORDER BY NumClicksPerDay DESC,"
"usr_figures.UsrCod" "usr_figures.UsrCod"
" LIMIT 100", " LIMIT 100",
Gbl.Hierarchy.Ins.InsCod); Gbl.Hierarchy.Ins.InsCod);
case HieLvl_CTR: case HieLvl_CTR:
@ -507,8 +507,8 @@ unsigned Prf_DB_GetRankingClicksPerDay (MYSQL_RES **mysql_res)
" AND usr_figures.UsrCod NOT IN" " AND usr_figures.UsrCod NOT IN"
" (SELECT UsrCod" " (SELECT UsrCod"
" FROM usr_banned)" " FROM usr_banned)"
" ORDER BY NumClicksPerDay DESC," " ORDER BY NumClicksPerDay DESC,"
"usr_figures.UsrCod" "usr_figures.UsrCod"
" LIMIT 100", " LIMIT 100",
Gbl.Hierarchy.Ctr.CtrCod); Gbl.Hierarchy.Ctr.CtrCod);
case HieLvl_DEG: case HieLvl_DEG:
@ -529,8 +529,8 @@ unsigned Prf_DB_GetRankingClicksPerDay (MYSQL_RES **mysql_res)
" AND usr_figures.UsrCod NOT IN" " AND usr_figures.UsrCod NOT IN"
" (SELECT UsrCod" " (SELECT UsrCod"
" FROM usr_banned)" " FROM usr_banned)"
" ORDER BY NumClicksPerDay DESC," " ORDER BY NumClicksPerDay DESC,"
"usr_figures.UsrCod" "usr_figures.UsrCod"
" LIMIT 100", " LIMIT 100",
Gbl.Hierarchy.Deg.DegCod); Gbl.Hierarchy.Deg.DegCod);
case HieLvl_CRS: case HieLvl_CRS:
@ -549,8 +549,8 @@ unsigned Prf_DB_GetRankingClicksPerDay (MYSQL_RES **mysql_res)
" AND usr_figures.UsrCod NOT IN" " AND usr_figures.UsrCod NOT IN"
" (SELECT UsrCod" " (SELECT UsrCod"
" FROM usr_banned)" " FROM usr_banned)"
" ORDER BY NumClicksPerDay DESC," " ORDER BY NumClicksPerDay DESC,"
"usr_figures.UsrCod" "usr_figures.UsrCod"
" LIMIT 100", " LIMIT 100",
Gbl.Hierarchy.Crs.CrsCod); Gbl.Hierarchy.Crs.CrsCod);
default: default:

View File

@ -392,8 +392,8 @@ unsigned Prj_DB_GetListProjects (MYSQL_RES **mysql_res,
"%s" "%s"
" AND prj_projects.PrjCod=prj_users.PrjCod" " AND prj_projects.PrjCod=prj_users.PrjCod"
" AND prj_users.UsrCod=%ld" " AND prj_users.UsrCod=%ld"
" GROUP BY prj_projects.PrjCod" // To not repeat projects (DISTINCT can not be used) " GROUP BY prj_projects.PrjCod" // To not repeat projects (DISTINCT can not be used)
" ORDER BY %s", " ORDER BY %s",
Gbl.Hierarchy.Crs.CrsCod, Gbl.Hierarchy.Crs.CrsCod,
AssignSubQuery, AssignSubQuery,
HidVisSubQuery, HidVisSubQuery,
@ -417,8 +417,8 @@ unsigned Prj_DB_GetListProjects (MYSQL_RES **mysql_res,
"%s" "%s"
" AND prj_projects.PrjCod=prj_users.PrjCod" " AND prj_projects.PrjCod=prj_users.PrjCod"
" AND prj_users.UsrCod=%ld" " AND prj_users.UsrCod=%ld"
" GROUP BY prj_projects.PrjCod" // To not repeat projects (DISTINCT can not be used) " GROUP BY prj_projects.PrjCod" // To not repeat projects (DISTINCT can not be used)
" ORDER BY %s", " ORDER BY %s",
Gbl.Hierarchy.Crs.CrsCod, Gbl.Hierarchy.Crs.CrsCod,
AssignSubQuery, AssignSubQuery,
HidVisSubQuery, HidVisSubQuery,
@ -450,8 +450,8 @@ unsigned Prj_DB_GetListProjects (MYSQL_RES **mysql_res,
"%s" "%s"
" AND prj_projects.PrjCod=prj_users.PrjCod" " AND prj_projects.PrjCod=prj_users.PrjCod"
" AND prj_users.UsrCod IN (%s)" " AND prj_users.UsrCod IN (%s)"
" GROUP BY prj_projects.PrjCod" // To not repeat projects (DISTINCT can not be used) " GROUP BY prj_projects.PrjCod" // To not repeat projects (DISTINCT can not be used)
" ORDER BY %s", " ORDER BY %s",
Gbl.Hierarchy.Crs.CrsCod, Gbl.Hierarchy.Crs.CrsCod,
AssignSubQuery, AssignSubQuery,
HidVisSubQuery, HidVisSubQuery,
@ -469,14 +469,14 @@ unsigned Prj_DB_GetListProjects (MYSQL_RES **mysql_res,
" LEFT JOIN prj_users" " LEFT JOIN prj_users"
" ON prj_projects.PrjCod=prj_users.PrjCod" " ON prj_projects.PrjCod=prj_users.PrjCod"
" WHERE prj_projects.CrsCod=%ld" " WHERE prj_projects.CrsCod=%ld"
"%s" "%s"
"%s" "%s"
"%s" "%s"
"%s" "%s"
" AND prj_projects.PrjCod=prj_users.PrjCod" " AND prj_projects.PrjCod=prj_users.PrjCod"
" AND prj_users.UsrCod IN (%s)" " AND prj_users.UsrCod IN (%s)"
" GROUP BY prj_projects.PrjCod" // To not repeat projects (DISTINCT can not be used) " GROUP BY prj_projects.PrjCod" // To not repeat projects (DISTINCT can not be used)
" ORDER BY %s", " ORDER BY %s",
Gbl.Hierarchy.Crs.CrsCod, Gbl.Hierarchy.Crs.CrsCod,
AssignSubQuery, AssignSubQuery,
HidVisSubQuery, HidVisSubQuery,
@ -500,11 +500,11 @@ unsigned Prj_DB_GetListProjects (MYSQL_RES **mysql_res,
"SELECT prj_projects.PrjCod" "SELECT prj_projects.PrjCod"
" FROM prj_projects" " FROM prj_projects"
" WHERE prj_projects.CrsCod=%ld" " WHERE prj_projects.CrsCod=%ld"
"%s" "%s"
"%s" "%s"
"%s" "%s"
"%s" "%s"
" ORDER BY %s", " ORDER BY %s",
Gbl.Hierarchy.Crs.CrsCod, Gbl.Hierarchy.Crs.CrsCod,
AssignSubQuery, AssignSubQuery,
HidVisSubQuery, HidVisSubQuery,
@ -519,11 +519,11 @@ unsigned Prj_DB_GetListProjects (MYSQL_RES **mysql_res,
" FROM prj_projects LEFT JOIN dpt_departments" " FROM prj_projects LEFT JOIN dpt_departments"
" ON prj_projects.DptCod=dpt_departments.DptCod" " ON prj_projects.DptCod=dpt_departments.DptCod"
" WHERE prj_projects.CrsCod=%ld" " WHERE prj_projects.CrsCod=%ld"
"%s" "%s"
"%s" "%s"
"%s" "%s"
"%s" "%s"
" ORDER BY %s", " ORDER BY %s",
Gbl.Hierarchy.Crs.CrsCod, Gbl.Hierarchy.Crs.CrsCod,
AssignSubQuery, AssignSubQuery,
HidVisSubQuery, HidVisSubQuery,

View File

@ -187,7 +187,7 @@ unsigned Rub_DB_GetNumCoursesWithRubrics (HieLvl_Level_t Scope)
" AND ctr_centers.CtrCod=deg_degrees.CtrCod" " AND ctr_centers.CtrCod=deg_degrees.CtrCod"
" AND deg_degrees.DegCod=crs_courses.DegCod" " AND deg_degrees.DegCod=crs_courses.DegCod"
" AND crs_courses.CrsCod=rub_rubrics.CrsCod", " AND crs_courses.CrsCod=rub_rubrics.CrsCod",
Gbl.Hierarchy.Ins.InsCod); Gbl.Hierarchy.Cty.CtyCod);
case HieLvl_INS: case HieLvl_INS:
return (unsigned) return (unsigned)
DB_QueryCOUNT ("can not get number of courses with rubrics", DB_QueryCOUNT ("can not get number of courses with rubrics",
@ -525,7 +525,7 @@ unsigned Rub_DB_GetCriterionData (MYSQL_RES **mysql_res,long CriCod)
DB_QuerySELECT (mysql_res,"can not get a criterion", DB_QuerySELECT (mysql_res,"can not get a criterion",
"SELECT Title" // row[0] "SELECT Title" // row[0]
" FROM rub_criteria" " FROM rub_criteria"
" WHERE QstCod=%ld" " WHERE CriCod=%ld"
" AND CrsCod=%ld", // Extra check " AND CrsCod=%ld", // Extra check
CriCod, CriCod,
Gbl.Hierarchy.Crs.CrsCod); Gbl.Hierarchy.Crs.CrsCod);
@ -544,16 +544,16 @@ double Rub_DB_GetNumCriteriaPerRubric (HieLvl_Level_t Scope)
return return
DB_QuerySELECTDouble ("can not get number of criteria per rubric", DB_QuerySELECTDouble ("can not get number of criteria per rubric",
"SELECT AVG(NumCriteria)" "SELECT AVG(NumCriteria)"
" FROM (SELECT COUNT(rub_criteria.QstCod) AS NumCriteria" " FROM (SELECT COUNT(rub_criteria.CriCod) AS NumCriteria"
" FROM rub_rubrics," " FROM rub_rubrics,"
"rub_criteria" "rub_criteria"
" WHERE rub_rubrics.RubCod=rub_criteria.RubCod" " WHERE rub_rubrics.RubCod=rub_criteria.RubCod"
" GROUP BY rub_criteria.RubCod) AS NumCriteriaTable"); " GROUP BY rub_criteria.RubCod) AS NumCriteriaTable");
case HieLvl_CTY: case HieLvl_CTY:
return return
DB_QuerySELECTDouble ("can not get number of criteria per rubric", DB_QuerySELECTDouble ("can not get number of criteria per rubric",
"SELECT AVG(NumCriteria)" "SELECT AVG(NumCriteria)"
" FROM (SELECT COUNT(rub_criteria.QstCod) AS NumCriteria" " FROM (SELECT COUNT(rub_criteria.CriCod) AS NumCriteria"
" FROM ins_instits," " FROM ins_instits,"
"ctr_centers," "ctr_centers,"
"deg_degrees," "deg_degrees,"
@ -566,13 +566,13 @@ double Rub_DB_GetNumCriteriaPerRubric (HieLvl_Level_t Scope)
" AND deg_degrees.DegCod=crs_courses.DegCod" " AND deg_degrees.DegCod=crs_courses.DegCod"
" AND crs_courses.CrsCod=rub_rubrics.CrsCod" " AND crs_courses.CrsCod=rub_rubrics.CrsCod"
" AND rub_rubrics.RubCod=rub_criteria.RubCod" " AND rub_rubrics.RubCod=rub_criteria.RubCod"
" GROUP BY rub_criteria.RubCod) AS NumCriteriaTable", " GROUP BY rub_criteria.RubCod) AS NumCriteriaTable",
Gbl.Hierarchy.Cty.CtyCod); Gbl.Hierarchy.Cty.CtyCod);
case HieLvl_INS: case HieLvl_INS:
return return
DB_QuerySELECTDouble ("can not get number of criteria per rubric", DB_QuerySELECTDouble ("can not get number of criteria per rubric",
"SELECT AVG(NumCriteria)" "SELECT AVG(NumCriteria)"
" FROM (SELECT COUNT(rub_criteria.QstCod) AS NumCriteria" " FROM (SELECT COUNT(rub_criteria.CriCod) AS NumCriteria"
" FROM ctr_centers," " FROM ctr_centers,"
"deg_degrees," "deg_degrees,"
"crs_courses," "crs_courses,"
@ -583,13 +583,13 @@ double Rub_DB_GetNumCriteriaPerRubric (HieLvl_Level_t Scope)
" AND deg_degrees.DegCod=crs_courses.DegCod" " AND deg_degrees.DegCod=crs_courses.DegCod"
" AND crs_courses.CrsCod=rub_rubrics.CrsCod" " AND crs_courses.CrsCod=rub_rubrics.CrsCod"
" AND rub_rubrics.RubCod=rub_criteria.RubCod" " AND rub_rubrics.RubCod=rub_criteria.RubCod"
" GROUP BY rub_criteria.RubCod) AS NumCriteriaTable", " GROUP BY rub_criteria.RubCod) AS NumCriteriaTable",
Gbl.Hierarchy.Ins.InsCod); Gbl.Hierarchy.Ins.InsCod);
case HieLvl_CTR: case HieLvl_CTR:
return return
DB_QuerySELECTDouble ("can not get number of criteria per rubric", DB_QuerySELECTDouble ("can not get number of criteria per rubric",
"SELECT AVG(NumCriteria)" "SELECT AVG(NumCriteria)"
" FROM (SELECT COUNT(rub_criteria.QstCod) AS NumCriteria" " FROM (SELECT COUNT(rub_criteria.CriCod) AS NumCriteria"
" FROM deg_degrees," " FROM deg_degrees,"
"crs_courses," "crs_courses,"
"rub_rubrics," "rub_rubrics,"
@ -598,31 +598,31 @@ double Rub_DB_GetNumCriteriaPerRubric (HieLvl_Level_t Scope)
" AND deg_degrees.DegCod=crs_courses.DegCod" " AND deg_degrees.DegCod=crs_courses.DegCod"
" AND crs_courses.CrsCod=rub_rubrics.CrsCod" " AND crs_courses.CrsCod=rub_rubrics.CrsCod"
" AND rub_rubrics.RubCod=rub_criteria.RubCod" " AND rub_rubrics.RubCod=rub_criteria.RubCod"
" GROUP BY rub_criteria.RubCod) AS NumCriteriaTable", " GROUP BY rub_criteria.RubCod) AS NumCriteriaTable",
Gbl.Hierarchy.Ctr.CtrCod); Gbl.Hierarchy.Ctr.CtrCod);
case HieLvl_DEG: case HieLvl_DEG:
return return
DB_QuerySELECTDouble ("can not get number of criteria per rubric", DB_QuerySELECTDouble ("can not get number of criteria per rubric",
"SELECT AVG(NumCriteria)" "SELECT AVG(NumCriteria)"
" FROM (SELECT COUNT(rub_criteria.QstCod) AS NumCriteria" " FROM (SELECT COUNT(rub_criteria.CriCod) AS NumCriteria"
" FROM crs_courses," " FROM crs_courses,"
"rub_rubrics," "rub_rubrics,"
"rub_criteria" "rub_criteria"
" WHERE crs_courses.DegCod=%ld" " WHERE crs_courses.DegCod=%ld"
" AND crs_courses.CrsCod=rub_rubrics.CrsCod" " AND crs_courses.CrsCod=rub_rubrics.CrsCod"
" AND rub_rubrics.RubCod=rub_criteria.RubCod" " AND rub_rubrics.RubCod=rub_criteria.RubCod"
" GROUP BY rub_criteria.RubCod) AS NumCriteriaTable", " GROUP BY rub_criteria.RubCod) AS NumCriteriaTable",
Gbl.Hierarchy.Deg.DegCod); Gbl.Hierarchy.Deg.DegCod);
case HieLvl_CRS: case HieLvl_CRS:
return return
DB_QuerySELECTDouble ("can not get number of criteria per rubric", DB_QuerySELECTDouble ("can not get number of criteria per rubric",
"SELECT AVG(NumCriteria)" "SELECT AVG(NumCriteria)"
" FROM (SELECT COUNT(rub_criteria.QstCod) AS NumCriteria" " FROM (SELECT COUNT(rub_criteria.CriCod) AS NumCriteria"
" FROM rub_rubrics," " FROM rub_rubrics,"
"rub_criteria" "rub_criteria"
" WHERE rub_rubrics.Cod=%ld" " WHERE rub_rubrics.CrsCod=%ld"
" AND rub_rubrics.RubCod=rub_criteria.RubCod" " AND rub_rubrics.RubCod=rub_criteria.RubCod"
" GROUP BY rub_criteria.RubCod) AS NumCriteriaTable", " GROUP BY rub_criteria.RubCod) AS NumCriteriaTable",
Gbl.Hierarchy.Crs.CrsCod); Gbl.Hierarchy.Crs.CrsCod);
default: default:
Err_WrongScopeExit (); Err_WrongScopeExit ();

View File

@ -381,7 +381,7 @@ unsigned Svy_DB_GetNumCrssWithCrsSurveys (HieLvl_Level_t Scope)
" AND deg_degrees.DegCod=crs_courses.DegCod" " AND deg_degrees.DegCod=crs_courses.DegCod"
" AND crs_courses.CrsCod=svy_surveys.Cod" " AND crs_courses.CrsCod=svy_surveys.Cod"
" AND svy_surveys.Scope='%s'", " AND svy_surveys.Scope='%s'",
Gbl.Hierarchy.Ins.InsCod, Gbl.Hierarchy.Cty.CtyCod,
Sco_GetDBStrFromScope (HieLvl_CRS)); Sco_GetDBStrFromScope (HieLvl_CRS));
case HieLvl_INS: case HieLvl_INS:
return (unsigned) return (unsigned)
@ -549,7 +549,7 @@ double Svy_DB_GetNumQstsPerCrsSurvey (HieLvl_Level_t Scope)
"svy_questions" "svy_questions"
" WHERE svy_surveys.Scope='%s'" " WHERE svy_surveys.Scope='%s'"
" AND svy_surveys.SvyCod=svy_questions.SvyCod" " AND svy_surveys.SvyCod=svy_questions.SvyCod"
" GROUP BY svy_questions.SvyCod) AS NumQstsTable", " GROUP BY svy_questions.SvyCod) AS NumQstsTable",
Sco_GetDBStrFromScope (HieLvl_CRS)); Sco_GetDBStrFromScope (HieLvl_CRS));
case HieLvl_CTY: case HieLvl_CTY:
return DB_QuerySELECTDouble ("can not get number of questions per survey", return DB_QuerySELECTDouble ("can not get number of questions per survey",
@ -568,7 +568,7 @@ double Svy_DB_GetNumQstsPerCrsSurvey (HieLvl_Level_t Scope)
" AND crs_courses.CrsCod=svy_surveys.Cod" " AND crs_courses.CrsCod=svy_surveys.Cod"
" AND svy_surveys.Scope='%s'" " AND svy_surveys.Scope='%s'"
" AND svy_surveys.SvyCod=svy_questions.SvyCod" " AND svy_surveys.SvyCod=svy_questions.SvyCod"
" GROUP BY svy_questions.SvyCod) AS NumQstsTable", " GROUP BY svy_questions.SvyCod) AS NumQstsTable",
Gbl.Hierarchy.Cty.CtyCod, Gbl.Hierarchy.Cty.CtyCod,
Sco_GetDBStrFromScope (HieLvl_CRS)); Sco_GetDBStrFromScope (HieLvl_CRS));
case HieLvl_INS: case HieLvl_INS:
@ -586,7 +586,7 @@ double Svy_DB_GetNumQstsPerCrsSurvey (HieLvl_Level_t Scope)
" AND crs_courses.CrsCod=svy_surveys.Cod" " AND crs_courses.CrsCod=svy_surveys.Cod"
" AND svy_surveys.Scope='%s'" " AND svy_surveys.Scope='%s'"
" AND svy_surveys.SvyCod=svy_questions.SvyCod" " AND svy_surveys.SvyCod=svy_questions.SvyCod"
" GROUP BY svy_questions.SvyCod) AS NumQstsTable", " GROUP BY svy_questions.SvyCod) AS NumQstsTable",
Gbl.Hierarchy.Ins.InsCod, Gbl.Hierarchy.Ins.InsCod,
Sco_GetDBStrFromScope (HieLvl_CRS)); Sco_GetDBStrFromScope (HieLvl_CRS));
case HieLvl_CTR: case HieLvl_CTR:
@ -602,7 +602,7 @@ double Svy_DB_GetNumQstsPerCrsSurvey (HieLvl_Level_t Scope)
" AND crs_courses.CrsCod=svy_surveys.Cod" " AND crs_courses.CrsCod=svy_surveys.Cod"
" AND svy_surveys.Scope='%s'" " AND svy_surveys.Scope='%s'"
" AND svy_surveys.SvyCod=svy_questions.SvyCod" " AND svy_surveys.SvyCod=svy_questions.SvyCod"
" GROUP BY svy_questions.SvyCod) AS NumQstsTable", " GROUP BY svy_questions.SvyCod) AS NumQstsTable",
Gbl.Hierarchy.Ctr.CtrCod, Gbl.Hierarchy.Ctr.CtrCod,
Sco_GetDBStrFromScope (HieLvl_CRS)); Sco_GetDBStrFromScope (HieLvl_CRS));
case HieLvl_DEG: case HieLvl_DEG:
@ -616,7 +616,7 @@ double Svy_DB_GetNumQstsPerCrsSurvey (HieLvl_Level_t Scope)
" AND crs_courses.CrsCod=svy_surveys.Cod" " AND crs_courses.CrsCod=svy_surveys.Cod"
" AND svy_surveys.Scope='%s'" " AND svy_surveys.Scope='%s'"
" AND svy_surveys.SvyCod=svy_questions.SvyCod" " AND svy_surveys.SvyCod=svy_questions.SvyCod"
" GROUP BY svy_questions.SvyCod) AS NumQstsTable", " GROUP BY svy_questions.SvyCod) AS NumQstsTable",
Gbl.Hierarchy.Deg.DegCod, Gbl.Hierarchy.Deg.DegCod,
Sco_GetDBStrFromScope (HieLvl_CRS)); Sco_GetDBStrFromScope (HieLvl_CRS));
case HieLvl_CRS: case HieLvl_CRS:
@ -628,7 +628,7 @@ double Svy_DB_GetNumQstsPerCrsSurvey (HieLvl_Level_t Scope)
" WHERE svy_surveys.Scope='%s'" " WHERE svy_surveys.Scope='%s'"
" AND svy_surveys.Cod=%ld" " AND svy_surveys.Cod=%ld"
" AND svy_surveys.SvyCod=svy_questions.SvyCod" " AND svy_surveys.SvyCod=svy_questions.SvyCod"
" GROUP BY svy_questions.SvyCod) AS NumQstsTable", " GROUP BY svy_questions.SvyCod) AS NumQstsTable",
Sco_GetDBStrFromScope (HieLvl_CRS),Gbl.Hierarchy.Crs.CrsCod); Sco_GetDBStrFromScope (HieLvl_CRS),Gbl.Hierarchy.Crs.CrsCod);
default: default:
Err_WrongScopeExit (); Err_WrongScopeExit ();

View File

@ -141,8 +141,8 @@ void TmlPub_GetListPubsToShowInTimeline (struct Tml_Timeline *Timeline)
of every set of publications corresponding to the same note: of every set of publications corresponding to the same note:
SELECT MAX(PubCod) AS NewestPubCod SELECT MAX(PubCod) AS NewestPubCod
FROM tml_pubs ... FROM tml_pubs ...
GROUP BY NotCod GROUP BY NotCod
ORDER BY NewestPubCod DESC ORDER BY NewestPubCod DESC
LIMIT 10 LIMIT 10
but this query is slow (several seconds) with a big table. but this query is slow (several seconds) with a big table.
*/ */