Version 20.51.15: Mar 19, 2021 Holidays database table renamed.

This commit is contained in:
acanas 2021-03-19 00:27:46 +01:00
parent 7dffcd95d6
commit 89dacb2549
6 changed files with 87 additions and 67 deletions

View File

@ -816,9 +816,9 @@ CREATE TABLE IF NOT EXISTS mch_times (
ElapsedTime TIME NOT NULL DEFAULT 0, ElapsedTime TIME NOT NULL DEFAULT 0,
UNIQUE INDEX(MchCod,QstInd)); UNIQUE INDEX(MchCod,QstInd));
-- --
-- Table holidays: stores the holidays in each institution -- Table hld_holidays: stores the holidays in each institution
-- --
CREATE TABLE IF NOT EXISTS holidays ( CREATE TABLE IF NOT EXISTS hld_holidays (
HldCod INT NOT NULL AUTO_INCREMENT, HldCod INT NOT NULL AUTO_INCREMENT,
InsCod INT NOT NULL, InsCod INT NOT NULL,
PlcCod INT NOT NULL DEFAULT -1, PlcCod INT NOT NULL DEFAULT -1,

View File

@ -600,14 +600,18 @@ TODO: Salvador Romero Cort
TODO: FIX BUG, URGENT! En las fechas como parámetro Dat_WriteParamsIniEndDates(), por ejemplo al cambiar el color de la gráfica de accesos por día y hora, no se respeta la zona horaria. TODO: FIX BUG, URGENT! En las fechas como parámetro Dat_WriteParamsIniEndDates(), por ejemplo al cambiar el color de la gráfica de accesos por día y hora, no se respeta la zona horaria.
*/ */
#define Log_PLATFORM_VERSION "SWAD 20.51.14 (2021-03-18)" #define Log_PLATFORM_VERSION "SWAD 20.51.15 (2021-03-19)"
#define CSS_FILE "swad20.45.css" #define CSS_FILE "swad20.45.css"
#define JS_FILE "swad20.6.2.js" #define JS_FILE "swad20.6.2.js"
/* /*
TODO: Rename CENTRE to CENTER in help wiki. TODO: Rename CENTRE to CENTER in help wiki.
TODO: Rename ASSESSMENT.Announcements to ASSESSMENT.Calls_for_exams TODO: Rename ASSESSMENT.Announcements to ASSESSMENT.Calls_for_exams
Version 20.51.14: Mar 18, 2021 Session database table renamed. (307862 lines) Version 20.51.15: Mar 19, 2021 Holidays database table renamed. (307911 lines)
1 change necessary in database:
RENAME TABLE holidays TO hld_holidays;
Version 20.51.14: Mar 18, 2021 Session database table renamed. (307892 lines)
1 change necessary in database: 1 change necessary in database:
RENAME TABLE sessions TO ses_sessions; RENAME TABLE sessions TO ses_sessions;

View File

@ -1772,9 +1772,9 @@ mysql> DESCRIBE mch_times;
"ElapsedTime TIME NOT NULL DEFAULT 0," "ElapsedTime TIME NOT NULL DEFAULT 0,"
"UNIQUE INDEX(MchCod,QstInd))"); "UNIQUE INDEX(MchCod,QstInd))");
/***** Table holidays *****/ /***** Table hld_holidays *****/
/* /*
mysql> DESCRIBE holidays; mysql> DESCRIBE hld_holidays;
+-----------+---------------+------+-----+---------+----------------+ +-----------+---------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra | | Field | Type | Null | Key | Default | Extra |
+-----------+---------------+------+-----+---------+----------------+ +-----------+---------------+------+-----+---------+----------------+
@ -1788,7 +1788,7 @@ mysql> DESCRIBE holidays;
+-----------+---------------+------+-----+---------+----------------+ +-----------+---------------+------+-----+---------+----------------+
7 rows in set (0,00 sec) 7 rows in set (0,00 sec)
*/ */
DB_CreateTable ("CREATE TABLE IF NOT EXISTS holidays (" DB_CreateTable ("CREATE TABLE IF NOT EXISTS hld_holidays ("
"HldCod INT NOT NULL AUTO_INCREMENT," "HldCod INT NOT NULL AUTO_INCREMENT,"
"InsCod INT NOT NULL," "InsCod INT NOT NULL,"
"PlcCod INT NOT NULL DEFAULT -1," "PlcCod INT NOT NULL DEFAULT -1,"

View File

@ -1104,7 +1104,7 @@ static void Dpt_CreateDepartment (struct Dpt_Department *Dpt)
unsigned Dpt_GetTotalNumberOfDepartments (void) unsigned Dpt_GetTotalNumberOfDepartments (void)
{ {
/***** Get number of departments from database *****/ /***** Get number of departments from database *****/
return (unsigned) DB_GetNumRowsTable ("departments"); return (unsigned) DB_GetNumRowsTable ("dpt_departments");
} }
/*****************************************************************************/ /*****************************************************************************/

View File

@ -331,38 +331,39 @@ void Hld_GetListHolidays (struct Hld_Holidays *Holidays)
Hld_FreeListHolidays (Holidays); Hld_FreeListHolidays (Holidays);
/***** Get holidays from database *****/ /***** Get holidays from database *****/
Holidays->Num = Holidays->Num = (unsigned)
(unsigned) DB_QuerySELECT (&mysql_res,"can not get holidays", DB_QuerySELECT (&mysql_res,"can not get holidays",
"(SELECT holidays.HldCod," "(SELECT hld_holidays.HldCod," // row[0]
"holidays.PlcCod," "hld_holidays.PlcCod," // row[1]
"places.FullName as Place," "places.FullName as Place," // row[2]
"holidays.HldTyp," "hld_holidays.HldTyp," // row[3]
"DATE_FORMAT(holidays.StartDate,'%%Y%%m%%d') AS StartDate," "DATE_FORMAT(hld_holidays.StartDate,'%%Y%%m%%d') AS StartDate," // row[4]
"DATE_FORMAT(holidays.EndDate,'%%Y%%m%%d') AS EndDate," "DATE_FORMAT(hld_holidays.EndDate,'%%Y%%m%%d') AS EndDate," // row[5]
"holidays.Name" "hld_holidays.Name" // row[6]
" FROM holidays,places" " FROM hld_holidays,places"
" WHERE holidays.InsCod=%ld" " WHERE hld_holidays.InsCod=%ld"
" AND holidays.PlcCod=places.PlcCod" " AND hld_holidays.PlcCod=places.PlcCod"
" AND places.InsCod=%ld)" " AND places.InsCod=%ld)"
" UNION " " UNION "
"(SELECT HldCod," "(SELECT HldCod," // row[0]
"PlcCod," "PlcCod," // row[1]
"'' as Place," "'' as Place," // row[2]
"HldTyp," "HldTyp," // row[3]
"DATE_FORMAT(StartDate,'%%Y%%m%%d') AS StartDate," "DATE_FORMAT(StartDate,'%%Y%%m%%d') AS StartDate," // row[4]
"DATE_FORMAT(EndDate,'%%Y%%m%%d') AS EndDate," "DATE_FORMAT(EndDate,'%%Y%%m%%d') AS EndDate," // row[5]
"Name" "Name" // row[6]
" FROM holidays" " FROM hld_holidays"
" WHERE InsCod=%ld" " WHERE InsCod=%ld"
" AND PlcCod NOT IN" " AND PlcCod NOT IN"
"(SELECT DISTINCT PlcCod FROM places" "(SELECT DISTINCT PlcCod"
" WHERE InsCod=%ld))" " FROM places"
" ORDER BY %s", " WHERE InsCod=%ld))"
Gbl.Hierarchy.Ins.InsCod, " 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,
OrderBySubQuery[Holidays->SelectedOrder]); Gbl.Hierarchy.Ins.InsCod,
OrderBySubQuery[Holidays->SelectedOrder]);
if (Holidays->Num) // Holidays found... if (Holidays->Num) // Holidays found...
{ {
/***** Create list of holidays *****/ /***** Create list of holidays *****/
@ -447,17 +448,17 @@ static void Hld_GetDataOfHolidayByCod (struct Hld_Holiday *Hld)
/***** Get data of holiday from database *****/ /***** Get data of holiday from database *****/
if (DB_QuerySELECT (&mysql_res,"can not get data of a holiday", if (DB_QuerySELECT (&mysql_res,"can not get data of a holiday",
"(SELECT holidays.PlcCod," "(SELECT hld_holidays.PlcCod," // row[0]
"places.FullName as Place," "places.FullName as Place," // row[1]
"holidays.HldTyp," "hld_holidays.HldTyp," // row[2]
"DATE_FORMAT(holidays.StartDate,'%%Y%%m%%d')," "DATE_FORMAT(hld_holidays.StartDate,'%%Y%%m%%d')," // row[3]
"DATE_FORMAT(holidays.EndDate,'%%Y%%m%%d')," "DATE_FORMAT(hld_holidays.EndDate,'%%Y%%m%%d')," // row[4]
"holidays.Name" "hld_holidays.Name" // row[5]
" FROM holidays,places" " FROM hld_holidays,places"
" WHERE holidays.HldCod=%ld" " WHERE hld_holidays.HldCod=%ld"
" AND holidays.InsCod=%ld" " AND hld_holidays.InsCod=%ld"
" AND holidays.PlcCod=places.PlcCod" " AND hld_holidays.PlcCod=places.PlcCod"
" AND places.InsCod=%ld)" " AND places.InsCod=%ld)"
" UNION " " UNION "
"(SELECT PlcCod," "(SELECT PlcCod,"
"'' as Place," "'' as Place,"
@ -465,12 +466,13 @@ static void Hld_GetDataOfHolidayByCod (struct Hld_Holiday *Hld)
"DATE_FORMAT(StartDate,'%%Y%%m%%d')," "DATE_FORMAT(StartDate,'%%Y%%m%%d'),"
"DATE_FORMAT(EndDate,'%%Y%%m%%d')," "DATE_FORMAT(EndDate,'%%Y%%m%%d'),"
"Name" "Name"
" FROM holidays" " FROM hld_holidays"
" WHERE HldCod=%ld" " WHERE HldCod=%ld"
" AND InsCod=%ld" " AND InsCod=%ld"
" AND PlcCod NOT IN" " AND PlcCod NOT IN"
"(SELECT DISTINCT PlcCod FROM places" "(SELECT DISTINCT PlcCod"
" WHERE InsCod=%ld))", " FROM places"
" WHERE InsCod=%ld))",
Hld->HldCod, Hld->HldCod,
Gbl.Hierarchy.Ins.InsCod, Gbl.Hierarchy.Ins.InsCod,
Gbl.Hierarchy.Ins.InsCod, Gbl.Hierarchy.Ins.InsCod,
@ -724,7 +726,8 @@ void Hld_RemoveHoliday (void)
/***** Remove holiday *****/ /***** Remove holiday *****/
DB_QueryDELETE ("can not remove a holiday", DB_QueryDELETE ("can not remove a holiday",
"DELETE FROM holidays WHERE HldCod=%ld", "DELETE FROM hld_holidays"
" WHERE HldCod=%ld",
Hld_EditingHld->HldCod); Hld_EditingHld->HldCod);
/***** Write message to show the change made *****/ /***** Write message to show the change made *****/
@ -761,7 +764,9 @@ void Hld_ChangeHolidayPlace (void)
/***** Update the place in database *****/ /***** Update the place in database *****/
DB_QueryUPDATE ("can not update the place of a holiday", DB_QueryUPDATE ("can not update the place of a holiday",
"UPDATE holidays SET PlcCod=%ld WHERE HldCod=%ld", "UPDATE hld_holidays"
" SET PlcCod=%ld"
" WHERE HldCod=%ld",
NewPlace.PlcCod,Hld_EditingHld->HldCod); NewPlace.PlcCod,Hld_EditingHld->HldCod);
Hld_EditingHld->PlcCod = NewPlace.PlcCod; Hld_EditingHld->PlcCod = NewPlace.PlcCod;
Str_Copy (Hld_EditingHld->PlaceFullName,NewPlace.FullName, Str_Copy (Hld_EditingHld->PlaceFullName,NewPlace.FullName,
@ -797,9 +802,12 @@ void Hld_ChangeHolidayType (void)
/***** Update holiday/no school period in database *****/ /***** Update holiday/no school period in database *****/
Dat_AssignDate (&Hld_EditingHld->EndDate,&Hld_EditingHld->StartDate); Dat_AssignDate (&Hld_EditingHld->EndDate,&Hld_EditingHld->StartDate);
DB_QueryUPDATE ("can not update the type of a holiday", DB_QueryUPDATE ("can not update the type of a holiday",
"UPDATE holidays SET HldTyp=%u,EndDate=StartDate" "UPDATE hld_holidays"
" SET HldTyp=%u,"
"EndDate=StartDate"
" WHERE HldCod=%ld", " WHERE HldCod=%ld",
(unsigned) Hld_EditingHld->HldTyp,Hld_EditingHld->HldCod); (unsigned) Hld_EditingHld->HldTyp,
Hld_EditingHld->HldCod);
/***** Write message to show the change made *****/ /***** Write message to show the change made *****/
Ale_CreateAlert (Ale_SUCCESS,NULL, Ale_CreateAlert (Ale_SUCCESS,NULL,
@ -882,7 +890,9 @@ static void Hld_ChangeDate (Hld_StartOrEndDate_t StartOrEndDate)
/***** Update the date in database *****/ /***** Update the date in database *****/
DB_QueryUPDATE ("can not update the date of a holiday", DB_QueryUPDATE ("can not update the date of a holiday",
"UPDATE holidays SET %s='%04u%02u%02u' WHERE HldCod=%ld", "UPDATE hld_holidays"
" SET %s='%04u%02u%02u'"
" WHERE HldCod=%ld",
StrStartOrEndDate, StrStartOrEndDate,
NewDate.Year, NewDate.Year,
NewDate.Month, NewDate.Month,
@ -931,8 +941,11 @@ void Hld_RenameHoliday (void)
/***** If degree was in database... *****/ /***** If degree was in database... *****/
/* Update the table changing old name by new name */ /* Update the table changing old name by new name */
DB_QueryUPDATE ("can not update the text of a holiday", DB_QueryUPDATE ("can not update the text of a holiday",
"UPDATE holidays SET Name='%s' WHERE HldCod=%ld", "UPDATE hld_holidays"
NewHldName,Hld_EditingHld->HldCod); " SET Name='%s'"
" WHERE HldCod=%ld",
NewHldName,
Hld_EditingHld->HldCod);
Str_Copy (Hld_EditingHld->Name,NewHldName, Str_Copy (Hld_EditingHld->Name,NewHldName,
sizeof (Hld_EditingHld->Name) - 1); sizeof (Hld_EditingHld->Name) - 1);
@ -1174,11 +1187,13 @@ static void Hld_CreateHoliday (struct Hld_Holiday *Hld)
{ {
/***** Create a new holiday or no school period *****/ /***** Create a new holiday or no school period *****/
DB_QueryINSERT ("can not create holiday", DB_QueryINSERT ("can not create holiday",
"INSERT INTO holidays" "INSERT INTO hld_holidays"
" (InsCod,PlcCod,HldTyp,StartDate,EndDate,Name)" " (InsCod,PlcCod,HldTyp,StartDate,EndDate,Name)"
" VALUES" " VALUES"
" (%ld,%ld,%u,'%04u%02u%02u','%04u%02u%02u','%s')", " (%ld,%ld,%u,'%04u%02u%02u','%04u%02u%02u','%s')",
Gbl.Hierarchy.Ins.InsCod,Hld->PlcCod,(unsigned) Hld->HldTyp, Gbl.Hierarchy.Ins.InsCod,
Hld->PlcCod,
(unsigned) Hld->HldTyp,
Hld->StartDate.Year, Hld->StartDate.Year,
Hld->StartDate.Month, Hld->StartDate.Month,
Hld->StartDate.Day, Hld->StartDate.Day,

View File

@ -63,9 +63,10 @@ static void Ses_DeletePublicDirFromCache (const char *FullPathMediaPriv);
void Ses_GetNumSessions (void) void Ses_GetNumSessions (void)
{ {
/***** Get the number of open sessions from database *****/ /***** Get the number of open sessions from database *****/
Gbl.Session.NumSessions = (unsigned) DB_GetNumRowsTable ("sessions"); Gbl.Session.NumSessions = (unsigned) DB_GetNumRowsTable ("ses_sessions");
Gbl.Usrs.Connected.TimeToRefreshInMs = (unsigned long) (Gbl.Session.NumSessions/Cfg_TIMES_PER_SECOND_REFRESH_CONNECTED) * 1000UL; Gbl.Usrs.Connected.TimeToRefreshInMs = (unsigned long) (Gbl.Session.NumSessions/
Cfg_TIMES_PER_SECOND_REFRESH_CONNECTED) * 1000UL;
if (Gbl.Usrs.Connected.TimeToRefreshInMs < Con_MIN_TIME_TO_REFRESH_CONNECTED_IN_MS) if (Gbl.Usrs.Connected.TimeToRefreshInMs < Con_MIN_TIME_TO_REFRESH_CONNECTED_IN_MS)
Gbl.Usrs.Connected.TimeToRefreshInMs = Con_MIN_TIME_TO_REFRESH_CONNECTED_IN_MS; Gbl.Usrs.Connected.TimeToRefreshInMs = Con_MIN_TIME_TO_REFRESH_CONNECTED_IN_MS;
else if (Gbl.Usrs.Connected.TimeToRefreshInMs > Con_MAX_TIME_TO_REFRESH_CONNECTED_IN_MS) else if (Gbl.Usrs.Connected.TimeToRefreshInMs > Con_MAX_TIME_TO_REFRESH_CONNECTED_IN_MS)