diff --git a/swad_action.c b/swad_action.c index 260acdda2..a40e5a185 100644 --- a/swad_action.c +++ b/swad_action.c @@ -849,7 +849,7 @@ Users: 640. ActSeeSignUpReq Show pending requests for inscription in the current course 641. ActReqMdfSevUsr Request the enrollment/removing of several students to / from current course 642. ActLstCon List connected users - ---. ActSeeUsr Show another user's profile + ---. ActReqPubPrf Request @nickname to show a public user's profile 643. ActChgGrp Change my groups 644. ActReqEdiGrp Request the edition of groups @@ -943,6 +943,8 @@ Users: 724. ActRemAllStdCrs Remove all the students from the current course 725. ActReqRemOldUsr Request the complete elimination of old users 726. ActRemOldUsr Eliminate completely old users + + ---. ActSeePubPrf Show a public user's profile Messages: 727. ActSeeNtf Show my recent notifications 728. ActSeeAnn Show global announcements @@ -1337,7 +1339,7 @@ const struct Act_Menu Act_Menu[Tab_NUM_TABS][Act_MAX_OPTIONS_IN_MENU_PER_TAB] = {ActReqMdfSevUsr ,true }, {ActLstCon ,false}, - {ActSeeUsr ,true }, + {ActReqPubPrf ,true }, }, // TabMsg ********** { @@ -2207,7 +2209,7 @@ struct Act_Actions Act_Actions[Act_NUM_ACTIONS] = /* ActSeeSignUpReq */{1057, 7,TabUsr,ActSeeSignUpReq ,0x1F0,0x1F0,0x1F0,Act_CONTENT_NORM,Act_MAIN_WINDOW,NULL ,Enr_ShowEnrollmentRequests ,"enrollmentrequest" }, /* ActReqMdfSevUsr */{ 797, 8,TabUsr,ActReqMdfSevUsr ,0x1FE,0x1FE,0x1FE,Act_CONTENT_NORM,Act_MAIN_WINDOW,NULL ,Enr_ReqAdminUsrs ,"configs" }, /* ActLstCon */{ 995, 9,TabUsr,ActLstCon ,0x1FF,0x1FF,0x1FF,Act_CONTENT_NORM,Act_MAIN_WINDOW,NULL ,Con_ShowConnectedUsrs ,"userplugged" }, - /* ActSeeUsr */{1401,10,TabUsr,ActSeeUsr ,0x1FF,0x1FF,0x1FF,Act_CONTENT_NORM,Act_MAIN_WINDOW,NULL ,Usr_ShowUser ,"prf" }, + /* ActReqPubPrf */{1401,10,TabUsr,ActReqPubPrf ,0x1FF,0x1FF,0x1FF,Act_CONTENT_NORM,Act_MAIN_WINDOW,NULL ,Usr_RequestUserProfile ,"prf" }, // Actions not in menu: /* ActChgGrp */{ 118,-1,TabUsr,ActReqSelGrp ,0x118,0x100,0x000,Act_CONTENT_NORM,Act_MAIN_WINDOW,NULL ,Grp_ChangeMyGrpsAndShowChanges ,NULL}, @@ -2319,6 +2321,8 @@ struct Act_Actions Act_Actions[Act_NUM_ACTIONS] = /* ActReqRemOldUsr */{ 590,-1,TabUsr,ActReqMdfSevUsr ,0x100,0x100,0x100,Act_CONTENT_NORM,Act_MAIN_WINDOW,NULL ,Enr_AskRemoveOldUsrs ,NULL}, /* ActRemOldUsr */{ 773,-1,TabUsr,ActReqMdfSevUsr ,0x100,0x100,0x100,Act_CONTENT_NORM,Act_MAIN_WINDOW,NULL ,Enr_RemoveOldUsrs ,NULL}, + /* ActSeePubPrf */{1402,10,TabUsr,ActReqPubPrf ,0x1FF,0x1FF,0x1FF,Act_CONTENT_NORM,Act_MAIN_WINDOW,NULL ,Usr_ShowUserProfile ,NULL}, + // TabMsg ****************************************************************** // Actions in menu: /* ActSeeNtf */{ 990, 0,TabMsg,ActSeeNtf ,0x1FE,0x1FE,0x1FE,Act_CONTENT_NORM,Act_MAIN_WINDOW,NULL ,Ntf_ShowMyNotifications ,"bell" }, @@ -4045,7 +4049,8 @@ Act_Action_t Act_FromActCodToAction[1+Act_MAX_ACTION_COD] = // Do not reuse uniq ActReqDatComIns, // #1398 ActChgDatComIns, // #1399 ActDowComIns, // #1400 - ActSeeUsr, // #1401 + ActReqPubPrf, // #1401 + ActSeePubPrf, // #1402 }; /*****************************************************************************/ diff --git a/swad_action.h b/swad_action.h index 46f2a6a5e..255093dc6 100644 --- a/swad_action.h +++ b/swad_action.h @@ -69,9 +69,9 @@ typedef enum typedef int Act_Action_t; // Must be a signed type, because -1 is used to indicate obsolete action -#define Act_NUM_ACTIONS (7+52+15+90+73+68+204+184+99+168+28+75) +#define Act_NUM_ACTIONS (7+52+15+90+73+68+204+184+100+168+28+75) -#define Act_MAX_ACTION_COD 1401 +#define Act_MAX_ACTION_COD 1402 #define Act_MAX_OPTIONS_IN_MENU_PER_TAB 20 @@ -867,291 +867,293 @@ typedef int Act_Action_t; // Must be a signed type, because -1 is used to indica /******************************* Users tab ***********************************/ /*****************************************************************************/ // Actions in menu -#define ActReqSelGrp (ActChgNumRowFooGrp+ 1) -#define ActLstInv (ActChgNumRowFooGrp+ 2) -#define ActLstStd (ActChgNumRowFooGrp+ 3) -#define ActSeeAtt (ActChgNumRowFooGrp+ 4) -#define ActLstTch (ActChgNumRowFooGrp+ 5) -#define ActLstAdm (ActChgNumRowFooGrp+ 6) -#define ActReqSignUp (ActChgNumRowFooGrp+ 7) -#define ActSeeSignUpReq (ActChgNumRowFooGrp+ 8) -#define ActReqMdfSevUsr (ActChgNumRowFooGrp+ 9) -#define ActLstCon (ActChgNumRowFooGrp+10) -#define ActSeeUsr (ActChgNumRowFooGrp+11) +#define ActReqSelGrp (ActChgNumRowFooGrp+ 1) +#define ActLstInv (ActChgNumRowFooGrp+ 2) +#define ActLstStd (ActChgNumRowFooGrp+ 3) +#define ActSeeAtt (ActChgNumRowFooGrp+ 4) +#define ActLstTch (ActChgNumRowFooGrp+ 5) +#define ActLstAdm (ActChgNumRowFooGrp+ 6) +#define ActReqSignUp (ActChgNumRowFooGrp+ 7) +#define ActSeeSignUpReq (ActChgNumRowFooGrp+ 8) +#define ActReqMdfSevUsr (ActChgNumRowFooGrp+ 9) +#define ActLstCon (ActChgNumRowFooGrp+ 10) +#define ActReqPubPrf (ActChgNumRowFooGrp+ 11) // Secondary actions -#define ActChgGrp (ActChgNumRowFooGrp+12) -#define ActReqEdiGrp (ActChgNumRowFooGrp+13) -#define ActNewGrpTyp (ActChgNumRowFooGrp+14) -#define ActReqRemGrpTyp (ActChgNumRowFooGrp+15) -#define ActRemGrpTyp (ActChgNumRowFooGrp+16) -#define ActRenGrpTyp (ActChgNumRowFooGrp+17) -#define ActChgMdtGrpTyp (ActChgNumRowFooGrp+18) -#define ActChgMulGrpTyp (ActChgNumRowFooGrp+19) -#define ActChgTimGrpTyp (ActChgNumRowFooGrp+20) -#define ActNewGrp (ActChgNumRowFooGrp+21) -#define ActReqRemGrp (ActChgNumRowFooGrp+22) -#define ActRemGrp (ActChgNumRowFooGrp+23) -#define ActOpeGrp (ActChgNumRowFooGrp+24) -#define ActCloGrp (ActChgNumRowFooGrp+25) -#define ActEnaFilZonGrp (ActChgNumRowFooGrp+26) -#define ActDisFilZonGrp (ActChgNumRowFooGrp+27) -#define ActChgGrpTyp (ActChgNumRowFooGrp+28) -#define ActRenGrp (ActChgNumRowFooGrp+29) -#define ActChgMaxStdGrp (ActChgNumRowFooGrp+30) +#define ActChgGrp (ActChgNumRowFooGrp+ 12) +#define ActReqEdiGrp (ActChgNumRowFooGrp+ 13) +#define ActNewGrpTyp (ActChgNumRowFooGrp+ 14) +#define ActReqRemGrpTyp (ActChgNumRowFooGrp+ 15) +#define ActRemGrpTyp (ActChgNumRowFooGrp+ 16) +#define ActRenGrpTyp (ActChgNumRowFooGrp+ 17) +#define ActChgMdtGrpTyp (ActChgNumRowFooGrp+ 18) +#define ActChgMulGrpTyp (ActChgNumRowFooGrp+ 19) +#define ActChgTimGrpTyp (ActChgNumRowFooGrp+ 20) +#define ActNewGrp (ActChgNumRowFooGrp+ 21) +#define ActReqRemGrp (ActChgNumRowFooGrp+ 22) +#define ActRemGrp (ActChgNumRowFooGrp+ 23) +#define ActOpeGrp (ActChgNumRowFooGrp+ 24) +#define ActCloGrp (ActChgNumRowFooGrp+ 25) +#define ActEnaFilZonGrp (ActChgNumRowFooGrp+ 26) +#define ActDisFilZonGrp (ActChgNumRowFooGrp+ 27) +#define ActChgGrpTyp (ActChgNumRowFooGrp+ 28) +#define ActRenGrp (ActChgNumRowFooGrp+ 29) +#define ActChgMaxStdGrp (ActChgNumRowFooGrp+ 30) -#define ActGetExtLstStd (ActChgNumRowFooGrp+31) -#define ActPrnInvPho (ActChgNumRowFooGrp+32) -#define ActPrnStdPho (ActChgNumRowFooGrp+33) -#define ActPrnTchPho (ActChgNumRowFooGrp+34) -#define ActLstInvAll (ActChgNumRowFooGrp+35) -#define ActLstStdAll (ActChgNumRowFooGrp+36) -#define ActLstTchAll (ActChgNumRowFooGrp+37) -#define ActSeeRecOneStd (ActChgNumRowFooGrp+38) -#define ActSeeRecOneTch (ActChgNumRowFooGrp+39) -#define ActSeeRecSevInv (ActChgNumRowFooGrp+40) -#define ActSeeRecSevStd (ActChgNumRowFooGrp+41) -#define ActSeeRecSevTch (ActChgNumRowFooGrp+42) -#define ActPrnRecSevInv (ActChgNumRowFooGrp+43) -#define ActPrnRecSevStd (ActChgNumRowFooGrp+44) -#define ActPrnRecSevTch (ActChgNumRowFooGrp+45) -#define ActRcvRecOthUsr (ActChgNumRowFooGrp+46) -#define ActEdiRecFie (ActChgNumRowFooGrp+47) -#define ActNewFie (ActChgNumRowFooGrp+48) -#define ActReqRemFie (ActChgNumRowFooGrp+49) -#define ActRemFie (ActChgNumRowFooGrp+50) -#define ActRenFie (ActChgNumRowFooGrp+51) -#define ActChgRowFie (ActChgNumRowFooGrp+52) -#define ActChgVisFie (ActChgNumRowFooGrp+53) +#define ActGetExtLstStd (ActChgNumRowFooGrp+ 31) +#define ActPrnInvPho (ActChgNumRowFooGrp+ 32) +#define ActPrnStdPho (ActChgNumRowFooGrp+ 33) +#define ActPrnTchPho (ActChgNumRowFooGrp+ 34) +#define ActLstInvAll (ActChgNumRowFooGrp+ 35) +#define ActLstStdAll (ActChgNumRowFooGrp+ 36) +#define ActLstTchAll (ActChgNumRowFooGrp+ 37) +#define ActSeeRecOneStd (ActChgNumRowFooGrp+ 38) +#define ActSeeRecOneTch (ActChgNumRowFooGrp+ 39) +#define ActSeeRecSevInv (ActChgNumRowFooGrp+ 40) +#define ActSeeRecSevStd (ActChgNumRowFooGrp+ 41) +#define ActSeeRecSevTch (ActChgNumRowFooGrp+ 42) +#define ActPrnRecSevInv (ActChgNumRowFooGrp+ 43) +#define ActPrnRecSevStd (ActChgNumRowFooGrp+ 44) +#define ActPrnRecSevTch (ActChgNumRowFooGrp+ 45) +#define ActRcvRecOthUsr (ActChgNumRowFooGrp+ 46) +#define ActEdiRecFie (ActChgNumRowFooGrp+ 47) +#define ActNewFie (ActChgNumRowFooGrp+ 48) +#define ActReqRemFie (ActChgNumRowFooGrp+ 49) +#define ActRemFie (ActChgNumRowFooGrp+ 50) +#define ActRenFie (ActChgNumRowFooGrp+ 51) +#define ActChgRowFie (ActChgNumRowFooGrp+ 52) +#define ActChgVisFie (ActChgNumRowFooGrp+ 53) -#define ActReqLstAttStd (ActChgNumRowFooGrp+54) -#define ActSeeLstAttStd (ActChgNumRowFooGrp+55) -#define ActPrnLstAttStd (ActChgNumRowFooGrp+56) -#define ActFrmNewAtt (ActChgNumRowFooGrp+57) -#define ActEdiOneAtt (ActChgNumRowFooGrp+58) -#define ActNewAtt (ActChgNumRowFooGrp+59) -#define ActChgAtt (ActChgNumRowFooGrp+60) -#define ActReqRemAtt (ActChgNumRowFooGrp+61) -#define ActRemAtt (ActChgNumRowFooGrp+62) -#define ActHidAtt (ActChgNumRowFooGrp+63) -#define ActShoAtt (ActChgNumRowFooGrp+64) -#define ActSeeOneAtt (ActChgNumRowFooGrp+65) -#define ActRecAttStd (ActChgNumRowFooGrp+66) -#define ActRecAttMe (ActChgNumRowFooGrp+67) +#define ActReqLstAttStd (ActChgNumRowFooGrp+ 54) +#define ActSeeLstAttStd (ActChgNumRowFooGrp+ 55) +#define ActPrnLstAttStd (ActChgNumRowFooGrp+ 56) +#define ActFrmNewAtt (ActChgNumRowFooGrp+ 57) +#define ActEdiOneAtt (ActChgNumRowFooGrp+ 58) +#define ActNewAtt (ActChgNumRowFooGrp+ 59) +#define ActChgAtt (ActChgNumRowFooGrp+ 60) +#define ActReqRemAtt (ActChgNumRowFooGrp+ 61) +#define ActRemAtt (ActChgNumRowFooGrp+ 62) +#define ActHidAtt (ActChgNumRowFooGrp+ 63) +#define ActShoAtt (ActChgNumRowFooGrp+ 64) +#define ActSeeOneAtt (ActChgNumRowFooGrp+ 65) +#define ActRecAttStd (ActChgNumRowFooGrp+ 66) +#define ActRecAttMe (ActChgNumRowFooGrp+ 67) -#define ActSignUp (ActChgNumRowFooGrp+68) -#define ActReqRejSignUp (ActChgNumRowFooGrp+69) -#define ActRejSignUp (ActChgNumRowFooGrp+70) +#define ActSignUp (ActChgNumRowFooGrp+ 68) +#define ActReqRejSignUp (ActChgNumRowFooGrp+ 69) +#define ActRejSignUp (ActChgNumRowFooGrp+ 70) -#define ActReqMdfOneUsr (ActChgNumRowFooGrp+71) -#define ActReqMdfUsr (ActChgNumRowFooGrp+72) +#define ActReqMdfOneUsr (ActChgNumRowFooGrp+ 71) +#define ActReqMdfUsr (ActChgNumRowFooGrp+ 72) -#define ActReqUsrPho (ActChgNumRowFooGrp+73) -#define ActDetUsrPho (ActChgNumRowFooGrp+74) -#define ActUpdUsrPho (ActChgNumRowFooGrp+75) -#define ActRemUsrPho (ActChgNumRowFooGrp+76) -#define ActCreOthUsrDat (ActChgNumRowFooGrp+77) -#define ActUpdOthUsrDat (ActChgNumRowFooGrp+78) +#define ActReqUsrPho (ActChgNumRowFooGrp+ 73) +#define ActDetUsrPho (ActChgNumRowFooGrp+ 74) +#define ActUpdUsrPho (ActChgNumRowFooGrp+ 75) +#define ActRemUsrPho (ActChgNumRowFooGrp+ 76) +#define ActCreOthUsrDat (ActChgNumRowFooGrp+ 77) +#define ActUpdOthUsrDat (ActChgNumRowFooGrp+ 78) -#define ActReqAccEnrCrs (ActChgNumRowFooGrp+79) -#define ActAccEnrCrs (ActChgNumRowFooGrp+80) -#define ActRemMeCrs (ActChgNumRowFooGrp+81) +#define ActReqAccEnrCrs (ActChgNumRowFooGrp+ 79) +#define ActAccEnrCrs (ActChgNumRowFooGrp+ 80) +#define ActRemMeCrs (ActChgNumRowFooGrp+ 81) -#define ActNewAdmIns (ActChgNumRowFooGrp+82) -#define ActRemAdmIns (ActChgNumRowFooGrp+83) -#define ActNewAdmCtr (ActChgNumRowFooGrp+84) -#define ActRemAdmCtr (ActChgNumRowFooGrp+85) -#define ActNewAdmDeg (ActChgNumRowFooGrp+86) -#define ActRemAdmDeg (ActChgNumRowFooGrp+87) +#define ActNewAdmIns (ActChgNumRowFooGrp+ 82) +#define ActRemAdmIns (ActChgNumRowFooGrp+ 83) +#define ActNewAdmCtr (ActChgNumRowFooGrp+ 84) +#define ActRemAdmCtr (ActChgNumRowFooGrp+ 85) +#define ActNewAdmDeg (ActChgNumRowFooGrp+ 86) +#define ActRemAdmDeg (ActChgNumRowFooGrp+ 87) -#define ActRcvFrmMdfUsrCrs (ActChgNumRowFooGrp+88) -#define ActFrmIDsOthUsr (ActChgNumRowFooGrp+89) -#define ActRemIDOth (ActChgNumRowFooGrp+90) -#define ActNewIDOth (ActChgNumRowFooGrp+91) -#define ActFrmPwdOthUsr (ActChgNumRowFooGrp+92) -#define ActChgPwdOthUsr (ActChgNumRowFooGrp+93) -#define ActRemUsrCrs (ActChgNumRowFooGrp+94) -#define ActRemUsrGbl (ActChgNumRowFooGrp+95) +#define ActRcvFrmMdfUsrCrs (ActChgNumRowFooGrp+ 88) +#define ActFrmIDsOthUsr (ActChgNumRowFooGrp+ 89) +#define ActRemIDOth (ActChgNumRowFooGrp+ 90) +#define ActNewIDOth (ActChgNumRowFooGrp+ 91) +#define ActFrmPwdOthUsr (ActChgNumRowFooGrp+ 92) +#define ActChgPwdOthUsr (ActChgNumRowFooGrp+ 93) +#define ActRemUsrCrs (ActChgNumRowFooGrp+ 94) +#define ActRemUsrGbl (ActChgNumRowFooGrp+ 95) -#define ActReqRemAllStdCrs (ActChgNumRowFooGrp+96) -#define ActRemAllStdCrs (ActChgNumRowFooGrp+97) +#define ActReqRemAllStdCrs (ActChgNumRowFooGrp+ 96) +#define ActRemAllStdCrs (ActChgNumRowFooGrp+ 97) -#define ActReqRemOldUsr (ActChgNumRowFooGrp+98) -#define ActRemOldUsr (ActChgNumRowFooGrp+99) +#define ActReqRemOldUsr (ActChgNumRowFooGrp+ 98) +#define ActRemOldUsr (ActChgNumRowFooGrp+ 99) + +#define ActSeePubPrf (ActChgNumRowFooGrp+100) /*****************************************************************************/ /******************************* Messages tab ********************************/ /*****************************************************************************/ // Actions in menu -#define ActSeeNtf (ActRemOldUsr+ 1) -#define ActSeeAnn (ActRemOldUsr+ 2) -#define ActSeeNot (ActRemOldUsr+ 3) -#define ActSeeFor (ActRemOldUsr+ 4) -#define ActSeeChtRms (ActRemOldUsr+ 5) -#define ActReqMsgUsr (ActRemOldUsr+ 6) -#define ActSeeRcvMsg (ActRemOldUsr+ 7) -#define ActSeeSntMsg (ActRemOldUsr+ 8) -#define ActMaiStd (ActRemOldUsr+ 9) +#define ActSeeNtf (ActSeePubPrf+ 1) +#define ActSeeAnn (ActSeePubPrf+ 2) +#define ActSeeNot (ActSeePubPrf+ 3) +#define ActSeeFor (ActSeePubPrf+ 4) +#define ActSeeChtRms (ActSeePubPrf+ 5) +#define ActReqMsgUsr (ActSeePubPrf+ 6) +#define ActSeeRcvMsg (ActSeePubPrf+ 7) +#define ActSeeSntMsg (ActSeePubPrf+ 8) +#define ActMaiStd (ActSeePubPrf+ 9) // Secondary actions -#define ActWriAnn (ActRemOldUsr+ 10) -#define ActRcvAnn (ActRemOldUsr+ 11) -#define ActRemAnn (ActRemOldUsr+ 12) -#define ActShoNot (ActRemOldUsr+ 13) -#define ActWriNot (ActRemOldUsr+ 14) -#define ActRcvNot (ActRemOldUsr+ 15) -#define ActHidNot (ActRemOldUsr+ 16) -#define ActRevNot (ActRemOldUsr+ 17) -#define ActRemNot (ActRemOldUsr+ 18) -#define ActSeeNewNtf (ActRemOldUsr+ 19) -#define ActMrkNtfSee (ActRemOldUsr+ 20) -#define ActSeeForCrsUsr (ActRemOldUsr+ 21) -#define ActSeeForCrsTch (ActRemOldUsr+ 22) -#define ActSeeForDegUsr (ActRemOldUsr+ 23) -#define ActSeeForDegTch (ActRemOldUsr+ 24) -#define ActSeeForCtrUsr (ActRemOldUsr+ 25) -#define ActSeeForCtrTch (ActRemOldUsr+ 26) -#define ActSeeForInsUsr (ActRemOldUsr+ 27) -#define ActSeeForInsTch (ActRemOldUsr+ 28) -#define ActSeeForGenUsr (ActRemOldUsr+ 29) -#define ActSeeForGenTch (ActRemOldUsr+ 30) -#define ActSeeForSWAUsr (ActRemOldUsr+ 31) -#define ActSeeForSWATch (ActRemOldUsr+ 32) -#define ActSeePstForCrsUsr (ActRemOldUsr+ 33) -#define ActSeePstForCrsTch (ActRemOldUsr+ 34) -#define ActSeePstForDegUsr (ActRemOldUsr+ 35) -#define ActSeePstForDegTch (ActRemOldUsr+ 36) -#define ActSeePstForCtrUsr (ActRemOldUsr+ 37) -#define ActSeePstForCtrTch (ActRemOldUsr+ 38) -#define ActSeePstForInsUsr (ActRemOldUsr+ 39) -#define ActSeePstForInsTch (ActRemOldUsr+ 40) -#define ActSeePstForGenUsr (ActRemOldUsr+ 41) -#define ActSeePstForGenTch (ActRemOldUsr+ 42) -#define ActSeePstForSWAUsr (ActRemOldUsr+ 43) -#define ActSeePstForSWATch (ActRemOldUsr+ 44) -#define ActRcvThrForCrsUsr (ActRemOldUsr+ 45) -#define ActRcvThrForCrsTch (ActRemOldUsr+ 46) -#define ActRcvThrForDegUsr (ActRemOldUsr+ 47) -#define ActRcvThrForDegTch (ActRemOldUsr+ 48) -#define ActRcvThrForCtrUsr (ActRemOldUsr+ 49) -#define ActRcvThrForCtrTch (ActRemOldUsr+ 50) -#define ActRcvThrForInsUsr (ActRemOldUsr+ 51) -#define ActRcvThrForInsTch (ActRemOldUsr+ 52) -#define ActRcvThrForGenUsr (ActRemOldUsr+ 53) -#define ActRcvThrForGenTch (ActRemOldUsr+ 54) -#define ActRcvThrForSWAUsr (ActRemOldUsr+ 55) -#define ActRcvThrForSWATch (ActRemOldUsr+ 56) -#define ActRcvRepForCrsUsr (ActRemOldUsr+ 57) -#define ActRcvRepForCrsTch (ActRemOldUsr+ 58) -#define ActRcvRepForDegUsr (ActRemOldUsr+ 59) -#define ActRcvRepForDegTch (ActRemOldUsr+ 60) -#define ActRcvRepForCtrUsr (ActRemOldUsr+ 61) -#define ActRcvRepForCtrTch (ActRemOldUsr+ 62) -#define ActRcvRepForInsUsr (ActRemOldUsr+ 63) -#define ActRcvRepForInsTch (ActRemOldUsr+ 64) -#define ActRcvRepForGenUsr (ActRemOldUsr+ 65) -#define ActRcvRepForGenTch (ActRemOldUsr+ 66) -#define ActRcvRepForSWAUsr (ActRemOldUsr+ 67) -#define ActRcvRepForSWATch (ActRemOldUsr+ 68) -#define ActReqDelThrCrsUsr (ActRemOldUsr+ 69) -#define ActReqDelThrCrsTch (ActRemOldUsr+ 70) -#define ActReqDelThrDegUsr (ActRemOldUsr+ 71) -#define ActReqDelThrDegTch (ActRemOldUsr+ 72) -#define ActReqDelThrCtrUsr (ActRemOldUsr+ 73) -#define ActReqDelThrCtrTch (ActRemOldUsr+ 74) -#define ActReqDelThrInsUsr (ActRemOldUsr+ 75) -#define ActReqDelThrInsTch (ActRemOldUsr+ 76) -#define ActReqDelThrGenUsr (ActRemOldUsr+ 77) -#define ActReqDelThrGenTch (ActRemOldUsr+ 78) -#define ActReqDelThrSWAUsr (ActRemOldUsr+ 79) -#define ActReqDelThrSWATch (ActRemOldUsr+ 80) -#define ActDelThrForCrsUsr (ActRemOldUsr+ 81) -#define ActDelThrForCrsTch (ActRemOldUsr+ 82) -#define ActDelThrForDegUsr (ActRemOldUsr+ 83) -#define ActDelThrForDegTch (ActRemOldUsr+ 84) -#define ActDelThrForCtrUsr (ActRemOldUsr+ 85) -#define ActDelThrForCtrTch (ActRemOldUsr+ 86) -#define ActDelThrForInsUsr (ActRemOldUsr+ 87) -#define ActDelThrForInsTch (ActRemOldUsr+ 88) -#define ActDelThrForGenUsr (ActRemOldUsr+ 89) -#define ActDelThrForGenTch (ActRemOldUsr+ 90) -#define ActDelThrForSWAUsr (ActRemOldUsr+ 91) -#define ActDelThrForSWATch (ActRemOldUsr+ 92) -#define ActCutThrForCrsUsr (ActRemOldUsr+ 93) -#define ActCutThrForCrsTch (ActRemOldUsr+ 94) -#define ActCutThrForDegUsr (ActRemOldUsr+ 95) -#define ActCutThrForDegTch (ActRemOldUsr+ 96) -#define ActCutThrForCtrUsr (ActRemOldUsr+ 97) -#define ActCutThrForCtrTch (ActRemOldUsr+ 98) -#define ActCutThrForInsUsr (ActRemOldUsr+ 99) -#define ActCutThrForInsTch (ActRemOldUsr+100) -#define ActCutThrForGenUsr (ActRemOldUsr+101) -#define ActCutThrForGenTch (ActRemOldUsr+102) -#define ActCutThrForSWAUsr (ActRemOldUsr+103) -#define ActCutThrForSWATch (ActRemOldUsr+104) -#define ActPasThrForCrsUsr (ActRemOldUsr+105) -#define ActPasThrForCrsTch (ActRemOldUsr+106) -#define ActPasThrForDegUsr (ActRemOldUsr+107) -#define ActPasThrForDegTch (ActRemOldUsr+108) -#define ActPasThrForCtrUsr (ActRemOldUsr+109) -#define ActPasThrForCtrTch (ActRemOldUsr+110) -#define ActPasThrForInsUsr (ActRemOldUsr+111) -#define ActPasThrForInsTch (ActRemOldUsr+112) -#define ActPasThrForGenUsr (ActRemOldUsr+113) -#define ActPasThrForGenTch (ActRemOldUsr+114) -#define ActPasThrForSWAUsr (ActRemOldUsr+115) -#define ActPasThrForSWATch (ActRemOldUsr+116) -#define ActDelPstForCrsUsr (ActRemOldUsr+117) -#define ActDelPstForCrsTch (ActRemOldUsr+118) -#define ActDelPstForDegUsr (ActRemOldUsr+119) -#define ActDelPstForDegTch (ActRemOldUsr+120) -#define ActDelPstForCtrUsr (ActRemOldUsr+121) -#define ActDelPstForCtrTch (ActRemOldUsr+122) -#define ActDelPstForInsUsr (ActRemOldUsr+123) -#define ActDelPstForInsTch (ActRemOldUsr+124) -#define ActDelPstForGenUsr (ActRemOldUsr+125) -#define ActDelPstForGenTch (ActRemOldUsr+126) -#define ActDelPstForSWAUsr (ActRemOldUsr+127) -#define ActDelPstForSWATch (ActRemOldUsr+128) -#define ActEnbPstForCrsUsr (ActRemOldUsr+129) -#define ActEnbPstForCrsTch (ActRemOldUsr+130) -#define ActEnbPstForDegUsr (ActRemOldUsr+131) -#define ActEnbPstForDegTch (ActRemOldUsr+132) -#define ActEnbPstForCtrUsr (ActRemOldUsr+133) -#define ActEnbPstForCtrTch (ActRemOldUsr+134) -#define ActEnbPstForInsUsr (ActRemOldUsr+135) -#define ActEnbPstForInsTch (ActRemOldUsr+136) -#define ActEnbPstForGenUsr (ActRemOldUsr+137) -#define ActEnbPstForGenTch (ActRemOldUsr+138) -#define ActEnbPstForSWAUsr (ActRemOldUsr+139) -#define ActEnbPstForSWATch (ActRemOldUsr+140) -#define ActDisPstForCrsUsr (ActRemOldUsr+141) -#define ActDisPstForCrsTch (ActRemOldUsr+142) -#define ActDisPstForDegUsr (ActRemOldUsr+143) -#define ActDisPstForDegTch (ActRemOldUsr+144) -#define ActDisPstForCtrUsr (ActRemOldUsr+145) -#define ActDisPstForCtrTch (ActRemOldUsr+146) -#define ActDisPstForInsUsr (ActRemOldUsr+147) -#define ActDisPstForInsTch (ActRemOldUsr+148) -#define ActDisPstForGenUsr (ActRemOldUsr+149) -#define ActDisPstForGenTch (ActRemOldUsr+150) -#define ActDisPstForSWAUsr (ActRemOldUsr+151) -#define ActDisPstForSWATch (ActRemOldUsr+152) -#define ActRcvMsgUsr (ActRemOldUsr+153) -#define ActReqDelAllSntMsg (ActRemOldUsr+154) -#define ActReqDelAllRcvMsg (ActRemOldUsr+155) -#define ActDelAllSntMsg (ActRemOldUsr+156) -#define ActDelAllRcvMsg (ActRemOldUsr+157) -#define ActDelSntMsg (ActRemOldUsr+158) -#define ActDelRcvMsg (ActRemOldUsr+159) -#define ActExpSntMsg (ActRemOldUsr+160) -#define ActExpRcvMsg (ActRemOldUsr+161) -#define ActConSntMsg (ActRemOldUsr+162) -#define ActConRcvMsg (ActRemOldUsr+163) -#define ActLstBanUsr (ActRemOldUsr+164) -#define ActBanUsrMsg (ActRemOldUsr+165) -#define ActUnbUsrMsg (ActRemOldUsr+166) -#define ActUnbUsrLst (ActRemOldUsr+167) -#define ActCht (ActRemOldUsr+168) +#define ActWriAnn (ActSeePubPrf+ 10) +#define ActRcvAnn (ActSeePubPrf+ 11) +#define ActRemAnn (ActSeePubPrf+ 12) +#define ActShoNot (ActSeePubPrf+ 13) +#define ActWriNot (ActSeePubPrf+ 14) +#define ActRcvNot (ActSeePubPrf+ 15) +#define ActHidNot (ActSeePubPrf+ 16) +#define ActRevNot (ActSeePubPrf+ 17) +#define ActRemNot (ActSeePubPrf+ 18) +#define ActSeeNewNtf (ActSeePubPrf+ 19) +#define ActMrkNtfSee (ActSeePubPrf+ 20) +#define ActSeeForCrsUsr (ActSeePubPrf+ 21) +#define ActSeeForCrsTch (ActSeePubPrf+ 22) +#define ActSeeForDegUsr (ActSeePubPrf+ 23) +#define ActSeeForDegTch (ActSeePubPrf+ 24) +#define ActSeeForCtrUsr (ActSeePubPrf+ 25) +#define ActSeeForCtrTch (ActSeePubPrf+ 26) +#define ActSeeForInsUsr (ActSeePubPrf+ 27) +#define ActSeeForInsTch (ActSeePubPrf+ 28) +#define ActSeeForGenUsr (ActSeePubPrf+ 29) +#define ActSeeForGenTch (ActSeePubPrf+ 30) +#define ActSeeForSWAUsr (ActSeePubPrf+ 31) +#define ActSeeForSWATch (ActSeePubPrf+ 32) +#define ActSeePstForCrsUsr (ActSeePubPrf+ 33) +#define ActSeePstForCrsTch (ActSeePubPrf+ 34) +#define ActSeePstForDegUsr (ActSeePubPrf+ 35) +#define ActSeePstForDegTch (ActSeePubPrf+ 36) +#define ActSeePstForCtrUsr (ActSeePubPrf+ 37) +#define ActSeePstForCtrTch (ActSeePubPrf+ 38) +#define ActSeePstForInsUsr (ActSeePubPrf+ 39) +#define ActSeePstForInsTch (ActSeePubPrf+ 40) +#define ActSeePstForGenUsr (ActSeePubPrf+ 41) +#define ActSeePstForGenTch (ActSeePubPrf+ 42) +#define ActSeePstForSWAUsr (ActSeePubPrf+ 43) +#define ActSeePstForSWATch (ActSeePubPrf+ 44) +#define ActRcvThrForCrsUsr (ActSeePubPrf+ 45) +#define ActRcvThrForCrsTch (ActSeePubPrf+ 46) +#define ActRcvThrForDegUsr (ActSeePubPrf+ 47) +#define ActRcvThrForDegTch (ActSeePubPrf+ 48) +#define ActRcvThrForCtrUsr (ActSeePubPrf+ 49) +#define ActRcvThrForCtrTch (ActSeePubPrf+ 50) +#define ActRcvThrForInsUsr (ActSeePubPrf+ 51) +#define ActRcvThrForInsTch (ActSeePubPrf+ 52) +#define ActRcvThrForGenUsr (ActSeePubPrf+ 53) +#define ActRcvThrForGenTch (ActSeePubPrf+ 54) +#define ActRcvThrForSWAUsr (ActSeePubPrf+ 55) +#define ActRcvThrForSWATch (ActSeePubPrf+ 56) +#define ActRcvRepForCrsUsr (ActSeePubPrf+ 57) +#define ActRcvRepForCrsTch (ActSeePubPrf+ 58) +#define ActRcvRepForDegUsr (ActSeePubPrf+ 59) +#define ActRcvRepForDegTch (ActSeePubPrf+ 60) +#define ActRcvRepForCtrUsr (ActSeePubPrf+ 61) +#define ActRcvRepForCtrTch (ActSeePubPrf+ 62) +#define ActRcvRepForInsUsr (ActSeePubPrf+ 63) +#define ActRcvRepForInsTch (ActSeePubPrf+ 64) +#define ActRcvRepForGenUsr (ActSeePubPrf+ 65) +#define ActRcvRepForGenTch (ActSeePubPrf+ 66) +#define ActRcvRepForSWAUsr (ActSeePubPrf+ 67) +#define ActRcvRepForSWATch (ActSeePubPrf+ 68) +#define ActReqDelThrCrsUsr (ActSeePubPrf+ 69) +#define ActReqDelThrCrsTch (ActSeePubPrf+ 70) +#define ActReqDelThrDegUsr (ActSeePubPrf+ 71) +#define ActReqDelThrDegTch (ActSeePubPrf+ 72) +#define ActReqDelThrCtrUsr (ActSeePubPrf+ 73) +#define ActReqDelThrCtrTch (ActSeePubPrf+ 74) +#define ActReqDelThrInsUsr (ActSeePubPrf+ 75) +#define ActReqDelThrInsTch (ActSeePubPrf+ 76) +#define ActReqDelThrGenUsr (ActSeePubPrf+ 77) +#define ActReqDelThrGenTch (ActSeePubPrf+ 78) +#define ActReqDelThrSWAUsr (ActSeePubPrf+ 79) +#define ActReqDelThrSWATch (ActSeePubPrf+ 80) +#define ActDelThrForCrsUsr (ActSeePubPrf+ 81) +#define ActDelThrForCrsTch (ActSeePubPrf+ 82) +#define ActDelThrForDegUsr (ActSeePubPrf+ 83) +#define ActDelThrForDegTch (ActSeePubPrf+ 84) +#define ActDelThrForCtrUsr (ActSeePubPrf+ 85) +#define ActDelThrForCtrTch (ActSeePubPrf+ 86) +#define ActDelThrForInsUsr (ActSeePubPrf+ 87) +#define ActDelThrForInsTch (ActSeePubPrf+ 88) +#define ActDelThrForGenUsr (ActSeePubPrf+ 89) +#define ActDelThrForGenTch (ActSeePubPrf+ 90) +#define ActDelThrForSWAUsr (ActSeePubPrf+ 91) +#define ActDelThrForSWATch (ActSeePubPrf+ 92) +#define ActCutThrForCrsUsr (ActSeePubPrf+ 93) +#define ActCutThrForCrsTch (ActSeePubPrf+ 94) +#define ActCutThrForDegUsr (ActSeePubPrf+ 95) +#define ActCutThrForDegTch (ActSeePubPrf+ 96) +#define ActCutThrForCtrUsr (ActSeePubPrf+ 97) +#define ActCutThrForCtrTch (ActSeePubPrf+ 98) +#define ActCutThrForInsUsr (ActSeePubPrf+ 99) +#define ActCutThrForInsTch (ActSeePubPrf+100) +#define ActCutThrForGenUsr (ActSeePubPrf+101) +#define ActCutThrForGenTch (ActSeePubPrf+102) +#define ActCutThrForSWAUsr (ActSeePubPrf+103) +#define ActCutThrForSWATch (ActSeePubPrf+104) +#define ActPasThrForCrsUsr (ActSeePubPrf+105) +#define ActPasThrForCrsTch (ActSeePubPrf+106) +#define ActPasThrForDegUsr (ActSeePubPrf+107) +#define ActPasThrForDegTch (ActSeePubPrf+108) +#define ActPasThrForCtrUsr (ActSeePubPrf+109) +#define ActPasThrForCtrTch (ActSeePubPrf+110) +#define ActPasThrForInsUsr (ActSeePubPrf+111) +#define ActPasThrForInsTch (ActSeePubPrf+112) +#define ActPasThrForGenUsr (ActSeePubPrf+113) +#define ActPasThrForGenTch (ActSeePubPrf+114) +#define ActPasThrForSWAUsr (ActSeePubPrf+115) +#define ActPasThrForSWATch (ActSeePubPrf+116) +#define ActDelPstForCrsUsr (ActSeePubPrf+117) +#define ActDelPstForCrsTch (ActSeePubPrf+118) +#define ActDelPstForDegUsr (ActSeePubPrf+119) +#define ActDelPstForDegTch (ActSeePubPrf+120) +#define ActDelPstForCtrUsr (ActSeePubPrf+121) +#define ActDelPstForCtrTch (ActSeePubPrf+122) +#define ActDelPstForInsUsr (ActSeePubPrf+123) +#define ActDelPstForInsTch (ActSeePubPrf+124) +#define ActDelPstForGenUsr (ActSeePubPrf+125) +#define ActDelPstForGenTch (ActSeePubPrf+126) +#define ActDelPstForSWAUsr (ActSeePubPrf+127) +#define ActDelPstForSWATch (ActSeePubPrf+128) +#define ActEnbPstForCrsUsr (ActSeePubPrf+129) +#define ActEnbPstForCrsTch (ActSeePubPrf+130) +#define ActEnbPstForDegUsr (ActSeePubPrf+131) +#define ActEnbPstForDegTch (ActSeePubPrf+132) +#define ActEnbPstForCtrUsr (ActSeePubPrf+133) +#define ActEnbPstForCtrTch (ActSeePubPrf+134) +#define ActEnbPstForInsUsr (ActSeePubPrf+135) +#define ActEnbPstForInsTch (ActSeePubPrf+136) +#define ActEnbPstForGenUsr (ActSeePubPrf+137) +#define ActEnbPstForGenTch (ActSeePubPrf+138) +#define ActEnbPstForSWAUsr (ActSeePubPrf+139) +#define ActEnbPstForSWATch (ActSeePubPrf+140) +#define ActDisPstForCrsUsr (ActSeePubPrf+141) +#define ActDisPstForCrsTch (ActSeePubPrf+142) +#define ActDisPstForDegUsr (ActSeePubPrf+143) +#define ActDisPstForDegTch (ActSeePubPrf+144) +#define ActDisPstForCtrUsr (ActSeePubPrf+145) +#define ActDisPstForCtrTch (ActSeePubPrf+146) +#define ActDisPstForInsUsr (ActSeePubPrf+147) +#define ActDisPstForInsTch (ActSeePubPrf+148) +#define ActDisPstForGenUsr (ActSeePubPrf+149) +#define ActDisPstForGenTch (ActSeePubPrf+150) +#define ActDisPstForSWAUsr (ActSeePubPrf+151) +#define ActDisPstForSWATch (ActSeePubPrf+152) +#define ActRcvMsgUsr (ActSeePubPrf+153) +#define ActReqDelAllSntMsg (ActSeePubPrf+154) +#define ActReqDelAllRcvMsg (ActSeePubPrf+155) +#define ActDelAllSntMsg (ActSeePubPrf+156) +#define ActDelAllRcvMsg (ActSeePubPrf+157) +#define ActDelSntMsg (ActSeePubPrf+158) +#define ActDelRcvMsg (ActSeePubPrf+159) +#define ActExpSntMsg (ActSeePubPrf+160) +#define ActExpRcvMsg (ActSeePubPrf+161) +#define ActConSntMsg (ActSeePubPrf+162) +#define ActConRcvMsg (ActSeePubPrf+163) +#define ActLstBanUsr (ActSeePubPrf+164) +#define ActBanUsrMsg (ActSeePubPrf+165) +#define ActUnbUsrMsg (ActSeePubPrf+166) +#define ActUnbUsrLst (ActSeePubPrf+167) +#define ActCht (ActSeePubPrf+168) /*****************************************************************************/ /****************************** Statistics tab *******************************/ diff --git a/swad_changelog.h b/swad_changelog.h index e3883733c..19b2abbf7 100644 --- a/swad_changelog.h +++ b/swad_changelog.h @@ -103,12 +103,17 @@ /****************************** Public constants *****************************/ /*****************************************************************************/ -#define Log_PLATFORM_VERSION "SWAD 14.77 (2015/03/04)" +#define Log_PLATFORM_VERSION "SWAD 14.77.1 (2015/03/05)" // 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 | tail -1 /* - Version 14.77 : Mar 04, 2015 New parameter "UsrNick" to go to a user. (178406 lines) + Version 14.77.1: Mar 05, 2015 New option to select the user and then go to his/her public user's profile. (178475 lines) + 2 changes necessary in database: +INSERT INTO actions (ActCod,Language,Obsolete,Txt) VALUES ('1401','es','N','Solicitar perfil de usuario'); +INSERT INTO actions (ActCod,Language,Obsolete,Txt) VALUES ('1402','es','N','Ver perfil de usuario'); + + Version 14.77 : Mar 04, 2015 New parameter "UsrNick" to go to a public user's profile. (178406 lines) Version 14.76.5: Mar 03, 2015 Added new social networks, suggested by Marta Gómez Macías. (178293 lines) 1 change necessary in database: ALTER TABLE usr_webs CHANGE Web Web ENUM('www','500px','delicious','deviantart','edmodo','facebook','flickr','foursquare','github','googleplus','googlescholar','instagram','linkedin','paperli','pinterest','researchgate','scoopit','slideshare','storify','tumblr','twitter','wikipedia','youtube') NOT NULL; diff --git a/swad_parameter.c b/swad_parameter.c index bcc823a7c..8cc39693f 100644 --- a/swad_parameter.c +++ b/swad_parameter.c @@ -303,12 +303,14 @@ void Par_GetMainParameters (void) if ((OtherUsrCod = Nck_GetUsrCodFromNickname (Nickname)) > 0) { Gbl.Usrs.Other.UsrDat.UsrCod = OtherUsrCod; - Gbl.CurrentAct = ActSeeUsr; + Gbl.CurrentAct = ActSeePubPrf; + /* Gbl.CurrentCty.Cty.CtyCod = Gbl.CurrentIns.Ins.InsCod = Gbl.CurrentCtr.Ctr.CtrCod = Gbl.CurrentDeg.Deg.DegCod = Gbl.CurrentCrs.Crs.CrsCod = -1L; + */ } /***** Get tab to activate *****/ diff --git a/swad_record.c b/swad_record.c index c17b99427..9663f0472 100644 --- a/swad_record.c +++ b/swad_record.c @@ -68,6 +68,9 @@ extern const char *Usr_StringsSexDB[Usr_NUM_SEXS]; static void Rec_WriteHeadingRecordFields (void); static void Rec_GetFieldByCod (long FieldCod,char *Name,unsigned *NumLines,Rec_VisibilityRecordFields_t *Visibility); +static void Rec_ShowRecordOneStdCrs (void); +static void Rec_ShowRecordOneTchCrs (void); + static void Rec_GetParamRecordsPerPage (void); static void Rec_WriteFormShowOfficeHours (bool ShowOfficeHours,const char *ListUsrCods); static bool Rec_GetParamShowOfficeHours (void); @@ -991,7 +994,7 @@ void Rec_GetUsrAndShowRecordOneStdCrs (void) /******************** Draw record of one unique student **********************/ /*****************************************************************************/ -void Rec_ShowRecordOneStdCrs (void) +static void Rec_ShowRecordOneStdCrs (void) { /***** Get if student has accepted enrollment in current course *****/ Gbl.Usrs.Other.UsrDat.Accepted = Usr_GetIfUserHasAcceptedEnrollmentInCurrentCrs (Gbl.Usrs.Other.UsrDat.UsrCod); @@ -1147,7 +1150,7 @@ void Rec_GetUsrAndShowRecordOneTchCrs (void) /******************** Draw record of one unique teacher **********************/ /*****************************************************************************/ -void Rec_ShowRecordOneTchCrs (void) +static void Rec_ShowRecordOneTchCrs (void) { extern const char *Txt_TIMETABLE_TYPES[TT_NUM_TIMETABLE_TYPES]; diff --git a/swad_record.h b/swad_record.h index cdcab395f..6ce2286b5 100644 --- a/swad_record.h +++ b/swad_record.h @@ -121,10 +121,8 @@ void Rec_FreeListFields (void); void Rec_PutLinkToEditRecordFields (void); void Rec_ListRecordsInvs (void); void Rec_GetUsrAndShowRecordOneStdCrs (void); -void Rec_ShowRecordOneStdCrs (void); void Rec_ListRecordsStdsCrs (void); void Rec_GetUsrAndShowRecordOneTchCrs (void); -void Rec_ShowRecordOneTchCrs (void); void Rec_ListRecordsTchsCrs (void); void Rec_ShowLinkToPrintPreviewOfRecords (void); void Rec_ShowFormMyCrsRecord (void); diff --git a/swad_text.c b/swad_text.c index 11057ba70..8f9cd91d9 100644 --- a/swad_text.c +++ b/swad_text.c @@ -17339,7 +17339,7 @@ const char *Txt_MENU_TITLE[Tab_NUM_TABS][Act_MAX_OPTIONS_IN_MENU_PER_TAB] = "Conectados" #endif , - // ActSeeUsr + // ActReqPubPrf #if L==0 "Perfil" #elif L==1 @@ -19335,7 +19335,7 @@ const char *Txt_MENU_SUBTITLE[Tab_NUM_TABS][Act_MAX_OPTIONS_IN_MENU_PER_TAB] = "Conectados" #endif , - // ActSeeUsr + // ActReqPubPrf #if L==0 "Perfil" #elif L==1 @@ -46744,6 +46744,27 @@ const char *Txt_View = "Ver"; #endif +const char *Txt_View_a_user_profile = +#if L==0 + "Veure el perfil d'un usuari"; +#elif L==1 + "Benutzer-Profile anzeigen"; +#elif L==2 + "View a user's profile"; +#elif L==3 + "Ver el perfil de un usuario"; +#elif L==4 + "Voir le profil d'un utilisateur"; +#elif L==5 + "Ver el perfil de un usuario"; // Okoteve traducción +#elif L==6 + "Mostra il profilo di un utente"; +#elif L==7 + "Zobacz profil użytkownika"; +#elif L==8 + "Ver o perfil de um utilizador"; +#endif + const char *Txt_View_all_recipients = #if L==0 "Ver todos los destinatarios"; // Necessita traduccio diff --git a/swad_user.c b/swad_user.c index 9be178af4..e3605b672 100644 --- a/swad_user.c +++ b/swad_user.c @@ -7358,14 +7358,63 @@ static float Usr_GetNumUsrsPerCrs (Rol_Role_t Role) } /*****************************************************************************/ -/***************************** Show user's profile ***************************/ +/************************** Request a user's profile *************************/ /*****************************************************************************/ -void Usr_ShowUser (void) +void Usr_RequestUserProfile (void) { + extern const char *Txt_View_a_user_profile; + extern const char *The_ClassFormul[The_NUM_THEMES]; + extern const char *Txt_Nickname; + extern const char *Txt_Continue; + + /***** Start frame *****/ + Lay_StartRoundFrameTable10 (NULL,2,Txt_View_a_user_profile); + fprintf (Gbl.F.Out,"" + ""); + + /***** Form to request user's @nickname *****/ + Act_FormStart (ActSeePubPrf); + fprintf (Gbl.F.Out,"
" + "%s: " + "" + "
", + The_ClassFormul[Gbl.Prefs.Theme], + Txt_Nickname, + Nck_MAX_BYTES_NICKNAME_WITH_ARROBA); + + /***** Send button*****/ + Lay_PutSendButton (Txt_Continue); + fprintf (Gbl.F.Out,""); + + /***** End frame *****/ + fprintf (Gbl.F.Out,"" + ""); + Lay_EndRoundFrameTable10 (); + } + +/*****************************************************************************/ +/*************************** Show a user's profile ***************************/ +/*****************************************************************************/ + +void Usr_ShowUserProfile (void) + { + char Nickname[Nck_MAX_BYTES_NICKNAME_WITH_ARROBA + 1]; + long OtherUsrCod; + /***** Get user *****/ - if (Gbl.Usrs.Other.UsrDat.UsrCod < 0) // Check is user's code is valid - Usr_GetParamOtherUsrCodEncrypted (); + if (Gbl.Usrs.Other.UsrDat.UsrCod < 0) + { + Par_GetParToText ("UsrNick",Nickname,Nck_MAX_BYTES_NICKNAME_WITH_ARROBA); + if ((OtherUsrCod = Nck_GetUsrCodFromNickname (Nickname)) > 0) + { + Gbl.Usrs.Other.UsrDat.UsrCod = OtherUsrCod; + Gbl.CurrentAct = ActSeePubPrf; + } + else + Usr_GetParamOtherUsrCodEncrypted (); + } sprintf (Gbl.Message,"Gbl.Usrs.Other.UsrDat.UsrCod = %ld",Gbl.Usrs.Other.UsrDat.UsrCod); Lay_ShowAlert (Lay_INFO,Gbl.Message); @@ -7375,19 +7424,18 @@ void Usr_ShowUser (void) { if (Gbl.CurrentCrs.Crs.CrsCod > 0) // Course selected { + /* Get user's role in current course */ Gbl.Usrs.Other.UsrDat.RoleInCurrentCrsDB = Rol_GetRoleInCrs (Gbl.CurrentCrs.Crs.CrsCod,Gbl.Usrs.Other.UsrDat.UsrCod); - switch (Gbl.Usrs.Other.UsrDat.RoleInCurrentCrsDB) - { - case Rol_ROLE_STUDENT: - Rec_ShowRecordOneStdCrs (); - break; - case Rol_ROLE_TEACHER: - Rec_ShowRecordOneTchCrs (); - break; - default: - break; - } + /* Get if user has accepted enrollment in current course */ + Gbl.Usrs.Other.UsrDat.Accepted = Usr_GetIfUserHasAcceptedEnrollmentInCurrentCrs (Gbl.Usrs.Other.UsrDat.UsrCod); } + + fprintf (Gbl.F.Out,"
"); + + /***** Common record *****/ + Rec_ShowCommonRecord (Rec_RECORD_LIST,&Gbl.Usrs.Other.UsrDat); + + fprintf (Gbl.F.Out,"
"); } } diff --git a/swad_user.h b/swad_user.h index ae3606cb9..55cd83554 100644 --- a/swad_user.h +++ b/swad_user.h @@ -321,6 +321,7 @@ void Usr_ShowWarningNoUsersFound (Rol_Role_t Role); void Usr_GetAndShowNumUsrsInPlatform (Rol_Role_t Role); -void Usr_ShowUser (void); +void Usr_RequestUserProfile (void); +void Usr_ShowUserProfile (void); #endif