diff --git a/css/swad23.64.1.css b/css/swad23.65.css
similarity index 99%
rename from css/swad23.64.1.css
rename to css/swad23.65.css
index 8fab459d..d30cb6bd 100644
--- a/css/swad23.64.1.css
+++ b/css/swad23.65.css
@@ -5387,11 +5387,8 @@ table.TBL_WIDE > tbody > tr > th {padding:2px;}
.LC_CLK {text-align:right; vertical-align:top; min-width:60px;}
.LC_TIM {text-align:right; vertical-align:top; min-width:60px; max-width:60px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis;}
.LC_ROL {text-align:left; vertical-align:top; min-width:100px; max-width:100px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis;}
-.LC_CTY {text-align:left; vertical-align:top; min-width:100px; max-width:100px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis;}
-.LC_INS {text-align:left; vertical-align:top; min-width:100px; max-width:100px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis;}
-.LC_CTR {text-align:left; vertical-align:top; min-width:100px; max-width:100px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis;}
-.LC_DEG {text-align:left; vertical-align:top; min-width:150px; max-width:150px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis;}
-.LC_ACT {text-align:left; vertical-align:top; min-width:200px; max-width:200px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis;}
+.LC_HIE {text-align:left; vertical-align:top; min-width:100px; max-width:100px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis;}
+.LC_ACT {text-align:left; vertical-align:top; min-width:200px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis;}
/*********************** Listing my courses as a tree ************************/
@media only screen and (max-width:800px)
diff --git a/swad_attendance.c b/swad_attendance.c
index f1fbc57e..2cbf7c1f 100644
--- a/swad_attendance.c
+++ b/swad_attendance.c
@@ -1341,16 +1341,16 @@ static void Att_GetAndWriteNamesOfGrpsAssociatedToEvent (struct Att_Event *Event
/***************** Remove all attendance events of a course ******************/
/*****************************************************************************/
-void Att_RemoveCrsEvents (long CrsCod)
+void Att_RemoveCrsEvents (long HieCod)
{
/***** Remove students *****/
- Att_DB_RemoveUsrsFromCrsEvents (CrsCod);
+ Att_DB_RemoveUsrsFromCrsEvents (HieCod);
/***** Remove groups *****/
- Att_DB_RemoveGrpsAssociatedToCrsEvents (CrsCod);
+ Att_DB_RemoveGrpsAssociatedToCrsEvents (HieCod);
/***** Remove attendance events *****/
- Att_DB_RemoveCrsEvents (CrsCod);
+ Att_DB_RemoveCrsEvents (HieCod);
}
/*****************************************************************************/
diff --git a/swad_attendance.h b/swad_attendance.h
index fee62fd5..03777930 100644
--- a/swad_attendance.h
+++ b/swad_attendance.h
@@ -101,7 +101,7 @@ void Att_ReceiveFormEvent (void);
void Att_CreateEvent (struct Att_Event *Event,const char *Description);
void Att_UpdateEvent (struct Att_Event *Event,const char *Description);
-void Att_RemoveCrsEvents (long CrsCod);
+void Att_RemoveCrsEvents (long HieCod);
unsigned Att_GetNumEvents (Hie_Level_t Level,unsigned *NumNotif);
diff --git a/swad_attendance_database.c b/swad_attendance_database.c
index 154dd735..0db91ff8 100644
--- a/swad_attendance_database.c
+++ b/swad_attendance_database.c
@@ -797,7 +797,7 @@ void Att_DB_RemoveEventFromCurrentCrs (long AttCod)
/************* Remove users in all attendance events of a course *************/
/*****************************************************************************/
-void Att_DB_RemoveUsrsFromCrsEvents (long CrsCod)
+void Att_DB_RemoveUsrsFromCrsEvents (long HieCod)
{
DB_QueryDELETE ("can not remove users registered"
" in attendance events of a course",
@@ -806,14 +806,14 @@ void Att_DB_RemoveUsrsFromCrsEvents (long CrsCod)
"att_users"
" WHERE att_events.CrsCod=%ld"
" AND att_events.AttCod=att_users.AttCod",
- CrsCod);
+ HieCod);
}
/*****************************************************************************/
/************ Remove groups in all attendance events of a course *************/
/*****************************************************************************/
-void Att_DB_RemoveGrpsAssociatedToCrsEvents (long CrsCod)
+void Att_DB_RemoveGrpsAssociatedToCrsEvents (long HieCod)
{
DB_QueryDELETE ("can not remove all groups associated"
" to attendance events of a course",
@@ -822,26 +822,26 @@ void Att_DB_RemoveGrpsAssociatedToCrsEvents (long CrsCod)
"att_groups"
" WHERE att_events.CrsCod=%ld"
" AND att_events.AttCod=att_groups.AttCod",
- CrsCod);
+ HieCod);
}
/*****************************************************************************/
/***************** Remove all attendance events of a course ******************/
/*****************************************************************************/
-void Att_DB_RemoveCrsEvents (long CrsCod)
+void Att_DB_RemoveCrsEvents (long HieCod)
{
DB_QueryDELETE ("can not remove all attendance events of a course",
"DELETE FROM att_events"
" WHERE CrsCod=%ld",
- CrsCod);
+ HieCod);
}
/*****************************************************************************/
/*************** Get number of attendance events in a course *****************/
/*****************************************************************************/
-unsigned Att_DB_GetNumEventsInCrs (long CrsCod)
+unsigned Att_DB_GetNumEventsInCrs (long HieCod)
{
/***** Get number of attendance events in a course from database *****/
return (unsigned)
@@ -849,7 +849,7 @@ unsigned Att_DB_GetNumEventsInCrs (long CrsCod)
"SELECT COUNT(*)"
" FROM att_events"
" WHERE CrsCod=%ld",
- CrsCod);
+ HieCod);
}
/*****************************************************************************/
diff --git a/swad_attendance_database.h b/swad_attendance_database.h
index 3b80f85c..13926cd8 100644
--- a/swad_attendance_database.h
+++ b/swad_attendance_database.h
@@ -82,11 +82,11 @@ void Att_DB_RemoveUsrFromAllEvents (long UsrCod);
void Att_DB_RemoveUsrFromCrsEvents (long UsrCod,long CrsCod);
void Att_DB_RemoveEventFromCurrentCrs (long AttCod);
-void Att_DB_RemoveUsrsFromCrsEvents (long CrsCod);
-void Att_DB_RemoveGrpsAssociatedToCrsEvents (long CrsCod);
-void Att_DB_RemoveCrsEvents (long CrsCod);
+void Att_DB_RemoveUsrsFromCrsEvents (long HieCod);
+void Att_DB_RemoveGrpsAssociatedToCrsEvents (long HieCod);
+void Att_DB_RemoveCrsEvents (long HieCod);
-unsigned Att_DB_GetNumEventsInCrs (long CrsCod);
+unsigned Att_DB_GetNumEventsInCrs (long HieCod);
unsigned Att_DB_GetNumCoursesWithEvents (Hie_Level_t Level);
unsigned Att_DB_GetNumEvents (MYSQL_RES **mysql_res,Hie_Level_t Level);
diff --git a/swad_browser.c b/swad_browser.c
index c45b1b77..e89e10c4 100644
--- a/swad_browser.c
+++ b/swad_browser.c
@@ -5377,7 +5377,7 @@ static void Brw_WriteCurrentClipboard (void)
Prj_AllocMemProject (&Prj);
Prj.PrjCod = Gbl.FileBrowser.Clipboard.HieCod;
Prj_GetProjectDataByCod (&Prj);
- Hie[Hie_CRS].HieCod = Prj.CrsCod;
+ Hie[Hie_CRS].HieCod = Prj.HieCod;
Hie_GetDataByCod[Hie_CRS] (&Hie[Hie_CRS]);
snprintf (TxtClipboardZone,sizeof (TxtClipboardZone),
"%s, %s %s, %s %s",
diff --git a/swad_center_database.c b/swad_center_database.c
index ccfee028..f66e1a3a 100644
--- a/swad_center_database.c
+++ b/swad_center_database.c
@@ -205,7 +205,7 @@ unsigned Ctr_DB_GetCtrsWithPendingDegs (MYSQL_RES **mysql_res)
/************************ Get data of center by code *************************/
/*****************************************************************************/
-unsigned Ctr_DB_GetCenterDataByCod (MYSQL_RES **mysql_res,long CtrCod)
+unsigned Ctr_DB_GetCenterDataByCod (MYSQL_RES **mysql_res,long HieCod)
{
return (unsigned)
DB_QuerySELECT (mysql_res,"can not get data of a center",
@@ -219,14 +219,14 @@ unsigned Ctr_DB_GetCenterDataByCod (MYSQL_RES **mysql_res,long CtrCod)
"WWW" // row[7]
" FROM ctr_centers"
" WHERE CtrCod=%ld",
- CtrCod);
+ HieCod);
}
/*****************************************************************************/
/******************** Get coordinates of center by code **********************/
/*****************************************************************************/
-unsigned Ctr_DB_GetCoordByCod (MYSQL_RES **mysql_res,long CtrCod)
+unsigned Ctr_DB_GetCoordByCod (MYSQL_RES **mysql_res,long HieCod)
{
return (unsigned)
DB_QuerySELECT (mysql_res,"can not get coordinares of a center",
@@ -235,17 +235,17 @@ unsigned Ctr_DB_GetCoordByCod (MYSQL_RES **mysql_res,long CtrCod)
"Altitude" // row[ 2]
" FROM ctr_centers"
" WHERE CtrCod=%ld",
- CtrCod);
+ HieCod);
}
/*****************************************************************************/
/*********** Get the institution code of a center from its code **************/
/*****************************************************************************/
-long Ctr_DB_GetInsCodOfCenterByCod (long CtrCod)
+long Ctr_DB_GetInsCodOfCenterByCod (long HieCod)
{
/***** Trivial check: center code should be > 0 *****/
- if (CtrCod <= 0)
+ if (HieCod <= 0)
return -1L;
/***** Get the institution code of a center from database *****/
@@ -253,17 +253,17 @@ long Ctr_DB_GetInsCodOfCenterByCod (long CtrCod)
"SELECT InsCod"
" FROM ctr_centers"
" WHERE CtrCod=%ld",
- CtrCod);
+ HieCod);
}
/*****************************************************************************/
/*************** Get the short name of a center from its code ****************/
/*****************************************************************************/
-void Ctr_DB_GetShortNameOfCenterByCod (long CtrCod,char ShrtName[Nam_MAX_BYTES_SHRT_NAME + 1])
+void Ctr_DB_GetCtrShrtName (long HieCod,char ShrtName[Nam_MAX_BYTES_SHRT_NAME + 1])
{
/***** Trivial check: center code should be > 0 *****/
- if (CtrCod <= 0)
+ if (HieCod <= 0)
{
ShrtName[0] = '\0';
return;
@@ -275,7 +275,7 @@ void Ctr_DB_GetShortNameOfCenterByCod (long CtrCod,char ShrtName[Nam_MAX_BYTES_S
"SELECT ShortName"
" FROM ctr_centers"
" WHERE CtrCod=%ld",
- CtrCod);
+ HieCod);
}
/*****************************************************************************/
@@ -342,7 +342,7 @@ unsigned Ctr_DB_SearchCtrs (MYSQL_RES **mysql_res,
/********************** Get number of centers in system **********************/
/*****************************************************************************/
-unsigned Ctr_DB_GetNumCtrsInSys (__attribute__((unused)) long SysCod)
+unsigned Ctr_DB_GetNumCtrsInSys (__attribute__((unused)) long HieCod)
{
return (unsigned) DB_GetNumRowsTable ("ctr_centers");
}
@@ -351,7 +351,7 @@ unsigned Ctr_DB_GetNumCtrsInSys (__attribute__((unused)) long SysCod)
/******************** Get number of centers in a country *********************/
/*****************************************************************************/
-unsigned Ctr_DB_GetNumCtrsInCty (long CtyCod)
+unsigned Ctr_DB_GetNumCtrsInCty (long HieCod)
{
return (unsigned)
DB_QueryCOUNT ("can not get number of centers in a country",
@@ -360,21 +360,21 @@ unsigned Ctr_DB_GetNumCtrsInCty (long CtyCod)
"ctr_centers"
" WHERE ins_instits.CtyCod=%ld"
" AND ins_instits.InsCod=ctr_centers.InsCod",
- CtyCod);
+ HieCod);
}
/*****************************************************************************/
/****************** Get number of centers in an institution ******************/
/*****************************************************************************/
-unsigned Ctr_DB_GetNumCtrsInIns (long InsCod)
+unsigned Ctr_DB_GetNumCtrsInIns (long HieCod)
{
return (unsigned)
DB_QueryCOUNT ("can not get number of centers in an institution",
"SELECT COUNT(*)"
" FROM ctr_centers"
" WHERE InsCod=%ld",
- InsCod);
+ HieCod);
}
/*****************************************************************************/
@@ -411,7 +411,7 @@ unsigned Ctr_DB_GetNumCtrsWithMap (void)
/**************** Get number of centers with map in a country ****************/
/*****************************************************************************/
-unsigned Ctr_DB_GetNumCtrsWithMapInCty (long CtyCod)
+unsigned Ctr_DB_GetNumCtrsWithMapInCty (long HieCod)
{
return (unsigned)
DB_QueryCOUNT ("can not get number of centers with map",
@@ -422,14 +422,14 @@ unsigned Ctr_DB_GetNumCtrsWithMapInCty (long CtyCod)
" AND ins_instits.InsCod=ctr_centers.InsCod"
" AND (ctr_centers.Latitude<>0"
" OR ctr_centers.Longitude<>0)",
- CtyCod);
+ HieCod);
}
/*****************************************************************************/
/************* Get number of centers with map in an institution **************/
/*****************************************************************************/
-unsigned Ctr_DB_GetNumCtrsWithMapInIns (long InsCod)
+unsigned Ctr_DB_GetNumCtrsWithMapInIns (long HieCod)
{
return (unsigned)
DB_QueryCOUNT ("can not get number of centers with map",
@@ -439,7 +439,7 @@ unsigned Ctr_DB_GetNumCtrsWithMapInIns (long InsCod)
" AND (Latitude<>0"
" OR"
" Longitude<>0)",
- InsCod);
+ HieCod);
}
/*****************************************************************************/
@@ -520,35 +520,35 @@ unsigned Ctr_DB_GetNumCtrsWithUsrs (Rol_Role_t Role,
/******************* Update institution in table of centers ******************/
/*****************************************************************************/
-void Ctr_DB_UpdateCtrIns (long CtrCod,long NewInsCod)
+void Ctr_DB_UpdateCtrIns (long HieCod,long NewInsCod)
{
DB_QueryUPDATE ("can not update the institution of a center",
"UPDATE ctr_centers"
" SET InsCod=%ld"
" WHERE CtrCod=%ld",
NewInsCod,
- CtrCod);
+ HieCod);
}
/*****************************************************************************/
/************** Update database changing old place by new place **************/
/*****************************************************************************/
-void Ctr_DB_UpdateCtrPlc (long CtrCod,long NewPlcCod)
+void Ctr_DB_UpdateCtrPlc (long HieCod,long NewPlcCod)
{
DB_QueryUPDATE ("can not update the place of a center",
"UPDATE ctr_centers"
" SET PlcCod=%ld"
" WHERE CtrCod=%ld",
NewPlcCod,
- CtrCod);
+ HieCod);
}
/*****************************************************************************/
/****************** Update center name in table of centers *******************/
/*****************************************************************************/
-void Ctr_DB_UpdateCtrName (long CtrCod,
+void Ctr_DB_UpdateCtrName (long HieCod,
const char *FldName,const char *NewCtrName)
{
/***** Update center changing old name by new name */
@@ -557,7 +557,7 @@ void Ctr_DB_UpdateCtrName (long CtrCod,
" SET %s='%s'"
" WHERE CtrCod=%ld",
FldName,NewCtrName,
- CtrCod);
+ HieCod);
}
/*****************************************************************************/
@@ -578,21 +578,21 @@ void Ctr_DB_UpdateCtrWWW (long CtrCod,const char NewWWW[Cns_MAX_BYTES_WWW + 1])
/******* Update the table changing old attribution by new attribution ********/
/*****************************************************************************/
-void Ctr_DB_UpdateCtrPhotoAttribution (long CtrCod,const char NewPhotoAttribution[Med_MAX_BYTES_ATTRIBUTION + 1])
+void Ctr_DB_UpdateCtrPhotoAttribution (long HieCod,const char NewPhotoAttribution[Med_MAX_BYTES_ATTRIBUTION + 1])
{
DB_QueryUPDATE ("can not update the photo attribution of a center",
"UPDATE ctr_centers"
" SET PhotoAttribution='%s'"
" WHERE CtrCod=%ld",
NewPhotoAttribution,
- CtrCod);
+ HieCod);
}
/*****************************************************************************/
/******** Update database changing old coordinate by new coordinate **********/
/*****************************************************************************/
-void Ctr_DB_UpdateCtrCoordinate (long CtrCod,
+void Ctr_DB_UpdateCtrCoordinate (long HieCod,
const char *CoordField,double NewCoord)
{
Str_SetDecimalPointToUS (); // To write the decimal point as a dot
@@ -602,7 +602,7 @@ void Ctr_DB_UpdateCtrCoordinate (long CtrCod,
" WHERE CtrCod=%ld",
CoordField,
NewCoord,
- CtrCod);
+ HieCod);
Str_SetDecimalPointToLocal (); // Return to local system
}
@@ -610,21 +610,21 @@ void Ctr_DB_UpdateCtrCoordinate (long CtrCod,
/******************** Update status in table of centers **********************/
/*****************************************************************************/
-void Ctr_DB_UpdateCtrStatus (long CtrCod,Hie_Status_t NewStatus)
+void Ctr_DB_UpdateCtrStatus (long HieCod,Hie_Status_t NewStatus)
{
DB_QueryUPDATE ("can not update the status of a center",
"UPDATE ctr_centers"
" SET Status=%u"
" WHERE CtrCod=%ld",
(unsigned) NewStatus,
- CtrCod);
+ HieCod);
}
/*****************************************************************************/
/********** Check if any of the centers in an institution has map ************/
/*****************************************************************************/
-bool Ctr_DB_CheckIfMapIsAvailableInIns (long InsCod)
+bool Ctr_DB_CheckIfMapIsAvailableInIns (long HieCod)
{
/***** Get if any center in current institution has a coordinate set
(coordinates 0, 0 means not set ==> don't show map) *****/
@@ -637,7 +637,7 @@ bool Ctr_DB_CheckIfMapIsAvailableInIns (long InsCod)
" AND (Latitude<>0"
" OR"
" Longitude<>0))",
- InsCod);
+ HieCod);
}
/*****************************************************************************/
@@ -791,24 +791,24 @@ bool Ctr_DB_CheckIfUsrBelongsToCtr (long UsrCod,long HieCod,
/*********** Get number of users who claim to belong to a center *************/
/*****************************************************************************/
-unsigned Ctr_DB_GetNumUsrsWhoClaimToBelongToCtr (long CtrCod)
+unsigned Ctr_DB_GetNumUsrsWhoClaimToBelongToCtr (long HieCod)
{
return (unsigned)
DB_QueryCOUNT ("can not get number of users",
"SELECT COUNT(UsrCod)"
" FROM usr_data"
" WHERE CtrCod=%ld",
- CtrCod);
+ HieCod);
}
/*****************************************************************************/
/****************************** Remove a center ******************************/
/*****************************************************************************/
-void Ctr_DB_RemoveCenter (long CtrCod)
+void Ctr_DB_RemoveCenter (long HieCod)
{
DB_QueryDELETE ("can not remove a center",
"DELETE FROM ctr_centers"
" WHERE CtrCod=%ld",
- CtrCod);
+ HieCod);
}
diff --git a/swad_center_database.h b/swad_center_database.h
index e08da819..2f079e8c 100644
--- a/swad_center_database.h
+++ b/swad_center_database.h
@@ -45,10 +45,10 @@ unsigned Ctr_DB_GetListOfCtrsFull (MYSQL_RES **mysql_res,long InsCod);
unsigned Ctr_DB_GetListOfCtrsFullWithNumUsrs (MYSQL_RES **mysql_res,
long InsCod,Hie_Order_t SelectedOrder);
unsigned Ctr_DB_GetCtrsWithPendingDegs (MYSQL_RES **mysql_res);
-unsigned Ctr_DB_GetCenterDataByCod (MYSQL_RES **mysql_res,long CtrCod);
-unsigned Ctr_DB_GetCoordByCod (MYSQL_RES **mysql_res,long CtrCod);
-long Ctr_DB_GetInsCodOfCenterByCod (long CtrCod);
-void Ctr_DB_GetShortNameOfCenterByCod (long CtrCod,char ShrtName[Nam_MAX_BYTES_SHRT_NAME + 1]);
+unsigned Ctr_DB_GetCenterDataByCod (MYSQL_RES **mysql_res,long HieCod);
+unsigned Ctr_DB_GetCoordByCod (MYSQL_RES **mysql_res,long HieCod);
+long Ctr_DB_GetInsCodOfCenterByCod (long HieCod);
+void Ctr_DB_GetCtrShrtName (long HieCod,char ShrtName[Nam_MAX_BYTES_SHRT_NAME + 1]);
unsigned Ctr_DB_GetPhotoAttribution (MYSQL_RES **mysql_res,long CtrCod);
bool Ctr_DB_CheckIfCtrNameExistsInIns (const char *FldName,const char *Name,
long Cod,long PrtCod,
@@ -58,30 +58,30 @@ unsigned Ctr_DB_SearchCtrs (MYSQL_RES **mysql_res,
const char SearchQuery[Sch_MAX_BYTES_SEARCH_QUERY + 1],
const char *RangeQuery);
-unsigned Ctr_DB_GetNumCtrsInSys (__attribute__((unused)) long SysCod);
-unsigned Ctr_DB_GetNumCtrsInCty (long CtyCod);
-unsigned Ctr_DB_GetNumCtrsInIns (long InsCod);
+unsigned Ctr_DB_GetNumCtrsInSys (__attribute__((unused)) long HieCod);
+unsigned Ctr_DB_GetNumCtrsInCty (long HieCod);
+unsigned Ctr_DB_GetNumCtrsInIns (long HieCod);
unsigned Ctr_DB_GetNumCtrsInPlc (long PlcCod);
unsigned Ctr_DB_GetNumCtrsWithMap (void);
-unsigned Ctr_DB_GetNumCtrsWithMapInCty (long CtyCod);
-unsigned Ctr_DB_GetNumCtrsWithMapInIns (long InsCod);
+unsigned Ctr_DB_GetNumCtrsWithMapInCty (long HieCod);
+unsigned Ctr_DB_GetNumCtrsWithMapInIns (long HieCod);
unsigned Ctr_DB_GetNumCtrsWithDegs (Hie_Level_t Level,long Cod);
unsigned Ctr_DB_GetNumCtrsWithCrss (Hie_Level_t Level,long Cod);
unsigned Ctr_DB_GetNumCtrsWithUsrs (Rol_Role_t Role,
Hie_Level_t Level,long Cod);
-void Ctr_DB_UpdateCtrIns (long CtrCod,long NewInsCod);
-void Ctr_DB_UpdateCtrPlc (long CtrCod,long NewPlcCod);
-void Ctr_DB_UpdateCtrName (long CtrCod,
+void Ctr_DB_UpdateCtrIns (long HieCod,long NewInsCod);
+void Ctr_DB_UpdateCtrPlc (long HieCod,long NewPlcCod);
+void Ctr_DB_UpdateCtrName (long HieCod,
const char *FldName,const char *NewCtrName);
-void Ctr_DB_UpdateCtrWWW (long CtrCod,const char NewWWW[Cns_MAX_BYTES_WWW + 1]);
-void Ctr_DB_UpdateCtrPhotoAttribution (long CtrCod,const char NewPhotoAttribution[Med_MAX_BYTES_ATTRIBUTION + 1]);
-void Ctr_DB_UpdateCtrCoordinate (long CtrCod,
+void Ctr_DB_UpdateCtrWWW (long HieCod,const char NewWWW[Cns_MAX_BYTES_WWW + 1]);
+void Ctr_DB_UpdateCtrPhotoAttribution (long HieCod,const char NewPhotoAttribution[Med_MAX_BYTES_ATTRIBUTION + 1]);
+void Ctr_DB_UpdateCtrCoordinate (long HieCod,
const char *CoordField,double NewCoord);
-void Ctr_DB_UpdateCtrStatus (long CtrCod,Hie_Status_t NewStatus);
+void Ctr_DB_UpdateCtrStatus (long HieCod,Hie_Status_t NewStatus);
-bool Ctr_DB_CheckIfMapIsAvailableInIns (long InsCod);
+bool Ctr_DB_CheckIfMapIsAvailableInIns (long HieCod);
void Ctr_DB_GetAvgCoordAndZoom (struct Map_Coordinates *Coord,unsigned *Zoom);
void Ctr_DB_GetAvgCoordAndZoomInCurrentIns (struct Map_Coordinates *Coord,unsigned *Zoom);
unsigned Ctr_DB_GetCtrsWithCoords (MYSQL_RES **mysql_res);
@@ -90,8 +90,8 @@ unsigned Ctr_DB_GetCtrsWithCoordsInCurrentIns (MYSQL_RES **mysql_res);
unsigned Ctr_DB_GetMyCtrs (MYSQL_RES **mysql_res,long PrtCod);
bool Ctr_DB_CheckIfUsrBelongsToCtr (long UsrCod,long HieCod,
bool CountOnlyAcceptedCourses);
-unsigned Ctr_DB_GetNumUsrsWhoClaimToBelongToCtr (long CtrCod);
+unsigned Ctr_DB_GetNumUsrsWhoClaimToBelongToCtr (long HieCod);
-void Ctr_DB_RemoveCenter (long CtrCod);
+void Ctr_DB_RemoveCenter (long HieCod);
#endif
diff --git a/swad_changelog.h b/swad_changelog.h
index be979695..ca365063 100644
--- a/swad_changelog.h
+++ b/swad_changelog.h
@@ -633,10 +633,11 @@ Me sale este error, no s
"can npt create received message (duplicated entry '243218-2160773' for key 'UsrCod_MsgCod')
*/
-#define Log_PLATFORM_VERSION "SWAD 23.64.1 (2024-02-06)"
-#define CSS_FILE "swad23.64.1.css"
+#define Log_PLATFORM_VERSION "SWAD 23.65 (2024-02-09)"
+#define CSS_FILE "swad23.65.css"
#define JS_FILE "swad23.53.6.js"
/*
+ Version 23.65: Feb 09, 2024 Responsive design in last clicks. (335502 lines)
Version 23.64.1: Feb 06, 2024 Fixed CSS bug. Reported by Francisco Ocaña Lara. (335505 lines)
Version 23.64: Jan 30, 2024 Responsive design. (335503 lines)
Version 23.63.4: Jan 30, 2024 Code refactoring in users. (335414 lines)
diff --git a/swad_course.c b/swad_course.c
index 5241932e..a0c8269f 100644
--- a/swad_course.c
+++ b/swad_course.c
@@ -110,7 +110,7 @@ static void Crs_GetParsNewCourse (struct Hie_Node *Crs);
static void Crs_GetCourseDataFromRow (MYSQL_RES *mysql_res,
struct Hie_Node *Crs);
-static void Crs_EmptyCourseCompletely (long CrsCod);
+static void Crs_EmptyCourseCompletely (long HieCod);
static void Crs_PutButtonToGoToCrs (void);
static void Crs_PutButtonToRegisterInCrs (void);
@@ -1153,18 +1153,18 @@ static void Crs_GetCourseDataFromRow (MYSQL_RES *mysql_res,
/****************************** Remove a course ******************************/
/*****************************************************************************/
-void Crs_RemoveCourseCompletely (long CrsCod)
+void Crs_RemoveCourseCompletely (long HieCod)
{
- if (CrsCod > 0)
+ if (HieCod > 0)
{
/***** Empty course *****/
- Crs_EmptyCourseCompletely (CrsCod);
+ Crs_EmptyCourseCompletely (HieCod);
/***** Remove course from table of last accesses to courses in database *****/
- Crs_DB_RemoveCrsLast (CrsCod);
+ Crs_DB_RemoveCrsLast (HieCod);
/***** Remove course from table of courses in database *****/
- Crs_DB_RemoveCrs (CrsCod);
+ Crs_DB_RemoveCrs (HieCod);
}
}
@@ -1174,16 +1174,16 @@ void Crs_RemoveCourseCompletely (long CrsCod)
// Start removing less important things to more important things;
// so, in case of failure, important things can been removed in the future
-static void Crs_EmptyCourseCompletely (long CrsCod)
+static void Crs_EmptyCourseCompletely (long HieCod)
{
extern bool (*Hie_GetDataByCod[Hie_NUM_LEVELS]) (struct Hie_Node *Node);
struct Hie_Node Crs;
char PathRelCrs[PATH_MAX + 1];
- if (CrsCod > 0)
+ if (HieCod > 0)
{
/***** Get course data *****/
- Crs.HieCod = CrsCod;
+ Crs.HieCod = HieCod;
Hie_GetDataByCod[Hie_CRS] (&Crs);
/***** Remove all students in the course *****/
@@ -1191,83 +1191,83 @@ static void Crs_EmptyCourseCompletely (long CrsCod)
/***** Set all notifications from the course as removed,
except notifications about new messages *****/
- Ntf_DB_MarkNotifInCrsAsRemoved (-1L,CrsCod);
+ Ntf_DB_MarkNotifInCrsAsRemoved (-1L,HieCod);
/***** Remove information of the course ****/
/* Remove information of the course */
- Crs_DB_RemoveCrsInfo (CrsCod);
+ Crs_DB_RemoveCrsInfo (HieCod);
/* Remove timetable of the course */
- Crs_DB_RemoveCrsTimetable (CrsCod);
+ Crs_DB_RemoveCrsTimetable (HieCod);
/***** Remove exam announcements in the course *****/
/* Mark all exam announcements in the course as deleted */
- Cfe_DB_MarkCallForExamsInCrsAsDeleted (CrsCod);
+ Cfe_DB_MarkCallForExamsInCrsAsDeleted (HieCod);
/***** Remove course cards of the course *****/
/* Remove content of course cards */
- Rec_DB_RemoveAllFieldContentsInCrs (CrsCod);
+ Rec_DB_RemoveAllFieldContentsInCrs (HieCod);
/* Remove definition of fields in course cards */
- Rec_DB_RemoveAllFieldsInCrs (CrsCod);
+ Rec_DB_RemoveAllFieldsInCrs (HieCod);
/***** Remove information related to files in course,
including groups and projects,
so this function must be called
before removing groups and projects *****/
- Brw_DB_RemoveCrsFiles (CrsCod);
+ Brw_DB_RemoveCrsFiles (HieCod);
/***** Assessment tab *****/
/* Remove assignments of the course */
- Asg_RemoveCrsAssignments (CrsCod);
+ Asg_RemoveCrsAssignments (HieCod);
/* Remove projects of the course */
- Prj_RemoveCrsProjects (CrsCod);
+ Prj_RemoveCrsProjects (HieCod);
/* Remove tests of the course */
- TstPrn_RemoveCrsPrints (CrsCod);
- Tst_DB_RemoveTstConfig (CrsCod);
+ TstPrn_RemoveCrsPrints (HieCod);
+ Tst_DB_RemoveTstConfig (HieCod);
/* Remove all exams in the course */
- Exa_RemoveCrsExams (CrsCod);
+ Exa_RemoveCrsExams (HieCod);
/* Remove all games in the course */
- Gam_RemoveCrsGames (CrsCod);
+ Gam_RemoveCrsGames (HieCod);
/* Remove all questions in the course */
- Qst_RemoveCrsQsts (CrsCod);
+ Qst_RemoveCrsQsts (HieCod);
/* Remove all rubrics in the course */
- Rub_RemoveCrsRubrics (CrsCod);
+ Rub_RemoveCrsRubrics (HieCod);
/***** Remove attendance events of the course *****/
- Att_RemoveCrsEvents (CrsCod);
+ Att_RemoveCrsEvents (HieCod);
/***** Remove notices in the course *****/
- Not_DB_RemoveCrsNotices (CrsCod);
+ Not_DB_RemoveCrsNotices (HieCod);
/***** Remove all threads and posts in forums of the course *****/
- For_DB_RemoveForums (Hie_CRS,CrsCod);
+ For_DB_RemoveForums (Hie_CRS,HieCod);
/***** Remove all surveys in the course *****/
- Svy_RemoveSurveys (Hie_CRS,CrsCod);
+ Svy_RemoveSurveys (Hie_CRS,HieCod);
/***** Remove groups in the course *****/
- Grp_DB_RemoveCrsGrps (CrsCod);
+ Grp_DB_RemoveCrsGrps (HieCod);
/***** Remove users' requests for inscription in the course *****/
- Enr_DB_RemCrsRequests (CrsCod);
+ Enr_DB_RemCrsRequests (HieCod);
/***** Remove possible users remaining in the course (teachers) *****/
- Set_DB_RemAllUsrsFromCrsSettings (CrsCod);
- Enr_DB_RemAllUsrsFromCrs (CrsCod);
+ Set_DB_RemAllUsrsFromCrsSettings (HieCod);
+ Enr_DB_RemAllUsrsFromCrs (HieCod);
/***** Remove directories of the course *****/
snprintf (PathRelCrs,sizeof (PathRelCrs),"%s/%ld",
- Cfg_PATH_CRS_PRIVATE,CrsCod);
+ Cfg_PATH_CRS_PRIVATE,HieCod);
Fil_RemoveTree (PathRelCrs);
snprintf (PathRelCrs,sizeof (PathRelCrs),"%s/%ld",
- Cfg_PATH_CRS_PUBLIC,CrsCod);
+ Cfg_PATH_CRS_PUBLIC,HieCod);
Fil_RemoveTree (PathRelCrs);
}
}
diff --git a/swad_course.h b/swad_course.h
index 2f310147..c67ba288 100644
--- a/swad_course.h
+++ b/swad_course.h
@@ -64,7 +64,7 @@ void Crs_ReceiveFormNewCrs (void);
void Crs_RemoveCourse (void);
bool Crs_GetCourseDataByCod (struct Hie_Node *Crs);
-void Crs_RemoveCourseCompletely (long CrsCod);
+void Crs_RemoveCourseCompletely (long HieCod);
void Crs_ChangeInsCrsCod (void);
void Crs_ChangeCrsYear (void);
diff --git a/swad_degree_database.c b/swad_degree_database.c
index bac46427..c2b1b1e8 100644
--- a/swad_degree_database.c
+++ b/swad_degree_database.c
@@ -280,7 +280,7 @@ void Deg_DB_GetDegTypeNameByCod (struct DegTyp_DegreeType *DegTyp)
/********************* Get data of a degree from its code ********************/
/*****************************************************************************/
-unsigned Deg_DB_GetDegreeDataByCod (MYSQL_RES **mysql_res,long DegCod)
+unsigned Deg_DB_GetDegreeDataByCod (MYSQL_RES **mysql_res,long HieCod)
{
return (unsigned)
DB_QuerySELECT (mysql_res,"can not get data of a degree",
@@ -294,17 +294,17 @@ unsigned Deg_DB_GetDegreeDataByCod (MYSQL_RES **mysql_res,long DegCod)
"WWW" // row[7]
" FROM deg_degrees"
" WHERE DegCod=%ld",
- DegCod);
+ HieCod);
}
/*****************************************************************************/
/********** Get the institution code of a degree from its code ***************/
/*****************************************************************************/
-long Deg_DB_GetInsCodOfDegreeByCod (long DegCod)
+long Deg_DB_GetInsCodOfDegreeByCod (long HieCod)
{
/***** Trivial check: degree code should be > 0 *****/
- if (DegCod <= 0)
+ if (HieCod <= 0)
return -1L;
/***** Get the institution code of a degree from database *****/
@@ -314,17 +314,17 @@ long Deg_DB_GetInsCodOfDegreeByCod (long DegCod)
"ctr_centers"
" WHERE deg_degrees.DegCod=%ld"
" AND deg_degrees.CtrCod=ctr_centers.CtrCod",
- DegCod);
+ HieCod);
}
/*****************************************************************************/
/************* Get the center code of a degree from its code *****************/
/*****************************************************************************/
-long Deg_DB_GetCtrCodOfDegreeByCod (long DegCod)
+long Deg_DB_GetCtrCodOfDegreeByCod (long HieCod)
{
/***** Trivial check: degree code should be > 0 *****/
- if (DegCod <= 0)
+ if (HieCod <= 0)
return -1L;
/***** Get the center code of a degree from database *****/
@@ -332,17 +332,17 @@ long Deg_DB_GetCtrCodOfDegreeByCod (long DegCod)
"SELECT CtrCod"
" FROM deg_degrees"
" WHERE DegCod=%ld",
- DegCod);
+ HieCod);
}
/*****************************************************************************/
/************* Get the short name of a degree from its code ******************/
/*****************************************************************************/
-void Deg_DB_GetShortNameOfDegreeByCod (long DegCod,char ShrtName[Nam_MAX_BYTES_SHRT_NAME + 1])
+void Deg_DB_GetDegShrtName (long HieCod,char ShrtName[Nam_MAX_BYTES_SHRT_NAME + 1])
{
/***** Trivial check: degree code should be > 0 *****/
- if (DegCod <= 0)
+ if (HieCod <= 0)
{
ShrtName[0] = '\0';
return;
@@ -354,7 +354,7 @@ void Deg_DB_GetShortNameOfDegreeByCod (long DegCod,char ShrtName[Nam_MAX_BYTES_S
"SELECT ShortName"
" FROM deg_degrees"
" WHERE DegCod=%ld",
- DegCod);
+ HieCod);
}
/*****************************************************************************/
@@ -626,7 +626,7 @@ unsigned Deg_DB_GetNumDegsInSys (__attribute__((unused)) long SysCod)
/******************** Get number of degrees in a country *********************/
/*****************************************************************************/
-unsigned Deg_DB_GetNumDegsInCty (long CtyCod)
+unsigned Deg_DB_GetNumDegsInCty (long HieCod)
{
return (unsigned)
DB_QueryCOUNT ("can not get the number of degrees in a country",
@@ -637,14 +637,14 @@ unsigned Deg_DB_GetNumDegsInCty (long CtyCod)
" WHERE ins_instits.CtyCod=%ld"
" AND ins_instits.InsCod=ctr_centers.InsCod"
" AND ctr_centers.CtrCod=deg_degrees.CtrCod",
- CtyCod);
+ HieCod);
}
/*****************************************************************************/
/***************** Get number of degrees in an institution *******************/
/*****************************************************************************/
-unsigned Deg_DB_GetNumDegsInIns (long InsCod)
+unsigned Deg_DB_GetNumDegsInIns (long HieCod)
{
return (unsigned)
DB_QueryCOUNT ("can not get the number of degrees in an institution",
@@ -653,21 +653,21 @@ unsigned Deg_DB_GetNumDegsInIns (long InsCod)
"deg_degrees"
" WHERE ctr_centers.InsCod=%ld"
" AND ctr_centers.CtrCod=deg_degrees.CtrCod",
- InsCod);
+ HieCod);
}
/*****************************************************************************/
/******************** Get number of degrees in a center **********************/
/*****************************************************************************/
-unsigned Deg_DB_GetNumDegsInCtr (long CtrCod)
+unsigned Deg_DB_GetNumDegsInCtr (long HieCod)
{
return (unsigned)
DB_QueryCOUNT ("can not get the number of degrees in a center",
"SELECT COUNT(*)"
" FROM deg_degrees"
" WHERE CtrCod=%ld",
- CtrCod);
+ HieCod);
}
/*****************************************************************************/
@@ -689,7 +689,7 @@ void Deg_DB_UpdateDegTypName (long DegTypCod,
/***************** Update degree name in table of degrees ********************/
/*****************************************************************************/
-void Deg_DB_UpdateDegNameDB (long DegCod,
+void Deg_DB_UpdateDegNameDB (long HieCod,
const char *FldName,const char *NewDegName)
{
DB_QueryUPDATE ("can not update the name of a degree",
@@ -697,21 +697,21 @@ void Deg_DB_UpdateDegNameDB (long DegCod,
" SET %s='%s'"
" WHERE DegCod=%ld",
FldName,NewDegName,
- DegCod);
+ HieCod);
}
/*****************************************************************************/
/*********************** Update the center of a degree ***********************/
/*****************************************************************************/
-void Deg_DB_UpdateDegCtr (long DegCod,long NewCtrCod)
+void Deg_DB_UpdateDegCtr (long HieCod,long NewCtrCod)
{
DB_QueryUPDATE ("can not update the center of a degree",
"UPDATE deg_degrees"
" SET CtrCod=%ld"
" WHERE DegCod=%ld",
NewCtrCod,
- DegCod);
+ HieCod);
}
/*****************************************************************************/
@@ -732,14 +732,14 @@ void Deg_DB_UpdateDegTyp (long DegCod,long NewDegTypCod)
/************************ Update the WWW of a degree *************************/
/*****************************************************************************/
-void Deg_DB_UpdateDegWWW (long DegCod,const char NewWWW[Cns_MAX_BYTES_WWW + 1])
+void Deg_DB_UpdateDegWWW (long HieCod,const char NewWWW[Cns_MAX_BYTES_WWW + 1])
{
DB_QueryUPDATE ("can not update the web of a degree",
"UPDATE deg_degrees"
" SET WWW='%s'"
" WHERE DegCod=%ld",
NewWWW,
- DegCod);
+ HieCod);
}
/*****************************************************************************/
diff --git a/swad_degree_database.h b/swad_degree_database.h
index cc704fdf..b3a12c05 100644
--- a/swad_degree_database.h
+++ b/swad_degree_database.h
@@ -44,10 +44,10 @@ unsigned Deg_DB_GetNumDegreeTypes (Hie_Level_t Level);
unsigned Deg_DB_GetDegreeTypes (MYSQL_RES **mysql_res,
Hie_Level_t Level,DegTyp_Order_t Order);
void Deg_DB_GetDegTypeNameByCod (struct DegTyp_DegreeType *DegTyp);
-unsigned Deg_DB_GetDegreeDataByCod (MYSQL_RES **mysql_res,long DegCod);
-long Deg_DB_GetInsCodOfDegreeByCod (long DegCod);
-long Deg_DB_GetCtrCodOfDegreeByCod (long DegCod);
-void Deg_DB_GetShortNameOfDegreeByCod (long DegCod,char ShrtName[Nam_MAX_BYTES_SHRT_NAME + 1]);
+unsigned Deg_DB_GetDegreeDataByCod (MYSQL_RES **mysql_res,long HieCod);
+long Deg_DB_GetInsCodOfDegreeByCod (long HieCod);
+long Deg_DB_GetCtrCodOfDegreeByCod (long HieCod);
+void Deg_DB_GetDegShrtName (long HieCod,char ShrtName[Nam_MAX_BYTES_SHRT_NAME + 1]);
bool Deg_DB_CheckIfDegreeTypeNameExists (const char *DegTypName,long DegTypCod);
unsigned Deg_DB_GetNumDegsOfType (long DegTypCod);
unsigned Deg_DB_GetDegsOfType (MYSQL_RES **mysql_res,long DegTypCod);
@@ -68,17 +68,17 @@ unsigned Deg_DB_GetNumDegsWithUsrs (Rol_Role_t Role,
Hie_Level_t Level,long Cod);
unsigned Deg_DB_GetNumDegsInSys (__attribute__((unused)) long SysCod);
-unsigned Deg_DB_GetNumDegsInCty (long CtyCod);
-unsigned Deg_DB_GetNumDegsInIns (long InsCod);
-unsigned Deg_DB_GetNumDegsInCtr (long CtrCod);
+unsigned Deg_DB_GetNumDegsInCty (long HieCod);
+unsigned Deg_DB_GetNumDegsInIns (long HieCod);
+unsigned Deg_DB_GetNumDegsInCtr (long HieCod);
void Deg_DB_UpdateDegTypName (long DegTypCod,
const char NewNameDegTyp[DegTyp_MAX_BYTES_DEGREE_TYPE_NAME + 1]);
-void Deg_DB_UpdateDegNameDB (long DegCod,
+void Deg_DB_UpdateDegNameDB (long HieCod,
const char *FldName,const char *NewDegName);
-void Deg_DB_UpdateDegCtr (long DegCod,long NewCtrCod);
-void Deg_DB_UpdateDegTyp (long DegCod,long NewDegTypCod);
-void Deg_DB_UpdateDegWWW (long DegCod,const char NewWWW[Cns_MAX_BYTES_WWW + 1]);
+void Deg_DB_UpdateDegCtr (long HieCod,long NewCtrCod);
+void Deg_DB_UpdateDegTyp (long HieCod,long NewDegTypCod);
+void Deg_DB_UpdateDegWWW (long HieCod,const char NewWWW[Cns_MAX_BYTES_WWW + 1]);
void Deg_DB_UpdateDegStatus (long DegCod,Hie_Status_t NewStatus);
unsigned Deg_DB_GetMyDegs (MYSQL_RES **mysql_res,long HieCod);
diff --git a/swad_enrolment_database.c b/swad_enrolment_database.c
index 9f24c793..1ae75ab8 100644
--- a/swad_enrolment_database.c
+++ b/swad_enrolment_database.c
@@ -250,7 +250,7 @@ bool Enr_DB_CheckIfUsrSharesAnyOfMyCrsWithDifferentRole (long UsrCod)
/*****************************************************************************/
// Returns user's code or -1 if no user found
-long Enr_DB_GetRamdomStdFromCrs (long CrsCod)
+long Enr_DB_GetRamdomStdFromCrs (long HieCod)
{
return DB_QuerySELECTCode ("can not get a random student from a course",
"SELECT UsrCod"
@@ -259,7 +259,7 @@ long Enr_DB_GetRamdomStdFromCrs (long CrsCod)
" AND Role=%u"
" ORDER BY RAND()"
" LIMIT 1",
- CrsCod,
+ HieCod,
(unsigned) Rol_STD);
}
@@ -977,13 +977,13 @@ double Enr_DB_GetAverageNumCrssPerUsr (Hie_Level_t Level,long Cod,Rol_Role_t Rol
/************************** Remove user from course **************************/
/*****************************************************************************/
-void Enr_DB_RemUsrFromCrs (long UsrCod,long CrsCod)
+void Enr_DB_RemUsrFromCrs (long UsrCod,long HieCod)
{
DB_QueryDELETE ("can not remove a user from a course",
"DELETE FROM crs_users"
" WHERE CrsCod=%ld"
" AND UsrCod=%ld",
- CrsCod,
+ HieCod,
UsrCod);
}
@@ -1003,12 +1003,12 @@ void Enr_DB_RemUsrFromAllCrss (long UsrCod)
/*************** Remove all users from settings in a course ******************/
/*****************************************************************************/
-void Enr_DB_RemAllUsrsFromCrs (long CrsCod)
+void Enr_DB_RemAllUsrsFromCrs (long HieCod)
{
DB_QueryDELETE ("can not remove users from a course",
"DELETE FROM crs_users"
" WHERE CrsCod=%ld",
- CrsCod);
+ HieCod);
}
/*****************************************************************************/
@@ -1600,7 +1600,7 @@ unsigned Enr_DB_GetEnrolmentRequestByCod (MYSQL_RES **mysql_res,long ReqCod)
/********** Try to get an enrolment request from a user in a course **********/
/*****************************************************************************/
-long Enr_DB_GetUsrEnrolmentRequestInCrs (long UsrCod,long CrsCod)
+long Enr_DB_GetUsrEnrolmentRequestInCrs (long UsrCod,long HieCod)
{
return
DB_QuerySELECTCode ("can not get enrolment request",
@@ -1608,7 +1608,7 @@ long Enr_DB_GetUsrEnrolmentRequestInCrs (long UsrCod,long CrsCod)
" FROM crs_requests"
" WHERE CrsCod=%ld"
" AND UsrCod=%ld",
- CrsCod,
+ HieCod,
UsrCod);
}
@@ -1628,12 +1628,12 @@ void Enr_DB_RemRequest (long ReqCod)
/*********** Remove all users' requests for inscription in a course **********/
/*****************************************************************************/
-void Enr_DB_RemCrsRequests (long CrsCod)
+void Enr_DB_RemCrsRequests (long HieCod)
{
DB_QueryDELETE ("can not remove requests for inscription to a course",
"DELETE FROM crs_requests"
" WHERE CrsCod=%ld",
- CrsCod);
+ HieCod);
}
/*****************************************************************************/
diff --git a/swad_enrolment_database.h b/swad_enrolment_database.h
index 13c45cc4..fcf1408a 100644
--- a/swad_enrolment_database.h
+++ b/swad_enrolment_database.h
@@ -48,7 +48,7 @@ bool Enr_DB_CheckIfUsrBelongsToCrs (long UsrCod,long HieCod,
bool CountOnlyAcceptedCourses);
bool Enr_DB_CheckIfUsrSharesAnyOfMyCrs (long UsrCod);
bool Enr_DB_CheckIfUsrSharesAnyOfMyCrsWithDifferentRole (long UsrCod);
-long Enr_DB_GetRamdomStdFromCrs (long CrsCod);
+long Enr_DB_GetRamdomStdFromCrs (long HieCod);
unsigned Enr_DB_GetUsrsFromCurrentCrs (MYSQL_RES **mysql_res);
unsigned Enr_DB_GetUsrsFromCurrentCrsExceptMe (MYSQL_RES **mysql_res);
unsigned Enr_DB_GetTchsFromCurrentCrsExceptMe (MYSQL_RES **mysql_res);
@@ -64,9 +64,9 @@ unsigned Enr_DB_GetNumUsrsNotBelongingToAnyCrs (void);
double Enr_DB_GetAverageNumUsrsPerCrs (Hie_Level_t Level,long Cod,Rol_Role_t Role);
double Enr_DB_GetAverageNumCrssPerUsr (Hie_Level_t Level,long Cod,Rol_Role_t Role);
-void Enr_DB_RemUsrFromCrs (long UsrCod,long CrsCod);
+void Enr_DB_RemUsrFromCrs (long UsrCod,long HieCod);
void Enr_DB_RemUsrFromAllCrss (long UsrCod);
-void Enr_DB_RemAllUsrsFromCrs (long CrsCod);
+void Enr_DB_RemAllUsrsFromCrs (long HieCod);
//-------------------------- Enrolment requests -------------------------------
long Enr_DB_CreateMyEnrolmentRequestInCurrentCrs (Rol_Role_t NewRole);
@@ -74,10 +74,10 @@ void Enr_DB_UpdateMyEnrolmentRequestInCurrentCrs (long ReqCod,Rol_Role_t NewRole
unsigned Enr_DB_GetEnrolmentRequests (MYSQL_RES **mysql_res,unsigned RolesSelected);
unsigned Enr_DB_GetEnrolmentRequestByCod (MYSQL_RES **mysql_res,long ReqCod);
-long Enr_DB_GetUsrEnrolmentRequestInCrs (long UsrCod,long CrsCod);
+long Enr_DB_GetUsrEnrolmentRequestInCrs (long UsrCod,long HieCod);
void Enr_DB_RemRequest (long ReqCod);
-void Enr_DB_RemCrsRequests (long CrsCod);
+void Enr_DB_RemCrsRequests (long HieCod);
void Enr_DB_RemUsrRequests (long UsrCod);
void Enr_DB_RemoveExpiredEnrolmentRequests (void);
diff --git a/swad_group.c b/swad_group.c
index c64609e2..7cca03c8 100644
--- a/swad_group.c
+++ b/swad_group.c
@@ -4368,14 +4368,14 @@ Grp_WhichGroups_t Grp_GetParWhichGroups (void)
/************************** Remove groups in a course ************************/
/*****************************************************************************/
-void Grp_DB_RemoveCrsGrps (long CrsCod)
+void Grp_DB_RemoveCrsGrps (long HieCod)
{
/***** Remove all users in groups in the course *****/
- Grp_DB_RemoveUsrsFromGrpsOfCrs (CrsCod);
+ Grp_DB_RemoveUsrsFromGrpsOfCrs (HieCod);
/***** Remove all groups in the course *****/
- Grp_DB_RemoveGrpsInCrs (CrsCod);
+ Grp_DB_RemoveGrpsInCrs (HieCod);
/***** Remove all group types in the course *****/
- Grp_DB_RemoveGrpTypesInCrs (CrsCod);
+ Grp_DB_RemoveGrpTypesInCrs (HieCod);
}
diff --git a/swad_group.h b/swad_group.h
index d376cf66..0cae8c85 100644
--- a/swad_group.h
+++ b/swad_group.h
@@ -237,6 +237,6 @@ void Grp_ShowFormToSelWhichGrps (Act_Action_t Action,
void (*FuncPars) (void *Args),void *Args);
Grp_WhichGroups_t Grp_GetParWhichGroups (void);
-void Grp_DB_RemoveCrsGrps (long CrsCod);
+void Grp_DB_RemoveCrsGrps (long HieCod);
#endif
diff --git a/swad_group_database.c b/swad_group_database.c
index 58a13ca2..4a086ef8 100644
--- a/swad_group_database.c
+++ b/swad_group_database.c
@@ -1097,7 +1097,7 @@ void Grp_DB_RemUsrFromAllGrps (long UsrCod)
/******************* Remove all users from groups in a course ****************/
/*****************************************************************************/
-void Grp_DB_RemoveUsrsFromGrpsOfCrs (long CrsCod)
+void Grp_DB_RemoveUsrsFromGrpsOfCrs (long HieCod)
{
DB_QueryDELETE ("can not remove users from groups of a course",
"DELETE FROM grp_users"
@@ -1107,7 +1107,7 @@ void Grp_DB_RemoveUsrsFromGrpsOfCrs (long CrsCod)
" WHERE grp_types.CrsCod=%ld"
" AND grp_types.GrpTypCod=grp_groups.GrpTypCod"
" AND grp_groups.GrpCod=grp_users.GrpCod",
- CrsCod);
+ HieCod);
}
/*****************************************************************************/
@@ -1141,12 +1141,12 @@ void Grp_DB_RemoveUsrsFromGrp (long GrpCod)
/******************** Remove all group types in a course *********************/
/*****************************************************************************/
-void Grp_DB_RemoveGrpTypesInCrs (long CrsCod)
+void Grp_DB_RemoveGrpTypesInCrs (long HieCod)
{
DB_QueryDELETE ("can not remove types of group of a course",
"DELETE FROM grp_types"
" WHERE CrsCod=%ld",
- CrsCod);
+ HieCod);
}
/*****************************************************************************/
diff --git a/swad_group_database.h b/swad_group_database.h
index 5857f1a5..9029918b 100644
--- a/swad_group_database.h
+++ b/swad_group_database.h
@@ -113,11 +113,11 @@ void Grp_DB_RemoveUsrFromGrp (long UsrCod,long GrpCod);
void Grp_DB_RemUsrFromAllGrpsInCrs (long UsrCod,long CrsCod);
void Grp_DB_RemUsrFromAllGrps (long UsrCod);
-void Grp_DB_RemoveUsrsFromGrpsOfCrs (long CrsCod);
+void Grp_DB_RemoveUsrsFromGrpsOfCrs (long HieCod);
void Grp_DB_RemoveUsrsFromGrpsOfType (long GrpTypCod);
void Grp_DB_RemoveUsrsFromGrp (long GrpCod);
-void Grp_DB_RemoveGrpTypesInCrs (long CrsCod);
+void Grp_DB_RemoveGrpTypesInCrs (long HieCod);
void Grp_DB_RemoveGrpType (long GrpTypCod);
void Grp_DB_RemoveGrpsInCrs (long CrsCod);
diff --git a/swad_institution_database.c b/swad_institution_database.c
index 2dcf5608..312b0181 100644
--- a/swad_institution_database.c
+++ b/swad_institution_database.c
@@ -69,35 +69,35 @@ long Ins_DB_CreateInstitution (const struct Hie_Node *Ins,Hie_Status_t Status)
/****************** Update country in table of institutions ******************/
/*****************************************************************************/
-void Ins_DB_UpdateInsCty (long InsCod,long CtyCod)
+void Ins_DB_UpdateInsCty (long HieCod,long CtyCod)
{
DB_QueryUPDATE ("can not update the country of an institution",
"UPDATE ins_instits"
" SET CtyCod=%ld"
" WHERE InsCod=%ld",
CtyCod,
- InsCod);
+ HieCod);
}
/*****************************************************************************/
/****************** Update status in table of institutions *******************/
/*****************************************************************************/
-void Ins_DB_UpdateInsStatus (long InsCod,Hie_Status_t Status)
+void Ins_DB_UpdateInsStatus (long HieCod,Hie_Status_t Status)
{
DB_QueryUPDATE ("can not update the status of an institution",
"UPDATE ins_instits"
" SET Status=%u"
" WHERE InsCod=%ld",
(unsigned) Status,
- InsCod);
+ HieCod);
}
/*****************************************************************************/
/*************************** Update institution name *************************/
/*****************************************************************************/
-void Ins_DB_UpdateInsName (long InsCod,const char *FldName,const char *NewName)
+void Ins_DB_UpdateInsName (long HieCod,const char *FldName,const char *NewName)
{
/***** Update institution changing old name by new name */
DB_QueryUPDATE ("can not update the name of an institution",
@@ -105,14 +105,14 @@ void Ins_DB_UpdateInsName (long InsCod,const char *FldName,const char *NewName)
" SET %s='%s'"
" WHERE InsCod=%ld",
FldName,NewName,
- InsCod);
+ HieCod);
}
/*****************************************************************************/
/**************** Update database changing old WWW by new WWW ****************/
/*****************************************************************************/
-void Ins_DB_UpdateInsWWW (long InsCod,const char NewWWW[Cns_MAX_BYTES_WWW + 1])
+void Ins_DB_UpdateInsWWW (long HieCod,const char NewWWW[Cns_MAX_BYTES_WWW + 1])
{
/***** Update database changing old WWW by new WWW *****/
DB_QueryUPDATE ("can not update the web of an institution",
@@ -120,14 +120,14 @@ void Ins_DB_UpdateInsWWW (long InsCod,const char NewWWW[Cns_MAX_BYTES_WWW + 1])
" SET WWW='%s'"
" WHERE InsCod=%ld",
NewWWW,
- InsCod);
+ HieCod);
}
/*****************************************************************************/
/************************* Get data of an institution ************************/
/*****************************************************************************/
-unsigned Ins_DB_GetInsDataByCod (MYSQL_RES **mysql_res,long InsCod)
+unsigned Ins_DB_GetInsDataByCod (MYSQL_RES **mysql_res,long HieCod)
{
return (unsigned)
DB_QuerySELECT (mysql_res,"can not get data of an institution",
@@ -141,17 +141,17 @@ unsigned Ins_DB_GetInsDataByCod (MYSQL_RES **mysql_res,long InsCod)
"0 AS NumUsrs" // row[7] (not used)
" FROM ins_instits"
" WHERE InsCod=%ld",
- InsCod);
+ HieCod);
}
/*****************************************************************************/
/*********** Get the short name of an institution from its code **************/
/*****************************************************************************/
-void Ins_DB_GetInsShrtName (long InsCod,char ShrtName[Nam_MAX_BYTES_SHRT_NAME + 1])
+void Ins_DB_GetInsShrtName (long HieCod,char ShrtName[Nam_MAX_BYTES_SHRT_NAME + 1])
{
/***** Trivial check: institution code should be > 0 *****/
- if (InsCod <= 0)
+ if (HieCod <= 0)
{
ShrtName[0] = '\0'; // Empty name
return;
@@ -163,7 +163,7 @@ void Ins_DB_GetInsShrtName (long InsCod,char ShrtName[Nam_MAX_BYTES_SHRT_NAME +
"SELECT ShortName"
" FROM ins_instits"
" WHERE InsCod=%ld",
- InsCod);
+ HieCod);
}
/*****************************************************************************/
@@ -256,7 +256,7 @@ unsigned Ins_DB_GetInsWithPendingCtrsAdminByMe (MYSQL_RES **mysql_res)
/************* Get institutions in country ordered by short name *************/
/*****************************************************************************/
-unsigned Ins_DB_GetInssInCtyOrderedByShrtName (MYSQL_RES **mysql_res,long CtyCod)
+unsigned Ins_DB_GetInssInCtyOrderedByShrtName (MYSQL_RES **mysql_res,long HieCod)
{
return (unsigned)
DB_QuerySELECT (mysql_res,"can not get institutions",
@@ -266,14 +266,14 @@ unsigned Ins_DB_GetInssInCtyOrderedByShrtName (MYSQL_RES **mysql_res,long CtyCod
" FROM ins_instits"
" WHERE CtyCod=%ld"
" ORDER BY ShortName",
- CtyCod);
+ HieCod);
}
/*****************************************************************************/
/******* Get basic list of institutions ordered by name of institution *******/
/*****************************************************************************/
-unsigned Ins_DB_GetInssInCtyOrderedByFullName (MYSQL_RES **mysql_res,long CtyCod)
+unsigned Ins_DB_GetInssInCtyOrderedByFullName (MYSQL_RES **mysql_res,long HieCod)
{
return (unsigned)
DB_QuerySELECT (mysql_res,"can not get institutions",
@@ -288,7 +288,7 @@ unsigned Ins_DB_GetInssInCtyOrderedByFullName (MYSQL_RES **mysql_res,long CtyCod
" FROM ins_instits"
" WHERE CtyCod=%ld"
" ORDER BY FullName",
- CtyCod);
+ HieCod);
}
/*****************************************************************************/
@@ -296,7 +296,7 @@ unsigned Ins_DB_GetInssInCtyOrderedByFullName (MYSQL_RES **mysql_res,long CtyCod
/************* with number of users who claim to belong to them **************/
/*****************************************************************************/
-unsigned Ins_DB_GetFullListOfInssInCty (MYSQL_RES **mysql_res,long CtyCod)
+unsigned Ins_DB_GetFullListOfInssInCty (MYSQL_RES **mysql_res,long HieCod)
{
static const char *OrderBySubQuery[Hie_NUM_ORDERS] =
{
@@ -337,8 +337,8 @@ unsigned Ins_DB_GetFullListOfInssInCty (MYSQL_RES **mysql_res,long CtyCod)
"InsCod"
" FROM usr_data))"
" ORDER BY %s",
- CtyCod,
- CtyCod,
+ HieCod,
+ HieCod,
OrderBySubQuery[Gbl.Hierarchy.List[Hie_CTY].SelectedOrder]);
}
@@ -643,7 +643,7 @@ unsigned Ins_DB_SearchInss (MYSQL_RES **mysql_res,
/******************* Get number of institutions in system ********************/
/*****************************************************************************/
-unsigned Ins_DB_GetNumInssInSys (__attribute__((unused)) long SysCod)
+unsigned Ins_DB_GetNumInssInSys (__attribute__((unused)) long HieCod)
{
return (unsigned) DB_GetNumRowsTable ("ins_instits");
}
@@ -834,24 +834,24 @@ bool Ins_DB_CheckIfUsrBelongsToIns (long UsrCod,long HieCod,
/******** Get number of users who claim to belong to an institution **********/
/*****************************************************************************/
-unsigned Ins_DB_GetNumUsrsWhoClaimToBelongToIns (long InsCod)
+unsigned Ins_DB_GetNumUsrsWhoClaimToBelongToIns (long HieCod)
{
return (unsigned)
DB_QueryCOUNT ("can not get number of users",
"SELECT COUNT(UsrCod)"
" FROM usr_data"
" WHERE InsCod=%ld",
- InsCod);
+ HieCod);
}
/*****************************************************************************/
/***************************** Remove institution ****************************/
/*****************************************************************************/
-void Ins_DB_RemoveInstitution (long InsCod)
+void Ins_DB_RemoveInstitution (long HieCod)
{
DB_QueryDELETE ("can not remove an institution",
"DELETE FROM ins_instits"
" WHERE InsCod=%ld",
- InsCod);
+ HieCod);
}
diff --git a/swad_institution_database.h b/swad_institution_database.h
index 0758117c..71ebd885 100644
--- a/swad_institution_database.h
+++ b/swad_institution_database.h
@@ -38,13 +38,13 @@
/*****************************************************************************/
long Ins_DB_CreateInstitution (const struct Hie_Node *Ins,Hie_Status_t Status);
-void Ins_DB_UpdateInsCty (long InsCod,long CtyCod);
-void Ins_DB_UpdateInsStatus (long InsCod,Hie_Status_t Status);
-void Ins_DB_UpdateInsName (long InsCod,const char *FldName,const char *NewName);
-void Ins_DB_UpdateInsWWW (long InsCod,const char NewWWW[Cns_MAX_BYTES_WWW + 1]);
+void Ins_DB_UpdateInsCty (long HieCod,long CtyCod);
+void Ins_DB_UpdateInsStatus (long HieCod,Hie_Status_t Status);
+void Ins_DB_UpdateInsName (long HieCod,const char *FldName,const char *NewName);
+void Ins_DB_UpdateInsWWW (long HieCod,const char NewWWW[Cns_MAX_BYTES_WWW + 1]);
-unsigned Ins_DB_GetInsDataByCod (MYSQL_RES **mysql_res,long InsCod);
-void Ins_DB_GetInsShrtName (long InsCod,char ShrtName[Nam_MAX_BYTES_SHRT_NAME + 1]);
+unsigned Ins_DB_GetInsDataByCod (MYSQL_RES **mysql_res,long HieCod);
+void Ins_DB_GetInsShrtName (long HieCod,char ShrtName[Nam_MAX_BYTES_SHRT_NAME + 1]);
unsigned Ins_DB_GetInsShrtNameAndCty (MYSQL_RES **mysql_res,long InsCod);
bool Ins_DB_CheckIfInsNameExistsInCty (const char *FldName,
const char *Name,
@@ -55,9 +55,9 @@ bool Ins_DB_CheckIfInsNameExistsInCty (const char *FldName,
unsigned Ins_DB_GetAllInsWithPendingCtr (MYSQL_RES **mysql_res);
unsigned Ins_DB_GetInsWithPendingCtrsAdminByMe (MYSQL_RES **mysql_res);
-unsigned Ins_DB_GetInssInCtyOrderedByShrtName (MYSQL_RES **mysql_res,long CtyCod);
-unsigned Ins_DB_GetInssInCtyOrderedByFullName (MYSQL_RES **mysql_res,long CtyCod);
-unsigned Ins_DB_GetFullListOfInssInCty (MYSQL_RES **mysql_res,long CtyCod);
+unsigned Ins_DB_GetInssInCtyOrderedByShrtName (MYSQL_RES **mysql_res,long HieCod);
+unsigned Ins_DB_GetInssInCtyOrderedByFullName (MYSQL_RES **mysql_res,long HieCod);
+unsigned Ins_DB_GetFullListOfInssInCty (MYSQL_RES **mysql_res,long HieCod);
unsigned Ins_DB_GetInssOrderedByNumCtrs (MYSQL_RES **mysql_res);
unsigned Ins_DB_GetInssOrderedByNumDegs (MYSQL_RES **mysql_res);
@@ -69,7 +69,7 @@ unsigned Ins_DB_SearchInss (MYSQL_RES **mysql_res,
const char SearchQuery[Sch_MAX_BYTES_SEARCH_QUERY + 1],
const char *RangeQuery);
-unsigned Ins_DB_GetNumInssInSys (__attribute__((unused)) long SysCod);
+unsigned Ins_DB_GetNumInssInSys (__attribute__((unused)) long HieCod);
unsigned Ins_DB_GetNumInssInCty (long CtyCod);
unsigned Ins_DB_GetNumInssWithCtrs (Hie_Level_t Level,long HieCod);
@@ -81,8 +81,8 @@ unsigned Ins_DB_GetNumInnsWithUsrs (Rol_Role_t Role,
unsigned Ins_DB_GetMyInss (MYSQL_RES **mysql_res,long HieCod);
bool Ins_DB_CheckIfUsrBelongsToIns (long UsrCod,long HieCod,
bool CountOnlyAcceptedCourses);
-unsigned Ins_DB_GetNumUsrsWhoClaimToBelongToIns (long InsCod);
+unsigned Ins_DB_GetNumUsrsWhoClaimToBelongToIns (long HieCod);
-void Ins_DB_RemoveInstitution (long InsCod);
+void Ins_DB_RemoveInstitution (long HieCod);
#endif
diff --git a/swad_log.c b/swad_log.c
index ee248960..cfdfeb88 100644
--- a/swad_log.c
+++ b/swad_log.c
@@ -201,23 +201,24 @@ void Log_GetAndShowLastClicks (void)
const char *ClassRow;
time_t TimeDiff;
struct Hie_Node Hie[Hie_NUM_LEVELS];
+ Hie_Level_t Level;
/***** Get last clicks from database *****/
NumClicks = Log_DB_GetLastClicks (&mysql_res);
/***** Write list of connected users *****/
- HTM_TABLE_BeginCenterPadding (1);
+ HTM_TABLE_Begin ("TBL_SCROLL");
/* Heading row */
HTM_TR_Begin (NULL);
- HTM_TH_Span (Txt_Click ,HTM_HEAD_RIGHT,1,1,"LC_CLK"); // Click
- HTM_TH_Span (Txt_ELAPSED_TIME ,HTM_HEAD_RIGHT,1,1,"LC_TIM"); // Elapsed time
- HTM_TH_Span (Txt_Role ,HTM_HEAD_LEFT ,1,1,"LC_ROL"); // Role
- HTM_TH_Span (Txt_HIERARCHY_SINGUL_Abc[Hie_CTY],HTM_HEAD_LEFT ,1,1,"LC_CTY"); // Country
- HTM_TH_Span (Txt_HIERARCHY_SINGUL_Abc[Hie_INS],HTM_HEAD_LEFT ,1,1,"LC_INS"); // Institution
- HTM_TH_Span (Txt_HIERARCHY_SINGUL_Abc[Hie_CTR],HTM_HEAD_LEFT ,1,1,"LC_CTR"); // Center
- HTM_TH_Span (Txt_HIERARCHY_SINGUL_Abc[Hie_DEG],HTM_HEAD_LEFT ,1,1,"LC_DEG"); // Degree
- HTM_TH_Span (Txt_Action ,HTM_HEAD_LEFT ,1,1,"LC_ACT"); // Action
+ HTM_TH_Span (Txt_Click ,HTM_HEAD_RIGHT,1,1,"LC_CLK"); // Click
+ HTM_TH_Span (Txt_ELAPSED_TIME ,HTM_HEAD_RIGHT,1,1,"LC_TIM"); // Elapsed time
+ HTM_TH_Span (Txt_Role ,HTM_HEAD_LEFT ,1,1,"LC_ROL"); // Role
+ for (Level = Hie_CTY;
+ Level <= Hie_DEG;
+ Level++)
+ HTM_TH_Span (Txt_HIERARCHY_SINGUL_Abc[Level],HTM_HEAD_LEFT ,1,1,"LC_HIE"); // Country, Institution, Center, Degree
+ HTM_TH_Span (Txt_Action ,HTM_HEAD_LEFT ,1,1,"LC_ACT"); // Action
HTM_TR_End ();
for (NumClick = 0;
@@ -254,8 +255,8 @@ void Log_GetAndShowLastClicks (void)
Hie[Hie_CTR].HieCod = Str_ConvertStrCodToLongCod (row[6]);
Hie[Hie_DEG].HieCod = Str_ConvertStrCodToLongCod (row[7]);
Ins_DB_GetInsShrtName (Hie[Hie_INS].HieCod,Hie[Hie_INS].ShrtName);
- Ctr_DB_GetShortNameOfCenterByCod (Hie[Hie_CTR].HieCod,Hie[Hie_CTR].ShrtName);
- Deg_DB_GetShortNameOfDegreeByCod (Hie[Hie_DEG].HieCod,Hie[Hie_DEG].ShrtName);
+ Ctr_DB_GetCtrShrtName (Hie[Hie_CTR].HieCod,Hie[Hie_CTR].ShrtName);
+ Deg_DB_GetDegShrtName (Hie[Hie_DEG].HieCod,Hie[Hie_DEG].ShrtName);
/* Print table row */
HTM_TR_Begin (NULL);
@@ -275,25 +276,20 @@ void Log_GetAndShowLastClicks (void)
HTM_Txt (Txt_ROLES_SINGUL_Abc[Rol_ConvertUnsignedStrToRole (row[3])][Usr_SEX_UNKNOWN]); // Role
HTM_TD_End ();
- HTM_TD_Begin ("class=\"LC_CTY %s_%s\"",
- ClassRow,The_GetSuffix ());
- HTM_Txt (Hie[Hie_CTY].FullName); // Country
+ HTM_TD_Begin ("class=\"LC_HIE %s_%s\"",
+ ClassRow,The_GetSuffix ());
+ HTM_Txt (Hie[Hie_CTY].FullName); // Country
HTM_TD_End ();
- HTM_TD_Begin ("class=\"LC_INS %s_%s\"",
- ClassRow,The_GetSuffix ());
- HTM_Txt (Hie[Hie_INS].ShrtName); // Institution
- HTM_TD_End ();
-
- HTM_TD_Begin ("class=\"LC_CTR %s_%s\"",
- ClassRow,The_GetSuffix ());
- HTM_Txt (Hie[Hie_CTR].ShrtName); // Center
- HTM_TD_End ();
-
- HTM_TD_Begin ("class=\"LC_DEG %s_%s\"",
- ClassRow,The_GetSuffix ());
- HTM_Txt (Hie[Hie_DEG].ShrtName); // Degree
- HTM_TD_End ();
+ for (Level = Hie_INS;
+ Level <= Hie_DEG;
+ Level++)
+ {
+ HTM_TD_Begin ("class=\"LC_HIE %s_%s\"",
+ ClassRow,The_GetSuffix ());
+ HTM_Txt (Hie[Level].ShrtName); // Institution, Center, Degree
+ HTM_TD_End ();
+ }
HTM_TD_Begin ("class=\"LC_ACT %s_%s\"",
ClassRow,The_GetSuffix ());
diff --git a/swad_notice_database.c b/swad_notice_database.c
index 74623250..10c26c38 100644
--- a/swad_notice_database.c
+++ b/swad_notice_database.c
@@ -374,7 +374,7 @@ void Not_DB_RemoveNotice (long NotCod)
/************************* Remove notices in a course ************************/
/*****************************************************************************/
-void Not_DB_RemoveCrsNotices (long CrsCod)
+void Not_DB_RemoveCrsNotices (long HieCod)
{
/***** Copy all notices from the course to table of deleted notices *****/
DB_QueryINSERT ("can not remove notices in a course",
@@ -388,11 +388,11 @@ void Not_DB_RemoveCrsNotices (long CrsCod)
"NumNotif"
" FROM not_notices"
" WHERE CrsCod=%ld",
- CrsCod);
+ HieCod);
/***** Remove all notices from the course *****/
DB_QueryDELETE ("can not remove notices in a course",
"DELETE FROM not_notices"
" WHERE CrsCod=%ld",
- CrsCod);
+ HieCod);
}
diff --git a/swad_notice_database.h b/swad_notice_database.h
index 0674dbf4..35a2955e 100644
--- a/swad_notice_database.h
+++ b/swad_notice_database.h
@@ -49,6 +49,6 @@ unsigned Not_DB_GetNumNoticesDeleted (MYSQL_RES **mysql_res,
Hie_Level_t Level);
void Not_DB_RemoveNotice (long NotCod);
-void Not_DB_RemoveCrsNotices (long CrsCod);
+void Not_DB_RemoveCrsNotices (long HieCod);
#endif
diff --git a/swad_project.c b/swad_project.c
index 7a3a8386..848d1bc9 100644
--- a/swad_project.c
+++ b/swad_project.c
@@ -3372,7 +3372,7 @@ void Prj_GetProjectDataByCod (struct Prj_Project *Prj)
code of the course (row[1])
and code of the department (row[2]) */
Prj->PrjCod = Str_ConvertStrCodToLongCod (row[0]);
- Prj->CrsCod = Str_ConvertStrCodToLongCod (row[1]);
+ Prj->HieCod = Str_ConvertStrCodToLongCod (row[1]);
Prj->DptCod = Str_ConvertStrCodToLongCod (row[2]);
/* Get whether the project is locked or not (row[3]),
@@ -3445,7 +3445,7 @@ static void Prj_ResetProject (struct Prj_Project *Prj)
{
if (Prj->PrjCod <= 0) // If > 0 ==> keep value
Prj->PrjCod = -1L;
- Prj->CrsCod = -1L;
+ Prj->HieCod = -1L;
Prj->Locked = Prj_UNLOCKED;
Prj->Hidden = Prj_NEW_PRJ_HIDDEN_VISIBL_DEFAULT;
Prj->Assigned = Prj_NEW_PRJ_ASSIGNED_NONASSIG_DEFAULT;
@@ -3561,7 +3561,7 @@ void Prj_RemoveProject (void)
/***** Remove directory of the project *****/
snprintf (PathRelPrj,sizeof (PathRelPrj),"%s/%ld/%s/%02u/%ld",
- Cfg_PATH_CRS_PRIVATE,Projects.Prj.CrsCod,Cfg_FOLDER_PRJ,
+ Cfg_PATH_CRS_PRIVATE,Projects.Prj.HieCod,Cfg_FOLDER_PRJ,
(unsigned) (Projects.Prj.PrjCod % 100),Projects.Prj.PrjCod);
Fil_RemoveTree (PathRelPrj);
diff --git a/swad_project.h b/swad_project.h
index fda44e82..0b6d10e7 100644
--- a/swad_project.h
+++ b/swad_project.h
@@ -153,8 +153,8 @@ typedef enum
/***** Struct to store a project *****/
struct Prj_Project
{
- long PrjCod;
- long CrsCod;
+ long PrjCod; // Project code
+ long HieCod; // Course code
Prj_Locked_t Locked;
HidVis_HiddenOrVisible_t Hidden;
Prj_AssignedNonassig_t Assigned;
diff --git a/swad_rubric.c b/swad_rubric.c
index f736ff76..c8112865 100644
--- a/swad_rubric.c
+++ b/swad_rubric.c
@@ -102,7 +102,7 @@ void Rub_RubricConstructor (struct Rub_Rubric *Rubric)
{
/***** Initialize to empty rubric *****/
Rubric->RubCod = -1L;
- Rubric->CrsCod = -1L;
+ Rubric->HieCod = -1L; // Course code
Rubric->UsrCod = -1L;
Rubric->Title[0] = '\0';
@@ -595,7 +595,7 @@ void Rub_GetRubricDataByCod (struct Rub_Rubric *Rubric)
/* Get code of the rubric (row[0]), course (row[1] and author (row[2]) */
Rubric->RubCod = Str_ConvertStrCodToLongCod (row[0]);
- Rubric->CrsCod = Str_ConvertStrCodToLongCod (row[1]);
+ Rubric->HieCod = Str_ConvertStrCodToLongCod (row[1]);
Rubric->UsrCod = Str_ConvertStrCodToLongCod (row[2]);
/* Get the title of the rubric (row[3]) */
@@ -608,7 +608,7 @@ void Rub_GetRubricDataByCod (struct Rub_Rubric *Rubric)
{
/***** Initialize to empty rubric *****/
Rubric->RubCod = -1L;
- Rubric->CrsCod = -1L;
+ Rubric->HieCod = -1L;
Rubric->UsrCod = -1L;
Rubric->Title[0] = '\0';
Rubric->Txt[0] = '\0';
diff --git a/swad_rubric_criteria.c b/swad_rubric_criteria.c
index d0811b1c..fb9a5fd3 100644
--- a/swad_rubric_criteria.c
+++ b/swad_rubric_criteria.c
@@ -1514,7 +1514,7 @@ static void RubCri_GetAndCheckRubricAndCriterion (struct Rub_Rubrics *Rubrics)
/***** Get rubric data from database *****/
Rub_GetRubricDataByCod (&Rubrics->Rubric);
- if (Rubrics->Rubric.CrsCod != Gbl.Hierarchy.Node[Hie_CRS].HieCod)
+ if (Rubrics->Rubric.HieCod != Gbl.Hierarchy.Node[Hie_CRS].HieCod)
Err_WrongRubricExit ();
/***** Get criterion data from database *****/
diff --git a/swad_rubric_type.h b/swad_rubric_type.h
index 16153608..65f21f38 100644
--- a/swad_rubric_type.h
+++ b/swad_rubric_type.h
@@ -54,7 +54,7 @@ typedef enum
struct Rub_Rubric
{
long RubCod; // Rubric code
- long CrsCod; // Course code
+ long HieCod; // Course code
long UsrCod; // Author code
char Title[Rub_MAX_BYTES_TITLE + 1]; // Title
char *Txt; // Text (dynamically allocated)
diff --git a/swad_setting_database.c b/swad_setting_database.c
index d99894e1..6efbb8eb 100644
--- a/swad_setting_database.c
+++ b/swad_setting_database.c
@@ -240,7 +240,7 @@ unsigned Set_DB_GetMyLanguage (MYSQL_RES **mysql_res)
/************ Register last prefs in current course in database **************/
/*****************************************************************************/
-void Set_DB_InsertUsrInCrsSettings (long UsrCod,long CrsCod)
+void Set_DB_InsertUsrInCrsSettings (long UsrCod,long HieCod)
{
DB_QueryINSERT ("can not register user in course",
"INSERT INTO crs_user_settings"
@@ -254,7 +254,7 @@ void Set_DB_InsertUsrInCrsSettings (long UsrCod,long CrsCod)
"0,FROM_UNIXTIME(%ld),0,"
"'%s',%u,'%c')",
UsrCod,
- CrsCod,
+ HieCod,
(long) (time_t) 0, // The user never accessed to tests in this course
Set_DB_StringsUsrListTypes[Set_SHOW_USRS_TYPE_DEFAULT],
Usr_CLASS_PHOTO_COLS_DEF,
@@ -386,14 +386,14 @@ unsigned Set_DB_GetMyPrefAboutListWithPhotosPhoto (MYSQL_RES **mysql_res)
/****************** Remove a user from a courses setting *********************/
/*****************************************************************************/
-void Set_DB_RemUsrFromCrsSettings (long UsrCod,long CrsCod)
+void Set_DB_RemUsrFromCrsSettings (long UsrCod,long HieCod)
{
DB_QueryDELETE ("can not remove a user from a course",
"DELETE FROM crs_user_settings"
" WHERE UsrCod=%ld"
" AND CrsCod=%ld",
UsrCod,
- CrsCod);
+ HieCod);
}
/*****************************************************************************/
@@ -412,12 +412,12 @@ void Set_DB_RemUsrFromAllCrssSettings (long UsrCod)
/*************** Remove all users from settings in a course ******************/
/*****************************************************************************/
-void Set_DB_RemAllUsrsFromCrsSettings (long CrsCod)
+void Set_DB_RemAllUsrsFromCrsSettings (long HieCod)
{
DB_QueryDELETE ("can not remove users from a course settings",
"DELETE FROM crs_user_settings"
" WHERE CrsCod=%ld",
- CrsCod);
+ HieCod);
}
/*****************************************************************************/
diff --git a/swad_setting_database.h b/swad_setting_database.h
index ef024c3f..e042f528 100644
--- a/swad_setting_database.h
+++ b/swad_setting_database.h
@@ -44,7 +44,7 @@ void Set_DB_UpdateMySettingsAboutNotifyEvents (void);
unsigned Set_DB_GetMyLanguage (MYSQL_RES **mysql_res);
//-------------------- User settings in the current course --------------------
-void Set_DB_InsertUsrInCrsSettings (long UsrCod,long CrsCod);
+void Set_DB_InsertUsrInCrsSettings (long UsrCod,long HieCod);
void Set_DB_UpdateGrpMyLastAccZone (const char *FieldNameDB,long GrpCod);
void Set_DB_UpdateMyUsrListType (void);
@@ -55,9 +55,9 @@ unsigned Set_DB_GetMyUsrListType (MYSQL_RES **mysql_res);
unsigned Set_DB_GetMyColsClassPhoto (MYSQL_RES **mysql_res);
unsigned Set_DB_GetMyPrefAboutListWithPhotosPhoto (MYSQL_RES **mysql_res);
-void Set_DB_RemUsrFromCrsSettings (long UsrCod,long CrsCod);
+void Set_DB_RemUsrFromCrsSettings (long UsrCod,long HieCod);
void Set_DB_RemUsrFromAllCrssSettings (long UsrCod);
-void Set_DB_RemAllUsrsFromCrsSettings (long CrsCod);
+void Set_DB_RemAllUsrsFromCrsSettings (long HieCod);
//------------------- IP settings (when no user logged) -----------------------
void Set_DB_UpdateMyIPSettingsForCurrentIP (void);
diff --git a/swad_text.c b/swad_text.c
index 23d9a2a9..e5fcb596 100644
--- a/swad_text.c
+++ b/swad_text.c
@@ -18689,7 +18689,7 @@ const char *Txt_Last_clicks_in_real_time =
#elif L==9 // pt
"Últimos cliques em tempo real";
#elif L==10 // tr
- "Last clicks in real time"; // Çeviri lazim!
+ "Gerçek zamanlı son tıklamalar";
#endif
const char *Txt_Latitude =