From 7dffcd95d6bb4fc0fc08905010860a3b75021c77 Mon Sep 17 00:00:00 2001 From: acanas Date: Thu, 18 Mar 2021 20:47:28 +0100 Subject: [PATCH] Version 20.51.14: Mar 18, 2021 Session database table renamed. --- sql/swad.sql | 4 ++-- swad_API.c | 8 +++++-- swad_account.c | 2 +- swad_changelog.h | 6 +++++- swad_connected.c | 3 ++- swad_database.c | 6 +++--- swad_pagination.c | 7 +++++-- swad_search.c | 7 +++++-- swad_session.c | 45 ++++++++++++++++++++++++++-------------- swad_timeline_database.c | 29 ++++++++++++++------------ 10 files changed, 74 insertions(+), 43 deletions(-) diff --git a/sql/swad.sql b/sql/swad.sql index 63f55baad..4de0006bd 100644 --- a/sql/swad.sql +++ b/sql/swad.sql @@ -1284,9 +1284,9 @@ CREATE TABLE IF NOT EXISTS ses_params ( ParamValue LONGTEXT NOT NULL, INDEX(SessionId)); -- --- Table sessions: stores the information of open sessions +-- Table ses_sessions: stores the information of open sessions -- -CREATE TABLE IF NOT EXISTS sessions ( +CREATE TABLE IF NOT EXISTS ses_sessions ( SessionId CHAR(43) NOT NULL, UsrCod INT NOT NULL, Password CHAR(86) COLLATE latin1_bin NOT NULL, diff --git a/swad_API.c b/swad_API.c index 28cd8ab1d..06de8ed5e 100644 --- a/swad_API.c +++ b/swad_API.c @@ -434,7 +434,8 @@ static int API_CheckIdSession (struct soap *soap, /***** Query if session identifier already exists in database *****/ if (DB_QueryCOUNT ("can not get session data", - "SELECT COUNT(*) FROM sessions" + "SELECT COUNT(*)" + " FROM ses_sessions" " WHERE SessionId='%s'", IdSession) != 1) return soap_receiver_fault (soap, @@ -1086,7 +1087,10 @@ int swad__loginBySessionKey (struct soap *soap, /***** Query data of the session from database *****/ NumRows = (unsigned) DB_QuerySELECT (&mysql_res,"can not get session data", - "SELECT UsrCod,DegCod,CrsCod FROM sessions" + "SELECT UsrCod," // row[0] + "DegCod," // row[1] + "CrsCod" // row[2] + " FROM ses_sessions" " WHERE SessionId='%s'", sessionID); if (NumRows == 1) // Session found in table of sessions diff --git a/swad_account.c b/swad_account.c index 1161501f4..29f222bfd 100644 --- a/swad_account.c +++ b/swad_account.c @@ -1111,7 +1111,7 @@ void Acc_CompletelyEliminateAccount (struct UsrData *UsrDat, /***** Remove all sessions of this user *****/ DB_QueryDELETE ("can not remove sessions of a user", - "DELETE FROM sessions" + "DELETE FROM ses_sessions" " WHERE UsrCod=%ld", UsrDat->UsrCod); diff --git a/swad_changelog.h b/swad_changelog.h index 6a5c89538..c2cac51cc 100644 --- a/swad_changelog.h +++ b/swad_changelog.h @@ -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.13 (2021-03-18)" +#define Log_PLATFORM_VERSION "SWAD 20.51.14 (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.14: Mar 18, 2021 Session database table renamed. (307862 lines) + 1 change necessary in database: +RENAME TABLE sessions TO ses_sessions; + Version 20.51.13: Mar 18, 2021 Session parameters database table renamed. (307862 lines) 1 change necessary in database: RENAME TABLE hidden_params TO ses_params; diff --git a/swad_connected.c b/swad_connected.c index dd17fc1d8..5aee63854 100644 --- a/swad_connected.c +++ b/swad_connected.c @@ -449,7 +449,8 @@ void Con_RemoveOldConnected (void) DB_QueryDELETE ("can not remove old users from list of connected users", "DELETE FROM usr_connected" " WHERE UsrCod NOT IN" - " (SELECT DISTINCT(UsrCod) FROM sessions)"); + " (SELECT DISTINCT(UsrCod)" + " FROM ses_sessions)"); } /*****************************************************************************/ diff --git a/swad_database.c b/swad_database.c index 6f90dc434..505ff1646 100644 --- a/swad_database.c +++ b/swad_database.c @@ -2703,9 +2703,9 @@ mysql> DESCRIBE ses_params; "ParamValue LONGTEXT NOT NULL," "INDEX(SessionId))"); - /***** Table sessions *****/ + /***** Table ses_sessions *****/ /* -mysql> DESCRIBE sessions; +mysql> DESCRIBE ses_sessions; +----------------+---------------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +----------------+---------------+------+-----+---------+-------+ @@ -2730,7 +2730,7 @@ mysql> DESCRIBE sessions; +----------------+---------------+------+-----+---------+-------+ 18 rows in set (0,00 sec) */ - DB_CreateTable ("CREATE TABLE IF NOT EXISTS sessions (" + DB_CreateTable ("CREATE TABLE IF NOT EXISTS ses_sessions (" "SessionId CHAR(43) NOT NULL," // Cns_BYTES_SESSION_ID "UsrCod INT NOT NULL," "Password CHAR(86) COLLATE latin1_bin NOT NULL," // Pwd_BYTES_ENCRYPTED_PASSWORD diff --git a/swad_pagination.c b/swad_pagination.c index a6b3a14f7..fb62fd643 100644 --- a/swad_pagination.c +++ b/swad_pagination.c @@ -929,7 +929,9 @@ void Pag_SaveLastPageMsgIntoSession (Pag_WhatPaginate_t WhatPaginate,unsigned Nu { /***** Save last page of received/sent messages *****/ DB_QueryUPDATE ("can not update last page of messages", - "UPDATE sessions SET %s=%u WHERE SessionId='%s'", + "UPDATE ses_sessions" + " SET %s=%u" + " WHERE SessionId='%s'", WhatPaginate == Pag_MESSAGES_RECEIVED ? "LastPageMsgRcv" : "LastPageMsgSnt", NumPage,Gbl.Session.Id); @@ -948,7 +950,8 @@ unsigned Pag_GetLastPageMsgFromSession (Pag_WhatPaginate_t WhatPaginate) /***** Get last page of received/sent messages from database *****/ NumRows = DB_QuerySELECT (&mysql_res,"can not get last page of messages", - "SELECT %s FROM sessions" + "SELECT %s" // row[0] + " FROM ses_sessions" " WHERE SessionId='%s'", WhatPaginate == Pag_MESSAGES_RECEIVED ? "LastPageMsgRcv" : "LastPageMsgSnt", diff --git a/swad_search.c b/swad_search.c index 70a21ee0f..866e9a22a 100644 --- a/swad_search.c +++ b/swad_search.c @@ -1301,7 +1301,9 @@ static void Sch_SaveLastSearchIntoSession (void) /***** Save last search in session *****/ DB_QueryUPDATE ("can not update last search in session", - "UPDATE sessions SET WhatToSearch=%u,SearchStr='%s'" + "UPDATE ses_sessions" + " SET WhatToSearch=%u," + "SearchStr='%s'" " WHERE SessionId='%s'", (unsigned) Gbl.Search.WhatToSearch, Gbl.Search.Str, @@ -1311,7 +1313,8 @@ static void Sch_SaveLastSearchIntoSession (void) // WhatToSearch is stored in usr_last for next time I log in // In other existing sessions distinct to this, WhatToSearch will remain unchanged DB_QueryUPDATE ("can not update type of search in user's last data", - "UPDATE usr_last SET WhatToSearch=%u" + "UPDATE usr_last" + " SET WhatToSearch=%u" " WHERE UsrCod=%ld", (unsigned) Gbl.Search.WhatToSearch, Gbl.Usrs.Me.UsrDat.UsrCod); diff --git a/swad_session.c b/swad_session.c index bb7372c16..8fc322885 100644 --- a/swad_session.c +++ b/swad_session.c @@ -105,7 +105,8 @@ bool Ses_CheckIfSessionExists (const char *IdSes) { /***** Get if session already exists in database *****/ return (DB_QueryCOUNT ("can not check if a session already existed", - "SELECT COUNT(*) FROM sessions" + "SELECT COUNT(*)" + " FROM ses_sessions" " WHERE SessionId='%s'", IdSes) != 0); } @@ -161,7 +162,7 @@ void Ses_InsertSessionInDB (void) Gbl.Search.WhatToSearch = Sch_WHAT_TO_SEARCH_DEFAULT; DB_QueryINSERT ("can not create session", - "INSERT INTO sessions" + "INSERT INTO ses_sessions" " (SessionId,UsrCod,Password,Role," "CtyCod,InsCod,CtrCod,DegCod,CrsCod,LastTime,LastRefresh,WhatToSearch)" " VALUES" @@ -187,9 +188,17 @@ void Ses_UpdateSessionDataInDB (void) { /***** Update session in database *****/ DB_QueryUPDATE ("can not update session", - "UPDATE sessions SET UsrCod=%ld,Password='%s',Role=%u," - "CtyCod=%ld,InsCod=%ld,CtrCod=%ld,DegCod=%ld,CrsCod=%ld," - "LastTime=NOW(),LastRefresh=NOW()" + "UPDATE ses_sessions" + " SET UsrCod=%ld," + "Password='%s'," + "Role=%u," + "CtyCod=%ld," + "InsCod=%ld," + "CtrCod=%ld," + "DegCod=%ld," + "CrsCod=%ld," + "LastTime=NOW()," + "LastRefresh=NOW()" " WHERE SessionId='%s'", Gbl.Usrs.Me.UsrDat.UsrCod, Gbl.Usrs.Me.UsrDat.Password, @@ -210,7 +219,9 @@ void Ses_UpdateSessionLastRefreshInDB (void) { /***** Update session in database *****/ DB_QueryUPDATE ("can not update session", - "UPDATE sessions SET LastRefresh=NOW() WHERE SessionId='%s'", + "UPDATE ses_sessions" + " SET LastRefresh=NOW()" + " WHERE SessionId='%s'", Gbl.Session.Id); } @@ -222,7 +233,8 @@ static void Ses_RemoveSessionFromDB (void) { /***** Remove current session *****/ DB_QueryDELETE ("can not remove a session", - "DELETE FROM sessions WHERE SessionId='%s'", + "DELETE FROM ses_sessions" + " WHERE SessionId='%s'", Gbl.Session.Id); /***** Clear old unused social timelines in database *****/ @@ -242,12 +254,12 @@ void Ses_RemoveExpiredSessions (void) or (when there was at least one refresh (navigator supports AJAX) and last refresh is too old (browser probably was closed)) */ DB_QueryDELETE ("can not remove expired sessions", - "DELETE LOW_PRIORITY FROM sessions WHERE" - " LastTimeLastTime+INTERVAL 1 SECOND" - " AND" - " LastRefreshLastTime+INTERVAL 1 SECOND" + " AND" + " LastRefresh