From 40114fd0e1e24626139e172ad036ecb3ccb78ab4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Antonio=20Ca=C3=B1as=20Vargas?= Date: Sat, 12 Dec 2015 19:47:10 +0100 Subject: [PATCH] Version 15.64 --- css/{swad15.63.css => swad15.64.css} | 45 ++++++++++- icon/card64x64.gif | Bin 0 -> 425 bytes icon/config64x64.gif | Bin 0 -> 432 bytes icon/folder64x64.gif | Bin 0 -> 363 bytes icon/qr64x64.gif | Bin 0 -> 360 bytes icon/rollcall64x64.gif | Bin 0 -> 430 bytes icon/unfollow64x64.gif | Bin 0 -> 473 bytes js/swad.js | 11 ++- swad_QR.c | 2 +- swad_changelog.h | 6 +- swad_degree.c | 2 +- swad_follow.c | 50 ++++++------ swad_layout.c | 2 +- swad_network.c | 63 +++++++++++---- swad_profile.c | 116 ++++++++++++++------------- swad_record.c | 14 ++-- swad_test.c | 4 +- swad_test_import.c | 2 +- swad_text.c | 24 +++--- 19 files changed, 210 insertions(+), 131 deletions(-) rename css/{swad15.63.css => swad15.64.css} (98%) create mode 100644 icon/card64x64.gif create mode 100644 icon/config64x64.gif create mode 100644 icon/folder64x64.gif create mode 100644 icon/qr64x64.gif create mode 100644 icon/rollcall64x64.gif create mode 100644 icon/unfollow64x64.gif diff --git a/css/swad15.63.css b/css/swad15.64.css similarity index 98% rename from css/swad15.63.css rename to css/swad15.64.css index c259cca0..b6ad6f8c 100644 --- a/css/swad15.63.css +++ b/css/swad15.64.css @@ -1749,11 +1749,25 @@ a:hover img.CENTRE_PHOTO_SHOW } /***************************** Public user's profile *************************/ -#prf_fig_container +#prf_fig_left_container { - text-align:center; + display:inline-block; + box-sizing:border-box; + width:50%; + padding-right:10px; + text-align:right; + vertical-align:top; } -#prf_fig_list +#prf_fig_right_container + { + display:inline-block; + box-sizing:border-box; + width:50%; + padding-left:10px; + text-align:left; + vertical-align:top; + } +.PRF_FIG_LIST { display:inline-block; list-style-type:none; @@ -1771,14 +1785,37 @@ a:hover img.CENTRE_PHOTO_SHOW vertical-align:middle; opacity:0.33; } + +#num_following + { + display:inline-block; + box-sizing:border-box; + width:50%; + padding-right:10px; + text-align:right; + } +#num_followers + { + display:inline-block; + box-sizing:border-box; + width:50%; + padding-left:10px; + text-align:left; + } .FOLLOW + { + display:inline-block; + min-width:125px; + text-align:center; + } +.FOLLOW_NUM { color:#404040; font-size:30pt; font-weight:bold; opacity:0.5; } -.FOLLOW_B +.FOLLOW_NUM_B { color:#404040; font-size:30pt; diff --git a/icon/card64x64.gif b/icon/card64x64.gif new file mode 100644 index 0000000000000000000000000000000000000000..2e8c36e60382dc11ec9b5ad18ef4a9ab922a4810 GIT binary patch literal 425 zcmV;a0apG;Nk%w1VL$*t0J8u9KtMoFPEJx%Qd?VFVq#)zYin|Ha(sMzg@uKQiHVn& zm#3$vtE;QBva-3kx&QzFA^8LW000jFEC2ui06+jh000F3@X1N5y*TU5yZ>M)j$~<` zXsWJk>%L?|0Ca8Nc&_hxfgQY{aL8j+7R01-SP?9rP}_lGgOO?jDotP=)dE@oxErc* zCtq@+P(XCjXxjJ%yiGN5NxoIb8SqRN(0X%~hkYbWSh>>xa zE(1ISo1S`{Eebpeqi3b0ElxSC7nhYRur{)@rVolJ3~Uk!lQanuY(^HeECn`h6$v&z zmb<+rs5k=#2B0{qg5N4p)2`Jc4N(nYvgINOQO>P{>>)Ey((&LZw@d5PyC%b)$n)n4 zV3dL6{*_<^#Sy+vwMvM~$4jA!dPGExLl}_^poCWiJ#H{VQRGO19Ze<+1X1N1lrA}t zY#H+-$C@Aeg~UnoA?cs20E`07GGSkor$g>YI0v<=5DV_CYQ>Sxf{d+O T9V#75wyfE+Xw#}y8vy`2tN62Y literal 0 HcmV?d00001 diff --git a/icon/config64x64.gif b/icon/config64x64.gif new file mode 100644 index 0000000000000000000000000000000000000000..3478c5b718ba83717c9292f94a0af4579aec5295 GIT binary patch literal 432 zcmV;h0Z;x%Nk%w1VL$*t0J8u9KtMoCOG{K#R9aeEV`F1#YHD(Fa(#V$gM)*Lii(nw zlAN5JqN1X$t*yAYxc~qEA^8LW000jFEC2ui06+jh000F3@X1N5y*TU5yZ>M)j$~<` zXsWJk>%K4t%=FB}B~sS~P7*s>z&8rkh#5oUVx(aTj+i4bJ6M{tC}ly@wj8^`77IX7 z47()@Y;-IHzIr)7Kujzmz a2zUh-M)j$~<` zXsWJk>%MR-&mj^3c&-CM!O$ATZa5?WF9@PiCpc0Z%P6kklnkWO>H{lXRJl>a7py#t z$>^nzlx{DLBDZ|l49)L3DhSWF^Y30Ce|KVngK}nuhi!=-i*5#ck7o)laPqZd*Erx;PH77YdhmpTCn7E7)a3pcYw4HZikvb{>TM4g|+WyU+U6uini zaKJm66T{I=tU3b~1lc>e%sdqb;5!;Q;txXSImoCu4ipXUIi~3Vq7wEv))@c_O@MZ; z8wWiTuGm}Wp+G+XBN9BE7lOgVeVWcW3xVw%#*7)!{)uq#O<94Dt5T|5$+D%(moQ_> JoT)Mb06R#_ms9`% literal 0 HcmV?d00001 diff --git a/icon/qr64x64.gif b/icon/qr64x64.gif new file mode 100644 index 0000000000000000000000000000000000000000..d79b2606ba7df7b4eac6b23bacd43d66211a0bba GIT binary patch literal 360 zcmZ?wbhEHbbYO5`*v!D-;Nalr=lB2re+J@!;!hSv1_mYu9guR684N7{0#10Y-fQvt z?C$>w8ht65^D%O(t#MHYt)+NbRHRrab_9%5W zO>CRo(3RgOSss@&y=zv>w8A;bGv>C-&hMVLxOmNqu+9z3D>kg&x_S2Yx=jgtdUu%| zJaqWT(PIntod}rHzjd4Mnal&HLiX>-zP#$fwS?=dnoeH2w=wMAvMmpu-hHwA)znFM zK3=hWwq)Cf1uw6j{eJPu??-xLMdwY9@g@ufa zjFpv@oSdApva-Cqy#N3IA^8LW000jFEC2ui06+jh000F3@X1N5y*TU5yZ>M)j$~<` zXsWJk>%MR-&t@_Jc&_h!FCeZ%Z%8b%0>z{fK&Utb0fq>kmxnRxs{lsjfc z)WCi7GHAnh;b0$q1jkiyDD0EOi4ZGV#H5j4Kn`549)6^h5fw0mBmgG#@Fa={iW-*D z&_RL?j&(2;M)j$~<` zXsWJk>%Q=_6aioZL9xW6GT?!rur^TeK8K-Fc{p+m%c#)c%pic$B>+*iEU;Pat~(io z!vnHJaXuT#&~}zeCdjh{wfP=RllOc|eqDfpLW5OyhC_K|G>bw7Y6y@*Tx1Obl>!ZF z4{?iho|=XNo)Zm=ou_N0Z31s<4Ga?t1YlYOV-F0gF$)F*0s;dG6A3?HHpR!n#0I-8 zphJ=q32#v2Km!|Ur!DhK3400Icn5(@|dI0fD?Y;rh=X%ki> zNHredDg}XcWPvM%0Zd7#aigNeix?}Kx&pD>gm{M?13XX^QsM)U9Z!Z__;KZuFD^}@ zgvfEFOqWUw%nWoBXAl5|I&zY5K%3E{NRuixdf;KmOE8=Ywa3Ee!UGBxXx++{st2ol zNPxXVBIwv9h(N$QD+PeN5j(8{FfonoloKTF255AGk`1tbp{7t^V5#B5Mh(Pb#kjHK P$B-jSo=my2g$MvUBo)GV literal 0 HcmV?d00001 diff --git a/js/swad.js b/js/swad.js index 76d7c1b6..5d0f70c1 100644 --- a/js/swad.js +++ b/js/swad.js @@ -34,7 +34,10 @@ var NumUsrsCon; var ListSeconds = []; var countClockConnected = 0; -// Write a date in client local time +/****************** Write a date in client local time ************************/ +//id is the id of the HTML element in which date will be written +//TimeUTC is the date-time to write in UTC UNIX time format + function writeLocalDateFromUTC(id,TimeUTC) { var d = new Date; var Yea; @@ -53,9 +56,9 @@ function writeLocalDateFromUTC(id,TimeUTC) { } /*************** Write a date-time in client local time **********************/ -// - id is the id of the HTML element in which date-time will be written -// - TimeUTC is the date-time to write in UTC UNIX time format -// - separator is HTML code to write between date and time +// id is the id of the HTML element in which date-time will be written +// TimeUTC is the date-time to write in UTC UNIX time format +// separator is HTML code to write between date and time function writeLocalDateTimeFromUTC(id,TimeUTC,separator) { var d = new Date; diff --git a/swad_QR.c b/swad_QR.c index ee5b49b0..7f6e3059 100644 --- a/swad_QR.c +++ b/swad_QR.c @@ -80,7 +80,7 @@ void QR_PutLinkToPrintQRCode (struct UsrData *UsrDat,bool PrintText) sprintf (NicknameWithArroba,"@%s",UsrDat->Nickname); Par_PutHiddenParamString ("QRString",NicknameWithArroba); Act_LinkFormSubmit (Txt_QR_code,The_ClassFormBold[Gbl.Prefs.Theme]); - Lay_PutIconWithText ("qr16x16.gif",Txt_QR_code,PrintText ? Txt_QR_code : + Lay_PutIconWithText ("qr64x64.gif",Txt_QR_code,PrintText ? Txt_QR_code : NULL); Act_FormEnd (); } diff --git a/swad_changelog.h b/swad_changelog.h index b7d064bc..301c9d79 100644 --- a/swad_changelog.h +++ b/swad_changelog.h @@ -117,12 +117,14 @@ /****************************** Public constants *****************************/ /*****************************************************************************/ -#define Log_PLATFORM_VERSION "SWAD 15.63 (2015/12/12)" -#define CSS_FILE "swad15.63.css" +#define Log_PLATFORM_VERSION "SWAD 15.64 (2015/12/12)" +#define CSS_FILE "swad15.64.css" // 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 15.64: Dec 12, 2015 Changes in layout of user's public profile. + Changes in some small icons. (187004 lines) Version 15.63: Dec 12, 2015 New layout for user's public profile. Fixed bug when removing user's account. (186932 lines) 2 changes necessary in database: diff --git a/swad_degree.c b/swad_degree.c index 29618c98..7a200d22 100644 --- a/swad_degree.c +++ b/swad_degree.c @@ -3872,7 +3872,7 @@ void Deg_GetAndWriteInsCtrDegAdminBy (long UsrCod,unsigned ColSpan) switch (Sco_GetScopeFromUnsignedStr (row[0])) { case Sco_SCOPE_SYS: // System - fprintf (Gbl.F.Out,"\"%s\"" " %s", diff --git a/swad_follow.c b/swad_follow.c index 598d8c57..9bdf0cf6 100644 --- a/swad_follow.c +++ b/swad_follow.c @@ -44,7 +44,7 @@ /***************************** Private constants *****************************/ /*****************************************************************************/ -#define Fol_NUM_COLUMNS_FOLLOW 5 +#define Fol_NUM_COLUMNS_FOLLOW 3 /*****************************************************************************/ /****************************** Internal types *******************************/ @@ -99,25 +99,25 @@ void Fol_ShowFollowingAndFollowers (const struct UsrData *UsrDat) extern const char *Txt_Following; extern const char *Txt_Followers; - /***** Start table *****/ - fprintf (Gbl.F.Out,"
" - "" - ""); + /***** Start section *****/ + fprintf (Gbl.F.Out,"
"); /***** Followed users *****/ + fprintf (Gbl.F.Out,"
"); Fol_ShowNumberOfFollowingOrFollowers (UsrDat, Fol_GetNumFollowing (UsrDat->UsrCod), ActSeeFlg,Txt_Following); + fprintf (Gbl.F.Out,"
"); /***** Followers *****/ + fprintf (Gbl.F.Out,"
"); Fol_ShowNumberOfFollowingOrFollowers (UsrDat, Fol_GetNumFollowers (UsrDat->UsrCod), ActSeeFlr,Txt_Followers); + fprintf (Gbl.F.Out,"
"); - /***** End table *****/ - fprintf (Gbl.F.Out,"
" - "
" - "
"); + /***** End section *****/ + fprintf (Gbl.F.Out,""); } /*****************************************************************************/ @@ -132,21 +132,21 @@ static void Fol_ShowNumberOfFollowingOrFollowers (const struct UsrData *UsrDat, extern const char *The_ClassForm[The_NUM_THEMES]; extern const char *The_ClassFormBold[The_NUM_THEMES]; + /***** Start container *****/ + fprintf (Gbl.F.Out,"
"); - fprintf (Gbl.F.Out,""); - /* Number */ + /***** Number *****/ fprintf (Gbl.F.Out,"
", - (Gbl.CurrentAct == Action) ? "FOLLOW_B" : - "FOLLOW"); + (Gbl.CurrentAct == Action) ? "FOLLOW_NUM_B" : + "FOLLOW_NUM"); if (NumUsrs) { /* Form to list users */ - Act_FormStartAnchor (Action,"follow"); + Act_FormStartAnchor (Action,"follow_section"); Usr_PutParamUsrCodEncrypted (UsrDat->EncryptedUsrCod); Act_LinkFormSubmit (Title, - (Gbl.CurrentAct == Action) ? "FOLLOW_B" : - "FOLLOW"); + (Gbl.CurrentAct == Action) ? "FOLLOW_NUM_B" : + "FOLLOW_NUM"); } fprintf (Gbl.F.Out,"%u",NumUsrs); if (NumUsrs) @@ -156,14 +156,14 @@ static void Fol_ShowNumberOfFollowingOrFollowers (const struct UsrData *UsrDat, } fprintf (Gbl.F.Out,"
"); - /* Text */ - fprintf (Gbl.F.Out,"
", + /***** Text *****/ + fprintf (Gbl.F.Out,"
", (Gbl.CurrentAct == Action) ? The_ClassFormBold[Gbl.Prefs.Theme] : The_ClassForm[Gbl.Prefs.Theme]); if (NumUsrs) { /* Form to list users */ - Act_FormStartAnchor (Action,"follow"); + Act_FormStartAnchor (Action,"follow_section"); Usr_PutParamUsrCodEncrypted (UsrDat->EncryptedUsrCod); Act_LinkFormSubmit (Title, (Gbl.CurrentAct == Action) ? The_ClassFormBold[Gbl.Prefs.Theme] : @@ -175,8 +175,10 @@ static void Fol_ShowNumberOfFollowingOrFollowers (const struct UsrData *UsrDat, fprintf (Gbl.F.Out,""); Act_FormEnd (); } - fprintf (Gbl.F.Out,"
" - ""); + fprintf (Gbl.F.Out,"
"); + + /***** End container *****/ + fprintf (Gbl.F.Out,"
"); } /*****************************************************************************/ @@ -385,7 +387,7 @@ static void Fol_ShowFollowedOrFollower (const struct UsrData *UsrDat) Usr_PutParamUsrCodEncrypted (UsrDat->EncryptedUsrCod); Act_LinkFormSubmit (Txt_Unfollow,NULL); fprintf (Gbl.F.Out,"
" - "\"%s\"" "
" @@ -400,7 +402,7 @@ static void Fol_ShowFollowedOrFollower (const struct UsrData *UsrDat) Usr_PutParamUsrCodEncrypted (UsrDat->EncryptedUsrCod); Act_LinkFormSubmit (Txt_Follow,NULL); fprintf (Gbl.F.Out,"
" - "\"%s\"" "
" diff --git a/swad_layout.c b/swad_layout.c index 93d01caa..4c09f6af 100644 --- a/swad_layout.c +++ b/swad_layout.c @@ -968,7 +968,7 @@ void Lay_PutIconWithText (const char *Icon,const char *Alt,const char *Text) void Lay_PutCalculateIconWithText (const char *Alt,const char *Text) { fprintf (Gbl.F.Out,"
" + " style=\"margin:0 6px 0 0; display:inline;\">" "\"%s\"" diff --git a/swad_network.c b/swad_network.c index 4aec04d5..5bd98ae5 100644 --- a/swad_network.c +++ b/swad_network.c @@ -110,7 +110,40 @@ const char *Net_WebsAndSocialNetworksDB[Net_NUM_WEBS_AND_SOCIAL_NETWORKS] = "youtube", // Net_YOUTUBE }; -const char *Net_TitleWebsAndSocialNetworks[Net_NUM_WEBS_AND_SOCIAL_NETWORKS] = +const char *Net_WebsAndSocialNetworksIcons[Net_NUM_WEBS_AND_SOCIAL_NETWORKS] = + { + "www16x16.gif", // Net_WWW + "500px16x16.gif", // Net_500PX + "delicious16x16.gif", // Net_DELICIOUS + "deviantart16x16.gif", // Net_DEVIANTART + "diaspora16x16.gif", // Net_DIASPORA + "edmodo16x16.gif", // Net_EDMODO + "facebook16x16.gif", // Net_FACEBOOK + "flickr16x16.gif", // Net_FLICKR + "foursquare16x16.gif", // Net_FOURSQUAREhub + "github16x16.gif", // Net_GITHUB + "gnusocial16x16.gif", // Net_GNU_SOCIAL + "googleplus16x16.gif", // Net_GOOGLE_PLUS + "googlescholar16x16.gif", // Net_GOOGLE_SCHOLAR + "identica16x16.gif", // Net_IDENTICA + "instagram16x16.gif", // Net_INSTAGRAM + "linkedin16x16.gif", // Net_LINKEDIN + "orcid16x16.gif", // Net_ORCID + "paperli16x16.gif", // Net_PAPERLI + "pinterest16x16.gif", // Net_PINTEREST + "quitter16x16.gif", // Net_QUITTER + "researchgate16x16.gif", // Net_RESEARCH_GATE + "researcherid16x16.gif", // Net_RESEARCHERID + "scoopit16x16.gif", // Net_SCOOPIT + "slideshare16x16.gif", // Net_SLIDESHARE + "storify16x16.gif", // Net_STORIFY + "tumblr16x16.gif", // Net_TUMBLR + "twitter16x16.gif", // Net_TWITTER + "wikipedia16x16.gif", // Net_WIKIPEDIA + "youtube16x16.gif", // Net_YOUTUBE + }; + +const char *Net_WebsAndSocialNetworksTitle[Net_NUM_WEBS_AND_SOCIAL_NETWORKS] = { "WWW", // Net_WWW "500px", // Net_500PX @@ -168,7 +201,7 @@ void Net_ShowWebsAndSocialNets (const struct UsrData *UsrDat) /***** Show link to public profile *****/ Net_ShowAWebOrSocialNet (Prf_GetURLPublicProfile (URL,UsrDat->Nickname), - "swad",Cfg_PLATFORM_PAGE_TITLE); + "swad64x64.gif",Cfg_PLATFORM_PAGE_TITLE); /***** Show the rest of webs / social networks *****/ for (NumURL = (Net_WebsAndSocialNetworks_t) 0; @@ -190,8 +223,8 @@ void Net_ShowWebsAndSocialNets (const struct UsrData *UsrDat) /* Show the web / social network */ Net_ShowAWebOrSocialNet (URL, - Net_WebsAndSocialNetworksDB[NumURL], - Net_TitleWebsAndSocialNetworks[NumURL]); + Net_WebsAndSocialNetworksIcons[NumURL], + Net_WebsAndSocialNetworksTitle[NumURL]); } /***** Free structure that stores the query result *****/ @@ -213,7 +246,7 @@ static void Net_ShowAWebOrSocialNet (const char *URL, fprintf (Gbl.F.Out,"
" "" - "\"%s\"" "" @@ -271,17 +304,17 @@ void Net_ShowFormMyWebsAndSocialNets (void) /***** Row for this web / social network *****/ fprintf (Gbl.F.Out,"" "" - "\"%s\"" "%s:" "", The_ClassForm[Gbl.Prefs.Theme], - Gbl.Prefs.IconsURL,Net_WebsAndSocialNetworksDB[NumURL], - Net_TitleWebsAndSocialNetworks[NumURL], - Net_TitleWebsAndSocialNetworks[NumURL], - Net_TitleWebsAndSocialNetworks[NumURL], + Gbl.Prefs.IconsURL,Net_WebsAndSocialNetworksIcons[NumURL], + Net_WebsAndSocialNetworksTitle[NumURL], + Net_WebsAndSocialNetworksTitle[NumURL], + Net_WebsAndSocialNetworksTitle[NumURL], Net_COL2_WIDTH); Act_FormStart (ActChgMyNet); Par_PutHiddenParamUnsigned ("Web",(unsigned) NumURL); @@ -489,7 +522,7 @@ void Net_ShowWebAndSocialNetworksStats (void) fprintf (Gbl.F.Out,"" "" - "\"%s\"" @@ -501,10 +534,10 @@ void Net_ShowWebAndSocialNetworksStats (void) "%.2f%%" "" "", - Gbl.Prefs.IconsURL,Net_WebsAndSocialNetworksDB[Web], - Net_TitleWebsAndSocialNetworks[Web], - Net_TitleWebsAndSocialNetworks[Web], - Net_TitleWebsAndSocialNetworks[Web], + Gbl.Prefs.IconsURL,Net_WebsAndSocialNetworksIcons[Web], + Net_WebsAndSocialNetworksTitle[Web], + Net_WebsAndSocialNetworksTitle[Web], + Net_WebsAndSocialNetworksTitle[Web], NumUsrs, NumUsrsTotalInPlatform ? 100.0 * (float) NumUsrs / (float) NumUsrsTotalInPlatform : 0.0); diff --git a/swad_profile.c b/swad_profile.c index 25578d3b..f921c155 100644 --- a/swad_profile.c +++ b/swad_profile.c @@ -215,7 +215,8 @@ static void Prf_GetUsrDatAndShowUserProfile (void) bool Prf_ShowUserProfile (void) { /***** Check if I can see the public profile *****/ - if (Pri_ShowIsAllowed (Gbl.Usrs.Other.UsrDat.ProfileVisibility,Gbl.Usrs.Other.UsrDat.UsrCod)) + if (Pri_ShowIsAllowed (Gbl.Usrs.Other.UsrDat.ProfileVisibility, + Gbl.Usrs.Other.UsrDat.UsrCod)) { if (Gbl.CurrentCrs.Crs.CrsCod > 0) // Course selected { @@ -275,7 +276,7 @@ void Prf_ChangeProfileVisibility (void) static void Prf_ShowDetailsUserProfile (const struct UsrData *UsrDat) { - extern const char *The_ClassFormBold[The_NUM_THEMES]; + extern const char *The_ClassForm[The_NUM_THEMES]; extern const char *Txt_ROLES_SINGUL_Abc[Rol_NUM_ROLES][Usr_NUM_SEXS]; extern const char *Txt_teachers_ABBREVIATION; extern const char *Txt_students_ABBREVIATION; @@ -304,61 +305,54 @@ static void Prf_ShowDetailsUserProfile (const struct UsrData *UsrDat) struct UsrFigures UsrFigures; unsigned NumCrssUsrIsTeacher; unsigned NumCrssUsrIsStudent; - unsigned NumStds; - unsigned NumTchs; unsigned NumFiles; unsigned NumPublicFiles; - // char StrTimeGenerationInMicroseconds[64]; - /***** Start table *****/ - fprintf (Gbl.F.Out,"
" - "
    "); + /***** Start left list *****/ + fprintf (Gbl.F.Out,"
    " + "
      "); - /***** Number of courses in which the user is teacher or student *****/ - if ((NumCrssUsrIsTeacher = Usr_GetNumCrssOfUsrWithARole (UsrDat->UsrCod,Rol_TEACHER))) - { - NumTchs = Usr_GetNumUsrsInCrssOfAUsr (UsrDat->UsrCod,Rol_TEACHER,Rol_TEACHER); - NumStds = Usr_GetNumUsrsInCrssOfAUsr (UsrDat->UsrCod,Rol_TEACHER,Rol_STUDENT); - fprintf (Gbl.F.Out,"
    • " - "\"%s\"" - "" - "" - "%u %s (%u %s + %u %s)" - "
    • ", - Gbl.Prefs.IconsURL, - Txt_ROLES_SINGUL_Abc[Rol_TEACHER][UsrDat->Sex], - Txt_ROLES_SINGUL_Abc[Rol_TEACHER][UsrDat->Sex], - NumCrssUsrIsTeacher, - (NumCrssUsrIsTeacher == 1) ? Txt_course : - Txt_courses, - NumTchs, + /***** Number of courses in which the user is teacher *****/ + NumCrssUsrIsTeacher = Usr_GetNumCrssOfUsrWithARole (UsrDat->UsrCod,Rol_TEACHER); + fprintf (Gbl.F.Out,"
    • " + "\"%s\"" + "%u %s ", + Gbl.Prefs.IconsURL, + Txt_ROLES_SINGUL_Abc[Rol_TEACHER][UsrDat->Sex], + Txt_ROLES_SINGUL_Abc[Rol_TEACHER][UsrDat->Sex], + NumCrssUsrIsTeacher, + (NumCrssUsrIsTeacher == 1) ? Txt_course : + Txt_courses); + if (NumCrssUsrIsTeacher) + fprintf (Gbl.F.Out,"(%u %s + %u %s)", + Usr_GetNumUsrsInCrssOfAUsr (UsrDat->UsrCod,Rol_TEACHER,Rol_TEACHER), Txt_teachers_ABBREVIATION, - NumStds, + Usr_GetNumUsrsInCrssOfAUsr (UsrDat->UsrCod,Rol_TEACHER,Rol_STUDENT), Txt_students_ABBREVIATION); - } - if ((NumCrssUsrIsStudent = Usr_GetNumCrssOfUsrWithARole (UsrDat->UsrCod,Rol_STUDENT))) - { - NumTchs = Usr_GetNumUsrsInCrssOfAUsr (UsrDat->UsrCod,Rol_STUDENT,Rol_TEACHER); - NumStds = Usr_GetNumUsrsInCrssOfAUsr (UsrDat->UsrCod,Rol_STUDENT,Rol_STUDENT); - fprintf (Gbl.F.Out,"
    • " - "\"%s\"" - "%u %s (%u %s + %u %s)" - "
    • ", - Gbl.Prefs.IconsURL, - Txt_ROLES_SINGUL_Abc[Rol_STUDENT][UsrDat->Sex], - Txt_ROLES_SINGUL_Abc[Rol_STUDENT][UsrDat->Sex], - NumCrssUsrIsStudent, - (NumCrssUsrIsStudent == 1) ? Txt_course : - Txt_courses, - NumTchs, + fprintf (Gbl.F.Out,""); + + /***** Number of courses in which the user is student *****/ + NumCrssUsrIsStudent = Usr_GetNumCrssOfUsrWithARole (UsrDat->UsrCod,Rol_STUDENT); + fprintf (Gbl.F.Out,"
    • " + "\"%s\"" + "%u %s ", + Gbl.Prefs.IconsURL, + Txt_ROLES_SINGUL_Abc[Rol_STUDENT][UsrDat->Sex], + Txt_ROLES_SINGUL_Abc[Rol_STUDENT][UsrDat->Sex], + NumCrssUsrIsStudent, + (NumCrssUsrIsStudent == 1) ? Txt_course : + Txt_courses); + if (NumCrssUsrIsStudent) + fprintf (Gbl.F.Out,"(%u %s + %u %s)", + Usr_GetNumUsrsInCrssOfAUsr (UsrDat->UsrCod,Rol_STUDENT,Rol_TEACHER), Txt_teachers_ABBREVIATION, - NumStds, + Usr_GetNumUsrsInCrssOfAUsr (UsrDat->UsrCod,Rol_STUDENT,Rol_STUDENT), Txt_students_ABBREVIATION); - } + fprintf (Gbl.F.Out,"
    • "); /***** Number of files currently published *****/ if ((NumFiles = Brw_GetNumFilesUsr (UsrDat->UsrCod))) @@ -392,14 +386,14 @@ static void Prf_ShowDetailsUserProfile (const struct UsrData *UsrDat) Txt_From_TIME); if (UsrFigures.FirstClickTimeUTC) { - fprintf (Gbl.F.Out,""); + fprintf (Gbl.F.Out,""); if (UsrFigures.NumDays > 0) fprintf (Gbl.F.Out," (%d %s)", UsrFigures.NumDays, (UsrFigures.NumDays == 1) ? Txt_day : Txt_days); fprintf (Gbl.F.Out,"", (long) UsrFigures.FirstClickTimeUTC); } @@ -408,12 +402,20 @@ static void Prf_ShowDetailsUserProfile (const struct UsrData *UsrDat) /***** Button to fetch and store first click time *****/ Act_FormStart (ActCal1stClkTim); Usr_PutParamUsrCodEncrypted (UsrDat->EncryptedUsrCod); - Act_LinkFormSubmitAnimated (Txt_Calculate,The_ClassFormBold[Gbl.Prefs.Theme]); + Act_LinkFormSubmitAnimated (Txt_Calculate,The_ClassForm[Gbl.Prefs.Theme]); Lay_PutCalculateIconWithText (Txt_Calculate,Txt_Calculate); Act_FormEnd (); } fprintf (Gbl.F.Out,""); + /***** End of right list *****/ + fprintf (Gbl.F.Out,"
    " + "
    "); + + /***** Start left list *****/ + fprintf (Gbl.F.Out,"
    " + "
      "); + UsrIsBannedFromRanking = Usr_CheckIfUsrBanned (UsrDat->UsrCod); if (!UsrIsBannedFromRanking) { @@ -448,7 +450,7 @@ static void Prf_ShowDetailsUserProfile (const struct UsrData *UsrDat) /***** Button to fetch and store number of clicks *****/ Act_FormStart (ActCalNumClk); Usr_PutParamUsrCodEncrypted (UsrDat->EncryptedUsrCod); - Act_LinkFormSubmitAnimated (Txt_Calculate,The_ClassFormBold[Gbl.Prefs.Theme]); + Act_LinkFormSubmitAnimated (Txt_Calculate,The_ClassForm[Gbl.Prefs.Theme]); Lay_PutCalculateIconWithText (Txt_Calculate,Txt_Calculate); Act_FormEnd (); } @@ -483,7 +485,7 @@ static void Prf_ShowDetailsUserProfile (const struct UsrData *UsrDat) /***** Button to fetch and store number of file views *****/ Act_FormStart (ActCalNumFilVie); Usr_PutParamUsrCodEncrypted (UsrDat->EncryptedUsrCod); - Act_LinkFormSubmitAnimated (Txt_Calculate,The_ClassFormBold[Gbl.Prefs.Theme]); + Act_LinkFormSubmitAnimated (Txt_Calculate,The_ClassForm[Gbl.Prefs.Theme]); Lay_PutCalculateIconWithText (Txt_Calculate,Txt_Calculate); Act_FormEnd (); } @@ -518,7 +520,7 @@ static void Prf_ShowDetailsUserProfile (const struct UsrData *UsrDat) /***** Button to fetch and store number of forum posts *****/ Act_FormStart (ActCalNumForPst); Usr_PutParamUsrCodEncrypted (UsrDat->EncryptedUsrCod); - Act_LinkFormSubmitAnimated (Txt_Calculate,The_ClassFormBold[Gbl.Prefs.Theme]); + Act_LinkFormSubmitAnimated (Txt_Calculate,The_ClassForm[Gbl.Prefs.Theme]); Lay_PutCalculateIconWithText (Txt_Calculate,Txt_Calculate); Act_FormEnd (); } @@ -553,14 +555,14 @@ static void Prf_ShowDetailsUserProfile (const struct UsrData *UsrDat) /***** Button to fetch and store number of messages sent *****/ Act_FormStart (ActCalNumMsgSnt); Usr_PutParamUsrCodEncrypted (UsrDat->EncryptedUsrCod); - Act_LinkFormSubmitAnimated (Txt_Calculate,The_ClassFormBold[Gbl.Prefs.Theme]); + Act_LinkFormSubmitAnimated (Txt_Calculate,The_ClassForm[Gbl.Prefs.Theme]); Lay_PutCalculateIconWithText (Txt_Calculate,Txt_Calculate); Act_FormEnd (); } fprintf (Gbl.F.Out,""); } - /***** End of table *****/ + /***** End of right list *****/ fprintf (Gbl.F.Out,"
    " "
    "); } diff --git a/swad_record.c b/swad_record.c index cff98169..ef6305b9 100644 --- a/swad_record.c +++ b/swad_record.c @@ -2219,7 +2219,7 @@ void Rec_ShowSharedUsrRecord (Rec_RecordViewType_t TypeOfView, Act_LinkFormSubmit (Txt_View_record_for_this_course,NULL); fprintf (Gbl.F.Out,"
    " - "\"%s\"" "
    " @@ -2245,7 +2245,7 @@ void Rec_ShowSharedUsrRecord (Rec_RecordViewType_t TypeOfView, Act_LinkFormSubmit (Txt_Admin_user,NULL); fprintf (Gbl.F.Out,"
    " - "\"%s\"" "
    " @@ -2273,7 +2273,7 @@ void Rec_ShowSharedUsrRecord (Rec_RecordViewType_t TypeOfView, Act_LinkFormSubmit (Txt_View_works,ClassData); fprintf (Gbl.F.Out,"
    " - "\"%s\"" "
    " @@ -2295,7 +2295,7 @@ void Rec_ShowSharedUsrRecord (Rec_RecordViewType_t TypeOfView, Act_LinkFormSubmit (Txt_See_exams,ClassData); fprintf (Gbl.F.Out,"
    " - "\"%s\"" "
    " @@ -2323,7 +2323,7 @@ void Rec_ShowSharedUsrRecord (Rec_RecordViewType_t TypeOfView, Act_LinkFormSubmit (Txt_Attendance,ClassData); fprintf (Gbl.F.Out,"
    " - "\"%s\"" "
    " @@ -2366,7 +2366,7 @@ void Rec_ShowSharedUsrRecord (Rec_RecordViewType_t TypeOfView, Act_LinkFormSubmit (Txt_Unfollow,ClassData); fprintf (Gbl.F.Out,"
    " - "\"%s\"" "
    " @@ -2383,7 +2383,7 @@ void Rec_ShowSharedUsrRecord (Rec_RecordViewType_t TypeOfView, Act_LinkFormSubmit (Txt_Follow,ClassData); fprintf (Gbl.F.Out,"
    " - "\"%s\"" "
    " diff --git a/swad_test.c b/swad_test.c index 0c6bd483..578d7b4d 100644 --- a/swad_test.c +++ b/swad_test.c @@ -320,7 +320,7 @@ static void Tst_PutFormToSeeResultsOfUsersTests (void) Act_PutContextualLink (Gbl.Usrs.Me.LoggedRole == Rol_STUDENT ? ActReqSeeMyTstExa : ActReqSeeUsrTstExa, - NULL,"file16x16.gif",Txt_Results_tests); + NULL,"file64x64.gif",Txt_Results_tests); } /*****************************************************************************/ @@ -6348,7 +6348,7 @@ static void Tst_ShowResultsOfTestExams (struct UsrData *UsrDat) Act_FormStart (Gbl.CurrentAct == ActSeeMyTstExa ? ActSeeOneTstExaMe : ActSeeOneTstExaOth); Tst_PutParamTstCod (TstCod); - fprintf (Gbl.F.Out,"", Gbl.Prefs.IconsURL, diff --git a/swad_test_import.c b/swad_test_import.c index 30f43f9e..9ce55205 100644 --- a/swad_test_import.c +++ b/swad_test_import.c @@ -269,7 +269,7 @@ void TsI_CreateXML (unsigned long NumRows,MYSQL_RES *mysql_res) Cfg_HTTPS_URL_SWAD_PUBLIC,Cfg_FOLDER_FILE_BROWSER_TMP, Gbl.FileBrowser.TmpPubDir, The_ClassFormBold[Gbl.Prefs.Theme]); - Lay_PutIconWithText ("file16x16.gif", + Lay_PutIconWithText ("file64x64.gif", Txt_XML_file, Txt_XML_file); } diff --git a/swad_text.c b/swad_text.c index efb987bd..ce63b205 100644 --- a/swad_text.c +++ b/swad_text.c @@ -36901,15 +36901,15 @@ const char *Txt_Student_comment = const char *Txt_Students_ABBREVIATION = // Abbreviation of "Students" #if L==1 - "Estud."; + "Estu."; #elif L==2 "Stud."; #elif L==3 "Stud."; #elif L==4 - "Estud."; + "Estu."; #elif L==5 - "Étud."; + "Étu."; #elif L==6 "Temi."; #elif L==7 @@ -36922,15 +36922,15 @@ const char *Txt_Students_ABBREVIATION = // Abbreviation of "Students" const char *Txt_students_ABBREVIATION = // Abbreviation of "students" #if L==1 - "estud."; + "estu."; #elif L==2 "Stud."; #elif L==3 "stud."; #elif L==4 - "estud."; + "estu."; #elif L==5 - "étud."; + "étu."; #elif L==6 "Temi."; #elif L==7 @@ -38261,17 +38261,17 @@ const char *Txt_Teachers_ABBREVIATION = // Abbreviation of "Teachers" #elif L==2 "Lehr."; #elif L==3 - "Teach."; + "Teac."; #elif L==4 "Prof."; #elif L==5 - "Enseig."; + "Ense."; #elif L==6 "Prof."; // Okoteve traducción #elif L==7 "Prof."; #elif L==8 - "Naucz."; + "Nauc."; #elif L==9 "Prof."; #endif @@ -38282,17 +38282,17 @@ const char *Txt_teachers_ABBREVIATION = // Abbreviation of "Teachers" #elif L==2 "Lehr."; #elif L==3 - "teach."; + "teac."; #elif L==4 "prof."; #elif L==5 - "enseig."; + "ense."; #elif L==6 "prof."; // Okoteve traducción #elif L==7 "prof."; #elif L==8 - "naucz."; + "nauc."; #elif L==9 "prof."; #endif