Version 20.51.4: Mar 18, 2021 File-browser-last database table renamed.

This commit is contained in:
acanas 2021-03-18 09:52:21 +01:00
parent b73f4f6ccf
commit ce8a273648
4 changed files with 94 additions and 88 deletions

View File

@ -164,6 +164,28 @@ CREATE TABLE IF NOT EXISTS brw_expanded_folders (
INDEX(FileBrowser,Cod),
INDEX(WorksUsrCod));
--
-- Table brw_last: stores the last click of every user in each file browser zone
--
CREATE TABLE IF NOT EXISTS brw_last (
UsrCod INT NOT NULL,
FileBrowser TINYINT NOT NULL,
Cod INT NOT NULL DEFAULT -1,
LastClick DATETIME NOT NULL,
UNIQUE INDEX(UsrCod,FileBrowser,Cod));
--
-- Table file_browser_size: stores the sizes of the file zones
--
CREATE TABLE IF NOT EXISTS file_browser_size (
FileBrowser TINYINT NOT NULL,
Cod INT NOT NULL DEFAULT -1,
ZoneUsrCod INT NOT NULL DEFAULT -1,
NumLevels INT NOT NULL,
NumFolders INT NOT NULL,
NumFiles INT NOT NULL,
TotalSize BIGINT NOT NULL,
UNIQUE INDEX(FileBrowser,Cod,ZoneUsrCod),
INDEX(ZoneUsrCod));
--
-- Table cfe_calls_for_exams: stores the calls for examination
--
CREATE TABLE IF NOT EXISTS cfe_calls_for_exams (
@ -582,28 +604,6 @@ CREATE TABLE IF NOT EXISTS fig_figures (
LastUpdate TIMESTAMP,
UNIQUE INDEX(Figure,Scope,Cod));
--
-- Table file_browser_last: stores the last click of every user in each file browser zone
--
CREATE TABLE IF NOT EXISTS file_browser_last (
UsrCod INT NOT NULL,
FileBrowser TINYINT NOT NULL,
Cod INT NOT NULL DEFAULT -1,
LastClick DATETIME NOT NULL,
UNIQUE INDEX(UsrCod,FileBrowser,Cod));
--
-- Table file_browser_size: stores the sizes of the file zones
--
CREATE TABLE IF NOT EXISTS file_browser_size (
FileBrowser TINYINT NOT NULL,
Cod INT NOT NULL DEFAULT -1,
ZoneUsrCod INT NOT NULL DEFAULT -1,
NumLevels INT NOT NULL,
NumFolders INT NOT NULL,
NumFiles INT NOT NULL,
TotalSize BIGINT NOT NULL,
UNIQUE INDEX(FileBrowser,Cod,ZoneUsrCod),
INDEX(ZoneUsrCod));
--
-- Table file_cache: stores the media private paths linked from public directories in current session
--
CREATE TABLE IF NOT EXISTS file_cache (

View File

@ -600,13 +600,17 @@ 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.
*/
#define Log_PLATFORM_VERSION "SWAD 20.51.3 (2021-03-18)"
#define Log_PLATFORM_VERSION "SWAD 20.51.4 (2021-03-18)"
#define CSS_FILE "swad20.45.css"
#define JS_FILE "swad20.6.2.js"
/*
TODO: Rename CENTRE to CENTER in help wiki.
TODO: Rename ASSESSMENT.Announcements to ASSESSMENT.Calls_for_exams
Version 20.51.4: Mar 18, 2021 File-browser-last database table renamed. (307563 lines)
1 change necessary in database:
RENAME TABLE file_browser_last TO brw_last;
Version 20.51.3: Mar 18, 2021 Figures database table renamed. (307558 lines)
1 change necessary in database:
RENAME TABLE figures TO fig_figures;

View File

@ -435,6 +435,53 @@ mysql> DESCRIBE brw_expanded_folders;
"INDEX(FileBrowser,Cod),"
"INDEX(WorksUsrCod))");
/***** Table brw_last *****/
/*
mysql> DESCRIBE brw_last;
+-------------+------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+-------------+------------+------+-----+---------+-------+
| UsrCod | int(11) | NO | PRI | NULL | |
| FileBrowser | tinyint(4) | NO | PRI | NULL | |
| Cod | int(11) | NO | PRI | -1 | |
| LastClick | datetime | NO | | NULL | |
+-------------+------------+------+-----+---------+-------+
4 rows in set (0.01 sec)
*/
DB_CreateTable ("CREATE TABLE IF NOT EXISTS brw_last ("
"UsrCod INT NOT NULL,"
"FileBrowser TINYINT NOT NULL,"
"Cod INT NOT NULL DEFAULT -1,"
"LastClick DATETIME NOT NULL,"
"UNIQUE INDEX(UsrCod,FileBrowser,Cod))");
/***** Table file_browser_size *****/
/*
mysql> DESCRIBE file_browser_size;
+-------------+------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+-------------+------------+------+-----+---------+-------+
| FileBrowser | tinyint(4) | NO | PRI | NULL | |
| Cod | int(11) | NO | PRI | -1 | |
| ZoneUsrCod | int(11) | NO | PRI | -1 | |
| NumLevels | int(11) | NO | | NULL | |
| NumFolders | int(11) | NO | | NULL | |
| NumFiles | int(11) | NO | | NULL | |
| TotalSize | bigint(20) | NO | | NULL | |
+-------------+------------+------+-----+---------+-------+
7 rows in set (0.00 sec)
*/
DB_CreateTable ("CREATE TABLE IF NOT EXISTS file_browser_size ("
"FileBrowser TINYINT NOT NULL,"
"Cod INT NOT NULL DEFAULT -1,"
"ZoneUsrCod INT NOT NULL DEFAULT -1,"
"NumLevels INT NOT NULL,"
"NumFolders INT NOT NULL,"
"NumFiles INT NOT NULL,"
"TotalSize BIGINT NOT NULL,"
"UNIQUE INDEX(FileBrowser,Cod,ZoneUsrCod),"
"INDEX(ZoneUsrCod))");
/***** Table cfe_calls_for_exams *****/
/*
mysql> DESCRIBE cfe_calls_for_exams;
@ -1279,53 +1326,6 @@ mysql> DESCRIBE fig_figures;
"LastUpdate TIMESTAMP,"
"UNIQUE INDEX(Figure,Scope,Cod))");
/***** Table file_browser_last *****/
/*
mysql> DESCRIBE file_browser_last;
+-------------+------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+-------------+------------+------+-----+---------+-------+
| UsrCod | int(11) | NO | PRI | NULL | |
| FileBrowser | tinyint(4) | NO | PRI | NULL | |
| Cod | int(11) | NO | PRI | -1 | |
| LastClick | datetime | NO | | NULL | |
+-------------+------------+------+-----+---------+-------+
4 rows in set (0.01 sec)
*/
DB_CreateTable ("CREATE TABLE IF NOT EXISTS file_browser_last ("
"UsrCod INT NOT NULL,"
"FileBrowser TINYINT NOT NULL,"
"Cod INT NOT NULL DEFAULT -1,"
"LastClick DATETIME NOT NULL,"
"UNIQUE INDEX(UsrCod,FileBrowser,Cod))");
/***** Table file_browser_size *****/
/*
mysql> DESCRIBE file_browser_size;
+-------------+------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+-------------+------------+------+-----+---------+-------+
| FileBrowser | tinyint(4) | NO | PRI | NULL | |
| Cod | int(11) | NO | PRI | -1 | |
| ZoneUsrCod | int(11) | NO | PRI | -1 | |
| NumLevels | int(11) | NO | | NULL | |
| NumFolders | int(11) | NO | | NULL | |
| NumFiles | int(11) | NO | | NULL | |
| TotalSize | bigint(20) | NO | | NULL | |
+-------------+------------+------+-----+---------+-------+
7 rows in set (0.00 sec)
*/
DB_CreateTable ("CREATE TABLE IF NOT EXISTS file_browser_size ("
"FileBrowser TINYINT NOT NULL,"
"Cod INT NOT NULL DEFAULT -1,"
"ZoneUsrCod INT NOT NULL DEFAULT -1,"
"NumLevels INT NOT NULL,"
"NumFolders INT NOT NULL,"
"NumFiles INT NOT NULL,"
"TotalSize BIGINT NOT NULL,"
"UNIQUE INDEX(FileBrowser,Cod,ZoneUsrCod),"
"INDEX(ZoneUsrCod))");
/***** Table file_cache *****/
/*
mysql> DESCRIBE file_cache;

View File

@ -273,8 +273,8 @@ static const Brw_FileBrowser_t Brw_FileBrowserForDB_expanded_folders[Brw_NUM_TYP
[Brw_ADMI_ASS_PRJ] = Brw_ADMI_ASS_PRJ,
};
// Browsers types for database "file_browser_last" table
// Assignments and works are stored as one in file_browser_last...
// Browsers types for database "brw_last" table
// Assignments and works are stored as one in brw_last...
// ...because a user views them at the same time
static const Brw_FileBrowser_t Brw_FileBrowserForDB_file_browser_last[Brw_NUM_TYPES_FILE_BROWSER] =
{
@ -4206,7 +4206,7 @@ void Brw_RemoveInsFilesFromDB (long InsCod)
the last time users visited file zones *****/
DB_QueryDELETE ("can not remove file last visits"
" to files of an institution",
"DELETE FROM file_browser_last"
"DELETE FROM brw_last"
" WHERE FileBrowser IN (%u,%u)"
" AND Cod=%ld",
(unsigned) Brw_ADMI_DOC_INS,
@ -4271,7 +4271,7 @@ void Brw_RemoveCtrFilesFromDB (long CtrCod)
/***** Remove from database the entries that store the last time users visited file zones *****/
DB_QueryDELETE ("can not remove file last visits to files of a center",
"DELETE FROM file_browser_last"
"DELETE FROM brw_last"
" WHERE FileBrowser IN (%u,%u)"
" AND Cod=%ld",
(unsigned) Brw_ADMI_DOC_CTR,
@ -4334,7 +4334,7 @@ void Brw_RemoveDegFilesFromDB (long DegCod)
/***** Remove from database the entries that store the last time users visited file zones *****/
DB_QueryDELETE ("can not remove file last visits to files of a degree",
"DELETE FROM file_browser_last"
"DELETE FROM brw_last"
" WHERE FileBrowser IN (%u,%u)"
" AND Cod=%ld",
(unsigned) Brw_ADMI_DOC_DEG,
@ -4512,11 +4512,11 @@ void Brw_RemoveCrsFilesFromDB (long CrsCod)
SubqueryPrj);
/***** Remove from database the entries that store the last time users visited file zones *****/
// Assignments and works are stored as one in file_browser_last...
// Assignments and works are stored as one in brw_last...
// ...because a user views them at the same time
/* Remove from course file zones */
DB_QueryDELETE ("can not remove file last visits to files of a course",
"DELETE FROM file_browser_last"
"DELETE FROM brw_last"
" WHERE FileBrowser IN (%u,%u,%u,%u,%u)"
" AND Cod=%ld",
(unsigned) Brw_ADMI_DOC_CRS,
@ -4528,7 +4528,7 @@ void Brw_RemoveCrsFilesFromDB (long CrsCod)
/* Remove from group file zones */
DB_QueryDELETE ("can not remove file last visits to files of a course",
"DELETE FROM file_browser_last"
"DELETE FROM brw_last"
" WHERE FileBrowser IN (%u,%u,%u,%u)"
" AND Cod IN %s",
(unsigned) Brw_ADMI_DOC_GRP,
@ -4539,7 +4539,7 @@ void Brw_RemoveCrsFilesFromDB (long CrsCod)
/* Remove from project file zones */
DB_QueryDELETE ("can not remove file last visits to files of a course",
"DELETE FROM file_browser_last"
"DELETE FROM brw_last"
" WHERE FileBrowser IN (%u,%u)"
" AND Cod IN %s",
(unsigned) Brw_ADMI_DOC_PRJ,
@ -4669,7 +4669,7 @@ void Brw_RemoveGrpFilesFromDB (long GrpCod)
/***** Remove from database the entries that store the last time users visited file zones *****/
DB_QueryDELETE ("can not remove file last visits to files of a group",
"DELETE FROM file_browser_last"
"DELETE FROM brw_last"
" WHERE FileBrowser IN (%u,%u,%u,%u)"
" AND Cod=%ld",
(unsigned) Brw_ADMI_DOC_GRP,
@ -4739,7 +4739,7 @@ void Brw_RemovePrjFilesFromDB (long PrjCod)
/***** Remove from database the entries that store the last time users visited file zones *****/
DB_QueryDELETE ("can not remove file last visits to files of a project",
"DELETE FROM file_browser_last"
"DELETE FROM brw_last"
" WHERE FileBrowser IN (%u,%u)"
" AND Cod=%ld",
(unsigned) Brw_ADMI_DOC_PRJ,
@ -4836,11 +4836,11 @@ void Brw_RemoveSomeInfoAboutCrsUsrFilesFromDB (long UsrCod,long CrsCod)
CrsCod);
/***** Remove from database the entries that store the last time user visited file zones *****/
// Assignments and works are stored as one in file_browser_last...
// Assignments and works are stored as one in brw_last...
// ...because a user views them at the same time
DB_QueryDELETE ("can not remove file last visits to files of a course"
" from a user",
"DELETE FROM file_browser_last"
"DELETE FROM brw_last"
" WHERE UsrCod=%ld"
" AND ("
"(FileBrowser IN (%u,%u,%u,%u,%u)"
@ -4959,7 +4959,7 @@ void Brw_RemoveUsrFilesFromDB (long UsrCod)
/***** Remove from database the entries that store the last time users visited file zones *****/
DB_QueryDELETE ("can not remove user's last visits to file zones",
"DELETE FROM file_browser_last"
"DELETE FROM brw_last"
" WHERE UsrCod=%ld", // User's last visits to all zones
UsrCod);
@ -5206,9 +5206,11 @@ static void Brw_GetAndUpdateDateLastAccFileBrowser (void)
}
NumRows = DB_QuerySELECT (&mysql_res,"can not get date-time"
" of last access to a file browser",
"SELECT UNIX_TIMESTAMP(LastClick)"
" FROM file_browser_last"
" WHERE UsrCod=%ld AND FileBrowser=%u AND Cod=%ld",
"SELECT UNIX_TIMESTAMP(LastClick)" // row[0]
" FROM brw_last"
" WHERE UsrCod=%ld"
" AND FileBrowser=%u"
" AND Cod=%ld",
Gbl.Usrs.Me.UsrDat.UsrCod,
(unsigned) Brw_FileBrowserForDB_file_browser_last[Gbl.FileBrowser.Type],
Cod);
@ -5232,7 +5234,7 @@ static void Brw_GetAndUpdateDateLastAccFileBrowser (void)
/***** Update date of my last access to file browser in this course *****/
DB_QueryREPLACE ("can not update date of last access to a file browser",
"REPLACE INTO file_browser_last"
"REPLACE INTO brw_last"
" (UsrCod,FileBrowser,Cod,LastClick)"
" VALUES"
" (%ld,%u,%ld,NOW())",