From 289caba5d9c41c178e47f5e059b2ee67a521c055 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Antonio=20Ca=C3=B1as=20Vargas?= Date: Mon, 16 Mar 2015 16:57:53 +0100 Subject: [PATCH] Version 14.93.1 --- swad_changelog.h | 3 +- swad_profile.c | 78 +++++++++++++++++++++++++++++++++++------------- swad_user.c | 4 +-- 3 files changed, 62 insertions(+), 23 deletions(-) diff --git a/swad_changelog.h b/swad_changelog.h index 56669d26f..8cbd623ce 100644 --- a/swad_changelog.h +++ b/swad_changelog.h @@ -103,11 +103,12 @@ /****************************** Public constants *****************************/ /*****************************************************************************/ -#define Log_PLATFORM_VERSION "SWAD 14.93 (2015/03/16)" +#define Log_PLATFORM_VERSION "SWAD 14.93.1 (2015/03/16)" // 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 14.93.1: Mar 16, 2015 Photos and links to users' profiles in users' ranking. (182560 lines) Version 14.93: Mar 16, 2015 Users' ranking. (182527 lines) Version 14.92.2: Mar 15, 2015 Fixed minor bug in photo edition. (182208 lines) Version 14.92.1: Mar 14, 2015 Changes on request of a nickname to view user's profile. (182205 lines) diff --git a/swad_profile.c b/swad_profile.c index ba7f68105..3d4c631e7 100644 --- a/swad_profile.c +++ b/swad_profile.c @@ -1124,6 +1124,7 @@ void Prf_IncrementNumMsgSntUsr (long UsrCod) void Prf_GetAndShowRankingClicks (void) { + extern const char *Txt_View_public_profile; char Query[512]; MYSQL_RES *mysql_res; MYSQL_ROW row; @@ -1131,6 +1132,8 @@ void Prf_GetAndShowRankingClicks (void) unsigned NumUsr; struct UsrData UsrDat; unsigned long NumClicks; + bool ShowPhoto; + char PhotoURL[PATH_MAX+1]; /***** Get ranking from database *****/ switch (Gbl.Scope.Current) @@ -1139,7 +1142,7 @@ void Prf_GetAndShowRankingClicks (void) sprintf (Query,"SELECT UsrCod,NumClicks" " FROM usr_figures" " WHERE NumClicks>='0'" - " ORDER BY NumClicks DESC LIMIT 10"); + " ORDER BY NumClicks DESC LIMIT 100"); break; case Sco_SCOPE_CTY: sprintf (Query,"SELECT DISTINCTROW usr_figures.UsrCod,usr_figures.NumClicks" @@ -1151,7 +1154,7 @@ void Prf_GetAndShowRankingClicks (void) " AND courses.CrsCod=crs_usr.CrsCod" " AND crs_usr.UsrCod=usr_figures.UsrCod" " AND usr_figures.NumClicks>='0'" - " ORDER BY usr_figures.NumClicks DESC LIMIT 10", + " ORDER BY usr_figures.NumClicks DESC LIMIT 100", Gbl.CurrentCty.Cty.CtyCod); break; case Sco_SCOPE_INS: @@ -1163,7 +1166,7 @@ void Prf_GetAndShowRankingClicks (void) " AND courses.CrsCod=crs_usr.CrsCod" " AND crs_usr.UsrCod=usr_figures.UsrCod" " AND usr_figures.NumClicks>='0'" - " ORDER BY usr_figures.NumClicks DESC LIMIT 10", + " ORDER BY usr_figures.NumClicks DESC LIMIT 100", Gbl.CurrentIns.Ins.InsCod); break; case Sco_SCOPE_CTR: @@ -1174,7 +1177,7 @@ void Prf_GetAndShowRankingClicks (void) " AND courses.CrsCod=crs_usr.CrsCod" " AND crs_usr.UsrCod=usr_figures.UsrCod" " AND usr_figures.NumClicks>='0'" - " ORDER BY usr_figures.NumClicks DESC LIMIT 10", + " ORDER BY usr_figures.NumClicks DESC LIMIT 100", Gbl.CurrentCtr.Ctr.CtrCod); break; case Sco_SCOPE_DEG: @@ -1184,7 +1187,7 @@ void Prf_GetAndShowRankingClicks (void) " AND courses.CrsCod=crs_usr.CrsCod" " AND crs_usr.UsrCod=usr_figures.UsrCod" " AND usr_figures.NumClicks>='0'" - " ORDER BY usr_figures.NumClicks DESC LIMIT 10", + " ORDER BY usr_figures.NumClicks DESC LIMIT 100", Gbl.CurrentDeg.Deg.DegCod); break; case Sco_SCOPE_CRS: @@ -1193,7 +1196,7 @@ void Prf_GetAndShowRankingClicks (void) " WHERE crs_usr.CrsCod='%ld'" " AND crs_usr.UsrCod=usr_figures.UsrCod" " AND usr_figures.NumClicks>='0'" - " ORDER BY usr_figures.NumClicks DESC LIMIT 10", + " ORDER BY usr_figures.NumClicks DESC LIMIT 100", Gbl.CurrentCrs.Crs.CrsCod); break; default: @@ -1225,14 +1228,31 @@ void Prf_GetAndShowRankingClicks (void) /***** Show row *****/ if (UsrDat.Nickname[0]) + { fprintf (Gbl.F.Out,"" "#%u" - "@%s" - "%ld" + "", + NumUsr); + + /* User's photo */ + ShowPhoto = Pho_ShowUsrPhotoIsAllowed (&UsrDat,PhotoURL); + Pho_ShowUsrPhoto (&UsrDat,ShowPhoto ? PhotoURL : + NULL, + "PHOTO18x24",Pho_ZOOM); + + /* Put form to go to public profile */ + Act_FormStart (ActSeePubPrf); + Usr_PutParamOtherUsrCodEncrypted (UsrDat.EncryptedUsrCod); + Act_LinkFormSubmit (Txt_View_public_profile,"DAT"); + fprintf (Gbl.F.Out,"@%s",UsrDat.Nickname); + fprintf (Gbl.F.Out,""); + Act_FormEnd (); + + fprintf (Gbl.F.Out,"" + "%ld" "", - NumUsr, - UsrDat.Nickname, NumClicks); + } } fprintf (Gbl.F.Out,""); @@ -1251,6 +1271,7 @@ void Prf_GetAndShowRankingClicks (void) void Prf_GetAndShowRankingClicksPerDay (void) { + extern const char *Txt_View_public_profile; char Query[512]; MYSQL_RES *mysql_res; MYSQL_ROW row; @@ -1258,6 +1279,8 @@ void Prf_GetAndShowRankingClicksPerDay (void) unsigned NumUsr; struct UsrData UsrDat; float NumClicksPerDay; + bool ShowPhoto; + char PhotoURL[PATH_MAX+1]; /***** Get ranking from database *****/ switch (Gbl.Scope.Current) @@ -1267,7 +1290,7 @@ void Prf_GetAndShowRankingClicksPerDay (void) "NumClicks/(DATEDIFF(NOW(),FirstClickTime)+1) AS NumClicksPerDay" " FROM usr_figures" " WHERE FirstClickTime>0" - " ORDER BY NumClicksPerDay DESC LIMIT 10"); + " ORDER BY NumClicksPerDay DESC LIMIT 100"); break; case Sco_SCOPE_CTY: sprintf (Query,"SELECT DISTINCTROW usr_figures.UsrCod," @@ -1280,7 +1303,7 @@ void Prf_GetAndShowRankingClicksPerDay (void) " AND courses.CrsCod=crs_usr.CrsCod" " AND crs_usr.UsrCod=usr_figures.UsrCod" " AND usr_figures.FirstClickTime>0" - " ORDER BY NumClicksPerDay DESC LIMIT 10", + " ORDER BY NumClicksPerDay DESC LIMIT 100", Gbl.CurrentCty.Cty.CtyCod); break; case Sco_SCOPE_INS: @@ -1293,7 +1316,7 @@ void Prf_GetAndShowRankingClicksPerDay (void) " AND courses.CrsCod=crs_usr.CrsCod" " AND crs_usr.UsrCod=usr_figures.UsrCod" " AND usr_figures.FirstClickTime>0" - " ORDER BY NumClicksPerDay DESC LIMIT 10", + " ORDER BY NumClicksPerDay DESC LIMIT 100", Gbl.CurrentIns.Ins.InsCod); break; case Sco_SCOPE_CTR: @@ -1305,7 +1328,7 @@ void Prf_GetAndShowRankingClicksPerDay (void) " AND courses.CrsCod=crs_usr.CrsCod" " AND crs_usr.UsrCod=usr_figures.UsrCod" " AND usr_figures.FirstClickTime>0'" - " ORDER BY NumClicksPerDay DESC LIMIT 10", + " ORDER BY NumClicksPerDay DESC LIMIT 100", Gbl.CurrentCtr.Ctr.CtrCod); break; case Sco_SCOPE_DEG: @@ -1316,7 +1339,7 @@ void Prf_GetAndShowRankingClicksPerDay (void) " AND courses.CrsCod=crs_usr.CrsCod" " AND crs_usr.UsrCod=usr_figures.UsrCod" " AND usr_figures.FirstClickTime>0" - " ORDER BY NumClicksPerDay DESC LIMIT 10", + " ORDER BY NumClicksPerDay DESC LIMIT 100", Gbl.CurrentDeg.Deg.DegCod); break; case Sco_SCOPE_CRS: @@ -1326,7 +1349,7 @@ void Prf_GetAndShowRankingClicksPerDay (void) " WHERE crs_usr.CrsCod='%ld'" " AND crs_usr.UsrCod=usr_figures.UsrCod" " AND usr_figures.FirstClickTime>0" - " ORDER BY NumClicksPerDay DESC LIMIT 10", + " ORDER BY NumClicksPerDay DESC LIMIT 100", Gbl.CurrentCrs.Crs.CrsCod); break; default: @@ -1360,10 +1383,25 @@ void Prf_GetAndShowRankingClicksPerDay (void) { fprintf (Gbl.F.Out,"" "#%u" - "@%s" - "", - NumUsr, - UsrDat.Nickname); + "", + NumUsr); + + /* User's photo */ + ShowPhoto = Pho_ShowUsrPhotoIsAllowed (&UsrDat,PhotoURL); + Pho_ShowUsrPhoto (&UsrDat,ShowPhoto ? PhotoURL : + NULL, + "PHOTO18x24",Pho_ZOOM); + + /* Put form to go to public profile */ + Act_FormStart (ActSeePubPrf); + Usr_PutParamOtherUsrCodEncrypted (UsrDat.EncryptedUsrCod); + Act_LinkFormSubmit (Txt_View_public_profile,"DAT"); + fprintf (Gbl.F.Out,"@%s",UsrDat.Nickname); + fprintf (Gbl.F.Out,""); + Act_FormEnd (); + + fprintf (Gbl.F.Out,"" + ""); Str_WriteFloatNum (NumClicksPerDay); fprintf (Gbl.F.Out,"" ""); diff --git a/swad_user.c b/swad_user.c index b8f5b39a8..c6f338767 100644 --- a/swad_user.c +++ b/swad_user.c @@ -471,9 +471,9 @@ void Usr_GetUsrDataFromUsrCod (struct UsrData *UsrDat) strncpy (UsrDat->Photo,row[10],sizeof (UsrDat->Photo)-1); UsrDat->PhotoVisibility = Pri_GetVisibilityFromStr (row[11]); UsrDat->ProfileVisibility = Pri_GetVisibilityFromStr (row[12]); - UsrDat->CtyCod = Str_ConvertStrCodToLongCod (row[13]); + UsrDat->CtyCod = Str_ConvertStrCodToLongCod (row[13]); UsrDat->InsCtyCod = Str_ConvertStrCodToLongCod (row[14]); - UsrDat->InsCod = Str_ConvertStrCodToLongCod (row[15]); + UsrDat->InsCod = Str_ConvertStrCodToLongCod (row[15]); UsrDat->Tch.DptCod = Str_ConvertStrCodToLongCod (row[16]); UsrDat->Tch.CtrCod = Str_ConvertStrCodToLongCod (row[17]);