mirror of https://github.com/acanas/swad-core.git
Version 18.66
This commit is contained in:
parent
72f87a31a2
commit
9d4230f0bb
|
@ -3394,7 +3394,7 @@ a.PAG:hover, .PAG_CUR
|
||||||
.RANK_USR
|
.RANK_USR
|
||||||
{
|
{
|
||||||
box-sizing:border-box;
|
box-sizing:border-box;
|
||||||
max-width:50px;
|
max-width:48px;
|
||||||
text-align:left;
|
text-align:left;
|
||||||
vertical-align:middle;
|
vertical-align:middle;
|
||||||
white-space:nowrap;
|
white-space:nowrap;
|
|
@ -12640,3 +12640,30 @@ UPDATE social_posts SET MediaType='jpg' WHERE MediaType<>'gif' AND MediaName<>''
|
||||||
UPDATE tst_answers SET MediaType='jpg' WHERE MediaType<>'gif' AND MediaName<>'';
|
UPDATE tst_answers SET MediaType='jpg' WHERE MediaType<>'gif' AND MediaName<>'';
|
||||||
UPDATE tst_questions SET MediaType='jpg' WHERE MediaType<>'gif' AND MediaName<>'';
|
UPDATE tst_questions SET MediaType='jpg' WHERE MediaType<>'gif' AND MediaName<>'';
|
||||||
|
|
||||||
|
------------
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
UPDATE usr_figures
|
||||||
|
SET NumSocPub = T.NumSocPub
|
||||||
|
FROM (
|
||||||
|
SELECT PublisherCod,COUNT(*) AS NumSocPub FROM social_pubs GROUP BY PublisherCod) AS T
|
||||||
|
WHERE
|
||||||
|
usr_figures.UsrCod = T.PublisherCod;
|
||||||
|
|
||||||
|
|
||||||
|
------------
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
UPDATE usr_figures,(SELECT PublisherCod,COUNT(*) AS NumSocPub FROM social_pubs GROUP BY PublisherCod) AS publishers SET usr_figures.NumSocPub=publishers.NumSocPub WHERE usr_figures.NumSocPub<0 AND usr_figures.UsrCod=publishers.PublisherCod;
|
||||||
|
UPDATE usr_figures SET NumSocPub=0 WHERE NumSocPub<0;
|
||||||
|
|
||||||
|
UPDATE usr_figures,(SELECT UsrCod,COUNT(*) AS NumForPst FROM forum_post GROUP BY UsrCod) AS posters SET usr_figures.NumForPst=posters.NumForPst WHERE usr_figures.NumForPst<0 AND usr_figures.UsrCod=posters.UsrCod;
|
||||||
|
UPDATE usr_figures SET NumForPst=0 WHERE NumForPst<0;
|
||||||
|
|
||||||
|
UPDATE usr_figures,(SELECT UsrCod,SUM(NMS) AS NumMsgSnt FROM (SELECT UsrCod,COUNT(*) AS NMS FROM msg_snt GROUP BY UsrCod UNION SELECT Usrcod,COUNT(*) AS NMS FROM msg_snt_deleted GROUP BY UsrCod) AS MS GROUP BY UsrCod) AS senders SET usr_figures.NumMsgSnt=senders.NumMsgSnt WHERE usr_figures.NumMsgSnt<0 AND usr_figures.UsrCod=senders.UsrCod;
|
||||||
|
UPDATE usr_figures SET NumMsgSnt=0 WHERE NumMsgSnt<0;
|
||||||
|
|
||||||
|
UPDATE usr_figures,(SELECT UsrCod,SUM(NumViews) AS NumFileViews FROM file_view WHERE UsrCod>0 GROUP BY UsrCod) AS viewers SET usr_figures.NumFileViews=viewers.NumFileViews WHERE usr_figures.NumFileViews<0 AND usr_figures.UsrCod=viewers.UsrCod;
|
||||||
|
UPDATE usr_figures SET NumFileViews=0 WHERE NumFileViews<0;
|
||||||
|
|
|
@ -428,10 +428,22 @@ En OpenSWAD:
|
||||||
ps2pdf source.ps destination.pdf
|
ps2pdf source.ps destination.pdf
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#define Log_PLATFORM_VERSION "SWAD 18.65 (2019-03-06)"
|
#define Log_PLATFORM_VERSION "SWAD 18.66 (2019-03-06)"
|
||||||
#define CSS_FILE "swad18.64.css"
|
#define CSS_FILE "swad18.66.css"
|
||||||
#define JS_FILE "swad18.64.js"
|
#define JS_FILE "swad18.64.js"
|
||||||
/*
|
/*
|
||||||
|
Version 18.66: Mar 06, 2019 Number of social posts is added as a new column in users' ranking.
|
||||||
|
Only figures greater than 0 are shown in users' ranking. (238671 lines)
|
||||||
|
8 changes necessary in database:
|
||||||
|
UPDATE usr_figures,(SELECT PublisherCod,COUNT(*) AS NumSocPub FROM social_pubs GROUP BY PublisherCod) AS publishers SET usr_figures.NumSocPub=publishers.NumSocPub WHERE usr_figures.NumSocPub<0 AND usr_figures.UsrCod=publishers.PublisherCod;
|
||||||
|
UPDATE usr_figures SET NumSocPub=0 WHERE NumSocPub<0;
|
||||||
|
UPDATE usr_figures,(SELECT UsrCod,SUM(NumViews) AS NumFileViews FROM file_view WHERE UsrCod>0 GROUP BY UsrCod) AS viewers SET usr_figures.NumFileViews=viewers.NumFileViews WHERE usr_figures.NumFileViews<0 AND usr_figures.UsrCod=viewers.UsrCod;
|
||||||
|
UPDATE usr_figures SET NumFileViews=0 WHERE NumFileViews<0;
|
||||||
|
UPDATE usr_figures,(SELECT UsrCod,COUNT(*) AS NumForPst FROM forum_post GROUP BY UsrCod) AS posters SET usr_figures.NumForPst=posters.NumForPst WHERE usr_figures.NumForPst<0 AND usr_figures.UsrCod=posters.UsrCod;
|
||||||
|
UPDATE usr_figures SET NumForPst=0 WHERE NumForPst<0;
|
||||||
|
UPDATE usr_figures,(SELECT UsrCod,SUM(NMS) AS NumMsgSnt FROM (SELECT UsrCod,COUNT(*) AS NMS FROM msg_snt GROUP BY UsrCod UNION SELECT Usrcod,COUNT(*) AS NMS FROM msg_snt_deleted GROUP BY UsrCod) AS MS GROUP BY UsrCod) AS senders SET usr_figures.NumMsgSnt=senders.NumMsgSnt WHERE usr_figures.NumMsgSnt<0 AND usr_figures.UsrCod=senders.UsrCod;
|
||||||
|
UPDATE usr_figures SET NumMsgSnt=0 WHERE NumMsgSnt<0;
|
||||||
|
|
||||||
Version 18.65: Mar 06, 2019 New user's figure: number of social posts. (238648 lines)
|
Version 18.65: Mar 06, 2019 New user's figure: number of social posts. (238648 lines)
|
||||||
1 change necessary in database:
|
1 change necessary in database:
|
||||||
ALTER TABLE usr_figures ADD COLUMN NumSocPub INT NOT NULL DEFAULT -1 AFTER NumClicks;
|
ALTER TABLE usr_figures ADD COLUMN NumSocPub INT NOT NULL DEFAULT -1 AFTER NumClicks;
|
||||||
|
|
|
@ -490,6 +490,7 @@ static void Fig_GetAndShowUsersRanking (void)
|
||||||
extern const char *Txt_FIGURE_TYPES[Fig_NUM_FIGURES];
|
extern const char *Txt_FIGURE_TYPES[Fig_NUM_FIGURES];
|
||||||
extern const char *Txt_Clicks;
|
extern const char *Txt_Clicks;
|
||||||
extern const char *Txt_Clicks_per_day;
|
extern const char *Txt_Clicks_per_day;
|
||||||
|
extern const char *Txt_Timeline;
|
||||||
extern const char *Txt_Downloads;
|
extern const char *Txt_Downloads;
|
||||||
extern const char *Txt_Forums;
|
extern const char *Txt_Forums;
|
||||||
extern const char *Txt_Messages;
|
extern const char *Txt_Messages;
|
||||||
|
@ -519,13 +520,17 @@ static void Fig_GetAndShowUsersRanking (void)
|
||||||
"<th class=\"CENTER_MIDDLE\">"
|
"<th class=\"CENTER_MIDDLE\">"
|
||||||
"%s"
|
"%s"
|
||||||
"</th>"
|
"</th>"
|
||||||
|
"<th class=\"CENTER_MIDDLE\">"
|
||||||
|
"%s"
|
||||||
|
"</th>"
|
||||||
"</tr>",
|
"</tr>",
|
||||||
Txt_Clicks,
|
Txt_Clicks,
|
||||||
Txt_Clicks_per_day,
|
Txt_Clicks_per_day,
|
||||||
|
Txt_Timeline,
|
||||||
|
Txt_Followers,
|
||||||
Txt_Downloads,
|
Txt_Downloads,
|
||||||
Txt_Forums,
|
Txt_Forums,
|
||||||
Txt_Messages,
|
Txt_Messages);
|
||||||
Txt_Followers);
|
|
||||||
|
|
||||||
/***** Rankings *****/
|
/***** Rankings *****/
|
||||||
fprintf (Gbl.F.Out,"<tr>"
|
fprintf (Gbl.F.Out,"<tr>"
|
||||||
|
@ -534,6 +539,12 @@ static void Fig_GetAndShowUsersRanking (void)
|
||||||
fprintf (Gbl.F.Out,"</td>"
|
fprintf (Gbl.F.Out,"</td>"
|
||||||
"<td class=\"DAT LEFT_TOP\">");
|
"<td class=\"DAT LEFT_TOP\">");
|
||||||
Prf_GetAndShowRankingClicksPerDay ();
|
Prf_GetAndShowRankingClicksPerDay ();
|
||||||
|
fprintf (Gbl.F.Out,"</td>"
|
||||||
|
"<td class=\"DAT LEFT_TOP\">");
|
||||||
|
Prf_GetAndShowRankingSocPub ();
|
||||||
|
fprintf (Gbl.F.Out,"</td>"
|
||||||
|
"<td class=\"DAT LEFT_TOP\">");
|
||||||
|
Fol_GetAndShowRankingFollowers ();
|
||||||
fprintf (Gbl.F.Out,"</td>"
|
fprintf (Gbl.F.Out,"</td>"
|
||||||
"<td class=\"DAT LEFT_TOP\">");
|
"<td class=\"DAT LEFT_TOP\">");
|
||||||
Prf_GetAndShowRankingFileViews ();
|
Prf_GetAndShowRankingFileViews ();
|
||||||
|
@ -543,9 +554,6 @@ static void Fig_GetAndShowUsersRanking (void)
|
||||||
fprintf (Gbl.F.Out,"</td>"
|
fprintf (Gbl.F.Out,"</td>"
|
||||||
"<td class=\"DAT LEFT_TOP\">");
|
"<td class=\"DAT LEFT_TOP\">");
|
||||||
Prf_GetAndShowRankingMsgSnt ();
|
Prf_GetAndShowRankingMsgSnt ();
|
||||||
fprintf (Gbl.F.Out,"</td>"
|
|
||||||
"<td class=\"DAT LEFT_TOP\">");
|
|
||||||
Fol_GetAndShowRankingFollowers ();
|
|
||||||
fprintf (Gbl.F.Out,"</td>"
|
fprintf (Gbl.F.Out,"</td>"
|
||||||
"</tr>");
|
"</tr>");
|
||||||
|
|
||||||
|
|
|
@ -872,7 +872,7 @@ static unsigned For_GetNumMyPstInThr (long ThrCod)
|
||||||
unsigned long For_GetNumPostsUsr (long UsrCod)
|
unsigned long For_GetNumPostsUsr (long UsrCod)
|
||||||
{
|
{
|
||||||
/***** Get number of posts from a user from database *****/
|
/***** Get number of posts from a user from database *****/
|
||||||
return DB_QueryCOUNT ("can not number of forum posts from a user",
|
return DB_QueryCOUNT ("can not get number of forum posts from a user",
|
||||||
"SELECT COUNT(*) FROM forum_post"
|
"SELECT COUNT(*) FROM forum_post"
|
||||||
" WHERE UsrCod=%ld",
|
" WHERE UsrCod=%ld",
|
||||||
UsrCod);
|
UsrCod);
|
||||||
|
|
|
@ -95,6 +95,7 @@ static void Prf_CreateUsrFigures (long UsrCod,const struct UsrFigures *UsrFigure
|
||||||
static bool Prf_CheckIfUsrFiguresExists (long UsrCod);
|
static bool Prf_CheckIfUsrFiguresExists (long UsrCod);
|
||||||
|
|
||||||
static void Prf_GetAndShowRankingFigure (const char *FieldName);
|
static void Prf_GetAndShowRankingFigure (const char *FieldName);
|
||||||
|
static void Prf_ShowUsrInRanking (struct UsrData *UsrDat,unsigned Rank);
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
/************* Suggest who to follow or request user's profile ***************/
|
/************* Suggest who to follow or request user's profile ***************/
|
||||||
|
@ -1251,6 +1252,11 @@ void Prf_GetAndShowRankingClicks (void)
|
||||||
Prf_GetAndShowRankingFigure ("NumClicks");
|
Prf_GetAndShowRankingFigure ("NumClicks");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void Prf_GetAndShowRankingSocPub (void)
|
||||||
|
{
|
||||||
|
Prf_GetAndShowRankingFigure ("NumSocPub");
|
||||||
|
}
|
||||||
|
|
||||||
void Prf_GetAndShowRankingFileViews (void)
|
void Prf_GetAndShowRankingFileViews (void)
|
||||||
{
|
{
|
||||||
Prf_GetAndShowRankingFigure ("NumFileViews");
|
Prf_GetAndShowRankingFigure ("NumFileViews");
|
||||||
|
@ -1279,7 +1285,7 @@ static void Prf_GetAndShowRankingFigure (const char *FieldName)
|
||||||
(unsigned) DB_QuerySELECT (&mysql_res,"can not get ranking",
|
(unsigned) DB_QuerySELECT (&mysql_res,"can not get ranking",
|
||||||
"SELECT UsrCod,%s"
|
"SELECT UsrCod,%s"
|
||||||
" FROM usr_figures"
|
" FROM usr_figures"
|
||||||
" WHERE %s>=0"
|
" WHERE %s>0"
|
||||||
" AND UsrCod NOT IN (SELECT UsrCod FROM usr_banned)"
|
" AND UsrCod NOT IN (SELECT UsrCod FROM usr_banned)"
|
||||||
" ORDER BY %s DESC,UsrCod LIMIT 100",
|
" ORDER BY %s DESC,UsrCod LIMIT 100",
|
||||||
FieldName,
|
FieldName,
|
||||||
|
@ -1296,7 +1302,7 @@ static void Prf_GetAndShowRankingFigure (const char *FieldName)
|
||||||
" AND degrees.DegCod=courses.DegCod"
|
" AND degrees.DegCod=courses.DegCod"
|
||||||
" AND courses.CrsCod=crs_usr.CrsCod"
|
" AND courses.CrsCod=crs_usr.CrsCod"
|
||||||
" AND crs_usr.UsrCod=usr_figures.UsrCod"
|
" AND crs_usr.UsrCod=usr_figures.UsrCod"
|
||||||
" AND usr_figures.%s>=0"
|
" AND usr_figures.%s>0"
|
||||||
" AND usr_figures.UsrCod NOT IN (SELECT UsrCod FROM usr_banned)"
|
" AND usr_figures.UsrCod NOT IN (SELECT UsrCod FROM usr_banned)"
|
||||||
" ORDER BY usr_figures.%s DESC,usr_figures.UsrCod LIMIT 100",
|
" ORDER BY usr_figures.%s DESC,usr_figures.UsrCod LIMIT 100",
|
||||||
FieldName,
|
FieldName,
|
||||||
|
@ -1313,7 +1319,7 @@ static void Prf_GetAndShowRankingFigure (const char *FieldName)
|
||||||
" AND degrees.DegCod=courses.DegCod"
|
" AND degrees.DegCod=courses.DegCod"
|
||||||
" AND courses.CrsCod=crs_usr.CrsCod"
|
" AND courses.CrsCod=crs_usr.CrsCod"
|
||||||
" AND crs_usr.UsrCod=usr_figures.UsrCod"
|
" AND crs_usr.UsrCod=usr_figures.UsrCod"
|
||||||
" AND usr_figures.%s>=0"
|
" AND usr_figures.%s>0"
|
||||||
" AND usr_figures.UsrCod NOT IN (SELECT UsrCod FROM usr_banned)"
|
" AND usr_figures.UsrCod NOT IN (SELECT UsrCod FROM usr_banned)"
|
||||||
" ORDER BY usr_figures.%s DESC,usr_figures.UsrCod LIMIT 100",
|
" ORDER BY usr_figures.%s DESC,usr_figures.UsrCod LIMIT 100",
|
||||||
FieldName,
|
FieldName,
|
||||||
|
@ -1329,7 +1335,7 @@ static void Prf_GetAndShowRankingFigure (const char *FieldName)
|
||||||
" AND degrees.DegCod=courses.DegCod"
|
" AND degrees.DegCod=courses.DegCod"
|
||||||
" AND courses.CrsCod=crs_usr.CrsCod"
|
" AND courses.CrsCod=crs_usr.CrsCod"
|
||||||
" AND crs_usr.UsrCod=usr_figures.UsrCod"
|
" AND crs_usr.UsrCod=usr_figures.UsrCod"
|
||||||
" AND usr_figures.%s>=0"
|
" AND usr_figures.%s>0"
|
||||||
" AND usr_figures.UsrCod NOT IN (SELECT UsrCod FROM usr_banned)"
|
" AND usr_figures.UsrCod NOT IN (SELECT UsrCod FROM usr_banned)"
|
||||||
" ORDER BY usr_figures.%s DESC,usr_figures.UsrCod LIMIT 100",
|
" ORDER BY usr_figures.%s DESC,usr_figures.UsrCod LIMIT 100",
|
||||||
FieldName,
|
FieldName,
|
||||||
|
@ -1344,7 +1350,7 @@ static void Prf_GetAndShowRankingFigure (const char *FieldName)
|
||||||
" WHERE courses.DegCod=%ld"
|
" WHERE courses.DegCod=%ld"
|
||||||
" AND courses.CrsCod=crs_usr.CrsCod"
|
" AND courses.CrsCod=crs_usr.CrsCod"
|
||||||
" AND crs_usr.UsrCod=usr_figures.UsrCod"
|
" AND crs_usr.UsrCod=usr_figures.UsrCod"
|
||||||
" AND usr_figures.%s>=0"
|
" AND usr_figures.%s>0"
|
||||||
" AND usr_figures.UsrCod NOT IN (SELECT UsrCod FROM usr_banned)"
|
" AND usr_figures.UsrCod NOT IN (SELECT UsrCod FROM usr_banned)"
|
||||||
" ORDER BY usr_figures.%s DESC,usr_figures.UsrCod LIMIT 100",
|
" ORDER BY usr_figures.%s DESC,usr_figures.UsrCod LIMIT 100",
|
||||||
FieldName,
|
FieldName,
|
||||||
|
@ -1358,7 +1364,7 @@ static void Prf_GetAndShowRankingFigure (const char *FieldName)
|
||||||
" FROM crs_usr,usr_figures"
|
" FROM crs_usr,usr_figures"
|
||||||
" WHERE crs_usr.CrsCod=%ld"
|
" WHERE crs_usr.CrsCod=%ld"
|
||||||
" AND crs_usr.UsrCod=usr_figures.UsrCod"
|
" AND crs_usr.UsrCod=usr_figures.UsrCod"
|
||||||
" AND usr_figures.%s>=0"
|
" AND usr_figures.%s>0"
|
||||||
" AND usr_figures.UsrCod NOT IN (SELECT UsrCod FROM usr_banned)"
|
" AND usr_figures.UsrCod NOT IN (SELECT UsrCod FROM usr_banned)"
|
||||||
" ORDER BY usr_figures.%s DESC,usr_figures.UsrCod LIMIT 100",
|
" ORDER BY usr_figures.%s DESC,usr_figures.UsrCod LIMIT 100",
|
||||||
FieldName,
|
FieldName,
|
||||||
|
@ -1602,7 +1608,7 @@ void Prf_GetAndShowRankingClicksPerDay (void)
|
||||||
/************** Show user's photo and nickname in ranking list ***************/
|
/************** Show user's photo and nickname in ranking list ***************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
void Prf_ShowUsrInRanking (struct UsrData *UsrDat,unsigned Rank)
|
static void Prf_ShowUsrInRanking (struct UsrData *UsrDat,unsigned Rank)
|
||||||
{
|
{
|
||||||
extern const char *Txt_Another_user_s_profile;
|
extern const char *Txt_Another_user_s_profile;
|
||||||
bool ShowPhoto;
|
bool ShowPhoto;
|
||||||
|
|
|
@ -76,11 +76,11 @@ void Prf_IncrementNumForPstUsr (long UsrCod);
|
||||||
void Prf_IncrementNumMsgSntUsr (long UsrCod);
|
void Prf_IncrementNumMsgSntUsr (long UsrCod);
|
||||||
|
|
||||||
void Prf_GetAndShowRankingClicks (void);
|
void Prf_GetAndShowRankingClicks (void);
|
||||||
|
void Prf_GetAndShowRankingSocPub (void);
|
||||||
void Prf_GetAndShowRankingFileViews (void);
|
void Prf_GetAndShowRankingFileViews (void);
|
||||||
void Prf_GetAndShowRankingForPst (void);
|
void Prf_GetAndShowRankingForPst (void);
|
||||||
void Prf_GetAndShowRankingMsgSnt (void);
|
void Prf_GetAndShowRankingMsgSnt (void);
|
||||||
void Prf_ShowRankingFigure (MYSQL_RES **mysql_res,unsigned NumUsrs);
|
void Prf_ShowRankingFigure (MYSQL_RES **mysql_res,unsigned NumUsrs);
|
||||||
void Prf_GetAndShowRankingClicksPerDay (void);
|
void Prf_GetAndShowRankingClicksPerDay (void);
|
||||||
void Prf_ShowUsrInRanking (struct UsrData *UsrDat,unsigned Rank);
|
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|
|
@ -5137,7 +5137,7 @@ static void Str_AnalyzeTxtAndStoreNotifyEventToMentionedUsrs (long PubCod,const
|
||||||
unsigned long Soc_GetNumPubsUsr (long UsrCod)
|
unsigned long Soc_GetNumPubsUsr (long UsrCod)
|
||||||
{
|
{
|
||||||
/***** Get number of posts from a user from database *****/
|
/***** Get number of posts from a user from database *****/
|
||||||
return DB_QueryCOUNT ("can not number of social publications from a user",
|
return DB_QueryCOUNT ("can not get number of social publications from a user",
|
||||||
"SELECT COUNT(*) FROM social_pubs"
|
"SELECT COUNT(*) FROM social_pubs"
|
||||||
" WHERE PublisherCod=%ld",
|
" WHERE PublisherCod=%ld",
|
||||||
UsrCod);
|
UsrCod);
|
||||||
|
|
Loading…
Reference in New Issue