Version 20.44.2: Mar 05, 2021 Admins database table renamed.

This commit is contained in:
acanas 2021-03-05 17:56:43 +01:00
parent 539d1037ee
commit 84dfc852c5
9 changed files with 140 additions and 123 deletions

View File

@ -39,7 +39,7 @@ CREATE TABLE IF NOT EXISTS actions_MFU (
-- --
-- Table ann_seen: stores users who have seen global announcements -- Table ann_seen: stores users who have seen global announcements
-- --
CREATE TABLE IF NOT EXISTS admin ( CREATE TABLE IF NOT EXISTS usr_admins (
UsrCod INT NOT NULL, UsrCod INT NOT NULL,
Scope ENUM('Sys','Ins','Ctr','Deg') NOT NULL, Scope ENUM('Sys','Ins','Ctr','Deg') NOT NULL,
Cod INT NOT NULL, Cod INT NOT NULL,

View File

@ -1060,7 +1060,7 @@ void Acc_CompletelyEliminateAccount (struct UsrData *UsrDat,
/***** Remove user as administrator of any degree *****/ /***** Remove user as administrator of any degree *****/
DB_QueryDELETE ("can not remove a user as administrator", DB_QueryDELETE ("can not remove a user as administrator",
"DELETE FROM admin WHERE UsrCod=%ld", "DELETE FROM usr_admins WHERE UsrCod=%ld",
UsrDat->UsrCod); UsrDat->UsrCod);
if (QuietOrVerbose == Cns_VERBOSE) if (QuietOrVerbose == Cns_VERBOSE)

View File

@ -600,10 +600,14 @@ 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.44.1 (2021-03-05)" #define Log_PLATFORM_VERSION "SWAD 20.44.2 (2021-03-05)"
#define CSS_FILE "swad20.33.9.css" #define CSS_FILE "swad20.33.9.css"
#define JS_FILE "swad20.6.2.js" #define JS_FILE "swad20.6.2.js"
/* /*
Version 20.44.2: Mar 05, 2021 Admins database table renamed. (305639 lines)
1 change necessary in database:
RENAME TABLE admin TO usr_admins;
Version 20.44.1: Mar 05, 2021 Surveys database table renamed. (305623 lines) Version 20.44.1: Mar 05, 2021 Surveys database table renamed. (305623 lines)
1 change necessary in database: 1 change necessary in database:
RENAME TABLE surveys TO svy_surveys; RENAME TABLE surveys TO svy_surveys;

View File

@ -165,25 +165,6 @@ mysql> DESCRIBE actions_MFU;
"LastClick DATETIME NOT NULL," "LastClick DATETIME NOT NULL,"
"UNIQUE INDEX(UsrCod,ActCod))"); "UNIQUE INDEX(UsrCod,ActCod))");
/***** Table admin *****/
/*
mysql> DESCRIBE admin;
+--------+-------------------------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+--------+-------------------------------+------+-----+---------+-------+
| UsrCod | int(11) | NO | PRI | NULL | |
| Scope | enum('Sys','Ins','Ctr','Deg') | NO | PRI | NULL | |
| Cod | int(11) | NO | PRI | NULL | |
+--------+-------------------------------+------+-----+---------+-------+
3 rows in set (0.00 sec)
*/
DB_CreateTable ("CREATE TABLE IF NOT EXISTS admin ("
"UsrCod INT NOT NULL,"
"Scope ENUM('Sys','Ins','Ctr','Deg') NOT NULL,"
"Cod INT NOT NULL,"
"UNIQUE INDEX(UsrCod,Scope,Cod),"
"INDEX (Scope,Cod))");
/***** Table agendas *****/ /***** Table agendas *****/
/* /*
mysql> DESCRIBE agendas; mysql> DESCRIBE agendas;
@ -3379,6 +3360,46 @@ mysql> DESCRIBE tst_tags;
"UNIQUE INDEX(TagCod)," "UNIQUE INDEX(TagCod),"
"INDEX(CrsCod,ChangeTime))"); "INDEX(CrsCod,ChangeTime))");
/***** Table usr_IDs *****/
/*
mysql> DESCRIBE usr_IDs;
+-----------+---------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+-----------+---------------+------+-----+---------+-------+
| UsrCod | int(11) | NO | PRI | NULL | |
| UsrID | char(16) | NO | PRI | NULL | |
| CreatTime | datetime | NO | | NULL | |
| Confirmed | enum('N','Y') | NO | | N | |
+-----------+---------------+------+-----+---------+-------+
4 rows in set (0.01 sec)
*/
DB_CreateTable ("CREATE TABLE IF NOT EXISTS usr_IDs ("
"UsrCod INT NOT NULL,"
"UsrID CHAR(16) NOT NULL," // ID_MAX_BYTES_USR_ID
"CreatTime DATETIME NOT NULL,"
"Confirmed ENUM('N','Y') NOT NULL DEFAULT 'N',"
"UNIQUE INDEX(UsrCod,UsrID),"
"INDEX(UsrID))");
/***** Table usr_admins *****/
/*
mysql> DESCRIBE usr_admins;
+--------+-------------------------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+--------+-------------------------------+------+-----+---------+-------+
| UsrCod | int(11) | NO | PRI | NULL | |
| Scope | enum('Sys','Ins','Ctr','Deg') | NO | PRI | NULL | |
| Cod | int(11) | NO | PRI | NULL | |
+--------+-------------------------------+------+-----+---------+-------+
3 rows in set (0.00 sec)
*/
DB_CreateTable ("CREATE TABLE IF NOT EXISTS usr_admins ("
"UsrCod INT NOT NULL,"
"Scope ENUM('Sys','Ins','Ctr','Deg') NOT NULL,"
"Cod INT NOT NULL,"
"UNIQUE INDEX(UsrCod,Scope,Cod),"
"INDEX (Scope,Cod))");
/***** Table usr_banned *****/ /***** Table usr_banned *****/
/* /*
mysql> DESCRIBE usr_banned; mysql> DESCRIBE usr_banned;
@ -3581,27 +3602,6 @@ mysql> DESCRIBE usr_follow;
"UNIQUE INDEX (FollowedCod,FollowerCod)," "UNIQUE INDEX (FollowedCod,FollowerCod),"
"INDEX (FollowTime))"); "INDEX (FollowTime))");
/***** Table usr_IDs *****/
/*
mysql> DESCRIBE usr_IDs;
+-----------+---------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+-----------+---------------+------+-----+---------+-------+
| UsrCod | int(11) | NO | PRI | NULL | |
| UsrID | char(16) | NO | PRI | NULL | |
| CreatTime | datetime | NO | | NULL | |
| Confirmed | enum('N','Y') | NO | | N | |
+-----------+---------------+------+-----+---------+-------+
4 rows in set (0.01 sec)
*/
DB_CreateTable ("CREATE TABLE IF NOT EXISTS usr_IDs ("
"UsrCod INT NOT NULL,"
"UsrID CHAR(16) NOT NULL," // ID_MAX_BYTES_USR_ID
"CreatTime DATETIME NOT NULL,"
"Confirmed ENUM('N','Y') NOT NULL DEFAULT 'N',"
"UNIQUE INDEX(UsrCod,UsrID),"
"INDEX(UsrID))");
/***** Table usr_last *****/ /***** Table usr_last *****/
/* /*
mysql> DESCRIBE usr_last; mysql> DESCRIBE usr_last;

View File

@ -130,9 +130,10 @@ void Deg_SeeDegWithPendingCrss (void)
NumDegs = (unsigned) DB_QuerySELECT (&mysql_res,"can not get degrees" NumDegs = (unsigned) DB_QuerySELECT (&mysql_res,"can not get degrees"
" with pending courses", " with pending courses",
"SELECT courses.DegCod,COUNT(*)" "SELECT courses.DegCod,COUNT(*)"
" FROM admin,courses,degrees" " FROM usr_admins,courses,degrees"
" WHERE admin.UsrCod=%ld AND admin.Scope='%s'" " WHERE usr_admins.UsrCod=%ld"
" AND admin.Cod=courses.DegCod" " AND usr_admins.Scope='%s'"
" AND usr_admins.Cod=courses.DegCod"
" AND (courses.Status & %u)<>0" " AND (courses.Status & %u)<>0"
" AND courses.DegCod=degrees.DegCod" " AND courses.DegCod=degrees.DegCod"
" GROUP BY courses.DegCod" " GROUP BY courses.DegCod"
@ -1537,7 +1538,7 @@ void Deg_RemoveDegreeCompletely (long DegCod)
/***** Remove administrators of this degree *****/ /***** Remove administrators of this degree *****/
DB_QueryDELETE ("can not remove administrators of a degree", DB_QueryDELETE ("can not remove administrators of a degree",
"DELETE FROM admin WHERE Scope='%s' AND Cod=%ld", "DELETE FROM usr_admins WHERE Scope='%s' AND Cod=%ld",
Sco_GetDBStrFromScope (Hie_Lvl_DEG),DegCod); Sco_GetDBStrFromScope (Hie_Lvl_DEG),DegCod);
/***** Remove the degree *****/ /***** Remove the degree *****/

View File

@ -2355,9 +2355,10 @@ static void Enr_ShowEnrolmentRequestsGivenRoles (unsigned RolesSelected)
"crs_usr_requests.UsrCod," "crs_usr_requests.UsrCod,"
"crs_usr_requests.Role," "crs_usr_requests.Role,"
"UNIX_TIMESTAMP(crs_usr_requests.RequestTime)" "UNIX_TIMESTAMP(crs_usr_requests.RequestTime)"
" FROM admin,courses,crs_usr_requests" " FROM usr_admins,courses,crs_usr_requests"
" WHERE admin.UsrCod=%ld AND admin.Scope='%s'" " WHERE usr_admins.UsrCod=%ld"
" AND admin.Cod=courses.DegCod" " AND usr_admins.Scope='%s'"
" AND usr_admins.Cod=courses.DegCod"
" AND courses.CrsCod=crs_usr_requests.CrsCod" " AND courses.CrsCod=crs_usr_requests.CrsCod"
" AND ((1<<crs_usr_requests.Role)&%u)<>0" " AND ((1<<crs_usr_requests.Role)&%u)<>0"
" ORDER BY crs_usr_requests.RequestTime DESC", " ORDER BY crs_usr_requests.RequestTime DESC",
@ -2373,9 +2374,10 @@ static void Enr_ShowEnrolmentRequestsGivenRoles (unsigned RolesSelected)
"crs_usr_requests.UsrCod," "crs_usr_requests.UsrCod,"
"crs_usr_requests.Role," "crs_usr_requests.Role,"
"UNIX_TIMESTAMP(crs_usr_requests.RequestTime)" "UNIX_TIMESTAMP(crs_usr_requests.RequestTime)"
" FROM admin,degrees,courses,crs_usr_requests" " FROM usr_admins,degrees,courses,crs_usr_requests"
" WHERE admin.UsrCod=%ld AND admin.Scope='%s'" " WHERE usr_admins.UsrCod=%ld"
" AND admin.Cod=degrees.CtrCod" " AND usr_admins.Scope='%s'"
" AND usr_admins.Cod=degrees.CtrCod"
" AND degrees.DegCod=courses.DegCod" " AND degrees.DegCod=courses.DegCod"
" AND courses.CrsCod=crs_usr_requests.CrsCod" " AND courses.CrsCod=crs_usr_requests.CrsCod"
" AND ((1<<crs_usr_requests.Role)&%u)<>0" " AND ((1<<crs_usr_requests.Role)&%u)<>0"
@ -2392,9 +2394,10 @@ static void Enr_ShowEnrolmentRequestsGivenRoles (unsigned RolesSelected)
"crs_usr_requests.UsrCod," "crs_usr_requests.UsrCod,"
"crs_usr_requests.Role," "crs_usr_requests.Role,"
"UNIX_TIMESTAMP(crs_usr_requests.RequestTime)" "UNIX_TIMESTAMP(crs_usr_requests.RequestTime)"
" FROM admin,centres,degrees,courses,crs_usr_requests" " FROM usr_admins,centres,degrees,courses,crs_usr_requests"
" WHERE admin.UsrCod=%ld AND admin.Scope='%s'" " WHERE usr_admins.UsrCod=%ld"
" AND admin.Cod=centres.InsCod" " AND usr_admins.Scope='%s'"
" AND usr_admins.Cod=centres.InsCod"
" AND centres.CtrCod=degrees.CtrCod" " AND centres.CtrCod=degrees.CtrCod"
" AND degrees.DegCod=courses.DegCod" " AND degrees.DegCod=courses.DegCod"
" AND courses.CrsCod=crs_usr_requests.CrsCod" " AND courses.CrsCod=crs_usr_requests.CrsCod"
@ -2459,9 +2462,10 @@ static void Enr_ShowEnrolmentRequestsGivenRoles (unsigned RolesSelected)
"crs_usr_requests.UsrCod," "crs_usr_requests.UsrCod,"
"crs_usr_requests.Role," "crs_usr_requests.Role,"
"UNIX_TIMESTAMP(crs_usr_requests.RequestTime)" "UNIX_TIMESTAMP(crs_usr_requests.RequestTime)"
" FROM admin,institutions,centres,degrees,courses,crs_usr_requests" " FROM usr_admins,institutions,centres,degrees,courses,crs_usr_requests"
" WHERE admin.UsrCod=%ld AND admin.Scope='%s'" " WHERE usr_admins.UsrCod=%ld"
" AND admin.Cod=degrees.DegCod" " AND usr_admins.Scope='%s'"
" AND usr_admins.Cod=degrees.DegCod"
" AND degrees.CtrCod=centres.CtrCod" " AND degrees.CtrCod=centres.CtrCod"
" AND centres.InsCod=institutions.InsCod" " AND centres.InsCod=institutions.InsCod"
" AND institutions.CtyCod=%ld" " AND institutions.CtyCod=%ld"
@ -2482,9 +2486,10 @@ static void Enr_ShowEnrolmentRequestsGivenRoles (unsigned RolesSelected)
"crs_usr_requests.UsrCod," "crs_usr_requests.UsrCod,"
"crs_usr_requests.Role," "crs_usr_requests.Role,"
"UNIX_TIMESTAMP(crs_usr_requests.RequestTime)" "UNIX_TIMESTAMP(crs_usr_requests.RequestTime)"
" FROM admin,institutions,centres,degrees,courses,crs_usr_requests" " FROM usr_admins,institutions,centres,degrees,courses,crs_usr_requests"
" WHERE admin.UsrCod=%ld AND admin.Scope='%s'" " WHERE usr_admins.UsrCod=%ld"
" AND admin.Cod=centres.CtrCod" " AND usr_admins.Scope='%s'"
" AND usr_admins.Cod=centres.CtrCod"
" AND centres.InsCod=institutions.InsCod" " AND centres.InsCod=institutions.InsCod"
" AND institutions.CtyCod=%ld" " AND institutions.CtyCod=%ld"
" AND centres.CtrCod=degrees.CtrCod" " AND centres.CtrCod=degrees.CtrCod"
@ -2505,9 +2510,10 @@ static void Enr_ShowEnrolmentRequestsGivenRoles (unsigned RolesSelected)
"crs_usr_requests.UsrCod," "crs_usr_requests.UsrCod,"
"crs_usr_requests.Role," "crs_usr_requests.Role,"
"UNIX_TIMESTAMP(crs_usr_requests.RequestTime)" "UNIX_TIMESTAMP(crs_usr_requests.RequestTime)"
" FROM admin,institutions,centres,degrees,courses,crs_usr_requests" " FROM usr_admins,institutions,centres,degrees,courses,crs_usr_requests"
" WHERE admin.UsrCod=%ld AND admin.Scope='%s'" " WHERE usr_admins.UsrCod=%ld"
" AND admin.Cod=institutions.InsCod" " AND usr_admins.Scope='%s'"
" AND usr_admins.Cod=institutions.InsCod"
" AND institutions.CtyCod=%ld" " AND institutions.CtyCod=%ld"
" AND institutions.InsCod=centres.InsCod" " AND institutions.InsCod=centres.InsCod"
" AND centres.CtrCod=degrees.CtrCod" " AND centres.CtrCod=degrees.CtrCod"
@ -2580,9 +2586,10 @@ static void Enr_ShowEnrolmentRequestsGivenRoles (unsigned RolesSelected)
"crs_usr_requests.UsrCod," "crs_usr_requests.UsrCod,"
"crs_usr_requests.Role," "crs_usr_requests.Role,"
"UNIX_TIMESTAMP(crs_usr_requests.RequestTime)" "UNIX_TIMESTAMP(crs_usr_requests.RequestTime)"
" FROM admin,centres,degrees,courses,crs_usr_requests" " FROM usr_admins,centres,degrees,courses,crs_usr_requests"
" WHERE admin.UsrCod=%ld AND admin.Scope='%s'" " WHERE usr_admins.UsrCod=%ld"
" AND admin.Cod=degrees.DegCod" " AND usr_admins.Scope='%s'"
" AND usr_admins.Cod=degrees.DegCod"
" AND degrees.CtrCod=centres.CtrCod" " AND degrees.CtrCod=centres.CtrCod"
" AND centres.InsCod=%ld" " AND centres.InsCod=%ld"
" AND degrees.DegCod=courses.DegCod" " AND degrees.DegCod=courses.DegCod"
@ -2602,9 +2609,10 @@ static void Enr_ShowEnrolmentRequestsGivenRoles (unsigned RolesSelected)
"crs_usr_requests.UsrCod," "crs_usr_requests.UsrCod,"
"crs_usr_requests.Role," "crs_usr_requests.Role,"
"UNIX_TIMESTAMP(crs_usr_requests.RequestTime)" "UNIX_TIMESTAMP(crs_usr_requests.RequestTime)"
" FROM admin,centres,degrees,courses,crs_usr_requests" " FROM usr_admins,centres,degrees,courses,crs_usr_requests"
" WHERE admin.UsrCod=%ld AND admin.Scope='%s'" " WHERE usr_admins.UsrCod=%ld"
" AND admin.Cod=centres.CtrCod" " AND usr_admins.Scope='%s'"
" AND usr_admins.Cod=centres.CtrCod"
" AND centres.InsCod=%ld" " AND centres.InsCod=%ld"
" AND centres.CtrCod=degrees.CtrCod" " AND centres.CtrCod=degrees.CtrCod"
" AND degrees.DegCod=courses.DegCod" " AND degrees.DegCod=courses.DegCod"
@ -2675,9 +2683,10 @@ static void Enr_ShowEnrolmentRequestsGivenRoles (unsigned RolesSelected)
"crs_usr_requests.UsrCod," "crs_usr_requests.UsrCod,"
"crs_usr_requests.Role," "crs_usr_requests.Role,"
"UNIX_TIMESTAMP(crs_usr_requests.RequestTime)" "UNIX_TIMESTAMP(crs_usr_requests.RequestTime)"
" FROM admin,degrees,courses,crs_usr_requests" " FROM usr_admins,degrees,courses,crs_usr_requests"
" WHERE admin.UsrCod=%ld AND admin.Scope='%s'" " WHERE usr_admins.UsrCod=%ld"
" AND admin.Cod=degrees.DegCod" " AND usr_admins.Scope='%s'"
" AND usr_admins.Cod=degrees.DegCod"
" AND degrees.CtrCod=%ld" " AND degrees.CtrCod=%ld"
" AND degrees.DegCod=courses.DegCod" " AND degrees.DegCod=courses.DegCod"
" AND courses.CrsCod=crs_usr_requests.CrsCod" " AND courses.CrsCod=crs_usr_requests.CrsCod"
@ -3395,7 +3404,7 @@ static void Enr_RegisterAdmin (struct UsrData *UsrDat,Hie_Lvl_Level_t Scope,long
{ {
/***** Insert or replace administrator in current institution/centre/degree *****/ /***** Insert or replace administrator in current institution/centre/degree *****/
DB_QueryREPLACE ("can not create administrator", DB_QueryREPLACE ("can not create administrator",
"REPLACE INTO admin" "REPLACE INTO usr_admins"
" (UsrCod,Scope,Cod)" " (UsrCod,Scope,Cod)"
" VALUES" " VALUES"
" (%ld,'%s',%ld)", " (%ld,'%s',%ld)",
@ -4245,7 +4254,7 @@ static void Enr_EffectivelyRemAdm (struct UsrData *UsrDat,Hie_Lvl_Level_t Scope,
{ {
/***** Remove user from the table of admins *****/ /***** Remove user from the table of admins *****/
DB_QueryDELETE ("can not remove an administrator", DB_QueryDELETE ("can not remove an administrator",
"DELETE FROM admin" "DELETE FROM usr_admins"
" WHERE UsrCod=%ld AND Scope='%s' AND Cod=%ld", " WHERE UsrCod=%ld AND Scope='%s' AND Cod=%ld",
UsrDat->UsrCod,Sco_GetDBStrFromScope (Scope),Cod); UsrDat->UsrCod,Sco_GetDBStrFromScope (Scope),Cod);

View File

@ -664,27 +664,27 @@ void Hie_GetAndWriteInsCtrDegAdminBy (long UsrCod,unsigned ColSpan)
" centres, degrees" " centres, degrees"
" admin by a user", " admin by a user",
"(SELECT %u AS S,-1 AS Cod,'' AS FullName" "(SELECT %u AS S,-1 AS Cod,'' AS FullName"
" FROM admin" " FROM usr_admins"
" WHERE UsrCod=%ld" " WHERE UsrCod=%ld"
" AND Scope='%s')" " AND Scope='%s')"
" UNION " " UNION "
"(SELECT %u AS S,admin.Cod,institutions.FullName" "(SELECT %u AS S,usr_admins.Cod,institutions.FullName"
" FROM admin,institutions" " FROM usr_admins,institutions"
" WHERE admin.UsrCod=%ld" " WHERE usr_admins.UsrCod=%ld"
" AND admin.Scope='%s'" " AND usr_admins.Scope='%s'"
" AND admin.Cod=institutions.InsCod)" " AND usr_admins.Cod=institutions.InsCod)"
" UNION " " UNION "
"(SELECT %u AS S,admin.Cod,centres.FullName" "(SELECT %u AS S,usr_admins.Cod,centres.FullName"
" FROM admin,centres" " FROM usr_admins,centres"
" WHERE admin.UsrCod=%ld" " WHERE usr_admins.UsrCod=%ld"
" AND admin.Scope='%s'" " AND usr_admins.Scope='%s'"
" AND admin.Cod=centres.CtrCod)" " AND usr_admins.Cod=centres.CtrCod)"
" UNION " " UNION "
"(SELECT %u AS S,admin.Cod,degrees.FullName" "(SELECT %u AS S,usr_admins.Cod,degrees.FullName"
" FROM admin,degrees" " FROM usr_admins,degrees"
" WHERE admin.UsrCod=%ld" " WHERE usr_admins.UsrCod=%ld"
" AND admin.Scope='%s'" " AND usr_admins.Scope='%s'"
" AND admin.Cod=degrees.DegCod)" " AND usr_admins.Cod=degrees.DegCod)"
" ORDER BY S,FullName", " ORDER BY S,FullName",
(unsigned) Hie_Lvl_SYS,UsrCod,Sco_GetDBStrFromScope (Hie_Lvl_SYS), (unsigned) Hie_Lvl_SYS,UsrCod,Sco_GetDBStrFromScope (Hie_Lvl_SYS),
(unsigned) Hie_Lvl_INS,UsrCod,Sco_GetDBStrFromScope (Hie_Lvl_INS), (unsigned) Hie_Lvl_INS,UsrCod,Sco_GetDBStrFromScope (Hie_Lvl_INS),

View File

@ -1279,7 +1279,7 @@ unsigned Ntf_StoreNotifyEventsToAllUsrs (Ntf_NotifyEvent_t NotifyEvent,long Cod)
// ==> send notification to administrators or superusers // ==> send notification to administrators or superusers
NumRows = DB_QuerySELECT (&mysql_res,"can not get users" NumRows = DB_QuerySELECT (&mysql_res,"can not get users"
" to be notified", " to be notified",
"SELECT UsrCod FROM admin" "SELECT UsrCod FROM usr_admins"
" WHERE (Scope='%s'" " WHERE (Scope='%s'"
" OR (Scope='%s' AND Cod=%ld)" " OR (Scope='%s' AND Cod=%ld)"
" OR (Scope='%s' AND Cod=%ld)" " OR (Scope='%s' AND Cod=%ld)"

View File

@ -935,7 +935,7 @@ bool Usr_CheckIfUsrIsSuperuser (long UsrCod)
Gbl.Cache.UsrIsSuperuser.UsrCod = UsrCod; Gbl.Cache.UsrIsSuperuser.UsrCod = UsrCod;
Gbl.Cache.UsrIsSuperuser.IsSuperuser = Gbl.Cache.UsrIsSuperuser.IsSuperuser =
(DB_QueryCOUNT ("can not check if a user is superuser", (DB_QueryCOUNT ("can not check if a user is superuser",
"SELECT COUNT(*) FROM admin" "SELECT COUNT(*) FROM usr_admins"
" WHERE UsrCod=%ld AND Scope='%s'", " WHERE UsrCod=%ld AND Scope='%s'",
UsrCod,Sco_GetDBStrFromScope (Hie_Lvl_SYS)) != 0); UsrCod,Sco_GetDBStrFromScope (Hie_Lvl_SYS)) != 0);
return Gbl.Cache.UsrIsSuperuser.IsSuperuser; return Gbl.Cache.UsrIsSuperuser.IsSuperuser;
@ -5037,7 +5037,7 @@ static void Usr_GetAdmsLst (Hie_Lvl_Level_t Scope)
DB_BuildQuery (&Query, DB_BuildQuery (&Query,
"SELECT %s FROM usr_data" "SELECT %s FROM usr_data"
" WHERE UsrCod IN " " WHERE UsrCod IN "
"(SELECT DISTINCT UsrCod FROM admin)" "(SELECT DISTINCT UsrCod FROM usr_admins)"
" ORDER BY Surname1,Surname2,FirstName,UsrCod", " ORDER BY Surname1,Surname2,FirstName,UsrCod",
QueryFields); QueryFields);
break; break;
@ -5046,23 +5046,26 @@ static void Usr_GetAdmsLst (Hie_Lvl_Level_t Scope)
DB_BuildQuery (&Query, DB_BuildQuery (&Query,
"SELECT %s FROM usr_data" "SELECT %s FROM usr_data"
" WHERE UsrCod IN " " WHERE UsrCod IN "
"(SELECT UsrCod FROM admin" "(SELECT UsrCod FROM usr_admins"
" WHERE Scope='%s')" " WHERE Scope='%s')"
" OR UsrCod IN " " OR UsrCod IN "
"(SELECT admin.UsrCod FROM admin,institutions" "(SELECT usr_admins.UsrCod"
" WHERE admin.Scope='%s'" " FROM usr_admins,institutions"
" AND admin.Cod=institutions.InsCod" " WHERE usr_admins.Scope='%s'"
" AND usr_admins.Cod=institutions.InsCod"
" AND institutions.CtyCod=%ld)" " AND institutions.CtyCod=%ld)"
" OR UsrCod IN " " OR UsrCod IN "
"(SELECT admin.UsrCod FROM admin,centres,institutions" "(SELECT usr_admins.UsrCod"
" WHERE admin.Scope='%s'" " FROM usr_admins,centres,institutions"
" AND admin.Cod=centres.CtrCod" " WHERE usr_admins.Scope='%s'"
" AND usr_admins.Cod=centres.CtrCod"
" AND centres.InsCod=institutions.InsCod" " AND centres.InsCod=institutions.InsCod"
" AND institutions.CtyCod=%ld)" " AND institutions.CtyCod=%ld)"
" OR UsrCod IN " " OR UsrCod IN "
"(SELECT admin.UsrCod FROM admin,degrees,centres,institutions" "(SELECT usr_admins.UsrCod"
" WHERE admin.Scope='%s'" " FROM usr_admins,degrees,centres,institutions"
" AND admin.Cod=degrees.DegCod" " WHERE usr_admins.Scope='%s'"
" AND usr_admins.Cod=degrees.DegCod"
" AND degrees.CtrCod=centres.CtrCod" " AND degrees.CtrCod=centres.CtrCod"
" AND centres.InsCod=institutions.InsCod" " AND centres.InsCod=institutions.InsCod"
" AND institutions.CtyCod=%ld)" " AND institutions.CtyCod=%ld)"
@ -5079,20 +5082,20 @@ static void Usr_GetAdmsLst (Hie_Lvl_Level_t Scope)
DB_BuildQuery (&Query, DB_BuildQuery (&Query,
"SELECT %s FROM usr_data" "SELECT %s FROM usr_data"
" WHERE UsrCod IN " " WHERE UsrCod IN "
"(SELECT UsrCod FROM admin" "(SELECT UsrCod FROM usr_admins"
" WHERE Scope='%s')" " WHERE Scope='%s')"
" OR UsrCod IN " " OR UsrCod IN "
"(SELECT UsrCod FROM admin" "(SELECT UsrCod FROM usr_admins"
" WHERE Scope='%s' AND Cod=%ld)" " WHERE Scope='%s' AND Cod=%ld)"
" OR UsrCod IN " " OR UsrCod IN "
"(SELECT admin.UsrCod FROM admin,centres" "(SELECT usr_admins.UsrCod FROM usr_admins,centres"
" WHERE admin.Scope='%s'" " WHERE usr_admins.Scope='%s'"
" AND admin.Cod=centres.CtrCod" " AND usr_admins.Cod=centres.CtrCod"
" AND centres.InsCod=%ld)" " AND centres.InsCod=%ld)"
" OR UsrCod IN " " OR UsrCod IN "
"(SELECT admin.UsrCod FROM admin,degrees,centres" "(SELECT usr_admins.UsrCod FROM usr_admins,degrees,centres"
" WHERE admin.Scope='%s'" " WHERE usr_admins.Scope='%s'"
" AND admin.Cod=degrees.DegCod" " AND usr_admins.Cod=degrees.DegCod"
" AND degrees.CtrCod=centres.CtrCod" " AND degrees.CtrCod=centres.CtrCod"
" AND centres.InsCod=%ld)" " AND centres.InsCod=%ld)"
" ORDER BY Surname1,Surname2,FirstName,UsrCod", " ORDER BY Surname1,Surname2,FirstName,UsrCod",
@ -5109,18 +5112,18 @@ static void Usr_GetAdmsLst (Hie_Lvl_Level_t Scope)
DB_BuildQuery (&Query, DB_BuildQuery (&Query,
"SELECT %s FROM usr_data" "SELECT %s FROM usr_data"
" WHERE UsrCod IN " " WHERE UsrCod IN "
"(SELECT UsrCod FROM admin" "(SELECT UsrCod FROM usr_admins"
" WHERE Scope='%s')" " WHERE Scope='%s')"
" OR UsrCod IN " " OR UsrCod IN "
"(SELECT UsrCod FROM admin" "(SELECT UsrCod FROM usr_admins"
" WHERE Scope='%s' AND Cod=%ld)" " WHERE Scope='%s' AND Cod=%ld)"
" OR UsrCod IN " " OR UsrCod IN "
"(SELECT UsrCod FROM admin" "(SELECT UsrCod FROM usr_admins"
" WHERE Scope='%s' AND Cod=%ld)" " WHERE Scope='%s' AND Cod=%ld)"
" OR UsrCod IN " " OR UsrCod IN "
"(SELECT admin.UsrCod FROM admin,degrees" "(SELECT usr_admins.UsrCod FROM usr_admins,degrees"
" WHERE admin.Scope='%s'" " WHERE usr_admins.Scope='%s'"
" AND admin.Cod=degrees.DegCod" " AND usr_admins.Cod=degrees.DegCod"
" AND degrees.CtrCod=%ld)" " AND degrees.CtrCod=%ld)"
" ORDER BY Surname1,Surname2,FirstName,UsrCod", " ORDER BY Surname1,Surname2,FirstName,UsrCod",
QueryFields, QueryFields,
@ -5134,16 +5137,16 @@ static void Usr_GetAdmsLst (Hie_Lvl_Level_t Scope)
DB_BuildQuery (&Query, DB_BuildQuery (&Query,
"SELECT %s FROM usr_data" "SELECT %s FROM usr_data"
" WHERE UsrCod IN " " WHERE UsrCod IN "
"(SELECT UsrCod FROM admin" "(SELECT UsrCod FROM usr_admins"
" WHERE Scope='%s')" " WHERE Scope='%s')"
" OR UsrCod IN " " OR UsrCod IN "
"(SELECT UsrCod FROM admin" "(SELECT UsrCod FROM usr_admins"
" WHERE Scope='%s' AND Cod=%ld)" " WHERE Scope='%s' AND Cod=%ld)"
" OR UsrCod IN " " OR UsrCod IN "
"(SELECT UsrCod FROM admin" "(SELECT UsrCod FROM usr_admins"
" WHERE Scope='%s' AND Cod=%ld)" " WHERE Scope='%s' AND Cod=%ld)"
" OR UsrCod IN " " OR UsrCod IN "
"(SELECT UsrCod FROM admin" "(SELECT UsrCod FROM usr_admins"
" WHERE Scope='%s' AND Cod=%ld)" " WHERE Scope='%s' AND Cod=%ld)"
" ORDER BY Surname1,Surname2,FirstName,UsrCod", " ORDER BY Surname1,Surname2,FirstName,UsrCod",
QueryFields, QueryFields,