mirror of https://github.com/acanas/swad-core.git
Version 16.155.28
This commit is contained in:
parent
3006896573
commit
a5d13a10cc
14
sql/swad.sql
14
sql/swad.sql
|
@ -1187,9 +1187,9 @@ CREATE TABLE IF NOT EXISTS usr_data (
|
|||
UsrCod INT NOT NULL AUTO_INCREMENT,
|
||||
EncryptedUsrCod CHAR(43) NOT NULL DEFAULT '',
|
||||
Password CHAR(86) COLLATE latin1_bin NOT NULL DEFAULT '',
|
||||
Surname1 VARCHAR(32) COLLATE latin1_spanish_ci NOT NULL DEFAULT '',
|
||||
Surname2 VARCHAR(32) COLLATE latin1_spanish_ci NOT NULL DEFAULT '',
|
||||
FirstName VARCHAR(32) COLLATE latin1_spanish_ci NOT NULL DEFAULT '',
|
||||
Surname1 VARCHAR(511) COLLATE latin1_spanish_ci NOT NULL DEFAULT '',
|
||||
Surname2 VARCHAR(511) COLLATE latin1_spanish_ci NOT NULL DEFAULT '',
|
||||
FirstName VARCHAR(511) COLLATE latin1_spanish_ci NOT NULL DEFAULT '',
|
||||
Sex ENUM ('unknown','female','male') NOT NULL DEFAULT 'unknown',
|
||||
Theme CHAR(16) NOT NULL DEFAULT '',
|
||||
IconSet CHAR(16) NOT NULL DEFAULT '',
|
||||
|
@ -1203,13 +1203,13 @@ CREATE TABLE IF NOT EXISTS usr_data (
|
|||
InsCod INT NOT NULL DEFAULT -1,
|
||||
DptCod INT NOT NULL DEFAULT -1,
|
||||
CtrCod INT NOT NULL DEFAULT -1,
|
||||
Office VARCHAR(127) NOT NULL DEFAULT '',
|
||||
Office VARCHAR(2047) NOT NULL DEFAULT '',
|
||||
OfficePhone CHAR(16) NOT NULL DEFAULT '',
|
||||
LocalAddress VARCHAR(127) NOT NULL DEFAULT '',
|
||||
LocalAddress VARCHAR(2047) NOT NULL DEFAULT '',
|
||||
LocalPhone CHAR(16) NOT NULL DEFAULT '',
|
||||
FamilyAddress VARCHAR(127) NOT NULL DEFAULT '',
|
||||
FamilyAddress VARCHAR(2047) NOT NULL DEFAULT '',
|
||||
FamilyPhone CHAR(16) NOT NULL DEFAULT '',
|
||||
OriginPlace VARCHAR(127) NOT NULL DEFAULT '',
|
||||
OriginPlace VARCHAR(2047) NOT NULL DEFAULT '',
|
||||
Birthday DATE NOT NULL,
|
||||
Comments TEXT NOT NULL DEFAULT '',
|
||||
Menu TINYINT NOT NULL DEFAULT 0,
|
||||
|
|
|
@ -209,13 +209,23 @@
|
|||
/****************************** Public constants *****************************/
|
||||
/*****************************************************************************/
|
||||
|
||||
#define Log_PLATFORM_VERSION "SWAD 16.155.27 (2017-03-13)"
|
||||
#define Log_PLATFORM_VERSION "SWAD 16.155.28 (2017-03-13)"
|
||||
#define CSS_FILE "swad16.147.css"
|
||||
#define JS_FILE "swad16.144.js"
|
||||
|
||||
// Number of lines (includes comments but not blank lines) has been got with the following command:
|
||||
// nl swad*.c swad*.h css/swad*.css py/swad*.py js/swad*.js soap/swad*?.h sql/swad*.sql | tail -1
|
||||
/*
|
||||
Version 16.155.28:Mar 13, 2017 Adjusting size of database fields. (217035 lines)
|
||||
7 changes necessary in database.
|
||||
ALTER TABLE usr_data CHANGE COLUMN Surname1 Surname1 VARCHAR(511) COLLATE latin1_spanish_ci NOT NULL DEFAULT '';
|
||||
ALTER TABLE usr_data CHANGE COLUMN Surname2 Surname2 VARCHAR(511) COLLATE latin1_spanish_ci NOT NULL DEFAULT '';
|
||||
ALTER TABLE usr_data CHANGE COLUMN FirstName FirstName VARCHAR(511) COLLATE latin1_spanish_ci NOT NULL DEFAULT '';
|
||||
ALTER TABLE usr_data CHANGE COLUMN Office Office VARCHAR(2047) NOT NULL DEFAULT '';
|
||||
ALTER TABLE usr_data CHANGE COLUMN LocalAddress LocalAddress VARCHAR(2047) NOT NULL DEFAULT '';
|
||||
ALTER TABLE usr_data CHANGE COLUMN FamilyAddress FamilyAddress VARCHAR(2047) NOT NULL DEFAULT '';
|
||||
ALTER TABLE usr_data CHANGE COLUMN OriginPlace OriginPlace VARCHAR(2047) NOT NULL DEFAULT '';
|
||||
|
||||
Version 16.155.27:Mar 13, 2017 Adjusting size of database fields. (217038 lines)
|
||||
4 changes necessary in database.
|
||||
ALTER TABLE tst_answers CHANGE COLUMN ImageTitle ImageTitle VARCHAR(2047) NOT NULL;
|
||||
|
|
108
swad_database.c
108
swad_database.c
|
@ -2512,7 +2512,7 @@ mysql> DESCRIBE usr_banned;
|
|||
|
||||
*/
|
||||
DB_CreateTable ("CREATE TABLE IF NOT EXISTS usr_banned ("
|
||||
"UsrCod INT NOT NULL,"
|
||||
"UsrCod INT NOT NULL,"
|
||||
"UNIQUE INDEX(UsrCod))");
|
||||
|
||||
/***** Table usr_data *****/
|
||||
|
@ -2524,9 +2524,9 @@ mysql> DESCRIBE usr_data;
|
|||
| UsrCod | int(11) | NO | PRI | NULL | auto_increment |
|
||||
| EncryptedUsrCod | char(43) | NO | UNI | | |
|
||||
| Password | char(86) | NO | | | |
|
||||
| Surname1 | varchar(32) | NO | | | |
|
||||
| Surname2 | varchar(32) | NO | | | |
|
||||
| FirstName | varchar(32) | NO | | | |
|
||||
| Surname1 | varchar(511) | NO | | | |
|
||||
| Surname2 | varchar(511) | NO | | | |
|
||||
| FirstName | varchar(511) | NO | | | |
|
||||
| Sex | enum('unknown','female','male') | NO | | unknown | |
|
||||
| Theme | char(16) | NO | MUL | | |
|
||||
| IconSet | char(16) | NO | MUL | | |
|
||||
|
@ -2540,13 +2540,13 @@ mysql> DESCRIBE usr_data;
|
|||
| InsCod | int(11) | NO | MUL | -1 | |
|
||||
| DptCod | int(11) | NO | MUL | -1 | |
|
||||
| CtrCod | int(11) | NO | MUL | -1 | |
|
||||
| Office | varchar(127) | NO | | | |
|
||||
| Office | varchar(2047) | NO | | | |
|
||||
| OfficePhone | char(16) | NO | | | |
|
||||
| LocalAddress | varchar(127) | NO | | | |
|
||||
| LocalAddress | varchar(2047) | NO | | | |
|
||||
| LocalPhone | char(16) | NO | | | |
|
||||
| FamilyAddress | varchar(127) | NO | | | |
|
||||
| FamilyAddress | varchar(2047) | NO | | | |
|
||||
| FamilyPhone | char(16) | NO | | | |
|
||||
| OriginPlace | varchar(127) | NO | | | |
|
||||
| OriginPlace | varchar(2047) | NO | | | |
|
||||
| Birthday | date | YES | | NULL | |
|
||||
| Comments | text | NO | | NULL | |
|
||||
| Menu | tinyint(4) | NO | MUL | 0 | |
|
||||
|
@ -2554,56 +2554,56 @@ mysql> DESCRIBE usr_data;
|
|||
| NotifNtfEvents | int(11) | NO | | 0 | |
|
||||
| EmailNtfEvents | int(11) | NO | | 0 | |
|
||||
+-------------------+--------------------------------------------------+------+-----+---------+----------------+
|
||||
32 rows in set (0.00 sec)
|
||||
32 rows in set (0,00 sec)
|
||||
*/
|
||||
DB_CreateTable ("CREATE TABLE IF NOT EXISTS usr_data ("
|
||||
"UsrCod INT NOT NULL AUTO_INCREMENT,"
|
||||
"EncryptedUsrCod CHAR(43) NOT NULL DEFAULT '',"
|
||||
"Password CHAR(86) COLLATE latin1_bin NOT NULL DEFAULT ''," // Pwd_BYTES_ENCRYPTED_PASSWORD
|
||||
"Surname1 VARCHAR(32) COLLATE latin1_spanish_ci NOT NULL DEFAULT '',"
|
||||
"Surname2 VARCHAR(32) COLLATE latin1_spanish_ci NOT NULL DEFAULT '',"
|
||||
"FirstName VARCHAR(32) COLLATE latin1_spanish_ci NOT NULL DEFAULT '',"
|
||||
"Sex ENUM ('unknown','female','male') NOT NULL DEFAULT 'unknown',"
|
||||
"Theme CHAR(16) NOT NULL DEFAULT '',"
|
||||
"IconSet CHAR(16) NOT NULL DEFAULT '',"
|
||||
"Language CHAR(2) NOT NULL DEFAULT '',"
|
||||
"FirstDayOfWeek TINYINT NOT NULL DEFAULT 0,"
|
||||
"Photo CHAR(43) NOT NULL DEFAULT '',"
|
||||
"PhotoVisibility ENUM('unknown','user','course','system','world') NOT NULL DEFAULT 'unknown',"
|
||||
"ProfileVisibility ENUM('unknown','user','course','system','world') NOT NULL DEFAULT 'unknown',"
|
||||
"CtyCod INT NOT NULL DEFAULT -1,"
|
||||
"InsCtyCod INT NOT NULL DEFAULT -1,"
|
||||
"InsCod INT NOT NULL DEFAULT -1,"
|
||||
"DptCod INT NOT NULL DEFAULT -1,"
|
||||
"CtrCod INT NOT NULL DEFAULT -1,"
|
||||
"Office VARCHAR(127) NOT NULL DEFAULT '',"
|
||||
"OfficePhone CHAR(16) NOT NULL DEFAULT '',"
|
||||
"LocalAddress VARCHAR(127) NOT NULL DEFAULT '',"
|
||||
"LocalPhone CHAR(16) NOT NULL DEFAULT '',"
|
||||
"FamilyAddress VARCHAR(127) NOT NULL DEFAULT '',"
|
||||
"FamilyPhone CHAR(16) NOT NULL DEFAULT '',"
|
||||
"OriginPlace VARCHAR(127) NOT NULL DEFAULT '',"
|
||||
"Birthday DATE,"
|
||||
"Comments TEXT NOT NULL,"
|
||||
"Menu TINYINT NOT NULL DEFAULT 0,"
|
||||
"SideCols TINYINT NOT NULL DEFAULT 3,"
|
||||
"NotifNtfEvents INT NOT NULL DEFAULT 0,"
|
||||
"EmailNtfEvents INT NOT NULL DEFAULT 0,"
|
||||
"PRIMARY KEY(UsrCod),"
|
||||
"UNIQUE INDEX(EncryptedUsrCod),"
|
||||
"INDEX(Theme),"
|
||||
"INDEX(IconSet),"
|
||||
"INDEX(Language),"
|
||||
"INDEX(FirstDayOfWeek),"
|
||||
"UsrCod INT NOT NULL AUTO_INCREMENT,"
|
||||
"EncryptedUsrCod CHAR(43) NOT NULL DEFAULT '',"
|
||||
"Password CHAR(86) COLLATE latin1_bin NOT NULL DEFAULT ''," // Pwd_BYTES_ENCRYPTED_PASSWORD
|
||||
"Surname1 VARCHAR(511) COLLATE latin1_spanish_ci NOT NULL DEFAULT ''," // Usr_MAX_BYTES_FIRSTNAME_OR_SURNAME
|
||||
"Surname2 VARCHAR(511) COLLATE latin1_spanish_ci NOT NULL DEFAULT ''," // Usr_MAX_BYTES_FIRSTNAME_OR_SURNAME
|
||||
"FirstName VARCHAR(511) COLLATE latin1_spanish_ci NOT NULL DEFAULT ''," // Usr_MAX_BYTES_FIRSTNAME_OR_SURNAME
|
||||
"Sex ENUM ('unknown','female','male') NOT NULL DEFAULT 'unknown',"
|
||||
"Theme CHAR(16) NOT NULL DEFAULT '',"
|
||||
"IconSet CHAR(16) NOT NULL DEFAULT '',"
|
||||
"Language CHAR(2) NOT NULL DEFAULT '',"
|
||||
"FirstDayOfWeek TINYINT NOT NULL DEFAULT 0,"
|
||||
"Photo CHAR(43) NOT NULL DEFAULT ''," // Cry_BYTES_ENCRYPTED_STR_SHA256_BASE64
|
||||
"PhotoVisibility ENUM('unknown','user','course','system','world') NOT NULL DEFAULT 'unknown',"
|
||||
"ProfileVisibility ENUM('unknown','user','course','system','world') NOT NULL DEFAULT 'unknown',"
|
||||
"CtyCod INT NOT NULL DEFAULT -1,"
|
||||
"InsCtyCod INT NOT NULL DEFAULT -1,"
|
||||
"InsCod INT NOT NULL DEFAULT -1,"
|
||||
"DptCod INT NOT NULL DEFAULT -1,"
|
||||
"CtrCod INT NOT NULL DEFAULT -1,"
|
||||
"Office VARCHAR(2047) NOT NULL DEFAULT ''," // Usr_MAX_BYTES_ADDRESS
|
||||
"OfficePhone CHAR(16) NOT NULL DEFAULT ''," // Usr_MAX_BYTES_PHONE
|
||||
"LocalAddress VARCHAR(2047) NOT NULL DEFAULT ''," // Usr_MAX_BYTES_ADDRESS
|
||||
"LocalPhone CHAR(16) NOT NULL DEFAULT ''," // Usr_MAX_BYTES_PHONE
|
||||
"FamilyAddress VARCHAR(2047) NOT NULL DEFAULT ''," // Usr_MAX_BYTES_ADDRESS
|
||||
"FamilyPhone CHAR(16) NOT NULL DEFAULT ''," // Usr_MAX_BYTES_PHONE
|
||||
"OriginPlace VARCHAR(2047) NOT NULL DEFAULT ''," // Usr_MAX_BYTES_ADDRESS
|
||||
"Birthday DATE,"
|
||||
"Comments TEXT NOT NULL," // Cns_MAX_BYTES_TEXT
|
||||
"Menu TINYINT NOT NULL DEFAULT 0,"
|
||||
"SideCols TINYINT NOT NULL DEFAULT 3,"
|
||||
"NotifNtfEvents INT NOT NULL DEFAULT 0,"
|
||||
"EmailNtfEvents INT NOT NULL DEFAULT 0,"
|
||||
"PRIMARY KEY(UsrCod),"
|
||||
"UNIQUE INDEX(EncryptedUsrCod),"
|
||||
"INDEX(Theme),"
|
||||
"INDEX(IconSet),"
|
||||
"INDEX(Language),"
|
||||
"INDEX(FirstDayOfWeek),"
|
||||
"INDEX(PhotoVisibility),"
|
||||
"INDEX(ProfileVisibility),"
|
||||
"INDEX(CtyCod),"
|
||||
"INDEX(InsCtyCod),"
|
||||
"INDEX(InsCod),"
|
||||
"INDEX(DptCod),"
|
||||
"INDEX(CtrCod),"
|
||||
"INDEX(Menu),"
|
||||
"INDEX(SideCols))");
|
||||
"INDEX(CtyCod),"
|
||||
"INDEX(InsCtyCod),"
|
||||
"INDEX(InsCod),"
|
||||
"INDEX(DptCod),"
|
||||
"INDEX(CtrCod),"
|
||||
"INDEX(Menu),"
|
||||
"INDEX(SideCols))");
|
||||
|
||||
/***** Table usr_duplicated *****/
|
||||
/*
|
||||
|
|
94
swad_user.c
94
swad_user.c
|
@ -381,7 +381,7 @@ void Usr_FreeListUsrCods (struct ListUsrCods *ListUsrCods)
|
|||
|
||||
void Usr_GetUsrCodFromEncryptedUsrCod (struct UsrData *UsrDat)
|
||||
{
|
||||
char Query[512];
|
||||
char Query[128 + Cry_BYTES_ENCRYPTED_STR_SHA256_BASE64];
|
||||
MYSQL_RES *mysql_res;
|
||||
MYSQL_ROW row;
|
||||
unsigned long NumRows;
|
||||
|
@ -389,8 +389,7 @@ void Usr_GetUsrCodFromEncryptedUsrCod (struct UsrData *UsrDat)
|
|||
if (UsrDat->EncryptedUsrCod[0])
|
||||
{
|
||||
/***** Get user's code from database *****/
|
||||
sprintf (Query,"SELECT UsrCod FROM usr_data"
|
||||
" WHERE EncryptedUsrCod='%s'",
|
||||
sprintf (Query,"SELECT UsrCod FROM usr_data WHERE EncryptedUsrCod='%s'",
|
||||
UsrDat->EncryptedUsrCod);
|
||||
NumRows = DB_QuerySELECT (Query,&mysql_res,"can not get user's code");
|
||||
|
||||
|
@ -415,7 +414,7 @@ void Usr_GetUsrCodFromEncryptedUsrCod (struct UsrData *UsrDat)
|
|||
|
||||
void Usr_GetEncryptedUsrCodFromUsrCod (struct UsrData *UsrDat) // TODO: Remove this funcion, it's not used
|
||||
{
|
||||
char Query[512];
|
||||
char Query[128];
|
||||
MYSQL_RES *mysql_res;
|
||||
MYSQL_ROW row;
|
||||
unsigned long NumRows;
|
||||
|
@ -423,8 +422,7 @@ void Usr_GetEncryptedUsrCodFromUsrCod (struct UsrData *UsrDat) // TODO: Remove t
|
|||
if (UsrDat->UsrCod > 0)
|
||||
{
|
||||
/***** Get encrypted user's code from database *****/
|
||||
sprintf (Query,"SELECT EncryptedUsrCod FROM usr_data"
|
||||
" WHERE UsrCod='%ld'",
|
||||
sprintf (Query,"SELECT EncryptedUsrCod FROM usr_data WHERE UsrCod='%ld'",
|
||||
UsrDat->UsrCod);
|
||||
NumRows = DB_QuerySELECT (Query,&mysql_res,"can not get encrypted user's code");
|
||||
|
||||
|
@ -759,7 +757,7 @@ void Usr_WriteFirstNameBRSurnames (const struct UsrData *UsrDat)
|
|||
bool Usr_CheckIfUsrIsAdm (long UsrCod,Sco_Scope_t Scope,long Cod)
|
||||
{
|
||||
extern const char *Sco_ScopeDB[Sco_NUM_SCOPES];
|
||||
char Query[128];
|
||||
char Query[256];
|
||||
|
||||
if (Sco_ScopeDB[Scope])
|
||||
{
|
||||
|
@ -779,7 +777,7 @@ bool Usr_CheckIfUsrIsAdm (long UsrCod,Sco_Scope_t Scope,long Cod)
|
|||
bool Usr_CheckIfUsrIsSuperuser (long UsrCod)
|
||||
{
|
||||
extern const char *Sco_ScopeDB[Sco_NUM_SCOPES];
|
||||
char Query[128];
|
||||
char Query[256];
|
||||
static struct
|
||||
{
|
||||
long UsrCod;
|
||||
|
@ -800,7 +798,7 @@ bool Usr_CheckIfUsrIsSuperuser (long UsrCod)
|
|||
{
|
||||
/***** Get if a user is superuser from database *****/
|
||||
sprintf (Query,"SELECT COUNT(*) FROM admin"
|
||||
" WHERE UsrCod='%ld' AND Scope='%s'",
|
||||
" WHERE UsrCod='%ld' AND Scope='%s'",
|
||||
UsrCod,Sco_ScopeDB[Sco_SCOPE_SYS]);
|
||||
Cached.UsrCod = UsrCod;
|
||||
Cached.IsSuperuser = (DB_QueryCOUNT (Query,"can not check if a user is superuser") != 0);
|
||||
|
@ -892,8 +890,7 @@ unsigned Usr_GetNumCrssOfUsr (long UsrCod)
|
|||
char Query[128];
|
||||
|
||||
/***** Get the number of courses of a user from database ******/
|
||||
sprintf (Query,"SELECT COUNT(*) FROM crs_usr"
|
||||
" WHERE UsrCod='%ld'",
|
||||
sprintf (Query,"SELECT COUNT(*) FROM crs_usr WHERE UsrCod='%ld'",
|
||||
UsrCod);
|
||||
return (unsigned) DB_QueryCOUNT (Query,"can not get the number of courses of a user");
|
||||
}
|
||||
|
@ -919,7 +916,7 @@ unsigned Usr_GetNumCrssOfUsrNotAccepted (long UsrCod)
|
|||
|
||||
unsigned Usr_GetNumCrssOfUsrWithARole (long UsrCod,Rol_Role_t Role)
|
||||
{
|
||||
char Query[128];
|
||||
char Query[256];
|
||||
|
||||
/***** Get the number of courses of a user with a role from database ******/
|
||||
sprintf (Query,"SELECT COUNT(*) FROM crs_usr"
|
||||
|
@ -934,7 +931,7 @@ unsigned Usr_GetNumCrssOfUsrWithARole (long UsrCod,Rol_Role_t Role)
|
|||
|
||||
unsigned Usr_GetNumCrssOfUsrWithARoleNotAccepted (long UsrCod,Rol_Role_t Role)
|
||||
{
|
||||
char Query[128];
|
||||
char Query[256];
|
||||
|
||||
/***** Get the number of courses of a user with a role from database ******/
|
||||
sprintf (Query,"SELECT COUNT(*) FROM crs_usr"
|
||||
|
@ -950,7 +947,7 @@ unsigned Usr_GetNumCrssOfUsrWithARoleNotAccepted (long UsrCod,Rol_Role_t Role)
|
|||
unsigned Usr_GetNumUsrsInCrssOfAUsr (long UsrCod,Rol_Role_t UsrRole,
|
||||
Rol_Role_t OthersRole)
|
||||
{
|
||||
char Query[256];
|
||||
char Query[512];
|
||||
unsigned NumUsrs;
|
||||
// This query can be made in a unique, but slower, query
|
||||
// The temporary table achieves speedup from ~2s to few ms
|
||||
|
@ -1362,7 +1359,7 @@ void Usr_GetMyDegrees (void)
|
|||
|
||||
void Usr_GetMyCourses (void)
|
||||
{
|
||||
char Query[512];
|
||||
char Query[1024];
|
||||
MYSQL_RES *mysql_res;
|
||||
MYSQL_ROW row;
|
||||
unsigned NumCrs;
|
||||
|
@ -1790,7 +1787,7 @@ bool Usr_CheckIfIBelongToCrs (long CrsCod)
|
|||
unsigned Usr_GetCtysFromUsr (long UsrCod,MYSQL_RES **mysql_res)
|
||||
{
|
||||
extern const char *Txt_STR_LANG_ID[1 + Txt_NUM_LANGUAGES];
|
||||
char Query[512];
|
||||
char Query[1024];
|
||||
|
||||
/***** Get the institutions a user belongs to from database *****/
|
||||
sprintf (Query,"SELECT countries.CtyCod,MAX(crs_usr.Role)"
|
||||
|
@ -1814,7 +1811,7 @@ unsigned Usr_GetCtysFromUsr (long UsrCod,MYSQL_RES **mysql_res)
|
|||
|
||||
unsigned long Usr_GetInssFromUsr (long UsrCod,long CtyCod,MYSQL_RES **mysql_res)
|
||||
{
|
||||
char Query[512];
|
||||
char Query[1024];
|
||||
|
||||
/***** Get the institutions a user belongs to from database *****/
|
||||
if (CtyCod > 0)
|
||||
|
@ -1850,7 +1847,7 @@ unsigned long Usr_GetInssFromUsr (long UsrCod,long CtyCod,MYSQL_RES **mysql_res)
|
|||
|
||||
unsigned long Usr_GetCtrsFromUsr (long UsrCod,long InsCod,MYSQL_RES **mysql_res)
|
||||
{
|
||||
char Query[512];
|
||||
char Query[1024];
|
||||
|
||||
/***** Get from database the centres a user belongs to *****/
|
||||
if (InsCod > 0)
|
||||
|
@ -1882,7 +1879,7 @@ unsigned long Usr_GetCtrsFromUsr (long UsrCod,long InsCod,MYSQL_RES **mysql_res)
|
|||
|
||||
unsigned long Usr_GetDegsFromUsr (long UsrCod,long CtrCod,MYSQL_RES **mysql_res)
|
||||
{
|
||||
char Query[512];
|
||||
char Query[1024];
|
||||
|
||||
/***** Get from database the degrees a user belongs to *****/
|
||||
if (CtrCod > 0)
|
||||
|
@ -1913,7 +1910,7 @@ unsigned long Usr_GetDegsFromUsr (long UsrCod,long CtrCod,MYSQL_RES **mysql_res)
|
|||
|
||||
unsigned long Usr_GetCrssFromUsr (long UsrCod,long DegCod,MYSQL_RES **mysql_res)
|
||||
{
|
||||
char Query[512];
|
||||
char Query[1024];
|
||||
|
||||
/***** Get from database the courses a user belongs to *****/
|
||||
if (DegCod > 0) // Courses in a degree
|
||||
|
@ -1939,13 +1936,12 @@ unsigned long Usr_GetCrssFromUsr (long UsrCod,long DegCod,MYSQL_RES **mysql_res)
|
|||
/******** Check if a user exists with a given encrypted user's code **********/
|
||||
/*****************************************************************************/
|
||||
|
||||
bool Usr_ChkIfEncryptedUsrCodExists (const char *EncryptedUsrCod)
|
||||
bool Usr_ChkIfEncryptedUsrCodExists (const char EncryptedUsrCod[Cry_BYTES_ENCRYPTED_STR_SHA256_BASE64])
|
||||
{
|
||||
char Query[512];
|
||||
char Query[128 + Cry_BYTES_ENCRYPTED_STR_SHA256_BASE64];
|
||||
|
||||
/***** Get if an encrypted user's code already existed in database *****/
|
||||
sprintf (Query,"SELECT COUNT(*) FROM usr_data"
|
||||
" WHERE EncryptedUsrCod='%s'",
|
||||
sprintf (Query,"SELECT COUNT(*) FROM usr_data WHERE EncryptedUsrCod='%s'",
|
||||
EncryptedUsrCod);
|
||||
return (DB_QueryCOUNT (Query,"can not check if an encrypted user's code already existed") != 0);
|
||||
}
|
||||
|
@ -2174,7 +2170,7 @@ void Usr_CreateBirthdayStrDB (const struct UsrData *UsrDat,
|
|||
|
||||
static bool Usr_CheckIfMyBirthdayHasNotBeenCongratulated (void)
|
||||
{
|
||||
char Query[256];
|
||||
char Query[128];
|
||||
|
||||
/***** Delete old birthdays *****/
|
||||
sprintf (Query,"SELECT COUNT(*) FROM birthdays_today WHERE UsrCod='%ld'",
|
||||
|
@ -3657,11 +3653,11 @@ static void Usr_WriteUsrData (const char *BgColor,
|
|||
|
||||
unsigned Usr_GetNumUsrsInCrs (Rol_Role_t Role,long CrsCod)
|
||||
{
|
||||
char Query[512];
|
||||
char Query[256];
|
||||
|
||||
/***** Get the number of teachers in a course from database ******/
|
||||
sprintf (Query,"SELECT COUNT(*) FROM crs_usr"
|
||||
" WHERE CrsCod='%ld' AND Role='%u'",
|
||||
" WHERE CrsCod='%ld' AND Role='%u'",
|
||||
CrsCod,(unsigned) Role);
|
||||
return (unsigned) DB_QueryCOUNT (Query,"can not get the number of users in a course");
|
||||
}
|
||||
|
@ -3847,7 +3843,7 @@ long Usr_GetRamdomStdFromGrp (long GrpCod)
|
|||
|
||||
unsigned Usr_GetNumTchsCurrentInsInDepartment (long DptCod)
|
||||
{
|
||||
char Query[256];
|
||||
char Query[512];
|
||||
|
||||
/***** Get the number of teachers
|
||||
from the current institution in a department *****/
|
||||
|
@ -3868,9 +3864,7 @@ unsigned Usr_GetNumUsrsWhoClaimToBelongToCty (long CtyCod)
|
|||
char Query[128];
|
||||
|
||||
/***** Get the number of users in a country from database *****/
|
||||
sprintf (Query,"SELECT COUNT(UsrCod)"
|
||||
" FROM usr_data"
|
||||
" WHERE CtyCod='%ld'",
|
||||
sprintf (Query,"SELECT COUNT(UsrCod) FROM usr_data WHERE CtyCod='%ld'",
|
||||
CtyCod);
|
||||
return (unsigned) DB_QueryCOUNT (Query,"can not get the number of users in a country");
|
||||
}
|
||||
|
@ -3884,9 +3878,7 @@ unsigned Usr_GetNumUsrsWhoClaimToBelongToIns (long InsCod)
|
|||
char Query[128];
|
||||
|
||||
/***** Get the number of users in an institution from database *****/
|
||||
sprintf (Query,"SELECT COUNT(UsrCod)"
|
||||
" FROM usr_data"
|
||||
" WHERE InsCod='%ld'",
|
||||
sprintf (Query,"SELECT COUNT(UsrCod) FROM usr_data WHERE InsCod='%ld'",
|
||||
InsCod);
|
||||
return (unsigned) DB_QueryCOUNT (Query,"can not get the number of users in an institution");
|
||||
}
|
||||
|
@ -3900,9 +3892,7 @@ unsigned Usr_GetNumUsrsWhoClaimToBelongToCtr (long CtrCod)
|
|||
char Query[128];
|
||||
|
||||
/***** Get the number of users in a centre from database *****/
|
||||
sprintf (Query,"SELECT COUNT(UsrCod)"
|
||||
" FROM usr_data"
|
||||
" WHERE CtrCod='%ld'",
|
||||
sprintf (Query,"SELECT COUNT(UsrCod) FROM usr_data WHERE CtrCod='%ld'",
|
||||
CtrCod);
|
||||
return (unsigned) DB_QueryCOUNT (Query,"can not get the number of users in a centre");
|
||||
}
|
||||
|
@ -3913,7 +3903,7 @@ unsigned Usr_GetNumUsrsWhoClaimToBelongToCtr (long CtrCod)
|
|||
|
||||
unsigned Usr_GetNumberOfTeachersInCentre (long CtrCod)
|
||||
{
|
||||
char Query[256];
|
||||
char Query[512];
|
||||
|
||||
/***** Get the number of teachers in a centre from database *****/
|
||||
sprintf (Query,"SELECT COUNT(DISTINCT usr_data.UsrCod)"
|
||||
|
@ -4255,7 +4245,7 @@ void Usr_GetListUsrs (Rol_Role_t Role,Sco_Scope_t Scope)
|
|||
|
||||
void Usr_SearchListUsrs (Rol_Role_t Role)
|
||||
{
|
||||
char Query[4 * 1024];
|
||||
char Query[Usr_MAX_BYTES_QUERY_GET_LIST_USRS + 1];
|
||||
const char *QueryFields =
|
||||
"DISTINCT usr_data.UsrCod,"
|
||||
"usr_data.EncryptedUsrCod,"
|
||||
|
@ -4501,9 +4491,9 @@ void Usr_SearchListUsrs (Rol_Role_t Role)
|
|||
/*************** Create temporary table with candidate users *****************/
|
||||
/*****************************************************************************/
|
||||
|
||||
void Usr_CreateTmpTableAndSearchCandidateUsrs (const char *SearchQuery)
|
||||
void Usr_CreateTmpTableAndSearchCandidateUsrs (const char SearchQuery[Sch_MAX_BYTES_SEARCH_QUERY + 1])
|
||||
{
|
||||
char Query[16 * 1024];
|
||||
char Query[256 + Sch_MAX_BYTES_SEARCH_QUERY];
|
||||
|
||||
/***** Create temporary table with candidate users *****/
|
||||
/*
|
||||
|
@ -4539,7 +4529,7 @@ void Usr_DropTmpTableWithCandidateUsrs (void)
|
|||
static void Usr_GetAdmsLst (Sco_Scope_t Scope)
|
||||
{
|
||||
extern const char *Sco_ScopeDB[Sco_NUM_SCOPES];
|
||||
char Query[1024];
|
||||
char Query[2048];
|
||||
const char *QueryFields =
|
||||
"UsrCod,"
|
||||
"EncryptedUsrCod,"
|
||||
|
@ -5236,7 +5226,7 @@ bool Usr_GetListMsgRecipientsWrittenExplicitelyBySender (bool WriteErrorMsgs)
|
|||
while (*Ptr)
|
||||
{
|
||||
/* Find next string in text until comma or semicolon (leading and trailing spaces are removed) */
|
||||
Str_GetNextStringUntilComma (&Ptr,UsrIDNickOrEmail,1024);
|
||||
Str_GetNextStringUntilComma (&Ptr,UsrIDNickOrEmail,Cns_MAX_BYTES_EMAIL_ADDRESS);
|
||||
|
||||
/* Check if string is plain user's ID or nickname and get encrypted user's ID */
|
||||
if (UsrIDNickOrEmail[0])
|
||||
|
@ -6514,7 +6504,7 @@ void Usr_ListAllDataTchs (void)
|
|||
/*****************************************************************************/
|
||||
// Returns number of users found
|
||||
|
||||
unsigned Usr_ListUsrsFound (Rol_Role_t Role,const char *SearchQuery)
|
||||
unsigned Usr_ListUsrsFound (Rol_Role_t Role,const char SearchQuery[Sch_MAX_BYTES_SEARCH_QUERY])
|
||||
{
|
||||
extern const char *Txt_user[Usr_NUM_SEXS];
|
||||
extern const char *Txt_users[Usr_NUM_SEXS];
|
||||
|
@ -6834,7 +6824,7 @@ static void Usr_GetUsrListTypeFromForm (void)
|
|||
|
||||
static void Usr_GetMyUsrListTypeFromDB (void)
|
||||
{
|
||||
char Query[512];
|
||||
char Query[256];
|
||||
MYSQL_RES *mysql_res;
|
||||
MYSQL_ROW row;
|
||||
unsigned long NumRows;
|
||||
|
@ -6876,7 +6866,7 @@ static void Usr_GetMyUsrListTypeFromDB (void)
|
|||
|
||||
static void Usr_UpdateMyUsrListTypeInDB (void)
|
||||
{
|
||||
char Query[512];
|
||||
char Query[256];
|
||||
|
||||
/***** Update type of users listing *****/
|
||||
sprintf (Query,"UPDATE crs_usr SET UsrListType='%s'"
|
||||
|
@ -6932,7 +6922,7 @@ static void Usr_GetParamColsClassPhotoFromForm (void)
|
|||
|
||||
static void Usr_GetMyColsClassPhotoFromDB (void)
|
||||
{
|
||||
char Query[512];
|
||||
char Query[256];
|
||||
MYSQL_RES *mysql_res;
|
||||
MYSQL_ROW row;
|
||||
unsigned long NumRows;
|
||||
|
@ -7037,7 +7027,7 @@ static bool Usr_GetParamListWithPhotosFromForm (void)
|
|||
|
||||
void Usr_GetMyPrefAboutListWithPhotosFromDB (void)
|
||||
{
|
||||
char Query[512];
|
||||
char Query[256];
|
||||
MYSQL_RES *mysql_res;
|
||||
MYSQL_ROW row;
|
||||
unsigned long NumRows;
|
||||
|
@ -8097,14 +8087,13 @@ void Usr_ConstructPathUsr (long UsrCod,char *PathUsr)
|
|||
|
||||
bool Usr_ChkIfUsrCodExists (long UsrCod)
|
||||
{
|
||||
char Query[256];
|
||||
char Query[128];
|
||||
|
||||
if (UsrCod <= 0) // Wrong user's code
|
||||
return false;
|
||||
|
||||
/***** Get if a user exists in database *****/
|
||||
sprintf (Query,"SELECT COUNT(*) FROM usr_data"
|
||||
" WHERE UsrCod='%ld'",
|
||||
sprintf (Query,"SELECT COUNT(*) FROM usr_data WHERE UsrCod='%ld'",
|
||||
UsrCod);
|
||||
return (DB_QueryCOUNT (Query,"can not check if a user exists") != 0);
|
||||
}
|
||||
|
@ -8181,8 +8170,7 @@ static unsigned Usr_GetNumUsrsNotBelongingToAnyCrs (void)
|
|||
char Query[256];
|
||||
|
||||
/***** Get number of users who are in table of users but not in table courses-users *****/
|
||||
sprintf (Query,"SELECT COUNT(*) FROM usr_data"
|
||||
" WHERE UsrCod NOT IN"
|
||||
sprintf (Query,"SELECT COUNT(*) FROM usr_data WHERE UsrCod NOT IN"
|
||||
" (SELECT DISTINCT(UsrCod) FROM crs_usr)");
|
||||
return (unsigned) DB_QueryCOUNT (Query,"can not get number of users who do not belong to any course");
|
||||
}
|
||||
|
|
|
@ -282,7 +282,7 @@ unsigned long Usr_GetCtrsFromUsr (long UsrCod,long InsCod,MYSQL_RES **mysql_res)
|
|||
unsigned long Usr_GetDegsFromUsr (long UsrCod,long CtrCod,MYSQL_RES **mysql_res);
|
||||
unsigned long Usr_GetCrssFromUsr (long UsrCod,long DegCod,MYSQL_RES **mysql_res);
|
||||
|
||||
bool Usr_ChkIfEncryptedUsrCodExists (const char *EncryptedUsrCod);
|
||||
bool Usr_ChkIfEncryptedUsrCodExists (const char EncryptedUsrCod[Cry_BYTES_ENCRYPTED_STR_SHA256_BASE64]);
|
||||
|
||||
void Usr_WriteLandingPage (void);
|
||||
void Usr_WriteFormLogout (void);
|
||||
|
@ -336,7 +336,7 @@ unsigned Usr_GetNumberOfTeachersInCentre (long CtrCod);
|
|||
void Usr_GetListUsrs (Rol_Role_t Role,Sco_Scope_t Scope);
|
||||
|
||||
void Usr_SearchListUsrs (Rol_Role_t Role);
|
||||
void Usr_CreateTmpTableAndSearchCandidateUsrs (const char *UsrQuery);
|
||||
void Usr_CreateTmpTableAndSearchCandidateUsrs (const char SearchQuery[Sch_MAX_BYTES_SEARCH_QUERY + 1]);
|
||||
void Usr_DropTmpTableWithCandidateUsrs (void);
|
||||
|
||||
void Usr_GetUnorderedStdsCodesInDeg (long DegCod);
|
||||
|
@ -370,7 +370,7 @@ void Usr_ListAllDataGsts (void);
|
|||
void Usr_ListAllDataStds (void);
|
||||
void Usr_ListUsrsForSelection (Rol_Role_t Role);
|
||||
void Usr_ListAllDataTchs (void);
|
||||
unsigned Usr_ListUsrsFound (Rol_Role_t Role,const char *SearchQuery);
|
||||
unsigned Usr_ListUsrsFound (Rol_Role_t Role,const char SearchQuery[Sch_MAX_BYTES_SEARCH_QUERY]);
|
||||
void Usr_ListDataAdms (void);
|
||||
|
||||
void Usr_PutParamsPrefsAboutUsrList (void);
|
||||
|
|
Loading…
Reference in New Issue