mirror of https://github.com/acanas/swad-core.git
Version 22.49.1: Oct 17, 2022 Fixed bug filtering projects.
This commit is contained in:
parent
e10185af2e
commit
a9c5d4d1d0
|
@ -606,10 +606,11 @@ TODO: Fix bug: error al enviar un mensaje a dos recipientes, error on duplicate
|
||||||
|
|
||||||
TODO: Attach pdf files in multimedia.
|
TODO: Attach pdf files in multimedia.
|
||||||
*/
|
*/
|
||||||
#define Log_PLATFORM_VERSION "SWAD 22.49 (2022-10-16)"
|
#define Log_PLATFORM_VERSION "SWAD 22.49.1 (2022-10-17)"
|
||||||
#define CSS_FILE "swad22.49.css"
|
#define CSS_FILE "swad22.49.css"
|
||||||
#define JS_FILE "swad22.49.js"
|
#define JS_FILE "swad22.49.js"
|
||||||
/*
|
/*
|
||||||
|
Version 22.49.1: Oct 17, 2022 Fixed bug filtering projects. (333176 lines)
|
||||||
Version 22.49: Oct 16, 2022 Changes in project review form. (333161 lines)
|
Version 22.49: Oct 16, 2022 Changes in project review form. (333161 lines)
|
||||||
Version 22.48: Oct 15, 2022 Code optimization related to nick links. (333157 lines)
|
Version 22.48: Oct 15, 2022 Code optimization related to nick links. (333157 lines)
|
||||||
Version 22.47.2: Oct 15, 2022 Code optimization related to forms. (333124 lines)
|
Version 22.47.2: Oct 15, 2022 Code optimization related to forms. (333124 lines)
|
||||||
|
|
|
@ -244,6 +244,7 @@ unsigned Prj_DB_GetListProjects (MYSQL_RES **mysql_res,
|
||||||
{
|
{
|
||||||
char *AssignSubQuery;
|
char *AssignSubQuery;
|
||||||
char *HidVisSubQuery;
|
char *HidVisSubQuery;
|
||||||
|
char *ReviewSubQuery;
|
||||||
char *DptCodSubQuery;
|
char *DptCodSubQuery;
|
||||||
static const char *OrderBySubQuery[Prj_NUM_ORDERS] =
|
static const char *OrderBySubQuery[Prj_NUM_ORDERS] =
|
||||||
{
|
{
|
||||||
|
@ -315,43 +316,43 @@ unsigned Prj_DB_GetListProjects (MYSQL_RES **mysql_res,
|
||||||
switch (Projects->Filter.Review)
|
switch (Projects->Filter.Review)
|
||||||
{
|
{
|
||||||
case (1 << Prj_UNREVIEWED): // Unreviewed projects
|
case (1 << Prj_UNREVIEWED): // Unreviewed projects
|
||||||
if (asprintf (&AssignSubQuery," AND prj_projects.ReviewStatus='%s'",
|
if (asprintf (&ReviewSubQuery," AND prj_projects.ReviewStatus='%s'",
|
||||||
Prj_ReviewStatus_DB[Prj_UNREVIEWED]) < 0)
|
Prj_ReviewStatus_DB[Prj_UNREVIEWED]) < 0)
|
||||||
Err_NotEnoughMemoryExit ();
|
Err_NotEnoughMemoryExit ();
|
||||||
break;
|
break;
|
||||||
case (1 << Prj_UNAPPROVED): // Unapproved projects
|
case (1 << Prj_UNAPPROVED): // Unapproved projects
|
||||||
if (asprintf (&AssignSubQuery," AND prj_projects.ReviewStatus='%s'",
|
if (asprintf (&ReviewSubQuery," AND prj_projects.ReviewStatus='%s'",
|
||||||
Prj_ReviewStatus_DB[Prj_UNAPPROVED]) < 0)
|
Prj_ReviewStatus_DB[Prj_UNAPPROVED]) < 0)
|
||||||
Err_NotEnoughMemoryExit ();
|
Err_NotEnoughMemoryExit ();
|
||||||
break;
|
break;
|
||||||
case (1 << Prj_APPROVED): // Approved projects
|
case (1 << Prj_APPROVED): // Approved projects
|
||||||
if (asprintf (&AssignSubQuery," AND prj_projects.ReviewStatus='%s'",
|
if (asprintf (&ReviewSubQuery," AND prj_projects.ReviewStatus='%s'",
|
||||||
Prj_ReviewStatus_DB[Prj_APPROVED ]) < 0)
|
Prj_ReviewStatus_DB[Prj_APPROVED ]) < 0)
|
||||||
Err_NotEnoughMemoryExit ();
|
Err_NotEnoughMemoryExit ();
|
||||||
break;
|
break;
|
||||||
case (1 << Prj_UNREVIEWED |
|
case (1 << Prj_UNREVIEWED |
|
||||||
1 << Prj_UNAPPROVED): // Unreviewed and unapproved projects
|
1 << Prj_UNAPPROVED): // Unreviewed and unapproved projects
|
||||||
if (asprintf (&AssignSubQuery," AND prj_projects.ReviewStatus IN ('%s','%s')",
|
if (asprintf (&ReviewSubQuery," AND prj_projects.ReviewStatus IN ('%s','%s')",
|
||||||
Prj_ReviewStatus_DB[Prj_UNREVIEWED],
|
Prj_ReviewStatus_DB[Prj_UNREVIEWED],
|
||||||
Prj_ReviewStatus_DB[Prj_UNAPPROVED]) < 0)
|
Prj_ReviewStatus_DB[Prj_UNAPPROVED]) < 0)
|
||||||
Err_NotEnoughMemoryExit ();
|
Err_NotEnoughMemoryExit ();
|
||||||
break;
|
break;
|
||||||
case (1 << Prj_UNREVIEWED |
|
case (1 << Prj_UNREVIEWED |
|
||||||
1 << Prj_APPROVED): // Unreviewed and approved projects
|
1 << Prj_APPROVED): // Unreviewed and approved projects
|
||||||
if (asprintf (&AssignSubQuery," AND prj_projects.ReviewStatus IN ('%s','%s')",
|
if (asprintf (&ReviewSubQuery," AND prj_projects.ReviewStatus IN ('%s','%s')",
|
||||||
Prj_ReviewStatus_DB[Prj_UNREVIEWED],
|
Prj_ReviewStatus_DB[Prj_UNREVIEWED],
|
||||||
Prj_ReviewStatus_DB[Prj_APPROVED ]) < 0)
|
Prj_ReviewStatus_DB[Prj_APPROVED ]) < 0)
|
||||||
Err_NotEnoughMemoryExit ();
|
Err_NotEnoughMemoryExit ();
|
||||||
break;
|
break;
|
||||||
case (1 << Prj_UNAPPROVED |
|
case (1 << Prj_UNAPPROVED |
|
||||||
1 << Prj_APPROVED): // Unapproved and approved projects
|
1 << Prj_APPROVED): // Unapproved and approved projects
|
||||||
if (asprintf (&AssignSubQuery," AND prj_projects.ReviewStatus IN ('%s','%s')",
|
if (asprintf (&ReviewSubQuery," AND prj_projects.ReviewStatus IN ('%s','%s')",
|
||||||
Prj_ReviewStatus_DB[Prj_UNAPPROVED],
|
Prj_ReviewStatus_DB[Prj_UNAPPROVED],
|
||||||
Prj_ReviewStatus_DB[Prj_APPROVED ]) < 0)
|
Prj_ReviewStatus_DB[Prj_APPROVED ]) < 0)
|
||||||
Err_NotEnoughMemoryExit ();
|
Err_NotEnoughMemoryExit ();
|
||||||
break;
|
break;
|
||||||
default: // All projects
|
default: // All projects
|
||||||
if (asprintf (&AssignSubQuery,"%s","") < 0)
|
if (asprintf (&ReviewSubQuery,"%s","") < 0)
|
||||||
Err_NotEnoughMemoryExit ();
|
Err_NotEnoughMemoryExit ();
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
@ -388,6 +389,7 @@ unsigned Prj_DB_GetListProjects (MYSQL_RES **mysql_res,
|
||||||
"%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=%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)
|
||||||
|
@ -395,6 +397,7 @@ unsigned Prj_DB_GetListProjects (MYSQL_RES **mysql_res,
|
||||||
Gbl.Hierarchy.Crs.CrsCod,
|
Gbl.Hierarchy.Crs.CrsCod,
|
||||||
AssignSubQuery,
|
AssignSubQuery,
|
||||||
HidVisSubQuery,
|
HidVisSubQuery,
|
||||||
|
ReviewSubQuery,
|
||||||
DptCodSubQuery,
|
DptCodSubQuery,
|
||||||
Gbl.Usrs.Me.UsrDat.UsrCod,
|
Gbl.Usrs.Me.UsrDat.UsrCod,
|
||||||
OrderBySubQuery[Projects->SelectedOrder]);
|
OrderBySubQuery[Projects->SelectedOrder]);
|
||||||
|
@ -411,6 +414,7 @@ unsigned Prj_DB_GetListProjects (MYSQL_RES **mysql_res,
|
||||||
"%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=%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)
|
||||||
|
@ -418,6 +422,7 @@ unsigned Prj_DB_GetListProjects (MYSQL_RES **mysql_res,
|
||||||
Gbl.Hierarchy.Crs.CrsCod,
|
Gbl.Hierarchy.Crs.CrsCod,
|
||||||
AssignSubQuery,
|
AssignSubQuery,
|
||||||
HidVisSubQuery,
|
HidVisSubQuery,
|
||||||
|
ReviewSubQuery,
|
||||||
DptCodSubQuery,
|
DptCodSubQuery,
|
||||||
Gbl.Usrs.Me.UsrDat.UsrCod,
|
Gbl.Usrs.Me.UsrDat.UsrCod,
|
||||||
OrderBySubQuery[Projects->SelectedOrder]);
|
OrderBySubQuery[Projects->SelectedOrder]);
|
||||||
|
@ -442,6 +447,7 @@ unsigned Prj_DB_GetListProjects (MYSQL_RES **mysql_res,
|
||||||
"%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)
|
||||||
|
@ -449,6 +455,7 @@ unsigned Prj_DB_GetListProjects (MYSQL_RES **mysql_res,
|
||||||
Gbl.Hierarchy.Crs.CrsCod,
|
Gbl.Hierarchy.Crs.CrsCod,
|
||||||
AssignSubQuery,
|
AssignSubQuery,
|
||||||
HidVisSubQuery,
|
HidVisSubQuery,
|
||||||
|
ReviewSubQuery,
|
||||||
DptCodSubQuery,
|
DptCodSubQuery,
|
||||||
UsrsSubQuery,
|
UsrsSubQuery,
|
||||||
OrderBySubQuery[Projects->SelectedOrder]);
|
OrderBySubQuery[Projects->SelectedOrder]);
|
||||||
|
@ -465,6 +472,7 @@ unsigned Prj_DB_GetListProjects (MYSQL_RES **mysql_res,
|
||||||
"%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)
|
||||||
|
@ -472,6 +480,7 @@ unsigned Prj_DB_GetListProjects (MYSQL_RES **mysql_res,
|
||||||
Gbl.Hierarchy.Crs.CrsCod,
|
Gbl.Hierarchy.Crs.CrsCod,
|
||||||
AssignSubQuery,
|
AssignSubQuery,
|
||||||
HidVisSubQuery,
|
HidVisSubQuery,
|
||||||
|
ReviewSubQuery,
|
||||||
DptCodSubQuery,
|
DptCodSubQuery,
|
||||||
UsrsSubQuery,
|
UsrsSubQuery,
|
||||||
OrderBySubQuery[Projects->SelectedOrder]);
|
OrderBySubQuery[Projects->SelectedOrder]);
|
||||||
|
@ -494,10 +503,12 @@ unsigned Prj_DB_GetListProjects (MYSQL_RES **mysql_res,
|
||||||
"%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,
|
||||||
|
ReviewSubQuery,
|
||||||
DptCodSubQuery,
|
DptCodSubQuery,
|
||||||
OrderBySubQuery[Projects->SelectedOrder]);
|
OrderBySubQuery[Projects->SelectedOrder]);
|
||||||
break;
|
break;
|
||||||
|
@ -511,10 +522,12 @@ unsigned Prj_DB_GetListProjects (MYSQL_RES **mysql_res,
|
||||||
"%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,
|
||||||
|
ReviewSubQuery,
|
||||||
DptCodSubQuery,
|
DptCodSubQuery,
|
||||||
OrderBySubQuery[Projects->SelectedOrder]);
|
OrderBySubQuery[Projects->SelectedOrder]);
|
||||||
break;
|
break;
|
||||||
|
@ -526,9 +539,10 @@ unsigned Prj_DB_GetListProjects (MYSQL_RES **mysql_res,
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Free allocated memory for subqueries */
|
/* Free allocated memory for subqueries */
|
||||||
free (AssignSubQuery);
|
|
||||||
free (HidVisSubQuery);
|
|
||||||
free (DptCodSubQuery);
|
free (DptCodSubQuery);
|
||||||
|
free (ReviewSubQuery);
|
||||||
|
free (HidVisSubQuery);
|
||||||
|
free (AssignSubQuery);
|
||||||
|
|
||||||
return NumPrjsFromDB;
|
return NumPrjsFromDB;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue