Version18.116

This commit is contained in:
Antonio Cañas Vargas 2019-04-19 13:11:54 +02:00
parent 25c45c3482
commit af9a391f65
12 changed files with 75 additions and 122 deletions

View File

@ -375,8 +375,8 @@ void ID_WriteUsrIDs (struct UsrData *UsrDat,const char *Anchor)
ICanSeeUsrID = ID_ICanSeeOtherUsrIDs (UsrDat);
ICanConfirmUsrID = ICanSeeUsrID &&
(UsrDat->UsrCod != Gbl.Usrs.Me.UsrDat.UsrCod) && // Not me
!Gbl.Form.Inside && // Not inside another form
(UsrDat->UsrCod != Gbl.Usrs.Me.UsrDat.UsrCod) && // Not me
!Gbl.Form.Inside && // Not inside another form
Act_GetBrowserTab (Gbl.Action.Act) == Act_BRW_1ST_TAB; // Only in main browser tab
for (NumID = 0;

View File

@ -1612,12 +1612,12 @@ struct Act_Actions Act_Actions[Act_NUM_ACTIONS] =
/* ActAll */{ 645,-1,TabUnk,ActAll ,0x3F8,0x3C7,0x3C7,0x3C7,0x3C7,0x3C7,0x3C7,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,NULL ,NULL}, // Used for statistics
/* ActUnk */{ 194,-1,TabUnk,ActUnk ,0x3F8,0x3C7,0x3C7,0x3C7,0x3C7,0x3C7,0x3C7,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,NULL ,NULL},
/* ActMnu */{ 2,-1,TabUnk,ActMnu ,0x3F8,0x3C7,0x3C7,0x3C7,0x3C7,0x3C7,0x3C7,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,NULL ,NULL},
/* ActRefCon */{ 845,-1,TabUnk,ActRefCon ,0x3F8,0x3C7,0x3C7,0x3C7,0x3C7,0x3C7,0x3C7,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Lay_RefreshNotifsAndConnected ,NULL},
/* ActRefLstClk */{ 994,-1,TabUnk,ActRefLstClk ,0x3F8,0x3C7,0x3C7,0x3C7,0x3C7,0x3C7,0x3C7,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Lay_RefreshLastClicks ,NULL},
/* ActRefNewSocPubGbl*/{1509,-1,TabUnk,ActRefNewSocPubGbl ,0x3F8,0x3C7,0x3C7,0x3C7,0x3C7,0x3C7,0x3C7,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,TL_RefreshNewTimelineGbl ,NULL},
/* ActRefOldSocPubGbl*/{1510,-1,TabUnk,ActRefOldSocPubGbl ,0x3F8,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,TL_RefreshOldTimelineGbl ,NULL},
/* ActRefOldSocPubUsr*/{1511,-1,TabUnk,ActRefOldSocPubUsr ,0x3F8,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,TL_RefreshOldTimelineUsr ,NULL},
/* ActWebSvc */{ 892,-1,TabUnk,ActWebSvc ,0x3F8,0x3C7,0x3C7,0x3C7,0x3C7,0x3C7,0x3C7,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Plg_WebService ,NULL},
/* ActRefCon */{ 845,-1,TabUnk,ActRefCon ,0x3F8,0x3C7,0x3C7,0x3C7,0x3C7,0x3C7,0x3C7,Act_CONT_NORM,Act_AJAX_RFRESH,NULL ,Lay_RefreshNotifsAndConnected ,NULL},
/* ActRefLstClk */{ 994,-1,TabUnk,ActRefLstClk ,0x3F8,0x3C7,0x3C7,0x3C7,0x3C7,0x3C7,0x3C7,Act_CONT_NORM,Act_AJAX_RFRESH,NULL ,Lay_RefreshLastClicks ,NULL},
/* ActRefNewSocPubGbl*/{1509,-1,TabUnk,ActRefNewSocPubGbl ,0x3F8,0x3C7,0x3C7,0x3C7,0x3C7,0x3C7,0x3C7,Act_CONT_NORM,Act_AJAX_RFRESH,NULL ,TL_RefreshNewTimelineGbl ,NULL},
/* ActRefOldSocPubGbl*/{1510,-1,TabUnk,ActRefOldSocPubGbl ,0x3F8,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,Act_CONT_NORM,Act_AJAX_NORMAL,NULL ,TL_RefreshOldTimelineGbl ,NULL},
/* ActRefOldSocPubUsr*/{1511,-1,TabUnk,ActRefOldSocPubUsr ,0x3F8,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,Act_CONT_NORM,Act_AJAX_NORMAL,NULL ,TL_RefreshOldTimelineUsr ,NULL},
/* ActWebSvc */{ 892,-1,TabUnk,ActWebSvc ,0x3F8,0x3C7,0x3C7,0x3C7,0x3C7,0x3C7,0x3C7,Act_CONT_NORM,Act_WEB_SERVICE,NULL ,Svc_WebService ,NULL},
// TabStr ******************************************************************
/* ActFrmLogIn */{1521, 0,TabStr,ActFrmLogIn , 0,0x001,0x001,0x001,0x001,0x001,0x001,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Usr_WriteLandingPage ,"power-off" },
@ -1639,15 +1639,15 @@ struct Act_Actions Act_Actions[Act_NUM_ACTIONS] =
/* ActRcvSocPstGbl */{1492,-1,TabUnk,ActSeeSocTmlGbl ,0x3F8,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,Act_CONT_DATA,Act_BRW_1ST_TAB,TL_ShowTimelineGbl1 ,TL_ReceivePostGbl ,NULL},
/* ActRcvSocComGbl */{1503,-1,TabUnk,ActSeeSocTmlGbl ,0x3F8,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,Act_CONT_DATA,Act_BRW_1ST_TAB,TL_ShowTimelineGbl1 ,TL_ReceiveCommentGbl ,NULL},
/* ActAllShaSocNotGbl*/{1766,-1,TabUnk,ActSeeSocTmlGbl ,0x3F8,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,TL_ShowAllSharersNoteGbl ,NULL},
/* ActAllFavSocNotGbl*/{1767,-1,TabUnk,ActSeeSocTmlGbl ,0x3F8,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,TL_ShowAllFaversNoteGbl ,NULL},
/* ActAllFavSocComGbl*/{1768,-1,TabUnk,ActSeeSocTmlGbl ,0x3F8,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,TL_ShowAllFaversComGbl ,NULL},
/* ActShaSocNotGbl */{1495,-1,TabUnk,ActSeeSocTmlGbl ,0x3F8,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,TL_ShaNoteGbl ,NULL},
/* ActUnsSocNotGbl */{1496,-1,TabUnk,ActSeeSocTmlGbl ,0x3F8,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,TL_UnsNoteGbl ,NULL},
/* ActFavSocNotGbl */{1512,-1,TabUnk,ActSeeSocTmlGbl ,0x3F8,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,TL_FavNoteGbl ,NULL},
/* ActUnfSocNotGbl */{1513,-1,TabUnk,ActSeeSocTmlGbl ,0x3F8,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,TL_UnfNoteGbl ,NULL},
/* ActFavSocComGbl */{1516,-1,TabUnk,ActSeeSocTmlGbl ,0x3F8,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,TL_FavCommentGbl ,NULL},
/* ActUnfSocComGbl */{1517,-1,TabUnk,ActSeeSocTmlGbl ,0x3F8,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,TL_UnfCommentGbl ,NULL},
/* ActAllShaSocNotGbl*/{1766,-1,TabUnk,ActSeeSocTmlGbl ,0x3F8,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,Act_CONT_NORM,Act_AJAX_NORMAL,NULL ,TL_ShowAllSharersNoteGbl ,NULL},
/* ActAllFavSocNotGbl*/{1767,-1,TabUnk,ActSeeSocTmlGbl ,0x3F8,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,Act_CONT_NORM,Act_AJAX_NORMAL,NULL ,TL_ShowAllFaversNoteGbl ,NULL},
/* ActAllFavSocComGbl*/{1768,-1,TabUnk,ActSeeSocTmlGbl ,0x3F8,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,Act_CONT_NORM,Act_AJAX_NORMAL,NULL ,TL_ShowAllFaversComGbl ,NULL},
/* ActShaSocNotGbl */{1495,-1,TabUnk,ActSeeSocTmlGbl ,0x3F8,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,Act_CONT_NORM,Act_AJAX_NORMAL,NULL ,TL_ShaNoteGbl ,NULL},
/* ActUnsSocNotGbl */{1496,-1,TabUnk,ActSeeSocTmlGbl ,0x3F8,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,Act_CONT_NORM,Act_AJAX_NORMAL,NULL ,TL_UnsNoteGbl ,NULL},
/* ActFavSocNotGbl */{1512,-1,TabUnk,ActSeeSocTmlGbl ,0x3F8,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,Act_CONT_NORM,Act_AJAX_NORMAL,NULL ,TL_FavNoteGbl ,NULL},
/* ActUnfSocNotGbl */{1513,-1,TabUnk,ActSeeSocTmlGbl ,0x3F8,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,Act_CONT_NORM,Act_AJAX_NORMAL,NULL ,TL_UnfNoteGbl ,NULL},
/* ActFavSocComGbl */{1516,-1,TabUnk,ActSeeSocTmlGbl ,0x3F8,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,Act_CONT_NORM,Act_AJAX_NORMAL,NULL ,TL_FavCommentGbl ,NULL},
/* ActUnfSocComGbl */{1517,-1,TabUnk,ActSeeSocTmlGbl ,0x3F8,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,Act_CONT_NORM,Act_AJAX_NORMAL,NULL ,TL_UnfCommentGbl ,NULL},
/* ActReqRemSocPubGbl*/{1494,-1,TabUnk,ActSeeSocTmlGbl ,0x3F8,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,Act_CONT_NORM,Act_BRW_1ST_TAB,TL_ShowTimelineGbl1 ,TL_RequestRemNoteGbl ,NULL},
/* ActRemSocPubGbl */{1493,-1,TabUnk,ActSeeSocTmlGbl ,0x3F8,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,Act_CONT_NORM,Act_BRW_1ST_TAB,TL_ShowTimelineGbl1 ,TL_RemoveNoteGbl ,NULL},
/* ActReqRemSocComGbl*/{1505,-1,TabUnk,ActSeeSocTmlGbl ,0x3F8,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,Act_CONT_NORM,Act_BRW_1ST_TAB,TL_ShowTimelineGbl1 ,TL_RequestRemComGbl ,NULL},
@ -1657,15 +1657,15 @@ struct Act_Actions Act_Actions[Act_NUM_ACTIONS] =
/* ActRcvSocPstUsr */{1498,-1,TabUnk,ActSeeSocPrf ,0x3F8,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,Act_CONT_DATA,Act_BRW_1ST_TAB,NULL ,TL_ReceivePostUsr ,NULL},
/* ActRcvSocComUsr */{1504,-1,TabUnk,ActSeeSocPrf ,0x3F8,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,Act_CONT_DATA,Act_BRW_1ST_TAB,NULL ,TL_ReceiveCommentUsr ,NULL},
/* ActAllShaSocNotUsr*/{1769,-1,TabUnk,ActSeeSocPrf ,0x3F8,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,TL_ShowAllSharersNoteUsr ,NULL},
/* ActAllFavSocNotUsr*/{1770,-1,TabUnk,ActSeeSocPrf ,0x3F8,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,TL_ShowAllFaversNoteUsr ,NULL},
/* ActAllFavSocComUsr*/{1771,-1,TabUnk,ActSeeSocPrf ,0x3F8,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,TL_ShowAllFaversComUsr ,NULL},
/* ActShaSocNotUsr */{1499,-1,TabUnk,ActSeeSocPrf ,0x3F8,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,TL_ShaNoteUsr ,NULL},
/* ActUnsSocNotUsr */{1500,-1,TabUnk,ActSeeSocPrf ,0x3F8,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,TL_UnsNoteUsr ,NULL},
/* ActFavSocNotUsr */{1514,-1,TabUnk,ActSeeSocPrf ,0x3F8,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,TL_FavNoteUsr ,NULL},
/* ActUnfSocNotUsr */{1515,-1,TabUnk,ActSeeSocPrf ,0x3F8,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,TL_UnfNoteUsr ,NULL},
/* ActFavSocComUsr */{1518,-1,TabUnk,ActSeeSocPrf ,0x3F8,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,TL_FavCommentUsr ,NULL},
/* ActUnfSocComUsr */{1519,-1,TabUnk,ActSeeSocPrf ,0x3F8,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,TL_UnfCommentUsr ,NULL},
/* ActAllShaSocNotUsr*/{1769,-1,TabUnk,ActSeeSocPrf ,0x3F8,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,Act_CONT_NORM,Act_AJAX_NORMAL,NULL ,TL_ShowAllSharersNoteUsr ,NULL},
/* ActAllFavSocNotUsr*/{1770,-1,TabUnk,ActSeeSocPrf ,0x3F8,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,Act_CONT_NORM,Act_AJAX_NORMAL,NULL ,TL_ShowAllFaversNoteUsr ,NULL},
/* ActAllFavSocComUsr*/{1771,-1,TabUnk,ActSeeSocPrf ,0x3F8,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,Act_CONT_NORM,Act_AJAX_NORMAL,NULL ,TL_ShowAllFaversComUsr ,NULL},
/* ActShaSocNotUsr */{1499,-1,TabUnk,ActSeeSocPrf ,0x3F8,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,Act_CONT_NORM,Act_AJAX_NORMAL,NULL ,TL_ShaNoteUsr ,NULL},
/* ActUnsSocNotUsr */{1500,-1,TabUnk,ActSeeSocPrf ,0x3F8,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,Act_CONT_NORM,Act_AJAX_NORMAL,NULL ,TL_UnsNoteUsr ,NULL},
/* ActFavSocNotUsr */{1514,-1,TabUnk,ActSeeSocPrf ,0x3F8,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,Act_CONT_NORM,Act_AJAX_NORMAL,NULL ,TL_FavNoteUsr ,NULL},
/* ActUnfSocNotUsr */{1515,-1,TabUnk,ActSeeSocPrf ,0x3F8,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,Act_CONT_NORM,Act_AJAX_NORMAL,NULL ,TL_UnfNoteUsr ,NULL},
/* ActFavSocComUsr */{1518,-1,TabUnk,ActSeeSocPrf ,0x3F8,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,Act_CONT_NORM,Act_AJAX_NORMAL,NULL ,TL_FavCommentUsr ,NULL},
/* ActUnfSocComUsr */{1519,-1,TabUnk,ActSeeSocPrf ,0x3F8,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,Act_CONT_NORM,Act_AJAX_NORMAL,NULL ,TL_UnfCommentUsr ,NULL},
/* ActReqRemSocPubUsr*/{1501,-1,TabUnk,ActSeeSocPrf ,0x3F8,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,TL_RequestRemNoteUsr ,NULL},
/* ActRemSocPubUsr */{1502,-1,TabUnk,ActSeeSocPrf ,0x3F8,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,TL_RemoveNoteUsr ,NULL},
/* ActReqRemSocComGbl*/{1506,-1,TabUnk,ActSeeSocPrf ,0x3F8,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,0x3C6,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,TL_RequestRemComUsr ,NULL},
@ -2049,8 +2049,8 @@ struct Act_Actions Act_Actions[Act_NUM_ACTIONS] =
/* ActRemPrj */{1681,-1,TabUnk,ActSeePrj ,0x230,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Prj_RemoveProject ,NULL},
/* ActHidPrj */{1682,-1,TabUnk,ActSeePrj ,0x230,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Prj_HideProject ,NULL},
/* ActShoPrj */{1683,-1,TabUnk,ActSeePrj ,0x230,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Prj_ShowProject ,NULL},
/* ActLckPrj */{1773,-1,TabUnk,ActSeePrj ,0x220,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Prj_LockProjectEdition ,NULL},
/* ActUnlPrj */{1774,-1,TabUnk,ActSeePrj ,0x220,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Prj_UnlockProjectEdition ,NULL},
/* ActLckPrj */{1773,-1,TabUnk,ActSeePrj ,0x220,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_AJAX_NORMAL,NULL ,Prj_LockProjectEdition ,NULL},
/* ActUnlPrj */{1774,-1,TabUnk,ActSeePrj ,0x220,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_AJAX_NORMAL,NULL ,Prj_UnlockProjectEdition ,NULL},
/* ActReqLckAllPrj */{1775,-1,TabUnk,ActSeePrj ,0x220,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Prj_ReqLockAllProjectsEdition ,NULL},
/* ActReqUnlAllPrj */{1776,-1,TabUnk,ActSeePrj ,0x220,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Prj_ReqUnlockAllProjectsEdition,NULL},
/* ActLckAllPrj */{1777,-1,TabUnk,ActSeePrj ,0x220,0x200, 0, 0, 0, 0, 0,Act_CONT_NORM,Act_BRW_1ST_TAB,NULL ,Prj_LockAllProjectsEdition ,NULL},

View File

@ -54,9 +54,12 @@ typedef enum
Act_BRW_1ST_TAB, // The main (original, first) tab in the browser
Act_BRW_NEW_TAB, // A new (second) blank tab in the browser
Act_BRW_2ND_TAB, // The second tab in the browser
Act_AJAX_NORMAL, // Update a zone of the page using AJAX
Act_AJAX_RFRESH, // Update a zone of the page using AJAX, with auto-refresh
Act_UPLOAD_FILE, // Upload a file. Do not write HTML content. Write Status code instead for Dropzone.js
Act_DOWNLD_FILE, // Download a file in a new tab. Do not write HTML content.
Act_204_NO_CONT, // Do not write HTML content. HTTP will return Status 204 No Content
Act_WEB_SERVICE, // Web service. Send output to client using SOAP.
} Act_BrowserTab_t;
typedef signed int Act_Action_t; // Must be a signed type, because -1 is used to indicate obsolete action

View File

@ -425,8 +425,6 @@ Lo de mutear anuncios, en principio prefiero hacer una opci
// TODO: Check if Feedback is set to "(null)" when importing test questions. Change columns Feedback "(null)" to "" in test questions
// TODO: Select users individually in action to send email
// TODO: Allow timeline posting only for users belonging to courses or admins to avoid user who create accounts only to post
// TODO: Ver cómo recibir un fichero desde el cliente (SWADroid) en gsoap
@ -450,10 +448,11 @@ En OpenSWAD:
ps2pdf source.ps destination.pdf
*/
#define Log_PLATFORM_VERSION "SWAD 18.115 (2019-04-18)"
#define Log_PLATFORM_VERSION "SWAD 18.116 (2019-04-19)"
#define CSS_FILE "swad18.112.1.css"
#define JS_FILE "swad18.114.js"
/*
Version 18.116: Apr 18, 2019 Code refactoring related to actions and AJAX. (243246 lines)
Version 18.115: Apr 18, 2019 Contextual buttons to lock/unlock edition of all projects, suggested by Pedro Villar Castro. (243275 lines)
Version 18.114.3: Apr 18, 2019 Locked edition of a project. (243025 lines)
Version 18.114.2: Apr 18, 2019 Icons to inform about locked/unlocked project edition. (243023 lines)

View File

@ -1486,9 +1486,6 @@ void Lay_RefreshNotifsAndConnected (void)
NumUsr < Gbl.Usrs.Connected.NumUsrsToList;
NumUsr++)
fprintf (Gbl.F.Out,"%ld|",Gbl.Usrs.Connected.Lst[NumUsr].TimeDiff);
/***** All the output is made, so don't write anymore *****/
Gbl.Layout.DivsEndWritten = Gbl.Layout.HTMLEndWritten = true;
}
/*****************************************************************************/
@ -1505,9 +1502,6 @@ void Lay_RefreshLastClicks (void)
/***** Get and show last clicks *****/
Sta_GetAndShowLastClicks ();
}
/***** All the output is made, so don't write anymore *****/
Gbl.Layout.DivsEndWritten = Gbl.Layout.HTMLEndWritten = true;
}
/*****************************************************************************/

View File

@ -131,8 +131,15 @@ int main (void)
Con_RemoveOldConnected ();
/***** Get number of sessions *****/
if (Act_GetBrowserTab (Gbl.Action.Act) == Act_BRW_1ST_TAB)
Ses_GetNumSessions ();
switch (Act_GetBrowserTab (Gbl.Action.Act))
{
case Act_BRW_1ST_TAB:
case Act_AJAX_RFRESH:
Ses_GetNumSessions ();
break;
default:
break;
}
/***** Check user and get user's data *****/
Usr_ChkUsrAndGetUsrData ();
@ -176,6 +183,20 @@ int main (void)
FunctionPosteriori = Act_GetFunctionPosteriori (Gbl.Action.Act);
if (FunctionPosteriori != NULL)
FunctionPosteriori ();
/* When updating a small zone via AJAX, all output is already done */
switch (Act_GetBrowserTab (Gbl.Action.Act))
{
case Act_AJAX_NORMAL:
case Act_AJAX_RFRESH:
case Act_WEB_SERVICE:
/* All the output is made, so don't write anymore */
Gbl.Layout.DivsEndWritten =
Gbl.Layout.HTMLEndWritten = true;
break;
default:
break;
}
}
/***** Cleanup and exit *****/

View File

@ -718,38 +718,24 @@ void Par_GetMainParameters (void)
/***** Get action to perform *****/
ActCod = Par_GetParToLong ("act");
// if (ActCod < 0)
// ActCod = Par_GetParToLong ("ActCod"); // Obsolete, old parameter now replaced by "act"
if (ActCod >= 0 && ActCod <= Act_MAX_ACTION_COD)
Gbl.Action.Act = Gbl.Action.Original = Act_FromActCodToAction[ActCod];
/***** Some preliminary adjusts depending on action *****/
if (Gbl.Action.Act == ActRefCon ||
Gbl.Action.Act == ActRefLstClk ||
Gbl.Action.Act == ActRefNewSocPubGbl)
{
Gbl.Action.UsesAJAX = true;
Gbl.Action.IsAJAXAutoRefresh = true;
}
else if (Gbl.Action.Act == ActRefOldSocPubGbl || Gbl.Action.Act == ActRefOldSocPubUsr ||
Gbl.Action.Act == ActAllShaSocNotGbl || Gbl.Action.Act == ActAllShaSocNotUsr ||
Gbl.Action.Act == ActAllFavSocNotGbl || Gbl.Action.Act == ActAllFavSocNotUsr ||
Gbl.Action.Act == ActAllFavSocComGbl || Gbl.Action.Act == ActAllFavSocComUsr ||
Gbl.Action.Act == ActShaSocNotGbl || Gbl.Action.Act == ActShaSocNotUsr ||
Gbl.Action.Act == ActUnsSocNotGbl || Gbl.Action.Act == ActUnsSocNotUsr ||
Gbl.Action.Act == ActFavSocNotGbl || Gbl.Action.Act == ActFavSocNotUsr ||
Gbl.Action.Act == ActUnfSocNotGbl || Gbl.Action.Act == ActUnfSocNotUsr ||
Gbl.Action.Act == ActFavSocComGbl || Gbl.Action.Act == ActFavSocComUsr ||
Gbl.Action.Act == ActUnfSocComGbl || Gbl.Action.Act == ActUnfSocComUsr ||
Gbl.Action.Act == ActLckPrj || Gbl.Action.Act == ActUnlPrj)
switch (Act_GetBrowserTab (Gbl.Action.Act))
{
Gbl.Action.UsesAJAX = true;
Gbl.Action.IsAJAXAutoRefresh = false;
}
else
{
Gbl.Action.UsesAJAX = false;
Gbl.Action.IsAJAXAutoRefresh = false;
case Act_AJAX_NORMAL:
Gbl.Action.UsesAJAX = true;
Gbl.Action.IsAJAXAutoRefresh = false;
break;
case Act_AJAX_RFRESH:
Gbl.Action.UsesAJAX = true;
Gbl.Action.IsAJAXAutoRefresh = true;
break;
default:
Gbl.Action.UsesAJAX = false;
Gbl.Action.IsAJAXAutoRefresh = false;
break;
}
/***** Get session identifier, if exists *****/

View File

@ -1172,11 +1172,14 @@ void Pho_ShowUsrPhoto (const struct UsrData *UsrDat,const char *PhotoURL,
unsigned NumFollowing;
unsigned NumFollowers;
bool PhotoExists;
bool BrowserTabIs1stTab = Act_GetBrowserTab (Gbl.Action.Act) == Act_BRW_1ST_TAB;
Act_BrowserTab_t BrowserTab = Act_GetBrowserTab (Gbl.Action.Act);
bool BrowserTabIs1stTab = (BrowserTab == Act_BRW_1ST_TAB ||
BrowserTab == Act_AJAX_NORMAL ||
BrowserTab == Act_AJAX_RFRESH);
bool PutLinkToPublicProfile = !Gbl.Form.Inside && // Only if not inside another form
BrowserTabIs1stTab; // Only in main browser tab
BrowserTabIs1stTab; // Only in main browser tab (or AJAX)
bool PutZoomCode = (Zoom == Pho_ZOOM) && // Make zoom
BrowserTabIs1stTab; // Only in main browser tab
BrowserTabIs1stTab; // Only in main browser tab (or AJAX)
char IdCaption[Frm_MAX_BYTES_ID + 1];
char MainDegreeShrtName[Hie_MAX_BYTES_SHRT_NAME + 1];
Rol_Role_t MaxRole; // Maximum user's role in his/her main degree

View File

@ -1100,19 +1100,6 @@ static void Plg_CreatePlugin (struct Plugin *Plg)
Plg->AppKey,Plg->URL,Plg->IP);
}
/*****************************************************************************/
/******** Function called when a web service if required by a plugin *********/
/*****************************************************************************/
void Plg_WebService (void)
{
/***** Call soap service *****/
Svc_WebService ();
/***** All the output is made, so don't write anymore *****/
Gbl.Layout.DivsEndWritten = Gbl.Layout.HTMLEndWritten = true;
}
/*****************************************************************************/
/************************ Plugin constructor/destructor **********************/
/*****************************************************************************/

View File

@ -77,6 +77,5 @@ void Plg_ChangePlgIP (void);
void Plg_ContEditAfterChgPlg (void);
void Plg_RecFormNewPlg (void);
void Plg_WebService (void);
#endif

View File

@ -3018,9 +3018,6 @@ void Prj_LockProjectEdition (void)
/***** Free memory of the project *****/
Prj_FreeMemProject (&Prj);
/***** All the output is made, so don't write anymore *****/
Gbl.Layout.DivsEndWritten = Gbl.Layout.HTMLEndWritten = true;
}
static void Prj_LockProjectEditionInDB (long PrjCod)
@ -3064,9 +3061,6 @@ void Prj_UnlockProjectEdition (void)
/***** Free memory of the project *****/
Prj_FreeMemProject (&Prj);
/***** All the output is made, so don't write anymore *****/
Gbl.Layout.DivsEndWritten = Gbl.Layout.HTMLEndWritten = true;
}
static void Prj_UnlockProjectEditionInDB (long PrjCod)

View File

@ -470,9 +470,6 @@ void TL_RefreshNewTimelineGbl (void)
/***** Drop temporary tables *****/
TL_DropTemporaryTablesUsedToQueryTimeline ();
}
/***** All the output is made, so don't write anymore *****/
Gbl.Layout.DivsEndWritten = Gbl.Layout.HTMLEndWritten = true;
}
/*****************************************************************************/
@ -514,9 +511,6 @@ static void TL_GetAndShowOldTimeline (TL_TimelineUsrOrGbl_t TimelineUsrOrGbl)
/***** Drop temporary tables *****/
TL_DropTemporaryTablesUsedToQueryTimeline ();
/***** All the output is made, so don't write anymore *****/
Gbl.Layout.DivsEndWritten = Gbl.Layout.HTMLEndWritten = true;
}
/*****************************************************************************/
@ -3238,9 +3232,6 @@ void TL_ShowAllSharersNoteGbl (void)
/***** Write HTML inside DIV with form to share/unshare *****/
TL_PutFormToShaUnsNote (&SocNot,TL_SHOW_ALL_USRS);
/***** All the output is made, so don't write anymore *****/
Gbl.Layout.DivsEndWritten = Gbl.Layout.HTMLEndWritten = true;
}
void TL_ShaNoteUsr (void)
@ -3261,9 +3252,6 @@ void TL_ShaNoteGbl (void)
/***** Write HTML inside DIV with form to unshare *****/
TL_PutFormToShaUnsNote (&SocNot,TL_SHOW_A_FEW_USRS);
/***** All the output is made, so don't write anymore *****/
Gbl.Layout.DivsEndWritten = Gbl.Layout.HTMLEndWritten = true;
}
static void TL_PutFormToShaUnsNote (const struct TL_Note *SocNot,
@ -3354,9 +3342,6 @@ void TL_ShowAllFaversNoteGbl (void)
/***** Write HTML inside DIV with form to fav/unfav *****/
TL_PutFormToFavUnfNote (&SocNot,TL_SHOW_ALL_USRS);
/***** All the output is made, so don't write anymore *****/
Gbl.Layout.DivsEndWritten = Gbl.Layout.HTMLEndWritten = true;
}
void TL_FavNoteUsr (void)
@ -3377,9 +3362,6 @@ void TL_FavNoteGbl (void)
/***** Write HTML inside DIV with form to unfav *****/
TL_PutFormToFavUnfNote (&SocNot,TL_SHOW_A_FEW_USRS);
/***** All the output is made, so don't write anymore *****/
Gbl.Layout.DivsEndWritten = Gbl.Layout.HTMLEndWritten = true;
}
void TL_UnfNoteUsr (void)
@ -3400,9 +3382,6 @@ void TL_UnfNoteGbl (void)
/***** Write HTML inside DIV with form to fav *****/
TL_PutFormToFavUnfNote (&SocNot,TL_SHOW_A_FEW_USRS);
/***** All the output is made, so don't write anymore *****/
Gbl.Layout.DivsEndWritten = Gbl.Layout.HTMLEndWritten = true;
}
static void TL_PutFormToFavUnfNote (const struct TL_Note *SocNot,
@ -3531,9 +3510,6 @@ void TL_ShowAllFaversComGbl (void)
/***** Write HTML inside DIV with form to fav/unfav *****/
TL_PutFormToFavUnfComment (&SocCom,TL_SHOW_ALL_USRS);
/***** All the output is made, so don't write anymore *****/
Gbl.Layout.DivsEndWritten = Gbl.Layout.HTMLEndWritten = true;
}
void TL_FavCommentUsr (void)
@ -3554,9 +3530,6 @@ void TL_FavCommentGbl (void)
/***** Write HTML inside DIV with form to unfav *****/
TL_PutFormToFavUnfComment (&SocCom,TL_SHOW_A_FEW_USRS);
/***** All the output is made, so don't write anymore *****/
Gbl.Layout.DivsEndWritten = Gbl.Layout.HTMLEndWritten = true;
}
void TL_UnfCommentUsr (void)
@ -3577,9 +3550,6 @@ void TL_UnfCommentGbl (void)
/***** Write HTML inside DIV with form to fav *****/
TL_PutFormToFavUnfComment (&SocCom,TL_SHOW_A_FEW_USRS);
/***** All the output is made, so don't write anymore *****/
Gbl.Layout.DivsEndWritten = Gbl.Layout.HTMLEndWritten = true;
}
static void TL_PutFormToFavUnfComment (const struct TL_Comment *SocCom,
@ -3747,9 +3717,6 @@ void TL_UnsNoteGbl (void)
/***** Write HTML inside DIV with form to share *****/
TL_PutFormToShaUnsNote (&SocNot,TL_SHOW_A_FEW_USRS);
/***** All the output is made, so don't write anymore *****/
Gbl.Layout.DivsEndWritten = Gbl.Layout.HTMLEndWritten = true;
}
static void TL_UnsNote (struct TL_Note *SocNot)