Version19.77

This commit is contained in:
Antonio Cañas Vargas 2019-11-25 13:29:56 +01:00
parent be79861298
commit 463b9fba4c
9 changed files with 481 additions and 485 deletions

1
icon/poll.svg Normal file
View File

@ -0,0 +1 @@
<svg aria-hidden="true" data-prefix="fas" data-icon="poll" class="svg-inline--fa fa-poll fa-w-14" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><path fill="#404040" d="M400 32H48C21.5 32 0 53.5 0 80v352c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48V80c0-26.5-21.5-48-48-48zM160 368c0 8.84-7.16 16-16 16h-32c-8.84 0-16-7.16-16-16V240c0-8.84 7.16-16 16-16h32c8.84 0 16 7.16 16 16v128zm96 0c0 8.84-7.16 16-16 16h-32c-8.84 0-16-7.16-16-16V144c0-8.84 7.16-16 16-16h32c8.84 0 16 7.16 16 16v224zm96 0c0 8.84-7.16 16-16 16h-32c-8.84 0-16-7.16-16-16v-64c0-8.84 7.16-16 16-16h32c8.84 0 16 7.16 16 16v64z"></path></svg>

After

Width:  |  Height:  |  Size: 631 B

View File

@ -1081,86 +1081,7 @@ CREATE TABLE IF NOT EXISTS sessions (
SearchString VARCHAR(255) NOT NULL DEFAULT '',
SideCols TINYINT NOT NULL DEFAULT 3,
UNIQUE INDEX(SessionId),
INDEX(UsrCod));
--
-- Table social_comments: stores the content of comments to social notes
--
CREATE TABLE IF NOT EXISTS social_comments (
PubCod BIGINT NOT NULL,
Txt LONGTEXT NOT NULL,
MedCod INT NOT NULL DEFAULT -1,
UNIQUE INDEX(PubCod),
FULLTEXT(Txt),
INDEX(MedCod)) ENGINE = MYISAM;
--
-- Table social_comments_fav: stores users who marked social comments as favourite
--
CREATE TABLE IF NOT EXISTS social_comments_fav (
FavCod BIGINT AUTO_INCREMENT,
PubCod BIGINT NOT NULL,
UsrCod INT NOT NULL,
TimeFav DATETIME NOT NULL,
UNIQUE INDEX(FavCod),
UNIQUE INDEX(PubCod,UsrCod),
INDEX(UsrCod));
--
-- Table social_notes: stores social notes
--
CREATE TABLE IF NOT EXISTS social_notes (
NotCod BIGINT NOT NULL AUTO_INCREMENT,
NoteType TINYINT NOT NULL,
Cod INT NOT NULL DEFAULT -1,
UsrCod INT NOT NULL,
HieCod INT NOT NULL DEFAULT -1,
Unavailable ENUM('N','Y') NOT NULL DEFAULT 'N',
TimeNote DATETIME NOT NULL,
UNIQUE INDEX(NotCod),
INDEX(NoteType,Cod),
INDEX(UsrCod),
INDEX(TimeNote));
--
-- Table social_notes_fav: stores users who marked social notes as favourite
--
CREATE TABLE IF NOT EXISTS social_notes_fav (
FavCod BIGINT AUTO_INCREMENT,
NotCod BIGINT NOT NULL,
UsrCod INT NOT NULL,
TimeFav DATETIME NOT NULL,
UNIQUE INDEX(FavCod),
UNIQUE INDEX(NotCod,UsrCod),
INDEX(UsrCod));
--
-- Table social_posts: stores social posts (public comments written by users)
--
CREATE TABLE IF NOT EXISTS social_posts (
PstCod INT NOT NULL AUTO_INCREMENT,
Content LONGTEXT NOT NULL,
MedCod INT NOT NULL DEFAULT -1,
UNIQUE INDEX(PstCod),
FULLTEXT(Content),
INDEX(MedCod)) ENGINE = MYISAM;
--
-- Table social_pubs: stores social publishings (original notes, sharede notes or comments)
--
CREATE TABLE IF NOT EXISTS social_pubs (
PubCod BIGINT NOT NULL AUTO_INCREMENT,
NotCod BIGINT NOT NULL,
PublisherCod INT NOT NULL,
PubType TINYINT NOT NULL,
TimePublish DATETIME NOT NULL,
UNIQUE INDEX(PubCod),
INDEX(NotCod,PublisherCod,PubType),
INDEX(PublisherCod),
INDEX(PubType),
INDEX(TimePublish));
--
-- Table social_timelines: stores notes published in social timeline for every active session
--
CREATE TABLE IF NOT EXISTS social_timelines (
SessionId CHAR(43) NOT NULL,
NotCod BIGINT NOT NULL,
UNIQUE INDEX(SessionId,NotCod));
--
INDEX(UsrCod));--
-- Table sta_degrees: stores statistics about degrees
--
CREATE TABLE IF NOT EXISTS sta_degrees (
@ -1254,6 +1175,85 @@ CREATE TABLE IF NOT EXISTS timetable_tut (
Duration TIME NOT NULL,
Info VARCHAR(2047) NOT NULL DEFAULT '',
INDEX(UsrCod));
--
-- Table tl_comments: stores the content of comments to timeline notes
--
CREATE TABLE IF NOT EXISTS tl_comments (
PubCod BIGINT NOT NULL,
Txt LONGTEXT NOT NULL,
MedCod INT NOT NULL DEFAULT -1,
UNIQUE INDEX(PubCod),
FULLTEXT(Txt),
INDEX(MedCod)) ENGINE = MYISAM;
--
-- Table tl_comments_fav: stores users who marked timeline comments as favourite
--
CREATE TABLE IF NOT EXISTS tl_comments_fav (
FavCod BIGINT AUTO_INCREMENT,
PubCod BIGINT NOT NULL,
UsrCod INT NOT NULL,
TimeFav DATETIME NOT NULL,
UNIQUE INDEX(FavCod),
UNIQUE INDEX(PubCod,UsrCod),
INDEX(UsrCod));
--
-- Table tl_notes: stores timeline notes
--
CREATE TABLE IF NOT EXISTS tl_notes (
NotCod BIGINT NOT NULL AUTO_INCREMENT,
NoteType TINYINT NOT NULL,
Cod INT NOT NULL DEFAULT -1,
UsrCod INT NOT NULL,
HieCod INT NOT NULL DEFAULT -1,
Unavailable ENUM('N','Y') NOT NULL DEFAULT 'N',
TimeNote DATETIME NOT NULL,
UNIQUE INDEX(NotCod),
INDEX(NoteType,Cod),
INDEX(UsrCod),
INDEX(TimeNote));
--
-- Table tl_notes_fav: stores users who marked timeline notes as favourite
--
CREATE TABLE IF NOT EXISTS tl_notes_fav (
FavCod BIGINT AUTO_INCREMENT,
NotCod BIGINT NOT NULL,
UsrCod INT NOT NULL,
TimeFav DATETIME NOT NULL,
UNIQUE INDEX(FavCod),
UNIQUE INDEX(NotCod,UsrCod),
INDEX(UsrCod));
--
-- Table tl_posts: stores timeline posts (public comments written by users)
--
CREATE TABLE IF NOT EXISTS tl_posts (
PstCod INT NOT NULL AUTO_INCREMENT,
Content LONGTEXT NOT NULL,
MedCod INT NOT NULL DEFAULT -1,
UNIQUE INDEX(PstCod),
FULLTEXT(Content),
INDEX(MedCod)) ENGINE = MYISAM;
--
-- Table tl_pubs: stores timeline publications (original notes, sharede notes or comments)
--
CREATE TABLE IF NOT EXISTS tl_pubs (
PubCod BIGINT NOT NULL AUTO_INCREMENT,
NotCod BIGINT NOT NULL,
PublisherCod INT NOT NULL,
PubType TINYINT NOT NULL,
TimePublish DATETIME NOT NULL,
UNIQUE INDEX(PubCod),
INDEX(NotCod,PublisherCod,PubType),
INDEX(PublisherCod),
INDEX(PubType),
INDEX(TimePublish));
--
-- Table tl_timelines: stores notes published in timeline for every active session
--
CREATE TABLE IF NOT EXISTS tl_timelines (
SessionId CHAR(43) NOT NULL,
NotCod BIGINT NOT NULL,
UNIQUE INDEX(SessionId,NotCod));
--
-- Table tst_answers: stores the answers to the questions in tests
--

View File

@ -490,7 +490,7 @@ enscript -2 --landscape --color --file-align=2 --highlight --line-numbers -o - *
En OpenSWAD:
ps2pdf source.ps destination.pdf
*/
#define Log_PLATFORM_VERSION "SWAD 19.76.8 (2019-11-25)"
#define Log_PLATFORM_VERSION "SWAD 19.77 (2019-11-25)"
#define CSS_FILE "swad19.74.3.css"
#define JS_FILE "swad19.70.js"
/*
@ -498,6 +498,18 @@ ps2pdf source.ps destination.pdf
// TODO: Impedir la creación y edición de proyectos si no son editables.
// TODO: En cada juego, poder listar los resultados en una tabla como la de resultados globales
Version 19.77: Nov 25, 2019 Changes in database related to timeline. (246877 lines)
7 changes necessary in database:
RENAME TABLE social_comments TO tl_comments;
RENAME TABLE social_comments_fav TO tl_comments_fav;
RENAME TABLE social_notes TO tl_notes;
RENAME TABLE social_notes_fav TO tl_notes_fav;
RENAME TABLE social_posts TO tl_posts;
RENAME TABLE social_pubs TO tl_pubs;
RENAME TABLE social_timelines TO tl_timelines;
Copy the following icon to icon public directory:
sudo cp -a icon/poll.svg /var/www/html/swad/icon/
Version 19.76.8: Nov 25, 2019 Changes in database related to timeline. (246885 lines)
4 changes necessary in database:
ALTER TABLE social_comments CHANGE COLUMN Content Txt LONGTEXT NOT NULL,DROP FULLTEXT Content,ADD FULLTEXT (Txt);
@ -696,7 +708,7 @@ INSERT INTO actions (ActCod,Language,Obsolete,Txt) VALUES ('1803','es','N','Conf
Version 19.42.6: Oct 24, 2019 Code refactoring in CSS.
Changes icon to upload file in timeline.
Code refactoring in media. (246034 lines)
Copy the following 4 icons to icon public directory:
Copy the following icon to icon public directory:
sudo cp -a icon/photo-video.svg /var/www/html/swad/icon/
Version 19.42.5: Oct 24, 2019 Code refactoring in contextual menus. (246011 lines)

View File

@ -2307,161 +2307,6 @@ mysql> DESCRIBE sessions;
"UNIQUE INDEX(SessionId),"
"INDEX(UsrCod))");
/***** Table social_comments *****/
/*
mysql> DESCRIBE social_comments;
+--------+------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+--------+------------+------+-----+---------+-------+
| PubCod | bigint(20) | NO | PRI | NULL | |
| Txt | longtext | NO | MUL | NULL | |
| MedCod | int(11) | NO | MUL | -1 | |
+--------+------------+------+-----+---------+-------+
3 rows in set (0.00 sec)
*/
DB_CreateTable ("CREATE TABLE IF NOT EXISTS social_comments ("
"PubCod BIGINT NOT NULL,"
"Content Txt NOT NULL,"
"MedCod INT NOT NULL DEFAULT -1,"
"UNIQUE INDEX(PubCod),"
"FULLTEXT(Txt),"
"INDEX(MedCod)) ENGINE = MYISAM;");
/***** Table social_comments_fav *****/
/*
mysql> DESCRIBE social_comments_fav;
+---------+------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+---------+------------+------+-----+---------+----------------+
| FavCod | bigint(20) | NO | PRI | NULL | auto_increment |
| PubCod | bigint(20) | NO | MUL | NULL | |
| UsrCod | int(11) | NO | MUL | NULL | |
| TimeFav | datetime | NO | | NULL | |
+---------+------------+------+-----+---------+----------------+
4 rows in set (0.00 sec)
*/
DB_CreateTable ("CREATE TABLE IF NOT EXISTS social_comments_fav ("
"FavCod BIGINT AUTO_INCREMENT,"
"PubCod BIGINT NOT NULL,"
"UsrCod INT NOT NULL,"
"TimeFav DATETIME NOT NULL," // Not used. For future use
"UNIQUE INDEX(FavCod),"
"UNIQUE INDEX(PubCod,UsrCod),"
"INDEX(UsrCod))");
/***** Table social_notes *****/
/*
mysql> DESCRIBE social_notes;
+-------------+---------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+-------------+---------------+------+-----+---------+----------------+
| NotCod | bigint(20) | NO | PRI | NULL | auto_increment |
| NoteType | tinyint(4) | NO | MUL | NULL | |
| Cod | int(11) | NO | | -1 | |
| UsrCod | int(11) | NO | MUL | NULL | |
| HieCod | int(11) | NO | | -1 | |
| Unavailable | enum('N','Y') | NO | | N | |
| TimeNote | datetime | NO | MUL | NULL | |
+-------------+---------------+------+-----+---------+----------------+
7 rows in set (0.00 sec)
*/
DB_CreateTable ("CREATE TABLE IF NOT EXISTS social_notes ("
"NotCod BIGINT NOT NULL AUTO_INCREMENT,"
"NoteType TINYINT NOT NULL,"
"Cod INT NOT NULL DEFAULT -1,"
"UsrCod INT NOT NULL,"
"HieCod INT NOT NULL DEFAULT -1,"
"Unavailable ENUM('N','Y') NOT NULL DEFAULT 'N',"
"TimeNote DATETIME NOT NULL,"
"UNIQUE INDEX(NotCod),"
"INDEX(NoteType,Cod),"
"INDEX(UsrCod),"
"INDEX(TimeNote))");
/***** Table social_notes_fav *****/
/*
mysql> DESCRIBE social_notes_fav;
+---------+------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+---------+------------+------+-----+---------+----------------+
| FavCod | bigint(20) | NO | PRI | NULL | auto_increment |
| NotCod | bigint(20) | NO | MUL | NULL | |
| UsrCod | int(11) | NO | MUL | NULL | |
| TimeFav | datetime | NO | | NULL | |
+---------+------------+------+-----+---------+----------------+
4 rows in set (0.00 sec)
*/
DB_CreateTable ("CREATE TABLE IF NOT EXISTS social_notes_fav ("
"FavCod BIGINT AUTO_INCREMENT,"
"NotCod BIGINT NOT NULL,"
"UsrCod INT NOT NULL,"
"TimeFav DATETIME NOT NULL," // Not used. For future use
"UNIQUE INDEX(FavCod),"
"UNIQUE INDEX(NotCod,UsrCod),"
"INDEX(UsrCod))");
/***** Table social_posts *****/
/*
mysql> DESCRIBE social_posts;
+--------+----------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+--------+----------+------+-----+---------+----------------+
| PstCod | int(11) | NO | PRI | NULL | auto_increment |
| Txt | longtext | NO | MUL | NULL | |
| MedCod | int(11) | NO | MUL | -1 | |
+--------+----------+------+-----+---------+----------------+
3 rows in set (0.00 sec)
*/
DB_CreateTable ("CREATE TABLE IF NOT EXISTS social_posts ("
"PubCod INT NOT NULL AUTO_INCREMENT,"
"Txt LONGTEXT NOT NULL,"
"MedCod INT NOT NULL DEFAULT -1,"
"UNIQUE INDEX(PubCod),"
"FULLTEXT(Txt),"
"INDEX(MedCod)) ENGINE = MYISAM;");
/***** Table social_pubs *****/
/*
mysql> DESCRIBE social_pubs;
+--------------+------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+--------------+------------+------+-----+---------+----------------+
| PubCod | bigint(20) | NO | PRI | NULL | auto_increment |
| NotCod | bigint(20) | NO | MUL | NULL | |
| PublisherCod | int(11) | NO | MUL | NULL | |
| PubType | tinyint(4) | NO | MUL | NULL | |
| TimePublish | datetime | NO | MUL | NULL | |
+--------------+------------+------+-----+---------+----------------+
5 rows in set (0.00 sec)
*/
DB_CreateTable ("CREATE TABLE IF NOT EXISTS social_pubs ("
"PubCod BIGINT NOT NULL AUTO_INCREMENT,"
"NotCod BIGINT NOT NULL,"
"PublisherCod INT NOT NULL,"
"PubType TINYINT NOT NULL,"
"TimePublish DATETIME NOT NULL,"
"UNIQUE INDEX(PubCod),"
"INDEX(NotCod,PublisherCod,PubType),"
"INDEX(PublisherCod),"
"INDEX(PubType),"
"INDEX(TimePublish))");
/***** Table social_timelines *****/
/*
mysql> DESCRIBE social_timelines;
+-----------+------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+-----------+------------+------+-----+---------+-------+
| SessionId | char(43) | NO | PRI | NULL | |
| NotCod | bigint(20) | NO | PRI | NULL | |
+-----------+------------+------+-----+---------+-------+
2 rows in set (0.00 sec)
*/
DB_CreateTable ("CREATE TABLE IF NOT EXISTS social_timelines ("
"SessionId CHAR(43) NOT NULL," // Cns_BYTES_SESSION_ID
"NotCod BIGINT NOT NULL,"
"UNIQUE INDEX(SessionId,NotCod))");
/***** Table sta_degrees *****/
/*
mysql> DESCRIBE sta_degrees;
@ -2668,6 +2513,161 @@ mysql> DESCRIBE timetable_tut;
"Info VARCHAR(2047) NOT NULL DEFAULT ''," // TT_MAX_BYTES_INFO
"INDEX(UsrCod))");
/***** Table tl_comments *****/
/*
mysql> DESCRIBE tl_comments;
+--------+------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+--------+------------+------+-----+---------+-------+
| PubCod | bigint(20) | NO | PRI | NULL | |
| Txt | longtext | NO | MUL | NULL | |
| MedCod | int(11) | NO | MUL | -1 | |
+--------+------------+------+-----+---------+-------+
3 rows in set (0.00 sec)
*/
DB_CreateTable ("CREATE TABLE IF NOT EXISTS tl_comments ("
"PubCod BIGINT NOT NULL,"
"Content Txt NOT NULL,"
"MedCod INT NOT NULL DEFAULT -1,"
"UNIQUE INDEX(PubCod),"
"FULLTEXT(Txt),"
"INDEX(MedCod)) ENGINE = MYISAM;");
/***** Table tl_comments_fav *****/
/*
mysql> DESCRIBE tl_comments_fav;
+---------+------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+---------+------------+------+-----+---------+----------------+
| FavCod | bigint(20) | NO | PRI | NULL | auto_increment |
| PubCod | bigint(20) | NO | MUL | NULL | |
| UsrCod | int(11) | NO | MUL | NULL | |
| TimeFav | datetime | NO | | NULL | |
+---------+------------+------+-----+---------+----------------+
4 rows in set (0.00 sec)
*/
DB_CreateTable ("CREATE TABLE IF NOT EXISTS tl_comments_fav ("
"FavCod BIGINT AUTO_INCREMENT,"
"PubCod BIGINT NOT NULL,"
"UsrCod INT NOT NULL,"
"TimeFav DATETIME NOT NULL," // Not used. For future use
"UNIQUE INDEX(FavCod),"
"UNIQUE INDEX(PubCod,UsrCod),"
"INDEX(UsrCod))");
/***** Table tl_notes *****/
/*
mysql> DESCRIBE tl_notes;
+-------------+---------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+-------------+---------------+------+-----+---------+----------------+
| NotCod | bigint(20) | NO | PRI | NULL | auto_increment |
| NoteType | tinyint(4) | NO | MUL | NULL | |
| Cod | int(11) | NO | | -1 | |
| UsrCod | int(11) | NO | MUL | NULL | |
| HieCod | int(11) | NO | | -1 | |
| Unavailable | enum('N','Y') | NO | | N | |
| TimeNote | datetime | NO | MUL | NULL | |
+-------------+---------------+------+-----+---------+----------------+
7 rows in set (0.00 sec)
*/
DB_CreateTable ("CREATE TABLE IF NOT EXISTS tl_notes ("
"NotCod BIGINT NOT NULL AUTO_INCREMENT,"
"NoteType TINYINT NOT NULL,"
"Cod INT NOT NULL DEFAULT -1,"
"UsrCod INT NOT NULL,"
"HieCod INT NOT NULL DEFAULT -1,"
"Unavailable ENUM('N','Y') NOT NULL DEFAULT 'N',"
"TimeNote DATETIME NOT NULL,"
"UNIQUE INDEX(NotCod),"
"INDEX(NoteType,Cod),"
"INDEX(UsrCod),"
"INDEX(TimeNote))");
/***** Table tl_notes_fav *****/
/*
mysql> DESCRIBE tl_notes_fav;
+---------+------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+---------+------------+------+-----+---------+----------------+
| FavCod | bigint(20) | NO | PRI | NULL | auto_increment |
| NotCod | bigint(20) | NO | MUL | NULL | |
| UsrCod | int(11) | NO | MUL | NULL | |
| TimeFav | datetime | NO | | NULL | |
+---------+------------+------+-----+---------+----------------+
4 rows in set (0.00 sec)
*/
DB_CreateTable ("CREATE TABLE IF NOT EXISTS tl_notes_fav ("
"FavCod BIGINT AUTO_INCREMENT,"
"NotCod BIGINT NOT NULL,"
"UsrCod INT NOT NULL,"
"TimeFav DATETIME NOT NULL," // Not used. For future use
"UNIQUE INDEX(FavCod),"
"UNIQUE INDEX(NotCod,UsrCod),"
"INDEX(UsrCod))");
/***** Table tl_posts *****/
/*
mysql> DESCRIBE tl_posts;
+--------+----------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+--------+----------+------+-----+---------+----------------+
| PstCod | int(11) | NO | PRI | NULL | auto_increment |
| Txt | longtext | NO | MUL | NULL | |
| MedCod | int(11) | NO | MUL | -1 | |
+--------+----------+------+-----+---------+----------------+
3 rows in set (0.00 sec)
*/
DB_CreateTable ("CREATE TABLE IF NOT EXISTS tl_posts ("
"PubCod INT NOT NULL AUTO_INCREMENT,"
"Txt LONGTEXT NOT NULL,"
"MedCod INT NOT NULL DEFAULT -1,"
"UNIQUE INDEX(PubCod),"
"FULLTEXT(Txt),"
"INDEX(MedCod)) ENGINE = MYISAM;");
/***** Table tl_pubs *****/
/*
mysql> DESCRIBE tl_pubs;
+--------------+------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+--------------+------------+------+-----+---------+----------------+
| PubCod | bigint(20) | NO | PRI | NULL | auto_increment |
| NotCod | bigint(20) | NO | MUL | NULL | |
| PublisherCod | int(11) | NO | MUL | NULL | |
| PubType | tinyint(4) | NO | MUL | NULL | |
| TimePublish | datetime | NO | MUL | NULL | |
+--------------+------------+------+-----+---------+----------------+
5 rows in set (0.00 sec)
*/
DB_CreateTable ("CREATE TABLE IF NOT EXISTS tl_pubs ("
"PubCod BIGINT NOT NULL AUTO_INCREMENT,"
"NotCod BIGINT NOT NULL,"
"PublisherCod INT NOT NULL,"
"PubType TINYINT NOT NULL,"
"TimePublish DATETIME NOT NULL,"
"UNIQUE INDEX(PubCod),"
"INDEX(NotCod,PublisherCod,PubType),"
"INDEX(PublisherCod),"
"INDEX(PubType),"
"INDEX(TimePublish))");
/***** Table tl_timelines *****/
/*
mysql> DESCRIBE tl_timelines;
+-----------+------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+-----------+------------+------+-----+---------+-------+
| SessionId | char(43) | NO | PRI | NULL | |
| NotCod | bigint(20) | NO | PRI | NULL | |
+-----------+------------+------+-----+---------+-------+
2 rows in set (0.00 sec)
*/
DB_CreateTable ("CREATE TABLE IF NOT EXISTS tl_timelines ("
"SessionId CHAR(43) NOT NULL," // Cns_BYTES_SESSION_ID
"NotCod BIGINT NOT NULL,"
"UNIQUE INDEX(SessionId,NotCod))");
/***** Table tst_answers *****/
/*
mysql> DESCRIBE tst_answers;

View File

@ -150,7 +150,7 @@ static void Fig_GetAndShowProjectsStats (void);
static void Fig_GetAndShowTestsStats (void);
static void Fig_GetAndShowGamesStats (void);
static void Fig_GetAndShowSocialActivityStats (void);
static void Fig_GetAndShowTimelineActivityStats (void);
static void Fig_GetAndShowFollowStats (void);
static void Fig_GetAndShowForumStats (void);
@ -320,7 +320,7 @@ void Fig_ShowFigures (void)
Fig_GetAndShowTestsStats, // Fig_TESTS
Fig_GetAndShowGamesStats, // Fig_GAMES
Fig_GetAndShowSurveysStats, // Fig_SURVEYS
Fig_GetAndShowSocialActivityStats, // Fig_SOCIAL_ACTIVITY
Fig_GetAndShowTimelineActivityStats, // Fig_SOCIAL_ACTIVITY
Fig_GetAndShowFollowStats, // Fig_FOLLOW
Fig_GetAndShowForumStats, // Fig_FORUMS
Fig_GetAndShowNumUsrsPerNotifyEvent, // Fig_NOTIFY_EVENTS
@ -3248,15 +3248,15 @@ static void Fig_GetAndShowGamesStats (void)
}
/*****************************************************************************/
/******************** Get and show number of social notes ********************/
/******************* Get and show number of timeline notes *******************/
/*****************************************************************************/
static void Fig_GetAndShowSocialActivityStats (void)
static void Fig_GetAndShowTimelineActivityStats (void)
{
extern const char *Hlp_ANALYTICS_Figures_timeline;
extern const char *Txt_FIGURE_TYPES[Fig_NUM_FIGURES];
extern const char *Txt_Type;
extern const char *Txt_No_of_social_posts;
extern const char *Txt_No_of_posts;
extern const char *Txt_No_of_users;
extern const char *Txt_PERCENT_of_users;
extern const char *Txt_No_of_posts_BR_per_user;
@ -3265,7 +3265,7 @@ static void Fig_GetAndShowSocialActivityStats (void)
MYSQL_RES *mysql_res;
MYSQL_ROW row;
TL_NoteType_t NoteType;
unsigned long NumSocialNotes;
unsigned long NumNotes;
unsigned long NumRows;
unsigned NumUsrs;
unsigned NumUsrsTotal;
@ -3278,7 +3278,7 @@ static void Fig_GetAndShowSocialActivityStats (void)
HTM_TR_Begin (NULL);
HTM_TH (1,1,"LM",Txt_Type);
HTM_TH (1,1,"RM",Txt_No_of_social_posts);
HTM_TH (1,1,"RM",Txt_No_of_posts);
HTM_TH (1,1,"RM",Txt_No_of_users);
HTM_TH (1,1,"RM",Txt_PERCENT_of_users);
HTM_TH (1,1,"RM",Txt_No_of_posts_BR_per_user);
@ -3287,10 +3287,10 @@ static void Fig_GetAndShowSocialActivityStats (void)
/***** Get total number of users *****/
NumUsrsTotal = (Gbl.Scope.Current == Hie_SYS) ? Usr_GetTotalNumberOfUsersInPlatform () :
Usr_GetTotalNumberOfUsersInCourses (Gbl.Scope.Current,
1 << Rol_STD |
1 << Rol_NET |
1 << Rol_TCH);
Usr_GetTotalNumberOfUsersInCourses (Gbl.Scope.Current,
1 << Rol_STD |
1 << Rol_NET |
1 << Rol_TCH);
/***** Get total number of following/followers from database *****/
for (NoteType = (TL_NoteType_t) 0;
@ -3303,71 +3303,71 @@ static void Fig_GetAndShowSocialActivityStats (void)
NumRows = DB_QuerySELECT (&mysql_res,"can not get number of social notes",
"SELECT COUNT(*),"
"COUNT(DISTINCT UsrCod)"
" FROM social_notes WHERE NoteType=%u",
" FROM tl_notes WHERE NoteType=%u",
NoteType);
break;
case Hie_CTY:
NumRows = DB_QuerySELECT (&mysql_res,"can not get number of social notes",
"SELECT COUNT(DISTINCT social_notes.NotCod),"
"COUNT(DISTINCT social_notes.UsrCod)"
" FROM institutions,centres,degrees,courses,crs_usr,social_notes"
"SELECT COUNT(DISTINCT tl_notes.NotCod),"
"COUNT(DISTINCT tl_notes.UsrCod)"
" FROM institutions,centres,degrees,courses,crs_usr,tl_notes"
" WHERE institutions.CtyCod=%ld"
" AND institutions.InsCod=centres.InsCod"
" AND centres.CtrCod=degrees.CtrCod"
" AND degrees.DegCod=courses.DegCod"
" AND courses.CrsCod=crs_usr.CrsCod"
" AND crs_usr.UsrCod=social_notes.UsrCod"
" AND social_notes.NoteType=%u",
" AND crs_usr.UsrCod=tl_notes.UsrCod"
" AND tl_notes.NoteType=%u",
Gbl.Hierarchy.Cty.CtyCod,
(unsigned) NoteType);
break;
case Hie_INS:
NumRows = DB_QuerySELECT (&mysql_res,"can not get number of social notes",
"SELECT COUNT(DISTINCT social_notes.NotCod),"
"COUNT(DISTINCT social_notes.UsrCod)"
" FROM centres,degrees,courses,crs_usr,social_notes"
"SELECT COUNT(DISTINCT tl_notes.NotCod),"
"COUNT(DISTINCT tl_notes.UsrCod)"
" FROM centres,degrees,courses,crs_usr,tl_notes"
" WHERE centres.InsCod=%ld"
" AND centres.CtrCod=degrees.CtrCod"
" AND degrees.DegCod=courses.DegCod"
" AND courses.CrsCod=crs_usr.CrsCod"
" AND crs_usr.UsrCod=social_notes.UsrCod"
" AND social_notes.NoteType=%u",
" AND crs_usr.UsrCod=tl_notes.UsrCod"
" AND tl_notes.NoteType=%u",
Gbl.Hierarchy.Ins.InsCod,
(unsigned) NoteType);
break;
case Hie_CTR:
NumRows = DB_QuerySELECT (&mysql_res,"can not get number of social notes",
"SELECT COUNT(DISTINCT social_notes.NotCod),"
"COUNT(DISTINCT social_notes.UsrCod)"
" FROM degrees,courses,crs_usr,social_notes"
"SELECT COUNT(DISTINCT tl_notes.NotCod),"
"COUNT(DISTINCT tl_notes.UsrCod)"
" FROM degrees,courses,crs_usr,tl_notes"
" WHERE degrees.CtrCod=%ld"
" AND degrees.DegCod=courses.DegCod"
" AND courses.CrsCod=crs_usr.CrsCod"
" AND crs_usr.UsrCod=social_notes.UsrCod"
" AND social_notes.NoteType=%u",
" AND crs_usr.UsrCod=tl_notes.UsrCod"
" AND tl_notes.NoteType=%u",
Gbl.Hierarchy.Ctr.CtrCod,
(unsigned) NoteType);
break;
case Hie_DEG:
NumRows = DB_QuerySELECT (&mysql_res,"can not get number of social notes",
"SELECT COUNT(DISTINCT social_notes.NotCod),"
"COUNT(DISTINCT social_notes.UsrCod)"
" FROM courses,crs_usr,social_notes"
"SELECT COUNT(DISTINCT tl_notes.NotCod),"
"COUNT(DISTINCT tl_notes.UsrCod)"
" FROM courses,crs_usr,tl_notes"
" WHERE courses.DegCod=%ld"
" AND courses.CrsCod=crs_usr.CrsCod"
" AND crs_usr.UsrCod=social_notes.UsrCod"
" AND social_notes.NoteType=%u",
" AND crs_usr.UsrCod=tl_notes.UsrCod"
" AND tl_notes.NoteType=%u",
Gbl.Hierarchy.Deg.DegCod,
(unsigned) NoteType);
break;
case Hie_CRS:
NumRows = DB_QuerySELECT (&mysql_res,"can not get number of social notes",
"SELECT COUNT(DISTINCT social_notes.NotCod),"
"COUNT(DISTINCT social_notes.UsrCod)"
" FROM crs_usr,social_notes"
"SELECT COUNT(DISTINCT tl_notes.NotCod),"
"COUNT(DISTINCT tl_notes.UsrCod)"
" FROM crs_usr,tl_notes"
" WHERE crs_usr.CrsCod=%ld"
" AND crs_usr.UsrCod=social_notes.UsrCod"
" AND social_notes.NoteType=%u",
" AND crs_usr.UsrCod=tl_notes.UsrCod"
" AND tl_notes.NoteType=%u",
Gbl.Hierarchy.Crs.CrsCod,
(unsigned) NoteType);
break;
@ -3376,7 +3376,7 @@ static void Fig_GetAndShowSocialActivityStats (void)
NumRows = 0; // Initialized to avoid warning
break;
}
NumSocialNotes = 0;
NumNotes = 0;
NumUsrs = 0;
if (NumRows)
@ -3386,8 +3386,8 @@ static void Fig_GetAndShowSocialActivityStats (void)
/* Get number of social notes */
if (row[0])
if (sscanf (row[0],"%lu",&NumSocialNotes) != 1)
NumSocialNotes = 0;
if (sscanf (row[0],"%lu",&NumNotes) != 1)
NumNotes = 0;
/* Get number of users */
if (row[1])
@ -3406,7 +3406,7 @@ static void Fig_GetAndShowSocialActivityStats (void)
HTM_TD_End ();
HTM_TD_Begin ("class=\"DAT RM\"");
HTM_UnsignedLong (NumSocialNotes);
HTM_UnsignedLong (NumNotes);
HTM_TD_End ();
HTM_TD_Begin ("class=\"DAT RM\"");
@ -3420,7 +3420,7 @@ static void Fig_GetAndShowSocialActivityStats (void)
HTM_TD_End ();
HTM_TD_Begin ("class=\"DAT RM\"");
HTM_Double (NumUsrs ? (double) NumSocialNotes / (double) NumUsrs :
HTM_Double (NumUsrs ? (double) NumNotes / (double) NumUsrs :
0.0);
HTM_TD_End ();
@ -3434,61 +3434,61 @@ static void Fig_GetAndShowSocialActivityStats (void)
NumRows = DB_QuerySELECT (&mysql_res,"can not get number of social notes",
"SELECT COUNT(*),"
"COUNT(DISTINCT UsrCod)"
" FROM social_notes");
" FROM tl_notes");
break;
case Hie_CTY:
NumRows = DB_QuerySELECT (&mysql_res,"can not get number of social notes",
"SELECT COUNT(DISTINCT social_notes.NotCod),"
"COUNT(DISTINCT social_notes.UsrCod)"
" FROM institutions,centres,degrees,courses,crs_usr,social_notes"
"SELECT COUNT(DISTINCT tl_notes.NotCod),"
"COUNT(DISTINCT tl_notes.UsrCod)"
" FROM institutions,centres,degrees,courses,crs_usr,tl_notes"
" WHERE institutions.CtyCod=%ld"
" AND institutions.InsCod=centres.InsCod"
" AND centres.CtrCod=degrees.CtrCod"
" AND degrees.DegCod=courses.DegCod"
" AND courses.CrsCod=crs_usr.CrsCod"
" AND crs_usr.UsrCod=social_notes.UsrCod",
" AND crs_usr.UsrCod=tl_notes.UsrCod",
Gbl.Hierarchy.Cty.CtyCod);
break;
case Hie_INS:
NumRows = DB_QuerySELECT (&mysql_res,"can not get number of social notes",
"SELECT COUNT(DISTINCT social_notes.NotCod),"
"COUNT(DISTINCT social_notes.UsrCod)"
" FROM centres,degrees,courses,crs_usr,social_notes"
"SELECT COUNT(DISTINCT tl_notes.NotCod),"
"COUNT(DISTINCT tl_notes.UsrCod)"
" FROM centres,degrees,courses,crs_usr,tl_notes"
" WHERE centres.InsCod=%ld"
" AND centres.CtrCod=degrees.CtrCod"
" AND degrees.DegCod=courses.DegCod"
" AND courses.CrsCod=crs_usr.CrsCod"
" AND crs_usr.UsrCod=social_notes.UsrCod",
" AND crs_usr.UsrCod=tl_notes.UsrCod",
Gbl.Hierarchy.Ins.InsCod);
break;
case Hie_CTR:
NumRows = DB_QuerySELECT (&mysql_res,"can not get number of social notes",
"SELECT COUNT(DISTINCT social_notes.NotCod),"
"COUNT(DISTINCT social_notes.UsrCod)"
" FROM degrees,courses,crs_usr,social_notes"
"SELECT COUNT(DISTINCT tl_notes.NotCod),"
"COUNT(DISTINCT tl_notes.UsrCod)"
" FROM degrees,courses,crs_usr,tl_notes"
" WHERE degrees.CtrCod=%ld"
" AND degrees.DegCod=courses.DegCod"
" AND courses.CrsCod=crs_usr.CrsCod"
" AND crs_usr.UsrCod=social_notes.UsrCod",
" AND crs_usr.UsrCod=tl_notes.UsrCod",
Gbl.Hierarchy.Ctr.CtrCod);
break;
case Hie_DEG:
NumRows = DB_QuerySELECT (&mysql_res,"can not get number of social notes",
"SELECT COUNT(DISTINCT social_notes.NotCod),"
"COUNT(DISTINCT social_notes.UsrCod)"
" FROM courses,crs_usr,social_notes"
"SELECT COUNT(DISTINCT tl_notes.NotCod),"
"COUNT(DISTINCT tl_notes.UsrCod)"
" FROM courses,crs_usr,tl_notes"
" WHERE courses.DegCod=%ld"
" AND courses.CrsCod=crs_usr.CrsCod"
" AND crs_usr.UsrCod=social_notes.UsrCod",
" AND crs_usr.UsrCod=tl_notes.UsrCod",
Gbl.Hierarchy.Deg.DegCod);
break;
case Hie_CRS:
NumRows = DB_QuerySELECT (&mysql_res,"can not get number of social notes",
"SELECT COUNT(DISTINCT social_notes.NotCod),"
"COUNT(DISTINCT social_notes.UsrCod)"
" FROM crs_usr,social_notes"
"SELECT COUNT(DISTINCT tl_notes.NotCod),"
"COUNT(DISTINCT tl_notes.UsrCod)"
" FROM crs_usr,tl_notes"
" WHERE crs_usr.CrsCod=%ld"
" AND crs_usr.UsrCod=social_notes.UsrCod",
" AND crs_usr.UsrCod=tl_notes.UsrCod",
Gbl.Hierarchy.Crs.CrsCod);
break;
default:
@ -3496,7 +3496,7 @@ static void Fig_GetAndShowSocialActivityStats (void)
NumRows = 0; // Initialized to avoid warning
break;
}
NumSocialNotes = 0;
NumNotes = 0;
NumUsrs = 0;
if (NumRows)
@ -3506,8 +3506,8 @@ static void Fig_GetAndShowSocialActivityStats (void)
/* Get number of social notes */
if (row[0])
if (sscanf (row[0],"%lu",&NumSocialNotes) != 1)
NumSocialNotes = 0;
if (sscanf (row[0],"%lu",&NumNotes) != 1)
NumNotes = 0;
/* Get number of users */
if (row[1])
@ -3526,7 +3526,7 @@ static void Fig_GetAndShowSocialActivityStats (void)
HTM_TD_End ();
HTM_TD_Begin ("class=\"DAT_N_LINE_TOP RM\"");
HTM_UnsignedLong (NumSocialNotes);
HTM_UnsignedLong (NumNotes);
HTM_TD_End ();
HTM_TD_Begin ("class=\"DAT_N_LINE_TOP RM\"");
@ -3540,7 +3540,7 @@ static void Fig_GetAndShowSocialActivityStats (void)
HTM_TD_End ();
HTM_TD_Begin ("class=\"DAT_N_LINE_TOP RM\"");
HTM_Double (NumUsrs ? (double) NumSocialNotes / (double) NumUsrs :
HTM_Double (NumUsrs ? (double) NumNotes / (double) NumUsrs :
0.0);
HTM_TD_End ();

View File

@ -1288,9 +1288,9 @@ unsigned Ntf_StoreNotifyEventsToAllUsrs (Ntf_NotifyEvent_t NotifyEvent,long Cod)
// Cod is the code of the social publishing
NumRows = DB_QuerySELECT (&mysql_res,"can not get users"
" to be notified",
"SELECT DISTINCT(PublisherCod) FROM social_pubs"
" WHERE NotCod ="
" (SELECT NotCod FROM social_pubs"
"SELECT DISTINCT(PublisherCod) FROM tl_pubs"
" WHERE NotCod="
"(SELECT NotCod FROM tl_pubs"
" WHERE PubCod=%ld)"
" AND PublisherCod<>%ld",
Cod,Gbl.Usrs.Me.UsrDat.UsrCod);

View File

@ -25511,27 +25511,6 @@ const char *Txt_No_of_questions =
"N&ordm; de quest&otilde;es";
#endif
const char *Txt_No_of_social_posts =
#if L==1 // ca
"Nombre de missatges socials";
#elif L==2 // de
"Anzahl der sozialen Beitr&auml;ge";
#elif L==3 // en
"No. of social posts";
#elif L==4 // es
"N&ordm; de mensajes sociales";
#elif L==5 // fr
"Nombre de messages sociaux";
#elif L==6 // gn
"N&ordm; de mensajes sociales"; // Okoteve traducción
#elif L==7 // it
"Numero di post sociali";
#elif L==8 // pl
"Liczba post spo&lstrok;ecznej";
#elif L==9 // pt
"N&ordm; de post sociais";
#endif
const char *Txt_No_of_threads =
#if L==1 // ca
"N&ordm; de discusiones"; // Necessita traduccio

View File

@ -128,7 +128,7 @@ struct TL_Note
long HieCod; // Hierarchy code (institution/centre/degree/course)
long Cod; // Code of file, forum post, notice, timeline post...
bool Unavailable; // File, forum post, notice,... unavailable (removed)
time_t DateTimeUTC; // Date-time of publishing in UTC time
time_t DateTimeUTC; // Date-time of publication in UTC time
unsigned NumShared; // Number of times (users) this note has been shared
unsigned NumFavs; // Number of times (users) this note has been favourited
};
@ -157,7 +157,7 @@ struct TL_Comment
long PubCod;
long UsrCod; // Publisher
long NotCod; // Note code to which this comment belongs
time_t DateTimeUTC; // Date-time of publishing in UTC time
time_t DateTimeUTC; // Date-time of publication in UTC time
unsigned NumFavs; // Number of times (users) this comment has been favourited
struct PostContent Content;
};
@ -430,7 +430,7 @@ void TL_ShowTimelineGbl2 (void)
if (SocNot.NotCod > 0)
{
/* Get who did the action (publishing, commenting, faving, sharing, mentioning) */
/* Get who did the action (publication, commenting, faving, sharing, mentioning) */
Usr_GetParamOtherUsrCodEncrypted (&UsrDat);
/* Get what he/she did */
@ -614,19 +614,19 @@ static void TL_BuildQueryToGetTimeline (char **Query,
/***** Create temporary table with publication codes *****/
DB_Query ("can not create temporary table",
"CREATE TEMPORARY TABLE pub_codes "
"CREATE TEMPORARY TABLE tl_pub_codes "
"(PubCod BIGINT NOT NULL,UNIQUE INDEX(PubCod)) ENGINE=MEMORY");
/***** Create temporary table with notes got in this execution *****/
DB_Query ("can not create temporary table",
"CREATE TEMPORARY TABLE not_codes "
"CREATE TEMPORARY TABLE tl_not_codes "
"(NotCod BIGINT NOT NULL,INDEX(NotCod)) ENGINE=MEMORY");
/***** Create temporary table with notes already present in timeline for this session *****/
DB_Query ("can not create temporary table",
"CREATE TEMPORARY TABLE current_timeline "
"CREATE TEMPORARY TABLE tl_current_timeline "
"(NotCod BIGINT NOT NULL,INDEX(NotCod)) ENGINE=MEMORY"
" SELECT NotCod FROM social_timelines WHERE SessionId='%s'",
" SELECT NotCod FROM tl_timelines WHERE SessionId='%s'",
Gbl.Session.Id);
/***** Create temporary table and subquery with potential publishers *****/
@ -645,7 +645,7 @@ static void TL_BuildQueryToGetTimeline (char **Query,
break;
case Usr_WHO_FOLLOWED: // Show the timeline of the users I follow
DB_Query ("can not create temporary table",
"CREATE TEMPORARY TABLE publishers "
"CREATE TEMPORARY TABLE tl_publishers "
"(UsrCod INT NOT NULL,UNIQUE INDEX(UsrCod)) ENGINE=MEMORY"
" SELECT %ld AS UsrCod"
" UNION"
@ -654,7 +654,8 @@ static void TL_BuildQueryToGetTimeline (char **Query,
Gbl.Usrs.Me.UsrDat.UsrCod,
Gbl.Usrs.Me.UsrDat.UsrCod);
sprintf (SubQueryPublishers,"social_pubs.PublisherCod=publishers.UsrCod AND ");
sprintf (SubQueryPublishers,
"tl_pubs.PublisherCod=tl_publishers.UsrCod AND ");
break;
case Usr_WHO_ALL: // Show the timeline of all users
SubQueryPublishers[0] = '\0';
@ -676,13 +677,13 @@ static void TL_BuildQueryToGetTimeline (char **Query,
case TL_GET_RECENT_TIMELINE:
Str_Copy (SubQueryAlreadyExists,
" NotCod NOT IN"
" (SELECT NotCod FROM not_codes)",
" (SELECT NotCod FROM tl_not_codes)",
TL_MAX_BYTES_SUBQUERY_ALREADY_EXISTS);
break;
case TL_GET_ONLY_OLD_PUBS:
Str_Copy (SubQueryAlreadyExists,
" NotCod NOT IN"
" (SELECT NotCod FROM current_timeline)",
" (SELECT NotCod FROM tl_current_timeline)",
TL_MAX_BYTES_SUBQUERY_ALREADY_EXISTS);
break;
}
@ -693,14 +694,14 @@ static void TL_BuildQueryToGetTimeline (char **Query,
case TL_GET_ONLY_NEW_PUBS:
case TL_GET_RECENT_TIMELINE:
Str_Copy (SubQueryAlreadyExists,
" social_pubs.NotCod NOT IN"
" (SELECT NotCod FROM not_codes)",
" tl_pubs.NotCod NOT IN"
" (SELECT NotCod FROM tl_not_codes)",
TL_MAX_BYTES_SUBQUERY_ALREADY_EXISTS);
break;
case TL_GET_ONLY_OLD_PUBS:
Str_Copy (SubQueryAlreadyExists,
" social_pubs.NotCod NOT IN"
" (SELECT NotCod FROM current_timeline)",
" tl_pubs.NotCod NOT IN"
" (SELECT NotCod FROM tl_current_timeline)",
TL_MAX_BYTES_SUBQUERY_ALREADY_EXISTS);
break;
}
@ -710,7 +711,7 @@ static void TL_BuildQueryToGetTimeline (char **Query,
/***** Get the publications in timeline *****/
/* Initialize range of pubs:
social_pubs
tl_pubs
_____
|_____|11
|_____|10
@ -756,7 +757,7 @@ static void TL_BuildQueryToGetTimeline (char **Query,
As an alternative, we tried to get the maximum PubCod,
i.e more recent publication (original, shared or commment),
of every set of publications corresponding to the same note:
"SELECT MAX(PubCod) AS NewestPubCod FROM social_pubs ...
"SELECT MAX(PubCod) AS NewestPubCod FROM tl_pubs ...
" GROUP BY NotCod ORDER BY NewestPubCod DESC LIMIT ..."
but this query is slow (several seconds) with a big table.
*/
@ -765,7 +766,7 @@ static void TL_BuildQueryToGetTimeline (char **Query,
NumPub < MaxPubsToGet[WhatToGetFromTimeline];
NumPub++)
{
/* Create subqueries with range of publications to get from social_pubs */
/* Create subqueries with range of publications to get from tl_pubs */
if (RangePubsToGet.Bottom > 0)
switch (TimelineUsrOrGbl)
{
@ -782,7 +783,7 @@ static void TL_BuildQueryToGetTimeline (char **Query,
RangePubsToGet.Bottom);
break;
case Usr_WHO_FOLLOWED:// Show the timeline of the users I follow
sprintf (SubQueryRangeBottom,"social_pubs.PubCod>%ld AND ",
sprintf (SubQueryRangeBottom,"tl_pubs.PubCod>%ld AND ",
RangePubsToGet.Bottom);
break;
default:
@ -810,7 +811,7 @@ static void TL_BuildQueryToGetTimeline (char **Query,
RangePubsToGet.Top);
break;
case Usr_WHO_FOLLOWED:// Show the timeline of the users I follow
sprintf (SubQueryRangeTop,"social_pubs.PubCod<%ld AND ",
sprintf (SubQueryRangeTop,"tl_pubs.PubCod<%ld AND ",
RangePubsToGet.Top);
break;
default:
@ -822,7 +823,7 @@ static void TL_BuildQueryToGetTimeline (char **Query,
else
SubQueryRangeTop[0] = '\0';
/* Select the most recent publication from social_pubs */
/* Select the most recent publication from tl_pubs */
NumPubs = 0; // Initialized to avoid warning
switch (TimelineUsrOrGbl)
{
@ -830,7 +831,7 @@ static void TL_BuildQueryToGetTimeline (char **Query,
NumPubs =
(unsigned) DB_QuerySELECT (&mysql_res,"can not get publication",
"SELECT PubCod,NotCod"
" FROM social_pubs"
" FROM tl_pubs"
" WHERE %s%s%s%s"
" ORDER BY PubCod DESC LIMIT 1",
SubQueryRangeBottom,SubQueryRangeTop,
@ -844,7 +845,7 @@ static void TL_BuildQueryToGetTimeline (char **Query,
NumPubs =
(unsigned) DB_QuerySELECT (&mysql_res,"can not get publication",
"SELECT PubCod,NotCod"
" FROM social_pubs"
" FROM tl_pubs"
" WHERE %s%s%s%s"
" ORDER BY PubCod DESC LIMIT 1",
SubQueryRangeBottom,SubQueryRangeTop,
@ -855,9 +856,9 @@ static void TL_BuildQueryToGetTimeline (char **Query,
NumPubs =
(unsigned) DB_QuerySELECT (&mysql_res,"can not get publication",
"SELECT PubCod,NotCod"
" FROM social_pubs,publishers"
" FROM tl_pubs,tl_publishers"
" WHERE %s%s%s%s"
" ORDER BY social_pubs.PubCod DESC LIMIT 1",
" ORDER BY tl_pubs.PubCod DESC LIMIT 1",
SubQueryRangeBottom,SubQueryRangeTop,
SubQueryPublishers,
SubQueryAlreadyExists);
@ -866,7 +867,7 @@ static void TL_BuildQueryToGetTimeline (char **Query,
NumPubs =
(unsigned) DB_QuerySELECT (&mysql_res,"can not get publication",
"SELECT PubCod,NotCod"
" FROM social_pubs"
" FROM tl_pubs"
" WHERE %s%s%s"
" ORDER BY PubCod DESC LIMIT 1",
SubQueryRangeBottom,SubQueryRangeTop,
@ -897,7 +898,7 @@ static void TL_BuildQueryToGetTimeline (char **Query,
if (PubCod > 0)
{
DB_QueryINSERT ("can not store publication code",
"INSERT INTO pub_codes SET PubCod=%ld",
"INSERT INTO tl_pub_codes SET PubCod=%ld",
PubCod);
RangePubsToGet.Top = PubCod; // Narrow the range for the next iteration
@ -906,10 +907,10 @@ static void TL_BuildQueryToGetTimeline (char **Query,
{
NotCod = Str_ConvertStrCodToLongCod (row[1]);
DB_QueryINSERT ("can not store note code",
"INSERT INTO not_codes SET NotCod=%ld",
"INSERT INTO tl_not_codes SET NotCod=%ld",
NotCod);
DB_QueryINSERT ("can not store note code",
"INSERT INTO current_timeline SET NotCod=%ld",
"INSERT INTO tl_current_timeline SET NotCod=%ld",
NotCod);
}
}
@ -932,10 +933,10 @@ static void TL_BuildQueryToGetTimeline (char **Query,
"PublisherCod," // row[2]
"PubType," // row[3]
"UNIX_TIMESTAMP(TimePublish)" // row[4]
" FROM social_pubs"
" FROM tl_pubs"
" WHERE PubCod IN "
"(SELECT PubCod"
" FROM pub_codes)"
" FROM tl_pub_codes)"
" ORDER BY PubCod DESC");
}
@ -981,7 +982,7 @@ static void TL_UpdateLastPubCodIntoSession (void)
DB_QueryUPDATE ("can not update last publication code into session",
"UPDATE sessions"
" SET LastPubCod="
"(SELECT IFNULL(MAX(PubCod),0) FROM social_pubs)"
"(SELECT IFNULL(MAX(PubCod),0) FROM tl_pubs)"
" WHERE SessionId='%s'",
Gbl.Session.Id);
}
@ -1005,8 +1006,11 @@ static void TL_UpdateFirstPubCodIntoSession (long FirstPubCod)
static void TL_DropTemporaryTablesUsedToQueryTimeline (void)
{
DB_Query ("can not remove temporary tables",
"DROP TEMPORARY TABLE IF EXISTS"
" pub_codes,not_codes,publishers,current_timeline");
"DROP TEMPORARY TABLE IF EXISTS "
"tl_pub_codes,"
"tl_not_codes,"
"tl_publishers,"
"tl_current_timeline");
}
/*****************************************************************************/
@ -1849,7 +1853,7 @@ static void TL_GetAndWritePost (long PstCod)
" of a post",
"SELECT Txt," // row[0]
"MedCod" // row[1]
" FROM social_posts"
" FROM tl_posts"
" WHERE PstCod=%ld",
PstCod);
@ -2126,7 +2130,7 @@ void TL_StoreAndPublishNote (TL_NoteType_t NoteType,long Cod,struct TL_Publicati
/***** Store note *****/
SocPub->NotCod =
DB_QueryINSERTandReturnCode ("can not create new note",
"INSERT INTO social_notes"
"INSERT INTO tl_notes"
" (NoteType,Cod,UsrCod,HieCod,Unavailable,TimeNote)"
" VALUES"
" (%u,%ld,%ld,%ld,'N',NOW())",
@ -2147,7 +2151,7 @@ void TL_MarkNoteAsUnavailableUsingNotCod (long NotCod)
{
/***** Mark the note as unavailable *****/
DB_QueryUPDATE ("can not mark note as unavailable",
"UPDATE social_notes SET Unavailable='Y'"
"UPDATE tl_notes SET Unavailable='Y'"
" WHERE NotCod=%ld",
NotCod);
}
@ -2156,7 +2160,7 @@ void TL_MarkNoteAsUnavailableUsingNoteTypeAndCod (TL_NoteType_t NoteType,long Co
{
/***** Mark the note as unavailable *****/
DB_QueryUPDATE ("can not mark note as unavailable",
"UPDATE social_notes SET Unavailable='Y'"
"UPDATE tl_notes SET Unavailable='Y'"
" WHERE NoteType=%u AND Cod=%ld",
(unsigned) NoteType,Cod);
}
@ -2276,7 +2280,7 @@ void TL_MarkNotesChildrenOfFolderAsUnavailable (const char *Path)
return;
}
DB_QueryUPDATE ("can not mark notes as unavailable",
"UPDATE social_notes SET Unavailable='Y'"
"UPDATE tl_notes SET Unavailable='Y'"
" WHERE NoteType=%u AND Cod IN"
" (SELECT FilCod FROM files"
" WHERE FileBrowser=%u AND Cod=%ld"
@ -2300,7 +2304,7 @@ static void TL_PublishNoteInTimeline (struct TL_Publication *SocPub)
/***** Publish note in timeline *****/
SocPub->PubCod =
DB_QueryINSERTandReturnCode ("can not publish note",
"INSERT INTO social_pubs"
"INSERT INTO tl_pubs"
" (NotCod,PublisherCod,PubType,TimePublish)"
" VALUES"
" (%ld,%ld,%u,NOW())",
@ -2458,7 +2462,7 @@ static long TL_ReceivePost (void)
/* Insert post content in the database */
PstCod =
DB_QueryINSERTandReturnCode ("can not create post",
"INSERT INTO social_posts"
"INSERT INTO tl_posts"
" (Txt,MedCod)"
" VALUES"
" ('%s',%ld)",
@ -2564,7 +2568,7 @@ static void TL_PutHiddenFormToWriteNewCommentToNote (long NotCod,
static unsigned long TL_GetNumCommentsInNote (long NotCod)
{
return DB_QueryCOUNT ("can not get number of comments in a note",
"SELECT COUNT(*) FROM social_pubs"
"SELECT COUNT(*) FROM tl_pubs"
" WHERE NotCod=%ld AND PubType=%u",
NotCod,(unsigned) TL_PUB_COMMENT_TO_NOTE);
}
@ -2603,18 +2607,18 @@ static void TL_WriteCommentsInNote (const struct TL_Note *SocNot,
DB_QuerySELECT (&mysql_res,"can not get comments",
"SELECT * FROM "
"("
"SELECT social_pubs.PubCod," // row[0]
"social_pubs.PublisherCod," // row[1]
"social_pubs.NotCod," // row[2]
"SELECT tl_pubs.PubCod," // row[0]
"tl_pubs.PublisherCod," // row[1]
"tl_pubs.NotCod," // row[2]
"UNIX_TIMESTAMP("
"social_pubs.TimePublish)," // row[3]
"social_comments.Txt," // row[4]
"social_comments.MedCod" // row[5]
" FROM social_pubs,social_comments"
" WHERE social_pubs.NotCod=%ld"
" AND social_pubs.PubType=%u"
" AND social_pubs.PubCod=social_comments.PubCod"
" ORDER BY social_pubs.PubCod DESC LIMIT %u"
"tl_pubs.TimePublish)," // row[3]
"tl_comments.Txt," // row[4]
"tl_comments.MedCod" // row[5]
" FROM tl_pubs,tl_comments"
" WHERE tl_pubs.NotCod=%ld"
" AND tl_pubs.PubType=%u"
" AND tl_pubs.PubCod=tl_comments.PubCod"
" ORDER BY tl_pubs.PubCod DESC LIMIT %u"
") AS comments"
" ORDER BY PubCod",
SocNot->NotCod,(unsigned) TL_PUB_COMMENT_TO_NOTE,
@ -2815,18 +2819,18 @@ static unsigned TL_WriteHiddenComments (long NotCod,
/***** Get comments of this note from database *****/
NumInitialCommentsGot = (unsigned)
DB_QuerySELECT (&mysql_res,"can not get comments",
"SELECT social_pubs.PubCod," // row[0]
"social_pubs.PublisherCod," // row[1]
"social_pubs.NotCod," // row[2]
"SELECT tl_pubs.PubCod," // row[0]
"tl_pubs.PublisherCod," // row[1]
"tl_pubs.NotCod," // row[2]
"UNIX_TIMESTAMP("
"social_pubs.TimePublish)," // row[3]
"social_comments.Txt," // row[4]
"social_comments.MedCod" // row[5]
" FROM social_pubs,social_comments"
" WHERE social_pubs.NotCod=%ld"
" AND social_pubs.PubType=%u"
" AND social_pubs.PubCod=social_comments.PubCod"
" ORDER BY social_pubs.PubCod"
"tl_pubs.TimePublish)," // row[3]
"tl_comments.Txt," // row[4]
"tl_comments.MedCod" // row[5]
" FROM tl_pubs,tl_comments"
" WHERE tl_pubs.NotCod=%ld"
" AND tl_pubs.PubType=%u"
" AND tl_pubs.PubCod=tl_comments.PubCod"
" ORDER BY tl_pubs.PubCod"
" LIMIT %lu",
NotCod,(unsigned) TL_PUB_COMMENT_TO_NOTE,
NumInitialCommentsToGet);
@ -3393,7 +3397,7 @@ static long TL_ReceiveComment (void)
/* Insert comment content in the database */
DB_QueryINSERT ("can not store comment content",
"INSERT INTO social_comments"
"INSERT INTO tl_comments"
" (PubCod,Txt,MedCod)"
" VALUES"
" (%ld,'%s',%ld)",
@ -3639,7 +3643,7 @@ static void TL_FavNote (struct TL_Note *SocNot)
{
/***** Mark as favourite in database *****/
DB_QueryINSERT ("can not favourite note",
"INSERT IGNORE INTO social_notes_fav"
"INSERT IGNORE INTO tl_notes_fav"
" (NotCod,UsrCod,TimeFav)"
" VALUES"
" (%ld,%ld,NOW())",
@ -3677,7 +3681,7 @@ static void TL_UnfNote (struct TL_Note *SocNot)
{
/***** Delete the mark as favourite from database *****/
DB_QueryDELETE ("can not unfavourite note",
"DELETE FROM social_notes_fav"
"DELETE FROM tl_notes_fav"
" WHERE NotCod=%ld AND UsrCod=%ld",
SocNot->NotCod,
Gbl.Usrs.Me.UsrDat.UsrCod);
@ -3810,7 +3814,7 @@ static void TL_FavComment (struct TL_Comment *SocCom)
{
/***** Mark as favourite in database *****/
DB_QueryINSERT ("can not favourite comment",
"INSERT IGNORE INTO social_comments_fav"
"INSERT IGNORE INTO tl_comments_fav"
" (PubCod,UsrCod,TimeFav)"
" VALUES"
" (%ld,%ld,NOW())",
@ -3851,7 +3855,7 @@ static void TL_UnfComment (struct TL_Comment *SocCom)
{
/***** Delete the mark as favourite from database *****/
DB_QueryDELETE ("can not unfavourite comment",
"DELETE FROM social_comments_fav"
"DELETE FROM tl_comments_fav"
" WHERE PubCod=%ld AND UsrCod=%ld",
SocCom->PubCod,
Gbl.Usrs.Me.UsrDat.UsrCod);
@ -3947,7 +3951,7 @@ static void TL_UnsNote (struct TL_Note *SocNot)
{
/***** Delete publication from database *****/
DB_QueryDELETE ("can not remove a publication",
"DELETE FROM social_pubs"
"DELETE FROM tl_pubs"
" WHERE NotCod=%ld"
" AND PublisherCod=%ld"
" AND PubType=%u",
@ -4136,7 +4140,7 @@ static void TL_RemoveNoteMediaAndDBEntries (struct TL_Note *SocNot)
/* Get comments of this note */
NumComments = DB_QuerySELECT (&mysql_res,"can not get comments",
"SELECT PubCod"
" FROM social_pubs"
" FROM tl_pubs"
" WHERE NotCod=%ld AND PubType=%u",
SocNot->NotCod,
(unsigned) TL_PUB_COMMENT_TO_NOTE);
@ -4164,7 +4168,7 @@ static void TL_RemoveNoteMediaAndDBEntries (struct TL_Note *SocNot)
/* Remove media associated to a post from database */
if (DB_QuerySELECT (&mysql_res,"can not get media",
"SELECT MedCod" // row[0]
" FROM social_posts"
" FROM tl_posts"
" WHERE PstCod=%ld",
SocNot->Cod) == 1) // Result should have a unique row
{
@ -4193,19 +4197,19 @@ static void TL_RemoveNoteMediaAndDBEntries (struct TL_Note *SocNot)
/***** Remove favs for this note *****/
DB_QueryDELETE ("can not remove favs for note",
"DELETE FROM social_notes_fav"
"DELETE FROM tl_notes_fav"
" WHERE NotCod=%ld",
SocNot->NotCod);
/***** Remove all the publications of this note *****/
DB_QueryDELETE ("can not remove a publication",
"DELETE FROM social_pubs"
"DELETE FROM tl_pubs"
" WHERE NotCod=%ld",
SocNot->NotCod);
/***** Remove note *****/
DB_QueryDELETE ("can not remove a note",
"DELETE FROM social_notes"
"DELETE FROM tl_notes"
" WHERE NotCod=%ld"
" AND UsrCod=%ld", // Extra check: I am the author
SocNot->NotCod,
@ -4214,7 +4218,7 @@ static void TL_RemoveNoteMediaAndDBEntries (struct TL_Note *SocNot)
if (SocNot->NoteType == TL_NOTE_POST)
/***** Remove post *****/
DB_QueryDELETE ("can not remove a post",
"DELETE FROM social_posts"
"DELETE FROM tl_posts"
" WHERE PstCod=%ld",
SocNot->Cod);
}
@ -4231,7 +4235,7 @@ static long TL_GetNotCodOfPublication (long PubCod)
/***** Get code of note from database *****/
if (DB_QuerySELECT (&mysql_res,"can not get code of note",
"SELECT NotCod FROM social_pubs"
"SELECT NotCod FROM tl_pubs"
" WHERE PubCod=%ld",
PubCod) == 1) // Result should have a unique row
{
@ -4258,7 +4262,7 @@ static long TL_GetPubCodOfOriginalNote (long NotCod)
/***** Get code of publication of the original note *****/
if (DB_QuerySELECT (&mysql_res,"can not get code of publication",
"SELECT PubCod FROM social_pubs"
"SELECT PubCod FROM tl_pubs"
" WHERE NotCod=%ld AND PubType=%u",
NotCod,(unsigned) TL_PUB_ORIGINAL_NOTE) == 1) // Result should have a unique row
{
@ -4452,7 +4456,7 @@ static void TL_RemoveCommentMediaAndDBEntries (long PubCod)
/***** Remove media associated to comment *****/
if (DB_QuerySELECT (&mysql_res,"can not get media",
"SELECT MedCod" // row[0]
" FROM social_comments"
" FROM tl_comments"
" WHERE PubCod=%ld",
PubCod) == 1) // Result should have a unique row
{
@ -4474,19 +4478,19 @@ static void TL_RemoveCommentMediaAndDBEntries (long PubCod)
/***** Remove favs for this comment *****/
DB_QueryDELETE ("can not remove favs for comment",
"DELETE FROM social_comments_fav"
"DELETE FROM tl_comments_fav"
" WHERE PubCod=%ld",
PubCod);
/***** Remove content of this comment *****/
DB_QueryDELETE ("can not remove a comment",
"DELETE FROM social_comments"
"DELETE FROM tl_comments"
" WHERE PubCod=%ld",
PubCod);
/***** Remove this comment *****/
DB_QueryDELETE ("can not remove a comment",
"DELETE FROM social_pubs"
"DELETE FROM tl_pubs"
" WHERE PubCod=%ld"
" AND PublisherCod=%ld" // Extra check: I am the author
" AND PubType=%u", // Extra check: it's a comment
@ -4504,98 +4508,98 @@ void TL_RemoveUsrContent (long UsrCod)
/***** Remove favs for comments *****/
/* Remove all favs made by this user in any comment */
DB_QueryDELETE ("can not remove favs",
"DELETE FROM social_comments_fav"
"DELETE FROM tl_comments_fav"
" WHERE UsrCod=%ld",
UsrCod);
/* Remove all favs for all comments of this user */
DB_QueryDELETE ("can not remove favs",
"DELETE FROM social_comments_fav"
" USING social_pubs,social_comments_fav"
" WHERE social_pubs.PublisherCod=%ld" // Author of the comment
" AND social_pubs.PubType=%u"
" AND social_pubs.PubCod=social_comments_fav.PubCod",
"DELETE FROM tl_comments_fav"
" USING tl_pubs,tl_comments_fav"
" WHERE tl_pubs.PublisherCod=%ld" // Author of the comment
" AND tl_pubs.PubType=%u"
" AND tl_pubs.PubCod=tl_comments_fav.PubCod",
UsrCod,(unsigned) TL_PUB_COMMENT_TO_NOTE);
/* Remove all favs for all comments in all the notes of the user */
DB_QueryDELETE ("can not remove comments",
"DELETE FROM social_comments_fav"
" USING social_notes,social_pubs,social_comments_fav"
" WHERE social_notes.UsrCod=%ld" // Author of the note
" AND social_notes.NotCod=social_pubs.NotCod"
" AND social_pubs.PubType=%u"
" AND social_pubs.PubCod=social_comments_fav.PubCod",
"DELETE FROM tl_comments_fav"
" USING tl_notes,tl_pubs,tl_comments_fav"
" WHERE tl_notes.UsrCod=%ld" // Author of the note
" AND tl_notes.NotCod=tl_pubs.NotCod"
" AND tl_pubs.PubType=%u"
" AND tl_pubs.PubCod=tl_comments_fav.PubCod",
UsrCod,(unsigned) TL_PUB_COMMENT_TO_NOTE);
/***** Remove favs for notes *****/
/* Remove all favs made by this user in any note */
DB_QueryDELETE ("can not remove favs",
"DELETE FROM social_notes_fav"
"DELETE FROM tl_notes_fav"
" WHERE UsrCod=%ld",
UsrCod);
/* Remove all favs for all notes of this user */
DB_QueryDELETE ("can not remove favs",
"DELETE FROM social_notes_fav"
" USING social_notes,social_notes_fav"
" WHERE social_notes.UsrCod=%ld" // Author of the note
" AND social_notes.NotCod=social_notes_fav.NotCod",
"DELETE FROM tl_notes_fav"
" USING tl_notes,tl_notes_fav"
" WHERE tl_notes.UsrCod=%ld" // Author of the note
" AND tl_notes.NotCod=tl_notes_fav.NotCod",
UsrCod);
/***** Remove comments *****/
/* Remove content of all the comments in all the notes of the user */
DB_QueryDELETE ("can not remove comments",
"DELETE FROM social_comments"
" USING social_notes,social_pubs,social_comments"
" WHERE social_notes.UsrCod=%ld"
" AND social_notes.NotCod=social_pubs.NotCod"
" AND social_pubs.PubType=%u"
" AND social_pubs.PubCod=social_comments.PubCod",
"DELETE FROM tl_comments"
" USING tl_notes,tl_pubs,tl_comments"
" WHERE tl_notes.UsrCod=%ld"
" AND tl_notes.NotCod=tl_pubs.NotCod"
" AND tl_pubs.PubType=%u"
" AND tl_pubs.PubCod=tl_comments.PubCod",
UsrCod,(unsigned) TL_PUB_COMMENT_TO_NOTE);
/* Remove all the comments from any user in any note of the user */
DB_QueryDELETE ("can not remove comments",
"DELETE FROM social_pubs"
" USING social_notes,social_pubs"
" WHERE social_notes.UsrCod=%ld"
" AND social_notes.NotCod=social_pubs.NotCod"
" AND social_pubs.PubType=%u",
"DELETE FROM tl_pubs"
" USING tl_notes,tl_pubs"
" WHERE tl_notes.UsrCod=%ld"
" AND tl_notes.NotCod=tl_pubs.NotCod"
" AND tl_pubs.PubType=%u",
UsrCod,(unsigned) TL_PUB_COMMENT_TO_NOTE);
/* Remove content of all the comments of the user in any note */
DB_QueryDELETE ("can not remove comments",
"DELETE FROM social_comments"
" USING social_pubs,social_comments"
" WHERE social_pubs.PublisherCod=%ld"
" AND social_pubs.PubType=%u"
" AND social_pubs.PubCod=social_comments.PubCod",
"DELETE FROM tl_comments"
" USING tl_pubs,tl_comments"
" WHERE tl_pubs.PublisherCod=%ld"
" AND tl_pubs.PubType=%u"
" AND tl_pubs.PubCod=tl_comments.PubCod",
UsrCod,(unsigned) TL_PUB_COMMENT_TO_NOTE);
/***** Remove all the posts of the user *****/
DB_QueryDELETE ("can not remove posts",
"DELETE FROM social_posts"
"DELETE FROM tl_posts"
" WHERE PstCod IN"
" (SELECT Cod FROM social_notes"
" (SELECT Cod FROM tl_notes"
" WHERE UsrCod=%ld AND NoteType=%u)",
UsrCod,(unsigned) TL_NOTE_POST);
/***** Remove all the publications of any user authored by the user *****/
DB_QueryDELETE ("can not remove publications",
"DELETE FROM social_pubs"
" USING social_notes,social_pubs"
" WHERE social_notes.UsrCod=%ld"
" AND social_notes.NotCod=social_pubs.NotCod",
"DELETE FROM tl_pubs"
" USING tl_notes,tl_pubs"
" WHERE tl_notes.UsrCod=%ld"
" AND tl_notes.NotCod=tl_pubs.NotCod",
UsrCod);
/***** Remove all the publications of the user *****/
DB_QueryDELETE ("can not remove publications",
"DELETE FROM social_pubs"
"DELETE FROM tl_pubs"
" WHERE PublisherCod=%ld",
UsrCod);
/***** Remove all the notes of the user *****/
DB_QueryDELETE ("can not remove notes",
"DELETE FROM social_notes"
"DELETE FROM tl_notes"
" WHERE UsrCod=%ld",
UsrCod);
}
@ -4607,7 +4611,7 @@ void TL_RemoveUsrContent (long UsrCod)
static bool TL_CheckIfNoteIsSharedByUsr (long NotCod,long UsrCod)
{
return (DB_QueryCOUNT ("can not check if a user has shared a note",
"SELECT COUNT(*) FROM social_pubs"
"SELECT COUNT(*) FROM tl_pubs"
" WHERE NotCod=%ld"
" AND PublisherCod=%ld"
" AND PubType=%u",
@ -4624,7 +4628,7 @@ static bool TL_CheckIfNoteIsFavedByUsr (long NotCod,long UsrCod)
{
return (DB_QueryCOUNT ("can not check if a user"
" has favourited a note",
"SELECT COUNT(*) FROM social_notes_fav"
"SELECT COUNT(*) FROM tl_notes_fav"
" WHERE NotCod=%ld AND UsrCod=%ld",
NotCod,UsrCod) != 0);
}
@ -4637,7 +4641,7 @@ static bool TL_CheckIfCommIsFavedByUsr (long PubCod,long UsrCod)
{
return (DB_QueryCOUNT ("can not check if a user"
" has favourited a comment",
"SELECT COUNT(*) FROM social_comments_fav"
"SELECT COUNT(*) FROM tl_comments_fav"
" WHERE PubCod=%ld AND UsrCod=%ld",
PubCod,UsrCod) != 0);
}
@ -4652,7 +4656,7 @@ static void TL_UpdateNumTimesANoteHasBeenShared (struct TL_Note *SocNot)
SocNot->NumShared =
(unsigned) DB_QueryCOUNT ("can not get number of times"
" a note has been shared",
"SELECT COUNT(*) FROM social_pubs"
"SELECT COUNT(*) FROM tl_pubs"
" WHERE NotCod=%ld"
" AND PublisherCod<>%ld"
" AND PubType=%u",
@ -4671,7 +4675,7 @@ static void TL_GetNumTimesANoteHasBeenFav (struct TL_Note *SocNot)
SocNot->NumFavs =
(unsigned) DB_QueryCOUNT ("can not get number of times"
" a note has been favourited",
"SELECT COUNT(*) FROM social_notes_fav"
"SELECT COUNT(*) FROM tl_notes_fav"
" WHERE NotCod=%ld"
" AND UsrCod<>%ld", // Extra check
SocNot->NotCod,
@ -4688,7 +4692,7 @@ static void TL_GetNumTimesACommHasBeenFav (struct TL_Comment *SocCom)
SocCom->NumFavs =
(unsigned) DB_QueryCOUNT ("can not get number of times"
" a comment has been favourited",
"SELECT COUNT(*) FROM social_comments_fav"
"SELECT COUNT(*) FROM tl_comments_fav"
" WHERE PubCod=%ld"
" AND UsrCod<>%ld", // Extra check
SocCom->PubCod,
@ -4709,7 +4713,7 @@ static void TL_ShowUsrsWhoHaveSharedNote (const struct TL_Note *SocNot,
if (SocNot->NumShared)
NumFirstUsrs =
(unsigned) DB_QuerySELECT (&mysql_res,"can not get users",
"SELECT PublisherCod FROM social_pubs"
"SELECT PublisherCod FROM tl_pubs"
" WHERE NotCod=%ld"
" AND PublisherCod<>%ld"
" AND PubType=%u"
@ -4752,7 +4756,7 @@ static void TL_ShowUsrsWhoHaveMarkedNoteAsFav (const struct TL_Note *SocNot,
/***** Get list of users from database *****/
NumFirstUsrs =
(unsigned) DB_QuerySELECT (&mysql_res,"can not get users",
"SELECT UsrCod FROM social_notes_fav"
"SELECT UsrCod FROM tl_notes_fav"
" WHERE NotCod=%ld"
" AND UsrCod<>%ld" // Extra check
" ORDER BY FavCod LIMIT %u",
@ -4793,7 +4797,7 @@ static void TL_ShowUsrsWhoHaveMarkedCommAsFav (const struct TL_Comment *SocCom,
/***** Get list of users from database *****/
NumFirstUsrs =
(unsigned) DB_QuerySELECT (&mysql_res,"can not get users",
"SELECT UsrCod FROM social_comments_fav"
"SELECT UsrCod FROM tl_comments_fav"
" WHERE PubCod=%ld"
" AND UsrCod<>%ld" // Extra check
" ORDER BY FavCod LIMIT %u",
@ -4897,7 +4901,7 @@ static void TL_GetDataOfNoteByCod (struct TL_Note *SocNot)
"HieCod," // row[4]
"Unavailable," // row[5]
"UNIX_TIMESTAMP(TimeNote)" // row[6]
" FROM social_notes"
" FROM tl_notes"
" WHERE NotCod=%ld",
SocNot->NotCod))
{
@ -4930,16 +4934,16 @@ static void TL_GetDataOfCommByCod (struct TL_Comment *SocCom)
{
/***** Get data of comment from database *****/
if (DB_QuerySELECT (&mysql_res,"can not get data of comment",
"SELECT social_pubs.PubCod," // row[0]
"social_pubs.PublisherCod," // row[1]
"social_pubs.NotCod," // row[2]
"UNIX_TIMESTAMP(social_pubs.TimePublish)," // row[3]
"social_comments.Txt," // row[4]
"social_comments.MedCod" // row[5]
" FROM social_pubs,social_comments"
" WHERE social_pubs.PubCod=%ld"
" AND social_pubs.PubType=%u"
" AND social_pubs.PubCod=social_comments.PubCod",
"SELECT tl_pubs.PubCod," // row[0]
"tl_pubs.PublisherCod," // row[1]
"tl_pubs.NotCod," // row[2]
"UNIX_TIMESTAMP(tl_pubs.TimePublish)," // row[3]
"tl_comments.Txt," // row[4]
"tl_comments.MedCod" // row[5]
" FROM tl_pubs,tl_comments"
" WHERE tl_pubs.PubCod=%ld"
" AND tl_pubs.PubType=%u"
" AND tl_pubs.PubCod=tl_comments.PubCod",
SocCom->PubCod,(unsigned) TL_PUB_COMMENT_TO_NOTE))
{
/***** Get data of comment *****/
@ -4959,7 +4963,7 @@ static void TL_GetDataOfCommByCod (struct TL_Comment *SocCom)
}
/*****************************************************************************/
/****************** Get data of publication using its code *******************/
/***************** Get data of publication using its code ********************/
/*****************************************************************************/
static void TL_GetDataOfPublicationFromRow (MYSQL_ROW row,struct TL_Publication *SocPub)
@ -5024,7 +5028,7 @@ static void TL_GetDataOfNoteFromRow (MYSQL_ROW row,struct TL_Note *SocNot)
}
/*****************************************************************************/
/******** Get publication type from string number coming from database *******/
/******* Get publication type from string number coming from database ********/
/*****************************************************************************/
static TL_PubType_t TL_GetPubTypeFromStr (const char *Str)
@ -5128,7 +5132,7 @@ void TL_ClearOldTimelinesDB (void)
{
/***** Remove timelines for expired sessions *****/
DB_QueryDELETE ("can not remove old timelines",
"DELETE LOW_PRIORITY FROM social_timelines"
"DELETE LOW_PRIORITY FROM tl_timelines"
" WHERE SessionId NOT IN (SELECT SessionId FROM sessions)");
}
@ -5140,7 +5144,7 @@ static void TL_ClearTimelineThisSession (void)
{
/***** Remove timeline for this session *****/
DB_QueryDELETE ("can not remove timeline",
"DELETE FROM social_timelines"
"DELETE FROM tl_timelines"
" WHERE SessionId='%s'",
Gbl.Session.Id);
}
@ -5152,14 +5156,14 @@ static void TL_ClearTimelineThisSession (void)
static void TL_AddNotesJustRetrievedToTimelineThisSession (void)
{
DB_QueryINSERT ("can not insert notes in timeline",
"INSERT IGNORE INTO social_timelines"
"INSERT IGNORE INTO tl_timelines"
" (SessionId,NotCod)"
" SELECT DISTINCTROW '%s',NotCod FROM not_codes",
" SELECT DISTINCTROW '%s',NotCod FROM tl_not_codes",
Gbl.Session.Id);
}
/*****************************************************************************/
/****************** Get notification of a new publication ********************/
/***************** Get notification of a new publication *********************/
/*****************************************************************************/
void TL_GetNotifPublication (char SummaryStr[Ntf_MAX_BYTES_SUMMARY + 1],
@ -5186,7 +5190,7 @@ void TL_GetNotifPublication (char SummaryStr[Ntf_MAX_BYTES_SUMMARY + 1],
"PublisherCod," // row[2]
"PubType," // row[3]
"UNIX_TIMESTAMP(TimePublish)" // row[4]
" FROM social_pubs WHERE PubCod=%ld",
" FROM tl_pubs WHERE PubCod=%ld",
PubCod) == 1) // Result should have a unique row
{
/* Get data of publication */
@ -5213,7 +5217,7 @@ void TL_GetNotifPublication (char SummaryStr[Ntf_MAX_BYTES_SUMMARY + 1],
/***** Get content of post from database *****/
if (DB_QuerySELECT (&mysql_res,"can not get the content of a post",
"SELECT Txt" // row[0]
" FROM social_posts"
" FROM tl_posts"
" WHERE PstCod=%ld",
SocNot.Cod) == 1) // Result should have a unique row
{
@ -5253,7 +5257,7 @@ void TL_GetNotifPublication (char SummaryStr[Ntf_MAX_BYTES_SUMMARY + 1],
if (DB_QuerySELECT (&mysql_res,"can not get the content"
" of a comment to a note",
"SELECT Txt" // row[0]
" FROM social_comments"
" FROM tl_comments"
" WHERE PubCod=%ld",
SocPub.PubCod) == 1) // Result should have a unique row
{
@ -5392,7 +5396,7 @@ unsigned long TL_GetNumPubsUsr (long UsrCod)
{
/***** Get number of posts from a user from database *****/
return DB_QueryCOUNT ("can not get number of publications from a user",
"SELECT COUNT(*) FROM social_pubs"
"SELECT COUNT(*) FROM tl_pubs"
" WHERE PublisherCod=%ld",
UsrCod);
}

View File

@ -46,7 +46,7 @@
#define TL_NUM_NOTE_TYPES 13
// If the numbers assigned to each event type change,
// it is necessary to change old numbers to new ones in database table social_notes
// it is necessary to change old numbers to new ones in database table tl_notes
typedef enum
{
TL_NOTE_UNKNOWN = 0,
@ -76,7 +76,7 @@ typedef enum
#define TL_NUM_PUB_TYPES 4
// If the numbers assigned to each event type change,
// it is necessary to change old numbers to new ones in database table social_notes
// it is necessary to change old numbers to new ones in database table tl_notes
typedef enum
{
TL_PUB_UNKNOWN = 0,