Version 16.177

This commit is contained in:
Antonio Cañas Vargas 2017-04-13 20:09:22 +02:00
parent 9e1d2dd0e7
commit ad7767beeb
14 changed files with 371 additions and 3547 deletions

File diff suppressed because it is too large Load Diff

View File

@ -105,7 +105,7 @@ static void Agd_GetParamEventOrder (void);
static void Agd_PutFormsToRemEditOneEvent (struct AgendaEvent *AgdEvent);
static void Agd_PutCurrentParams (void);
static void Agd_PutCurrentParamsMyAgenda (void);
static void Agd_GetParams (Agd_AgendaType_t AgendaType);
static void Agd_GetListEvents (Agd_AgendaType_t AgendaType);
@ -187,12 +187,11 @@ static void Agd_ShowFormToSelPast__FutureEvents (void)
(Gbl.Agenda.Past__FutureEvents & (1 << PstFut)) ? "PREF_ON" :
"PREF_OFF");
Act_FormStart (ActSeeMyAgd);
Agd_PutParams (Gbl.Agenda.Past__FutureEvents ^ (1 << PstFut), // Toggle
Gbl.Agenda.PrivatPublicEvents,
Gbl.Agenda.HiddenVisiblEvents,
Gbl.Agenda.SelectedOrder,
-1L,
Gbl.Pag.CurrentPage);
Agd_PutParamsMyAgenda (Gbl.Agenda.Past__FutureEvents ^ (1 << PstFut), // Toggle
Gbl.Agenda.PrivatPublicEvents,
Gbl.Agenda.HiddenVisiblEvents,
Gbl.Agenda.CurrentPage,
-1L);
fprintf (Gbl.F.Out,"<input type=\"image\" src=\"%s/%s\""
" alt=\"%s\" title=\"%s\" class=\"ICO25x25\""
@ -230,12 +229,11 @@ static void Agd_ShowFormToSelPrivatPublicEvents (void)
(Gbl.Agenda.PrivatPublicEvents & (1 << PrvPub)) ? "PREF_ON" :
"PREF_OFF");
Act_FormStart (ActSeeMyAgd);
Agd_PutParams (Gbl.Agenda.Past__FutureEvents,
Gbl.Agenda.PrivatPublicEvents ^ (1 << PrvPub), // Toggle
Gbl.Agenda.HiddenVisiblEvents,
Gbl.Agenda.SelectedOrder,
-1L,
Gbl.Pag.CurrentPage);
Agd_PutParamsMyAgenda (Gbl.Agenda.Past__FutureEvents,
Gbl.Agenda.PrivatPublicEvents ^ (1 << PrvPub), // Toggle
Gbl.Agenda.HiddenVisiblEvents,
Gbl.Agenda.CurrentPage,
-1L);
fprintf (Gbl.F.Out,"<input type=\"image\" src=\"%s/%s\""
" alt=\"%s\" title=\"%s\" class=\"ICO25x25\""
@ -273,12 +271,11 @@ static void Agd_ShowFormToSelHiddenVisiblEvents (void)
(Gbl.Agenda.HiddenVisiblEvents & (1 << HidVis)) ? "PREF_ON" :
"PREF_OFF");
Act_FormStart (ActSeeMyAgd);
Agd_PutParams (Gbl.Agenda.Past__FutureEvents,
Gbl.Agenda.PrivatPublicEvents,
Gbl.Agenda.HiddenVisiblEvents ^ (1 << HidVis), // Toggle
Gbl.Agenda.SelectedOrder,
-1L,
Gbl.Pag.CurrentPage);
Agd_PutParamsMyAgenda (Gbl.Agenda.Past__FutureEvents,
Gbl.Agenda.PrivatPublicEvents,
Gbl.Agenda.HiddenVisiblEvents ^ (1 << HidVis), // Toggle
Gbl.Agenda.CurrentPage,
-1L);
fprintf (Gbl.F.Out,"<input type=\"image\" src=\"%s/%s\""
" alt=\"%s\" title=\"%s\" class=\"ICO25x25\""
@ -462,9 +459,9 @@ static void Agd_ShowEvents (Agd_AgendaType_t AgendaType)
/***** Compute variables related to pagination *****/
Pagination.NumItems = Gbl.Agenda.Num;
Pagination.CurrentPage = (int) Gbl.Pag.CurrentPage;
Pagination.CurrentPage = (int) Gbl.Agenda.CurrentPage;
Pag_CalculatePagination (&Pagination);
Gbl.Pag.CurrentPage = (unsigned) Pagination.CurrentPage;
Gbl.Agenda.CurrentPage = (unsigned) Pagination.CurrentPage;
/***** Write links to pages *****/
if (Pagination.MoreThanOnePage)
@ -584,15 +581,16 @@ static void Agd_WriteHeaderListEvents (Agd_AgendaType_t AgendaType)
case Agd_MY_AGENDA_TODAY:
case Agd_MY_AGENDA:
Act_FormStart (ActSeeMyAgd);
Pag_PutHiddenParamPagNum (Pag_MY_AGENDA,Gbl.Agenda.CurrentPage);
break;
case Agd_ANOTHER_AGENDA_TODAY:
case Agd_ANOTHER_AGENDA:
Act_FormStart (ActSeeUsrAgd);
Usr_PutParamOtherUsrCodEncrypted ();
Pag_PutHiddenParamPagNum (Pag_ANOTHER_AGENDA,Gbl.Agenda.CurrentPage);
break;
}
Par_PutHiddenParamUnsigned ("Order",(unsigned) Order);
Pag_PutHiddenParamPagNum (Gbl.Pag.CurrentPage);
Act_LinkFormSubmit (Txt_START_END_TIME_HELP[Order],"TIT_TBL",NULL);
if (Order == Gbl.Agenda.SelectedOrder)
fprintf (Gbl.F.Out,"<u>");
@ -642,7 +640,7 @@ static void Agd_PutIconToCreateNewEvent (void)
/***** Put form to create a new event *****/
Gbl.Agenda.AgdCodToEdit = -1L;
Lay_PutContextualLink (ActFrmNewEvtMyAgd,Agd_PutCurrentParams,
Lay_PutContextualLink (ActFrmNewEvtMyAgd,Agd_PutCurrentParamsMyAgenda,
"plus64x64.png",
Txt_New_event,NULL,
NULL);
@ -712,12 +710,11 @@ static void Agd_PutButtonToCreateNewEvent (void)
extern const char *Txt_New_event;
Act_FormStart (ActFrmNewEvtMyAgd);
Agd_PutParams (Gbl.Agenda.Past__FutureEvents,
Gbl.Agenda.PrivatPublicEvents,
Gbl.Agenda.HiddenVisiblEvents,
Gbl.Agenda.SelectedOrder,
-1L,
Gbl.Pag.CurrentPage);
Agd_PutParamsMyAgenda (Gbl.Agenda.Past__FutureEvents,
Gbl.Agenda.PrivatPublicEvents,
Gbl.Agenda.HiddenVisiblEvents,
Gbl.Agenda.CurrentPage,
-1L);
Lay_PutConfirmButton (Txt_New_event);
Act_FormEnd ();
}
@ -852,66 +849,64 @@ static void Agd_PutFormsToRemEditOneEvent (struct AgendaEvent *AgdEvent)
Gbl.Agenda.AgdCodToEdit = AgdEvent->AgdCod; // Used as parameter in contextual links
/***** Put form to remove event *****/
Lay_PutContextualLink (ActReqRemEvtMyAgd,Agd_PutCurrentParams,
Lay_PutContextualLink (ActReqRemEvtMyAgd,Agd_PutCurrentParamsMyAgenda,
"remove-on64x64.png",
Txt_Remove,NULL,
NULL);
/***** Put form to hide/show event *****/
if (AgdEvent->Hidden)
Lay_PutContextualLink (ActShoEvtMyAgd,Agd_PutCurrentParams,
Lay_PutContextualLink (ActShoEvtMyAgd,Agd_PutCurrentParamsMyAgenda,
"eye-slash-on64x64.png",
Txt_Show,NULL,
NULL);
else
Lay_PutContextualLink (ActHidEvtMyAgd,Agd_PutCurrentParams,
Lay_PutContextualLink (ActHidEvtMyAgd,Agd_PutCurrentParamsMyAgenda,
"eye-on64x64.png",
Txt_Hide,NULL,
NULL);
/***** Put form to edit event *****/
Lay_PutContextualLink (ActEdiOneEvtMyAgd,Agd_PutCurrentParams,
Lay_PutContextualLink (ActEdiOneEvtMyAgd,Agd_PutCurrentParamsMyAgenda,
"edit64x64.png",
Txt_Edit,NULL,
NULL);
/***** Put form to make event public/private *****/
if (AgdEvent->Public)
Lay_PutContextualLink (ActPrvEvtMyAgd,Agd_PutCurrentParams,
Lay_PutContextualLink (ActPrvEvtMyAgd,Agd_PutCurrentParamsMyAgenda,
"unlock-on64x64.png",
Txt_Event_visible_to_the_users_of_your_courses_click_to_make_it_private,NULL,
NULL);
else
Lay_PutContextualLink (ActPubEvtMyAgd,Agd_PutCurrentParams,
Lay_PutContextualLink (ActPubEvtMyAgd,Agd_PutCurrentParamsMyAgenda,
"lock-on64x64.png",
Txt_Event_private_click_to_make_it_visible_to_the_users_of_your_courses,NULL,
NULL);
}
/*****************************************************************************/
/******************* Parameters passed in agenda forms ***********************/
/****************** Parameters passed in my agenda forms *********************/
/*****************************************************************************/
static void Agd_PutCurrentParams (void)
static void Agd_PutCurrentParamsMyAgenda (void)
{
Agd_PutParams (Gbl.Agenda.Past__FutureEvents,
Gbl.Agenda.PrivatPublicEvents,
Gbl.Agenda.HiddenVisiblEvents,
Gbl.Agenda.SelectedOrder,
Gbl.Agenda.AgdCodToEdit,
Gbl.Pag.CurrentPage);
Agd_PutParamsMyAgenda (Gbl.Agenda.Past__FutureEvents,
Gbl.Agenda.PrivatPublicEvents,
Gbl.Agenda.HiddenVisiblEvents,
Gbl.Agenda.CurrentPage,
Gbl.Agenda.AgdCodToEdit);
}
/* The following function is called
when one or more parameters must be passed explicitely.
Each parameter is passed only if its value is distinct to default. */
void Agd_PutParams (unsigned Past__FutureEvents,
unsigned PrivatPublicEvents,
unsigned HiddenVisiblEvents,
Agd_Order_t Order,
long AgdCodToEdit,
unsigned NumPage)
void Agd_PutParamsMyAgenda (unsigned Past__FutureEvents,
unsigned PrivatPublicEvents,
unsigned HiddenVisiblEvents,
unsigned NumPage,
long AgdCodToEdit)
{
if (Past__FutureEvents != (Agd_DEFAULT_PAST___EVENTS |
Agd_DEFAULT_FUTURE_EVENTS))
@ -925,14 +920,14 @@ void Agd_PutParams (unsigned Past__FutureEvents,
Agd_DEFAULT_VISIBL_EVENTS))
Agd_PutHiddenParamHiddenVisiblEvents (HiddenVisiblEvents);
if (Order != Agd_ORDER_DEFAULT)
Par_PutHiddenParamUnsigned ("Order",(unsigned) Order);
if (Gbl.Agenda.SelectedOrder != Agd_ORDER_DEFAULT)
Par_PutHiddenParamUnsigned ("Order",(unsigned) Gbl.Agenda.SelectedOrder);
if (NumPage > 1)
Pag_PutHiddenParamPagNum (Pag_MY_AGENDA,NumPage);
if (AgdCodToEdit > 0)
Par_PutHiddenParamLong ("AgdCod",AgdCodToEdit);
if (NumPage > 1)
Pag_PutHiddenParamPagNum (NumPage);
}
/*****************************************************************************/
@ -956,7 +951,7 @@ static void Agd_GetParams (Agd_AgendaType_t AgendaType)
Agd_GetParamsHiddenVisiblEvents ();
}
Agd_GetParamEventOrder ();
Pag_GetParamPagNum (WhatPaginate[AgendaType]);
Gbl.Agenda.CurrentPage = Pag_GetParamPagNum (WhatPaginate[AgendaType]);
}
/*****************************************************************************/
@ -1323,7 +1318,7 @@ void Agd_AskRemEvent (void)
/***** Button of confirmation of removing *****/
Act_FormStart (ActRemEvtMyAgd);
Gbl.Agenda.AgdCodToEdit = AgdEvent.AgdCod;
Agd_PutCurrentParams ();
Agd_PutCurrentParamsMyAgenda ();
/***** Ask for confirmation of removing *****/
sprintf (Gbl.Message,Txt_Do_you_really_want_to_remove_the_event_X,
@ -1556,7 +1551,7 @@ void Agd_RequestCreatOrEditEvent (void)
Act_FormStart (ActChgEvtMyAgd);
Gbl.Agenda.AgdCodToEdit = AgdEvent.AgdCod;
}
Agd_PutCurrentParams ();
Agd_PutCurrentParamsMyAgenda ();
/***** Table start *****/
Lay_StartRoundFrameTable (NULL,

View File

@ -104,12 +104,11 @@ void Agd_ShowOtherAgendaAfterLogIn (void);
void Agd_RequestCreatOrEditEvent (void);
void Agd_PutParams (unsigned Past__FutureEvents,
unsigned PrivatPublicEvents,
unsigned HiddenVisiblEvents,
Agd_Order_t Order,
long AgdCodToEdit,
unsigned NumPage);
void Agd_PutParamsMyAgenda (unsigned Past__FutureEvents,
unsigned PrivatPublicEvents,
unsigned HiddenVisiblEvents,
unsigned NumPage,
long AgdCodToEdit);
void Agd_PutHiddenParamEventsOrder (void);
void Agd_FreeListEvents (void);

View File

@ -101,7 +101,7 @@ void Asg_SeeAssignments (void)
/***** Get parameters *****/
Asg_GetParamAsgOrder ();
Grp_GetParamWhichGrps ();
Pag_GetParamPagNum (Pag_ASSIGNMENTS);
Gbl.Asgs.CurrentPage = Pag_GetParamPagNum (Pag_ASSIGNMENTS);
/***** Show all the assignments *****/
Asg_ShowAllAssignments ();
@ -130,9 +130,9 @@ static void Asg_ShowAllAssignments (void)
/***** Compute variables related to pagination *****/
Pagination.NumItems = Gbl.Asgs.Num;
Pagination.CurrentPage = (int) Gbl.Pag.CurrentPage;
Pagination.CurrentPage = (int) Gbl.Asgs.CurrentPage;
Pag_CalculatePagination (&Pagination);
Gbl.Pag.CurrentPage = (unsigned) Pagination.CurrentPage;
Gbl.Asgs.CurrentPage = (unsigned) Pagination.CurrentPage;
/***** Write links to pages *****/
if (Pagination.MoreThanOnePage)
@ -158,7 +158,7 @@ static void Asg_ShowAllAssignments (void)
fprintf (Gbl.F.Out,"<th class=\"LEFT_MIDDLE\">");
Act_FormStart (ActSeeAsg);
Grp_PutParamWhichGrps ();
Pag_PutHiddenParamPagNum (Gbl.Pag.CurrentPage);
Pag_PutHiddenParamPagNum (Pag_ASSIGNMENTS,Gbl.Asgs.CurrentPage);
Par_PutHiddenParamUnsigned ("Order",(unsigned) Order);
Act_LinkFormSubmit (Txt_START_END_TIME_HELP[Order],"TIT_TBL",NULL);
if (Order == Gbl.Asgs.SelectedOrder)
@ -273,7 +273,7 @@ static void Asg_PutParamsToCreateNewAsg (void)
{
Asg_PutHiddenParamAsgOrder ();
Grp_PutParamWhichGrps ();
Pag_PutHiddenParamPagNum (Gbl.Pag.CurrentPage);
Pag_PutHiddenParamPagNum (Pag_ASSIGNMENTS,Gbl.Asgs.CurrentPage);
}
/*****************************************************************************/
@ -290,7 +290,7 @@ static void Asg_PutFormToSelectWhichGroupsToShow (void)
static void Asg_ParamsWhichGroupsToShow (void)
{
Asg_PutHiddenParamAsgOrder ();
Pag_PutHiddenParamPagNum (Gbl.Pag.CurrentPage);
Pag_PutHiddenParamPagNum (Pag_ASSIGNMENTS,Gbl.Asgs.CurrentPage);
}
/*****************************************************************************/
@ -553,7 +553,7 @@ static void Asg_PutParams (void)
Asg_PutParamAsgCod (Gbl.Asgs.AsgCodToEdit);
Asg_PutHiddenParamAsgOrder ();
Grp_PutParamWhichGrps ();
Pag_PutHiddenParamPagNum (Gbl.Pag.CurrentPage);
Pag_PutHiddenParamPagNum (Pag_ASSIGNMENTS,Gbl.Asgs.CurrentPage);
}
/*****************************************************************************/
@ -905,7 +905,7 @@ void Asg_ReqRemAssignment (void)
/***** Get parameters *****/
Asg_GetParamAsgOrder ();
Grp_GetParamWhichGrps ();
Pag_GetParamPagNum (Pag_ASSIGNMENTS);
Gbl.Asgs.CurrentPage = Pag_GetParamPagNum (Pag_ASSIGNMENTS);
/***** Get assignment code *****/
if ((Asg.AsgCod = Asg_GetParamAsgCod ()) == -1L)
@ -919,7 +919,7 @@ void Asg_ReqRemAssignment (void)
Asg_PutParamAsgCod (Asg.AsgCod);
Asg_PutHiddenParamAsgOrder ();
Grp_PutParamWhichGrps ();
Pag_PutHiddenParamPagNum (Gbl.Pag.CurrentPage);
Pag_PutHiddenParamPagNum (Pag_ASSIGNMENTS,Gbl.Asgs.CurrentPage);
/***** Ask for confirmation of removing *****/
sprintf (Gbl.Message,Txt_Do_you_really_want_to_remove_the_assignment_X,
@ -1077,7 +1077,7 @@ void Asg_RequestCreatOrEditAsg (void)
/***** Get parameters *****/
Asg_GetParamAsgOrder ();
Grp_GetParamWhichGrps ();
Pag_GetParamPagNum (Pag_ASSIGNMENTS);
Gbl.Asgs.CurrentPage = Pag_GetParamPagNum (Pag_ASSIGNMENTS);
/***** Get the code of the assignment *****/
ItsANewAssignment = ((Asg.AsgCod = Asg_GetParamAsgCod ()) == -1L);
@ -1114,7 +1114,7 @@ void Asg_RequestCreatOrEditAsg (void)
}
Asg_PutHiddenParamAsgOrder ();
Grp_PutParamWhichGrps ();
Pag_PutHiddenParamPagNum (Gbl.Pag.CurrentPage);
Pag_PutHiddenParamPagNum (Pag_ASSIGNMENTS,Gbl.Asgs.CurrentPage);
/***** Table start *****/
Lay_StartRoundFrameTable (NULL,

View File

@ -148,7 +148,7 @@ void Att_SeeAttEvents (void)
/***** Get parameters *****/
Att_GetParamAttOrder ();
Grp_GetParamWhichGrps ();
Pag_GetParamPagNum (Pag_ATT_EVENTS);
Gbl.AttEvents.CurrentPage = Pag_GetParamPagNum (Pag_ATT_EVENTS);
/***** Get list of attendance events *****/
Att_GetListAttEvents (Att_NEWEST_FIRST);
@ -208,9 +208,9 @@ static void Att_ShowAllAttEvents (void)
/***** Compute variables related to pagination *****/
Pagination.NumItems = Gbl.AttEvents.Num;
Pagination.CurrentPage = (int) Gbl.Pag.CurrentPage;
Pagination.CurrentPage = (int) Gbl.AttEvents.CurrentPage;
Pag_CalculatePagination (&Pagination);
Gbl.Pag.CurrentPage = (unsigned) Pagination.CurrentPage;
Gbl.AttEvents.CurrentPage = (unsigned) Pagination.CurrentPage;
/***** Write links to pages *****/
if (Pagination.MoreThanOnePage)
@ -238,7 +238,7 @@ static void Att_ShowAllAttEvents (void)
fprintf (Gbl.F.Out,"<th class=\"LEFT_MIDDLE\">");
Act_FormStart (ActSeeAtt);
Grp_PutParamWhichGrps ();
Pag_PutHiddenParamPagNum (Gbl.Pag.CurrentPage);
Pag_PutHiddenParamPagNum (Pag_ATT_EVENTS,Gbl.AttEvents.CurrentPage);
Par_PutHiddenParamUnsigned ("Order",(unsigned) Order);
Act_LinkFormSubmit (Txt_START_END_TIME_HELP[Order],"TIT_TBL",NULL);
if (Order == Gbl.AttEvents.SelectedOrder)
@ -301,7 +301,7 @@ static void Att_PutFormToSelectWhichGroupsToShow (void)
static void Att_ParamsWhichGroupsToShow (void)
{
Att_PutHiddenParamAttOrder ();
Pag_PutHiddenParamPagNum (Gbl.Pag.CurrentPage);
Pag_PutHiddenParamPagNum (Pag_ATT_EVENTS,Gbl.AttEvents.CurrentPage);
}
/*****************************************************************************/
@ -341,7 +341,7 @@ static void Att_PutParamsToCreateNewAttEvent (void)
{
Att_PutHiddenParamAttOrder ();
Grp_PutParamWhichGrps ();
Pag_PutHiddenParamPagNum (Gbl.Pag.CurrentPage);
Pag_PutHiddenParamPagNum (Pag_ATT_EVENTS,Gbl.AttEvents.CurrentPage);
}
/*****************************************************************************/
@ -529,7 +529,7 @@ static void Att_PutFormToListStdsParams (void)
{
Att_PutHiddenParamAttOrder ();
Grp_PutParamWhichGrps ();
Pag_PutHiddenParamPagNum (Gbl.Pag.CurrentPage);
Pag_PutHiddenParamPagNum (Pag_ATT_EVENTS,Gbl.AttEvents.CurrentPage);
}
/*****************************************************************************/
@ -583,7 +583,7 @@ static void Att_PutParams (void)
Att_PutParamAttCod (Gbl.AttEvents.AttCodToEdit);
Att_PutHiddenParamAttOrder ();
Grp_PutParamWhichGrps ();
Pag_PutHiddenParamPagNum (Gbl.Pag.CurrentPage);
Pag_PutHiddenParamPagNum (Pag_ATT_EVENTS,Gbl.AttEvents.CurrentPage);
}
/*****************************************************************************/
@ -868,7 +868,7 @@ void Att_AskRemAttEvent (void)
/***** Get parameters *****/
Att_GetParamAttOrder ();
Grp_GetParamWhichGrps ();
Pag_GetParamPagNum (Pag_ATT_EVENTS);
Gbl.AttEvents.CurrentPage = Pag_GetParamPagNum (Pag_ATT_EVENTS);
/***** Get attendance event code *****/
if ((Att.AttCod = Att_GetParamAttCod ()) == -1L)
@ -882,7 +882,7 @@ void Att_AskRemAttEvent (void)
Att_PutParamAttCod (Att.AttCod);
Att_PutHiddenParamAttOrder ();
Grp_PutParamWhichGrps ();
Pag_PutHiddenParamPagNum (Gbl.Pag.CurrentPage);
Pag_PutHiddenParamPagNum (Pag_ATT_EVENTS,Gbl.AttEvents.CurrentPage);
/***** Ask for confirmation of removing *****/
sprintf (Gbl.Message,Txt_Do_you_really_want_to_remove_the_event_X,
@ -1043,7 +1043,7 @@ void Att_RequestCreatOrEditAttEvent (void)
/***** Get parameters *****/
Att_GetParamAttOrder ();
Grp_GetParamWhichGrps ();
Pag_GetParamPagNum (Pag_ATT_EVENTS);
Gbl.AttEvents.CurrentPage = Pag_GetParamPagNum (Pag_ATT_EVENTS);
/***** Get the code of the attendance event *****/
Att.AttCod = Att_GetParamAttCod ();
@ -1082,7 +1082,7 @@ void Att_RequestCreatOrEditAttEvent (void)
}
Att_PutHiddenParamAttOrder ();
Grp_PutParamWhichGrps ();
Pag_PutHiddenParamPagNum (Gbl.Pag.CurrentPage);
Pag_PutHiddenParamPagNum (Pag_ATT_EVENTS,Gbl.AttEvents.CurrentPage);
/***** Table start *****/
Lay_StartRoundFrameTable (NULL,
@ -1817,7 +1817,7 @@ void Att_SeeOneAttEvent (void)
/***** Get parameters *****/
Att_GetParamAttOrder ();
Grp_GetParamWhichGrps ();
Pag_GetParamPagNum (Pag_ATT_EVENTS);
Gbl.AttEvents.CurrentPage = Pag_GetParamPagNum (Pag_ATT_EVENTS);
/***** Show attendance *****/
Lay_StartRoundFrameTable (NULL,Txt_Event,NULL,Hlp_USERS_Attendance,2);

View File

@ -212,13 +212,15 @@
/****************************** Public constants *****************************/
/*****************************************************************************/
#define Log_PLATFORM_VERSION "SWAD 16.176.3 (2017-04-12)"
#define CSS_FILE "swad16.174.1.css"
#define Log_PLATFORM_VERSION "SWAD 16.177 (2017-04-13)"
#define CSS_FILE "swad16.177.css"
#define JS_FILE "swad16.144.js"
// Number of lines (includes comments but not blank lines) has been got with the following command:
// nl swad*.c swad*.h css/swad*.css py/swad*.py js/swad*.js soap/swad*?.h sql/swad*.sql | tail -1
/*
Version 16.177: Apr 13, 2017 Code refactoring related to pagination.
Changes in layout of forums. (217609 lines)
Version 16.176.3: Apr 12, 2017 Remove unused code in forums. (217582 lines)
Version 16.176.2: Apr 12, 2017 Changes in layout of forums. (217705 lines)
Version 16.176.1: Apr 11, 2017 Changes in layout of forums. (217699 lines)

View File

@ -963,7 +963,7 @@ void For_RemoveUsrFromReadThrs (long UsrCod)
}
/*****************************************************************************/
/****************************** Show forum posts *****************************/
/************************ Show posts in a thread *****************************/
/*****************************************************************************/
static void For_ShowThreadPosts (long ThrCod)
@ -982,7 +982,7 @@ static void For_ShowThreadPosts (long ThrCod)
unsigned NumPsts;
time_t ReadTimeUTC; // Read time of thread for the current user
time_t CreatTimeUTC; // Creation time of post
struct Pagination Pagination;
struct Pagination PaginationPsts;
long PstCod;
bool NewPst = false;
bool ICanModerateForum = false;
@ -993,7 +993,7 @@ static void For_ShowThreadPosts (long ThrCod)
For_GetThrData (&Thr);
/***** Get the page number *****/
Pag_GetParamPagNum (Pag_POSTS_FORUM);
Gbl.Forum.CurrentPagePsts = Pag_GetParamPagNum (Pag_POSTS_FORUM);
/***** Write title *****/
/* Get if there is a thread ready to be moved */
@ -1009,7 +1009,8 @@ static void For_ShowThreadPosts (long ThrCod)
Lay_StartRoundFrame (NULL,FrameTitle,NULL,Hlp_SOCIAL_Forums);
/***** Get posts of a thread from database *****/
sprintf (Query,"SELECT PstCod,UNIX_TIMESTAMP(CreatTime) FROM forum_post"
sprintf (Query,"SELECT PstCod,UNIX_TIMESTAMP(CreatTime)"
" FROM forum_post"
" WHERE ThrCod=%ld ORDER BY PstCod",
ThrCod);
NumRows = DB_QuerySELECT (Query,&mysql_res,"can not get posts of a thread");
@ -1020,16 +1021,16 @@ static void For_ShowThreadPosts (long ThrCod)
/***** Check if I can moderate posts in forum *****/
switch (Gbl.Forum.Type)
{
case For_FORUM_SWAD_USRS: case For_FORUM_SWAD_TCHS:
case For_FORUM_GLOBAL_USRS: case For_FORUM_GLOBAL_TCHS:
case For_FORUM_CENTRE_USRS: case For_FORUM_CENTRE_TCHS:
case For_FORUM_SWAD_USRS: case For_FORUM_SWAD_TCHS:
case For_FORUM_GLOBAL_USRS: case For_FORUM_GLOBAL_TCHS:
case For_FORUM_CENTRE_USRS: case For_FORUM_CENTRE_TCHS:
ICanModerateForum = Gbl.Usrs.Me.LoggedRole == Rol_SYS_ADM;
break;
case For_FORUM_INSTIT_USRS: case For_FORUM_INSTIT_TCHS:
ICanModerateForum = Gbl.Usrs.Me.LoggedRole == Rol_SYS_ADM;
break;
case For_FORUM_DEGREE_USRS: case For_FORUM_DEGREE_TCHS:
case For_FORUM_COURSE_TCHS:
case For_FORUM_DEGREE_USRS: case For_FORUM_DEGREE_TCHS:
case For_FORUM_COURSE_TCHS:
ICanModerateForum = (Gbl.Usrs.Me.LoggedRole == Rol_DEG_ADM ||
Gbl.Usrs.Me.LoggedRole == Rol_SYS_ADM);
break;
@ -1041,22 +1042,22 @@ static void For_ShowThreadPosts (long ThrCod)
}
/***** Compute variables related to pagination *****/
Pagination.NumItems = NumPsts;
Pagination.CurrentPage = (int) Gbl.Pag.CurrentPage;
Pag_CalculatePagination (&Pagination);
Gbl.Pag.CurrentPage = (unsigned) Pagination.CurrentPage;
PaginationPsts.NumItems = NumPsts;
PaginationPsts.CurrentPage = (int) Gbl.Forum.CurrentPagePsts;
Pag_CalculatePagination (&PaginationPsts);
Gbl.Forum.CurrentPagePsts = (unsigned) PaginationPsts.CurrentPage;
/***** Write links to pages *****/
if (Pagination.MoreThanOnePage)
Pag_WriteLinksToPagesCentered (Pag_POSTS_FORUM,ThrCod,&Pagination);
if (PaginationPsts.MoreThanOnePage)
Pag_WriteLinksToPagesCentered (Pag_POSTS_FORUM,ThrCod,&PaginationPsts);
/***** Start table *****/
fprintf (Gbl.F.Out,"<table class=\"FRAME_TBL CELLS_PAD_2\">");
/***** Show posts from this page, the author and the date of last reply *****/
mysql_data_seek (mysql_res,(my_ulonglong) (Pagination.FirstItemVisible - 1));
for (NumRow = Pagination.FirstItemVisible;
NumRow <= Pagination.LastItemVisible;
mysql_data_seek (mysql_res,(my_ulonglong) (PaginationPsts.FirstItemVisible - 1));
for (NumRow = PaginationPsts.FirstItemVisible;
NumRow <= PaginationPsts.LastItemVisible;
NumRow++)
{
row = mysql_fetch_row (mysql_res);
@ -1069,7 +1070,7 @@ static void For_ShowThreadPosts (long ThrCod)
NumPst = (unsigned) NumRow;
NewPst = (CreatTimeUTC > ReadTimeUTC);
if (NewPst && NumRow == Pagination.LastItemVisible)
if (NewPst && NumRow == PaginationPsts.LastItemVisible)
/* Update forum_thr_read table indicating that this thread page and previous ones
have been read and have no new posts for the current user
(even if any previous pages have been no read actually) */
@ -1102,8 +1103,8 @@ static void For_ShowThreadPosts (long ThrCod)
fprintf (Gbl.F.Out,"</table>");
/***** Write again links to pages *****/
if (Pagination.MoreThanOnePage)
Pag_WriteLinksToPagesCentered (Pag_POSTS_FORUM,ThrCod,&Pagination);
if (PaginationPsts.MoreThanOnePage)
Pag_WriteLinksToPagesCentered (Pag_POSTS_FORUM,ThrCod,&PaginationPsts);
}
/***** Free structure that stores the query result *****/
@ -1150,7 +1151,7 @@ static void For_ShowAForumPost (struct ForumThread *Thr,unsigned PstNum,long Pst
bool LastPst,char LastSubject[Cns_MAX_BYTES_SUBJECT + 1],
bool NewPst,bool ICanModerateForum)
{
extern const char *Txt_unread_MESSAGE;
extern const char *Txt_MSG_New;
extern const char *Txt_MSG_Open;
extern const char *Txt_no_subject;
extern const char *Txt_Post_X_allowed;
@ -1197,9 +1198,9 @@ static void For_ShowAForumPost (struct ForumThread *Thr,unsigned PstNum,long Pst
Gbl.Prefs.IconsURL,
NewPst ? "msg-unread" :
"msg-open",
NewPst ? Txt_unread_MESSAGE :
NewPst ? Txt_MSG_New :
Txt_MSG_Open,
NewPst ? Txt_unread_MESSAGE :
NewPst ? Txt_MSG_New :
Txt_MSG_Open);
/***** Write post number *****/
@ -1232,7 +1233,7 @@ static void For_ShowAForumPost (struct ForumThread *Thr,unsigned PstNum,long Pst
// Post can be removed if post is the last (without answers) and it's mine
{
Act_FormStart (For_ActionsDelPstFor[Gbl.Forum.Type]);
Pag_PutHiddenParamPagNum (Gbl.Pag.CurrentPage);
Pag_PutHiddenParamPagNum (Pag_POSTS_FORUM,Gbl.Forum.CurrentPagePsts);
For_PutHiddenParamPstCod (PstCod);
For_PutAllHiddenParamsForum ();
For_PutHiddenParamThrCod (Thr->ThrCod);
@ -1247,7 +1248,7 @@ static void For_ShowAForumPost (struct ForumThread *Thr,unsigned PstNum,long Pst
{
Act_FormStart (Enabled ? For_ActionsDisPstFor[Gbl.Forum.Type] :
For_ActionsEnbPstFor[Gbl.Forum.Type]);
Pag_PutHiddenParamPagNum (Gbl.Pag.CurrentPage);
Pag_PutHiddenParamPagNum (Pag_POSTS_FORUM,Gbl.Forum.CurrentPagePsts);
For_PutHiddenParamPstCod (PstCod);
For_PutAllHiddenParamsForum ();
For_PutHiddenParamThrCod (Thr->ThrCod);
@ -2355,7 +2356,7 @@ static void For_WriteLinkToForum (For_ForumType_t ForumType,long Cod,
else
{
Act_FormStart (For_ActionsPasThrFor[ForumType]);
Pag_PutHiddenParamPagNum (Gbl.Pag.CurrentPage);
Pag_PutHiddenParamPagNum (Pag_THREADS_FORUM,Gbl.Forum.CurrentPageThrs);
For_PutAllHiddenParamsForum ();
For_PutHiddenParamThrCod (Gbl.Forum.ThreadToMove);
fprintf (Gbl.F.Out,"<input type=\"image\" src=\"%s/paste_on16x16.gif\""
@ -2633,7 +2634,7 @@ void For_ShowForumThrs (void)
ForumName,Gbl.Prefs.Language,true);
/***** Get page number *****/
Pag_GetParamPagNum (Pag_THREADS_FORUM);
Gbl.Forum.CurrentPageThrs = Pag_GetParamPagNum (Pag_THREADS_FORUM);
/***** Get threads of a forum from database *****/
switch (Gbl.Forum.Type)
@ -2685,10 +2686,10 @@ void For_ShowForumThrs (void)
/***** Compute variables related to pagination of threads *****/
PaginationThrs.NumItems = NumThrs;
PaginationThrs.CurrentPage = (int) Gbl.Pag.CurrentPage;
PaginationThrs.CurrentPage = (int) Gbl.Forum.CurrentPageThrs;
Pag_CalculatePagination (&PaginationThrs);
PaginationThrs.Anchor = For_ID_FORUM_THREADS_SECTION;
Gbl.Pag.CurrentPage = (unsigned) PaginationThrs.CurrentPage;
Gbl.Forum.CurrentPageThrs = (unsigned) PaginationThrs.CurrentPage;
/***** Fill the list of threads for current page *****/
mysql_data_seek (mysql_res,(my_ulonglong) (PaginationThrs.FirstItemVisible - 1));
@ -2739,7 +2740,7 @@ void For_ShowForumThrs (void)
fprintf (Gbl.F.Out,"<th colspan=\"3\" class=\"CENTER_MIDDLE\">");
Act_FormStartAnchor (For_ActionsSeeFor[Gbl.Forum.Type],
For_ID_FORUM_POSTS_SECTION);
Pag_PutHiddenParamPagNum (PaginationThrs.CurrentPage);
Pag_PutHiddenParamPagNum (Pag_THREADS_FORUM,PaginationThrs.CurrentPage);
For_PutParamWhichForum ();
For_PutParamsForumInsDegCrs ();
Par_PutHiddenParamUnsigned ("Order",(unsigned) Order);
@ -3442,7 +3443,8 @@ unsigned For_GetNumPstsInForum (For_ForumType_t ForumType)
/************************ List the threads of a forum ************************/
/*****************************************************************************/
void For_ListForumThrs (long ThrCods[Pag_ITEMS_PER_PAGE],struct Pagination *PaginationThrs)
void For_ListForumThrs (long ThrCods[Pag_ITEMS_PER_PAGE],
struct Pagination *PaginationThrs)
{
extern const char *The_ClassForm[The_NUM_THEMES];
extern const char *The_ClassFormBold[The_NUM_THEMES];
@ -3540,7 +3542,7 @@ void For_ListForumThrs (long ThrCods[Pag_ITEMS_PER_PAGE],struct Pagination *Pagi
/* Put button to cut the thread for moving it to another forum */
fprintf (Gbl.F.Out,"<br />");
Act_FormStart (For_ActionsCutThrFor[Gbl.Forum.Type]);
Pag_PutHiddenParamPagNum (Gbl.Pag.CurrentPage);
Pag_PutHiddenParamPagNum (Pag_THREADS_FORUM,Gbl.Forum.CurrentPageThrs);
For_PutAllHiddenParamsForum ();
For_PutHiddenParamThrCod (Thr.ThrCod);
fprintf (Gbl.F.Out,"<input type=\"image\" src=\"%s/cut16x16.gif\""
@ -3872,7 +3874,7 @@ static void For_WriteFormForumPst (bool IsReply,long ThrCod,const char *Subject)
{
Act_FormStart (For_ActionsRecRepFor[Gbl.Forum.Type]);
For_PutHiddenParamThrCod (ThrCod);
Pag_PutHiddenParamPagNum (0);
Pag_PutHiddenParamPagNum (Pag_POSTS_FORUM,0);
}
else // Form to write the first message of a new thread
Act_FormStart (For_ActionsRecThrFor[Gbl.Forum.Type]);
@ -3889,7 +3891,8 @@ static void For_WriteFormForumPst (bool IsReply,long ThrCod,const char *Subject)
"</td>"
"<td class=\"LEFT_MIDDLE\">"
"<input type=\"text\" id=\"Subject\" name=\"Subject\""
" size=\"45\" maxlength=\"%u\" value=\"%s\""
" class=\"MSG_SUBJECT\""
" maxlength=\"%u\" value=\"%s\""
" required=\"required\" />"
"</td>"
"</tr>",
@ -3901,11 +3904,12 @@ static void For_WriteFormForumPst (bool IsReply,long ThrCod,const char *Subject)
/* Content */
fprintf (Gbl.F.Out,"<tr>"
"<td class=\"RIGHT_TOP\">"
"<label for=\"Content\" class=\"%s\">%s:&nbsp;</label>"
"<label for=\"Content\" class=\"%s\">%s:</label>"
"</td>"
"<td class=\"LEFT_TOP\">"
"<textarea id=\"Content\" name=\"Content\""
" cols=\"72\" rows=\"15\">"
" class=\"MSG_CONTENT\""
" rows=\"10\">"
"</textarea>"
"</td>"
"</tr>",
@ -3966,7 +3970,7 @@ void For_RecForumPst (void)
}
/***** Get page number *****/
Pag_GetParamPagNum (Pag_POSTS_FORUM);
Gbl.Forum.CurrentPagePsts = Pag_GetParamPagNum (Pag_POSTS_FORUM);
/***** Get message subject *****/
Par_GetParToHTML ("Subject",Gbl.Msg.Subject,Cns_MAX_BYTES_SUBJECT);

View File

@ -127,7 +127,8 @@ unsigned For_GetNumTotalPstsInForumsOfType (For_ForumType_t ForumType,
long CtyCod,long InsCod,long CtrCod,long DegCod,long CrsCod,
unsigned *NumUsrsToBeNotifiedByEMail);
unsigned For_GetNumPstsInForum (For_ForumType_t ForumType);
void For_ListForumThrs (long ThrCods[Pag_ITEMS_PER_PAGE],struct Pagination *PaginationThrs);
void For_ListForumThrs (long ThrCods[Pag_ITEMS_PER_PAGE],
struct Pagination *PaginationThrs);
void For_GetThrData (struct ForumThread *Thr);
void For_ShowThrPsts (void);
void For_PutHiddenParamThrCod (long ThrCod);

View File

@ -205,8 +205,6 @@ void Gbl_InitializeGlobals (void)
Gbl.Msg.ShowOnlyUnreadMsgs = false;
Gbl.Msg.ExpandedMsgCod = -1L;
Gbl.Pag.CurrentPage = 1; // By default, go to the first page
Gbl.CurrentCty.Cty.CtyCod = -1L;
Gbl.CurrentIns.Ins.InsCod = -1L; // Unknown institution
@ -413,6 +411,8 @@ void Gbl_InitializeGlobals (void)
Gbl.Forum.Cod = -1L;
Gbl.Forum.SelectedOrder = For_DEFAULT_ORDER;
Gbl.Forum.ThreadToMove = -1L;
// Gbl.Forum.CurrentPageThrs = 1; // TODO: Remove this line
// Gbl.Forum.CurrentPagePsts = 1; // TODO: Remove this line
/* User nickname */
Gbl.Usrs.Me.UsrDat.Nickname[0] = '\0';

View File

@ -419,6 +419,7 @@ struct Globals
unsigned HiddenVisiblEvents;
Agd_Order_t SelectedOrder;
long AgdCodToEdit; // Used as parameter in contextual links
unsigned CurrentPage;
} Agenda;
struct
{
@ -555,11 +556,12 @@ struct Globals
} FileBrowser; // Struct used for a file browser
struct
{
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
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;
} Asgs;
struct
{
@ -571,6 +573,7 @@ struct Globals
bool ShowDetails;
char *StrAttCodsSelected;
long AttCodToEdit; // Used as parameter in contextual links
unsigned CurrentPage;
} AttEvents;
struct
{
@ -589,6 +592,8 @@ struct Globals
For_Order_t SelectedOrder;
char PathRelOld[PATH_MAX + 1];
long ThreadToMove;
unsigned CurrentPageThrs;
unsigned CurrentPagePsts;
} Forum;
struct
{
@ -620,11 +625,8 @@ struct Globals
bool ShowOnlyOneRecipient; // Shown only a selected recipient or also other potential recipients?
char FileNameMail[PATH_MAX + 1];
FILE *FileMail;
} Msg;
struct
{
unsigned CurrentPage;
} Pag;
} Msg;
struct
{
TT_TimeTableType_t Type;
@ -704,6 +706,7 @@ struct Globals
Svy_Order_t SelectedOrder;
long SvyCodToEdit; // Used as parameter in contextual links
long SvyQstCodToEdit; // Used as parameter in contextual links
unsigned CurrentPage;
} Svys;
struct
{

View File

@ -66,6 +66,12 @@ extern struct Globals Gbl;
#define Msg_IMAGE_SAVED_MAX_HEIGHT 512
#define Msg_IMAGE_SAVED_QUALITY 75 // 1 to 100
static const Pag_WhatPaginate_t Msg_WhatPaginate[Msg_NUM_TYPES_OF_MSGS] =
{
Pag_MESSAGES_RECEIVED, // Msg_MESSAGES_RECEIVED
Pag_MESSAGES_SENT // Msg_MESSAGES_SENT
};
/*****************************************************************************/
/******************************** Private types ******************************/
/*****************************************************************************/
@ -1708,7 +1714,7 @@ static void Msg_ShowSentOrReceivedMessages (void)
};
/***** Get the page number *****/
Pag_GetParamPagNum (WhatPaginate[Gbl.Msg.TypeOfMessages]);
Gbl.Msg.CurrentPage = Pag_GetParamPagNum (WhatPaginate[Gbl.Msg.TypeOfMessages]);
/***** Get other parameters *****/
Msg_GetParamMsgsCrsCod ();
@ -1784,7 +1790,7 @@ static void Msg_ShowSentOrReceivedMessages (void)
if (MsgCod == Gbl.Msg.ExpandedMsgCod) // Expanded message found
{
Gbl.Pag.CurrentPage = (unsigned) (NumRow / Pag_ITEMS_PER_PAGE) + 1;
Gbl.Msg.CurrentPage = (unsigned) (NumRow / Pag_ITEMS_PER_PAGE) + 1;
break;
}
}
@ -1792,13 +1798,13 @@ static void Msg_ShowSentOrReceivedMessages (void)
/***** Compute variables related to pagination *****/
Pagination.NumItems = Gbl.Msg.NumMsgs;
Pagination.CurrentPage = (int) Gbl.Pag.CurrentPage;
Pagination.CurrentPage = (int) Gbl.Msg.CurrentPage;
Pag_CalculatePagination (&Pagination);
Gbl.Pag.CurrentPage = (unsigned) Pagination.CurrentPage;
Gbl.Msg.CurrentPage = (unsigned) Pagination.CurrentPage;
/***** Save my current page in order to show it next time I'll view my received/sent messages *****/
Pag_SaveLastPageMsgIntoSession (WhatPaginate[Gbl.Msg.TypeOfMessages],
Gbl.Pag.CurrentPage);
Gbl.Msg.CurrentPage);
/***** Write links to pages *****/
if (Pagination.MoreThanOnePage)
@ -3089,7 +3095,8 @@ static void Msg_WriteSentOrReceivedMsgSubject (long MsgCod,const char *Subject,b
(Expanded ? ActConSntMsg :
ActExpSntMsg));
Msg_PutHiddenParamsMsgsFilters ();
Pag_PutHiddenParamPagNum (Gbl.Pag.CurrentPage);
Pag_PutHiddenParamPagNum (Msg_WhatPaginate[Gbl.Msg.TypeOfMessages],
Gbl.Msg.CurrentPage);
Msg_PutHiddenParamMsgCod (MsgCod);
Act_LinkFormSubmit (Expanded ? Txt_Hide_message :
Txt_See_message,
@ -3483,7 +3490,8 @@ static void Msg_WriteMsgTo (long MsgCod)
"<td colspan=\"3\" class=\"AUTHOR_TXT LEFT_MIDDLE\">");
Act_FormStart (ActionSee[Gbl.Msg.TypeOfMessages]);
Msg_PutHiddenParamsMsgsFilters ();
Pag_PutHiddenParamPagNum (Gbl.Pag.CurrentPage);
Pag_PutHiddenParamPagNum (Msg_WhatPaginate[Gbl.Msg.TypeOfMessages],
Gbl.Msg.CurrentPage);
Msg_PutHiddenParamMsgCod (MsgCod);
Par_PutHiddenParamChar ("SeeAllRcpts",'Y');
Act_LinkFormSubmit (Txt_View_all_recipients,"AUTHOR_TXT",NULL);
@ -3547,7 +3555,8 @@ static void Msg_PutFormToDeleteMessage (long MsgCod)
};
Act_FormStart (ActionDel[Gbl.Msg.TypeOfMessages]);
Pag_PutHiddenParamPagNum (Gbl.Pag.CurrentPage);
Pag_PutHiddenParamPagNum (Msg_WhatPaginate[Gbl.Msg.TypeOfMessages],
Gbl.Msg.CurrentPage);
Msg_PutHiddenParamMsgCod (MsgCod);
Msg_PutHiddenParamsMsgsFilters ();
Lay_PutIconRemove ();
@ -3599,7 +3608,8 @@ static void Msg_PutFormToBanSender (struct UsrData *UsrDat)
extern const char *Txt_Sender_permitted_click_to_ban_him;
Act_FormStart (ActBanUsrMsg);
Pag_PutHiddenParamPagNum (Gbl.Pag.CurrentPage);
Pag_PutHiddenParamPagNum (Msg_WhatPaginate[Gbl.Msg.TypeOfMessages],
Gbl.Msg.CurrentPage);
Usr_PutParamUsrCodEncrypted (UsrDat->EncryptedUsrCod);
Msg_PutHiddenParamsMsgsFilters ();
fprintf (Gbl.F.Out,"<input type=\"image\" src=\"%s/unlock-on64x64.png\""
@ -3620,7 +3630,8 @@ static void Msg_PutFormToUnbanSender (struct UsrData *UsrDat)
extern const char *Txt_Sender_banned_click_to_unban_him;
Act_FormStart (ActUnbUsrMsg);
Pag_PutHiddenParamPagNum (Gbl.Pag.CurrentPage);
Pag_PutHiddenParamPagNum (Msg_WhatPaginate[Gbl.Msg.TypeOfMessages],
Gbl.Msg.CurrentPage);
Usr_PutParamUsrCodEncrypted (UsrDat->EncryptedUsrCod);
Msg_PutHiddenParamsMsgsFilters ();
fprintf (Gbl.F.Out,"<input type=\"image\" src=\"%s/lock-on64x64.png\""

View File

@ -42,9 +42,22 @@ extern const Act_Action_t For_ActionsSeeFor[For_NUM_TYPES_FORUM];
extern const Act_Action_t For_ActionsSeePstFor[For_NUM_TYPES_FORUM];
/*****************************************************************************/
/**************************** Private constants ******************************/
/***************************** Private constants *****************************/
/*****************************************************************************/
static const char *Pag_ParamNumPag[Pag_NUM_WHAT_PAGINATE] =
{
"NumPagAsg", // Pag_ASSIGNMENTS
"NumPagAtt", // Pag_ATT_EVENTS
"NumPagThr", // Pag_THREADS_FORUM
"NumPagPst", // Pag_POSTS_FORUM
"NumPagRcv", // Pag_MESSAGES_RECEIVED
"NumPagSnt", // Pag_MESSAGES_SENT
"NumPagSvy", // Pag_SURVEYS
"NumPagMyAgd", // Pag_MY_AGENDA
"NumPagOthAgd", // Pag_ANOTHER_AGENDA
};
/*****************************************************************************/
/***************************** Private prototypes ****************************/
/*****************************************************************************/
@ -130,58 +143,57 @@ void Pag_WriteLinksToPages (Pag_WhatPaginate_t WhatPaginate,long ThrCod,struct P
{
case Pag_ASSIGNMENTS:
Act_FormStartAnchor (ActSeeAsg,Pagination->Anchor);
Pag_PutHiddenParamPagNum (1);
Pag_PutHiddenParamPagNum (WhatPaginate,1);
Asg_PutHiddenParamAsgOrder ();
Grp_PutParamWhichGrps ();
break;
case Pag_ATT_EVENTS:
Act_FormStartAnchor (ActSeeAtt,Pagination->Anchor);
Pag_PutHiddenParamPagNum (1);
Pag_PutHiddenParamPagNum (WhatPaginate,1);
Att_PutHiddenParamAttOrder ();
Grp_PutParamWhichGrps ();
break;
case Pag_MESSAGES_RECEIVED:
Act_FormStartAnchor (ActSeeRcvMsg,Pagination->Anchor);
Pag_PutHiddenParamPagNum (1);
Msg_PutHiddenParamsMsgsFilters ();
break;
case Pag_MESSAGES_SENT:
Act_FormStartAnchor (ActSeeSntMsg,Pagination->Anchor);
Pag_PutHiddenParamPagNum (1);
Msg_PutHiddenParamsMsgsFilters ();
break;
case Pag_THREADS_FORUM:
Act_FormStartAnchor (For_ActionsSeeFor[Gbl.Forum.Type],
Pagination->Anchor);
Pag_PutHiddenParamPagNum (1);
Pag_PutHiddenParamPagNum (WhatPaginate,1);
For_PutAllHiddenParamsForum ();
break;
case Pag_POSTS_FORUM:
Act_FormStartAnchor (For_ActionsSeePstFor[Gbl.Forum.Type],
Pagination->Anchor);
Pag_PutHiddenParamPagNum (1);
Pag_PutHiddenParamPagNum (WhatPaginate,1);
For_PutHiddenParamThrCod (ThrCod);
For_PutAllHiddenParamsForum ();
break;
case Pag_MESSAGES_RECEIVED:
Act_FormStartAnchor (ActSeeRcvMsg,Pagination->Anchor);
Pag_PutHiddenParamPagNum (WhatPaginate,1);
Msg_PutHiddenParamsMsgsFilters ();
break;
case Pag_MESSAGES_SENT:
Act_FormStartAnchor (ActSeeSntMsg,Pagination->Anchor);
Pag_PutHiddenParamPagNum (WhatPaginate,1);
Msg_PutHiddenParamsMsgsFilters ();
break;
case Pag_SURVEYS:
Act_FormStartAnchor (ActSeeAllSvy,Pagination->Anchor);
Pag_PutHiddenParamPagNum (1);
Pag_PutHiddenParamPagNum (WhatPaginate,1);
Asg_PutHiddenParamAsgOrder ();
Grp_PutParamWhichGrps ();
break;
case Pag_MY_AGENDA:
Act_FormStartAnchor (ActSeeMyAgd,Pagination->Anchor);
Agd_PutParams (Gbl.Agenda.Past__FutureEvents,
Gbl.Agenda.PrivatPublicEvents,
Gbl.Agenda.HiddenVisiblEvents,
Gbl.Agenda.SelectedOrder,
-1L,
1);
Agd_PutParamsMyAgenda (Gbl.Agenda.Past__FutureEvents,
Gbl.Agenda.PrivatPublicEvents,
Gbl.Agenda.HiddenVisiblEvents,
1,
-1L);
break;
case Pag_ANOTHER_AGENDA:
Act_FormStartAnchor (ActSeeUsrAgd,Pagination->Anchor);
Agd_PutHiddenParamEventsOrder ();
Pag_PutHiddenParamPagNum (1);
Pag_PutHiddenParamPagNum (WhatPaginate,1);
Usr_PutParamOtherUsrCodEncrypted ();
break;
}
@ -224,58 +236,57 @@ void Pag_WriteLinksToPages (Pag_WhatPaginate_t WhatPaginate,long ThrCod,struct P
{
case Pag_ASSIGNMENTS:
Act_FormStartAnchor (ActSeeAsg,Pagination->Anchor);
Pag_PutHiddenParamPagNum (1);
Pag_PutHiddenParamPagNum (WhatPaginate,1);
Asg_PutHiddenParamAsgOrder ();
Grp_PutParamWhichGrps ();
break;
case Pag_ATT_EVENTS:
Act_FormStartAnchor (ActSeeAtt,Pagination->Anchor);
Pag_PutHiddenParamPagNum (1);
Pag_PutHiddenParamPagNum (WhatPaginate,1);
Att_PutHiddenParamAttOrder ();
Grp_PutParamWhichGrps ();
break;
case Pag_MESSAGES_RECEIVED:
Act_FormStartAnchor (ActSeeRcvMsg,Pagination->Anchor);
Pag_PutHiddenParamPagNum (1);
Msg_PutHiddenParamsMsgsFilters ();
break;
case Pag_MESSAGES_SENT:
Act_FormStartAnchor (ActSeeSntMsg,Pagination->Anchor);
Pag_PutHiddenParamPagNum (1);
Msg_PutHiddenParamsMsgsFilters ();
break;
case Pag_THREADS_FORUM:
Act_FormStartAnchor (For_ActionsSeeFor[Gbl.Forum.Type],
Pagination->Anchor);
Pag_PutHiddenParamPagNum (1);
Pag_PutHiddenParamPagNum (WhatPaginate,1);
For_PutAllHiddenParamsForum ();
break;
case Pag_POSTS_FORUM:
Act_FormStartAnchor (For_ActionsSeePstFor[Gbl.Forum.Type],
Pagination->Anchor);
Pag_PutHiddenParamPagNum (1);
Pag_PutHiddenParamPagNum (WhatPaginate,1);
For_PutHiddenParamThrCod (ThrCod);
For_PutAllHiddenParamsForum ();
break;
case Pag_MESSAGES_RECEIVED:
Act_FormStartAnchor (ActSeeRcvMsg,Pagination->Anchor);
Pag_PutHiddenParamPagNum (WhatPaginate,1);
Msg_PutHiddenParamsMsgsFilters ();
break;
case Pag_MESSAGES_SENT:
Act_FormStartAnchor (ActSeeSntMsg,Pagination->Anchor);
Pag_PutHiddenParamPagNum (WhatPaginate,1);
Msg_PutHiddenParamsMsgsFilters ();
break;
case Pag_SURVEYS:
Act_FormStartAnchor (ActSeeAllSvy,Pagination->Anchor);
Pag_PutHiddenParamPagNum (1);
Pag_PutHiddenParamPagNum (WhatPaginate,1);
Asg_PutHiddenParamAsgOrder ();
Grp_PutParamWhichGrps ();
break;
case Pag_MY_AGENDA:
Act_FormStartAnchor (ActSeeMyAgd,Pagination->Anchor);
Agd_PutParams (Gbl.Agenda.Past__FutureEvents,
Gbl.Agenda.PrivatPublicEvents,
Gbl.Agenda.HiddenVisiblEvents,
Gbl.Agenda.SelectedOrder,
-1L,
1);
Agd_PutParamsMyAgenda (Gbl.Agenda.Past__FutureEvents,
Gbl.Agenda.PrivatPublicEvents,
Gbl.Agenda.HiddenVisiblEvents,
1,
-1L);
break;
case Pag_ANOTHER_AGENDA:
Act_FormStartAnchor (ActSeeUsrAgd,Pagination->Anchor);
Agd_PutHiddenParamEventsOrder ();
Pag_PutHiddenParamPagNum (1);
Pag_PutHiddenParamPagNum (WhatPaginate,1);
Usr_PutParamOtherUsrCodEncrypted ();
break;
}
@ -301,58 +312,57 @@ void Pag_WriteLinksToPages (Pag_WhatPaginate_t WhatPaginate,long ThrCod,struct P
{
case Pag_ASSIGNMENTS:
Act_FormStartAnchor (ActSeeAsg,Pagination->Anchor);
Pag_PutHiddenParamPagNum (Pagination->LeftPage);
Pag_PutHiddenParamPagNum (WhatPaginate,Pagination->LeftPage);
Asg_PutHiddenParamAsgOrder ();
Grp_PutParamWhichGrps ();
break;
case Pag_ATT_EVENTS:
Act_FormStartAnchor (ActSeeAtt,Pagination->Anchor);
Pag_PutHiddenParamPagNum (Pagination->LeftPage);
Pag_PutHiddenParamPagNum (WhatPaginate,Pagination->LeftPage);
Att_PutHiddenParamAttOrder ();
Grp_PutParamWhichGrps ();
break;
case Pag_MESSAGES_RECEIVED:
Act_FormStartAnchor (ActSeeRcvMsg,Pagination->Anchor);
Pag_PutHiddenParamPagNum (Pagination->LeftPage);
Msg_PutHiddenParamsMsgsFilters ();
break;
case Pag_MESSAGES_SENT:
Act_FormStartAnchor (ActSeeSntMsg,Pagination->Anchor);
Pag_PutHiddenParamPagNum (Pagination->LeftPage);
Msg_PutHiddenParamsMsgsFilters ();
break;
case Pag_THREADS_FORUM:
Act_FormStartAnchor (For_ActionsSeeFor[Gbl.Forum.Type],
Pagination->Anchor);
Pag_PutHiddenParamPagNum (Pagination->LeftPage);
Pag_PutHiddenParamPagNum (WhatPaginate,Pagination->LeftPage);
For_PutAllHiddenParamsForum ();
break;
case Pag_POSTS_FORUM:
Act_FormStartAnchor (For_ActionsSeePstFor[Gbl.Forum.Type],
Pagination->Anchor);
Pag_PutHiddenParamPagNum (Pagination->LeftPage);
Pag_PutHiddenParamPagNum (WhatPaginate,Pagination->LeftPage);
For_PutHiddenParamThrCod (ThrCod);
For_PutAllHiddenParamsForum ();
break;
case Pag_MESSAGES_RECEIVED:
Act_FormStartAnchor (ActSeeRcvMsg,Pagination->Anchor);
Pag_PutHiddenParamPagNum (WhatPaginate,Pagination->LeftPage);
Msg_PutHiddenParamsMsgsFilters ();
break;
case Pag_MESSAGES_SENT:
Act_FormStartAnchor (ActSeeSntMsg,Pagination->Anchor);
Pag_PutHiddenParamPagNum (WhatPaginate,Pagination->LeftPage);
Msg_PutHiddenParamsMsgsFilters ();
break;
case Pag_SURVEYS:
Act_FormStartAnchor (ActSeeAllSvy,Pagination->Anchor);
Pag_PutHiddenParamPagNum (Pagination->LeftPage);
Pag_PutHiddenParamPagNum (WhatPaginate,Pagination->LeftPage);
Asg_PutHiddenParamAsgOrder ();
Grp_PutParamWhichGrps ();
break;
case Pag_MY_AGENDA:
Act_FormStartAnchor (ActSeeMyAgd,Pagination->Anchor);
Agd_PutParams (Gbl.Agenda.Past__FutureEvents,
Gbl.Agenda.PrivatPublicEvents,
Gbl.Agenda.HiddenVisiblEvents,
Gbl.Agenda.SelectedOrder,
-1L,
Pagination->LeftPage);
Agd_PutParamsMyAgenda (Gbl.Agenda.Past__FutureEvents,
Gbl.Agenda.PrivatPublicEvents,
Gbl.Agenda.HiddenVisiblEvents,
Pagination->LeftPage,
-1L);
break;
case Pag_ANOTHER_AGENDA:
Act_FormStartAnchor (ActSeeUsrAgd,Pagination->Anchor);
Agd_PutHiddenParamEventsOrder ();
Pag_PutHiddenParamPagNum (Pagination->LeftPage);
Pag_PutHiddenParamPagNum (WhatPaginate,Pagination->LeftPage);
Usr_PutParamOtherUsrCodEncrypted ();
break;
}
@ -385,66 +395,65 @@ void Pag_WriteLinksToPages (Pag_WhatPaginate_t WhatPaginate,long ThrCod,struct P
{
case Pag_ASSIGNMENTS:
Act_FormStartAnchor (ActSeeAsg,Pagination->Anchor);
Pag_PutHiddenParamPagNum (NumPage);
Pag_PutHiddenParamPagNum (WhatPaginate,NumPage);
Asg_PutHiddenParamAsgOrder ();
Grp_PutParamWhichGrps ();
break;
case Pag_ATT_EVENTS:
Act_FormStartAnchor (ActSeeAtt,Pagination->Anchor);
Pag_PutHiddenParamPagNum (NumPage);
Pag_PutHiddenParamPagNum (WhatPaginate,NumPage);
Att_PutHiddenParamAttOrder ();
Grp_PutParamWhichGrps ();
break;
case Pag_MESSAGES_RECEIVED:
Act_FormStartAnchor (ActSeeRcvMsg,Pagination->Anchor);
Pag_PutHiddenParamPagNum (NumPage);
Msg_PutHiddenParamsMsgsFilters ();
break;
case Pag_MESSAGES_SENT:
Act_FormStartAnchor (ActSeeSntMsg,Pagination->Anchor);
Pag_PutHiddenParamPagNum (NumPage);
Msg_PutHiddenParamsMsgsFilters ();
break;
case Pag_THREADS_FORUM:
Act_FormStartAnchor (For_ActionsSeeFor[Gbl.Forum.Type],
Pagination->Anchor);
Pag_PutHiddenParamPagNum (NumPage);
Pag_PutHiddenParamPagNum (WhatPaginate,NumPage);
For_PutAllHiddenParamsForum ();
break;
case Pag_POSTS_FORUM:
Act_FormStartAnchor (For_ActionsSeePstFor[Gbl.Forum.Type],
Pagination->Anchor);
Pag_PutHiddenParamPagNum (NumPage);
Pag_PutHiddenParamPagNum (WhatPaginate,NumPage);
For_PutHiddenParamThrCod (ThrCod);
For_PutAllHiddenParamsForum ();
break;
case Pag_MESSAGES_RECEIVED:
Act_FormStartAnchor (ActSeeRcvMsg,Pagination->Anchor);
Pag_PutHiddenParamPagNum (WhatPaginate,NumPage);
Msg_PutHiddenParamsMsgsFilters ();
break;
case Pag_MESSAGES_SENT:
Act_FormStartAnchor (ActSeeSntMsg,Pagination->Anchor);
Pag_PutHiddenParamPagNum (WhatPaginate,NumPage);
Msg_PutHiddenParamsMsgsFilters ();
break;
case Pag_SURVEYS:
Act_FormStartAnchor (ActSeeAllSvy,Pagination->Anchor);
Pag_PutHiddenParamPagNum (NumPage);
Pag_PutHiddenParamPagNum (WhatPaginate,NumPage);
Asg_PutHiddenParamAsgOrder ();
Grp_PutParamWhichGrps ();
break;
case Pag_MY_AGENDA:
Act_FormStartAnchor (ActSeeMyAgd,Pagination->Anchor);
Agd_PutParams (Gbl.Agenda.Past__FutureEvents,
Gbl.Agenda.PrivatPublicEvents,
Gbl.Agenda.HiddenVisiblEvents,
Gbl.Agenda.SelectedOrder,
-1L,
NumPage);
break;
case Pag_ANOTHER_AGENDA:
Act_FormStartAnchor (ActSeeUsrAgd,Pagination->Anchor);
Agd_PutHiddenParamEventsOrder ();
Pag_PutHiddenParamPagNum (NumPage);
Usr_PutParamOtherUsrCodEncrypted ();
break;
case Pag_MY_AGENDA:
Act_FormStartAnchor (ActSeeMyAgd,Pagination->Anchor);
Agd_PutParamsMyAgenda (Gbl.Agenda.Past__FutureEvents,
Gbl.Agenda.PrivatPublicEvents,
Gbl.Agenda.HiddenVisiblEvents,
NumPage,
-1L);
break;
case Pag_ANOTHER_AGENDA:
Act_FormStartAnchor (ActSeeUsrAgd,Pagination->Anchor);
Agd_PutHiddenParamEventsOrder ();
Pag_PutHiddenParamPagNum (WhatPaginate,NumPage);
Usr_PutParamOtherUsrCodEncrypted ();
break;
}
sprintf (Gbl.Title,Txt_See_page_X_of_Y,
(unsigned) NumPage,(unsigned) Pagination->NumPags);
Act_LinkFormSubmit (Gbl.Title,Font,NULL);
fprintf (Gbl.F.Out,"%u</a>",
(unsigned) NumPage);
(unsigned) NumPage);
Act_FormEnd ();
}
fprintf (Gbl.F.Out,"</td>");
@ -465,58 +474,57 @@ void Pag_WriteLinksToPages (Pag_WhatPaginate_t WhatPaginate,long ThrCod,struct P
{
case Pag_ASSIGNMENTS:
Act_FormStartAnchor (ActSeeAsg,Pagination->Anchor);
Pag_PutHiddenParamPagNum (Pagination->RightPage);
Pag_PutHiddenParamPagNum (WhatPaginate,Pagination->RightPage);
Asg_PutHiddenParamAsgOrder ();
Grp_PutParamWhichGrps ();
break;
case Pag_ATT_EVENTS:
Act_FormStartAnchor (ActSeeAtt,Pagination->Anchor);
Pag_PutHiddenParamPagNum (Pagination->RightPage);
Pag_PutHiddenParamPagNum (WhatPaginate,Pagination->RightPage);
Att_PutHiddenParamAttOrder ();
Grp_PutParamWhichGrps ();
break;
case Pag_MESSAGES_RECEIVED:
Act_FormStartAnchor (ActSeeRcvMsg,Pagination->Anchor);
Pag_PutHiddenParamPagNum (Pagination->RightPage);
Msg_PutHiddenParamsMsgsFilters ();
break;
case Pag_MESSAGES_SENT:
Act_FormStartAnchor (ActSeeSntMsg,Pagination->Anchor);
Pag_PutHiddenParamPagNum (Pagination->RightPage);
Msg_PutHiddenParamsMsgsFilters ();
break;
case Pag_THREADS_FORUM:
Act_FormStartAnchor (For_ActionsSeeFor[Gbl.Forum.Type],
Pagination->Anchor);
Pag_PutHiddenParamPagNum (Pagination->RightPage);
Pag_PutHiddenParamPagNum (WhatPaginate,Pagination->RightPage);
For_PutAllHiddenParamsForum ();
break;
case Pag_POSTS_FORUM:
Act_FormStartAnchor (For_ActionsSeePstFor[Gbl.Forum.Type],
Pagination->Anchor);
Pag_PutHiddenParamPagNum (Pagination->RightPage);
Pag_PutHiddenParamPagNum (WhatPaginate,Pagination->RightPage);
For_PutHiddenParamThrCod (ThrCod);
For_PutAllHiddenParamsForum ();
break;
case Pag_MESSAGES_RECEIVED:
Act_FormStartAnchor (ActSeeRcvMsg,Pagination->Anchor);
Pag_PutHiddenParamPagNum (WhatPaginate,Pagination->RightPage);
Msg_PutHiddenParamsMsgsFilters ();
break;
case Pag_MESSAGES_SENT:
Act_FormStartAnchor (ActSeeSntMsg,Pagination->Anchor);
Pag_PutHiddenParamPagNum (WhatPaginate,Pagination->RightPage);
Msg_PutHiddenParamsMsgsFilters ();
break;
case Pag_SURVEYS:
Act_FormStartAnchor (ActSeeAllSvy,Pagination->Anchor);
Pag_PutHiddenParamPagNum (Pagination->RightPage);
Pag_PutHiddenParamPagNum (WhatPaginate,Pagination->RightPage);
Asg_PutHiddenParamAsgOrder ();
Grp_PutParamWhichGrps ();
break;
case Pag_MY_AGENDA:
Act_FormStartAnchor (ActSeeMyAgd,Pagination->Anchor);
Agd_PutParams (Gbl.Agenda.Past__FutureEvents,
Gbl.Agenda.PrivatPublicEvents,
Gbl.Agenda.HiddenVisiblEvents,
Gbl.Agenda.SelectedOrder,
-1L,
Pagination->RightPage);
Agd_PutParamsMyAgenda (Gbl.Agenda.Past__FutureEvents,
Gbl.Agenda.PrivatPublicEvents,
Gbl.Agenda.HiddenVisiblEvents,
Pagination->RightPage,
-1L);
break;
case Pag_ANOTHER_AGENDA:
Act_FormStartAnchor (ActSeeUsrAgd,Pagination->Anchor);
Agd_PutHiddenParamEventsOrder ();
Pag_PutHiddenParamPagNum (Pagination->RightPage);
Pag_PutHiddenParamPagNum (WhatPaginate,Pagination->RightPage);
Usr_PutParamOtherUsrCodEncrypted ();
break;
}
@ -542,58 +550,57 @@ void Pag_WriteLinksToPages (Pag_WhatPaginate_t WhatPaginate,long ThrCod,struct P
{
case Pag_ASSIGNMENTS:
Act_FormStartAnchor (ActSeeAsg,Pagination->Anchor);
Pag_PutHiddenParamPagNum (Pagination->NumPags);
Pag_PutHiddenParamPagNum (WhatPaginate,Pagination->NumPags);
Asg_PutHiddenParamAsgOrder ();
Grp_PutParamWhichGrps ();
break;
case Pag_ATT_EVENTS:
Act_FormStartAnchor (ActSeeAtt,Pagination->Anchor);
Pag_PutHiddenParamPagNum (Pagination->NumPags);
Pag_PutHiddenParamPagNum (WhatPaginate,Pagination->NumPags);
Att_PutHiddenParamAttOrder ();
Grp_PutParamWhichGrps ();
break;
case Pag_MESSAGES_RECEIVED:
Act_FormStartAnchor (ActSeeRcvMsg,Pagination->Anchor);
Pag_PutHiddenParamPagNum (Pagination->NumPags);
Msg_PutHiddenParamsMsgsFilters ();
break;
case Pag_MESSAGES_SENT:
Act_FormStartAnchor (ActSeeSntMsg,Pagination->Anchor);
Pag_PutHiddenParamPagNum (Pagination->NumPags);
Msg_PutHiddenParamsMsgsFilters ();
break;
case Pag_THREADS_FORUM:
Act_FormStartAnchor (For_ActionsSeeFor[Gbl.Forum.Type],
Pagination->Anchor);
Pag_PutHiddenParamPagNum (Pagination->NumPags);
Pag_PutHiddenParamPagNum (WhatPaginate,Pagination->NumPags);
For_PutAllHiddenParamsForum ();
break;
case Pag_POSTS_FORUM:
Act_FormStartAnchor (For_ActionsSeePstFor[Gbl.Forum.Type],
Pagination->Anchor);
Pag_PutHiddenParamPagNum (Pagination->NumPags);
Pag_PutHiddenParamPagNum (WhatPaginate,Pagination->NumPags);
For_PutHiddenParamThrCod (ThrCod);
For_PutAllHiddenParamsForum ();
break;
case Pag_MESSAGES_RECEIVED:
Act_FormStartAnchor (ActSeeRcvMsg,Pagination->Anchor);
Pag_PutHiddenParamPagNum (WhatPaginate,Pagination->NumPags);
Msg_PutHiddenParamsMsgsFilters ();
break;
case Pag_MESSAGES_SENT:
Act_FormStartAnchor (ActSeeSntMsg,Pagination->Anchor);
Pag_PutHiddenParamPagNum (WhatPaginate,Pagination->NumPags);
Msg_PutHiddenParamsMsgsFilters ();
break;
case Pag_SURVEYS:
Act_FormStartAnchor (ActSeeAllSvy,Pagination->Anchor);
Pag_PutHiddenParamPagNum (Pagination->NumPags);
Pag_PutHiddenParamPagNum (WhatPaginate,Pagination->NumPags);
Asg_PutHiddenParamAsgOrder ();
Grp_PutParamWhichGrps ();
break;
case Pag_MY_AGENDA:
Act_FormStartAnchor (ActSeeMyAgd,Pagination->Anchor);
Agd_PutParams (Gbl.Agenda.Past__FutureEvents,
Gbl.Agenda.PrivatPublicEvents,
Gbl.Agenda.HiddenVisiblEvents,
Gbl.Agenda.SelectedOrder,
-1L,
Pagination->NumPags);
Agd_PutParamsMyAgenda (Gbl.Agenda.Past__FutureEvents,
Gbl.Agenda.PrivatPublicEvents,
Gbl.Agenda.HiddenVisiblEvents,
Pagination->NumPags,
-1L);
break;
case Pag_ANOTHER_AGENDA:
Act_FormStartAnchor (ActSeeUsrAgd,Pagination->Anchor);
Agd_PutHiddenParamEventsOrder ();
Pag_PutHiddenParamPagNum (Pagination->NumPags);
Pag_PutHiddenParamPagNum (WhatPaginate,Pagination->NumPags);
Usr_PutParamOtherUsrCodEncrypted ();
break;
}
@ -613,51 +620,49 @@ void Pag_WriteLinksToPages (Pag_WhatPaginate_t WhatPaginate,long ThrCod,struct P
/******************* Put hidden parameter number of page *********************/
/*****************************************************************************/
void Pag_PutHiddenParamPagNum (unsigned NumPage)
void Pag_PutHiddenParamPagNum (Pag_WhatPaginate_t WhatPaginate,unsigned NumPage)
{
Par_PutHiddenParamUnsigned ("NumPage",NumPage);
Par_PutHiddenParamUnsigned (Pag_ParamNumPag[WhatPaginate],NumPage);
}
/*****************************************************************************/
/************************ Get parameter number of page ***********************/
/*****************************************************************************/
void Pag_GetParamPagNum (Pag_WhatPaginate_t WhatPaginate)
unsigned Pag_GetParamPagNum (Pag_WhatPaginate_t WhatPaginate)
{
static bool FirstCall = true;
unsigned CurrentPage;
if (FirstCall)
{
FirstCall = false;
/***** Try to get parameter with the number of page *****/
CurrentPage = (unsigned) Par_GetParToUnsignedLong (Pag_ParamNumPag[WhatPaginate],
1,
UINT_MAX,
0);
if (CurrentPage == 0)
/***** If there's no parameter page, return a default value *****/
switch (WhatPaginate)
{
case Pag_MESSAGES_RECEIVED:
if (Gbl.Action.Act == ActExpRcvMsg)
/* Expanding a message, perhaps it is the result of following a link
from a notification of received message */
/* Show the page corresponding to the expanded message */
CurrentPage = 1; // Now set the current page to the first,
// but later the correct page will be calculated
else
/* Show the last visited page */
CurrentPage = Pag_GetLastPageMsgFromSession (Pag_MESSAGES_RECEIVED);
break;
case Pag_MESSAGES_SENT:
/* Show the last visited page */
CurrentPage = Pag_GetLastPageMsgFromSession (Pag_MESSAGES_SENT);
break;
default:
CurrentPage = 1;
break;
}
/***** Try to get parameter with the number of page *****/
Gbl.Pag.CurrentPage = (unsigned)
Par_GetParToUnsignedLong ("NumPage",
1,
UINT_MAX,
0);
if (Gbl.Pag.CurrentPage == 0)
/***** If there's no parameter page, return a default value *****/
switch (WhatPaginate)
{
case Pag_MESSAGES_RECEIVED:
if (Gbl.Action.Act == ActExpRcvMsg) // Expanding a message, perhaps it is the result of following a link
// from a notification of received message
// Show the page corresponding to the expanded message
Gbl.Pag.CurrentPage = 1; // Now set the current page to the first, but later the correct page will be calculated
else
// Show the last visited page
Gbl.Pag.CurrentPage = Pag_GetLastPageMsgFromSession (Pag_MESSAGES_RECEIVED);
break;
case Pag_MESSAGES_SENT:
// Show the last visited page
Gbl.Pag.CurrentPage = Pag_GetLastPageMsgFromSession (Pag_MESSAGES_SENT);
break;
default:
Gbl.Pag.CurrentPage = 1;
break;
}
}
return CurrentPage;
}
/*****************************************************************************/

View File

@ -37,17 +37,18 @@
/******************************** Public types *******************************/
/*****************************************************************************/
#define Pag_NUM_WHAT_PAGINATE 9
typedef enum
{
Pag_ASSIGNMENTS,
Pag_ATT_EVENTS,
Pag_MESSAGES_RECEIVED,
Pag_MESSAGES_SENT,
Pag_THREADS_FORUM,
Pag_POSTS_FORUM,
Pag_SURVEYS,
Pag_MY_AGENDA,
Pag_ANOTHER_AGENDA,
Pag_ASSIGNMENTS = 0,
Pag_ATT_EVENTS = 1,
Pag_THREADS_FORUM = 2,
Pag_POSTS_FORUM = 3,
Pag_MESSAGES_RECEIVED = 4,
Pag_MESSAGES_SENT = 5,
Pag_SURVEYS = 6,
Pag_MY_AGENDA = 7,
Pag_ANOTHER_AGENDA = 8,
} Pag_WhatPaginate_t;
struct Pagination // Used for threads and messages pagination
@ -73,8 +74,8 @@ void Pag_CalculatePagination (struct Pagination *Pagination);
void Pag_WriteLinksToPagesCentered (Pag_WhatPaginate_t WhatPaginate,long ThrCod,struct Pagination *Pagination);
void Pag_WriteLinksToPages (Pag_WhatPaginate_t WhatPaginate,long ThrCod,struct Pagination *Pagination,
bool FirstMsgEnabled,const char *Subject,const char *Font,bool LinkToPagCurrent);
void Pag_PutHiddenParamPagNum (unsigned NumPage);
void Pag_GetParamPagNum (Pag_WhatPaginate_t WhatPaginate);
void Pag_PutHiddenParamPagNum (Pag_WhatPaginate_t WhatPaginate,unsigned NumPage);
unsigned Pag_GetParamPagNum (Pag_WhatPaginate_t WhatPaginate);
void Pag_SaveLastPageMsgIntoSession (Pag_WhatPaginate_t WhatPaginate,unsigned NumPage);
unsigned Pag_GetLastPageMsgFromSession (Pag_WhatPaginate_t WhatPaginate);

View File

@ -169,7 +169,7 @@ void Svy_SeeAllSurveys (void)
/***** Get parameters *****/
Svy_GetParamSvyOrder ();
Grp_GetParamWhichGrps ();
Pag_GetParamPagNum (Pag_SURVEYS);
Gbl.Svys.CurrentPage = Pag_GetParamPagNum (Pag_SURVEYS);
/***** Show all the surveys *****/
Svy_ListAllSurveys (&SvyQst);
@ -201,9 +201,9 @@ static void Svy_ListAllSurveys (struct SurveyQuestion *SvyQst)
/***** Compute variables related to pagination *****/
Pagination.NumItems = Gbl.Svys.Num;
Pagination.CurrentPage = (int) Gbl.Pag.CurrentPage;
Pagination.CurrentPage = (int) Gbl.Svys.CurrentPage;
Pag_CalculatePagination (&Pagination);
Gbl.Pag.CurrentPage = (unsigned) Pagination.CurrentPage;
Gbl.Svys.CurrentPage = (unsigned) Pagination.CurrentPage;
/***** Write links to pages *****/
if (Pagination.MoreThanOnePage)
@ -231,7 +231,7 @@ static void Svy_ListAllSurveys (struct SurveyQuestion *SvyQst)
/* Form to change order */
Act_FormStart (ActSeeAllSvy);
Grp_PutParamWhichGrps ();
Pag_PutHiddenParamPagNum (Gbl.Pag.CurrentPage);
Pag_PutHiddenParamPagNum (Pag_SURVEYS,Gbl.Svys.CurrentPage);
Par_PutHiddenParamUnsigned ("Order",(unsigned) Order);
Act_LinkFormSubmit (Txt_START_END_TIME_HELP[Order],"TIT_TBL",NULL);
if (Order == Gbl.Svys.SelectedOrder)
@ -356,7 +356,7 @@ static void Svy_PutParamsToCreateNewSvy (void)
{
Svy_PutHiddenParamSvyOrder ();
Grp_PutParamWhichGrps ();
Pag_PutHiddenParamPagNum (Gbl.Pag.CurrentPage);
Pag_PutHiddenParamPagNum (Pag_SURVEYS,Gbl.Svys.CurrentPage);
}
/*****************************************************************************/
@ -373,7 +373,7 @@ static void Svy_PutFormToSelectWhichGroupsToShow (void)
static void Svy_ParamsWhichGroupsToShow (void)
{
Svy_PutHiddenParamSvyOrder ();
Pag_PutHiddenParamPagNum (Gbl.Pag.CurrentPage);
Pag_PutHiddenParamPagNum (Pag_SURVEYS,Gbl.Svys.CurrentPage);
}
/*****************************************************************************/
@ -388,7 +388,7 @@ void Svy_SeeOneSurvey (void)
/***** Get parameters *****/
Svy_GetParamSvyOrder ();
Grp_GetParamWhichGrps ();
Pag_GetParamPagNum (Pag_SURVEYS);
Gbl.Svys.CurrentPage = Pag_GetParamPagNum (Pag_SURVEYS);
/***** Get survey code *****/
if ((Svy.SvyCod = Svy_GetParamSvyCod ()) == -1L)
@ -483,7 +483,7 @@ static void Svy_ShowOneSurvey (long SvyCod,struct SurveyQuestion *SvyQst,
Svy_PutParamSvyCod (SvyCod);
Svy_PutHiddenParamSvyOrder ();
Grp_PutParamWhichGrps ();
Pag_PutHiddenParamPagNum (Gbl.Pag.CurrentPage);
Pag_PutHiddenParamPagNum (Pag_SURVEYS,Gbl.Svys.CurrentPage);
Act_LinkFormSubmit (Txt_View_survey,
Svy.Status.Visible ? "ASG_TITLE" :
"ASG_TITLE_LIGHT",NULL);
@ -519,7 +519,7 @@ static void Svy_ShowOneSurvey (long SvyCod,struct SurveyQuestion *SvyQst,
Svy_PutParamSvyCod (Svy.SvyCod);
Svy_PutHiddenParamSvyOrder ();
Grp_PutParamWhichGrps ();
Pag_PutHiddenParamPagNum (Gbl.Pag.CurrentPage);
Pag_PutHiddenParamPagNum (Pag_SURVEYS,Gbl.Svys.CurrentPage);
Lay_PutCreateButtonInline (Txt_Answer_survey);
Act_FormEnd ();
@ -534,7 +534,7 @@ static void Svy_ShowOneSurvey (long SvyCod,struct SurveyQuestion *SvyQst,
Svy_PutParamSvyCod (Svy.SvyCod);
Svy_PutHiddenParamSvyOrder ();
Grp_PutParamWhichGrps ();
Pag_PutHiddenParamPagNum (Gbl.Pag.CurrentPage);
Pag_PutHiddenParamPagNum (Pag_SURVEYS,Gbl.Svys.CurrentPage);
Lay_PutConfirmButtonInline (Txt_View_survey_results);
Act_FormEnd ();
@ -830,7 +830,7 @@ static void Svy_PutParams (void)
Svy_PutParamSvyCod (Gbl.Svys.SvyCodToEdit);
Att_PutHiddenParamAttOrder ();
Grp_PutParamWhichGrps ();
Pag_PutHiddenParamPagNum (Gbl.Pag.CurrentPage);
Pag_PutHiddenParamPagNum (Pag_SURVEYS,Gbl.Svys.CurrentPage);
}
/*****************************************************************************/
@ -1475,7 +1475,7 @@ void Svy_AskRemSurvey (void)
/***** Get parameters *****/
Svy_GetParamSvyOrder ();
Grp_GetParamWhichGrps ();
Pag_GetParamPagNum (Pag_SURVEYS);
Gbl.Svys.CurrentPage = Pag_GetParamPagNum (Pag_SURVEYS);
/***** Get survey code *****/
if ((Svy.SvyCod = Svy_GetParamSvyCod ()) == -1L)
@ -1573,7 +1573,7 @@ void Svy_AskResetSurvey (void)
/***** Get parameters *****/
Svy_GetParamSvyOrder ();
Grp_GetParamWhichGrps ();
Pag_GetParamPagNum (Pag_SURVEYS);
Gbl.Svys.CurrentPage = Pag_GetParamPagNum (Pag_SURVEYS);
/***** Get survey code *****/
if ((Svy.SvyCod = Svy_GetParamSvyCod ()) == -1L)
@ -1763,7 +1763,7 @@ void Svy_RequestCreatOrEditSvy (void)
/***** Get parameters *****/
Svy_GetParamSvyOrder ();
Grp_GetParamWhichGrps ();
Pag_GetParamPagNum (Pag_SURVEYS);
Gbl.Svys.CurrentPage = Pag_GetParamPagNum (Pag_SURVEYS);
/***** Get the code of the survey *****/
ItsANewSurvey = ((Svy.SvyCod = Svy_GetParamSvyCod ()) == -1L);
@ -2560,7 +2560,7 @@ void Svy_RequestEditQuestion (void)
/***** Get other parameters *****/
Svy_GetParamSvyOrder ();
Grp_GetParamWhichGrps ();
Pag_GetParamPagNum (Pag_SURVEYS);
Gbl.Svys.CurrentPage = Pag_GetParamPagNum (Pag_SURVEYS);
/***** Show form to create a new question in this survey *****/
Svy_ShowFormEditOneQst (SvyCod,&SvyQst,Txt);