diff --git a/swad_HTML.c b/swad_HTML.c
index a22c0217..d53a7845 100644
--- a/swad_HTML.c
+++ b/swad_HTML.c
@@ -1292,14 +1292,27 @@ void HTM_INPUT_CHECKBOX (const char *Name,bool SubmitOnChange,
/********************************** Buttons **********************************/
/*****************************************************************************/
-void HTM_BUTTON_Begin (const char *Class,bool SubmitOnMouseDown)
+void HTM_BUTTON_OnMouseDown_Begin (const char *Class)
{
- fprintf (Gbl.F.Out,"",
+ Class,Gbl.Form.Id);
+ HTM_BUTTON_NestingLevel++;
+ }
+void HTM_BUTTON_Begin (const char *Title,const char *Class,const char *OnSubmit)
+ {
+ fprintf (Gbl.F.Out,"");
HTM_BUTTON_NestingLevel++;
diff --git a/swad_HTML.h b/swad_HTML.h
index c7e48462..eaedd4de 100644
--- a/swad_HTML.h
+++ b/swad_HTML.h
@@ -134,7 +134,8 @@ void HTM_INPUT_RADIO (const char *Name,bool SubmitOnClick,
void HTM_INPUT_CHECKBOX (const char *Name,bool SubmitOnChange,
const char *fmt,...);
-void HTM_BUTTON_Begin (const char *Class,bool SubmitOnMouseDown);
+void HTM_BUTTON_OnMouseDown_Begin (const char *Class);
+void HTM_BUTTON_Begin (const char *Title,const char *Class,const char *OnSubmit);
void HTM_BUTTON_End (void);
void HTM_TEXTAREA_Begin (const char *fmt,...);
diff --git a/swad_agenda.c b/swad_agenda.c
index b63c31c7..888dc26d 100644
--- a/swad_agenda.c
+++ b/swad_agenda.c
@@ -200,10 +200,11 @@ static void Agd_ShowFormToSelPast__FutureEvents (void)
Agd_PutParamsMyAgenda (Gbl.Agenda.Past__FutureEvents ^ (1 << PstFut), // Toggle
Gbl.Agenda.PrivatPublicEvents,
Gbl.Agenda.HiddenVisiblEvents,
+ Gbl.Agenda.SelectedOrder,
Gbl.Agenda.CurrentPage,
-1L);
Ico_PutSettingIconLink (Icon[PstFut],
- Txt_AGENDA_PAST___FUTURE_EVENTS[PstFut]);
+ Txt_AGENDA_PAST___FUTURE_EVENTS[PstFut]);
Frm_EndForm ();
HTM_DIV_End ();
}
@@ -236,10 +237,11 @@ static void Agd_ShowFormToSelPrivatPublicEvents (void)
Agd_PutParamsMyAgenda (Gbl.Agenda.Past__FutureEvents,
Gbl.Agenda.PrivatPublicEvents ^ (1 << PrvPub), // Toggle
Gbl.Agenda.HiddenVisiblEvents,
+ Gbl.Agenda.SelectedOrder,
Gbl.Agenda.CurrentPage,
-1L);
Ico_PutSettingIconLink (Icon[PrvPub],
- Txt_AGENDA_PRIVAT_PUBLIC_EVENTS[PrvPub]);
+ Txt_AGENDA_PRIVAT_PUBLIC_EVENTS[PrvPub]);
Frm_EndForm ();
HTM_DIV_End ();
}
@@ -272,10 +274,11 @@ static void Agd_ShowFormToSelHiddenVisiblEvents (void)
Agd_PutParamsMyAgenda (Gbl.Agenda.Past__FutureEvents,
Gbl.Agenda.PrivatPublicEvents,
Gbl.Agenda.HiddenVisiblEvents ^ (1 << HidVis), // Toggle
+ Gbl.Agenda.SelectedOrder,
Gbl.Agenda.CurrentPage,
-1L);
Ico_PutSettingIconLink (Icon[HidVis],
- Txt_AGENDA_HIDDEN_VISIBL_EVENTS[HidVis]);
+ Txt_AGENDA_HIDDEN_VISIBL_EVENTS[HidVis]);
Frm_EndForm ();
HTM_DIV_End ();
}
@@ -587,15 +590,20 @@ static void Agd_WriteHeaderListEvents (Agd_AgendaType_t AgendaType)
Pag_PutHiddenParamPagNum (Pag_ANOTHER_AGENDA,Gbl.Agenda.CurrentPage);
break;
}
- Par_PutHiddenParamUnsigned (NULL,"Order",(unsigned) Order);
+ Agd_PutParamsMyAgenda (Gbl.Agenda.Past__FutureEvents,
+ Gbl.Agenda.PrivatPublicEvents,
+ Gbl.Agenda.HiddenVisiblEvents,
+ Order,
+ Gbl.Agenda.CurrentPage,
+ -1L);
- Frm_LinkFormSubmit (Txt_START_END_TIME_HELP[Order],"TIT_TBL",NULL);
+ HTM_BUTTON_Begin (Txt_START_END_TIME_HELP[Order],"BT_LINK TIT_TBL",NULL);
if (Order == Gbl.Agenda.SelectedOrder)
HTM_U_Begin ();
HTM_Txt (Txt_START_END_TIME[Order]);
if (Order == Gbl.Agenda.SelectedOrder)
HTM_U_End ();
- Frm_LinkFormEnd ();
+ HTM_BUTTON_End ();
Frm_EndForm ();
HTM_TH_End ();
@@ -699,6 +707,7 @@ static void Agd_PutButtonToCreateNewEvent (void)
Agd_PutParamsMyAgenda (Gbl.Agenda.Past__FutureEvents,
Gbl.Agenda.PrivatPublicEvents,
Gbl.Agenda.HiddenVisiblEvents,
+ Gbl.Agenda.SelectedOrder,
Gbl.Agenda.CurrentPage,
-1L);
Btn_PutConfirmButton (Txt_New_event);
@@ -864,6 +873,7 @@ static void Agd_PutCurrentParamsMyAgenda (void)
Agd_PutParamsMyAgenda (Gbl.Agenda.Past__FutureEvents,
Gbl.Agenda.PrivatPublicEvents,
Gbl.Agenda.HiddenVisiblEvents,
+ Gbl.Agenda.SelectedOrder,
Gbl.Agenda.CurrentPage,
Gbl.Agenda.AgdCodToEdit);
}
@@ -875,6 +885,7 @@ static void Agd_PutCurrentParamsMyAgenda (void)
void Agd_PutParamsMyAgenda (unsigned Past__FutureEvents,
unsigned PrivatPublicEvents,
unsigned HiddenVisiblEvents,
+ Agd_Order_t Order,
unsigned NumPage,
long AgdCodToEdit)
{
@@ -890,8 +901,8 @@ void Agd_PutParamsMyAgenda (unsigned Past__FutureEvents,
Agd_DEFAULT_VISIBL_EVENTS))
Agd_PutHiddenParamHiddenVisiblEvents (HiddenVisiblEvents);
- if (Gbl.Agenda.SelectedOrder != Agd_ORDER_DEFAULT)
- Par_PutHiddenParamUnsigned (NULL,"Order",(unsigned) Gbl.Agenda.SelectedOrder);
+ if (Order != Agd_ORDER_DEFAULT)
+ Par_PutHiddenParamUnsigned (NULL,"Order",(unsigned) Order);
if (NumPage > 1)
Pag_PutHiddenParamPagNum (Pag_MY_AGENDA,NumPage);
diff --git a/swad_agenda.h b/swad_agenda.h
index 99ff188e..8dc567ae 100644
--- a/swad_agenda.h
+++ b/swad_agenda.h
@@ -107,6 +107,7 @@ void Agd_RequestCreatOrEditEvent (void);
void Agd_PutParamsMyAgenda (unsigned Past__FutureEvents,
unsigned PrivatPublicEvents,
unsigned HiddenVisiblEvents,
+ Agd_Order_t Order,
unsigned NumPage,
long AgdCodToEdit);
void Agd_PutHiddenParamEventsOrder (void);
diff --git a/swad_button.c b/swad_button.c
index 9f21fefe..cec4eb52 100644
--- a/swad_button.c
+++ b/swad_button.c
@@ -100,7 +100,7 @@ void Btn_PutButtonInline (Btn_Button_t Button,const char *TxtButton)
void Btn_PutCreateButton (const char *TxtButton)
{
HTM_DIV_Begin ("class=\"CM\"");
- HTM_BUTTON_Begin ("BT_SUBMIT BT_CREATE",false);
+ HTM_BUTTON_Begin (NULL,"BT_SUBMIT BT_CREATE",NULL);
HTM_Txt (TxtButton);
HTM_BUTTON_End ();
HTM_DIV_End ();
@@ -108,7 +108,7 @@ void Btn_PutCreateButton (const char *TxtButton)
void Btn_PutCreateButtonInline (const char *TxtButton)
{
- HTM_BUTTON_Begin ("BT_SUBMIT_INLINE BT_CREATE",false);
+ HTM_BUTTON_Begin (NULL,"BT_SUBMIT_INLINE BT_CREATE",NULL);
HTM_Txt (TxtButton);
HTM_BUTTON_End ();
}
@@ -116,7 +116,7 @@ void Btn_PutCreateButtonInline (const char *TxtButton)
void Btn_PutConfirmButton (const char *TxtButton)
{
HTM_DIV_Begin ("class=\"CM\"");
- HTM_BUTTON_Begin ("BT_SUBMIT BT_CONFIRM",false);
+ HTM_BUTTON_Begin (NULL,"BT_SUBMIT BT_CONFIRM",NULL);
HTM_Txt (TxtButton);
HTM_BUTTON_End ();
HTM_DIV_End ();
@@ -124,7 +124,7 @@ void Btn_PutConfirmButton (const char *TxtButton)
void Btn_PutConfirmButtonInline (const char *TxtButton)
{
- HTM_BUTTON_Begin ("BT_SUBMIT_INLINE BT_CONFIRM",false);
+ HTM_BUTTON_Begin (NULL,"BT_SUBMIT_INLINE BT_CONFIRM",NULL);
HTM_Txt (TxtButton);
HTM_BUTTON_End ();
}
@@ -132,7 +132,7 @@ void Btn_PutConfirmButtonInline (const char *TxtButton)
void Btn_PutRemoveButton (const char *TxtButton)
{
HTM_DIV_Begin ("class=\"CM\"");
- HTM_BUTTON_Begin ("BT_SUBMIT BT_REMOVE",false);
+ HTM_BUTTON_Begin (NULL,"BT_SUBMIT BT_REMOVE",NULL);
HTM_Txt (TxtButton);
HTM_BUTTON_End ();
HTM_DIV_End ();
@@ -140,7 +140,7 @@ void Btn_PutRemoveButton (const char *TxtButton)
void Btn_PutRemoveButtonInline (const char *TxtButton)
{
- HTM_BUTTON_Begin ("BT_SUBMIT_INLINE BT_REMOVE",false);
+ HTM_BUTTON_Begin (NULL,"BT_SUBMIT_INLINE BT_REMOVE",NULL);
HTM_Txt (TxtButton);
HTM_BUTTON_End ();
}
diff --git a/swad_changelog.h b/swad_changelog.h
index 1cc6c983..98aea859 100644
--- a/swad_changelog.h
+++ b/swad_changelog.h
@@ -488,14 +488,15 @@ enscript -2 --landscape --color --file-align=2 --highlight --line-numbers -o - *
En OpenSWAD:
ps2pdf source.ps destination.pdf
*/
-#define Log_PLATFORM_VERSION "SWAD 19.70 (2019-11-17)"
+#define Log_PLATFORM_VERSION "SWAD 19.70.1 (2019-11-17)"
#define CSS_FILE "swad19.70.css"
#define JS_FILE "swad19.70.js"
/*
// TODO: Hacer un nuevo rol en los TFG: tutor externo (profesor de áreas no vinculadas con el centro, profesionales de empresas, etc.)
// TODO: Impedir la creación y edición de proyectos si no son editables.
-// TODO: Fix bug: cuando se envía una nueva publicación al timeline, si se baja al final y se pulsa en Mostrar más", se repiten los mensajes.
+ Version 19.70.1: Nov 17, 2019 Converting links to send forms to buttons.
+ Fixed bug in agenda. (247061 lines)
Version 19.70: Nov 17, 2019 Hidden comments in timeline are loaded on request using AJAX. (247028 lines)
1 change necessary in database:
INSERT INTO actions (ActCod,Language,Obsolete,Txt) VALUES ('1806','es','N','Ver comentarios ocultos (global)');
diff --git a/swad_match.c b/swad_match.c
index 64b41751..2491ac03 100644
--- a/swad_match.c
+++ b/swad_match.c
@@ -2596,7 +2596,7 @@ static void Mch_ShowQuestionAndAnswersStd (struct Match *Match)
if (asprintf (&Class,"MCH_STD_BUTTON BT_%c",'A' + (char) NumOpt) < 0)
Lay_NotEnoughMemoryExit ();
}
- HTM_BUTTON_Begin (Class,true);
+ HTM_BUTTON_OnMouseDown_Begin (Class);
HTM_TxtF ("%c",'a' + (char) NumOpt);
HTM_BUTTON_End ();
free (Class);
diff --git a/swad_notification.c b/swad_notification.c
index 5f1efbea..a2b86603 100644
--- a/swad_notification.c
+++ b/swad_notification.c
@@ -2049,19 +2049,18 @@ void Ntf_WriteNumberOfNewNtfs (void)
/***** Begin form *****/
Frm_StartFormId (ActSeeNewNtf,"form_ntf");
- Frm_LinkFormSubmitId (Txt_See_notifications,
- The_ClassNotif[Gbl.Prefs.Theme],"form_ntf",NULL);
+ HTM_BUTTON_Begin (Txt_See_notifications,The_ClassNotif[Gbl.Prefs.Theme],NULL);
/***** Number of unseen notifications *****/
HTM_SPAN_Begin ("id=\"notif_all\"");
HTM_TxtF ("%u %s",NumUnseenNtfs,NumUnseenNtfs == 1 ? Txt_notification :
Txt_notifications);
- HTM_BR ();
HTM_SPAN_End ();
/***** Icon and number of new notifications *****/
if (NumNewNtfs)
{
+ HTM_BR ();
HTM_IMG (Gbl.Prefs.URLTheme,"bell.svg",Txt_Notifications,
"class=\"ICO16x16\"");
HTM_TxtF (" %u",NumNewNtfs);
@@ -2072,7 +2071,7 @@ void Ntf_WriteNumberOfNewNtfs (void)
}
/***** End form *****/
- Frm_LinkFormEnd ();
+ HTM_BUTTON_End ();
Frm_EndForm ();
}
diff --git a/swad_pagination.c b/swad_pagination.c
index 7ad145f3..a7f36642 100644
--- a/swad_pagination.c
+++ b/swad_pagination.c
@@ -226,6 +226,7 @@ void Pag_WriteLinksToPages (Pag_WhatPaginate_t WhatPaginate,
Agd_PutParamsMyAgenda (Gbl.Agenda.Past__FutureEvents,
Gbl.Agenda.PrivatPublicEvents,
Gbl.Agenda.HiddenVisiblEvents,
+ Gbl.Agenda.SelectedOrder,
1,
-1L);
break;
@@ -337,6 +338,7 @@ void Pag_WriteLinksToPages (Pag_WhatPaginate_t WhatPaginate,
Agd_PutParamsMyAgenda (Gbl.Agenda.Past__FutureEvents,
Gbl.Agenda.PrivatPublicEvents,
Gbl.Agenda.HiddenVisiblEvents,
+ Gbl.Agenda.SelectedOrder,
1,
-1L);
break;
@@ -436,6 +438,7 @@ void Pag_WriteLinksToPages (Pag_WhatPaginate_t WhatPaginate,
Agd_PutParamsMyAgenda (Gbl.Agenda.Past__FutureEvents,
Gbl.Agenda.PrivatPublicEvents,
Gbl.Agenda.HiddenVisiblEvents,
+ Gbl.Agenda.SelectedOrder,
Pagination->LeftPage,
-1L);
break;
@@ -548,6 +551,7 @@ void Pag_WriteLinksToPages (Pag_WhatPaginate_t WhatPaginate,
Agd_PutParamsMyAgenda (Gbl.Agenda.Past__FutureEvents,
Gbl.Agenda.PrivatPublicEvents,
Gbl.Agenda.HiddenVisiblEvents,
+ Gbl.Agenda.SelectedOrder,
NumPage,
-1L);
break;
@@ -645,6 +649,7 @@ void Pag_WriteLinksToPages (Pag_WhatPaginate_t WhatPaginate,
Agd_PutParamsMyAgenda (Gbl.Agenda.Past__FutureEvents,
Gbl.Agenda.PrivatPublicEvents,
Gbl.Agenda.HiddenVisiblEvents,
+ Gbl.Agenda.SelectedOrder,
Pagination->RightPage,
-1L);
break;
@@ -743,6 +748,7 @@ void Pag_WriteLinksToPages (Pag_WhatPaginate_t WhatPaginate,
Agd_PutParamsMyAgenda (Gbl.Agenda.Past__FutureEvents,
Gbl.Agenda.PrivatPublicEvents,
Gbl.Agenda.HiddenVisiblEvents,
+ Gbl.Agenda.SelectedOrder,
Pagination->NumPags,
-1L);
break;
diff --git a/swad_theme.c b/swad_theme.c
index 548417d4..8d66c93a 100644
--- a/swad_theme.c
+++ b/swad_theme.c
@@ -102,12 +102,12 @@ const char *The_ClassTagline[The_NUM_THEMES] =
const char *The_ClassNotif[The_NUM_THEMES] =
{
- "NOTIF_WHITE",
- "NOTIF_GREY",
- "NOTIF_PURPLE",
- "NOTIF_BLUE",
- "NOTIF_YELLOW",
- "NOTIF_PINK",
+ "BT_LINK NOTIF_WHITE",
+ "BT_LINK NOTIF_GREY",
+ "BT_LINK NOTIF_PURPLE",
+ "BT_LINK NOTIF_BLUE",
+ "BT_LINK NOTIF_YELLOW",
+ "BT_LINK NOTIF_PINK",
};
const char *The_ClassUsr[The_NUM_THEMES] =
diff --git a/swad_timeline.c b/swad_timeline.c
index 0d1d3188..d92a88a3 100644
--- a/swad_timeline.c
+++ b/swad_timeline.c
@@ -2400,7 +2400,7 @@ static void TL_PutTextarea (const char *Placeholder,const char *ClassTextArea)
Med_PutMediaUploader (-1,"TL_MED_INPUT_WIDTH");
/***** Submit button *****/
- HTM_BUTTON_Begin ("BT_SUBMIT_INLINE BT_CREATE",false);
+ HTM_BUTTON_Begin (NULL,"BT_SUBMIT_INLINE BT_CREATE",NULL);
HTM_Txt (Txt_Post);
HTM_BUTTON_End ();
@@ -2765,7 +2765,7 @@ static void TL_FormToShowHiddenComments (Act_Action_t ActionGbl,Act_Action_t Act
snprintf (Gbl.Title,sizeof (Gbl.Title),
Txt_See_the_previous_X_COMMENTS,
NumInitialComments);
- HTM_BUTTON_Begin (The_ClassFormLink[Gbl.Prefs.Theme],false);
+ HTM_BUTTON_Begin (NULL,The_ClassFormLink[Gbl.Prefs.Theme],NULL);
Ico_PutIconTextLink ("angle-up.svg",Gbl.Title);
HTM_BUTTON_End ();