Version19.170

This commit is contained in:
acanas 2020-04-10 19:14:08 +02:00
parent 6641a97413
commit ceeeb8ba5b
23 changed files with 999 additions and 842 deletions

View File

@ -5414,9 +5414,9 @@ int swad__getDirectoryTree (struct soap *soap,
/* Initialize path to private directory */
Gbl.Hierarchy.Crs.CrsCod = (courseCode > 0) ? (long) courseCode :
-1L;
-1L;
Gbl.Crs.Grps.GrpCod = (groupCode > 0) ? (long) groupCode :
-1L;
-1L;
snprintf (Gbl.Crs.PathPriv,sizeof (Gbl.Crs.PathPriv),
"%s/%ld",

View File

@ -470,10 +470,8 @@ static void Agd_ShowEvents (Agd_AgendaType_t AgendaType)
Gbl.Agenda.CurrentPage = (unsigned) Pagination.CurrentPage;
/***** Write links to pages *****/
Pag_WriteLinksToPagesCentered (WhatPaginate[AgendaType],
&Pagination,
(unsigned) Gbl.Agenda.SelectedOrder,
NULL,0);
Pag_WriteLinksToPagesCentered (WhatPaginate[AgendaType],&Pagination,
&Gbl.Agenda,-1L);
if (Gbl.Agenda.Num)
{
@ -496,10 +494,8 @@ static void Agd_ShowEvents (Agd_AgendaType_t AgendaType)
Ale_ShowAlert (Ale_INFO,Txt_No_events);
/***** Write again links to pages *****/
Pag_WriteLinksToPagesCentered (WhatPaginate[AgendaType],
&Pagination,
(unsigned) Gbl.Agenda.SelectedOrder,
NULL,0);
Pag_WriteLinksToPagesCentered (WhatPaginate[AgendaType],&Pagination,
&Gbl.Agenda,-1L);
/***** Button to create a new event *****/
if (AgendaType == Agd_MY_AGENDA)

View File

@ -62,17 +62,6 @@ extern struct Globals Gbl;
/***************************** Private variables *****************************/
/*****************************************************************************/
struct Asg_Assignments
{
bool LstIsRead; // Is the list already read from database...
// ...or it needs to be read?
unsigned Num; // Number of assignments
long *LstAsgCods; // List of assigment codes
Dat_StartEndTime_t SelectedOrder;
long AsgCodToEdit; // Used as parameter in contextual links
unsigned CurrentPage;
};
/*****************************************************************************/
/***************************** Private prototypes ****************************/
/*****************************************************************************/
@ -184,10 +173,8 @@ static void Asg_ShowAllAssignments (struct Asg_Assignments *Assignments)
}
/***** Write links to pages *****/
Pag_WriteLinksToPagesCentered (Pag_ASSIGNMENTS,
&Pagination,
(unsigned) Assignments->SelectedOrder,
NULL,0);
Pag_WriteLinksToPagesCentered (Pag_ASSIGNMENTS,&Pagination,
Assignments,-1L);
if (Assignments->Num)
{
@ -209,10 +196,8 @@ static void Asg_ShowAllAssignments (struct Asg_Assignments *Assignments)
Ale_ShowAlert (Ale_INFO,Txt_No_assignments);
/***** Write again links to pages *****/
Pag_WriteLinksToPagesCentered (Pag_ASSIGNMENTS,
&Pagination,
(unsigned) Assignments->SelectedOrder,
NULL,0);
Pag_WriteLinksToPagesCentered (Pag_ASSIGNMENTS,&Pagination,
Assignments,-1L);
/***** Button to create a new assignment *****/
if (Asg_CheckIfICanCreateAssignments ())

View File

@ -46,6 +46,17 @@ typedef enum
Asg_SEND_WORK = 1,
} Asg_SendWork_t;
struct Asg_Assignments
{
bool LstIsRead; // Is the list already read from database...
// ...or it needs to be read?
unsigned Num; // Number of assignments
long *LstAsgCods; // List of assigment codes
Dat_StartEndTime_t SelectedOrder;
long AsgCodToEdit; // Used as parameter in contextual links
unsigned CurrentPage;
};
struct Asg_Assignment
{
long AsgCod;

View File

@ -72,18 +72,6 @@ typedef enum
Att_PRNT_SEL_USR, // Print selected users
} Att_TypeOfView_t;
struct Att_Events
{
bool LstIsRead; // Is the list already read from database, or it needs to be read?
unsigned Num; // Number of attendance events
struct Att_Event *Lst; // List of attendance events
Dat_StartEndTime_t SelectedOrder;
long AttCod;
bool ShowDetails;
char *StrAttCodsSelected;
unsigned CurrentPage;
};
/*****************************************************************************/
/****************************** Private variables ****************************/
/*****************************************************************************/
@ -267,10 +255,8 @@ static void Att_ShowAllAttEvents (struct Att_Events *Events)
}
/***** Write links to pages *****/
Pag_WriteLinksToPagesCentered (Pag_ATT_EVENTS,
&Pagination,
(unsigned) Events->SelectedOrder,
NULL,0);
Pag_WriteLinksToPagesCentered (Pag_ATT_EVENTS,&Pagination,
Events,-1L);
if (Events->Num)
{
@ -321,10 +307,8 @@ static void Att_ShowAllAttEvents (struct Att_Events *Events)
Ale_ShowAlert (Ale_INFO,Txt_No_events);
/***** Write again links to pages *****/
Pag_WriteLinksToPagesCentered (Pag_ATT_EVENTS,
&Pagination,
(unsigned) Events->SelectedOrder,
NULL,0);
Pag_WriteLinksToPagesCentered (Pag_ATT_EVENTS,&Pagination,
Events,-1L);
/***** Button to create a new attendance event *****/
if (ICanEdit)

View File

@ -44,6 +44,15 @@ typedef enum
Att_END_TIME = 1,
} Att_StartOrEndTime_t;
#define Att_NUM_ORDERS_NEWEST_OLDEST 2
typedef enum
{
Att_NEWEST_FIRST,
Att_OLDEST_FIRST,
} Att_OrderNewestOldest_t;
#define Att_ORDER_DEFAULT Dat_START_TIME
struct Att_Event
{
/* Fields stored in database */
@ -62,14 +71,17 @@ struct Att_Event
bool Selected; // I have selected this attendance event
};
#define Att_NUM_ORDERS_NEWEST_OLDEST 2
typedef enum
struct Att_Events
{
Att_NEWEST_FIRST,
Att_OLDEST_FIRST,
} Att_OrderNewestOldest_t;
#define Att_ORDER_DEFAULT Dat_START_TIME
bool LstIsRead; // Is the list already read from database, or it needs to be read?
unsigned Num; // Number of attendance events
struct Att_Event *Lst; // List of attendance events
Dat_StartEndTime_t SelectedOrder;
long AttCod;
bool ShowDetails;
char *StrAttCodsSelected;
unsigned CurrentPage;
};
/*****************************************************************************/
/***************************** Public prototypes *****************************/

View File

@ -497,7 +497,7 @@ enscript -2 --landscape --color --file-align=2 --highlight --line-numbers -o - *
En OpenSWAD:
ps2pdf source.ps destination.pdf
*/
#define Log_PLATFORM_VERSION "SWAD 19.169.6 (2020-04-08)"
#define Log_PLATFORM_VERSION "SWAD 19.170 (2020-04-09)"
#define CSS_FILE "swad19.146.css"
#define JS_FILE "swad19.153.js"
/*
@ -548,6 +548,7 @@ Funci
// TODO: Oresti Baños: cambiar ojos por candados en descriptores para prohibir/permitir y dejar los ojos para poder elegir descriptores
// TODO: Integrar pull requests con traducciones del alemán del usuario eruedin en GitHub
Version 19.170: Apr 09, 2020 Code refactoring in projects. (284941 lines)
Version 19.169.6: Apr 08, 2020 Mark some parameters as unused (functions from S to Z). (284836 lines)
Version 19.169.5: Apr 08, 2020 Mark some parameters as unused (functions from O to R). (284854 lines)
Version 19.169.4: Apr 08, 2020 Mark some parameters as unused (functions from I to N). (284903 lines)

View File

@ -2087,7 +2087,7 @@ void Brw_GetParAndInitFileBrowser (void)
/***** Get other parameters *****/
if (Brw_GetIfProjectFileBrowser ())
/* Get project code */
Gbl.Prjs.PrjCod = Prj_GetParamPrjCod ();
Prj_SetPrjCod (Prj_GetParamPrjCod ());
else if (Brw_GetIfCrsAssigWorksFileBrowser ())
{
/* Get lists of the selected users if not already got */
@ -2334,7 +2334,7 @@ static void Brw_PutParamsFileBrowser (const char *PathInTree,const char *FilFolL
Grp_PutParamGrpCod (Gbl.Crs.Grps.GrpCod);
else if (Brw_GetIfProjectFileBrowser ()) // This file browser needs specify a project
/***** Project code *****/
Prj_PutParamPrjCod (Gbl.Prjs.PrjCod);
Prj_PutParamPrjCod (Prj_GetPrjCod ());
else if (Brw_GetIfCrsAssigWorksFileBrowser ())
{
/***** Users selected *****/
@ -2456,6 +2456,7 @@ void Brw_InitializeFileBrowser (void)
static void Brw_SetPathFileBrowser (void)
{
long PrjCod;
char Path[PATH_MAX * 2 + 128];
/***** Reset paths. An empty path means that
@ -2621,6 +2622,8 @@ static void Brw_SetPathFileBrowser (void)
break;
case Brw_ADMI_DOC_PRJ:
case Brw_ADMI_ASS_PRJ:
PrjCod = Prj_GetPrjCod ();
/* Create a directory for projects inside the current course */
snprintf (Path,sizeof (Path),
"%s/%s",
@ -2632,15 +2635,15 @@ static void Brw_SetPathFileBrowser (void)
snprintf (Path,sizeof (Path),
"%s/%s/%02u",
Gbl.Crs.PathPriv,Cfg_FOLDER_PRJ,
(unsigned) (Gbl.Prjs.PrjCod % 100));
(unsigned) (PrjCod % 100));
Fil_CreateDirIfNotExists (Path);
/* Create path to the current project */
snprintf (Path,sizeof (Path),
"%s/%s/%02u/%ld",
Gbl.Crs.PathPriv,Cfg_FOLDER_PRJ,
(unsigned) (Gbl.Prjs.PrjCod % 100),
Gbl.Prjs.PrjCod);
(unsigned) (PrjCod % 100),
PrjCod);
Str_Copy (Gbl.FileBrowser.Priv.PathAboveRootFolder,
Path,
PATH_MAX);
@ -3150,9 +3153,8 @@ static void Brw_ShowFileBrowserProject (void)
Prj_AllocMemProject (&Prj);
/***** Get project data *****/
Prj.PrjCod = Prj_GetParamPrjCod ();
Prj.PrjCod = Prj_GetPrjCod ();
Prj_GetDataOfProjectByCod (&Prj);
Gbl.Prjs.PrjCod = Prj.PrjCod;
/***** Begin box *****/
Box_BoxBegin (NULL,Prj.Title,
@ -3163,7 +3165,7 @@ static void Brw_ShowFileBrowserProject (void)
Prj_ShowOneUniqueProject (&Prj);
/***** Show project file browsers *****/
MyRolesInProject = Prj_GetMyRolesInProject (Gbl.Prjs.PrjCod);
MyRolesInProject = Prj_GetMyRolesInProject (Prj_GetPrjCod ());
if (Prj_CheckIfICanViewProjectFiles (MyRolesInProject))
{
Brw_WriteTopBeforeShowingFileBrowser ();
@ -4983,7 +4985,7 @@ static void Brw_PutParamsFullTree (void)
if (Brw_GetIfGroupFileBrowser ())
Grp_PutParamGrpCod (Gbl.Crs.Grps.GrpCod);
else if (Brw_GetIfProjectFileBrowser ()) // This file browser needs specify a project
Prj_PutParamPrjCod (Gbl.Prjs.PrjCod);
Prj_PutParamPrjCod (Prj_GetPrjCod ());
else if (Brw_GetIfCrsAssigWorksFileBrowser ())
Usr_PutHiddenParSelectedUsrsCods (&Gbl.Usrs.Selected);
}
@ -5186,7 +5188,7 @@ static void Brw_GetAndUpdateDateLastAccFileBrowser (void)
break;
case Brw_ADMI_DOC_PRJ:
case Brw_ADMI_ASS_PRJ:
Cod = Gbl.Prjs.PrjCod;
Cod = Prj_GetPrjCod ();
break;
case Brw_ADMI_BRF_USR:
Cod = -1L;
@ -7196,7 +7198,7 @@ static bool Brw_CheckIfClipboardIsInThisTree (void)
break;
case Brw_ADMI_DOC_PRJ:
case Brw_ADMI_ASS_PRJ:
if (Gbl.FileBrowser.Clipboard.Cod == Gbl.Prjs.PrjCod)
if (Gbl.FileBrowser.Clipboard.Cod == Prj_GetPrjCod ())
return true; // I am in the project of the clipboard
break;
case Brw_ADMI_BRF_USR:
@ -7282,7 +7284,7 @@ static long Brw_GetCodForClipboard (void)
return Gbl.Crs.Grps.GrpCod;
case Brw_ADMI_DOC_PRJ:
case Brw_ADMI_ASS_PRJ:
return Gbl.Prjs.PrjCod;
return Prj_GetPrjCod ();
default:
return -1L;
}
@ -7767,7 +7769,7 @@ static void Brw_RemoveAffectedClipboards (Brw_FileBrowser_t FileBrowser,
"DELETE FROM clipboard"
" WHERE FileBrowser=%u AND Cod=%ld",
(unsigned) FileBrowser,
Gbl.Prjs.PrjCod);
Prj_GetPrjCod ());
break;
case Brw_ADMI_BRF_USR:
DB_QueryDELETE ("can not remove source of copy",
@ -11012,7 +11014,7 @@ long Brw_GetCodForFiles (void)
return Gbl.Crs.Grps.GrpCod;
case Brw_ADMI_DOC_PRJ:
case Brw_ADMI_ASS_PRJ:
return Gbl.Prjs.PrjCod;
return Prj_GetPrjCod ();
default:
return -1L;
}
@ -11548,7 +11550,7 @@ static bool Brw_CheckIfICanModifyPrjDocFileOrFolder (void)
case Rol_STD:
case Rol_NET:
case Rol_TCH:
MyRolesInProject = Prj_GetMyRolesInProject (Gbl.Prjs.PrjCod);
MyRolesInProject = Prj_GetMyRolesInProject (Prj_GetPrjCod ());
if (MyRolesInProject) // I am a member
return (Gbl.Usrs.Me.UsrDat.UsrCod == Brw_GetPublisherOfSubtree ()); // Am I the publisher of subtree?
return false;
@ -11577,7 +11579,7 @@ static bool Brw_CheckIfICanModifyPrjAssFileOrFolder (void)
case Rol_STD:
case Rol_NET:
case Rol_TCH:
MyRolesInProject = Prj_GetMyRolesInProject (Gbl.Prjs.PrjCod);
MyRolesInProject = Prj_GetMyRolesInProject (Prj_GetPrjCod ());
if ((MyRolesInProject & (1 << Prj_ROLE_TUT | // Tutor...
1 << Prj_ROLE_EVL))) // ...or evaluator
return (Gbl.Usrs.Me.UsrDat.UsrCod == Brw_GetPublisherOfSubtree ()); // Am I the publisher of subtree?

File diff suppressed because it is too large Load Diff

View File

@ -69,23 +69,11 @@ struct For_Forum
{
For_ForumType_t Type; // Type of forum
long Location; // Code of institution, centre, degree or course
long ThrCod; // Optional thread code
long PstCod; // Optional post code
};
struct For_Forums
struct For_Thread
{
For_ForumSet_t ForumSet;
Dat_StartEndTime_t ThreadsOrder;
unsigned CurrentPageThrs;
unsigned CurrentPagePsts;
struct For_Forum ForumSelected; // Forum type, location, thread and post
long ThreadToMove;
};
struct ForumThread
{
long ThrCod;
long ThrCod; // Thread code
long PstCod[2];
long UsrCod[2];
time_t WriteTime[2];
@ -98,6 +86,23 @@ struct ForumThread
unsigned NumReaders;
};
struct For_Post
{
long PstCod; // Post code
};
struct For_Forums
{
For_ForumSet_t ForumSet;
Dat_StartEndTime_t ThreadsOrder;
unsigned CurrentPageThrs;
unsigned CurrentPagePsts;
struct For_Forum Forum; // Forum selected
struct For_Thread Thread; // Thread selected
struct For_Post Post; // Post selected
long ThreadToMove;
};
#define For_DEFAULT_ORDER Dat_END_TIME
#define For_MAX_BYTES_FORUM_NAME (512 - 1)

View File

@ -244,10 +244,8 @@ static void Gam_ListAllGames (struct Gam_Games *Games)
Hlp_ASSESSMENT_Games,Box_NOT_CLOSABLE);
/***** Write links to pages *****/
Pag_WriteLinksToPagesCentered (Pag_GAMES,
&Pagination,
(unsigned) Games->SelectedOrder,
NULL,0);
Pag_WriteLinksToPagesCentered (Pag_GAMES,&Pagination,
Games,-1L);
if (Games->Num)
{
@ -305,10 +303,8 @@ static void Gam_ListAllGames (struct Gam_Games *Games)
Ale_ShowAlert (Ale_INFO,Txt_No_games);
/***** Write again links to pages *****/
Pag_WriteLinksToPagesCentered (Pag_GAMES,
&Pagination,
(unsigned) Games->SelectedOrder,
NULL,0);
Pag_WriteLinksToPagesCentered (Pag_GAMES,&Pagination,
Games,-1L);
/***** Button to create a new game *****/
if (Gam_CheckIfICanEditGames ())

View File

@ -296,22 +296,6 @@ void Gbl_InitializeGlobals (void)
Gbl.Search.Str[0] = '\0';
Gbl.Search.LogSearch = false;
/* Projects */
Gbl.Prjs.Config.Editable = Prj_EDITABLE_DEFAULT;
Gbl.Prjs.Filter.Who = Prj_FILTER_WHO_DEFAULT;
Gbl.Prjs.Filter.Assign = Prj_FILTER_ASSIGNED_DEFAULT |
Prj_FILTER_NONASSIG_DEFAULT;
Gbl.Prjs.Filter.Hidden = Prj_FILTER_HIDDEN_DEFAULT |
Prj_FILTER_VISIBL_DEFAULT;
Gbl.Prjs.Filter.Faulti = Prj_FILTER_FAULTY_DEFAULT |
Prj_FILTER_FAULTLESS_DEFAULT;
Gbl.Prjs.Filter.DptCod = Prj_FILTER_DPT_DEFAULT;
Gbl.Prjs.LstIsRead = false; // List is not read
Gbl.Prjs.Num = 0;
Gbl.Prjs.LstPrjCods = NULL;
Gbl.Prjs.SelectedOrder = Prj_ORDER_DEFAULT;
Gbl.Prjs.PrjCod = -1L;
Gbl.Mails.Num = 0;
Gbl.Mails.Lst = NULL;
Gbl.Mails.SelectedOrder = Mai_ORDER_DEFAULT;

View File

@ -417,20 +417,7 @@ struct Globals
char PathPriv[PATH_MAX + 1]; // Absolute path to the private directory of the course
char PathRelPubl[PATH_MAX + 1]; // Relative path to the public directory of the course
char PathURLPubl[PATH_MAX + 1]; // Abolute URL to the public part of the course
struct
{
unsigned NumGrps;
struct GroupTypes GrpTypes;
struct GroupType GrpTyp;
long GrpCod; // Group to be edited, removed...
char GrpName[Grp_MAX_BYTES_GROUP_NAME + 1];
long ClaCod;
unsigned MaxStudents;
bool Open;
bool FileZones;
struct ListCodGrps LstGrpsSel;
Grp_WhichGroups_t WhichGrps; // Show my groups or all groups
} Grps;
struct Grp_Groups Grps;
struct
{
Inf_InfoType_t Type;
@ -519,7 +506,6 @@ struct Globals
char TmpDir[NAME_MAX + 1];
} ZIP;
} FileBrowser; // Struct used for a file browser
struct Prj_Projects Prjs;
struct TL_Timeline Timeline;
struct Msg_Messages Msg;
struct TT_Timetable Timetable;

View File

@ -140,6 +140,21 @@ typedef enum
Grp_MATCH,
} Grp_AsgAttSvyGam_t;
struct Grp_Groups
{
unsigned NumGrps;
struct GroupTypes GrpTypes;
struct GroupType GrpTyp;
long GrpCod; // Group to be edited, removed...
char GrpName[Grp_MAX_BYTES_GROUP_NAME + 1];
long ClaCod;
unsigned MaxStudents;
bool Open;
bool FileZones;
struct ListCodGrps LstGrpsSel;
Grp_WhichGroups_t WhichGrps; // Show my groups or all groups
};
/*****************************************************************************/
/****************************** Public prototypes ****************************/
/*****************************************************************************/

View File

@ -1837,10 +1837,8 @@ static void Msg_ShowSentOrReceivedMessages (void)
Gbl.Msg.CurrentPage);
/***** Write links to pages *****/
Pag_WriteLinksToPagesCentered (WhatPaginate[Gbl.Msg.TypeOfMessages],
&Pagination,
(unsigned) Dat_START_TIME, // Not used
NULL,0);
Pag_WriteLinksToPagesCentered (WhatPaginate[Gbl.Msg.TypeOfMessages],&Pagination,
&Gbl.Msg,-1L);
/***** Show received / sent messages in this page *****/
HTM_TABLE_BeginWidePadding (2);
@ -1861,10 +1859,8 @@ static void Msg_ShowSentOrReceivedMessages (void)
HTM_TABLE_End ();
/***** Write again links to pages *****/
Pag_WriteLinksToPagesCentered (WhatPaginate[Gbl.Msg.TypeOfMessages],
&Pagination,
(unsigned) Dat_START_TIME, // Not used
NULL,0);
Pag_WriteLinksToPagesCentered (WhatPaginate[Gbl.Msg.TypeOfMessages],&Pagination,
&Gbl.Msg,-1L);
}
/***** End box *****/

View File

@ -432,8 +432,8 @@ void Ntf_ShowMyNotifications (void)
NotifyEvent == Ntf_EVENT_FORUM_REPLY)
{
For_ResetForums (&Forums);
For_GetForumTypeAndLocationOfAPost (Cod,&Forums.ForumSelected);
For_SetForumName (&Forums.ForumSelected,
For_GetForumTypeAndLocationOfAPost (Cod,&Forums.Forum);
For_SetForumName (&Forums.Forum,
ForumName,Gbl.Prefs.Language,false); // Set forum name in recipient's language
}
@ -634,7 +634,8 @@ static void Ntf_WriteFormAllNotifications (bool AllNotifications)
extern const char *Txt_Show_all_notifications;
extern const char *Txt_Show_all_NOTIFICATIONS;
Lay_PutContextualCheckbox (ActSeeNtf,NULL,
Lay_PutContextualCheckbox (ActSeeNtf,
NULL,
"All",
AllNotifications,false,
Txt_Show_all_notifications,
@ -738,13 +739,13 @@ static bool Ntf_StartFormGoToAction (Ntf_NotifyEvent_t NotifyEvent,
break;
case Ntf_EVENT_FORUM_POST_COURSE:
case Ntf_EVENT_FORUM_REPLY:
Frm_StartForm (For_ActionsSeeFor[Forums->ForumSelected.Type]);
Frm_StartForm (For_ActionsSeeFor[Forums->Forum.Type]);
For_PutAllHiddenParamsForum (1, // Page of threads = first
1, // Page of posts = first
Forums->ForumSet,
Forums->ThreadsOrder,
Forums->ForumSelected.Location,
Forums->ForumSelected.ThrCod,
Forums->Forum.Location,
Forums->Thread.ThrCod,
-1L);
break;
case Ntf_EVENT_NOTICE:

View File

@ -31,6 +31,7 @@
#include <stdlib.h> // For free
#include "swad_action.h"
#include "swad_attendance.h"
#include "swad_database.h"
#include "swad_form.h"
#include "swad_forum.h"
@ -131,13 +132,12 @@ void Pag_CalculatePagination (struct Pagination *Pagination)
void Pag_WriteLinksToPagesCentered (Pag_WhatPaginate_t WhatPaginate,
struct Pagination *Pagination,
unsigned SelectedOrder,
const struct For_Forums *Forums,long ThrCod)
const void *Context,long Cod)
{
if (Pagination->MoreThanOnePage)
{
HTM_DIV_Begin ("class=\"CM\"");
Pag_WriteLinksToPages (WhatPaginate,Pagination,SelectedOrder,Forums,ThrCod,
Pag_WriteLinksToPages (WhatPaginate,Pagination,Context,Cod,
true,NULL,"PAG_TXT",false);
HTM_DIV_End ();
}
@ -149,8 +149,7 @@ void Pag_WriteLinksToPagesCentered (Pag_WhatPaginate_t WhatPaginate,
void Pag_WriteLinksToPages (Pag_WhatPaginate_t WhatPaginate,
struct Pagination *Pagination,
unsigned SelectedOrder,
const struct For_Forums *Forums,long ThrCod,
const void *Context,long Cod,
bool FirstMsgEnabled,
const char *Subject,const char *ClassTxt,
bool LinkToPagCurrent)
@ -173,58 +172,58 @@ void Pag_WriteLinksToPages (Pag_WhatPaginate_t WhatPaginate,
case Pag_ASSIGNMENTS:
Frm_StartFormAnchor (ActSeeAsg,Pagination->Anchor);
Pag_PutHiddenParamPagNum (WhatPaginate,1);
Dat_PutHiddenParamOrder ((Dat_StartEndTime_t) SelectedOrder);
Dat_PutHiddenParamOrder (((struct Asg_Assignments *) Context)->SelectedOrder);
WhichGroups = Grp_GetParamWhichGroups ();
Grp_PutParamWhichGroups (&WhichGroups);
break;
case Pag_PROJECTS:
Frm_StartFormAnchor (ActSeePrj,Pagination->Anchor);
Prj_PutParams (&Gbl.Prjs.Filter,
(Prj_Order_t) SelectedOrder,
Prj_PutParams (&((struct Prj_Projects *) Context)->Filter,
((struct Prj_Projects *) Context)->SelectedOrder,
1,
-1L);
Cod);
break;
case Pag_GAMES:
Frm_StartFormAnchor (ActSeeAllGam,Pagination->Anchor);
Pag_PutHiddenParamPagNum (WhatPaginate,1);
Dat_PutHiddenParamOrder ((Dat_StartEndTime_t) SelectedOrder);
Dat_PutHiddenParamOrder (((struct Gam_Games *) Context)->SelectedOrder);
WhichGroups = Grp_GetParamWhichGroups ();
Grp_PutParamWhichGroups (&WhichGroups);
break;
case Pag_SURVEYS:
Frm_StartFormAnchor (ActSeeAllSvy,Pagination->Anchor);
Pag_PutHiddenParamPagNum (WhatPaginate,1);
Dat_PutHiddenParamOrder ((Dat_StartEndTime_t) SelectedOrder);
Dat_PutHiddenParamOrder (((struct Svy_Surveys *) Context)->SelectedOrder);
WhichGroups = Grp_GetParamWhichGroups ();
Grp_PutParamWhichGroups (&WhichGroups);
break;
case Pag_ATT_EVENTS:
Frm_StartFormAnchor (ActSeeAtt,Pagination->Anchor);
Pag_PutHiddenParamPagNum (WhatPaginate,1);
Dat_PutHiddenParamOrder ((Dat_StartEndTime_t) SelectedOrder);
Dat_PutHiddenParamOrder (((struct Att_Events *) Context)->SelectedOrder);
WhichGroups = Grp_GetParamWhichGroups ();
Grp_PutParamWhichGroups (&WhichGroups);
break;
case Pag_THREADS_FORUM:
Frm_StartFormAnchor (For_ActionsSeeFor[Forums->ForumSelected.Type],
Frm_StartFormAnchor (For_ActionsSeeFor[((struct For_Forums *) Context)->Forum.Type],
Pagination->Anchor);
For_PutAllHiddenParamsForum (1, // Page of threads = first
1, // Page of posts = first
Forums->ForumSet,
(Dat_StartEndTime_t) SelectedOrder,
Forums->ForumSelected.Location,
((struct For_Forums *) Context)->ForumSet,
((struct For_Forums *) Context)->ThreadsOrder,
((struct For_Forums *) Context)->Forum.Location,
-1L,
-1L);
break;
case Pag_POSTS_FORUM:
Frm_StartFormAnchor (For_ActionsSeePstFor[Forums->ForumSelected.Type],
Frm_StartFormAnchor (For_ActionsSeePstFor[((struct For_Forums *) Context)->Forum.Type],
Pagination->Anchor);
For_PutAllHiddenParamsForum (Forums->CurrentPageThrs, // Page of threads = current
For_PutAllHiddenParamsForum (((struct For_Forums *) Context)->CurrentPageThrs, // Page of threads = current
1, // Page of posts = first
Forums->ForumSet,
(Dat_StartEndTime_t) SelectedOrder,
Forums->ForumSelected.Location,
ThrCod,
((struct For_Forums *) Context)->ForumSet,
((struct For_Forums *) Context)->ThreadsOrder,
((struct For_Forums *) Context)->Forum.Location,
Cod,
-1L);
break;
case Pag_MESSAGES_RECEIVED:
@ -239,16 +238,16 @@ void Pag_WriteLinksToPages (Pag_WhatPaginate_t WhatPaginate,
break;
case Pag_MY_AGENDA:
Frm_StartFormAnchor (ActSeeMyAgd,Pagination->Anchor);
Agd_PutParamsMyAgenda (Gbl.Agenda.Past__FutureEvents,
Gbl.Agenda.PrivatPublicEvents,
Gbl.Agenda.HiddenVisiblEvents,
(Dat_StartEndTime_t) SelectedOrder,
Agd_PutParamsMyAgenda (((struct Agd_Agenda *) Context)->Past__FutureEvents,
((struct Agd_Agenda *) Context)->PrivatPublicEvents,
((struct Agd_Agenda *) Context)->HiddenVisiblEvents,
((struct Agd_Agenda *) Context)->SelectedOrder,
1,
-1L);
Cod);
break;
case Pag_ANOTHER_AGENDA:
Frm_StartFormAnchor (ActSeeUsrAgd,Pagination->Anchor);
Agd_PutHiddenParamEventsOrder ((Dat_StartEndTime_t) SelectedOrder);
Agd_PutHiddenParamEventsOrder (((struct Agd_Agenda *) Context)->SelectedOrder);
Pag_PutHiddenParamPagNum (WhatPaginate,1);
Usr_PutParamOtherUsrCodEncrypted (Gbl.Usrs.Other.UsrDat.EncryptedUsrCod);
break;
@ -291,58 +290,58 @@ void Pag_WriteLinksToPages (Pag_WhatPaginate_t WhatPaginate,
case Pag_ASSIGNMENTS:
Frm_StartFormAnchor (ActSeeAsg,Pagination->Anchor);
Pag_PutHiddenParamPagNum (WhatPaginate,1);
Dat_PutHiddenParamOrder ((Dat_StartEndTime_t) SelectedOrder);
Dat_PutHiddenParamOrder (((struct Asg_Assignments *) Context)->SelectedOrder);
WhichGroups = Grp_GetParamWhichGroups ();
Grp_PutParamWhichGroups (&WhichGroups);
break;
case Pag_PROJECTS:
Frm_StartFormAnchor (ActSeePrj,Pagination->Anchor);
Prj_PutParams (&Gbl.Prjs.Filter,
(Prj_Order_t) SelectedOrder,
Prj_PutParams (&((struct Prj_Projects *) Context)->Filter,
((struct Prj_Projects *) Context)->SelectedOrder,
1,
-1L);
Cod);
break;
case Pag_GAMES:
Frm_StartFormAnchor (ActSeeAllGam,Pagination->Anchor);
Pag_PutHiddenParamPagNum (WhatPaginate,1);
Dat_PutHiddenParamOrder ((Dat_StartEndTime_t) SelectedOrder);
Dat_PutHiddenParamOrder (((struct Gam_Games *) Context)->SelectedOrder);
WhichGroups = Grp_GetParamWhichGroups ();
Grp_PutParamWhichGroups (&WhichGroups);
break;
case Pag_SURVEYS:
Frm_StartFormAnchor (ActSeeAllSvy,Pagination->Anchor);
Pag_PutHiddenParamPagNum (WhatPaginate,1);
Dat_PutHiddenParamOrder ((Dat_StartEndTime_t) SelectedOrder);
Dat_PutHiddenParamOrder (((struct Svy_Surveys *) Context)->SelectedOrder);
WhichGroups = Grp_GetParamWhichGroups ();
Grp_PutParamWhichGroups (&WhichGroups);
break;
case Pag_ATT_EVENTS:
Frm_StartFormAnchor (ActSeeAtt,Pagination->Anchor);
Pag_PutHiddenParamPagNum (WhatPaginate,1);
Dat_PutHiddenParamOrder ((Dat_StartEndTime_t) SelectedOrder);
Dat_PutHiddenParamOrder (((struct Att_Events *) Context)->SelectedOrder);
WhichGroups = Grp_GetParamWhichGroups ();
Grp_PutParamWhichGroups (&WhichGroups);
break;
case Pag_THREADS_FORUM:
Frm_StartFormAnchor (For_ActionsSeeFor[Forums->ForumSelected.Type],
Frm_StartFormAnchor (For_ActionsSeeFor[((struct For_Forums *) Context)->Forum.Type],
Pagination->Anchor);
For_PutAllHiddenParamsForum (1, // Page of threads = first
1, // Page of posts = first
Forums->ForumSet,
(Dat_StartEndTime_t) SelectedOrder,
Forums->ForumSelected.Location,
((struct For_Forums *) Context)->ForumSet,
((struct For_Forums *) Context)->ThreadsOrder,
((struct For_Forums *) Context)->Forum.Location,
-1L,
-1L);
break;
case Pag_POSTS_FORUM:
Frm_StartFormAnchor (For_ActionsSeePstFor[Forums->ForumSelected.Type],
Frm_StartFormAnchor (For_ActionsSeePstFor[((struct For_Forums *) Context)->Forum.Type],
Pagination->Anchor);
For_PutAllHiddenParamsForum (Forums->CurrentPageThrs, // Page of threads = current
For_PutAllHiddenParamsForum (((struct For_Forums *) Context)->CurrentPageThrs, // Page of threads = current
1, // Page of posts = first
Forums->ForumSet,
(Dat_StartEndTime_t) SelectedOrder,
Forums->ForumSelected.Location,
ThrCod,
((struct For_Forums *) Context)->ForumSet,
((struct For_Forums *) Context)->ThreadsOrder,
((struct For_Forums *) Context)->Forum.Location,
Cod,
-1L);
break;
case Pag_MESSAGES_RECEIVED:
@ -357,16 +356,16 @@ void Pag_WriteLinksToPages (Pag_WhatPaginate_t WhatPaginate,
break;
case Pag_MY_AGENDA:
Frm_StartFormAnchor (ActSeeMyAgd,Pagination->Anchor);
Agd_PutParamsMyAgenda (Gbl.Agenda.Past__FutureEvents,
Gbl.Agenda.PrivatPublicEvents,
Gbl.Agenda.HiddenVisiblEvents,
(Dat_StartEndTime_t) SelectedOrder,
Agd_PutParamsMyAgenda (((struct Agd_Agenda *) Context)->Past__FutureEvents,
((struct Agd_Agenda *) Context)->PrivatPublicEvents,
((struct Agd_Agenda *) Context)->HiddenVisiblEvents,
((struct Agd_Agenda *) Context)->SelectedOrder,
1,
-1L);
Cod);
break;
case Pag_ANOTHER_AGENDA:
Frm_StartFormAnchor (ActSeeUsrAgd,Pagination->Anchor);
Agd_PutHiddenParamEventsOrder ((Dat_StartEndTime_t) SelectedOrder);
Agd_PutHiddenParamEventsOrder (((struct Agd_Agenda *) Context)->SelectedOrder);
Pag_PutHiddenParamPagNum (WhatPaginate,1);
Usr_PutParamOtherUsrCodEncrypted (Gbl.Usrs.Other.UsrDat.EncryptedUsrCod);
break;
@ -395,58 +394,58 @@ void Pag_WriteLinksToPages (Pag_WhatPaginate_t WhatPaginate,
case Pag_ASSIGNMENTS:
Frm_StartFormAnchor (ActSeeAsg,Pagination->Anchor);
Pag_PutHiddenParamPagNum (WhatPaginate,Pagination->LeftPage);
Dat_PutHiddenParamOrder ((Dat_StartEndTime_t) SelectedOrder);
Dat_PutHiddenParamOrder (((struct Asg_Assignments *) Context)->SelectedOrder);
WhichGroups = Grp_GetParamWhichGroups ();
Grp_PutParamWhichGroups (&WhichGroups);
break;
case Pag_PROJECTS:
Frm_StartFormAnchor (ActSeePrj,Pagination->Anchor);
Prj_PutParams (&Gbl.Prjs.Filter,
(Prj_Order_t) SelectedOrder,
Prj_PutParams (&((struct Prj_Projects *) Context)->Filter,
((struct Prj_Projects *) Context)->SelectedOrder,
Pagination->LeftPage,
-1L);
Cod);
break;
case Pag_GAMES:
Frm_StartFormAnchor (ActSeeAllGam,Pagination->Anchor);
Pag_PutHiddenParamPagNum (WhatPaginate,Pagination->LeftPage);
Dat_PutHiddenParamOrder ((Dat_StartEndTime_t) SelectedOrder);
Dat_PutHiddenParamOrder (((struct Gam_Games *) Context)->SelectedOrder);
WhichGroups = Grp_GetParamWhichGroups ();
Grp_PutParamWhichGroups (&WhichGroups);
break;
case Pag_SURVEYS:
Frm_StartFormAnchor (ActSeeAllSvy,Pagination->Anchor);
Pag_PutHiddenParamPagNum (WhatPaginate,Pagination->LeftPage);
Dat_PutHiddenParamOrder ((Dat_StartEndTime_t) SelectedOrder);
Dat_PutHiddenParamOrder (((struct Svy_Surveys *) Context)->SelectedOrder);
WhichGroups = Grp_GetParamWhichGroups ();
Grp_PutParamWhichGroups (&WhichGroups);
break;
case Pag_ATT_EVENTS:
Frm_StartFormAnchor (ActSeeAtt,Pagination->Anchor);
Pag_PutHiddenParamPagNum (WhatPaginate,Pagination->LeftPage);
Dat_PutHiddenParamOrder ((Dat_StartEndTime_t) SelectedOrder);
Dat_PutHiddenParamOrder (((struct Att_Events *) Context)->SelectedOrder);
WhichGroups = Grp_GetParamWhichGroups ();
Grp_PutParamWhichGroups (&WhichGroups);
break;
case Pag_THREADS_FORUM:
Frm_StartFormAnchor (For_ActionsSeeFor[Forums->ForumSelected.Type],
Frm_StartFormAnchor (For_ActionsSeeFor[((struct For_Forums *) Context)->Forum.Type],
Pagination->Anchor);
For_PutAllHiddenParamsForum (Pagination->LeftPage, // Page of threads = left
1, // Page of posts = first
Forums->ForumSet,
(Dat_StartEndTime_t) SelectedOrder,
Forums->ForumSelected.Location,
((struct For_Forums *) Context)->ForumSet,
((struct For_Forums *) Context)->ThreadsOrder,
((struct For_Forums *) Context)->Forum.Location,
-1L,
-1L);
break;
case Pag_POSTS_FORUM:
Frm_StartFormAnchor (For_ActionsSeePstFor[Forums->ForumSelected.Type],
Frm_StartFormAnchor (For_ActionsSeePstFor[((struct For_Forums *) Context)->Forum.Type],
Pagination->Anchor);
For_PutAllHiddenParamsForum (Forums->CurrentPageThrs, // Page of threads = current
For_PutAllHiddenParamsForum (((struct For_Forums *) Context)->CurrentPageThrs, // Page of threads = current
Pagination->LeftPage, // Page of posts = left
Forums->ForumSet,
(Dat_StartEndTime_t) SelectedOrder,
Forums->ForumSelected.Location,
ThrCod,
((struct For_Forums *) Context)->ForumSet,
((struct For_Forums *) Context)->ThreadsOrder,
((struct For_Forums *) Context)->Forum.Location,
Cod,
-1L);
break;
case Pag_MESSAGES_RECEIVED:
@ -461,16 +460,16 @@ void Pag_WriteLinksToPages (Pag_WhatPaginate_t WhatPaginate,
break;
case Pag_MY_AGENDA:
Frm_StartFormAnchor (ActSeeMyAgd,Pagination->Anchor);
Agd_PutParamsMyAgenda (Gbl.Agenda.Past__FutureEvents,
Gbl.Agenda.PrivatPublicEvents,
Gbl.Agenda.HiddenVisiblEvents,
(Dat_StartEndTime_t) SelectedOrder,
Agd_PutParamsMyAgenda (((struct Agd_Agenda *) Context)->Past__FutureEvents,
((struct Agd_Agenda *) Context)->PrivatPublicEvents,
((struct Agd_Agenda *) Context)->HiddenVisiblEvents,
((struct Agd_Agenda *) Context)->SelectedOrder,
Pagination->LeftPage,
-1L);
Cod);
break;
case Pag_ANOTHER_AGENDA:
Frm_StartFormAnchor (ActSeeUsrAgd,Pagination->Anchor);
Agd_PutHiddenParamEventsOrder ((Dat_StartEndTime_t) SelectedOrder);
Agd_PutHiddenParamEventsOrder (((struct Agd_Agenda *) Context)->SelectedOrder);
Pag_PutHiddenParamPagNum (WhatPaginate,Pagination->LeftPage);
Usr_PutParamOtherUsrCodEncrypted (Gbl.Usrs.Other.UsrDat.EncryptedUsrCod);
break;
@ -511,58 +510,58 @@ void Pag_WriteLinksToPages (Pag_WhatPaginate_t WhatPaginate,
case Pag_ASSIGNMENTS:
Frm_StartFormAnchor (ActSeeAsg,Pagination->Anchor);
Pag_PutHiddenParamPagNum (WhatPaginate,NumPage);
Dat_PutHiddenParamOrder ((Dat_StartEndTime_t) SelectedOrder);
Dat_PutHiddenParamOrder (((struct Asg_Assignments *) Context)->SelectedOrder);
WhichGroups = Grp_GetParamWhichGroups ();
Grp_PutParamWhichGroups (&WhichGroups);
break;
case Pag_PROJECTS:
Frm_StartFormAnchor (ActSeePrj,Pagination->Anchor);
Prj_PutParams (&Gbl.Prjs.Filter,
(Prj_Order_t) SelectedOrder,
Prj_PutParams (&((struct Prj_Projects *) Context)->Filter,
((struct Prj_Projects *) Context)->SelectedOrder,
NumPage,
-1L);
Cod);
break;
case Pag_GAMES:
Frm_StartFormAnchor (ActSeeAllGam,Pagination->Anchor);
Pag_PutHiddenParamPagNum (WhatPaginate,NumPage);
Dat_PutHiddenParamOrder ((Dat_StartEndTime_t) SelectedOrder);
Dat_PutHiddenParamOrder (((struct Gam_Games *) Context)->SelectedOrder);
WhichGroups = Grp_GetParamWhichGroups ();
Grp_PutParamWhichGroups (&WhichGroups);
break;
case Pag_SURVEYS:
Frm_StartFormAnchor (ActSeeAllSvy,Pagination->Anchor);
Pag_PutHiddenParamPagNum (WhatPaginate,NumPage);
Dat_PutHiddenParamOrder ((Dat_StartEndTime_t) SelectedOrder);
Dat_PutHiddenParamOrder (((struct Svy_Surveys *) Context)->SelectedOrder);
WhichGroups = Grp_GetParamWhichGroups ();
Grp_PutParamWhichGroups (&WhichGroups);
break;
case Pag_ATT_EVENTS:
Frm_StartFormAnchor (ActSeeAtt,Pagination->Anchor);
Pag_PutHiddenParamPagNum (WhatPaginate,NumPage);
Dat_PutHiddenParamOrder ((Dat_StartEndTime_t) SelectedOrder);
Dat_PutHiddenParamOrder (((struct Att_Events *) Context)->SelectedOrder);
WhichGroups = Grp_GetParamWhichGroups ();
Grp_PutParamWhichGroups (&WhichGroups);
break;
case Pag_THREADS_FORUM:
Frm_StartFormAnchor (For_ActionsSeeFor[Forums->ForumSelected.Type],
Frm_StartFormAnchor (For_ActionsSeeFor[((struct For_Forums *) Context)->Forum.Type],
Pagination->Anchor);
For_PutAllHiddenParamsForum (NumPage, // Page of threads = number of page
1, // Page of posts = first
Forums->ForumSet,
(Dat_StartEndTime_t) SelectedOrder,
Forums->ForumSelected.Location,
((struct For_Forums *) Context)->ForumSet,
((struct For_Forums *) Context)->ThreadsOrder,
((struct For_Forums *) Context)->Forum.Location,
-1L,
-1L);
break;
case Pag_POSTS_FORUM:
Frm_StartFormAnchor (For_ActionsSeePstFor[Forums->ForumSelected.Type],
Frm_StartFormAnchor (For_ActionsSeePstFor[((struct For_Forums *) Context)->Forum.Type],
Pagination->Anchor);
For_PutAllHiddenParamsForum (Forums->CurrentPageThrs, // Page of threads = current
For_PutAllHiddenParamsForum (((struct For_Forums *) Context)->CurrentPageThrs, // Page of threads = current
NumPage, // Page of posts = number of page
Forums->ForumSet,
(Dat_StartEndTime_t) SelectedOrder,
Forums->ForumSelected.Location,
ThrCod,
((struct For_Forums *) Context)->ForumSet,
((struct For_Forums *) Context)->ThreadsOrder,
((struct For_Forums *) Context)->Forum.Location,
Cod,
-1L);
break;
case Pag_MESSAGES_RECEIVED:
@ -577,16 +576,16 @@ void Pag_WriteLinksToPages (Pag_WhatPaginate_t WhatPaginate,
break;
case Pag_MY_AGENDA:
Frm_StartFormAnchor (ActSeeMyAgd,Pagination->Anchor);
Agd_PutParamsMyAgenda (Gbl.Agenda.Past__FutureEvents,
Gbl.Agenda.PrivatPublicEvents,
Gbl.Agenda.HiddenVisiblEvents,
(Dat_StartEndTime_t) SelectedOrder,
Agd_PutParamsMyAgenda (((struct Agd_Agenda *) Context)->Past__FutureEvents,
((struct Agd_Agenda *) Context)->PrivatPublicEvents,
((struct Agd_Agenda *) Context)->HiddenVisiblEvents,
((struct Agd_Agenda *) Context)->SelectedOrder,
NumPage,
-1L);
Cod);
break;
case Pag_ANOTHER_AGENDA:
Frm_StartFormAnchor (ActSeeUsrAgd,Pagination->Anchor);
Agd_PutHiddenParamEventsOrder ((Dat_StartEndTime_t) SelectedOrder);
Agd_PutHiddenParamEventsOrder (((struct Agd_Agenda *) Context)->SelectedOrder);
Pag_PutHiddenParamPagNum (WhatPaginate,NumPage);
Usr_PutParamOtherUsrCodEncrypted (Gbl.Usrs.Other.UsrDat.EncryptedUsrCod);
break;
@ -614,58 +613,58 @@ void Pag_WriteLinksToPages (Pag_WhatPaginate_t WhatPaginate,
case Pag_ASSIGNMENTS:
Frm_StartFormAnchor (ActSeeAsg,Pagination->Anchor);
Pag_PutHiddenParamPagNum (WhatPaginate,Pagination->RightPage);
Dat_PutHiddenParamOrder ((Dat_StartEndTime_t) SelectedOrder);
Dat_PutHiddenParamOrder (((struct Asg_Assignments *) Context)->SelectedOrder);
WhichGroups = Grp_GetParamWhichGroups ();
Grp_PutParamWhichGroups (&WhichGroups);
break;
case Pag_PROJECTS:
Frm_StartFormAnchor (ActSeePrj,Pagination->Anchor);
Prj_PutParams (&Gbl.Prjs.Filter,
(Prj_Order_t) SelectedOrder,
Prj_PutParams (&((struct Prj_Projects *) Context)->Filter,
((struct Prj_Projects *) Context)->SelectedOrder,
Pagination->RightPage,
-1L);
Cod);
break;
case Pag_GAMES:
Frm_StartFormAnchor (ActSeeAllGam,Pagination->Anchor);
Pag_PutHiddenParamPagNum (WhatPaginate,Pagination->RightPage);
Dat_PutHiddenParamOrder ((Dat_StartEndTime_t) SelectedOrder);
Dat_PutHiddenParamOrder (((struct Gam_Games *) Context)->SelectedOrder);
WhichGroups = Grp_GetParamWhichGroups ();
Grp_PutParamWhichGroups (&WhichGroups);
break;
case Pag_SURVEYS:
Frm_StartFormAnchor (ActSeeAllSvy,Pagination->Anchor);
Pag_PutHiddenParamPagNum (WhatPaginate,Pagination->RightPage);
Dat_PutHiddenParamOrder ((Dat_StartEndTime_t) SelectedOrder);
Dat_PutHiddenParamOrder (((struct Svy_Surveys *) Context)->SelectedOrder);
WhichGroups = Grp_GetParamWhichGroups ();
Grp_PutParamWhichGroups (&WhichGroups);
break;
case Pag_ATT_EVENTS:
Frm_StartFormAnchor (ActSeeAtt,Pagination->Anchor);
Pag_PutHiddenParamPagNum (WhatPaginate,Pagination->RightPage);
Dat_PutHiddenParamOrder ((Dat_StartEndTime_t) SelectedOrder);
Dat_PutHiddenParamOrder (((struct Att_Events *) Context)->SelectedOrder);
WhichGroups = Grp_GetParamWhichGroups ();
Grp_PutParamWhichGroups (&WhichGroups);
break;
case Pag_THREADS_FORUM:
Frm_StartFormAnchor (For_ActionsSeeFor[Forums->ForumSelected.Type],
Frm_StartFormAnchor (For_ActionsSeeFor[((struct For_Forums *) Context)->Forum.Type],
Pagination->Anchor);
For_PutAllHiddenParamsForum (Pagination->RightPage, // Page of threads = right
1, // Page of posts = first
Forums->ForumSet,
(Dat_StartEndTime_t) SelectedOrder,
Forums->ForumSelected.Location,
((struct For_Forums *) Context)->ForumSet,
((struct For_Forums *) Context)->ThreadsOrder,
((struct For_Forums *) Context)->Forum.Location,
-1L,
-1L);
break;
case Pag_POSTS_FORUM:
Frm_StartFormAnchor (For_ActionsSeePstFor[Forums->ForumSelected.Type],
Frm_StartFormAnchor (For_ActionsSeePstFor[((struct For_Forums *) Context)->Forum.Type],
Pagination->Anchor);
For_PutAllHiddenParamsForum (Forums->CurrentPageThrs, // Page of threads = current
For_PutAllHiddenParamsForum (((struct For_Forums *) Context)->CurrentPageThrs, // Page of threads = current
Pagination->RightPage, // Page of posts = right
Forums->ForumSet,
(Dat_StartEndTime_t) SelectedOrder,
Forums->ForumSelected.Location,
ThrCod,
((struct For_Forums *) Context)->ForumSet,
((struct For_Forums *) Context)->ThreadsOrder,
((struct For_Forums *) Context)->Forum.Location,
Cod,
-1L);
break;
case Pag_MESSAGES_RECEIVED:
@ -680,16 +679,16 @@ void Pag_WriteLinksToPages (Pag_WhatPaginate_t WhatPaginate,
break;
case Pag_MY_AGENDA:
Frm_StartFormAnchor (ActSeeMyAgd,Pagination->Anchor);
Agd_PutParamsMyAgenda (Gbl.Agenda.Past__FutureEvents,
Gbl.Agenda.PrivatPublicEvents,
Gbl.Agenda.HiddenVisiblEvents,
(Dat_StartEndTime_t) SelectedOrder,
Agd_PutParamsMyAgenda (((struct Agd_Agenda *) Context)->Past__FutureEvents,
((struct Agd_Agenda *) Context)->PrivatPublicEvents,
((struct Agd_Agenda *) Context)->HiddenVisiblEvents,
((struct Agd_Agenda *) Context)->SelectedOrder,
Pagination->RightPage,
-1L);
Cod);
break;
case Pag_ANOTHER_AGENDA:
Frm_StartFormAnchor (ActSeeUsrAgd,Pagination->Anchor);
Agd_PutHiddenParamEventsOrder ((Dat_StartEndTime_t) SelectedOrder);
Agd_PutHiddenParamEventsOrder (((struct Agd_Agenda *) Context)->SelectedOrder);
Pag_PutHiddenParamPagNum (WhatPaginate,Pagination->RightPage);
Usr_PutParamOtherUsrCodEncrypted (Gbl.Usrs.Other.UsrDat.EncryptedUsrCod);
break;
@ -718,58 +717,58 @@ void Pag_WriteLinksToPages (Pag_WhatPaginate_t WhatPaginate,
case Pag_ASSIGNMENTS:
Frm_StartFormAnchor (ActSeeAsg,Pagination->Anchor);
Pag_PutHiddenParamPagNum (WhatPaginate,Pagination->NumPags);
Dat_PutHiddenParamOrder ((Dat_StartEndTime_t) SelectedOrder);
Dat_PutHiddenParamOrder (((struct Asg_Assignments *) Context)->SelectedOrder);
WhichGroups = Grp_GetParamWhichGroups ();
Grp_PutParamWhichGroups (&WhichGroups);
break;
case Pag_PROJECTS:
Frm_StartFormAnchor (ActSeePrj,Pagination->Anchor);
Prj_PutParams (&Gbl.Prjs.Filter,
(Prj_Order_t) Gbl.Prjs.SelectedOrder,
Prj_PutParams (&((struct Prj_Projects *) Context)->Filter,
((struct Prj_Projects *) Context)->SelectedOrder,
Pagination->NumPags,
-1L);
Cod);
break;
case Pag_GAMES:
Frm_StartFormAnchor (ActSeeAllGam,Pagination->Anchor);
Pag_PutHiddenParamPagNum (WhatPaginate,Pagination->NumPags);
Dat_PutHiddenParamOrder ((Dat_StartEndTime_t) SelectedOrder);
Dat_PutHiddenParamOrder (((struct Gam_Games *) Context)->SelectedOrder);
WhichGroups = Grp_GetParamWhichGroups ();
Grp_PutParamWhichGroups (&WhichGroups);
break;
case Pag_SURVEYS:
Frm_StartFormAnchor (ActSeeAllSvy,Pagination->Anchor);
Pag_PutHiddenParamPagNum (WhatPaginate,Pagination->NumPags);
Dat_PutHiddenParamOrder ((Dat_StartEndTime_t) SelectedOrder);
Dat_PutHiddenParamOrder (((struct Svy_Surveys *) Context)->SelectedOrder);
WhichGroups = Grp_GetParamWhichGroups ();
Grp_PutParamWhichGroups (&WhichGroups);
break;
case Pag_ATT_EVENTS:
Frm_StartFormAnchor (ActSeeAtt,Pagination->Anchor);
Pag_PutHiddenParamPagNum (WhatPaginate,Pagination->NumPags);
Dat_PutHiddenParamOrder ((Dat_StartEndTime_t) SelectedOrder);
Dat_PutHiddenParamOrder (((struct Att_Events *) Context)->SelectedOrder);
WhichGroups = Grp_GetParamWhichGroups ();
Grp_PutParamWhichGroups (&WhichGroups);
break;
case Pag_THREADS_FORUM:
Frm_StartFormAnchor (For_ActionsSeeFor[Forums->ForumSelected.Type],
Frm_StartFormAnchor (For_ActionsSeeFor[((struct For_Forums *) Context)->Forum.Type],
Pagination->Anchor);
For_PutAllHiddenParamsForum (Pagination->NumPags, // Page of threads = last
1, // Page of posts = first
Forums->ForumSet,
(Dat_StartEndTime_t) SelectedOrder,
Forums->ForumSelected.Location,
((struct For_Forums *) Context)->ForumSet,
((struct For_Forums *) Context)->ThreadsOrder,
((struct For_Forums *) Context)->Forum.Location,
-1L,
-1L);
break;
case Pag_POSTS_FORUM:
Frm_StartFormAnchor (For_ActionsSeePstFor[Forums->ForumSelected.Type],
Frm_StartFormAnchor (For_ActionsSeePstFor[((struct For_Forums *) Context)->Forum.Type],
Pagination->Anchor);
For_PutAllHiddenParamsForum (Forums->CurrentPageThrs, // Page of threads = current
For_PutAllHiddenParamsForum (((struct For_Forums *) Context)->CurrentPageThrs, // Page of threads = current
Pagination->NumPags, // Page of posts = last
Forums->ForumSet,
(Dat_StartEndTime_t) SelectedOrder,
Forums->ForumSelected.Location,
ThrCod,
((struct For_Forums *) Context)->ForumSet,
((struct For_Forums *) Context)->ThreadsOrder,
((struct For_Forums *) Context)->Forum.Location,
Cod,
-1L);
break;
case Pag_MESSAGES_RECEIVED:
@ -784,16 +783,16 @@ void Pag_WriteLinksToPages (Pag_WhatPaginate_t WhatPaginate,
break;
case Pag_MY_AGENDA:
Frm_StartFormAnchor (ActSeeMyAgd,Pagination->Anchor);
Agd_PutParamsMyAgenda (Gbl.Agenda.Past__FutureEvents,
Gbl.Agenda.PrivatPublicEvents,
Gbl.Agenda.HiddenVisiblEvents,
(Dat_StartEndTime_t) SelectedOrder,
Agd_PutParamsMyAgenda (((struct Agd_Agenda *) Context)->Past__FutureEvents,
((struct Agd_Agenda *) Context)->PrivatPublicEvents,
((struct Agd_Agenda *) Context)->HiddenVisiblEvents,
((struct Agd_Agenda *) Context)->SelectedOrder,
Pagination->NumPags,
-1L);
Cod);
break;
case Pag_ANOTHER_AGENDA:
Frm_StartFormAnchor (ActSeeUsrAgd,Pagination->Anchor);
Agd_PutHiddenParamEventsOrder ((Dat_StartEndTime_t) SelectedOrder);
Agd_PutHiddenParamEventsOrder (((struct Agd_Agenda *) Context)->SelectedOrder);
Pag_PutHiddenParamPagNum (WhatPaginate,Pagination->NumPags);
Usr_PutParamOtherUsrCodEncrypted (Gbl.Usrs.Other.UsrDat.EncryptedUsrCod);
break;

View File

@ -77,12 +77,10 @@ struct Pagination // Used for threads and messages pagination
void Pag_CalculatePagination (struct Pagination *Pagination);
void Pag_WriteLinksToPagesCentered (Pag_WhatPaginate_t WhatPaginate,
struct Pagination *Pagination,
unsigned SelectedOrder,
const struct For_Forums *Forums,long ThrCod);
const void *Context,long Cod);
void Pag_WriteLinksToPages (Pag_WhatPaginate_t WhatPaginate,
struct Pagination *Pagination,
unsigned SelectedOrder,
const struct For_Forums *Forums,long ThrCod,
const void *Context,long Cod,
bool FirstMsgEnabled,
const char *Subject,const char *ClassTxt,
bool LinkToPagCurrent);

File diff suppressed because it is too large Load Diff

View File

@ -172,6 +172,9 @@ struct Prj_Project
/***************************** Public prototypes *****************************/
/*****************************************************************************/
void Prj_SetPrjCod (long PrjCod);
long Prj_GetPrjCod (void);
void Prj_ListUsrsToSelect (void);
void Prj_SeeProjects (void);
void Prj_ShowTableSelectedPrjs (void);
@ -204,8 +207,6 @@ void Prj_RemStd (void);
void Prj_RemTut (void);
void Prj_RemEvl (void);
void Prj_PutHiddenParamPrjOrder (void);
bool Prj_CheckIfICanViewProjectFiles (unsigned MyRolesInProject);
void Prj_RequestCreatePrj (void);
@ -216,7 +217,7 @@ void Prj_FreeMemProject (struct Prj_Project *Prj);
void Prj_GetDataOfProjectByCod (struct Prj_Project *Prj);
long Prj_GetCourseOfProject (long PrjCod);
void Prj_FreeListProjects (void);
void Prj_FreeListProjects (struct Prj_Projects *Projects);
void Prj_PutParamPrjCod (long PrjCod);
long Prj_GetParamPrjCod (void);

View File

@ -1502,7 +1502,8 @@ static void Rec_WriteFormShowOfficeHoursOneTch (bool ShowOfficeHours)
{
extern const char *Txt_Show_office_hours;
Lay_PutContextualCheckbox (ActSeeRecOneTch,Rec_PutParamsShowOfficeHoursOneTch,
Lay_PutContextualCheckbox (ActSeeRecOneTch,
Rec_PutParamsShowOfficeHoursOneTch,
"ShowOfficeHours",
ShowOfficeHours,false,
Txt_Show_office_hours,
@ -1513,7 +1514,8 @@ static void Rec_WriteFormShowOfficeHoursSeveralTchs (bool ShowOfficeHours)
{
extern const char *Txt_Show_office_hours;
Lay_PutContextualCheckbox (ActSeeRecSevTch,Rec_PutParamsShowOfficeHoursSeveralTchs,
Lay_PutContextualCheckbox (ActSeeRecSevTch,
Rec_PutParamsShowOfficeHoursSeveralTchs,
"ShowOfficeHours",
ShowOfficeHours,false,
Txt_Show_office_hours,

View File

@ -229,10 +229,8 @@ static void Svy_ListAllSurveys (void)
}
/***** Write links to pages *****/
Pag_WriteLinksToPagesCentered (Pag_SURVEYS,
&Pagination,
(unsigned) Gbl.Svys.SelectedOrder,
NULL,0);
Pag_WriteLinksToPagesCentered (Pag_SURVEYS,&Pagination,
&Gbl.Svys,-1L);
if (Gbl.Svys.Num)
{
@ -285,10 +283,8 @@ static void Svy_ListAllSurveys (void)
Ale_ShowAlert (Ale_INFO,Txt_No_surveys);
/***** Write again links to pages *****/
Pag_WriteLinksToPagesCentered (Pag_SURVEYS,
&Pagination,
(unsigned) Gbl.Svys.SelectedOrder,
NULL,0);
Pag_WriteLinksToPagesCentered (Pag_SURVEYS,&Pagination,
&Gbl.Svys,-1L);
/***** Button to create a new survey *****/
if (Svy_CheckIfICanCreateSvy ())

View File

@ -1641,8 +1641,8 @@ static void TL_WriteNote (const struct TL_Note *SocNot,
break;
case TL_NOTE_FORUM_POST:
/* Get forum type of the post */
For_GetForumTypeAndLocationOfAPost (SocNot->Cod,&Forums.ForumSelected);
For_SetForumName (&Forums.ForumSelected,ForumName,Gbl.Prefs.Language,false); // Set forum name in recipient's language
For_GetForumTypeAndLocationOfAPost (SocNot->Cod,&Forums.Forum);
For_SetForumName (&Forums.Forum,ForumName,Gbl.Prefs.Language,false); // Set forum name in recipient's language
break;
default:
break;
@ -2042,13 +2042,13 @@ static void TL_PutFormGoToAction (const struct TL_Note *SocNot,
case TL_NOTE_POST: // Not applicable
return;
case TL_NOTE_FORUM_POST:
Frm_StartFormUnique (For_ActionsSeeFor[Forums->ForumSelected.Type]);
Frm_StartFormUnique (For_ActionsSeeFor[Forums->Forum.Type]);
For_PutAllHiddenParamsForum (1, // Page of threads = first
1, // Page of posts = first
Forums->ForumSet,
Forums->ThreadsOrder,
Forums->ForumSelected.Location,
Forums->ForumSelected.ThrCod,
Forums->Forum.Location,
Forums->Thread.ThrCod,
-1L);
if (SocNot->HieCod != Gbl.Hierarchy.Crs.CrsCod) // Not the current course
Crs_PutParamCrsCod (SocNot->HieCod); // Go to another course