diff --git a/swad_action.c b/swad_action.c index 6f8dd4cd0..07637f69e 100644 --- a/swad_action.c +++ b/swad_action.c @@ -1182,6 +1182,8 @@ Profile: 953. ActRemMyPho Remove my photo 954. ActChgPubPho Change photo privacy + ---. ActEdiPri Edit my privacy + 955. ActReqEdiMyIns Request the edition of my institution, centre and department 956. ActChgCtyMyIns Change the country of my institution 957. ActChgMyIns Change my institution @@ -2591,7 +2593,9 @@ struct Act_Actions Act_Actions[Act_NUM_ACTIONS] = /* ActDetMyPho */{ 693,-1,TabPrf,ActReqEdiRecCom ,0x1FE,0x1FE,0x1FE,Act_CONTENT_DATA,Act_MAIN_WINDOW,NULL ,Pho_RecMyPhotoDetFaces ,NULL}, /* ActUpdMyPho */{ 694,-1,TabPrf,ActReqEdiRecCom ,0x1FE,0x1FE,0x1FE,Act_CONTENT_NORM,Act_MAIN_WINDOW,Pho_UpdateMyPhoto1 ,Pho_UpdateMyPhoto2 ,NULL}, /* ActRemMyPho */{ 428,-1,TabPrf,ActReqEdiRecCom ,0x1FE,0x1FE,0x1FE,Act_CONTENT_NORM,Act_MAIN_WINDOW,Pho_RemoveMyPhoto1 ,Pho_RemoveMyPhoto2 ,NULL}, - /* ActChgPubPho */{ 774,-1,TabPrf,ActReqEdiRecCom ,0x1FE,0x1FE,0x1FE,Act_CONTENT_NORM,Act_MAIN_WINDOW,Pho_ChangePhotoVisibility ,Rec_ShowMyCommonRecordUpd ,NULL}, + /* ActChgPubPho */{ 774,-1,TabPrf,ActReqEdiRecCom ,0x1FE,0x1FE,0x1FE,Act_CONTENT_NORM,Act_MAIN_WINDOW,NULL ,Pho_ChangePhotoVisibility ,NULL}, + + /* ActEdiPri */{1403,-1,TabPrf,ActReqEdiRecCom ,0x1FE,0x1FE,0x1FE,Act_CONTENT_NORM,Act_MAIN_WINDOW,NULL ,Rec_EditMyPrivacy ,NULL}, /* ActReqEdiMyIns */{1165,-1,TabPrf,ActReqEdiRecCom ,0x1FE,0x1FE,0x1FE,Act_CONTENT_NORM,Act_MAIN_WINDOW,NULL ,Rec_ShowFormMyInsCtrDpt ,NULL}, /* ActChgCtyMyIns */{1166,-1,TabPrf,ActReqEdiRecCom ,0x1FE,0x1FE,0x1FE,Act_CONTENT_NORM,Act_MAIN_WINDOW,NULL ,Rec_ChgCountryOfMyInstitution ,NULL}, @@ -4051,6 +4055,7 @@ Act_Action_t Act_FromActCodToAction[1+Act_MAX_ACTION_COD] = // Do not reuse uniq ActDowComIns, // #1400 ActReqPubPrf, // #1401 ActSeePubPrf, // #1402 + ActEdiPri, // #1403 }; /*****************************************************************************/ diff --git a/swad_action.h b/swad_action.h index 255093dc6..36d8c3369 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+100+168+28+75) +#define Act_NUM_ACTIONS (7+52+15+90+73+68+204+184+100+168+28+76) -#define Act_MAX_ACTION_COD 1402 +#define Act_MAX_ACTION_COD 1403 #define Act_MAX_OPTIONS_IN_MENU_PER_TAB 20 @@ -1230,53 +1230,55 @@ typedef int Act_Action_t; // Must be a signed type, because -1 is used to indica #define ActRemMyPho (ActSeeAllStaCrs+31) #define ActChgPubPho (ActSeeAllStaCrs+32) -#define ActReqEdiMyIns (ActSeeAllStaCrs+33) -#define ActChgCtyMyIns (ActSeeAllStaCrs+34) -#define ActChgMyIns (ActSeeAllStaCrs+35) -#define ActChgMyCtr (ActSeeAllStaCrs+36) -#define ActChgMyDpt (ActSeeAllStaCrs+37) -#define ActChgMyOff (ActSeeAllStaCrs+38) -#define ActChgMyOffPho (ActSeeAllStaCrs+39) +#define ActEdiPri (ActSeeAllStaCrs+33) -#define ActReqEdiMyNet (ActSeeAllStaCrs+40) -#define ActChgMyNet (ActSeeAllStaCrs+41) +#define ActReqEdiMyIns (ActSeeAllStaCrs+34) +#define ActChgCtyMyIns (ActSeeAllStaCrs+35) +#define ActChgMyIns (ActSeeAllStaCrs+36) +#define ActChgMyCtr (ActSeeAllStaCrs+37) +#define ActChgMyDpt (ActSeeAllStaCrs+38) +#define ActChgMyOff (ActSeeAllStaCrs+39) +#define ActChgMyOffPho (ActSeeAllStaCrs+40) -#define ActChgLay (ActSeeAllStaCrs+42) -#define ActChgThe (ActSeeAllStaCrs+43) -#define ActReqChgLan (ActSeeAllStaCrs+44) -#define ActChgLan (ActSeeAllStaCrs+45) -#define ActChgCol (ActSeeAllStaCrs+46) -#define ActHidLftCol (ActSeeAllStaCrs+47) -#define ActHidRgtCol (ActSeeAllStaCrs+48) -#define ActShoLftCol (ActSeeAllStaCrs+49) -#define ActShoRgtCol (ActSeeAllStaCrs+50) -#define ActChgIco (ActSeeAllStaCrs+51) -#define ActChgMnu (ActSeeAllStaCrs+52) -#define ActChgNtfPrf (ActSeeAllStaCrs+53) +#define ActReqEdiMyNet (ActSeeAllStaCrs+41) +#define ActChgMyNet (ActSeeAllStaCrs+42) -#define ActPrnUsrQR (ActSeeAllStaCrs+54) +#define ActChgLay (ActSeeAllStaCrs+43) +#define ActChgThe (ActSeeAllStaCrs+44) +#define ActReqChgLan (ActSeeAllStaCrs+45) +#define ActChgLan (ActSeeAllStaCrs+46) +#define ActChgCol (ActSeeAllStaCrs+47) +#define ActHidLftCol (ActSeeAllStaCrs+48) +#define ActHidRgtCol (ActSeeAllStaCrs+49) +#define ActShoLftCol (ActSeeAllStaCrs+50) +#define ActShoRgtCol (ActSeeAllStaCrs+51) +#define ActChgIco (ActSeeAllStaCrs+52) +#define ActChgMnu (ActSeeAllStaCrs+53) +#define ActChgNtfPrf (ActSeeAllStaCrs+54) -#define ActPrnMyTimTbl (ActSeeAllStaCrs+55) -#define ActEdiTut (ActSeeAllStaCrs+56) -#define ActChgTut (ActSeeAllStaCrs+57) -#define ActReqRemFilBrf (ActSeeAllStaCrs+58) -#define ActRemFilBrf (ActSeeAllStaCrs+59) -#define ActRemFolBrf (ActSeeAllStaCrs+60) -#define ActCopBrf (ActSeeAllStaCrs+61) -#define ActPasBrf (ActSeeAllStaCrs+62) -#define ActRemTreBrf (ActSeeAllStaCrs+63) -#define ActFrmCreBrf (ActSeeAllStaCrs+64) -#define ActCreFolBrf (ActSeeAllStaCrs+65) -#define ActCreLnkBrf (ActSeeAllStaCrs+66) -#define ActRenFolBrf (ActSeeAllStaCrs+67) -#define ActRcvFilBrfDZ (ActSeeAllStaCrs+68) -#define ActRcvFilBrfCla (ActSeeAllStaCrs+69) -#define ActExpBrf (ActSeeAllStaCrs+70) -#define ActConBrf (ActSeeAllStaCrs+71) -#define ActZIPBrf (ActSeeAllStaCrs+72) -#define ActReqDatBrf (ActSeeAllStaCrs+73) -#define ActChgDatBrf (ActSeeAllStaCrs+74) -#define ActDowBrf (ActSeeAllStaCrs+75) +#define ActPrnUsrQR (ActSeeAllStaCrs+55) + +#define ActPrnMyTimTbl (ActSeeAllStaCrs+56) +#define ActEdiTut (ActSeeAllStaCrs+57) +#define ActChgTut (ActSeeAllStaCrs+58) +#define ActReqRemFilBrf (ActSeeAllStaCrs+59) +#define ActRemFilBrf (ActSeeAllStaCrs+60) +#define ActRemFolBrf (ActSeeAllStaCrs+61) +#define ActCopBrf (ActSeeAllStaCrs+62) +#define ActPasBrf (ActSeeAllStaCrs+63) +#define ActRemTreBrf (ActSeeAllStaCrs+64) +#define ActFrmCreBrf (ActSeeAllStaCrs+65) +#define ActCreFolBrf (ActSeeAllStaCrs+66) +#define ActCreLnkBrf (ActSeeAllStaCrs+67) +#define ActRenFolBrf (ActSeeAllStaCrs+68) +#define ActRcvFilBrfDZ (ActSeeAllStaCrs+69) +#define ActRcvFilBrfCla (ActSeeAllStaCrs+70) +#define ActExpBrf (ActSeeAllStaCrs+71) +#define ActConBrf (ActSeeAllStaCrs+72) +#define ActZIPBrf (ActSeeAllStaCrs+73) +#define ActReqDatBrf (ActSeeAllStaCrs+74) +#define ActChgDatBrf (ActSeeAllStaCrs+75) +#define ActDowBrf (ActSeeAllStaCrs+76) /*****************************************************************************/ /******************************** Public types *******************************/ diff --git a/swad_changelog.h b/swad_changelog.h index b0da72fc8..51b61e034 100644 --- a/swad_changelog.h +++ b/swad_changelog.h @@ -103,11 +103,12 @@ /****************************** Public constants *****************************/ /*****************************************************************************/ -#define Log_PLATFORM_VERSION "SWAD 14.78.1 (2015/03/06)" +#define Log_PLATFORM_VERSION "SWAD 14.78.2 (2015/03/06)" // 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.78.2: Mar 06, 2015 New action to edit privacy options. (178630 lines) Version 14.78.1: Mar 06, 2015 New link to privacy options (unfinished). (178595 lines) Version 14.78: Mar 06, 2015 Four degrees of visibility in photos. Field PublicPhoto is replaced by field PhotoVisibility in usr_data table. (178577 lines) diff --git a/swad_photo.c b/swad_photo.c index f6df4aca4..27b7927f5 100644 --- a/swad_photo.c +++ b/swad_photo.c @@ -98,8 +98,6 @@ static void Pho_UpdatePhoto1 (struct UsrData *UsrDat); static void Pho_UpdatePhoto2 (void); static void Pho_ClearPhotoName (long UsrCod); -static void Pho_PutFormPhotoVisibility (void); - static long Pho_GetDegWithAvgPhotoLeastRecentlyUpdated (void); static long Pho_GetTimeAvgPhotoWasComputed (long DegCod); static long Pho_GetTimeToComputeAvgPhoto (long DegCod); @@ -250,8 +248,6 @@ void Pho_ReqPhoto (const struct UsrData *UsrDat,bool PhotoExists,const char *Pho /***** Forms to remove photo and make it public *****/ fprintf (Gbl.F.Out,"