Version 18.14

This commit is contained in:
Antonio Cañas Vargas 2018-11-09 20:47:39 +01:00
parent 264f512d73
commit b91b3c7624
79 changed files with 1339 additions and 1532 deletions

View File

@ -34,7 +34,7 @@ OBJS = swad_account.o swad_action.o swad_agenda.o swad_alert.o \
swad_database.o swad_date.o swad_degree.o swad_degree_type.o \ swad_database.o swad_date.o swad_degree.o swad_degree_type.o \
swad_department.o swad_duplicate.o \ swad_department.o swad_duplicate.o \
swad_enrolment.o swad_exam.o \ swad_enrolment.o swad_exam.o \
swad_file.o swad_file_browser.o swad_follow.o swad_forum.o \ swad_file.o swad_file_browser.o swad_follow.o swad_form.o swad_forum.o \
swad_game.o swad_global.o swad_group.o \ swad_game.o swad_global.o swad_group.o \
swad_help.o swad_hierarchy.o swad_holiday.o \ swad_help.o swad_hierarchy.o swad_holiday.o \
swad_icon.o swad_ID.o swad_image.o swad_indicator.o swad_info.o \ swad_icon.o swad_ID.o swad_image.o swad_indicator.o swad_info.o \
@ -66,7 +66,7 @@ CC = gcc
# LIBS when using MariaDB (also valid with MySQL): # LIBS when using MariaDB (also valid with MySQL):
LIBS = -lssl -lcrypto -lpthread -lrt -lmysqlclient -lz -L/usr/lib64/mysql -lm -lgsoap LIBS = -lssl -lcrypto -lpthread -lrt -lmysqlclient -lz -L/usr/lib64/mysql -lm -lgsoap
CFLAGS = -Wall -Wextra -mtune=native -O2 -s CFLAGS = -Wall -Wextra -mtune=native -Os -s
all: swad_ca swad_de swad_en swad_es swad_fr swad_gn swad_it swad_pl swad_pt all: swad_ca swad_de swad_en swad_es swad_fr swad_gn swad_it swad_pl swad_pt

View File

@ -35,6 +35,7 @@
#include "swad_account.h" #include "swad_account.h"
#include "swad_box.h" #include "swad_box.h"
#include "swad_database.h" #include "swad_database.h"
#include "swad_form.h"
#include "swad_global.h" #include "swad_global.h"
#include "swad_ID.h" #include "swad_ID.h"
#include "swad_parameter.h" #include "swad_parameter.h"
@ -474,7 +475,7 @@ static void ID_PutLinkToConfirmID (struct UsrData *UsrDat,unsigned NumID,
NextAction = ActCnfID_Oth; NextAction = ActCnfID_Oth;
break; break;
} }
Act_StartFormAnchor (NextAction,Anchor); Frm_StartFormAnchor (NextAction,Anchor);
if (Gbl.Action.Original != ActUnk) if (Gbl.Action.Original != ActUnk)
{ {
Par_PutHiddenParamLong ("OriginalActCod", Par_PutHiddenParamLong ("OriginalActCod",
@ -501,7 +502,7 @@ static void ID_PutLinkToConfirmID (struct UsrData *UsrDat,unsigned NumID,
The_ClassFormBold[Gbl.Prefs.Theme],NULL); The_ClassFormBold[Gbl.Prefs.Theme],NULL);
/***** End form *****/ /***** End form *****/
Act_EndForm (); Frm_EndForm ();
} }
/*****************************************************************************/ /*****************************************************************************/
@ -624,7 +625,7 @@ static void ID_ShowFormChangeUsrID (const struct UsrData *UsrDat,
{ {
/* Form to remove user's ID */ /* Form to remove user's ID */
if (ItsMe) if (ItsMe)
Act_StartFormAnchor (ActRemID_Me,ID_ID_SECTION_ID); Frm_StartFormAnchor (ActRemID_Me,ID_ID_SECTION_ID);
else else
{ {
switch (UsrDat->Roles.InCurrentCrs.Role) switch (UsrDat->Roles.InCurrentCrs.Role)
@ -640,14 +641,14 @@ static void ID_ShowFormChangeUsrID (const struct UsrData *UsrDat,
NextAction = ActRemID_Oth; NextAction = ActRemID_Oth;
break; break;
} }
Act_StartFormAnchor (NextAction,ID_ID_SECTION_ID); Frm_StartFormAnchor (NextAction,ID_ID_SECTION_ID);
Usr_PutParamUsrCodEncrypted (UsrDat->EncryptedUsrCod); Usr_PutParamUsrCodEncrypted (UsrDat->EncryptedUsrCod);
} }
fprintf (Gbl.F.Out,"<input type=\"hidden\" name=\"UsrID\"" fprintf (Gbl.F.Out,"<input type=\"hidden\" name=\"UsrID\""
" value=\"%s\" />", " value=\"%s\" />",
UsrDat->IDs.List[NumID].ID); UsrDat->IDs.List[NumID].ID);
Ico_PutIconRemove (); Ico_PutIconRemove ();
Act_EndForm (); Frm_EndForm ();
} }
} }
@ -699,7 +700,7 @@ static void ID_ShowFormChangeUsrID (const struct UsrData *UsrDat,
UsrDat->IDs.Num ? Txt_Another_ID : // A new user's ID UsrDat->IDs.Num ? Txt_Another_ID : // A new user's ID
Txt_ID); // The first user's ID Txt_ID); // The first user's ID
if (ItsMe) if (ItsMe)
Act_StartFormAnchor (ActNewIDMe,ID_ID_SECTION_ID); Frm_StartFormAnchor (ActNewIDMe,ID_ID_SECTION_ID);
else else
{ {
switch (UsrDat->Roles.InCurrentCrs.Role) switch (UsrDat->Roles.InCurrentCrs.Role)
@ -715,7 +716,7 @@ static void ID_ShowFormChangeUsrID (const struct UsrData *UsrDat,
NextAction = ActNewID_Oth; NextAction = ActNewID_Oth;
break; break;
} }
Act_StartFormAnchor (NextAction,ID_ID_SECTION_ID); Frm_StartFormAnchor (NextAction,ID_ID_SECTION_ID);
Usr_PutParamUsrCodEncrypted (UsrDat->EncryptedUsrCod); Usr_PutParamUsrCodEncrypted (UsrDat->EncryptedUsrCod);
} }
fprintf (Gbl.F.Out,"<input type=\"text\" id=\"NewID\" name=\"NewID\"" fprintf (Gbl.F.Out,"<input type=\"text\" id=\"NewID\" name=\"NewID\""
@ -725,7 +726,7 @@ static void ID_ShowFormChangeUsrID (const struct UsrData *UsrDat,
UsrDat->IDs.Num ? UsrDat->IDs.List[UsrDat->IDs.Num - 1].ID : UsrDat->IDs.Num ? UsrDat->IDs.List[UsrDat->IDs.Num - 1].ID :
""); // Show the most recent ID ""); // Show the most recent ID
Btn_PutCreateButtonInline (Txt_Add_this_ID); Btn_PutCreateButtonInline (Txt_Add_this_ID);
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</td>" fprintf (Gbl.F.Out,"</td>"
"</tr>"); "</tr>");
} }

View File

@ -35,6 +35,7 @@
#include "swad_box.h" #include "swad_box.h"
#include "swad_config.h" #include "swad_config.h"
#include "swad_database.h" #include "swad_database.h"
#include "swad_form.h"
#include "swad_global.h" #include "swad_global.h"
#include "swad_MFU.h" #include "swad_MFU.h"
#include "swad_tab.h" #include "swad_tab.h"
@ -243,14 +244,14 @@ void MFU_WriteBigMFUActions (struct MFU_ListMFUActions *ListMFUActions)
/* Icon and text */ /* Icon and text */
fprintf (Gbl.F.Out,"<li>"); fprintf (Gbl.F.Out,"<li>");
Act_StartForm (Action); Frm_StartForm (Action);
Act_LinkFormSubmit (TabMenuStr,The_ClassFormNoWrap[Gbl.Prefs.Theme],NULL); Frm_LinkFormSubmit (TabMenuStr,The_ClassFormNoWrap[Gbl.Prefs.Theme],NULL);
fprintf (Gbl.F.Out,"<img src=\"%s/%s/%s\" alt=\"%s\" />", fprintf (Gbl.F.Out,"<img src=\"%s/%s/%s\" alt=\"%s\" />",
Gbl.Prefs.PathIconSet,Cfg_ICON_ACTION, Gbl.Prefs.PathIconSet,Cfg_ICON_ACTION,
Act_GetIcon (Action), Act_GetIcon (Action),
MenuStr); MenuStr);
fprintf (Gbl.F.Out," %s</a>",TabMenuStr); fprintf (Gbl.F.Out," %s</a>",TabMenuStr);
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</li>"); fprintf (Gbl.F.Out,"</li>");
} }
} }
@ -278,12 +279,12 @@ void MFU_WriteSmallMFUActions (struct MFU_ListMFUActions *ListMFUActions)
/***** Start div and link *****/ /***** Start div and link *****/
fprintf (Gbl.F.Out,"<div id=\"MFU_actions\">"); fprintf (Gbl.F.Out,"<div id=\"MFU_actions\">");
Act_StartForm (ActMFUAct); Frm_StartForm (ActMFUAct);
Act_LinkFormSubmit (Txt_My_frequent_actions,NULL,NULL); Frm_LinkFormSubmit (Txt_My_frequent_actions,NULL,NULL);
fprintf (Gbl.F.Out," %s" fprintf (Gbl.F.Out," %s"
"</a>", "</a>",
Txt_Frequent_ACTIONS); Txt_Frequent_ACTIONS);
Act_EndForm (); Frm_EndForm ();
/***** Write list of frequently used actions *****/ /***** Write list of frequently used actions *****/
fprintf (Gbl.F.Out,"<ul class=\"LIST_LEFT\">"); fprintf (Gbl.F.Out,"<ul class=\"LIST_LEFT\">");
@ -306,14 +307,14 @@ void MFU_WriteSmallMFUActions (struct MFU_ListMFUActions *ListMFUActions)
/* Icon and text */ /* Icon and text */
fprintf (Gbl.F.Out,"<li>"); fprintf (Gbl.F.Out,"<li>");
Act_StartForm (Action); Frm_StartForm (Action);
Act_LinkFormSubmit (TabMenuStr,NULL,NULL); Frm_LinkFormSubmit (TabMenuStr,NULL,NULL);
fprintf (Gbl.F.Out,"<img src=\"%s/%s/%s\" alt=\"%s\" />", fprintf (Gbl.F.Out,"<img src=\"%s/%s/%s\" alt=\"%s\" />",
Gbl.Prefs.PathIconSet,Cfg_ICON_ACTION, Gbl.Prefs.PathIconSet,Cfg_ICON_ACTION,
Act_GetIcon (Action), Act_GetIcon (Action),
MenuStr); MenuStr);
fprintf (Gbl.F.Out," %s</a>",MenuStr); fprintf (Gbl.F.Out," %s</a>",MenuStr);
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</li>"); fprintf (Gbl.F.Out,"</li>");
} }
} }

View File

@ -35,6 +35,7 @@
#include "swad_duplicate.h" #include "swad_duplicate.h"
#include "swad_enrolment.h" #include "swad_enrolment.h"
#include "swad_follow.h" #include "swad_follow.h"
#include "swad_form.h"
#include "swad_global.h" #include "swad_global.h"
#include "swad_ID.h" #include "swad_ID.h"
#include "swad_language.h" #include "swad_language.h"
@ -149,7 +150,7 @@ static void Acc_ShowFormCheckIfIHaveAccount (const char *Title)
Ale_ShowAlert (Ale_INFO,Txt_If_you_think_you_may_have_been_registered_); Ale_ShowAlert (Ale_INFO,Txt_If_you_think_you_may_have_been_registered_);
/***** Form to request user's ID for possible account already created *****/ /***** Form to request user's ID for possible account already created *****/
Act_StartForm (ActChkUsrAcc); Frm_StartForm (ActChkUsrAcc);
fprintf (Gbl.F.Out,"<label class=\"%s\">" fprintf (Gbl.F.Out,"<label class=\"%s\">"
"%s:&nbsp;" "%s:&nbsp;"
"<input type=\"text\" name=\"ID\"" "<input type=\"text\" name=\"ID\""
@ -159,7 +160,7 @@ static void Acc_ShowFormCheckIfIHaveAccount (const char *Title)
The_ClassForm[Gbl.Prefs.Theme],Txt_ID, The_ClassForm[Gbl.Prefs.Theme],Txt_ID,
ID_MAX_CHARS_USR_ID); ID_MAX_CHARS_USR_ID);
Btn_PutConfirmButton (Txt_Check); Btn_PutConfirmButton (Txt_Check);
Act_EndForm (); Frm_EndForm ();
/***** End box *****/ /***** End box *****/
Box_EndBox (); Box_EndBox ();
@ -304,10 +305,10 @@ static void Acc_WriteRowEmptyAccount (unsigned NumUsr,const char *ID,struct UsrD
/***** Button to login with this account *****/ /***** Button to login with this account *****/
fprintf (Gbl.F.Out,"<td class=\"RIGHT_TOP COLOR%u\">", fprintf (Gbl.F.Out,"<td class=\"RIGHT_TOP COLOR%u\">",
Gbl.RowEvenOdd); Gbl.RowEvenOdd);
Act_StartForm (ActLogInNew); Frm_StartForm (ActLogInNew);
Usr_PutParamUsrCodEncrypted (UsrDat->EncryptedUsrCod); Usr_PutParamUsrCodEncrypted (UsrDat->EncryptedUsrCod);
Btn_PutCreateButtonInline (Txt_Its_me); Btn_PutCreateButtonInline (Txt_Its_me);
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</td>" fprintf (Gbl.F.Out,"</td>"
"</tr>"); "</tr>");
@ -340,7 +341,7 @@ static void Acc_ShowFormRequestNewAccountWithParams (const char *NewNicknameWith
char NewNicknameWithArroba[Nck_MAX_BYTES_NICKNAME_FROM_FORM + 1]; char NewNicknameWithArroba[Nck_MAX_BYTES_NICKNAME_FROM_FORM + 1];
/***** Start form to enter some data of the new user *****/ /***** Start form to enter some data of the new user *****/
Act_StartForm (ActCreUsrAcc); Frm_StartForm (ActCreUsrAcc);
/***** Start box and table *****/ /***** Start box and table *****/
Box_StartBoxTable (NULL,Txt_Create_account,NULL, Box_StartBoxTable (NULL,Txt_Create_account,NULL,
@ -395,7 +396,7 @@ static void Acc_ShowFormRequestNewAccountWithParams (const char *NewNicknameWith
Box_EndBoxTableWithButton (Btn_CREATE_BUTTON,Txt_Create_account); Box_EndBoxTableWithButton (Btn_CREATE_BUTTON,Txt_Create_account);
/***** End form *****/ /***** End form *****/
Act_EndForm (); Frm_EndForm ();
} }
/*****************************************************************************/ /*****************************************************************************/
@ -416,9 +417,9 @@ void Acc_ShowFormGoToRequestNewAccount (void)
Hlp_PROFILE_SignUp,Box_NOT_CLOSABLE); Hlp_PROFILE_SignUp,Box_NOT_CLOSABLE);
/***** Button to go to request the creation of a new account *****/ /***** Button to go to request the creation of a new account *****/
Act_StartForm (ActFrmMyAcc); Frm_StartForm (ActFrmMyAcc);
Btn_PutCreateButton (Txt_Create_account); Btn_PutCreateButton (Txt_Create_account);
Act_EndForm (); Frm_EndForm ();
/***** End box *****/ /***** End box *****/
Box_EndBox (); Box_EndBox ();
@ -936,10 +937,10 @@ void Acc_AskIfRemoveMyAccount (void)
Rec_ShowSharedRecordUnmodifiable (&Gbl.Usrs.Me.UsrDat); Rec_ShowSharedRecordUnmodifiable (&Gbl.Usrs.Me.UsrDat);
/* Show form to request confirmation */ /* Show form to request confirmation */
Act_StartForm (ActRemMyAcc); Frm_StartForm (ActRemMyAcc);
Pwd_AskForConfirmationOnDangerousAction (); Pwd_AskForConfirmationOnDangerousAction ();
Btn_PutRemoveButton (Txt_Eliminate_my_user_account); Btn_PutRemoveButton (Txt_Eliminate_my_user_account);
Act_EndForm (); Frm_EndForm ();
/* End alert */ /* End alert */
Ale_ShowAlertAndButton2 (ActUnk,NULL,NULL,NULL,Btn_NO_BUTTON,NULL); Ale_ShowAlertAndButton2 (ActUnk,NULL,NULL,NULL,Btn_NO_BUTTON,NULL);
@ -964,11 +965,11 @@ static void Acc_AskIfRemoveOtherUsrAccount (void)
Rec_ShowSharedRecordUnmodifiable (&Gbl.Usrs.Other.UsrDat); Rec_ShowSharedRecordUnmodifiable (&Gbl.Usrs.Other.UsrDat);
/* Show form to request confirmation */ /* Show form to request confirmation */
Act_StartForm (ActRemUsrGbl); Frm_StartForm (ActRemUsrGbl);
Usr_PutParamOtherUsrCodEncrypted (); Usr_PutParamOtherUsrCodEncrypted ();
Pwd_AskForConfirmationOnDangerousAction (); Pwd_AskForConfirmationOnDangerousAction ();
Btn_PutRemoveButton (Txt_Eliminate_user_account); Btn_PutRemoveButton (Txt_Eliminate_user_account);
Act_EndForm (); Frm_EndForm ();
/* End alert */ /* End alert */
Ale_ShowAlertAndButton2 (ActUnk,NULL,NULL,NULL,Btn_NO_BUTTON,NULL); Ale_ShowAlertAndButton2 (ActUnk,NULL,NULL,NULL,Btn_NO_BUTTON,NULL);

View File

@ -4938,9 +4938,6 @@ Act_Action_t Act_FromActCodToAction[1 + Act_MAX_ACTION_COD] = // Do not reuse un
/**************************** Private prototypes *****************************/ /**************************** Private prototypes *****************************/
/*****************************************************************************/ /*****************************************************************************/
static void Act_StartFormInternal (Act_Action_t NextAction,bool PutParameterLocationIfNoSesion,
const char *Id,const char *Anchor,const char *OnSubmit);
/*****************************************************************************/ /*****************************************************************************/
/****************** Get action from permanent action code ********************/ /****************** Get action from permanent action code ********************/
/*****************************************************************************/ /*****************************************************************************/
@ -5142,253 +5139,6 @@ char *Act_GetActionTextFromDB (long ActCod,
return ActTxt; return ActTxt;
} }
/*****************************************************************************/
/******************************** Start a form *******************************/
/*****************************************************************************/
void Act_StartFormGoTo (Act_Action_t NextAction)
{
Gbl.Form.Num++; // Initialized to -1. The first time it is incremented, it will be equal to 0
snprintf (Gbl.Form.Id,sizeof (Gbl.Form.Id),
"form_%d",
Gbl.Form.Num);
Act_StartFormInternal (NextAction,false,Gbl.Form.Id,NULL,NULL); // Do not put now parameter location
}
void Act_StartForm (Act_Action_t NextAction)
{
Act_StartFormAnchorOnSubmit (NextAction,NULL,NULL);
}
void Act_StartFormAnchor (Act_Action_t NextAction,const char *Anchor)
{
Act_StartFormAnchorOnSubmit (NextAction,Anchor,NULL);
}
void Act_StartFormOnSubmit (Act_Action_t NextAction,const char *OnSubmit)
{
Act_StartFormAnchorOnSubmit (NextAction,NULL,OnSubmit);
}
void Act_StartFormAnchorOnSubmit (Act_Action_t NextAction,const char *Anchor,const char *OnSubmit)
{
Gbl.Form.Num++; // Initialized to -1. The first time it is incremented, it will be equal to 0
snprintf (Gbl.Form.Id,sizeof (Gbl.Form.Id),
"form_%d",
Gbl.Form.Num);
Act_StartFormInternal (NextAction,true,Gbl.Form.Id,Anchor,OnSubmit); // Do put now parameter location (if no open session)
}
void Act_StartFormUnique (Act_Action_t NextAction)
{
Act_StartFormUniqueAnchor (NextAction,NULL);
}
void Act_StartFormUniqueAnchor (Act_Action_t NextAction,const char *Anchor)
{
Gbl.Form.Num++; // Initialized to -1. The first time it is incremented, it will be equal to 0
snprintf (Gbl.Form.UniqueId,sizeof (Gbl.Form.UniqueId),
"form_%s_%d",
Gbl.UniqueNameEncrypted,Gbl.Form.Num);
Act_StartFormInternal (NextAction,true,Gbl.Form.UniqueId,Anchor,NULL); // Do put now parameter location (if no open session)
}
void Act_StartFormId (Act_Action_t NextAction,const char *Id)
{
Gbl.Form.Num++; // Initialized to -1. The first time it is incremented, it will be equal to 0
Act_StartFormInternal (NextAction,true,Id,NULL,NULL); // Do put now parameter location (if no open session)
}
// Id can not be NULL
static void Act_StartFormInternal (Act_Action_t NextAction,bool PutParameterLocationIfNoSesion,
const char *Id,const char *Anchor,const char *OnSubmit)
{
extern const char *Txt_STR_LANG_ID[1 + Txt_NUM_LANGUAGES];
char ParamsStr[Act_MAX_BYTES_PARAMS_STR];
if (!Gbl.Form.Inside)
{
/* Start form */
fprintf (Gbl.F.Out,"<form method=\"post\" action=\"%s/%s",
Cfg_URL_SWAD_CGI,
Txt_STR_LANG_ID[Gbl.Prefs.Language]);
if (Anchor)
if (Anchor[0])
fprintf (Gbl.F.Out,"#%s",Anchor);
fprintf (Gbl.F.Out,"\" id=\"%s\"",Id);
if (OnSubmit)
if (OnSubmit[0])
fprintf (Gbl.F.Out," onsubmit=\"%s;\"",OnSubmit);
switch (Act_GetBrowserTab (NextAction))
{
case Act_BRW_NEW_TAB:
case Act_DOWNLD_FILE:
fprintf (Gbl.F.Out," target=\"_blank\"");
break;
default:
break;
}
if (Act_GetContentType (NextAction) == Act_CONT_DATA)
fprintf (Gbl.F.Out," enctype=\"multipart/form-data\"");
fprintf (Gbl.F.Out," accept-charset=\"windows-1252\">");
/* Put basic form parameters */
Act_SetParamsForm (ParamsStr,NextAction,PutParameterLocationIfNoSesion);
fprintf (Gbl.F.Out,"%s",ParamsStr);
Gbl.Form.Inside = true;
}
}
void Act_SetParamsForm (char ParamsStr[Act_MAX_BYTES_PARAMS_STR + 1],Act_Action_t NextAction,
bool PutParameterLocationIfNoSesion)
{
char ParamAction[Act_MAX_BYTES_PARAM_ACTION + 1];
char ParamSession[Act_MAX_BYTES_PARAM_SESSION + 1];
char ParamLocation[Act_MAX_BYTES_PARAM_LOCATION + 1];
ParamAction[0] = '\0';
ParamSession[0] = '\0';
ParamLocation[0] = '\0';
if (NextAction != ActUnk)
snprintf (ParamAction,sizeof (ParamAction),
"<input type=\"hidden\" name=\"act\" value=\"%ld\" />",
Act_GetActCod (NextAction));
if (Gbl.Session.Id[0])
snprintf (ParamSession,sizeof (ParamSession),
"<input type=\"hidden\" name=\"ses\" value=\"%s\" />",
Gbl.Session.Id);
else if (PutParameterLocationIfNoSesion)
// Extra parameters necessary when there's no open session
{
/* If session is open, course code will be get from session data,
but if there is not an open session, and next action is known,
it is necessary to send a parameter with course code */
if (Gbl.CurrentCrs.Crs.CrsCod > 0)
// If course selected...
snprintf (ParamLocation,sizeof (ParamLocation),
"<input type=\"hidden\" name=\"crs\" value=\"%ld\" />",
Gbl.CurrentCrs.Crs.CrsCod);
else if (Gbl.CurrentDeg.Deg.DegCod > 0)
// If no course selected, but degree selected...
snprintf (ParamLocation,sizeof (ParamLocation),
"<input type=\"hidden\" name=\"deg\" value=\"%ld\" />",
Gbl.CurrentDeg.Deg.DegCod);
else if (Gbl.CurrentCtr.Ctr.CtrCod > 0)
// If no degree selected, but centre selected...
snprintf (ParamLocation,sizeof (ParamLocation),
"<input type=\"hidden\" name=\"ctr\" value=\"%ld\" />",
Gbl.CurrentCtr.Ctr.CtrCod);
else if (Gbl.CurrentIns.Ins.InsCod > 0)
// If no centre selected, but institution selected...
snprintf (ParamLocation,sizeof (ParamLocation),
"<input type=\"hidden\" name=\"ins\" value=\"%ld\" />",
Gbl.CurrentIns.Ins.InsCod);
else if (Gbl.CurrentCty.Cty.CtyCod > 0)
// If no institution selected, but country selected...
snprintf (ParamLocation,sizeof (ParamLocation),
"<input type=\"hidden\" name=\"cty\" value=\"%ld\" />",
Gbl.CurrentCty.Cty.CtyCod);
}
snprintf (ParamsStr,Act_MAX_BYTES_PARAMS_STR + 1,
"%s%s%s",
ParamAction,ParamSession,ParamLocation);
}
void Act_EndForm (void)
{
if (Gbl.Form.Inside)
{
fprintf (Gbl.F.Out,"</form>");
Gbl.Form.Inside = false;
}
}
/*****************************************************************************/
/******************* Anchor directive used to send a form ********************/
/*****************************************************************************/
// Requires an extern </a>
void Act_LinkFormSubmit (const char *Title,const char *LinkStyle,
const char *OnSubmit)
{
Act_LinkFormSubmitId (Title,LinkStyle,Gbl.Form.Id,OnSubmit);
}
void Act_LinkFormSubmitUnique (const char *Title,const char *LinkStyle)
{
Act_LinkFormSubmitId (Title,LinkStyle,Gbl.Form.UniqueId,NULL);
}
// Title can be NULL
// LinkStyle can be NULL
// Id can not be NULL
// OnSubmit can be NULL
void Act_LinkFormSubmitId (const char *Title,const char *LinkStyle,
const char *Id,const char *OnSubmit)
{
fprintf (Gbl.F.Out,"<a href=\"\"");
if (Title)
if (Title[0])
fprintf (Gbl.F.Out," title=\"%s\"",Title);
if (LinkStyle)
if (LinkStyle[0])
fprintf (Gbl.F.Out," class=\"%s\"",LinkStyle);
fprintf (Gbl.F.Out," onclick=\"");
if (OnSubmit) // JavaScript function to be called
// before submitting the form
if (OnSubmit[0])
fprintf (Gbl.F.Out,"%s;",OnSubmit);
fprintf (Gbl.F.Out,"document.getElementById('%s').submit();"
"return false;\">",
Id);
}
void Act_LinkFormSubmitAnimated (const char *Title,const char *LinkStyle,
const char *OnSubmit)
{
fprintf (Gbl.F.Out,"<a href=\"\"");
if (Title)
if (Title[0])
fprintf (Gbl.F.Out," title=\"%s\"",Title);
if (LinkStyle)
if (LinkStyle[0])
fprintf (Gbl.F.Out," class=\"%s\"",LinkStyle);
fprintf (Gbl.F.Out," onclick=\"");
if (OnSubmit) // JavaScript function to be called
// before submitting the form
if (OnSubmit[0])
fprintf (Gbl.F.Out,"%s;",OnSubmit);
fprintf (Gbl.F.Out,"AnimateIcon(%d);"
"document.getElementById('%s').submit();"
"return false;\">",
Gbl.Form.Num,
Gbl.Form.Id);
}
/*****************************************************************************/
/***************************** Get unique Id *********************************/
/*****************************************************************************/
void Act_SetUniqueId (char UniqueId[Act_MAX_BYTES_ID + 1])
{
static unsigned CountForThisExecution = 0;
/***** Create Id. The id must be unique,
the page content may be updated via AJAX.
So, Id uses:
- a name for this execution (Gbl.UniqueNameEncrypted)
- a number for each element in this execution (CountForThisExecution) *****/
snprintf (UniqueId,Act_MAX_BYTES_ID + 1,
"id_%s_%u",
Gbl.UniqueNameEncrypted,
++CountForThisExecution);
}
/*****************************************************************************/ /*****************************************************************************/
/***************** Adjust current action when no user's logged ***************/ /***************** Adjust current action when no user's logged ***************/
/*****************************************************************************/ /*****************************************************************************/

View File

@ -67,13 +67,6 @@ typedef signed int Act_Action_t; // Must be a signed type, because -1 is used to
#define Act_MAX_OPTIONS_IN_MENU_PER_TAB 13 #define Act_MAX_OPTIONS_IN_MENU_PER_TAB 13
#define Act_MAX_BYTES_ID (32 + Cry_BYTES_ENCRYPTED_STR_SHA256_BASE64 + 10)
#define Act_MAX_BYTES_PARAM_ACTION 256
#define Act_MAX_BYTES_PARAM_SESSION (256 + Cns_BYTES_SESSION_ID)
#define Act_MAX_BYTES_PARAM_LOCATION 256
#define Act_MAX_BYTES_PARAMS_STR (Act_MAX_BYTES_PARAM_ACTION + Act_MAX_BYTES_PARAM_SESSION + Act_MAX_BYTES_PARAM_LOCATION)
/*****************************************************************************/ /*****************************************************************************/
/************************* Not asociates with tabs ***************************/ /************************* Not asociates with tabs ***************************/
/*****************************************************************************/ /*****************************************************************************/
@ -1670,27 +1663,6 @@ const char *Act_GetSubtitleAction (Act_Action_t Action);
char *Act_GetActionTextFromDB (long ActCod, char *Act_GetActionTextFromDB (long ActCod,
char ActTxt[Act_MAX_BYTES_ACTION_TXT + 1]); char ActTxt[Act_MAX_BYTES_ACTION_TXT + 1]);
void Act_StartFormGoTo (Act_Action_t NextAction);
void Act_StartForm (Act_Action_t NextAction);
void Act_StartFormOnSubmit (Act_Action_t NextAction,const char *OnSubmit);
void Act_StartFormAnchorOnSubmit (Act_Action_t NextAction,const char *Anchor,const char *OnSubmit);
void Act_StartFormUnique (Act_Action_t NextAction);
void Act_StartFormAnchor (Act_Action_t NextAction,const char *Anchor);
void Act_StartFormUniqueAnchor (Act_Action_t NextAction,const char *Anchor);
void Act_StartFormId (Act_Action_t NextAction,const char *Id);
void Act_SetParamsForm (char ParamsStr[Act_MAX_BYTES_PARAMS_STR],Act_Action_t NextAction,
bool PutParameterLocationIfNoSesion);
void Act_EndForm (void);
void Act_LinkFormSubmit (const char *Title,const char *LinkStyle,
const char *OnSubmit);
void Act_LinkFormSubmitUnique (const char *Title,const char *LinkStyle);
void Act_LinkFormSubmitId (const char *Title,const char *LinkStyle,
const char *Id,const char *OnSubmit);
void Act_LinkFormSubmitAnimated (const char *Title,const char *LinkStyle,
const char *OnSubmit);
void Act_SetUniqueId (char UniqueId[Act_MAX_BYTES_ID + 1]);
void Act_AdjustActionWhenNoUsrLogged (void); void Act_AdjustActionWhenNoUsrLogged (void);
void Act_AdjustCurrentAction (void); void Act_AdjustCurrentAction (void);

View File

@ -35,6 +35,7 @@
#include "swad_agenda.h" #include "swad_agenda.h"
#include "swad_box.h" #include "swad_box.h"
#include "swad_database.h" #include "swad_database.h"
#include "swad_form.h"
#include "swad_global.h" #include "swad_global.h"
#include "swad_group.h" #include "swad_group.h"
#include "swad_notification.h" #include "swad_notification.h"
@ -192,7 +193,7 @@ static void Agd_ShowFormToSelPast__FutureEvents (void)
fprintf (Gbl.F.Out,"<div class=\"%s\">", fprintf (Gbl.F.Out,"<div class=\"%s\">",
(Gbl.Agenda.Past__FutureEvents & (1 << PstFut)) ? "PREF_ON" : (Gbl.Agenda.Past__FutureEvents & (1 << PstFut)) ? "PREF_ON" :
"PREF_OFF"); "PREF_OFF");
Act_StartForm (ActSeeMyAgd); Frm_StartForm (ActSeeMyAgd);
Agd_PutParamsMyAgenda (Gbl.Agenda.Past__FutureEvents ^ (1 << PstFut), // Toggle Agd_PutParamsMyAgenda (Gbl.Agenda.Past__FutureEvents ^ (1 << PstFut), // Toggle
Gbl.Agenda.PrivatPublicEvents, Gbl.Agenda.PrivatPublicEvents,
Gbl.Agenda.HiddenVisiblEvents, Gbl.Agenda.HiddenVisiblEvents,
@ -206,7 +207,7 @@ static void Agd_ShowFormToSelPast__FutureEvents (void)
Image[PstFut], Image[PstFut],
Txt_AGENDA_PAST___FUTURE_EVENTS[PstFut], Txt_AGENDA_PAST___FUTURE_EVENTS[PstFut],
Txt_AGENDA_PAST___FUTURE_EVENTS[PstFut]); Txt_AGENDA_PAST___FUTURE_EVENTS[PstFut]);
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</div>"); fprintf (Gbl.F.Out,"</div>");
} }
fprintf (Gbl.F.Out,"</div>"); fprintf (Gbl.F.Out,"</div>");
@ -234,7 +235,7 @@ static void Agd_ShowFormToSelPrivatPublicEvents (void)
fprintf (Gbl.F.Out,"<div class=\"%s\">", fprintf (Gbl.F.Out,"<div class=\"%s\">",
(Gbl.Agenda.PrivatPublicEvents & (1 << PrvPub)) ? "PREF_ON" : (Gbl.Agenda.PrivatPublicEvents & (1 << PrvPub)) ? "PREF_ON" :
"PREF_OFF"); "PREF_OFF");
Act_StartForm (ActSeeMyAgd); Frm_StartForm (ActSeeMyAgd);
Agd_PutParamsMyAgenda (Gbl.Agenda.Past__FutureEvents, Agd_PutParamsMyAgenda (Gbl.Agenda.Past__FutureEvents,
Gbl.Agenda.PrivatPublicEvents ^ (1 << PrvPub), // Toggle Gbl.Agenda.PrivatPublicEvents ^ (1 << PrvPub), // Toggle
Gbl.Agenda.HiddenVisiblEvents, Gbl.Agenda.HiddenVisiblEvents,
@ -248,7 +249,7 @@ static void Agd_ShowFormToSelPrivatPublicEvents (void)
Image[PrvPub], Image[PrvPub],
Txt_AGENDA_PRIVAT_PUBLIC_EVENTS[PrvPub], Txt_AGENDA_PRIVAT_PUBLIC_EVENTS[PrvPub],
Txt_AGENDA_PRIVAT_PUBLIC_EVENTS[PrvPub]); Txt_AGENDA_PRIVAT_PUBLIC_EVENTS[PrvPub]);
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</div>"); fprintf (Gbl.F.Out,"</div>");
} }
fprintf (Gbl.F.Out,"</div>"); fprintf (Gbl.F.Out,"</div>");
@ -276,7 +277,7 @@ static void Agd_ShowFormToSelHiddenVisiblEvents (void)
fprintf (Gbl.F.Out,"<div class=\"%s\">", fprintf (Gbl.F.Out,"<div class=\"%s\">",
(Gbl.Agenda.HiddenVisiblEvents & (1 << HidVis)) ? "PREF_ON" : (Gbl.Agenda.HiddenVisiblEvents & (1 << HidVis)) ? "PREF_ON" :
"PREF_OFF"); "PREF_OFF");
Act_StartForm (ActSeeMyAgd); Frm_StartForm (ActSeeMyAgd);
Agd_PutParamsMyAgenda (Gbl.Agenda.Past__FutureEvents, Agd_PutParamsMyAgenda (Gbl.Agenda.Past__FutureEvents,
Gbl.Agenda.PrivatPublicEvents, Gbl.Agenda.PrivatPublicEvents,
Gbl.Agenda.HiddenVisiblEvents ^ (1 << HidVis), // Toggle Gbl.Agenda.HiddenVisiblEvents ^ (1 << HidVis), // Toggle
@ -290,7 +291,7 @@ static void Agd_ShowFormToSelHiddenVisiblEvents (void)
Image[HidVis], Image[HidVis],
Txt_AGENDA_HIDDEN_VISIBL_EVENTS[HidVis], Txt_AGENDA_HIDDEN_VISIBL_EVENTS[HidVis],
Txt_AGENDA_HIDDEN_VISIBL_EVENTS[HidVis]); Txt_AGENDA_HIDDEN_VISIBL_EVENTS[HidVis]);
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</div>"); fprintf (Gbl.F.Out,"</div>");
} }
fprintf (Gbl.F.Out,"</div>"); fprintf (Gbl.F.Out,"</div>");
@ -592,25 +593,25 @@ static void Agd_WriteHeaderListEvents (Agd_AgendaType_t AgendaType)
{ {
case Agd_MY_AGENDA_TODAY: case Agd_MY_AGENDA_TODAY:
case Agd_MY_AGENDA: case Agd_MY_AGENDA:
Act_StartForm (ActSeeMyAgd); Frm_StartForm (ActSeeMyAgd);
Pag_PutHiddenParamPagNum (Pag_MY_AGENDA,Gbl.Agenda.CurrentPage); Pag_PutHiddenParamPagNum (Pag_MY_AGENDA,Gbl.Agenda.CurrentPage);
break; break;
case Agd_ANOTHER_AGENDA_TODAY: case Agd_ANOTHER_AGENDA_TODAY:
case Agd_ANOTHER_AGENDA: case Agd_ANOTHER_AGENDA:
Act_StartForm (ActSeeUsrAgd); Frm_StartForm (ActSeeUsrAgd);
Usr_PutParamOtherUsrCodEncrypted (); Usr_PutParamOtherUsrCodEncrypted ();
Pag_PutHiddenParamPagNum (Pag_ANOTHER_AGENDA,Gbl.Agenda.CurrentPage); Pag_PutHiddenParamPagNum (Pag_ANOTHER_AGENDA,Gbl.Agenda.CurrentPage);
break; break;
} }
Par_PutHiddenParamUnsigned ("Order",(unsigned) Order); Par_PutHiddenParamUnsigned ("Order",(unsigned) Order);
Act_LinkFormSubmit (Txt_START_END_TIME_HELP[Order],"TIT_TBL",NULL); Frm_LinkFormSubmit (Txt_START_END_TIME_HELP[Order],"TIT_TBL",NULL);
if (Order == Gbl.Agenda.SelectedOrder) if (Order == Gbl.Agenda.SelectedOrder)
fprintf (Gbl.F.Out,"<u>"); fprintf (Gbl.F.Out,"<u>");
fprintf (Gbl.F.Out,"%s",Txt_START_END_TIME[Order]); fprintf (Gbl.F.Out,"%s",Txt_START_END_TIME[Order]);
if (Order == Gbl.Agenda.SelectedOrder) if (Order == Gbl.Agenda.SelectedOrder)
fprintf (Gbl.F.Out,"</u>"); fprintf (Gbl.F.Out,"</u>");
fprintf (Gbl.F.Out,"</a>"); fprintf (Gbl.F.Out,"</a>");
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</th>"); fprintf (Gbl.F.Out,"</th>");
} }
fprintf (Gbl.F.Out,"<th class=\"LEFT_MIDDLE\">" fprintf (Gbl.F.Out,"<th class=\"LEFT_MIDDLE\">"
@ -716,14 +717,14 @@ static void Agd_PutButtonToCreateNewEvent (void)
{ {
extern const char *Txt_New_event; extern const char *Txt_New_event;
Act_StartForm (ActFrmNewEvtMyAgd); Frm_StartForm (ActFrmNewEvtMyAgd);
Agd_PutParamsMyAgenda (Gbl.Agenda.Past__FutureEvents, Agd_PutParamsMyAgenda (Gbl.Agenda.Past__FutureEvents,
Gbl.Agenda.PrivatPublicEvents, Gbl.Agenda.PrivatPublicEvents,
Gbl.Agenda.HiddenVisiblEvents, Gbl.Agenda.HiddenVisiblEvents,
Gbl.Agenda.CurrentPage, Gbl.Agenda.CurrentPage,
-1L); -1L);
Btn_PutConfirmButton (Txt_New_event); Btn_PutConfirmButton (Txt_New_event);
Act_EndForm (); Frm_EndForm ();
} }
/*****************************************************************************/ /*****************************************************************************/
@ -1537,12 +1538,12 @@ void Agd_RequestCreatOrEditEvent (void)
/***** Start form *****/ /***** Start form *****/
if (ItsANewEvent) if (ItsANewEvent)
{ {
Act_StartForm (ActNewEvtMyAgd); Frm_StartForm (ActNewEvtMyAgd);
Gbl.Agenda.AgdCodToEdit = -1L; Gbl.Agenda.AgdCodToEdit = -1L;
} }
else else
{ {
Act_StartForm (ActChgEvtMyAgd); Frm_StartForm (ActChgEvtMyAgd);
Gbl.Agenda.AgdCodToEdit = AgdEvent.AgdCod; Gbl.Agenda.AgdCodToEdit = AgdEvent.AgdCod;
} }
Agd_PutCurrentParamsMyAgenda (); Agd_PutCurrentParamsMyAgenda ();
@ -1612,7 +1613,7 @@ void Agd_RequestCreatOrEditEvent (void)
Box_EndBoxTableWithButton (Btn_CONFIRM_BUTTON,Txt_Save); Box_EndBoxTableWithButton (Btn_CONFIRM_BUTTON,Txt_Save);
/***** End form *****/ /***** End form *****/
Act_EndForm (); Frm_EndForm ();
/***** Show current events, if any *****/ /***** Show current events, if any *****/
Agd_ShowMyAgenda (); Agd_ShowMyAgenda ();

View File

@ -28,6 +28,7 @@
#include <linux/stddef.h> // For NULL #include <linux/stddef.h> // For NULL
#include "swad_alert.h" #include "swad_alert.h"
#include "swad_form.h"
#include "swad_global.h" #include "swad_global.h"
/*****************************************************************************/ /*****************************************************************************/
@ -115,7 +116,7 @@ void Ale_ShowAlertAndButton (Ale_AlertType_t AlertType,const char *Txt,
void Ale_ShowAlertAndButton1 (Ale_AlertType_t AlertType,const char *Txt) void Ale_ShowAlertAndButton1 (Ale_AlertType_t AlertType,const char *Txt)
{ {
extern const char *Txt_Close; extern const char *Txt_Close;
char IdAlert[Act_MAX_BYTES_ID + 1]; char IdAlert[Frm_MAX_BYTES_ID + 1];
static const bool AlertClosable[Ale_NUM_ALERT_TYPES] = static const bool AlertClosable[Ale_NUM_ALERT_TYPES] =
{ {
false, // Ale_NONE false, // Ale_NONE
@ -136,7 +137,7 @@ void Ale_ShowAlertAndButton1 (Ale_AlertType_t AlertType,const char *Txt)
if (AlertClosable[AlertType]) if (AlertClosable[AlertType])
{ {
/* Create unique id for alert */ /* Create unique id for alert */
Act_SetUniqueId (IdAlert); Frm_SetUniqueId (IdAlert);
fprintf (Gbl.F.Out," id=\"%s\"",IdAlert); fprintf (Gbl.F.Out," id=\"%s\"",IdAlert);
} }
fprintf (Gbl.F.Out," class=\"CENTER_MIDDLE\">" fprintf (Gbl.F.Out," class=\"CENTER_MIDDLE\">"
@ -178,8 +179,8 @@ void Ale_ShowAlertAndButton2 (Act_Action_t NextAction,const char *Anchor,const c
if (TxtButton[0]) if (TxtButton[0])
{ {
/* Start form */ /* Start form */
Act_StartFormAnchor (NextAction,Anchor); Frm_StartFormAnchor (NextAction,Anchor);
Act_StartFormAnchorOnSubmit (NextAction,Anchor,OnSubmit); Frm_StartFormAnchorOnSubmit (NextAction,Anchor,OnSubmit);
if (FuncParams) if (FuncParams)
FuncParams (); FuncParams ();
@ -187,7 +188,7 @@ void Ale_ShowAlertAndButton2 (Act_Action_t NextAction,const char *Anchor,const c
Btn_PutButton (Button,TxtButton); Btn_PutButton (Button,TxtButton);
/* End form */ /* End form */
Act_EndForm (); Frm_EndForm ();
} }
/***** End box *****/ /***** End box *****/

View File

@ -28,6 +28,7 @@
#include "swad_announcement.h" #include "swad_announcement.h"
#include "swad_box.h" #include "swad_box.h"
#include "swad_database.h" #include "swad_database.h"
#include "swad_form.h"
#include "swad_global.h" #include "swad_global.h"
#include "swad_parameter.h" #include "swad_parameter.h"
#include "swad_role.h" #include "swad_role.h"
@ -200,9 +201,9 @@ static void Ann_PutButtonToAddNewAnnouncement (void)
{ {
extern const char *Txt_New_announcement; extern const char *Txt_New_announcement;
Act_StartForm (ActWriAnn); Frm_StartForm (ActWriAnn);
Btn_PutConfirmButton (Txt_New_announcement); Btn_PutConfirmButton (Txt_New_announcement);
Act_EndForm (); Frm_EndForm ();
} }
/*****************************************************************************/ /*****************************************************************************/
@ -411,7 +412,7 @@ void Ann_ShowFormAnnouncement (void)
extern const char *Txt_Create_announcement; extern const char *Txt_Create_announcement;
/***** Start form *****/ /***** Start form *****/
Act_StartForm (ActRcvAnn); Frm_StartForm (ActRcvAnn);
/***** Start box and table *****/ /***** Start box and table *****/
Box_StartBoxTable (NULL,Txt_New_announcement,NULL, Box_StartBoxTable (NULL,Txt_New_announcement,NULL,
@ -447,7 +448,7 @@ void Ann_ShowFormAnnouncement (void)
Box_EndBoxTableWithButton (Btn_CREATE_BUTTON,Txt_Create_announcement); Box_EndBoxTableWithButton (Btn_CREATE_BUTTON,Txt_Create_announcement);
/***** End form *****/ /***** End form *****/
Act_EndForm (); Frm_EndForm ();
} }
/*****************************************************************************/ /*****************************************************************************/

View File

@ -35,6 +35,7 @@
#include "swad_assignment.h" #include "swad_assignment.h"
#include "swad_box.h" #include "swad_box.h"
#include "swad_database.h" #include "swad_database.h"
#include "swad_form.h"
#include "swad_global.h" #include "swad_global.h"
#include "swad_group.h" #include "swad_group.h"
#include "swad_notification.h" #include "swad_notification.h"
@ -207,11 +208,11 @@ static void Asg_PutHeadForSeeing (bool PrintView)
if (!PrintView) if (!PrintView)
{ {
Act_StartForm (ActSeeAsg); Frm_StartForm (ActSeeAsg);
Grp_PutParamWhichGrps (); Grp_PutParamWhichGrps ();
Pag_PutHiddenParamPagNum (Pag_ASSIGNMENTS,Gbl.Asgs.CurrentPage); Pag_PutHiddenParamPagNum (Pag_ASSIGNMENTS,Gbl.Asgs.CurrentPage);
Par_PutHiddenParamUnsigned ("Order",(unsigned) Order); Par_PutHiddenParamUnsigned ("Order",(unsigned) Order);
Act_LinkFormSubmit (Txt_START_END_TIME_HELP[Order],"TIT_TBL",NULL); Frm_LinkFormSubmit (Txt_START_END_TIME_HELP[Order],"TIT_TBL",NULL);
if (Order == Gbl.Asgs.SelectedOrder) if (Order == Gbl.Asgs.SelectedOrder)
fprintf (Gbl.F.Out,"<u>"); fprintf (Gbl.F.Out,"<u>");
} }
@ -221,7 +222,7 @@ static void Asg_PutHeadForSeeing (bool PrintView)
if (Order == Gbl.Asgs.SelectedOrder) if (Order == Gbl.Asgs.SelectedOrder)
fprintf (Gbl.F.Out,"</u>"); fprintf (Gbl.F.Out,"</u>");
fprintf (Gbl.F.Out,"</a>"); fprintf (Gbl.F.Out,"</a>");
Act_EndForm (); Frm_EndForm ();
} }
fprintf (Gbl.F.Out,"</th>"); fprintf (Gbl.F.Out,"</th>");
@ -291,10 +292,10 @@ static void Asg_PutButtonToCreateNewAsg (void)
extern const char *Txt_New_assignment; extern const char *Txt_New_assignment;
Gbl.Asgs.AsgCodToEdit = -1L; Gbl.Asgs.AsgCodToEdit = -1L;
Act_StartForm (ActFrmNewAsg); Frm_StartForm (ActFrmNewAsg);
Asg_PutParams (); Asg_PutParams ();
Btn_PutConfirmButton (Txt_New_assignment); Btn_PutConfirmButton (Txt_New_assignment);
Act_EndForm (); Frm_EndForm ();
} }
/*****************************************************************************/ /*****************************************************************************/
@ -519,7 +520,7 @@ static void Asg_WriteAssignmentFolder (struct Assignment *Asg,bool PrintView)
ICanSendFiles) // I can send files to this assignment folder ICanSendFiles) // I can send files to this assignment folder
{ {
/* Form to create a new file or folder */ /* Form to create a new file or folder */
Act_StartForm (ActFrmCreAsgUsr); Frm_StartForm (ActFrmCreAsgUsr);
Brw_PutParamsFileBrowser (ActUnk, Brw_PutParamsFileBrowser (ActUnk,
Brw_INTERNAL_NAME_ROOT_FOLDER_ASSIGNMENTS, Brw_INTERNAL_NAME_ROOT_FOLDER_ASSIGNMENTS,
Asg->Folder, Asg->Folder,
@ -533,7 +534,7 @@ static void Asg_WriteAssignmentFolder (struct Assignment *Asg,bool PrintView)
Gbl.Prefs.IconsURL, Gbl.Prefs.IconsURL,
Gbl.Title, Gbl.Title,
Gbl.Title); Gbl.Title);
Act_EndForm (); Frm_EndForm ();
} }
else // I can't send files to this assignment folder else // I can't send files to this assignment folder
fprintf (Gbl.F.Out,"<img src=\"%s/%s\" alt=\"%s\" title=\"%s\"" fprintf (Gbl.F.Out,"<img src=\"%s/%s\" alt=\"%s\" title=\"%s\""
@ -638,7 +639,8 @@ void Asg_GetListAssignments (void)
{ {
case Rol_TCH: case Rol_TCH:
case Rol_SYS_ADM: case Rol_SYS_ADM:
HiddenSubQuery[0] = '\0'; if (asprintf (&HiddenSubQuery,"%s","") < 0)
Lay_NotEnoughMemoryExit ();
break; break;
default: default:
if (asprintf (&HiddenSubQuery," AND Hidden='N'") < 0) if (asprintf (&HiddenSubQuery," AND Hidden='N'") < 0)
@ -1176,12 +1178,12 @@ void Asg_RequestCreatOrEditAsg (void)
/***** Start form *****/ /***** Start form *****/
if (ItsANewAssignment) if (ItsANewAssignment)
{ {
Act_StartForm (ActNewAsg); Frm_StartForm (ActNewAsg);
Gbl.Asgs.AsgCodToEdit = -1L; Gbl.Asgs.AsgCodToEdit = -1L;
} }
else else
{ {
Act_StartForm (ActChgAsg); Frm_StartForm (ActChgAsg);
Gbl.Asgs.AsgCodToEdit = Asg.AsgCod; Gbl.Asgs.AsgCodToEdit = Asg.AsgCod;
} }
Asg_PutParams (); Asg_PutParams ();
@ -1257,7 +1259,7 @@ void Asg_RequestCreatOrEditAsg (void)
Box_EndBoxTableWithButton (Btn_CONFIRM_BUTTON,Txt_Save); Box_EndBoxTableWithButton (Btn_CONFIRM_BUTTON,Txt_Save);
/***** End form *****/ /***** End form *****/
Act_EndForm (); Frm_EndForm ();
/***** Show current assignments, if any *****/ /***** Show current assignments, if any *****/
Asg_ShowAllAssignments (); Asg_ShowAllAssignments ();

View File

@ -36,6 +36,7 @@
#include "swad_attendance.h" #include "swad_attendance.h"
#include "swad_box.h" #include "swad_box.h"
#include "swad_database.h" #include "swad_database.h"
#include "swad_form.h"
#include "swad_global.h" #include "swad_global.h"
#include "swad_group.h" #include "swad_group.h"
#include "swad_ID.h" #include "swad_ID.h"
@ -237,18 +238,18 @@ static void Att_ShowAllAttEvents (void)
Order++) Order++)
{ {
fprintf (Gbl.F.Out,"<th class=\"LEFT_MIDDLE\">"); fprintf (Gbl.F.Out,"<th class=\"LEFT_MIDDLE\">");
Act_StartForm (ActSeeAtt); Frm_StartForm (ActSeeAtt);
Grp_PutParamWhichGrps (); Grp_PutParamWhichGrps ();
Pag_PutHiddenParamPagNum (Pag_ATT_EVENTS,Gbl.AttEvents.CurrentPage); Pag_PutHiddenParamPagNum (Pag_ATT_EVENTS,Gbl.AttEvents.CurrentPage);
Par_PutHiddenParamUnsigned ("Order",(unsigned) Order); Par_PutHiddenParamUnsigned ("Order",(unsigned) Order);
Act_LinkFormSubmit (Txt_START_END_TIME_HELP[Order],"TIT_TBL",NULL); Frm_LinkFormSubmit (Txt_START_END_TIME_HELP[Order],"TIT_TBL",NULL);
if (Order == Gbl.AttEvents.SelectedOrder) if (Order == Gbl.AttEvents.SelectedOrder)
fprintf (Gbl.F.Out,"<u>"); fprintf (Gbl.F.Out,"<u>");
fprintf (Gbl.F.Out,"%s",Txt_START_END_TIME[Order]); fprintf (Gbl.F.Out,"%s",Txt_START_END_TIME[Order]);
if (Order == Gbl.AttEvents.SelectedOrder) if (Order == Gbl.AttEvents.SelectedOrder)
fprintf (Gbl.F.Out,"</u>"); fprintf (Gbl.F.Out,"</u>");
fprintf (Gbl.F.Out,"</a>"); fprintf (Gbl.F.Out,"</a>");
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</th>"); fprintf (Gbl.F.Out,"</th>");
} }
fprintf (Gbl.F.Out,"<th class=\"LEFT_MIDDLE\">" fprintf (Gbl.F.Out,"<th class=\"LEFT_MIDDLE\">"
@ -347,10 +348,10 @@ static void Att_PutButtonToCreateNewAttEvent (void)
{ {
extern const char *Txt_New_event; extern const char *Txt_New_event;
Act_StartForm (ActFrmNewAtt); Frm_StartForm (ActFrmNewAtt);
Att_PutParamsToCreateNewAttEvent (); Att_PutParamsToCreateNewAttEvent ();
Btn_PutConfirmButton (Txt_New_event); Btn_PutConfirmButton (Txt_New_event);
Act_EndForm (); Frm_EndForm ();
} }
/*****************************************************************************/ /*****************************************************************************/
@ -442,13 +443,13 @@ static void Att_ShowOneAttEvent (struct AttendanceEvent *Att,bool ShowOnlyThisAt
fprintf (Gbl.F.Out,"\">"); fprintf (Gbl.F.Out,"\">");
/* Put form to view attendance event */ /* Put form to view attendance event */
Act_StartForm (ActSeeOneAtt); Frm_StartForm (ActSeeOneAtt);
Att_PutParamAttCod (Att->AttCod); Att_PutParamAttCod (Att->AttCod);
Att_PutParamsCodGrps (Att->AttCod); Att_PutParamsCodGrps (Att->AttCod);
Act_LinkFormSubmit (Txt_View_event,Att->Hidden ? "ASG_TITLE_LIGHT" : Frm_LinkFormSubmit (Txt_View_event,Att->Hidden ? "ASG_TITLE_LIGHT" :
"ASG_TITLE",NULL); "ASG_TITLE",NULL);
fprintf (Gbl.F.Out,"%s</a>",Att->Title); fprintf (Gbl.F.Out,"%s</a>",Att->Title);
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</td>"); fprintf (Gbl.F.Out,"</td>");
/* Number of students in this event */ /* Number of students in this event */
@ -898,7 +899,7 @@ void Att_AskRemAttEvent (void)
Att_GetDataOfAttEventByCodAndCheckCrs (&Att); Att_GetDataOfAttEventByCodAndCheckCrs (&Att);
/***** Button of confirmation of removing *****/ /***** Button of confirmation of removing *****/
Act_StartForm (ActRemAtt); Frm_StartForm (ActRemAtt);
Att_PutParamAttCod (Att.AttCod); Att_PutParamAttCod (Att.AttCod);
Att_PutHiddenParamAttOrder (); Att_PutHiddenParamAttOrder ();
Grp_PutParamWhichGrps (); Grp_PutParamWhichGrps ();
@ -910,7 +911,7 @@ void Att_AskRemAttEvent (void)
Att.Title); Att.Title);
Ale_ShowAlert (Ale_WARNING,Gbl.Alert.Txt); Ale_ShowAlert (Ale_WARNING,Gbl.Alert.Txt);
Btn_PutRemoveButton (Txt_Remove_event); Btn_PutRemoveButton (Txt_Remove_event);
Act_EndForm (); Frm_EndForm ();
/***** Show attendance events again *****/ /***** Show attendance events again *****/
Att_SeeAttEvents (); Att_SeeAttEvents ();
@ -1098,10 +1099,10 @@ void Att_RequestCreatOrEditAttEvent (void)
/***** Start form *****/ /***** Start form *****/
if (ItsANewAttEvent) if (ItsANewAttEvent)
Act_StartForm (ActNewAtt); Frm_StartForm (ActNewAtt);
else else
{ {
Act_StartForm (ActChgAtt); Frm_StartForm (ActChgAtt);
Att_PutParamAttCod (Att.AttCod); Att_PutParamAttCod (Att.AttCod);
} }
Att_PutHiddenParamAttOrder (); Att_PutHiddenParamAttOrder ();
@ -1186,7 +1187,7 @@ void Att_RequestCreatOrEditAttEvent (void)
Box_EndBoxTableWithButton (Btn_CONFIRM_BUTTON,Txt_Save); Box_EndBoxTableWithButton (Btn_CONFIRM_BUTTON,Txt_Save);
/***** End form *****/ /***** End form *****/
Act_EndForm (); Frm_EndForm ();
/***** Show current attendance events *****/ /***** Show current attendance events *****/
Att_GetListAttEvents (Att_NEWEST_FIRST); Att_GetListAttEvents (Att_NEWEST_FIRST);
@ -1883,7 +1884,7 @@ static void Att_ListAttOnlyMeAsStudent (struct AttendanceEvent *Att)
/***** Start form *****/ /***** Start form *****/
if (Att->Open) if (Att->Open)
{ {
Act_StartForm (ActRecAttMe); Frm_StartForm (ActRecAttMe);
Att_PutParamAttCod (Att->AttCod); Att_PutParamAttCod (Att->AttCod);
} }
@ -1921,7 +1922,7 @@ static void Att_ListAttOnlyMeAsStudent (struct AttendanceEvent *Att)
{ {
/***** Send button *****/ /***** Send button *****/
Btn_PutConfirmButton (Txt_Save); Btn_PutConfirmButton (Txt_Save);
Act_EndForm (); Frm_EndForm ();
} }
} }
@ -1966,7 +1967,7 @@ static void Att_ListAttStudents (struct AttendanceEvent *Att)
Usr_UsrDataConstructor (&UsrDat); Usr_UsrDataConstructor (&UsrDat);
/***** Start form *****/ /***** Start form *****/
Act_StartForm (ActRecAttStd); Frm_StartForm (ActRecAttStd);
Att_PutParamAttCod (Att->AttCod); Att_PutParamAttCod (Att->AttCod);
Grp_PutParamsCodGrps (); Grp_PutParamsCodGrps ();
@ -2013,7 +2014,7 @@ static void Att_ListAttStudents (struct AttendanceEvent *Att)
Btn_PutConfirmButton (Txt_Save); Btn_PutConfirmButton (Txt_Save);
/***** End form *****/ /***** End form *****/
Act_EndForm (); Frm_EndForm ();
/***** Free memory used for user's data *****/ /***** Free memory used for user's data *****/
Usr_UsrDataDestructor (&UsrDat); Usr_UsrDataDestructor (&UsrDat);
@ -2718,7 +2719,7 @@ void Usr_ReqListStdsAttendanceCrs (void)
Usr_ShowFormsToSelectUsrListType (ActReqLstStdAtt); Usr_ShowFormsToSelectUsrListType (ActReqLstStdAtt);
/* Start form */ /* Start form */
Act_StartForm (ActSeeLstStdAtt); Frm_StartForm (ActSeeLstStdAtt);
Grp_PutParamsCodGrps (); Grp_PutParamsCodGrps ();
/* Write list of students to select some of them */ /* Write list of students to select some of them */
@ -2730,7 +2731,7 @@ void Usr_ReqListStdsAttendanceCrs (void)
Btn_PutConfirmButton (Txt_Show_list); Btn_PutConfirmButton (Txt_Show_list);
/* End form */ /* End form */
Act_EndForm (); Frm_EndForm ();
/***** Free memory used by list of selected users' codes *****/ /***** Free memory used by list of selected users' codes *****/
Usr_FreeListsSelectedUsrsCods (); Usr_FreeListsSelectedUsrsCods ();
@ -3127,7 +3128,7 @@ static void Att_PutButtonToShowDetails (void)
extern const char *Txt_Show_more_details; extern const char *Txt_Show_more_details;
/***** Button to show more details *****/ /***** Button to show more details *****/
Act_StartFormAnchor (Gbl.Action.Act,Att_ATTENDANCE_DETAILS_ID); Frm_StartFormAnchor (Gbl.Action.Act,Att_ATTENDANCE_DETAILS_ID);
Par_PutHiddenParamChar ("ShowDetails",'Y'); Par_PutHiddenParamChar ("ShowDetails",'Y');
Grp_PutParamsCodGrps (); Grp_PutParamsCodGrps ();
Usr_PutHiddenParUsrCodAll (Gbl.Action.Act,Gbl.Usrs.Select[Rol_UNK]); Usr_PutHiddenParUsrCodAll (Gbl.Action.Act,Gbl.Usrs.Select[Rol_UNK]);
@ -3135,7 +3136,7 @@ static void Att_PutButtonToShowDetails (void)
if (Gbl.AttEvents.StrAttCodsSelected[0]) if (Gbl.AttEvents.StrAttCodsSelected[0])
Par_PutHiddenParamString ("AttCods",Gbl.AttEvents.StrAttCodsSelected); Par_PutHiddenParamString ("AttCods",Gbl.AttEvents.StrAttCodsSelected);
Btn_PutConfirmButton (Txt_Show_more_details); Btn_PutConfirmButton (Txt_Show_more_details);
Act_EndForm (); Frm_EndForm ();
} }
/*****************************************************************************/ /*****************************************************************************/
@ -3168,7 +3169,7 @@ static void Att_ListEventsToSelect (Att_TypeOfView_t TypeOfView)
depending on the events selected *****/ depending on the events selected *****/
if (NormalView) if (NormalView)
{ {
Act_StartFormAnchor (Gbl.Action.Act,Att_ATTENDANCE_TABLE_ID); Frm_StartFormAnchor (Gbl.Action.Act,Att_ATTENDANCE_TABLE_ID);
Grp_PutParamsCodGrps (); Grp_PutParamsCodGrps ();
Usr_PutHiddenParUsrCodAll (Gbl.Action.Act,Gbl.Usrs.Select[Rol_UNK]); Usr_PutHiddenParUsrCodAll (Gbl.Action.Act,Gbl.Usrs.Select[Rol_UNK]);
} }
@ -3240,7 +3241,7 @@ static void Att_ListEventsToSelect (Att_TypeOfView_t TypeOfView)
{ {
fprintf (Gbl.F.Out,"<tr>" fprintf (Gbl.F.Out,"<tr>"
"<td colspan=\"4\" class=\"CENTER_MIDDLE\">"); "<td colspan=\"4\" class=\"CENTER_MIDDLE\">");
Act_LinkFormSubmitAnimated (Txt_Update_attendance_according_to_selected_events, Frm_LinkFormSubmitAnimated (Txt_Update_attendance_according_to_selected_events,
The_ClassFormBold[Gbl.Prefs.Theme], The_ClassFormBold[Gbl.Prefs.Theme],
NULL); NULL);
Ico_PutCalculateIconWithText (Txt_Update_attendance_according_to_selected_events, Ico_PutCalculateIconWithText (Txt_Update_attendance_according_to_selected_events,
@ -3254,7 +3255,7 @@ static void Att_ListEventsToSelect (Att_TypeOfView_t TypeOfView)
/***** End form *****/ /***** End form *****/
if (NormalView) if (NormalView)
Act_EndForm (); Frm_EndForm ();
/***** End box *****/ /***** End box *****/
Box_EndBox (); Box_EndBox ();

View File

@ -35,6 +35,7 @@
#include "swad_box.h" #include "swad_box.h"
#include "swad_constant.h" #include "swad_constant.h"
#include "swad_database.h" #include "swad_database.h"
#include "swad_form.h"
#include "swad_global.h" #include "swad_global.h"
#include "swad_parameter.h" #include "swad_parameter.h"
#include "swad_photo.h" #include "swad_photo.h"
@ -136,9 +137,9 @@ void Ban_SeeBanners (void)
/***** Button to create banner *****/ /***** Button to create banner *****/
if (Gbl.Usrs.Me.Role.Logged == Rol_SYS_ADM) if (Gbl.Usrs.Me.Role.Logged == Rol_SYS_ADM)
{ {
Act_StartForm (ActEdiBan); Frm_StartForm (ActEdiBan);
Btn_PutConfirmButton (Txt_New_banner); Btn_PutConfirmButton (Txt_New_banner);
Act_EndForm (); Frm_EndForm ();
} }
/***** End box *****/ /***** End box *****/
@ -399,15 +400,15 @@ static void Ban_ListBannersForEdition (void)
/* Put icon to remove banner */ /* Put icon to remove banner */
fprintf (Gbl.F.Out,"<tr>" fprintf (Gbl.F.Out,"<tr>"
"<td class=\"BM\">"); "<td class=\"BM\">");
Act_StartForm (ActRemBan); Frm_StartForm (ActRemBan);
Ban_PutParamBanCod (Ban->BanCod); Ban_PutParamBanCod (Ban->BanCod);
Ico_PutIconRemove (); Ico_PutIconRemove ();
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</td>"); fprintf (Gbl.F.Out,"</td>");
/* Put icon to hide/show banner */ /* Put icon to hide/show banner */
fprintf (Gbl.F.Out,"<td class=\"BM\">"); fprintf (Gbl.F.Out,"<td class=\"BM\">");
Act_StartForm (Ban->Hidden ? ActShoBan : Frm_StartForm (Ban->Hidden ? ActShoBan :
ActHidBan); ActHidBan);
Ban_PutParamBanCod (Ban->BanCod); Ban_PutParamBanCod (Ban->BanCod);
fprintf (Gbl.F.Out,"<input type=\"image\" src=\"%s/%s\"" fprintf (Gbl.F.Out,"<input type=\"image\" src=\"%s/%s\""
@ -419,7 +420,7 @@ static void Ban_ListBannersForEdition (void)
Txt_Hide, Txt_Hide,
Ban->Hidden ? Txt_Show : Ban->Hidden ? Txt_Show :
Txt_Hide); Txt_Hide);
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</td>"); fprintf (Gbl.F.Out,"</td>");
/* Banner code */ /* Banner code */
@ -432,49 +433,49 @@ static void Ban_ListBannersForEdition (void)
/* Banner short name */ /* Banner short name */
fprintf (Gbl.F.Out,"<td class=\"CENTER_MIDDLE\">"); fprintf (Gbl.F.Out,"<td class=\"CENTER_MIDDLE\">");
Act_StartForm (ActRenBanSho); Frm_StartForm (ActRenBanSho);
Ban_PutParamBanCod (Ban->BanCod); Ban_PutParamBanCod (Ban->BanCod);
fprintf (Gbl.F.Out,"<input type=\"text\" name=\"ShortName\"" fprintf (Gbl.F.Out,"<input type=\"text\" name=\"ShortName\""
" maxlength=\"%u\" value=\"%s\"" " maxlength=\"%u\" value=\"%s\""
" class=\"INPUT_SHORT_NAME\"" " class=\"INPUT_SHORT_NAME\""
" onchange=\"document.getElementById('%s').submit();\" />", " onchange=\"document.getElementById('%s').submit();\" />",
Ban_MAX_CHARS_SHRT_NAME,Ban->ShrtName,Gbl.Form.Id); Ban_MAX_CHARS_SHRT_NAME,Ban->ShrtName,Gbl.Form.Id);
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</td>"); fprintf (Gbl.F.Out,"</td>");
/* Banner full name */ /* Banner full name */
fprintf (Gbl.F.Out,"<td class=\"CENTER_MIDDLE\">"); fprintf (Gbl.F.Out,"<td class=\"CENTER_MIDDLE\">");
Act_StartForm (ActRenBanFul); Frm_StartForm (ActRenBanFul);
Ban_PutParamBanCod (Ban->BanCod); Ban_PutParamBanCod (Ban->BanCod);
fprintf (Gbl.F.Out,"<input type=\"text\" name=\"FullName\"" fprintf (Gbl.F.Out,"<input type=\"text\" name=\"FullName\""
" maxlength=\"%u\" value=\"%s\"" " maxlength=\"%u\" value=\"%s\""
" class=\"INPUT_FULL_NAME\"" " class=\"INPUT_FULL_NAME\""
" onchange=\"document.getElementById('%s').submit();\" />", " onchange=\"document.getElementById('%s').submit();\" />",
Ban_MAX_CHARS_FULL_NAME,Ban->FullName,Gbl.Form.Id); Ban_MAX_CHARS_FULL_NAME,Ban->FullName,Gbl.Form.Id);
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</td>"); fprintf (Gbl.F.Out,"</td>");
/* Banner image */ /* Banner image */
fprintf (Gbl.F.Out,"<td class=\"CENTER_MIDDLE\">"); fprintf (Gbl.F.Out,"<td class=\"CENTER_MIDDLE\">");
Act_StartForm (ActChgBanImg); Frm_StartForm (ActChgBanImg);
Ban_PutParamBanCod (Ban->BanCod); Ban_PutParamBanCod (Ban->BanCod);
fprintf (Gbl.F.Out,"<input type=\"text\" name=\"Img\"" fprintf (Gbl.F.Out,"<input type=\"text\" name=\"Img\""
" size=\"12\" maxlength=\"%u\" value=\"%s\"" " size=\"12\" maxlength=\"%u\" value=\"%s\""
" onchange=\"document.getElementById('%s').submit();\" />", " onchange=\"document.getElementById('%s').submit();\" />",
Ban_MAX_CHARS_IMAGE,Ban->Img,Gbl.Form.Id); Ban_MAX_CHARS_IMAGE,Ban->Img,Gbl.Form.Id);
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</td>"); fprintf (Gbl.F.Out,"</td>");
/* Banner WWW */ /* Banner WWW */
fprintf (Gbl.F.Out,"<td class=\"CENTER_MIDDLE\">"); fprintf (Gbl.F.Out,"<td class=\"CENTER_MIDDLE\">");
Act_StartForm (ActChgBanWWW); Frm_StartForm (ActChgBanWWW);
Ban_PutParamBanCod (Ban->BanCod); Ban_PutParamBanCod (Ban->BanCod);
fprintf (Gbl.F.Out,"<input type=\"url\" name=\"WWW\"" fprintf (Gbl.F.Out,"<input type=\"url\" name=\"WWW\""
" maxlength=\"%u\" value=\"%s\"" " maxlength=\"%u\" value=\"%s\""
" class=\"INPUT_WWW\"" " class=\"INPUT_WWW\""
" onchange=\"document.getElementById('%s').submit();\" />", " onchange=\"document.getElementById('%s').submit();\" />",
Cns_MAX_CHARS_WWW,Ban->WWW,Gbl.Form.Id); Cns_MAX_CHARS_WWW,Ban->WWW,Gbl.Form.Id);
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</td>" fprintf (Gbl.F.Out,"</td>"
"</tr>"); "</tr>");
} }
@ -833,7 +834,7 @@ static void Ban_PutFormToCreateBanner (void)
Ban = &Gbl.Banners.EditingBan; Ban = &Gbl.Banners.EditingBan;
/***** Start form *****/ /***** Start form *****/
Act_StartForm (ActNewBan); Frm_StartForm (ActNewBan);
/***** Start box and table *****/ /***** Start box and table *****/
Box_StartBoxTable (NULL,Txt_New_banner,NULL, Box_StartBoxTable (NULL,Txt_New_banner,NULL,
@ -888,7 +889,7 @@ static void Ban_PutFormToCreateBanner (void)
Box_EndBoxTableWithButton (Btn_CREATE_BUTTON,Txt_Create_banner); Box_EndBoxTableWithButton (Btn_CREATE_BUTTON,Txt_Create_banner);
/***** End form *****/ /***** End form *****/
Act_EndForm (); Frm_EndForm ();
} }
/*****************************************************************************/ /*****************************************************************************/
@ -1028,10 +1029,10 @@ void Ban_WriteMenuWithBanners (void)
{ {
/* Write data of this banner */ /* Write data of this banner */
fprintf (Gbl.F.Out,"<div class=\"CENTER_MIDDLE\">"); fprintf (Gbl.F.Out,"<div class=\"CENTER_MIDDLE\">");
Act_StartForm (ActClkBan); Frm_StartForm (ActClkBan);
Ban_PutParamBanCod (Gbl.Banners.Lst[NumBan].BanCod); Ban_PutParamBanCod (Gbl.Banners.Lst[NumBan].BanCod);
Par_PutHiddenParamString ("URL",Gbl.Banners.Lst[NumBan].WWW); Par_PutHiddenParamString ("URL",Gbl.Banners.Lst[NumBan].WWW);
Act_LinkFormSubmit (Gbl.Banners.Lst[NumBan].FullName,"BANNER",NULL); Frm_LinkFormSubmit (Gbl.Banners.Lst[NumBan].FullName,"BANNER",NULL);
fprintf (Gbl.F.Out,"<img src=\"%s/%s/%s\"" fprintf (Gbl.F.Out,"<img src=\"%s/%s/%s\""
" alt=\"%s\" title=\"%s\"" " alt=\"%s\" title=\"%s\""
" class=\"BANNER\" />" " class=\"BANNER\" />"
@ -1040,7 +1041,7 @@ void Ban_WriteMenuWithBanners (void)
Gbl.Banners.Lst[NumBan].Img, Gbl.Banners.Lst[NumBan].Img,
Gbl.Banners.Lst[NumBan].ShrtName, Gbl.Banners.Lst[NumBan].ShrtName,
Gbl.Banners.Lst[NumBan].FullName); Gbl.Banners.Lst[NumBan].FullName);
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</div>"); fprintf (Gbl.F.Out,"</div>");
} }

View File

@ -30,6 +30,7 @@
#include "swad_action.h" #include "swad_action.h"
#include "swad_box.h" #include "swad_box.h"
#include "swad_form.h"
#include "swad_global.h" #include "swad_global.h"
#include "swad_help.h" #include "swad_help.h"
#include "swad_table.h" #include "swad_table.h"
@ -114,14 +115,14 @@ static void Box_StartBoxInternal (const char *Width,const char *Title,
{ {
extern const char *Txt_Help; extern const char *Txt_Help;
extern const char *Txt_Close; extern const char *Txt_Close;
char IdFrame[Act_MAX_BYTES_ID + 1]; char IdFrame[Frm_MAX_BYTES_ID + 1];
/***** Start box container *****/ /***** Start box container *****/
fprintf (Gbl.F.Out,"<div class=\"FRAME_CONTAINER\""); fprintf (Gbl.F.Out,"<div class=\"FRAME_CONTAINER\"");
if (Closable == Box_CLOSABLE) if (Closable == Box_CLOSABLE)
{ {
/* Create unique id for alert */ /* Create unique id for alert */
Act_SetUniqueId (IdFrame); Frm_SetUniqueId (IdFrame);
fprintf (Gbl.F.Out," id=\"%s\"",IdFrame); fprintf (Gbl.F.Out," id=\"%s\"",IdFrame);
} }
fprintf (Gbl.F.Out,">"); fprintf (Gbl.F.Out,">");

View File

@ -33,6 +33,7 @@
#include "swad_calendar.h" #include "swad_calendar.h"
#include "swad_database.h" #include "swad_database.h"
#include "swad_exam.h" #include "swad_exam.h"
#include "swad_form.h"
#include "swad_global.h" #include "swad_global.h"
#include "swad_parameter.h" #include "swad_parameter.h"
#include "swad_preference.h" #include "swad_preference.h"
@ -123,7 +124,7 @@ void Cal_ShowFormToSelFirstDayOfWeek (Act_Action_t Action,void (*FuncParams) (),
fprintf (Gbl.F.Out,"<div class=\"%s\">", fprintf (Gbl.F.Out,"<div class=\"%s\">",
FirstDayOfWeek == Gbl.Prefs.FirstDayOfWeek ? "PREF_ON" : FirstDayOfWeek == Gbl.Prefs.FirstDayOfWeek ? "PREF_ON" :
"PREF_OFF"); "PREF_OFF");
Act_StartForm (Action); Frm_StartForm (Action);
Par_PutHiddenParamUnsigned ("FirstDayOfWeek",FirstDayOfWeek); Par_PutHiddenParamUnsigned ("FirstDayOfWeek",FirstDayOfWeek);
if (FuncParams) // Extra parameters depending on the action if (FuncParams) // Extra parameters depending on the action
FuncParams (); FuncParams ();
@ -134,7 +135,7 @@ void Cal_ShowFormToSelFirstDayOfWeek (Act_Action_t Action,void (*FuncParams) (),
Txt_DAYS_SMALL[FirstDayOfWeek], Txt_DAYS_SMALL[FirstDayOfWeek],
Txt_First_day_of_the_week,Txt_DAYS_SMALL[FirstDayOfWeek], Txt_First_day_of_the_week,Txt_DAYS_SMALL[FirstDayOfWeek],
ClassIcon); ClassIcon);
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</div>"); fprintf (Gbl.F.Out,"</div>");
} }
fprintf (Gbl.F.Out,"</div>"); fprintf (Gbl.F.Out,"</div>");
@ -202,7 +203,7 @@ unsigned Cal_GetFirstDayOfWeekFromStr (const char *Str)
void Cal_DrawCurrentMonth (void) void Cal_DrawCurrentMonth (void)
{ {
extern const char *Txt_STR_LANG_ID[1 + Txt_NUM_LANGUAGES]; extern const char *Txt_STR_LANG_ID[1 + Txt_NUM_LANGUAGES];
char ParamsStr[Act_MAX_BYTES_PARAMS_STR]; char ParamsStr[Frm_MAX_BYTES_PARAMS_STR];
/***** Get list of holidays *****/ /***** Get list of holidays *****/
if (!Gbl.Hlds.LstIsRead) if (!Gbl.Hlds.LstIsRead)
@ -225,9 +226,9 @@ void Cal_DrawCurrentMonth (void)
Gbl.CurrentCtr.Ctr.PlcCod, Gbl.CurrentCtr.Ctr.PlcCod,
Cfg_URL_SWAD_CGI, Cfg_URL_SWAD_CGI,
Txt_STR_LANG_ID[Gbl.Prefs.Language]); Txt_STR_LANG_ID[Gbl.Prefs.Language]);
Act_SetParamsForm (ParamsStr,Cal_GetActionToSeeCalendar (),true); Frm_SetParamsForm (ParamsStr,Cal_GetActionToSeeCalendar (),true);
fprintf (Gbl.F.Out,"'%s',",ParamsStr); fprintf (Gbl.F.Out,"'%s',",ParamsStr);
Act_SetParamsForm (ParamsStr,ActSeeDatExaAnn,true); Frm_SetParamsForm (ParamsStr,ActSeeDatExaAnn,true);
fprintf (Gbl.F.Out,"'%s');" fprintf (Gbl.F.Out,"'%s');"
"</script>",ParamsStr); "</script>",ParamsStr);
} }
@ -302,7 +303,7 @@ static void Cal_DrawCalendar (Act_Action_t ActionSeeCalendar,
{ {
extern const char *Hlp_Calendar; extern const char *Hlp_Calendar;
extern const char *Txt_STR_LANG_ID[1 + Txt_NUM_LANGUAGES]; extern const char *Txt_STR_LANG_ID[1 + Txt_NUM_LANGUAGES];
char ParamsStr[Act_MAX_BYTES_PARAMS_STR]; char ParamsStr[Frm_MAX_BYTES_PARAMS_STR];
/***** Get list of holidays *****/ /***** Get list of holidays *****/
if (!Gbl.Hlds.LstIsRead) if (!Gbl.Hlds.LstIsRead)
@ -340,10 +341,10 @@ static void Cal_DrawCalendar (Act_Action_t ActionSeeCalendar,
"false", "false",
Cfg_URL_SWAD_CGI, Cfg_URL_SWAD_CGI,
Txt_STR_LANG_ID[Gbl.Prefs.Language]); Txt_STR_LANG_ID[Gbl.Prefs.Language]);
Act_SetParamsForm (ParamsStr,ActionSeeCalendar,true); Frm_SetParamsForm (ParamsStr,ActionSeeCalendar,true);
fprintf (Gbl.F.Out,"'%s',", fprintf (Gbl.F.Out,"'%s',",
ParamsStr); ParamsStr);
Act_SetParamsForm (ParamsStr,ActSeeDatExaAnn,true); Frm_SetParamsForm (ParamsStr,ActSeeDatExaAnn,true);
fprintf (Gbl.F.Out,"'%s');" fprintf (Gbl.F.Out,"'%s');"
"</script>", "</script>",
ParamsStr); ParamsStr);

View File

@ -38,6 +38,7 @@
#include "swad_centre.h" #include "swad_centre.h"
#include "swad_constant.h" #include "swad_constant.h"
#include "swad_database.h" #include "swad_database.h"
#include "swad_form.h"
#include "swad_global.h" #include "swad_global.h"
#include "swad_help.h" #include "swad_help.h"
#include "swad_hierarchy.h" #include "swad_hierarchy.h"
@ -241,14 +242,14 @@ void Ctr_DrawCentreLogoAndNameWithLink (struct Centre *Ctr,Act_Action_t Action,
extern const char *Txt_Go_to_X; extern const char *Txt_Go_to_X;
/***** Start form *****/ /***** Start form *****/
Act_StartFormGoTo (Action); Frm_StartFormGoTo (Action);
Ctr_PutParamCtrCod (Ctr->CtrCod); Ctr_PutParamCtrCod (Ctr->CtrCod);
/***** Link to action *****/ /***** Link to action *****/
snprintf (Gbl.Title,sizeof (Gbl.Title), snprintf (Gbl.Title,sizeof (Gbl.Title),
Txt_Go_to_X, Txt_Go_to_X,
Ctr->FullName); Ctr->FullName);
Act_LinkFormSubmit (Gbl.Title,ClassLink,NULL); Frm_LinkFormSubmit (Gbl.Title,ClassLink,NULL);
/***** Draw centre logo *****/ /***** Draw centre logo *****/
Log_DrawLogo (Sco_SCOPE_CTR,Ctr->CtrCod,Ctr->ShrtName,20,ClassLogo,true); Log_DrawLogo (Sco_SCOPE_CTR,Ctr->CtrCod,Ctr->ShrtName,20,ClassLogo,true);
@ -257,7 +258,7 @@ void Ctr_DrawCentreLogoAndNameWithLink (struct Centre *Ctr,Act_Action_t Action,
fprintf (Gbl.F.Out,"&nbsp;%s</a>",Ctr->FullName); fprintf (Gbl.F.Out,"&nbsp;%s</a>",Ctr->FullName);
/***** End form *****/ /***** End form *****/
Act_EndForm (); Frm_EndForm ();
} }
/*****************************************************************************/ /*****************************************************************************/
@ -376,7 +377,7 @@ static void Ctr_Configuration (bool PrintView)
// have permission to edit photo attribution // have permission to edit photo attribution
{ {
fprintf (Gbl.F.Out,"<div class=\"CENTER_MIDDLE\">"); fprintf (Gbl.F.Out,"<div class=\"CENTER_MIDDLE\">");
Act_StartForm (ActChgCtrPhoAtt); Frm_StartForm (ActChgCtrPhoAtt);
fprintf (Gbl.F.Out,"<textarea id=\"AttributionArea\"" fprintf (Gbl.F.Out,"<textarea id=\"AttributionArea\""
" name=\"Attribution\" rows=\"2\"" " name=\"Attribution\" rows=\"2\""
" onchange=\"document.getElementById('%s').submit();\">", " onchange=\"document.getElementById('%s').submit();\">",
@ -384,7 +385,7 @@ static void Ctr_Configuration (bool PrintView)
if (PhotoAttribution) if (PhotoAttribution)
fprintf (Gbl.F.Out,"%s",PhotoAttribution); fprintf (Gbl.F.Out,"%s",PhotoAttribution);
fprintf (Gbl.F.Out,"</textarea>"); fprintf (Gbl.F.Out,"</textarea>");
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</div>"); fprintf (Gbl.F.Out,"</div>");
} }
else if (PhotoAttribution) else if (PhotoAttribution)
@ -417,7 +418,7 @@ static void Ctr_Configuration (bool PrintView)
Ins_GetListInstitutions (Gbl.CurrentCty.Cty.CtyCod,Ins_GET_BASIC_DATA); Ins_GetListInstitutions (Gbl.CurrentCty.Cty.CtyCod,Ins_GET_BASIC_DATA);
/* Put form to select institution */ /* Put form to select institution */
Act_StartForm (ActChgCtrInsCfg); Frm_StartForm (ActChgCtrInsCfg);
fprintf (Gbl.F.Out,"<select id=\"OthInsCod\" name=\"OthInsCod\"" fprintf (Gbl.F.Out,"<select id=\"OthInsCod\" name=\"OthInsCod\""
" class=\"INPUT_SHORT_NAME\"" " class=\"INPUT_SHORT_NAME\""
" onchange=\"document.getElementById('%s').submit();\">", " onchange=\"document.getElementById('%s').submit();\">",
@ -431,7 +432,7 @@ static void Ctr_Configuration (bool PrintView)
"", "",
Gbl.Inss.Lst[NumIns].ShrtName); Gbl.Inss.Lst[NumIns].ShrtName);
fprintf (Gbl.F.Out,"</select>"); fprintf (Gbl.F.Out,"</select>");
Act_EndForm (); Frm_EndForm ();
/* Free list of institutions */ /* Free list of institutions */
Ins_FreeListInstitutions (); Ins_FreeListInstitutions ();
@ -455,7 +456,7 @@ static void Ctr_Configuration (bool PrintView)
// Only institution admins and system admins can edit centre full name // Only institution admins and system admins can edit centre full name
{ {
/* Form to change centre full name */ /* Form to change centre full name */
Act_StartForm (ActRenCtrFulCfg); Frm_StartForm (ActRenCtrFulCfg);
fprintf (Gbl.F.Out,"<input type=\"text\"" fprintf (Gbl.F.Out,"<input type=\"text\""
" id=\"FullName\" name=\"FullName\"" " id=\"FullName\" name=\"FullName\""
" maxlength=\"%u\" value=\"%s\"" " maxlength=\"%u\" value=\"%s\""
@ -464,7 +465,7 @@ static void Ctr_Configuration (bool PrintView)
Hie_MAX_CHARS_FULL_NAME, Hie_MAX_CHARS_FULL_NAME,
Gbl.CurrentCtr.Ctr.FullName, Gbl.CurrentCtr.Ctr.FullName,
Gbl.Form.Id); Gbl.Form.Id);
Act_EndForm (); Frm_EndForm ();
} }
else // I can not edit centre full name else // I can not edit centre full name
fprintf (Gbl.F.Out,"%s",Gbl.CurrentCtr.Ctr.FullName); fprintf (Gbl.F.Out,"%s",Gbl.CurrentCtr.Ctr.FullName);
@ -484,7 +485,7 @@ static void Ctr_Configuration (bool PrintView)
// Only institution admins and system admins can edit centre short name // Only institution admins and system admins can edit centre short name
{ {
/* Form to change centre short name */ /* Form to change centre short name */
Act_StartForm (ActRenCtrShoCfg); Frm_StartForm (ActRenCtrShoCfg);
fprintf (Gbl.F.Out,"<input type=\"text\"" fprintf (Gbl.F.Out,"<input type=\"text\""
" id=\"ShortName\" name=\"ShortName\"" " id=\"ShortName\" name=\"ShortName\""
" maxlength=\"%u\" value=\"%s\"" " maxlength=\"%u\" value=\"%s\""
@ -493,7 +494,7 @@ static void Ctr_Configuration (bool PrintView)
Hie_MAX_CHARS_SHRT_NAME, Hie_MAX_CHARS_SHRT_NAME,
Gbl.CurrentCtr.Ctr.ShrtName, Gbl.CurrentCtr.Ctr.ShrtName,
Gbl.Form.Id); Gbl.Form.Id);
Act_EndForm (); Frm_EndForm ();
} }
else // I can not edit centre short name else // I can not edit centre short name
fprintf (Gbl.F.Out,"%s",Gbl.CurrentCtr.Ctr.ShrtName); fprintf (Gbl.F.Out,"%s",Gbl.CurrentCtr.Ctr.ShrtName);
@ -520,7 +521,7 @@ static void Ctr_Configuration (bool PrintView)
Plc_GetListPlaces (); Plc_GetListPlaces ();
/* Put form to select place */ /* Put form to select place */
Act_StartForm (ActChgCtrPlcCfg); Frm_StartForm (ActChgCtrPlcCfg);
fprintf (Gbl.F.Out,"<select name=\"PlcCod\" class=\"INPUT_SHORT_NAME\"" fprintf (Gbl.F.Out,"<select name=\"PlcCod\" class=\"INPUT_SHORT_NAME\""
" onchange=\"document.getElementById('%s').submit();\">", " onchange=\"document.getElementById('%s').submit();\">",
Gbl.Form.Id); Gbl.Form.Id);
@ -537,7 +538,7 @@ static void Ctr_Configuration (bool PrintView)
"", "",
Gbl.Plcs.Lst[NumPlc].ShrtName); Gbl.Plcs.Lst[NumPlc].ShrtName);
fprintf (Gbl.F.Out,"</select>"); fprintf (Gbl.F.Out,"</select>");
Act_EndForm (); Frm_EndForm ();
/* Free list of places */ /* Free list of places */
Plc_FreeListPlaces (); Plc_FreeListPlaces ();
@ -561,7 +562,7 @@ static void Ctr_Configuration (bool PrintView)
// can change centre WWW // can change centre WWW
{ {
/* Form to change centre WWW */ /* Form to change centre WWW */
Act_StartForm (ActChgCtrWWWCfg); Frm_StartForm (ActChgCtrWWWCfg);
fprintf (Gbl.F.Out,"<input type=\"url\" id=\"WWW\" name=\"WWW\"" fprintf (Gbl.F.Out,"<input type=\"url\" id=\"WWW\" name=\"WWW\""
" maxlength=\"%u\" value=\"%s\"" " maxlength=\"%u\" value=\"%s\""
" class=\"INPUT_WWW\"" " class=\"INPUT_WWW\""
@ -569,7 +570,7 @@ static void Ctr_Configuration (bool PrintView)
Cns_MAX_CHARS_WWW, Cns_MAX_CHARS_WWW,
Gbl.CurrentCtr.Ctr.WWW, Gbl.CurrentCtr.Ctr.WWW,
Gbl.Form.Id); Gbl.Form.Id);
Act_EndForm (); Frm_EndForm ();
} }
else // I can not change centre WWW else // I can not change centre WWW
fprintf (Gbl.F.Out,"<div class=\"EXTERNAL_WWW_LONG\">" fprintf (Gbl.F.Out,"<div class=\"EXTERNAL_WWW_LONG\">"
@ -641,15 +642,15 @@ static void Ctr_Configuration (bool PrintView)
Txt_Degrees); Txt_Degrees);
/* Form to go to see degrees of this centre */ /* Form to go to see degrees of this centre */
Act_StartFormGoTo (ActSeeDeg); Frm_StartFormGoTo (ActSeeDeg);
Ctr_PutParamCtrCod (Gbl.CurrentCtr.Ctr.CtrCod); Ctr_PutParamCtrCod (Gbl.CurrentCtr.Ctr.CtrCod);
snprintf (Gbl.Title,sizeof (Gbl.Title), snprintf (Gbl.Title,sizeof (Gbl.Title),
Txt_Degrees_of_CENTRE_X, Txt_Degrees_of_CENTRE_X,
Gbl.CurrentCtr.Ctr.ShrtName); Gbl.CurrentCtr.Ctr.ShrtName);
Act_LinkFormSubmit (Gbl.Title,"DAT",NULL); Frm_LinkFormSubmit (Gbl.Title,"DAT",NULL);
fprintf (Gbl.F.Out,"%u</a>", fprintf (Gbl.F.Out,"%u</a>",
Deg_GetNumDegsInCtr (Gbl.CurrentCtr.Ctr.CtrCod)); Deg_GetNumDegsInCtr (Gbl.CurrentCtr.Ctr.CtrCod));
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</td>" fprintf (Gbl.F.Out,"</td>"
"</tr>"); "</tr>");
@ -819,10 +820,10 @@ static void Ctr_ListCentres (void)
/***** Button to create centre *****/ /***** Button to create centre *****/
if (Ctr_CheckIfICanCreateCentres ()) if (Ctr_CheckIfICanCreateCentres ())
{ {
Act_StartForm (ActEdiCtr); Frm_StartForm (ActEdiCtr);
Btn_PutConfirmButton (Gbl.Ctrs.Num ? Txt_Create_another_centre : Btn_PutConfirmButton (Gbl.Ctrs.Num ? Txt_Create_another_centre :
Txt_Create_centre); Txt_Create_centre);
Act_EndForm (); Frm_EndForm ();
} }
/***** End box *****/ /***** End box *****/
@ -1387,7 +1388,7 @@ void Ctr_WriteSelectorOfCentre (void)
long CtrCod; long CtrCod;
/***** Start form *****/ /***** Start form *****/
Act_StartFormGoTo (ActSeeDeg); Frm_StartFormGoTo (ActSeeDeg);
fprintf (Gbl.F.Out,"<select id=\"ctr\" name=\"ctr\" style=\"width:175px;\""); fprintf (Gbl.F.Out,"<select id=\"ctr\" name=\"ctr\" style=\"width:175px;\"");
if (Gbl.CurrentIns.Ins.InsCod > 0) if (Gbl.CurrentIns.Ins.InsCod > 0)
fprintf (Gbl.F.Out," onchange=\"document.getElementById('%s').submit();\"", fprintf (Gbl.F.Out," onchange=\"document.getElementById('%s').submit();\"",
@ -1436,7 +1437,7 @@ void Ctr_WriteSelectorOfCentre (void)
/***** End form *****/ /***** End form *****/
fprintf (Gbl.F.Out,"</select>"); fprintf (Gbl.F.Out,"</select>");
Act_EndForm (); Frm_EndForm ();
} }
/*****************************************************************************/ /*****************************************************************************/
@ -1481,10 +1482,10 @@ static void Ctr_ListCentresForEdition (void)
Ico_PutIconRemovalNotAllowed (); Ico_PutIconRemovalNotAllowed ();
else else
{ {
Act_StartForm (ActRemCtr); Frm_StartForm (ActRemCtr);
Ctr_PutParamOtherCtrCod (Ctr->CtrCod); Ctr_PutParamOtherCtrCod (Ctr->CtrCod);
Ico_PutIconRemove (); Ico_PutIconRemove ();
Act_EndForm (); Frm_EndForm ();
} }
fprintf (Gbl.F.Out,"</td>"); fprintf (Gbl.F.Out,"</td>");
@ -1505,7 +1506,7 @@ static void Ctr_ListCentresForEdition (void)
fprintf (Gbl.F.Out,"<td class=\"DAT LEFT_MIDDLE\">"); fprintf (Gbl.F.Out,"<td class=\"DAT LEFT_MIDDLE\">");
if (ICanEdit) if (ICanEdit)
{ {
Act_StartForm (ActChgCtrPlc); Frm_StartForm (ActChgCtrPlc);
Ctr_PutParamOtherCtrCod (Ctr->CtrCod); Ctr_PutParamOtherCtrCod (Ctr->CtrCod);
fprintf (Gbl.F.Out,"<select name=\"PlcCod\" style=\"width:62px;\"" fprintf (Gbl.F.Out,"<select name=\"PlcCod\" style=\"width:62px;\""
" onchange=\"document.getElementById('%s').submit();\">", " onchange=\"document.getElementById('%s').submit();\">",
@ -1523,7 +1524,7 @@ static void Ctr_ListCentresForEdition (void)
"", "",
Gbl.Plcs.Lst[NumPlc].ShrtName); Gbl.Plcs.Lst[NumPlc].ShrtName);
fprintf (Gbl.F.Out,"</select>"); fprintf (Gbl.F.Out,"</select>");
Act_EndForm (); Frm_EndForm ();
} }
else else
for (NumPlc = 0; for (NumPlc = 0;
@ -1537,14 +1538,14 @@ static void Ctr_ListCentresForEdition (void)
fprintf (Gbl.F.Out,"<td class=\"DAT LEFT_MIDDLE\">"); fprintf (Gbl.F.Out,"<td class=\"DAT LEFT_MIDDLE\">");
if (ICanEdit) if (ICanEdit)
{ {
Act_StartForm (ActRenCtrSho); Frm_StartForm (ActRenCtrSho);
Ctr_PutParamOtherCtrCod (Ctr->CtrCod); Ctr_PutParamOtherCtrCod (Ctr->CtrCod);
fprintf (Gbl.F.Out,"<input type=\"text\" name=\"ShortName\"" fprintf (Gbl.F.Out,"<input type=\"text\" name=\"ShortName\""
" maxlength=\"%u\" value=\"%s\"" " maxlength=\"%u\" value=\"%s\""
" class=\"INPUT_SHORT_NAME\"" " class=\"INPUT_SHORT_NAME\""
" onchange=\"document.getElementById('%s').submit();\" />", " onchange=\"document.getElementById('%s').submit();\" />",
Hie_MAX_CHARS_SHRT_NAME,Ctr->ShrtName,Gbl.Form.Id); Hie_MAX_CHARS_SHRT_NAME,Ctr->ShrtName,Gbl.Form.Id);
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</td>"); fprintf (Gbl.F.Out,"</td>");
} }
else else
@ -1555,14 +1556,14 @@ static void Ctr_ListCentresForEdition (void)
fprintf (Gbl.F.Out,"<td class=\"DAT LEFT_MIDDLE\">"); fprintf (Gbl.F.Out,"<td class=\"DAT LEFT_MIDDLE\">");
if (ICanEdit) if (ICanEdit)
{ {
Act_StartForm (ActRenCtrFul); Frm_StartForm (ActRenCtrFul);
Ctr_PutParamOtherCtrCod (Ctr->CtrCod); Ctr_PutParamOtherCtrCod (Ctr->CtrCod);
fprintf (Gbl.F.Out,"<input type=\"text\" name=\"FullName\"" fprintf (Gbl.F.Out,"<input type=\"text\" name=\"FullName\""
" maxlength=\"%u\" value=\"%s\"" " maxlength=\"%u\" value=\"%s\""
" class=\"INPUT_FULL_NAME\"" " class=\"INPUT_FULL_NAME\""
" onchange=\"document.getElementById('%s').submit();\" />", " onchange=\"document.getElementById('%s').submit();\" />",
Hie_MAX_CHARS_FULL_NAME,Ctr->FullName,Gbl.Form.Id); Hie_MAX_CHARS_FULL_NAME,Ctr->FullName,Gbl.Form.Id);
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</td>"); fprintf (Gbl.F.Out,"</td>");
} }
else else
@ -1573,14 +1574,14 @@ static void Ctr_ListCentresForEdition (void)
fprintf (Gbl.F.Out,"<td class=\"DAT LEFT_MIDDLE\">"); fprintf (Gbl.F.Out,"<td class=\"DAT LEFT_MIDDLE\">");
if (ICanEdit) if (ICanEdit)
{ {
Act_StartForm (ActChgCtrWWW); Frm_StartForm (ActChgCtrWWW);
Ctr_PutParamOtherCtrCod (Ctr->CtrCod); Ctr_PutParamOtherCtrCod (Ctr->CtrCod);
fprintf (Gbl.F.Out,"<input type=\"url\" name=\"WWW\"" fprintf (Gbl.F.Out,"<input type=\"url\" name=\"WWW\""
" maxlength=\"%u\" value=\"%s\"" " maxlength=\"%u\" value=\"%s\""
" class=\"INPUT_WWW\"" " class=\"INPUT_WWW\""
" onchange=\"document.getElementById('%s').submit();\" />", " onchange=\"document.getElementById('%s').submit();\" />",
Cns_MAX_CHARS_WWW,Ctr->WWW,Gbl.Form.Id); Cns_MAX_CHARS_WWW,Ctr->WWW,Gbl.Form.Id);
Act_EndForm (); Frm_EndForm ();
} }
else else
{ {
@ -1627,7 +1628,7 @@ static void Ctr_ListCentresForEdition (void)
if (Gbl.Usrs.Me.Role.Logged >= Rol_INS_ADM && if (Gbl.Usrs.Me.Role.Logged >= Rol_INS_ADM &&
StatusTxt == Ctr_STATUS_PENDING) StatusTxt == Ctr_STATUS_PENDING)
{ {
Act_StartForm (ActChgCtrSta); Frm_StartForm (ActChgCtrSta);
Ctr_PutParamOtherCtrCod (Ctr->CtrCod); Ctr_PutParamOtherCtrCod (Ctr->CtrCod);
fprintf (Gbl.F.Out,"<select name=\"Status\" class=\"INPUT_STATUS\"" fprintf (Gbl.F.Out,"<select name=\"Status\" class=\"INPUT_STATUS\""
" onchange=\"document.getElementById('%s').submit();\">" " onchange=\"document.getElementById('%s').submit();\">"
@ -1639,7 +1640,7 @@ static void Ctr_ListCentresForEdition (void)
Txt_CENTRE_STATUS[Ctr_STATUS_PENDING], Txt_CENTRE_STATUS[Ctr_STATUS_PENDING],
(unsigned) Ctr_GetStatusBitsFromStatusTxt (Ctr_STATUS_ACTIVE), (unsigned) Ctr_GetStatusBitsFromStatusTxt (Ctr_STATUS_ACTIVE),
Txt_CENTRE_STATUS[Ctr_STATUS_ACTIVE]); Txt_CENTRE_STATUS[Ctr_STATUS_ACTIVE]);
Act_EndForm (); Frm_EndForm ();
} }
else if (StatusTxt != Ctr_STATUS_ACTIVE) // If active ==> do not show anything else if (StatusTxt != Ctr_STATUS_ACTIVE) // If active ==> do not show anything
fprintf (Gbl.F.Out,"%s",Txt_CENTRE_STATUS[StatusTxt]); fprintf (Gbl.F.Out,"%s",Txt_CENTRE_STATUS[StatusTxt]);
@ -2303,7 +2304,7 @@ void Ctr_RequestPhoto (void)
extern const char *Txt_File_with_the_photo; extern const char *Txt_File_with_the_photo;
/***** Start form to upload photo *****/ /***** Start form to upload photo *****/
Act_StartForm (ActRecCtrPho); Frm_StartForm (ActRecCtrPho);
/***** Start box *****/ /***** Start box *****/
Box_StartBox (NULL,Txt_Photo,NULL, Box_StartBox (NULL,Txt_Photo,NULL,
@ -2336,7 +2337,7 @@ void Ctr_RequestPhoto (void)
Box_EndBox (); Box_EndBox ();
/***** End form *****/ /***** End form *****/
Act_EndForm (); Frm_EndForm ();
} }
/*****************************************************************************/ /*****************************************************************************/
@ -2504,9 +2505,9 @@ static void Ctr_PutFormToCreateCentre (void)
/***** Start form *****/ /***** Start form *****/
if (Gbl.Usrs.Me.Role.Logged >= Rol_INS_ADM) if (Gbl.Usrs.Me.Role.Logged >= Rol_INS_ADM)
Act_StartForm (ActNewCtr); Frm_StartForm (ActNewCtr);
else if (Gbl.Usrs.Me.Role.Max >= Rol_GST) else if (Gbl.Usrs.Me.Role.Max >= Rol_GST)
Act_StartForm (ActReqCtr); Frm_StartForm (ActReqCtr);
else else
Lay_ShowErrorAndExit ("You can not edit centres."); Lay_ShowErrorAndExit ("You can not edit centres.");
@ -2603,7 +2604,7 @@ static void Ctr_PutFormToCreateCentre (void)
Box_EndBoxTableWithButton (Btn_CREATE_BUTTON,Txt_Create_centre); Box_EndBoxTableWithButton (Btn_CREATE_BUTTON,Txt_Create_centre);
/***** End form *****/ /***** End form *****/
Act_EndForm (); Frm_EndForm ();
} }
/*****************************************************************************/ /*****************************************************************************/
@ -2631,9 +2632,9 @@ static void Ctr_PutHeadCentresForSeeing (bool OrderSelectable)
"RIGHT_MIDDLE"); "RIGHT_MIDDLE");
if (OrderSelectable) if (OrderSelectable)
{ {
Act_StartForm (ActSeeCtr); Frm_StartForm (ActSeeCtr);
Par_PutHiddenParamUnsigned ("Order",(unsigned) Order); Par_PutHiddenParamUnsigned ("Order",(unsigned) Order);
Act_LinkFormSubmit (Txt_CENTRES_HELP_ORDER[Order],"TIT_TBL",NULL); Frm_LinkFormSubmit (Txt_CENTRES_HELP_ORDER[Order],"TIT_TBL",NULL);
if (Order == Gbl.Ctrs.SelectedOrder) if (Order == Gbl.Ctrs.SelectedOrder)
fprintf (Gbl.F.Out,"<u>"); fprintf (Gbl.F.Out,"<u>");
} }
@ -2643,7 +2644,7 @@ static void Ctr_PutHeadCentresForSeeing (bool OrderSelectable)
if (Order == Gbl.Ctrs.SelectedOrder) if (Order == Gbl.Ctrs.SelectedOrder)
fprintf (Gbl.F.Out,"</u>"); fprintf (Gbl.F.Out,"</u>");
fprintf (Gbl.F.Out,"</a>"); fprintf (Gbl.F.Out,"</a>");
Act_EndForm (); Frm_EndForm ();
} }
fprintf (Gbl.F.Out,"</th>"); fprintf (Gbl.F.Out,"</th>");
} }

View File

@ -355,10 +355,12 @@ En OpenSWAD:
ps2pdf source.ps destination.pdf ps2pdf source.ps destination.pdf
*/ */
#define Log_PLATFORM_VERSION "SWAD 18.13.7 (2018-11-09)" #define Log_PLATFORM_VERSION "SWAD 18.14 (2018-11-09)"
#define CSS_FILE "swad18.4.css" #define CSS_FILE "swad18.4.css"
#define JS_FILE "swad17.17.1.js" #define JS_FILE "swad17.17.1.js"
/* /*
Version 18.14: Nov 09, 2018 New module swad_form for forms to go to actions.
Fixed bug in query to get assignments. (236705 lines)
Version 18.13.7: Nov 09, 2018 Fixed bug in file browser links. (236552 lines) Version 18.13.7: Nov 09, 2018 Fixed bug in file browser links. (236552 lines)
Version 18.13.6: Nov 09, 2018 Fixed bug in file browser links, reported by Alberto Prieto Espinosa. (236549 lines) Version 18.13.6: Nov 09, 2018 Fixed bug in file browser links, reported by Alberto Prieto Espinosa. (236549 lines)
Version 18.13.5: Nov 08, 2018 New file extension allowed, requested by Javier Fernández Baldomero: .gdb (GNU Debugger Script). (236540 lines) Version 18.13.5: Nov 08, 2018 New file extension allowed, requested by Javier Fernández Baldomero: .gdb (GNU Debugger Script). (236540 lines)

View File

@ -35,6 +35,7 @@
#include "swad_chat.h" #include "swad_chat.h"
#include "swad_config.h" #include "swad_config.h"
#include "swad_database.h" #include "swad_database.h"
#include "swad_form.h"
#include "swad_global.h" #include "swad_global.h"
#include "swad_logo.h" #include "swad_logo.h"
#include "swad_parameter.h" #include "swad_parameter.h"
@ -333,9 +334,9 @@ static void Cht_WriteLinkToChat1 (const char *RoomCode,const char *RoomShrtName,
fprintf (Gbl.F.Out,"<li style=\"height:25px;\">"); fprintf (Gbl.F.Out,"<li style=\"height:25px;\">");
Lay_IndentDependingOnLevel (Level,IsLastItemInLevel); Lay_IndentDependingOnLevel (Level,IsLastItemInLevel);
Act_StartForm (ActCht); Frm_StartForm (ActCht);
Cht_WriteParamsRoomCodeAndNames (RoomCode,RoomShrtName,RoomFullName); Cht_WriteParamsRoomCodeAndNames (RoomCode,RoomShrtName,RoomFullName);
Act_LinkFormSubmit (RoomFullName,The_ClassForm[Gbl.Prefs.Theme],NULL); Frm_LinkFormSubmit (RoomFullName,The_ClassForm[Gbl.Prefs.Theme],NULL);
} }
static void Cht_WriteLinkToChat2 (const char *RoomCode,const char *RoomFullName) static void Cht_WriteLinkToChat2 (const char *RoomCode,const char *RoomFullName)
@ -356,7 +357,7 @@ static void Cht_WriteLinkToChat2 (const char *RoomCode,const char *RoomFullName)
if (NumUsrsInRoom) if (NumUsrsInRoom)
fprintf (Gbl.F.Out,"</strong>"); fprintf (Gbl.F.Out,"</strong>");
fprintf (Gbl.F.Out,"</a>"); fprintf (Gbl.F.Out,"</a>");
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</li>"); fprintf (Gbl.F.Out,"</li>");
} }

View File

@ -34,6 +34,7 @@
#include "swad_box.h" #include "swad_box.h"
#include "swad_database.h" #include "swad_database.h"
#include "swad_form.h"
#include "swad_global.h" #include "swad_global.h"
#include "swad_hierarchy.h" #include "swad_hierarchy.h"
#include "swad_parameter.h" #include "swad_parameter.h"
@ -132,12 +133,12 @@ static void Con_PutIconToUpdateConnected (void)
extern const char *The_ClassFormBold[The_NUM_THEMES]; extern const char *The_ClassFormBold[The_NUM_THEMES];
extern const char *Txt_Update; extern const char *Txt_Update;
Act_StartForm (ActLstCon); Frm_StartForm (ActLstCon);
Sco_PutParamScope ("ScopeCon",Gbl.Scope.Current); Sco_PutParamScope ("ScopeCon",Gbl.Scope.Current);
Act_LinkFormSubmitAnimated (Txt_Update,The_ClassFormBold[Gbl.Prefs.Theme], Frm_LinkFormSubmitAnimated (Txt_Update,The_ClassFormBold[Gbl.Prefs.Theme],
NULL); NULL);
Ico_PutCalculateIcon (Txt_Update); Ico_PutCalculateIcon (Txt_Update);
Act_EndForm (); Frm_EndForm ();
} }
/*****************************************************************************/ /*****************************************************************************/
@ -376,10 +377,10 @@ void Con_ShowGlobalConnectedUsrs (void)
/***** Number of sessions *****/ /***** Number of sessions *****/
/* Link to view more details about connected users */ /* Link to view more details about connected users */
Act_StartFormUnique (ActLstCon); // Must be unique because Frm_StartFormUnique (ActLstCon); // Must be unique because
// the list of connected users // the list of connected users
// is dynamically updated via AJAX // is dynamically updated via AJAX
Act_LinkFormSubmitUnique (Txt_Connected_users,"CONNECTED_TXT"); Frm_LinkFormSubmitUnique (Txt_Connected_users,"CONNECTED_TXT");
/* Write total number of sessions */ /* Write total number of sessions */
fprintf (Gbl.F.Out,"%u %s", fprintf (Gbl.F.Out,"%u %s",
@ -388,7 +389,7 @@ void Con_ShowGlobalConnectedUsrs (void)
Txt_sessions); Txt_sessions);
/* End link to view more details about connected users */ /* End link to view more details about connected users */
fprintf (Gbl.F.Out,"</a>"); fprintf (Gbl.F.Out,"</a>");
Act_EndForm (); Frm_EndForm ();
if (NumUsrsTotal) if (NumUsrsTotal)
{ {
@ -485,9 +486,9 @@ static void Con_ShowConnectedUsrsBelongingToLocation (void)
Txt_from); Txt_from);
/* Put form to change scope */ /* Put form to change scope */
Act_StartForm (ActLstCon); Frm_StartForm (ActLstCon);
Sco_PutSelectorScope ("ScopeCon",true); Sco_PutSelectorScope ("ScopeCon",true);
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</div>"); fprintf (Gbl.F.Out,"</div>");
@ -526,17 +527,17 @@ void Con_ShowConnectedUsrsBelongingToCurrentCrs (void)
/***** Number of connected users who belong to course *****/ /***** Number of connected users who belong to course *****/
/* Link to view more details about connected users */ /* Link to view more details about connected users */
Act_StartFormUnique (ActLstCon); // Must be unique because Frm_StartFormUnique (ActLstCon); // Must be unique because
// the list of connected users // the list of connected users
// is dynamically updated via AJAX // is dynamically updated via AJAX
Act_LinkFormSubmitUnique (Txt_Connected_users,"CONNECTED_TXT"); Frm_LinkFormSubmitUnique (Txt_Connected_users,"CONNECTED_TXT");
Str_Copy (CourseName,Gbl.CurrentCrs.Crs.ShrtName, Str_Copy (CourseName,Gbl.CurrentCrs.Crs.ShrtName,
Hie_MAX_BYTES_SHRT_NAME); Hie_MAX_BYTES_SHRT_NAME);
Con_GetNumConnectedUsrsWithARoleBelongingCurrentLocation (Rol_UNK,&Usrs); Con_GetNumConnectedUsrsWithARoleBelongingCurrentLocation (Rol_UNK,&Usrs);
fprintf (Gbl.F.Out,"%u %s %s" fprintf (Gbl.F.Out,"%u %s %s"
"</a>", "</a>",
Usrs.NumUsrs,Txt_from,CourseName); Usrs.NumUsrs,Txt_from,CourseName);
Act_EndForm (); Frm_EndForm ();
/***** Number of teachers and students *****/ /***** Number of teachers and students *****/
fprintf (Gbl.F.Out,"<table class=\"CONNECTED_LIST\">"); fprintf (Gbl.F.Out,"<table class=\"CONNECTED_LIST\">");
@ -617,17 +618,17 @@ static void Con_ShowConnectedUsrsWithARoleBelongingToCurrentCrsOnRightColumn (Ro
{ {
fprintf (Gbl.F.Out,"<tr>" fprintf (Gbl.F.Out,"<tr>"
"<td colspan=\"3\" class=\"CENTER_TOP\">"); "<td colspan=\"3\" class=\"CENTER_TOP\">");
Act_StartFormUnique (ActLstCon); // Must be unique because Frm_StartFormUnique (ActLstCon); // Must be unique because
// the list of connected users // the list of connected users
// is dynamically updated via AJAX // is dynamically updated via AJAX
Sco_PutParamScope ("ScopeCon",Sco_SCOPE_CRS); Sco_PutParamScope ("ScopeCon",Sco_SCOPE_CRS);
Act_LinkFormSubmitUnique (Txt_Connected_users,"CONNECTED_TXT"); Frm_LinkFormSubmitUnique (Txt_Connected_users,"CONNECTED_TXT");
fprintf (Gbl.F.Out,"<img src=\"%s/ellipsis32x32.gif\"" fprintf (Gbl.F.Out,"<img src=\"%s/ellipsis32x32.gif\""
" alt=\"%s\" title=\"%s\" class=\"ICO40x40\" />" " alt=\"%s\" title=\"%s\" class=\"ICO40x40\" />"
"</a>", "</a>",
Gbl.Prefs.IconsURL, Gbl.Prefs.IconsURL,
Txt_Connected_users,Txt_Connected_users); Txt_Connected_users,Txt_Connected_users);
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</td>" fprintf (Gbl.F.Out,"</td>"
"</tr>"); "</tr>");
} }
@ -1044,11 +1045,11 @@ static void Con_WriteRowConnectedUsrOnRightColumn (Rol_Role_t Role)
switch (Role) switch (Role)
{ {
case Rol_STD: case Rol_STD:
Act_StartFormUnique (ActSeeRecOneStd); Frm_StartFormUnique (ActSeeRecOneStd);
break; break;
case Rol_NET: case Rol_NET:
case Rol_TCH: case Rol_TCH:
Act_StartFormUnique (ActSeeRecOneTch); Frm_StartFormUnique (ActSeeRecOneTch);
break; break;
default: default:
Lay_ShowErrorAndExit ("Wrong role."); Lay_ShowErrorAndExit ("Wrong role.");
@ -1056,11 +1057,11 @@ static void Con_WriteRowConnectedUsrOnRightColumn (Rol_Role_t Role)
} }
Usr_PutParamUsrCodEncrypted (UsrDat->EncryptedUsrCod); Usr_PutParamUsrCodEncrypted (UsrDat->EncryptedUsrCod);
fprintf (Gbl.F.Out,"<div class=\"CON_NAME_NARROW\">"); // Limited width fprintf (Gbl.F.Out,"<div class=\"CON_NAME_NARROW\">"); // Limited width
Act_LinkFormSubmitUnique (Txt_View_record_for_this_course,Font); Frm_LinkFormSubmitUnique (Txt_View_record_for_this_course,Font);
Usr_WriteFirstNameBRSurnames (UsrDat); Usr_WriteFirstNameBRSurnames (UsrDat);
fprintf (Gbl.F.Out,"</a>" fprintf (Gbl.F.Out,"</a>"
"</div>"); "</div>");
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</td>"); fprintf (Gbl.F.Out,"</td>");
/***** Write time from last access *****/ /***** Write time from last access *****/
@ -1261,11 +1262,11 @@ static void Con_ShowConnectedUsrsCurrentLocationOneByOneOnMainZone (Rol_Role_t R
switch (Role) switch (Role)
{ {
case Rol_STD: case Rol_STD:
Act_StartForm (ActSeeRecOneStd); Frm_StartForm (ActSeeRecOneStd);
break; break;
case Rol_NET: case Rol_NET:
case Rol_TCH: case Rol_TCH:
Act_StartForm (ActSeeRecOneTch); Frm_StartForm (ActSeeRecOneTch);
break; break;
default: default:
Lay_ShowErrorAndExit ("Wrong role."); Lay_ShowErrorAndExit ("Wrong role.");
@ -1274,13 +1275,13 @@ static void Con_ShowConnectedUsrsCurrentLocationOneByOneOnMainZone (Rol_Role_t R
} }
fprintf (Gbl.F.Out,"<div class=\"CON_NAME_WIDE\">"); // Limited width fprintf (Gbl.F.Out,"<div class=\"CON_NAME_WIDE\">"); // Limited width
if (PutLinkToRecord) if (PutLinkToRecord)
Act_LinkFormSubmit (UsrDat.FullName,Font,NULL); Frm_LinkFormSubmit (UsrDat.FullName,Font,NULL);
Usr_WriteFirstNameBRSurnames (&UsrDat); Usr_WriteFirstNameBRSurnames (&UsrDat);
if (PutLinkToRecord) if (PutLinkToRecord)
fprintf (Gbl.F.Out,"</a>"); fprintf (Gbl.F.Out,"</a>");
fprintf (Gbl.F.Out,"</div>"); fprintf (Gbl.F.Out,"</div>");
if (PutLinkToRecord) if (PutLinkToRecord)
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</td>"); fprintf (Gbl.F.Out,"</td>");
/***** Write time from last access *****/ /***** Write time from last access *****/

View File

@ -36,6 +36,7 @@
#include "swad_constant.h" #include "swad_constant.h"
#include "swad_country.h" #include "swad_country.h"
#include "swad_database.h" #include "swad_database.h"
#include "swad_form.h"
#include "swad_global.h" #include "swad_global.h"
#include "swad_help.h" #include "swad_help.h"
#include "swad_institution.h" #include "swad_institution.h"
@ -287,7 +288,7 @@ static void Cty_Configuration (bool PrintView)
if (!PrintView && Cty_CheckIfICanEditCountries ()) if (!PrintView && Cty_CheckIfICanEditCountries ())
{ {
fprintf (Gbl.F.Out,"<div class=\"CENTER_MIDDLE\">"); fprintf (Gbl.F.Out,"<div class=\"CENTER_MIDDLE\">");
Act_StartForm (ActChgCtyMapAtt); Frm_StartForm (ActChgCtyMapAtt);
fprintf (Gbl.F.Out,"<textarea name=\"Attribution\"" fprintf (Gbl.F.Out,"<textarea name=\"Attribution\""
" cols=\"50\" rows=\"2\"" " cols=\"50\" rows=\"2\""
" onchange=\"document.getElementById('%s').submit();\">", " onchange=\"document.getElementById('%s').submit();\">",
@ -295,7 +296,7 @@ static void Cty_Configuration (bool PrintView)
if (MapAttribution) if (MapAttribution)
fprintf (Gbl.F.Out,"%s",MapAttribution); fprintf (Gbl.F.Out,"%s",MapAttribution);
fprintf (Gbl.F.Out,"</textarea>"); fprintf (Gbl.F.Out,"</textarea>");
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</div>"); fprintf (Gbl.F.Out,"</div>");
} }
else if (MapAttribution) else if (MapAttribution)
@ -386,15 +387,15 @@ static void Cty_Configuration (bool PrintView)
Txt_Institutions); Txt_Institutions);
/* Form to go to see institutions of this country */ /* Form to go to see institutions of this country */
Act_StartFormGoTo (ActSeeIns); Frm_StartFormGoTo (ActSeeIns);
Cty_PutParamCtyCod (Gbl.CurrentCty.Cty.CtyCod); Cty_PutParamCtyCod (Gbl.CurrentCty.Cty.CtyCod);
snprintf (Gbl.Title,sizeof (Gbl.Title), snprintf (Gbl.Title,sizeof (Gbl.Title),
Txt_Institutions_of_COUNTRY_X, Txt_Institutions_of_COUNTRY_X,
Gbl.CurrentCty.Cty.Name[Gbl.Prefs.Language]); Gbl.CurrentCty.Cty.Name[Gbl.Prefs.Language]);
Act_LinkFormSubmit (Gbl.Title,"DAT",NULL); Frm_LinkFormSubmit (Gbl.Title,"DAT",NULL);
fprintf (Gbl.F.Out,"%u</a>", fprintf (Gbl.F.Out,"%u</a>",
Ins_GetNumInssInCty (Gbl.CurrentCty.Cty.CtyCod)); Ins_GetNumInssInCty (Gbl.CurrentCty.Cty.CtyCod));
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</td>" fprintf (Gbl.F.Out,"</td>"
"</tr>"); "</tr>");
@ -645,9 +646,9 @@ static void Cty_PutHeadCountriesForSeeing (bool OrderSelectable)
"RIGHT_MIDDLE"); "RIGHT_MIDDLE");
if (OrderSelectable) if (OrderSelectable)
{ {
Act_StartForm (ActSeeCty); Frm_StartForm (ActSeeCty);
Par_PutHiddenParamUnsigned ("Order",(unsigned) Order); Par_PutHiddenParamUnsigned ("Order",(unsigned) Order);
Act_LinkFormSubmit (Txt_COUNTRIES_HELP_ORDER[Order],"TIT_TBL",NULL); Frm_LinkFormSubmit (Txt_COUNTRIES_HELP_ORDER[Order],"TIT_TBL",NULL);
if (Order == Gbl.Ctys.SelectedOrder) if (Order == Gbl.Ctys.SelectedOrder)
fprintf (Gbl.F.Out,"<u>"); fprintf (Gbl.F.Out,"<u>");
} }
@ -657,7 +658,7 @@ static void Cty_PutHeadCountriesForSeeing (bool OrderSelectable)
if (Order == Gbl.Ctys.SelectedOrder) if (Order == Gbl.Ctys.SelectedOrder)
fprintf (Gbl.F.Out,"</u>"); fprintf (Gbl.F.Out,"</u>");
fprintf (Gbl.F.Out,"</a>"); fprintf (Gbl.F.Out,"</a>");
Act_EndForm (); Frm_EndForm ();
} }
fprintf (Gbl.F.Out,"</th>"); fprintf (Gbl.F.Out,"</th>");
} }
@ -802,7 +803,7 @@ void Cty_DrawCountryMapAndNameWithLink (struct Country *Cty,Act_Action_t Action,
char CountryName[Cty_MAX_BYTES_NAME + 1]; char CountryName[Cty_MAX_BYTES_NAME + 1];
/***** Start form *****/ /***** Start form *****/
Act_StartFormGoTo (Action); Frm_StartFormGoTo (Action);
Cty_PutParamCtyCod (Cty->CtyCod); Cty_PutParamCtyCod (Cty->CtyCod);
fprintf (Gbl.F.Out,"<div class=\"%s\">",ClassContainer); fprintf (Gbl.F.Out,"<div class=\"%s\">",ClassContainer);
@ -810,7 +811,7 @@ void Cty_DrawCountryMapAndNameWithLink (struct Country *Cty,Act_Action_t Action,
snprintf (Gbl.Title,sizeof (Gbl.Title), snprintf (Gbl.Title,sizeof (Gbl.Title),
Txt_Go_to_X, Txt_Go_to_X,
Cty->Name[Gbl.Prefs.Language]); Cty->Name[Gbl.Prefs.Language]);
Act_LinkFormSubmit (Gbl.Title,ClassLink,NULL); Frm_LinkFormSubmit (Gbl.Title,ClassLink,NULL);
/***** Draw country map *****/ /***** Draw country map *****/
Cty_DrawCountryMap (Cty,ClassMap); Cty_DrawCountryMap (Cty,ClassMap);
@ -825,7 +826,7 @@ void Cty_DrawCountryMapAndNameWithLink (struct Country *Cty,Act_Action_t Action,
Cty->Alpha2); Cty->Alpha2);
/***** End form *****/ /***** End form *****/
Act_EndForm (); Frm_EndForm ();
} }
/*****************************************************************************/ /*****************************************************************************/
@ -1181,7 +1182,7 @@ void Cty_WriteSelectorOfCountry (void)
long CtyCod; long CtyCod;
/***** Start form *****/ /***** Start form *****/
Act_StartFormGoTo (ActSeeIns); Frm_StartFormGoTo (ActSeeIns);
fprintf (Gbl.F.Out,"<select id=\"cty\" name=\"cty\" style=\"width:175px;\"" fprintf (Gbl.F.Out,"<select id=\"cty\" name=\"cty\" style=\"width:175px;\""
" onchange=\"document.getElementById('%s').submit();\">" " onchange=\"document.getElementById('%s').submit();\">"
"<option value=\"\"", "<option value=\"\"",
@ -1223,7 +1224,7 @@ void Cty_WriteSelectorOfCountry (void)
/***** End form *****/ /***** End form *****/
fprintf (Gbl.F.Out,"</select>"); fprintf (Gbl.F.Out,"</select>");
Act_EndForm (); Frm_EndForm ();
} }
/*****************************************************************************/ /*****************************************************************************/
@ -1245,12 +1246,12 @@ void Cty_WriteCountryName (long CtyCod,const char *ClassLink)
if (PutForm) if (PutForm)
{ {
/***** Write country name with link to country information *****/ /***** Write country name with link to country information *****/
Act_StartForm (ActSeeCtyInf); Frm_StartForm (ActSeeCtyInf);
Cty_PutParamCtyCod (CtyCod); Cty_PutParamCtyCod (CtyCod);
Act_LinkFormSubmit (Act_GetActionTextFromDB (Act_GetActCod (ActSeeCtyInf),ActTxt), Frm_LinkFormSubmit (Act_GetActionTextFromDB (Act_GetActCod (ActSeeCtyInf),ActTxt),
ClassLink,NULL); ClassLink,NULL);
fprintf (Gbl.F.Out,"%s</a>",CtyName); fprintf (Gbl.F.Out,"%s</a>",CtyName);
Act_EndForm (); Frm_EndForm ();
} }
else else
/***** Write country name without link *****/ /***** Write country name without link *****/
@ -1574,10 +1575,10 @@ static void Cty_ListCountriesForEdition (void)
Ico_PutIconRemovalNotAllowed (); Ico_PutIconRemovalNotAllowed ();
else else
{ {
Act_StartForm (ActRemCty); Frm_StartForm (ActRemCty);
Cty_PutParamOtherCtyCod (Cty->CtyCod); Cty_PutParamOtherCtyCod (Cty->CtyCod);
Ico_PutIconRemove (); Ico_PutIconRemove ();
Act_EndForm (); Frm_EndForm ();
} }
fprintf (Gbl.F.Out,"</td>"); fprintf (Gbl.F.Out,"</td>");
@ -1624,7 +1625,7 @@ static void Cty_ListCountriesForEdition (void)
/* Name */ /* Name */
fprintf (Gbl.F.Out,"<td class=\"LEFT_TOP\">"); fprintf (Gbl.F.Out,"<td class=\"LEFT_TOP\">");
Act_StartForm (ActRenCty); Frm_StartForm (ActRenCty);
Cty_PutParamOtherCtyCod (Cty->CtyCod); Cty_PutParamOtherCtyCod (Cty->CtyCod);
Par_PutHiddenParamUnsigned ("Lan",(unsigned) Lan); Par_PutHiddenParamUnsigned ("Lan",(unsigned) Lan);
fprintf (Gbl.F.Out,"<input type=\"text\" name=\"Name\"" fprintf (Gbl.F.Out,"<input type=\"text\" name=\"Name\""
@ -1632,12 +1633,12 @@ static void Cty_ListCountriesForEdition (void)
" onchange=\"document.getElementById('%s').submit();\" />", " onchange=\"document.getElementById('%s').submit();\" />",
Cty_MAX_CHARS_NAME, Cty_MAX_CHARS_NAME,
Cty->Name[Lan],Gbl.Form.Id); Cty->Name[Lan],Gbl.Form.Id);
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</td>"); fprintf (Gbl.F.Out,"</td>");
/* WWW */ /* WWW */
fprintf (Gbl.F.Out,"<td class=\"LEFT_TOP\">"); fprintf (Gbl.F.Out,"<td class=\"LEFT_TOP\">");
Act_StartForm (ActChgCtyWWW); Frm_StartForm (ActChgCtyWWW);
Cty_PutParamOtherCtyCod (Cty->CtyCod); Cty_PutParamOtherCtyCod (Cty->CtyCod);
Par_PutHiddenParamUnsigned ("Lan",(unsigned) Lan); Par_PutHiddenParamUnsigned ("Lan",(unsigned) Lan);
fprintf (Gbl.F.Out,"<input type=\"url\" name=\"WWW\"" fprintf (Gbl.F.Out,"<input type=\"url\" name=\"WWW\""
@ -1646,7 +1647,7 @@ static void Cty_ListCountriesForEdition (void)
" onchange=\"document.getElementById('%s').submit();\" />", " onchange=\"document.getElementById('%s').submit();\" />",
Cns_MAX_CHARS_WWW, Cns_MAX_CHARS_WWW,
Cty->WWW[Lan],Gbl.Form.Id); Cty->WWW[Lan],Gbl.Form.Id);
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</td>" fprintf (Gbl.F.Out,"</td>"
"</tr>"); "</tr>");
} }
@ -1965,7 +1966,7 @@ static void Cty_PutFormToCreateCountry (void)
Cty = &Gbl.Ctys.EditingCty; Cty = &Gbl.Ctys.EditingCty;
/***** Start form *****/ /***** Start form *****/
Act_StartForm (ActNewCty); Frm_StartForm (ActNewCty);
/***** Start box and table *****/ /***** Start box and table *****/
Box_StartBoxTable (NULL,Txt_New_country,NULL, Box_StartBoxTable (NULL,Txt_New_country,NULL,
@ -2052,7 +2053,7 @@ static void Cty_PutFormToCreateCountry (void)
Box_EndBoxTableWithButton (Btn_CREATE_BUTTON,Txt_Create_country); Box_EndBoxTableWithButton (Btn_CREATE_BUTTON,Txt_Create_country);
/***** End form *****/ /***** End form *****/
Act_EndForm (); Frm_EndForm ();
} }
/*****************************************************************************/ /*****************************************************************************/

View File

@ -40,6 +40,7 @@
#include "swad_degree.h" #include "swad_degree.h"
#include "swad_enrolment.h" #include "swad_enrolment.h"
#include "swad_exam.h" #include "swad_exam.h"
#include "swad_form.h"
#include "swad_global.h" #include "swad_global.h"
#include "swad_help.h" #include "swad_help.h"
#include "swad_hierarchy.h" #include "swad_hierarchy.h"
@ -241,7 +242,7 @@ static void Crs_Configuration (bool PrintView)
Deg_GetListDegsOfCurrentCtr (); Deg_GetListDegsOfCurrentCtr ();
/* Put form to select degree */ /* Put form to select degree */
Act_StartForm (ActChgCrsDegCfg); Frm_StartForm (ActChgCrsDegCfg);
fprintf (Gbl.F.Out,"<select id=\"OthDegCod\" name=\"OthDegCod\"" fprintf (Gbl.F.Out,"<select id=\"OthDegCod\" name=\"OthDegCod\""
" class=\"INPUT_SHORT_NAME\"" " class=\"INPUT_SHORT_NAME\""
" onchange=\"document.getElementById('%s').submit();\">", " onchange=\"document.getElementById('%s').submit();\">",
@ -255,7 +256,7 @@ static void Crs_Configuration (bool PrintView)
"", "",
Gbl.CurrentCtr.Ctr.Degs.Lst[NumDeg].ShrtName); Gbl.CurrentCtr.Ctr.Degs.Lst[NumDeg].ShrtName);
fprintf (Gbl.F.Out,"</select>"); fprintf (Gbl.F.Out,"</select>");
Act_EndForm (); Frm_EndForm ();
/* Free list of degrees of the current centre */ /* Free list of degrees of the current centre */
Deg_FreeListDegs (&Gbl.CurrentCtr.Ctr.Degs); Deg_FreeListDegs (&Gbl.CurrentCtr.Ctr.Degs);
@ -279,7 +280,7 @@ static void Crs_Configuration (bool PrintView)
// Only degree admins, centre admins, institution admins and system admins can edit course full name // Only degree admins, centre admins, institution admins and system admins can edit course full name
{ {
/* Form to change course full name */ /* Form to change course full name */
Act_StartForm (ActRenCrsFulCfg); Frm_StartForm (ActRenCrsFulCfg);
fprintf (Gbl.F.Out,"<input type=\"text\"" fprintf (Gbl.F.Out,"<input type=\"text\""
" id=\"FullName\" name=\"FullName\"" " id=\"FullName\" name=\"FullName\""
" maxlength=\"%u\" value=\"%s\"" " maxlength=\"%u\" value=\"%s\""
@ -288,7 +289,7 @@ static void Crs_Configuration (bool PrintView)
Hie_MAX_CHARS_FULL_NAME, Hie_MAX_CHARS_FULL_NAME,
Gbl.CurrentCrs.Crs.FullName, Gbl.CurrentCrs.Crs.FullName,
Gbl.Form.Id); Gbl.Form.Id);
Act_EndForm (); Frm_EndForm ();
} }
else // I can not edit course full name else // I can not edit course full name
fprintf (Gbl.F.Out,"%s",Gbl.CurrentCrs.Crs.FullName); fprintf (Gbl.F.Out,"%s",Gbl.CurrentCrs.Crs.FullName);
@ -308,7 +309,7 @@ static void Crs_Configuration (bool PrintView)
// Only degree admins, centre admins, institution admins and system admins can edit course short name // Only degree admins, centre admins, institution admins and system admins can edit course short name
{ {
/* Form to change course short name */ /* Form to change course short name */
Act_StartForm (ActRenCrsShoCfg); Frm_StartForm (ActRenCrsShoCfg);
fprintf (Gbl.F.Out,"<input type=\"text\"" fprintf (Gbl.F.Out,"<input type=\"text\""
" id=\"ShortName\" name=\"ShortName\"" " id=\"ShortName\" name=\"ShortName\""
" maxlength=\"%u\" value=\"%s\"" " maxlength=\"%u\" value=\"%s\""
@ -317,7 +318,7 @@ static void Crs_Configuration (bool PrintView)
Hie_MAX_CHARS_SHRT_NAME, Hie_MAX_CHARS_SHRT_NAME,
Gbl.CurrentCrs.Crs.ShrtName, Gbl.CurrentCrs.Crs.ShrtName,
Gbl.Form.Id); Gbl.Form.Id);
Act_EndForm (); Frm_EndForm ();
} }
else // I can not edit course short name else // I can not edit course short name
fprintf (Gbl.F.Out,"%s",Gbl.CurrentCrs.Crs.ShrtName); fprintf (Gbl.F.Out,"%s",Gbl.CurrentCrs.Crs.ShrtName);
@ -334,7 +335,7 @@ static void Crs_Configuration (bool PrintView)
Txt_Year_OF_A_DEGREE); Txt_Year_OF_A_DEGREE);
if (IsForm) if (IsForm)
{ {
Act_StartForm (ActChgCrsYeaCfg); Frm_StartForm (ActChgCrsYeaCfg);
fprintf (Gbl.F.Out,"<select id=\"OthCrsYear\" name=\"OthCrsYear\"" fprintf (Gbl.F.Out,"<select id=\"OthCrsYear\" name=\"OthCrsYear\""
" onchange=\"document.getElementById('%s').submit();\">", " onchange=\"document.getElementById('%s').submit();\">",
Gbl.Form.Id); Gbl.Form.Id);
@ -347,7 +348,7 @@ static void Crs_Configuration (bool PrintView)
"", "",
Txt_YEAR_OF_DEGREE[Year]); Txt_YEAR_OF_DEGREE[Year]);
fprintf (Gbl.F.Out,"</select>"); fprintf (Gbl.F.Out,"</select>");
Act_EndForm (); Frm_EndForm ();
} }
else else
fprintf (Gbl.F.Out,"%s", fprintf (Gbl.F.Out,"%s",
@ -368,7 +369,7 @@ static void Crs_Configuration (bool PrintView)
Txt_Institutional_code); Txt_Institutional_code);
if (IsForm) if (IsForm)
{ {
Act_StartForm (ActChgInsCrsCodCfg); Frm_StartForm (ActChgInsCrsCodCfg);
fprintf (Gbl.F.Out,"<input type=\"text\"" fprintf (Gbl.F.Out,"<input type=\"text\""
" id=\"InsCrsCod\" name=\"InsCrsCod\"" " id=\"InsCrsCod\" name=\"InsCrsCod\""
" size=\"%u\" maxlength=\"%u\" value=\"%s\"" " size=\"%u\" maxlength=\"%u\" value=\"%s\""
@ -377,7 +378,7 @@ static void Crs_Configuration (bool PrintView)
Crs_MAX_CHARS_INSTITUTIONAL_CRS_COD, Crs_MAX_CHARS_INSTITUTIONAL_CRS_COD,
Gbl.CurrentCrs.Crs.InstitutionalCrsCod, Gbl.CurrentCrs.Crs.InstitutionalCrsCod,
Gbl.Form.Id); Gbl.Form.Id);
Act_EndForm (); Frm_EndForm ();
} }
else else
fprintf (Gbl.F.Out,"%s",Gbl.CurrentCrs.Crs.InstitutionalCrsCod); fprintf (Gbl.F.Out,"%s",Gbl.CurrentCrs.Crs.InstitutionalCrsCod);
@ -449,12 +450,12 @@ static void Crs_Configuration (bool PrintView)
"<td class=\"LEFT_MIDDLE\">", "<td class=\"LEFT_MIDDLE\">",
The_ClassForm[Gbl.Prefs.Theme], The_ClassForm[Gbl.Prefs.Theme],
Txt_Indicators); Txt_Indicators);
Act_StartForm (ActReqStaCrs); Frm_StartForm (ActReqStaCrs);
snprintf (Gbl.Title,sizeof (Gbl.Title), snprintf (Gbl.Title,sizeof (Gbl.Title),
"%u %s %u", "%u %s %u",
Indicators.NumIndicators, Indicators.NumIndicators,
Txt_of_PART_OF_A_TOTAL,Ind_NUM_INDICATORS); Txt_of_PART_OF_A_TOTAL,Ind_NUM_INDICATORS);
Act_LinkFormSubmit (Gbl.Title,"DAT",NULL); Frm_LinkFormSubmit (Gbl.Title,"DAT",NULL);
fprintf (Gbl.F.Out,"%s " fprintf (Gbl.F.Out,"%s "
"<img src=\"%s/%s\" alt=\"%s\"" "<img src=\"%s/%s\" alt=\"%s\""
" class=\"ICO20x20\" />", " class=\"ICO20x20\" />",
@ -463,7 +464,7 @@ static void Crs_Configuration (bool PrintView)
(Indicators.NumIndicators == Ind_NUM_INDICATORS) ? "ok_green16x16.gif" : (Indicators.NumIndicators == Ind_NUM_INDICATORS) ? "ok_green16x16.gif" :
"warning64x64.png", "warning64x64.png",
Gbl.Title); Gbl.Title);
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</td>" fprintf (Gbl.F.Out,"</td>"
"</tr>"); "</tr>");
} }
@ -562,9 +563,9 @@ static void Crs_WriteListMyCoursesToSelectOne (void)
fprintf (Gbl.F.Out,"<li class=\"%s\" style=\"height:25px;\">", fprintf (Gbl.F.Out,"<li class=\"%s\" style=\"height:25px;\">",
Highlight ? ClassHighlight : Highlight ? ClassHighlight :
ClassNormal); ClassNormal);
Act_StartForm (ActMyCrs); Frm_StartForm (ActMyCrs);
Cty_PutParamCtyCod (-1L); Cty_PutParamCtyCod (-1L);
Act_LinkFormSubmit (Txt_System, Frm_LinkFormSubmit (Txt_System,
Highlight ? ClassHighlight : Highlight ? ClassHighlight :
ClassNormal,NULL); ClassNormal,NULL);
fprintf (Gbl.F.Out,"<img src=\"%s/sys64x64.gif\"" fprintf (Gbl.F.Out,"<img src=\"%s/sys64x64.gif\""
@ -574,7 +575,7 @@ static void Crs_WriteListMyCoursesToSelectOne (void)
Txt_System, Txt_System,
Txt_System, Txt_System,
Txt_System); Txt_System);
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</li>"); fprintf (Gbl.F.Out,"</li>");
/***** Get my countries *****/ /***** Get my countries *****/
@ -599,9 +600,9 @@ static void Crs_WriteListMyCoursesToSelectOne (void)
ClassNormal); ClassNormal);
IsLastItemInLevel[1] = (NumCty == NumCtys - 1); IsLastItemInLevel[1] = (NumCty == NumCtys - 1);
Lay_IndentDependingOnLevel (1,IsLastItemInLevel); Lay_IndentDependingOnLevel (1,IsLastItemInLevel);
Act_StartForm (ActMyCrs); Frm_StartForm (ActMyCrs);
Cty_PutParamCtyCod (Cty.CtyCod); Cty_PutParamCtyCod (Cty.CtyCod);
Act_LinkFormSubmit (Act_GetActionTextFromDB (Act_GetActCod (ActSeeCtyInf),ActTxt), Frm_LinkFormSubmit (Act_GetActionTextFromDB (Act_GetActCod (ActSeeCtyInf),ActTxt),
Highlight ? ClassHighlight : Highlight ? ClassHighlight :
ClassNormal,NULL); ClassNormal,NULL);
/* Country map */ /* Country map */
@ -614,7 +615,7 @@ static void Crs_WriteListMyCoursesToSelectOne (void)
Cty.Alpha2, Cty.Alpha2,
Cty.Name[Gbl.Prefs.Language], Cty.Name[Gbl.Prefs.Language],
Cty.Name[Gbl.Prefs.Language]); Cty.Name[Gbl.Prefs.Language]);
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</li>"); fprintf (Gbl.F.Out,"</li>");
/***** Get my institutions in this country *****/ /***** Get my institutions in this country *****/
@ -640,14 +641,14 @@ static void Crs_WriteListMyCoursesToSelectOne (void)
ClassNormal); ClassNormal);
IsLastItemInLevel[2] = (NumIns == NumInss - 1); IsLastItemInLevel[2] = (NumIns == NumInss - 1);
Lay_IndentDependingOnLevel (2,IsLastItemInLevel); Lay_IndentDependingOnLevel (2,IsLastItemInLevel);
Act_StartForm (ActMyCrs); Frm_StartForm (ActMyCrs);
Ins_PutParamInsCod (Ins.InsCod); Ins_PutParamInsCod (Ins.InsCod);
Act_LinkFormSubmit (Act_GetActionTextFromDB (Act_GetActCod (ActSeeInsInf),ActTxt), Frm_LinkFormSubmit (Act_GetActionTextFromDB (Act_GetActCod (ActSeeInsInf),ActTxt),
Highlight ? ClassHighlight : Highlight ? ClassHighlight :
ClassNormal,NULL); ClassNormal,NULL);
Log_DrawLogo (Sco_SCOPE_INS,Ins.InsCod,Ins.ShrtName,20,NULL,true); Log_DrawLogo (Sco_SCOPE_INS,Ins.InsCod,Ins.ShrtName,20,NULL,true);
fprintf (Gbl.F.Out,"&nbsp;%s</a>",Ins.FullName); fprintf (Gbl.F.Out,"&nbsp;%s</a>",Ins.FullName);
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</li>"); fprintf (Gbl.F.Out,"</li>");
/***** Get my centres in this institution *****/ /***** Get my centres in this institution *****/
@ -673,14 +674,14 @@ static void Crs_WriteListMyCoursesToSelectOne (void)
ClassNormal); ClassNormal);
IsLastItemInLevel[3] = (NumCtr == NumCtrs - 1); IsLastItemInLevel[3] = (NumCtr == NumCtrs - 1);
Lay_IndentDependingOnLevel (3,IsLastItemInLevel); Lay_IndentDependingOnLevel (3,IsLastItemInLevel);
Act_StartForm (ActMyCrs); Frm_StartForm (ActMyCrs);
Ctr_PutParamCtrCod (Ctr.CtrCod); Ctr_PutParamCtrCod (Ctr.CtrCod);
Act_LinkFormSubmit (Act_GetActionTextFromDB (Act_GetActCod (ActSeeCtrInf),ActTxt), Frm_LinkFormSubmit (Act_GetActionTextFromDB (Act_GetActCod (ActSeeCtrInf),ActTxt),
Highlight ? ClassHighlight : Highlight ? ClassHighlight :
ClassNormal,NULL); ClassNormal,NULL);
Log_DrawLogo (Sco_SCOPE_CTR,Ctr.CtrCod,Ctr.ShrtName,20,NULL,true); Log_DrawLogo (Sco_SCOPE_CTR,Ctr.CtrCod,Ctr.ShrtName,20,NULL,true);
fprintf (Gbl.F.Out,"&nbsp;%s</a>",Ctr.FullName); fprintf (Gbl.F.Out,"&nbsp;%s</a>",Ctr.FullName);
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</li>"); fprintf (Gbl.F.Out,"</li>");
/***** Get my degrees in this centre *****/ /***** Get my degrees in this centre *****/
@ -706,14 +707,14 @@ static void Crs_WriteListMyCoursesToSelectOne (void)
ClassNormal); ClassNormal);
IsLastItemInLevel[4] = (NumDeg == NumDegs - 1); IsLastItemInLevel[4] = (NumDeg == NumDegs - 1);
Lay_IndentDependingOnLevel (4,IsLastItemInLevel); Lay_IndentDependingOnLevel (4,IsLastItemInLevel);
Act_StartForm (ActMyCrs); Frm_StartForm (ActMyCrs);
Deg_PutParamDegCod (Deg.DegCod); Deg_PutParamDegCod (Deg.DegCod);
Act_LinkFormSubmit (Act_GetActionTextFromDB (Act_GetActCod (ActSeeDegInf),ActTxt), Frm_LinkFormSubmit (Act_GetActionTextFromDB (Act_GetActCod (ActSeeDegInf),ActTxt),
Highlight ? ClassHighlight : Highlight ? ClassHighlight :
ClassNormal,NULL); ClassNormal,NULL);
Log_DrawLogo (Sco_SCOPE_DEG,Deg.DegCod,Deg.ShrtName,20,NULL,true); Log_DrawLogo (Sco_SCOPE_DEG,Deg.DegCod,Deg.ShrtName,20,NULL,true);
fprintf (Gbl.F.Out,"&nbsp;%s</a>",Deg.FullName); fprintf (Gbl.F.Out,"&nbsp;%s</a>",Deg.FullName);
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</li>"); fprintf (Gbl.F.Out,"</li>");
/***** Get my courses in this degree *****/ /***** Get my courses in this degree *****/
@ -738,12 +739,12 @@ static void Crs_WriteListMyCoursesToSelectOne (void)
ClassNormal); ClassNormal);
IsLastItemInLevel[5] = (NumCrs == NumCrss - 1); IsLastItemInLevel[5] = (NumCrs == NumCrss - 1);
Lay_IndentDependingOnLevel (5,IsLastItemInLevel); Lay_IndentDependingOnLevel (5,IsLastItemInLevel);
Act_StartForm (ActMyCrs); Frm_StartForm (ActMyCrs);
Crs_PutParamCrsCod (Crs.CrsCod); Crs_PutParamCrsCod (Crs.CrsCod);
snprintf (Gbl.Title,sizeof (Gbl.Title), snprintf (Gbl.Title,sizeof (Gbl.Title),
Txt_Go_to_X, Txt_Go_to_X,
Crs.ShrtName); Crs.ShrtName);
Act_LinkFormSubmit (Gbl.Title, Frm_LinkFormSubmit (Gbl.Title,
Highlight ? ClassHighlight : Highlight ? ClassHighlight :
ClassNormal,NULL); ClassNormal,NULL);
fprintf (Gbl.F.Out,"<img src=\"%s/dot64x64.png\"" fprintf (Gbl.F.Out,"<img src=\"%s/dot64x64.png\""
@ -755,7 +756,7 @@ static void Crs_WriteListMyCoursesToSelectOne (void)
Crs.ShrtName, Crs.ShrtName,
Crs.FullName, Crs.FullName,
Crs.FullName); Crs.FullName);
Act_EndForm (); Frm_EndForm ();
/***** Put link to register students *****/ /***** Put link to register students *****/
Enr_PutButtonInlineToRegisterStds (Crs.CrsCod); Enr_PutButtonInlineToRegisterStds (Crs.CrsCod);
@ -894,7 +895,7 @@ void Crs_WriteSelectorOfCourse (void)
long CrsCod; long CrsCod;
/***** Start form *****/ /***** Start form *****/
Act_StartFormGoTo (ActSeeCrsInf); Frm_StartFormGoTo (ActSeeCrsInf);
fprintf (Gbl.F.Out,"<select id=\"crs\" name=\"crs\" style=\"width:175px;\""); fprintf (Gbl.F.Out,"<select id=\"crs\" name=\"crs\" style=\"width:175px;\"");
if (Gbl.CurrentDeg.Deg.DegCod > 0) if (Gbl.CurrentDeg.Deg.DegCod > 0)
fprintf (Gbl.F.Out," onchange=\"document.getElementById('%s').submit();\"", fprintf (Gbl.F.Out," onchange=\"document.getElementById('%s').submit();\"",
@ -943,7 +944,7 @@ void Crs_WriteSelectorOfCourse (void)
/***** End form *****/ /***** End form *****/
fprintf (Gbl.F.Out,"</select>"); fprintf (Gbl.F.Out,"</select>");
Act_EndForm (); Frm_EndForm ();
} }
/*****************************************************************************/ /*****************************************************************************/
@ -1061,7 +1062,7 @@ void Crs_WriteSelectorMyCoursesInBreadcrumb (void)
Usr_GetMyCourses (); Usr_GetMyCourses ();
/***** Start form *****/ /***** Start form *****/
Act_StartFormGoTo (Gbl.Usrs.Me.MyCrss.Num ? ActSeeCrsInf : Frm_StartFormGoTo (Gbl.Usrs.Me.MyCrss.Num ? ActSeeCrsInf :
ActSysReqSch); ActSysReqSch);
/***** Start selector of courses *****/ /***** Start selector of courses *****/
@ -1121,7 +1122,7 @@ void Crs_WriteSelectorMyCoursesInBreadcrumb (void)
/***** End form *****/ /***** End form *****/
fprintf (Gbl.F.Out,"</select>"); fprintf (Gbl.F.Out,"</select>");
Act_EndForm (); Frm_EndForm ();
} }
/*****************************************************************************/ /*****************************************************************************/
@ -1167,10 +1168,10 @@ static void Crs_ListCourses (void)
/***** Button to create course *****/ /***** Button to create course *****/
if (Crs_CheckIfICanCreateCourses ()) if (Crs_CheckIfICanCreateCourses ())
{ {
Act_StartForm (ActEdiCrs); Frm_StartForm (ActEdiCrs);
Btn_PutConfirmButton (Gbl.CurrentDeg.NumCrss ? Txt_Create_another_course : Btn_PutConfirmButton (Gbl.CurrentDeg.NumCrss ? Txt_Create_another_course :
Txt_Create_course); Txt_Create_course);
Act_EndForm (); Frm_EndForm ();
} }
/***** End box *****/ /***** End box *****/
@ -1287,15 +1288,15 @@ static bool Crs_ListCoursesOfAYearForSeeing (unsigned Year)
/* Course full name */ /* Course full name */
fprintf (Gbl.F.Out,"<td class=\"%s LEFT_MIDDLE %s\">", fprintf (Gbl.F.Out,"<td class=\"%s LEFT_MIDDLE %s\">",
TxtClassStrong,BgColor); TxtClassStrong,BgColor);
Act_StartFormGoTo (ActSeeCrsInf); Frm_StartFormGoTo (ActSeeCrsInf);
Crs_PutParamCrsCod (Crs->CrsCod); Crs_PutParamCrsCod (Crs->CrsCod);
snprintf (Gbl.Title,sizeof (Gbl.Title), snprintf (Gbl.Title,sizeof (Gbl.Title),
Txt_Go_to_X, Txt_Go_to_X,
Crs->FullName); Crs->FullName);
Act_LinkFormSubmit (Gbl.Title,TxtClassStrong,NULL); Frm_LinkFormSubmit (Gbl.Title,TxtClassStrong,NULL);
fprintf (Gbl.F.Out,"%s</a>", fprintf (Gbl.F.Out,"%s</a>",
Crs->FullName); Crs->FullName);
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</td>"); fprintf (Gbl.F.Out,"</td>");
/* Current number of teachers in this course */ /* Current number of teachers in this course */
@ -1434,10 +1435,10 @@ static void Crs_ListCoursesOfAYearForEdition (unsigned Year)
Ico_PutIconRemovalNotAllowed (); Ico_PutIconRemovalNotAllowed ();
else // Crs->NumUsrs == 0 && ICanEdit else // Crs->NumUsrs == 0 && ICanEdit
{ {
Act_StartForm (ActRemCrs); Frm_StartForm (ActRemCrs);
Crs_PutParamOtherCrsCod (Crs->CrsCod); Crs_PutParamOtherCrsCod (Crs->CrsCod);
Ico_PutIconRemove (); Ico_PutIconRemove ();
Act_EndForm (); Frm_EndForm ();
} }
fprintf (Gbl.F.Out,"</td>"); fprintf (Gbl.F.Out,"</td>");
@ -1451,7 +1452,7 @@ static void Crs_ListCoursesOfAYearForEdition (unsigned Year)
fprintf (Gbl.F.Out,"<td class=\"DAT CENTER_MIDDLE\">"); fprintf (Gbl.F.Out,"<td class=\"DAT CENTER_MIDDLE\">");
if (ICanEdit) if (ICanEdit)
{ {
Act_StartForm (ActChgInsCrsCod); Frm_StartForm (ActChgInsCrsCod);
Crs_PutParamOtherCrsCod (Crs->CrsCod); Crs_PutParamOtherCrsCod (Crs->CrsCod);
fprintf (Gbl.F.Out,"<input type=\"text\" name=\"InsCrsCod\"" fprintf (Gbl.F.Out,"<input type=\"text\" name=\"InsCrsCod\""
" maxlength=\"%u\" value=\"%s\"" " maxlength=\"%u\" value=\"%s\""
@ -1460,7 +1461,7 @@ static void Crs_ListCoursesOfAYearForEdition (unsigned Year)
Crs_MAX_CHARS_INSTITUTIONAL_CRS_COD, Crs_MAX_CHARS_INSTITUTIONAL_CRS_COD,
Crs->InstitutionalCrsCod, Crs->InstitutionalCrsCod,
Gbl.Form.Id); Gbl.Form.Id);
Act_EndForm (); Frm_EndForm ();
} }
else else
fprintf (Gbl.F.Out,"%s",Crs->InstitutionalCrsCod); fprintf (Gbl.F.Out,"%s",Crs->InstitutionalCrsCod);
@ -1470,7 +1471,7 @@ static void Crs_ListCoursesOfAYearForEdition (unsigned Year)
fprintf (Gbl.F.Out,"<td class=\"DAT CENTER_MIDDLE\">"); fprintf (Gbl.F.Out,"<td class=\"DAT CENTER_MIDDLE\">");
if (ICanEdit) if (ICanEdit)
{ {
Act_StartForm (ActChgCrsYea); Frm_StartForm (ActChgCrsYea);
Crs_PutParamOtherCrsCod (Crs->CrsCod); Crs_PutParamOtherCrsCod (Crs->CrsCod);
fprintf (Gbl.F.Out,"<select name=\"OthCrsYear\"" fprintf (Gbl.F.Out,"<select name=\"OthCrsYear\""
" style=\"width:50px;\"" " style=\"width:50px;\""
@ -1485,7 +1486,7 @@ static void Crs_ListCoursesOfAYearForEdition (unsigned Year)
"", "",
Txt_YEAR_OF_DEGREE[YearAux]); Txt_YEAR_OF_DEGREE[YearAux]);
fprintf (Gbl.F.Out,"</select>"); fprintf (Gbl.F.Out,"</select>");
Act_EndForm (); Frm_EndForm ();
} }
else else
fprintf (Gbl.F.Out,"%s",Txt_YEAR_OF_DEGREE[Crs->Year]); fprintf (Gbl.F.Out,"%s",Txt_YEAR_OF_DEGREE[Crs->Year]);
@ -1495,7 +1496,7 @@ static void Crs_ListCoursesOfAYearForEdition (unsigned Year)
fprintf (Gbl.F.Out,"<td class=\"DAT LEFT_MIDDLE\">"); fprintf (Gbl.F.Out,"<td class=\"DAT LEFT_MIDDLE\">");
if (ICanEdit) if (ICanEdit)
{ {
Act_StartForm (ActRenCrsSho); Frm_StartForm (ActRenCrsSho);
Crs_PutParamOtherCrsCod (Crs->CrsCod); Crs_PutParamOtherCrsCod (Crs->CrsCod);
fprintf (Gbl.F.Out,"<input type=\"text\" name=\"ShortName\"" fprintf (Gbl.F.Out,"<input type=\"text\" name=\"ShortName\""
" maxlength=\"%u\" value=\"%s\"" " maxlength=\"%u\" value=\"%s\""
@ -1503,7 +1504,7 @@ static void Crs_ListCoursesOfAYearForEdition (unsigned Year)
" onchange=\"document.getElementById('%s').submit();\" />", " onchange=\"document.getElementById('%s').submit();\" />",
Hie_MAX_CHARS_SHRT_NAME,Crs->ShrtName, Hie_MAX_CHARS_SHRT_NAME,Crs->ShrtName,
Gbl.Form.Id); Gbl.Form.Id);
Act_EndForm (); Frm_EndForm ();
} }
else else
fprintf (Gbl.F.Out,"%s",Crs->ShrtName); fprintf (Gbl.F.Out,"%s",Crs->ShrtName);
@ -1513,7 +1514,7 @@ static void Crs_ListCoursesOfAYearForEdition (unsigned Year)
fprintf (Gbl.F.Out,"<td class=\"DAT LEFT_MIDDLE\">"); fprintf (Gbl.F.Out,"<td class=\"DAT LEFT_MIDDLE\">");
if (ICanEdit) if (ICanEdit)
{ {
Act_StartForm (ActRenCrsFul); Frm_StartForm (ActRenCrsFul);
Crs_PutParamOtherCrsCod (Crs->CrsCod); Crs_PutParamOtherCrsCod (Crs->CrsCod);
fprintf (Gbl.F.Out,"<input type=\"text\" name=\"FullName\"" fprintf (Gbl.F.Out,"<input type=\"text\" name=\"FullName\""
" maxlength=\"%u\" value=\"%s\"" " maxlength=\"%u\" value=\"%s\""
@ -1521,7 +1522,7 @@ static void Crs_ListCoursesOfAYearForEdition (unsigned Year)
" onchange=\"document.getElementById('%s').submit();\" />", " onchange=\"document.getElementById('%s').submit();\" />",
Hie_MAX_CHARS_FULL_NAME,Crs->FullName, Hie_MAX_CHARS_FULL_NAME,Crs->FullName,
Gbl.Form.Id); Gbl.Form.Id);
Act_EndForm (); Frm_EndForm ();
} }
else else
fprintf (Gbl.F.Out,"%s",Crs->FullName); fprintf (Gbl.F.Out,"%s",Crs->FullName);
@ -1553,7 +1554,7 @@ static void Crs_ListCoursesOfAYearForEdition (unsigned Year)
if (Gbl.Usrs.Me.Role.Logged >= Rol_DEG_ADM && if (Gbl.Usrs.Me.Role.Logged >= Rol_DEG_ADM &&
StatusTxt == Crs_STATUS_PENDING) StatusTxt == Crs_STATUS_PENDING)
{ {
Act_StartForm (ActChgCrsSta); Frm_StartForm (ActChgCrsSta);
Crs_PutParamOtherCrsCod (Crs->CrsCod); Crs_PutParamOtherCrsCod (Crs->CrsCod);
fprintf (Gbl.F.Out,"<select name=\"Status\" class=\"INPUT_STATUS\"" fprintf (Gbl.F.Out,"<select name=\"Status\" class=\"INPUT_STATUS\""
" onchange=\"document.getElementById('%s').submit();\">" " onchange=\"document.getElementById('%s').submit();\">"
@ -1565,7 +1566,7 @@ static void Crs_ListCoursesOfAYearForEdition (unsigned Year)
Txt_COURSE_STATUS[Crs_STATUS_PENDING], Txt_COURSE_STATUS[Crs_STATUS_PENDING],
(unsigned) Crs_GetStatusBitsFromStatusTxt (Crs_STATUS_ACTIVE), (unsigned) Crs_GetStatusBitsFromStatusTxt (Crs_STATUS_ACTIVE),
Txt_COURSE_STATUS[Crs_STATUS_ACTIVE]); Txt_COURSE_STATUS[Crs_STATUS_ACTIVE]);
Act_EndForm (); Frm_EndForm ();
} }
else if (StatusTxt != Crs_STATUS_ACTIVE) // If active ==> do not show anything else if (StatusTxt != Crs_STATUS_ACTIVE) // If active ==> do not show anything
fprintf (Gbl.F.Out,"%s",Txt_COURSE_STATUS[StatusTxt]); fprintf (Gbl.F.Out,"%s",Txt_COURSE_STATUS[StatusTxt]);
@ -1644,9 +1645,9 @@ static void Crs_PutFormToCreateCourse (void)
/***** Start form *****/ /***** Start form *****/
if (Gbl.Usrs.Me.Role.Logged >= Rol_DEG_ADM) if (Gbl.Usrs.Me.Role.Logged >= Rol_DEG_ADM)
Act_StartForm (ActNewCrs); Frm_StartForm (ActNewCrs);
else if (Gbl.Usrs.Me.Role.Max >= Rol_GST) else if (Gbl.Usrs.Me.Role.Max >= Rol_GST)
Act_StartForm (ActReqCrs); Frm_StartForm (ActReqCrs);
else else
Lay_ShowErrorAndExit ("You can not edit courses."); Lay_ShowErrorAndExit ("You can not edit courses.");
@ -1729,7 +1730,7 @@ static void Crs_PutFormToCreateCourse (void)
Box_EndBoxTableWithButton (Btn_CREATE_BUTTON,Txt_Create_course); Box_EndBoxTableWithButton (Btn_CREATE_BUTTON,Txt_Create_course);
/***** End form *****/ /***** End form *****/
Act_EndForm (); Frm_EndForm ();
} }
/*****************************************************************************/ /*****************************************************************************/
@ -2884,13 +2885,13 @@ static void Crs_PutButtonToGoToCrs (void)
// If the course being edited is different to the current one... // If the course being edited is different to the current one...
if (Gbl.Degs.EditingCrs.CrsCod != Gbl.CurrentCrs.Crs.CrsCod) if (Gbl.Degs.EditingCrs.CrsCod != Gbl.CurrentCrs.Crs.CrsCod)
{ {
Act_StartForm (ActSeeCrsInf); Frm_StartForm (ActSeeCrsInf);
Crs_PutParamCrsCod (Gbl.Degs.EditingCrs.CrsCod); Crs_PutParamCrsCod (Gbl.Degs.EditingCrs.CrsCod);
snprintf (Gbl.Title,sizeof (Gbl.Title), snprintf (Gbl.Title,sizeof (Gbl.Title),
Txt_Go_to_X, Txt_Go_to_X,
Gbl.Degs.EditingCrs.ShrtName); Gbl.Degs.EditingCrs.ShrtName);
Btn_PutConfirmButton (Gbl.Title); Btn_PutConfirmButton (Gbl.Title);
Act_EndForm (); Frm_EndForm ();
} }
} }
@ -2904,7 +2905,7 @@ static void Crs_PutButtonToRegisterInCrs (void)
{ {
extern const char *Txt_Register_me_in_X; extern const char *Txt_Register_me_in_X;
Act_StartForm (ActReqSignUp); Frm_StartForm (ActReqSignUp);
// If the course beeing edited is different to the current one... // If the course beeing edited is different to the current one...
if (Gbl.Degs.EditingCrs.CrsCod != Gbl.CurrentCrs.Crs.CrsCod) if (Gbl.Degs.EditingCrs.CrsCod != Gbl.CurrentCrs.Crs.CrsCod)
Crs_PutParamCrsCod (Gbl.Degs.EditingCrs.CrsCod); Crs_PutParamCrsCod (Gbl.Degs.EditingCrs.CrsCod);
@ -2912,7 +2913,7 @@ static void Crs_PutButtonToRegisterInCrs (void)
Txt_Register_me_in_X, Txt_Register_me_in_X,
Gbl.Degs.EditingCrs.ShrtName); Gbl.Degs.EditingCrs.ShrtName);
Btn_PutCreateButton (Gbl.Title); Btn_PutCreateButton (Gbl.Title);
Act_EndForm (); Frm_EndForm ();
} }
/*****************************************************************************/ /*****************************************************************************/
@ -2976,10 +2977,10 @@ void Crs_PutIconToSelectMyCoursesInBreadcrumb (void)
if (Gbl.Usrs.Me.MyCrss.Num) // I am enrolled in at least one course if (Gbl.Usrs.Me.MyCrss.Num) // I am enrolled in at least one course
{ {
/***** Start form *****/ /***** Start form *****/
Act_StartForm (ActMyCrs); Frm_StartForm (ActMyCrs);
/***** Put icon with link *****/ /***** Put icon with link *****/
Act_LinkFormSubmit (Txt_My_courses,NULL,NULL); Frm_LinkFormSubmit (Txt_My_courses,NULL,NULL);
fprintf (Gbl.F.Out,"<img src=\"%s/hierarchy64x64.png\"" fprintf (Gbl.F.Out,"<img src=\"%s/hierarchy64x64.png\""
" alt=\"%s\" title=\"%s\"" " alt=\"%s\" title=\"%s\""
" class=\"BC_ICON ICO_HIGHLIGHT\" />" " class=\"BC_ICON ICO_HIGHLIGHT\" />"
@ -2988,7 +2989,7 @@ void Crs_PutIconToSelectMyCoursesInBreadcrumb (void)
Txt_My_courses,Txt_My_courses); Txt_My_courses,Txt_My_courses);
/***** End form *****/ /***** End form *****/
Act_EndForm (); Frm_EndForm ();
} }
} }
} }
@ -3308,17 +3309,17 @@ static void Crs_WriteRowCrsData (unsigned NumCrs,MYSQL_ROW row,bool WriteColumnA
and centre short name (row[6]) *****/ and centre short name (row[6]) *****/
fprintf (Gbl.F.Out,"<td class=\"%s LEFT_TOP %s\">", fprintf (Gbl.F.Out,"<td class=\"%s LEFT_TOP %s\">",
StyleNoBR,BgColor); StyleNoBR,BgColor);
Act_StartFormGoTo (ActSeeDegInf); Frm_StartFormGoTo (ActSeeDegInf);
Deg_PutParamDegCod (Deg.DegCod); Deg_PutParamDegCod (Deg.DegCod);
snprintf (Gbl.Title,sizeof (Gbl.Title), snprintf (Gbl.Title,sizeof (Gbl.Title),
Txt_Go_to_X, Txt_Go_to_X,
row[2]); row[2]);
Act_LinkFormSubmit (Gbl.Title,StyleNoBR,NULL); Frm_LinkFormSubmit (Gbl.Title,StyleNoBR,NULL);
Log_DrawLogo (Sco_SCOPE_DEG,Deg.DegCod,Deg.ShrtName,20,"CENTER_TOP",true); Log_DrawLogo (Sco_SCOPE_DEG,Deg.DegCod,Deg.ShrtName,20,"CENTER_TOP",true);
fprintf (Gbl.F.Out," %s (%s)" fprintf (Gbl.F.Out," %s (%s)"
"</a>", "</a>",
row[2],row[6]); row[2],row[6]);
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</td>"); fprintf (Gbl.F.Out,"</td>");
/***** Write year (row[4]) *****/ /***** Write year (row[4]) *****/
@ -3330,14 +3331,14 @@ static void Crs_WriteRowCrsData (unsigned NumCrs,MYSQL_ROW row,bool WriteColumnA
/***** Write course full name (row[5]) *****/ /***** Write course full name (row[5]) *****/
fprintf (Gbl.F.Out,"<td class=\"%s LEFT_TOP %s\">", fprintf (Gbl.F.Out,"<td class=\"%s LEFT_TOP %s\">",
Style,BgColor); Style,BgColor);
Act_StartFormGoTo (ActSeeCrsInf); Frm_StartFormGoTo (ActSeeCrsInf);
Crs_PutParamCrsCod (CrsCod); Crs_PutParamCrsCod (CrsCod);
snprintf (Gbl.Title,sizeof (Gbl.Title), snprintf (Gbl.Title,sizeof (Gbl.Title),
Txt_Go_to_X, Txt_Go_to_X,
row[6]); row[6]);
Act_LinkFormSubmit (Gbl.Title,Style,NULL); Frm_LinkFormSubmit (Gbl.Title,Style,NULL);
fprintf (Gbl.F.Out,"%s</a>",row[5]); fprintf (Gbl.F.Out,"%s</a>",row[5]);
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</td>"); fprintf (Gbl.F.Out,"</td>");
/***** Write number of teachers in course *****/ /***** Write number of teachers in course *****/
@ -3402,7 +3403,7 @@ void Crs_AskRemoveOldCrss (void)
unsigned i; unsigned i;
/***** Start form *****/ /***** Start form *****/
Act_StartForm (ActRemOldCrs); Frm_StartForm (ActRemOldCrs);
/***** Start box *****/ /***** Start box *****/
Box_StartBox (NULL,Txt_Eliminate_old_courses,NULL, Box_StartBox (NULL,Txt_Eliminate_old_courses,NULL,
@ -3431,7 +3432,7 @@ void Crs_AskRemoveOldCrss (void)
Box_EndBoxWithButton (Btn_REMOVE_BUTTON,Txt_Eliminate); Box_EndBoxWithButton (Btn_REMOVE_BUTTON,Txt_Eliminate);
/***** End form *****/ /***** End form *****/
Act_EndForm (); Frm_EndForm ();
} }
/*****************************************************************************/ /*****************************************************************************/

View File

@ -35,6 +35,7 @@
#include "swad_config.h" #include "swad_config.h"
#include "swad_database.h" #include "swad_database.h"
#include "swad_date.h" #include "swad_date.h"
#include "swad_form.h"
#include "swad_global.h" #include "swad_global.h"
#include "swad_parameter.h" #include "swad_parameter.h"
#include "swad_preference.h" #include "swad_preference.h"
@ -109,7 +110,7 @@ void Dat_PutBoxToSelectDateFormat (void)
Hlp_PROFILE_Preferences_dates,Box_NOT_CLOSABLE); Hlp_PROFILE_Preferences_dates,Box_NOT_CLOSABLE);
/***** Form with list of options *****/ /***** Form with list of options *****/
Act_StartForm (ActChgDatFmt); Frm_StartForm (ActChgDatFmt);
fprintf (Gbl.F.Out,"<ul class=\"LIST_LEFT\">"); fprintf (Gbl.F.Out,"<ul class=\"LIST_LEFT\">");
for (Format = (Dat_Format_t) 0; for (Format = (Dat_Format_t) 0;
@ -136,7 +137,7 @@ void Dat_PutBoxToSelectDateFormat (void)
fprintf (Gbl.F.Out,"</ul>"); fprintf (Gbl.F.Out,"</ul>");
/***** End form *****/ /***** End form *****/
Act_EndForm (); Frm_EndForm ();
/***** End box *****/ /***** End box *****/
Box_EndBox (); Box_EndBox ();
@ -314,27 +315,27 @@ void Dat_ShowClientLocalTime (void)
/* Month with link to calendar */ /* Month with link to calendar */
fprintf (Gbl.F.Out,"<div id=\"current_month\">"); fprintf (Gbl.F.Out,"<div id=\"current_month\">");
Act_StartForm (Cal_GetActionToSeeCalendar ()); Frm_StartForm (Cal_GetActionToSeeCalendar ());
Act_LinkFormSubmit (Txt_Show_calendar,"CURRENT_MONTH",NULL); Frm_LinkFormSubmit (Txt_Show_calendar,"CURRENT_MONTH",NULL);
fprintf (Gbl.F.Out,"<span id=\"current_month_txt\">" // JavaScript will write HTML here fprintf (Gbl.F.Out,"<span id=\"current_month_txt\">" // JavaScript will write HTML here
"</span>" "</span>"
"</a>"); "</a>");
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</div>"); fprintf (Gbl.F.Out,"</div>");
/* Day with link to agenda (if I am logged) */ /* Day with link to agenda (if I am logged) */
fprintf (Gbl.F.Out,"<div id=\"current_day\">"); fprintf (Gbl.F.Out,"<div id=\"current_day\">");
if (Gbl.Usrs.Me.Logged) if (Gbl.Usrs.Me.Logged)
{ {
Act_StartForm (ActSeeMyAgd); Frm_StartForm (ActSeeMyAgd);
Act_LinkFormSubmit (Txt_Show_agenda,"CURRENT_DAY",NULL); Frm_LinkFormSubmit (Txt_Show_agenda,"CURRENT_DAY",NULL);
} }
fprintf (Gbl.F.Out,"<span id=\"current_day_txt\">" // JavaScript will write HTML here fprintf (Gbl.F.Out,"<span id=\"current_day_txt\">" // JavaScript will write HTML here
"</span>"); "</span>");
if (Gbl.Usrs.Me.Logged) if (Gbl.Usrs.Me.Logged)
{ {
fprintf (Gbl.F.Out,"</a>"); fprintf (Gbl.F.Out,"</a>");
Act_EndForm (); Frm_EndForm ();
} }
fprintf (Gbl.F.Out,"</div>"); fprintf (Gbl.F.Out,"</div>");

View File

@ -41,6 +41,7 @@
#include "swad_degree.h" #include "swad_degree.h"
#include "swad_degree_type.h" #include "swad_degree_type.h"
#include "swad_exam.h" #include "swad_exam.h"
#include "swad_form.h"
#include "swad_global.h" #include "swad_global.h"
#include "swad_help.h" #include "swad_help.h"
#include "swad_hierarchy.h" #include "swad_hierarchy.h"
@ -244,14 +245,14 @@ void Deg_DrawDegreeLogoAndNameWithLink (struct Degree *Deg,Act_Action_t Action,
extern const char *Txt_Go_to_X; extern const char *Txt_Go_to_X;
/***** Start form *****/ /***** Start form *****/
Act_StartFormGoTo (Action); Frm_StartFormGoTo (Action);
Deg_PutParamDegCod (Deg->DegCod); Deg_PutParamDegCod (Deg->DegCod);
/***** Link to action *****/ /***** Link to action *****/
snprintf (Gbl.Title,sizeof (Gbl.Title), snprintf (Gbl.Title,sizeof (Gbl.Title),
Txt_Go_to_X, Txt_Go_to_X,
Deg->FullName); Deg->FullName);
Act_LinkFormSubmit (Gbl.Title,ClassLink,NULL); Frm_LinkFormSubmit (Gbl.Title,ClassLink,NULL);
/***** Draw degree logo *****/ /***** Draw degree logo *****/
Log_DrawLogo (Sco_SCOPE_DEG,Deg->DegCod,Deg->ShrtName,20,ClassLogo,true); Log_DrawLogo (Sco_SCOPE_DEG,Deg->DegCod,Deg->ShrtName,20,ClassLogo,true);
@ -260,7 +261,7 @@ void Deg_DrawDegreeLogoAndNameWithLink (struct Degree *Deg,Act_Action_t Action,
fprintf (Gbl.F.Out,"&nbsp;%s</a>",Deg->FullName); fprintf (Gbl.F.Out,"&nbsp;%s</a>",Deg->FullName);
/***** End form *****/ /***** End form *****/
Act_EndForm (); Frm_EndForm ();
} }
/*****************************************************************************/ /*****************************************************************************/
@ -349,7 +350,7 @@ static void Deg_Configuration (bool PrintView)
Ctr_GetListCentres (Gbl.CurrentIns.Ins.InsCod); Ctr_GetListCentres (Gbl.CurrentIns.Ins.InsCod);
/* Put form to select centre */ /* Put form to select centre */
Act_StartForm (ActChgDegCtrCfg); Frm_StartForm (ActChgDegCtrCfg);
fprintf (Gbl.F.Out,"<select id=\"OthCtrCod\" name=\"OthCtrCod\"" fprintf (Gbl.F.Out,"<select id=\"OthCtrCod\" name=\"OthCtrCod\""
" class=\"INPUT_SHORT_NAME\"" " class=\"INPUT_SHORT_NAME\""
" onchange=\"document.getElementById('%s').submit();\">", " onchange=\"document.getElementById('%s').submit();\">",
@ -363,7 +364,7 @@ static void Deg_Configuration (bool PrintView)
"", "",
Gbl.Ctrs.Lst[NumCtr].ShrtName); Gbl.Ctrs.Lst[NumCtr].ShrtName);
fprintf (Gbl.F.Out,"</select>"); fprintf (Gbl.F.Out,"</select>");
Act_EndForm (); Frm_EndForm ();
/* Free list of centres */ /* Free list of centres */
Ctr_FreeListCentres (); Ctr_FreeListCentres ();
@ -388,7 +389,7 @@ static void Deg_Configuration (bool PrintView)
// can edit degree full name // can edit degree full name
{ {
/* Form to change degree full name */ /* Form to change degree full name */
Act_StartForm (ActRenDegFulCfg); Frm_StartForm (ActRenDegFulCfg);
fprintf (Gbl.F.Out,"<input type=\"text\"" fprintf (Gbl.F.Out,"<input type=\"text\""
" id=\"FullName\" name=\"FullName\"" " id=\"FullName\" name=\"FullName\""
" maxlength=\"%u\" value=\"%s\"" " maxlength=\"%u\" value=\"%s\""
@ -397,7 +398,7 @@ static void Deg_Configuration (bool PrintView)
Hie_MAX_CHARS_FULL_NAME, Hie_MAX_CHARS_FULL_NAME,
Gbl.CurrentDeg.Deg.FullName, Gbl.CurrentDeg.Deg.FullName,
Gbl.Form.Id); Gbl.Form.Id);
Act_EndForm (); Frm_EndForm ();
} }
else // I can not edit degree full name else // I can not edit degree full name
fprintf (Gbl.F.Out,"%s",Gbl.CurrentDeg.Deg.FullName); fprintf (Gbl.F.Out,"%s",Gbl.CurrentDeg.Deg.FullName);
@ -418,7 +419,7 @@ static void Deg_Configuration (bool PrintView)
// can edit degree short name // can edit degree short name
{ {
/* Form to change degree short name */ /* Form to change degree short name */
Act_StartForm (ActRenDegShoCfg); Frm_StartForm (ActRenDegShoCfg);
fprintf (Gbl.F.Out,"<input type=\"text\"" fprintf (Gbl.F.Out,"<input type=\"text\""
" id=\"ShortName\" name=\"ShortName\"" " id=\"ShortName\" name=\"ShortName\""
" maxlength=\"%u\" value=\"%s\"" " maxlength=\"%u\" value=\"%s\""
@ -427,7 +428,7 @@ static void Deg_Configuration (bool PrintView)
Hie_MAX_CHARS_SHRT_NAME, Hie_MAX_CHARS_SHRT_NAME,
Gbl.CurrentDeg.Deg.ShrtName, Gbl.CurrentDeg.Deg.ShrtName,
Gbl.Form.Id); Gbl.Form.Id);
Act_EndForm (); Frm_EndForm ();
} }
else // I can not edit degree short name else // I can not edit degree short name
fprintf (Gbl.F.Out,"%s",Gbl.CurrentDeg.Deg.ShrtName); fprintf (Gbl.F.Out,"%s",Gbl.CurrentDeg.Deg.ShrtName);
@ -448,7 +449,7 @@ static void Deg_Configuration (bool PrintView)
// and system admins can change degree WWW // and system admins can change degree WWW
{ {
/* Form to change degree WWW */ /* Form to change degree WWW */
Act_StartForm (ActChgDegWWWCfg); Frm_StartForm (ActChgDegWWWCfg);
fprintf (Gbl.F.Out,"<input type=\"url\" id=\"WWW\" name=\"WWW\"" fprintf (Gbl.F.Out,"<input type=\"url\" id=\"WWW\" name=\"WWW\""
" maxlength=\"%u\" value=\"%s\"" " maxlength=\"%u\" value=\"%s\""
" class=\"INPUT_WWW\"" " class=\"INPUT_WWW\""
@ -456,7 +457,7 @@ static void Deg_Configuration (bool PrintView)
Cns_MAX_CHARS_WWW, Cns_MAX_CHARS_WWW,
Gbl.CurrentDeg.Deg.WWW, Gbl.CurrentDeg.Deg.WWW,
Gbl.Form.Id); Gbl.Form.Id);
Act_EndForm (); Frm_EndForm ();
} }
else // I can not change degree WWW else // I can not change degree WWW
fprintf (Gbl.F.Out,"<div class=\"EXTERNAL_WWW_LONG\">" fprintf (Gbl.F.Out,"<div class=\"EXTERNAL_WWW_LONG\">"
@ -515,15 +516,15 @@ static void Deg_Configuration (bool PrintView)
Txt_Courses); Txt_Courses);
/* Form to go to see courses of this degree */ /* Form to go to see courses of this degree */
Act_StartFormGoTo (ActSeeCrs); Frm_StartFormGoTo (ActSeeCrs);
Deg_PutParamDegCod (Gbl.CurrentDeg.Deg.DegCod); Deg_PutParamDegCod (Gbl.CurrentDeg.Deg.DegCod);
snprintf (Gbl.Title,sizeof (Gbl.Title), snprintf (Gbl.Title,sizeof (Gbl.Title),
Txt_Courses_of_DEGREE_X, Txt_Courses_of_DEGREE_X,
Gbl.CurrentDeg.Deg.ShrtName); Gbl.CurrentDeg.Deg.ShrtName);
Act_LinkFormSubmit (Gbl.Title,"DAT",NULL); Frm_LinkFormSubmit (Gbl.Title,"DAT",NULL);
fprintf (Gbl.F.Out,"%u</a>", fprintf (Gbl.F.Out,"%u</a>",
Crs_GetNumCrssInDeg (Gbl.CurrentDeg.Deg.DegCod)); Crs_GetNumCrssInDeg (Gbl.CurrentDeg.Deg.DegCod));
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</td>" fprintf (Gbl.F.Out,"</td>"
"</tr>"); "</tr>");
@ -597,7 +598,7 @@ void Deg_WriteSelectorOfDegree (void)
long DegCod; long DegCod;
/***** Start form *****/ /***** Start form *****/
Act_StartFormGoTo (ActSeeCrs); Frm_StartFormGoTo (ActSeeCrs);
fprintf (Gbl.F.Out,"<select id=\"deg\" name=\"deg\" style=\"width:175px;\""); fprintf (Gbl.F.Out,"<select id=\"deg\" name=\"deg\" style=\"width:175px;\"");
if (Gbl.CurrentCtr.Ctr.CtrCod > 0) if (Gbl.CurrentCtr.Ctr.CtrCod > 0)
fprintf (Gbl.F.Out," onchange=\"document.getElementById('%s').submit();\"", fprintf (Gbl.F.Out," onchange=\"document.getElementById('%s').submit();\"",
@ -648,7 +649,7 @@ void Deg_WriteSelectorOfDegree (void)
/***** End form *****/ /***** End form *****/
fprintf (Gbl.F.Out,"</select>"); fprintf (Gbl.F.Out,"</select>");
Act_EndForm (); Frm_EndForm ();
} }
/*****************************************************************************/ /*****************************************************************************/
@ -718,10 +719,10 @@ static void Deg_ListDegreesForEdition (void)
Ico_PutIconRemovalNotAllowed (); Ico_PutIconRemovalNotAllowed ();
else else
{ {
Act_StartForm (ActRemDeg); Frm_StartForm (ActRemDeg);
Deg_PutParamOtherDegCod (Deg->DegCod); Deg_PutParamOtherDegCod (Deg->DegCod);
Ico_PutIconRemove (); Ico_PutIconRemove ();
Act_EndForm (); Frm_EndForm ();
} }
fprintf (Gbl.F.Out,"</td>"); fprintf (Gbl.F.Out,"</td>");
@ -741,14 +742,14 @@ static void Deg_ListDegreesForEdition (void)
fprintf (Gbl.F.Out,"<td class=\"DAT LEFT_MIDDLE\">"); fprintf (Gbl.F.Out,"<td class=\"DAT LEFT_MIDDLE\">");
if (ICanEdit) if (ICanEdit)
{ {
Act_StartForm (ActRenDegSho); Frm_StartForm (ActRenDegSho);
Deg_PutParamOtherDegCod (Deg->DegCod); Deg_PutParamOtherDegCod (Deg->DegCod);
fprintf (Gbl.F.Out,"<input type=\"text\" name=\"ShortName\"" fprintf (Gbl.F.Out,"<input type=\"text\" name=\"ShortName\""
" maxlength=\"%u\" value=\"%s\"" " maxlength=\"%u\" value=\"%s\""
" class=\"INPUT_SHORT_NAME\"" " class=\"INPUT_SHORT_NAME\""
" onchange=\"document.getElementById('%s').submit();\" />", " onchange=\"document.getElementById('%s').submit();\" />",
Hie_MAX_CHARS_SHRT_NAME,Deg->ShrtName,Gbl.Form.Id); Hie_MAX_CHARS_SHRT_NAME,Deg->ShrtName,Gbl.Form.Id);
Act_EndForm (); Frm_EndForm ();
} }
else else
fprintf (Gbl.F.Out,"%s",Deg->ShrtName); fprintf (Gbl.F.Out,"%s",Deg->ShrtName);
@ -758,14 +759,14 @@ static void Deg_ListDegreesForEdition (void)
fprintf (Gbl.F.Out,"<td class=\"DAT LEFT_MIDDLE\">"); fprintf (Gbl.F.Out,"<td class=\"DAT LEFT_MIDDLE\">");
if (ICanEdit) if (ICanEdit)
{ {
Act_StartForm (ActRenDegFul); Frm_StartForm (ActRenDegFul);
Deg_PutParamOtherDegCod (Deg->DegCod); Deg_PutParamOtherDegCod (Deg->DegCod);
fprintf (Gbl.F.Out,"<input type=\"text\" name=\"FullName\"" fprintf (Gbl.F.Out,"<input type=\"text\" name=\"FullName\""
" maxlength=\"%u\" value=\"%s\"" " maxlength=\"%u\" value=\"%s\""
" class=\"INPUT_FULL_NAME\"" " class=\"INPUT_FULL_NAME\""
" onchange=\"document.getElementById('%s').submit();\" />", " onchange=\"document.getElementById('%s').submit();\" />",
Hie_MAX_CHARS_FULL_NAME,Deg->FullName,Gbl.Form.Id); Hie_MAX_CHARS_FULL_NAME,Deg->FullName,Gbl.Form.Id);
Act_EndForm (); Frm_EndForm ();
} }
else else
fprintf (Gbl.F.Out,"%s",Deg->FullName); fprintf (Gbl.F.Out,"%s",Deg->FullName);
@ -775,7 +776,7 @@ static void Deg_ListDegreesForEdition (void)
fprintf (Gbl.F.Out,"<td class=\"DAT LEFT_MIDDLE\">"); fprintf (Gbl.F.Out,"<td class=\"DAT LEFT_MIDDLE\">");
if (ICanEdit) if (ICanEdit)
{ {
Act_StartForm (ActChgDegTyp); Frm_StartForm (ActChgDegTyp);
Deg_PutParamOtherDegCod (Deg->DegCod); Deg_PutParamOtherDegCod (Deg->DegCod);
fprintf (Gbl.F.Out,"<select name=\"OthDegTypCod\"" fprintf (Gbl.F.Out,"<select name=\"OthDegTypCod\""
" style=\"width:62px;\"" " style=\"width:62px;\""
@ -793,7 +794,7 @@ static void Deg_ListDegreesForEdition (void)
DegTyp->DegTypName); DegTyp->DegTypName);
} }
fprintf (Gbl.F.Out,"</select>"); fprintf (Gbl.F.Out,"</select>");
Act_EndForm (); Frm_EndForm ();
} }
else else
for (NumDegTyp = 0; for (NumDegTyp = 0;
@ -807,14 +808,14 @@ static void Deg_ListDegreesForEdition (void)
fprintf (Gbl.F.Out,"<td class=\"DAT LEFT_MIDDLE\">"); fprintf (Gbl.F.Out,"<td class=\"DAT LEFT_MIDDLE\">");
if (ICanEdit) if (ICanEdit)
{ {
Act_StartForm (ActChgDegWWW); Frm_StartForm (ActChgDegWWW);
Deg_PutParamOtherDegCod (Deg->DegCod); Deg_PutParamOtherDegCod (Deg->DegCod);
fprintf (Gbl.F.Out,"<input type=\"url\" name=\"WWW\"" fprintf (Gbl.F.Out,"<input type=\"url\" name=\"WWW\""
" maxlength=\"%u\" value=\"%s\"" " maxlength=\"%u\" value=\"%s\""
" class=\"INPUT_WWW\"" " class=\"INPUT_WWW\""
" onchange=\"document.getElementById('%s').submit();\" />", " onchange=\"document.getElementById('%s').submit();\" />",
Cns_MAX_CHARS_WWW,Deg->WWW,Gbl.Form.Id); Cns_MAX_CHARS_WWW,Deg->WWW,Gbl.Form.Id);
Act_EndForm (); Frm_EndForm ();
} }
else else
{ {
@ -849,7 +850,7 @@ static void Deg_ListDegreesForEdition (void)
if (Gbl.Usrs.Me.Role.Logged >= Rol_CTR_ADM && if (Gbl.Usrs.Me.Role.Logged >= Rol_CTR_ADM &&
StatusTxt == Deg_STATUS_PENDING) StatusTxt == Deg_STATUS_PENDING)
{ {
Act_StartForm (ActChgDegSta); Frm_StartForm (ActChgDegSta);
Deg_PutParamOtherDegCod (Deg->DegCod); Deg_PutParamOtherDegCod (Deg->DegCod);
fprintf (Gbl.F.Out,"<select name=\"Status\" class=\"INPUT_STATUS\"" fprintf (Gbl.F.Out,"<select name=\"Status\" class=\"INPUT_STATUS\""
" onchange=\"document.getElementById('%s').submit();\">" " onchange=\"document.getElementById('%s').submit();\">"
@ -861,7 +862,7 @@ static void Deg_ListDegreesForEdition (void)
Txt_DEGREE_STATUS[Deg_STATUS_PENDING], Txt_DEGREE_STATUS[Deg_STATUS_PENDING],
(unsigned) Deg_GetStatusBitsFromStatusTxt (Deg_STATUS_ACTIVE), (unsigned) Deg_GetStatusBitsFromStatusTxt (Deg_STATUS_ACTIVE),
Txt_DEGREE_STATUS[Deg_STATUS_ACTIVE]); Txt_DEGREE_STATUS[Deg_STATUS_ACTIVE]);
Act_EndForm (); Frm_EndForm ();
} }
else if (StatusTxt != Deg_STATUS_ACTIVE) // If active ==> do not show anything else if (StatusTxt != Deg_STATUS_ACTIVE) // If active ==> do not show anything
fprintf (Gbl.F.Out,"%s",Txt_DEGREE_STATUS[StatusTxt]); fprintf (Gbl.F.Out,"%s",Txt_DEGREE_STATUS[StatusTxt]);
@ -946,9 +947,9 @@ static void Deg_PutFormToCreateDegree (void)
/***** Start form *****/ /***** Start form *****/
if (Gbl.Usrs.Me.Role.Logged >= Rol_CTR_ADM) if (Gbl.Usrs.Me.Role.Logged >= Rol_CTR_ADM)
Act_StartForm (ActNewDeg); Frm_StartForm (ActNewDeg);
else if (Gbl.Usrs.Me.Role.Max >= Rol_GST) else if (Gbl.Usrs.Me.Role.Max >= Rol_GST)
Act_StartForm (ActReqDeg); Frm_StartForm (ActReqDeg);
else else
Lay_ShowErrorAndExit ("You can not edit degrees."); Lay_ShowErrorAndExit ("You can not edit degrees.");
@ -1034,7 +1035,7 @@ static void Deg_PutFormToCreateDegree (void)
Box_EndBoxTableWithButton (Btn_CREATE_BUTTON,Txt_Create_degree); Box_EndBoxTableWithButton (Btn_CREATE_BUTTON,Txt_Create_degree);
/***** End form *****/ /***** End form *****/
Act_EndForm (); Frm_EndForm ();
} }
/*****************************************************************************/ /*****************************************************************************/
@ -1207,10 +1208,10 @@ static void Deg_ListDegrees (void)
/***** Button to create degree *****/ /***** Button to create degree *****/
if (Deg_CheckIfICanCreateDegrees ()) if (Deg_CheckIfICanCreateDegrees ())
{ {
Act_StartForm (ActEdiDeg); Frm_StartForm (ActEdiDeg);
Btn_PutConfirmButton (Gbl.CurrentCtr.Ctr.Degs.Num ? Txt_Create_another_degree : Btn_PutConfirmButton (Gbl.CurrentCtr.Ctr.Degs.Num ? Txt_Create_another_degree :
Txt_Create_degree); Txt_Create_degree);
Act_EndForm (); Frm_EndForm ();
} }
/***** End box *****/ /***** End box *****/

View File

@ -39,6 +39,7 @@
#include "swad_database.h" #include "swad_database.h"
#include "swad_degree.h" #include "swad_degree.h"
#include "swad_degree_type.h" #include "swad_degree_type.h"
#include "swad_form.h"
#include "swad_global.h" #include "swad_global.h"
#include "swad_parameter.h" #include "swad_parameter.h"
#include "swad_table.h" #include "swad_table.h"
@ -240,10 +241,10 @@ static void DT_ListDegreeTypes (Act_Action_t NextAction,DT_Order_t SelectedOrder
/***** Button to create degree type *****/ /***** Button to create degree type *****/
if (DT_CheckIfICanCreateDegreeTypes ()) if (DT_CheckIfICanCreateDegreeTypes ())
{ {
Act_StartForm (ActEdiDegTyp); Frm_StartForm (ActEdiDegTyp);
Btn_PutConfirmButton (Gbl.Degs.DegTypes.Num ? Txt_Create_another_type_of_degree : Btn_PutConfirmButton (Gbl.Degs.DegTypes.Num ? Txt_Create_another_type_of_degree :
Txt_Create_type_of_degree); Txt_Create_type_of_degree);
Act_EndForm (); Frm_EndForm ();
} }
/***** End box *****/ /***** End box *****/
@ -374,10 +375,10 @@ static void DT_ListDegreeTypesForEdition (void)
Ico_PutIconRemovalNotAllowed (); Ico_PutIconRemovalNotAllowed ();
else else
{ {
Act_StartForm (ActRemDegTyp); Frm_StartForm (ActRemDegTyp);
DT_PutParamOtherDegTypCod (Gbl.Degs.DegTypes.Lst[NumDegTyp].DegTypCod); DT_PutParamOtherDegTypCod (Gbl.Degs.DegTypes.Lst[NumDegTyp].DegTypCod);
Ico_PutIconRemove (); Ico_PutIconRemove ();
Act_EndForm (); Frm_EndForm ();
} }
/* Degree type code */ /* Degree type code */
@ -389,7 +390,7 @@ static void DT_ListDegreeTypesForEdition (void)
/* Name of degree type */ /* Name of degree type */
fprintf (Gbl.F.Out,"<td class=\"LEFT_MIDDLE\">"); fprintf (Gbl.F.Out,"<td class=\"LEFT_MIDDLE\">");
Act_StartForm (ActRenDegTyp); Frm_StartForm (ActRenDegTyp);
DT_PutParamOtherDegTypCod (Gbl.Degs.DegTypes.Lst[NumDegTyp].DegTypCod); DT_PutParamOtherDegTypCod (Gbl.Degs.DegTypes.Lst[NumDegTyp].DegTypCod);
fprintf (Gbl.F.Out,"<input type=\"text\" name=\"DegTypName\"" fprintf (Gbl.F.Out,"<input type=\"text\" name=\"DegTypName\""
" size=\"25\" maxlength=\"%u\" value=\"%s\"" " size=\"25\" maxlength=\"%u\" value=\"%s\""
@ -397,7 +398,7 @@ static void DT_ListDegreeTypesForEdition (void)
Deg_MAX_CHARS_DEGREE_TYPE_NAME, Deg_MAX_CHARS_DEGREE_TYPE_NAME,
Gbl.Degs.DegTypes.Lst[NumDegTyp].DegTypName, Gbl.Degs.DegTypes.Lst[NumDegTyp].DegTypName,
Gbl.Form.Id); Gbl.Form.Id);
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</td>"); fprintf (Gbl.F.Out,"</td>");
/* Number of degrees of this type */ /* Number of degrees of this type */
@ -431,7 +432,7 @@ void DT_PutFormToCreateDegreeType (void)
extern const char *Txt_Create_type_of_degree; extern const char *Txt_Create_type_of_degree;
/***** Start form *****/ /***** Start form *****/
Act_StartForm (ActNewDegTyp); Frm_StartForm (ActNewDegTyp);
/***** Start box and table *****/ /***** Start box and table *****/
Box_StartBoxTable (NULL,Txt_New_type_of_degree,NULL, Box_StartBoxTable (NULL,Txt_New_type_of_degree,NULL,
@ -465,7 +466,7 @@ void DT_PutFormToCreateDegreeType (void)
Box_EndBoxTableWithButton (Btn_CREATE_BUTTON,Txt_Create_type_of_degree); Box_EndBoxTableWithButton (Btn_CREATE_BUTTON,Txt_Create_type_of_degree);
/***** End form *****/ /***** End form *****/
Act_EndForm (); Frm_EndForm ();
} }
/*****************************************************************************/ /*****************************************************************************/
@ -489,13 +490,13 @@ static void DT_PutHeadDegreeTypesForSeeing (Act_Action_t NextAction,DT_Order_t S
"RIGHT_MIDDLE"); "RIGHT_MIDDLE");
/* Start form to change order */ /* Start form to change order */
Act_StartForm (NextAction); Frm_StartForm (NextAction);
if (NextAction == ActSeeUseGbl) if (NextAction == ActSeeUseGbl)
Sta_PutHiddenParamFigures (); Sta_PutHiddenParamFigures ();
Par_PutHiddenParamUnsigned ("Order",(unsigned) Order); Par_PutHiddenParamUnsigned ("Order",(unsigned) Order);
/* Link with the head of this column */ /* Link with the head of this column */
Act_LinkFormSubmit (Txt_DEGREE_TYPES_HELP_ORDER[Order],"TIT_TBL",NULL); Frm_LinkFormSubmit (Txt_DEGREE_TYPES_HELP_ORDER[Order],"TIT_TBL",NULL);
if (Order == SelectedOrder) if (Order == SelectedOrder)
fprintf (Gbl.F.Out,"<u>"); fprintf (Gbl.F.Out,"<u>");
fprintf (Gbl.F.Out,"%s",Txt_DEGREE_TYPES_ORDER[Order]); fprintf (Gbl.F.Out,"%s",Txt_DEGREE_TYPES_ORDER[Order]);
@ -504,7 +505,7 @@ static void DT_PutHeadDegreeTypesForSeeing (Act_Action_t NextAction,DT_Order_t S
fprintf (Gbl.F.Out,"</a>"); fprintf (Gbl.F.Out,"</a>");
/* End form */ /* End form */
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</th>"); fprintf (Gbl.F.Out,"</th>");
} }

View File

@ -36,6 +36,7 @@
#include "swad_constant.h" #include "swad_constant.h"
#include "swad_database.h" #include "swad_database.h"
#include "swad_department.h" #include "swad_department.h"
#include "swad_form.h"
#include "swad_global.h" #include "swad_global.h"
#include "swad_institution.h" #include "swad_institution.h"
#include "swad_parameter.h" #include "swad_parameter.h"
@ -115,16 +116,16 @@ void Dpt_SeeDepts (void)
Order++) Order++)
{ {
fprintf (Gbl.F.Out,"<th class=\"LEFT_MIDDLE\">"); fprintf (Gbl.F.Out,"<th class=\"LEFT_MIDDLE\">");
Act_StartForm (ActSeeDpt); Frm_StartForm (ActSeeDpt);
Par_PutHiddenParamUnsigned ("Order",(unsigned) Order); Par_PutHiddenParamUnsigned ("Order",(unsigned) Order);
Act_LinkFormSubmit (Txt_DEPARTMENTS_HELP_ORDER[Order],"TIT_TBL",NULL); Frm_LinkFormSubmit (Txt_DEPARTMENTS_HELP_ORDER[Order],"TIT_TBL",NULL);
if (Order == Gbl.Dpts.SelectedOrder) if (Order == Gbl.Dpts.SelectedOrder)
fprintf (Gbl.F.Out,"<u>"); fprintf (Gbl.F.Out,"<u>");
fprintf (Gbl.F.Out,"%s",Txt_DEPARTMENTS_ORDER[Order]); fprintf (Gbl.F.Out,"%s",Txt_DEPARTMENTS_ORDER[Order]);
if (Order == Gbl.Dpts.SelectedOrder) if (Order == Gbl.Dpts.SelectedOrder)
fprintf (Gbl.F.Out,"</u>"); fprintf (Gbl.F.Out,"</u>");
fprintf (Gbl.F.Out,"</a>"); fprintf (Gbl.F.Out,"</a>");
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</th>"); fprintf (Gbl.F.Out,"</th>");
} }
fprintf (Gbl.F.Out,"</tr>"); fprintf (Gbl.F.Out,"</tr>");
@ -491,10 +492,10 @@ static void Dpt_ListDepartmentsForEdition (void)
Ico_PutIconRemovalNotAllowed (); Ico_PutIconRemovalNotAllowed ();
else else
{ {
Act_StartForm (ActRemDpt); Frm_StartForm (ActRemDpt);
Dpt_PutParamDptCod (Dpt->DptCod); Dpt_PutParamDptCod (Dpt->DptCod);
Ico_PutIconRemove (); Ico_PutIconRemove ();
Act_EndForm (); Frm_EndForm ();
} }
fprintf (Gbl.F.Out,"</td>"); fprintf (Gbl.F.Out,"</td>");
@ -506,7 +507,7 @@ static void Dpt_ListDepartmentsForEdition (void)
/* Institution */ /* Institution */
fprintf (Gbl.F.Out,"<td class=\"CENTER_MIDDLE\">"); fprintf (Gbl.F.Out,"<td class=\"CENTER_MIDDLE\">");
Act_StartForm (ActChgDptIns); Frm_StartForm (ActChgDptIns);
Dpt_PutParamDptCod (Dpt->DptCod); Dpt_PutParamDptCod (Dpt->DptCod);
fprintf (Gbl.F.Out,"<select name=\"OthInsCod\" style=\"width:62px;\"" fprintf (Gbl.F.Out,"<select name=\"OthInsCod\" style=\"width:62px;\""
"onchange=\"document.getElementById('%s').submit();\">" "onchange=\"document.getElementById('%s').submit();\">"
@ -524,43 +525,43 @@ static void Dpt_ListDepartmentsForEdition (void)
"", "",
Gbl.Inss.Lst[NumIns].ShrtName); Gbl.Inss.Lst[NumIns].ShrtName);
fprintf (Gbl.F.Out,"</select>"); fprintf (Gbl.F.Out,"</select>");
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</td>"); fprintf (Gbl.F.Out,"</td>");
/* Department short name */ /* Department short name */
fprintf (Gbl.F.Out,"<td class=\"CENTER_MIDDLE\">"); fprintf (Gbl.F.Out,"<td class=\"CENTER_MIDDLE\">");
Act_StartForm (ActRenDptSho); Frm_StartForm (ActRenDptSho);
Dpt_PutParamDptCod (Dpt->DptCod); Dpt_PutParamDptCod (Dpt->DptCod);
fprintf (Gbl.F.Out,"<input type=\"text\" name=\"ShortName\"" fprintf (Gbl.F.Out,"<input type=\"text\" name=\"ShortName\""
" maxlength=\"%u\" value=\"%s\"" " maxlength=\"%u\" value=\"%s\""
" class=\"INPUT_SHORT_NAME\"" " class=\"INPUT_SHORT_NAME\""
" onchange=\"document.getElementById('%s').submit();\" />", " onchange=\"document.getElementById('%s').submit();\" />",
Hie_MAX_CHARS_SHRT_NAME,Dpt->ShrtName,Gbl.Form.Id); Hie_MAX_CHARS_SHRT_NAME,Dpt->ShrtName,Gbl.Form.Id);
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</td>"); fprintf (Gbl.F.Out,"</td>");
/* Department full name */ /* Department full name */
fprintf (Gbl.F.Out,"<td class=\"CENTER_MIDDLE\">"); fprintf (Gbl.F.Out,"<td class=\"CENTER_MIDDLE\">");
Act_StartForm (ActRenDptFul); Frm_StartForm (ActRenDptFul);
Dpt_PutParamDptCod (Dpt->DptCod); Dpt_PutParamDptCod (Dpt->DptCod);
fprintf (Gbl.F.Out,"<input type=\"text\" name=\"FullName\"" fprintf (Gbl.F.Out,"<input type=\"text\" name=\"FullName\""
" maxlength=\"%u\" value=\"%s\"" " maxlength=\"%u\" value=\"%s\""
" class=\"INPUT_FULL_NAME\"" " class=\"INPUT_FULL_NAME\""
" onchange=\"document.getElementById('%s').submit();\" />", " onchange=\"document.getElementById('%s').submit();\" />",
Hie_MAX_CHARS_FULL_NAME,Dpt->FullName,Gbl.Form.Id); Hie_MAX_CHARS_FULL_NAME,Dpt->FullName,Gbl.Form.Id);
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</td>"); fprintf (Gbl.F.Out,"</td>");
/* Department WWW */ /* Department WWW */
fprintf (Gbl.F.Out,"<td class=\"CENTER_MIDDLE\">"); fprintf (Gbl.F.Out,"<td class=\"CENTER_MIDDLE\">");
Act_StartForm (ActChgDptWWW); Frm_StartForm (ActChgDptWWW);
Dpt_PutParamDptCod (Dpt->DptCod); Dpt_PutParamDptCod (Dpt->DptCod);
fprintf (Gbl.F.Out,"<input type=\"url\" name=\"WWW\"" fprintf (Gbl.F.Out,"<input type=\"url\" name=\"WWW\""
" maxlength=\"%u\" value=\"%s\"" " maxlength=\"%u\" value=\"%s\""
" class=\"INPUT_WWW\"" " class=\"INPUT_WWW\""
" onchange=\"document.getElementById('%s').submit();\" />", " onchange=\"document.getElementById('%s').submit();\" />",
Cns_MAX_CHARS_WWW,Dpt->WWW,Gbl.Form.Id); Cns_MAX_CHARS_WWW,Dpt->WWW,Gbl.Form.Id);
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</td>"); fprintf (Gbl.F.Out,"</td>");
/* Number of teachers */ /* Number of teachers */
@ -865,7 +866,7 @@ static void Dpt_PutFormToCreateDepartment (void)
Dpt = &Gbl.Dpts.EditingDpt; Dpt = &Gbl.Dpts.EditingDpt;
/***** Start form *****/ /***** Start form *****/
Act_StartForm (ActNewDpt); Frm_StartForm (ActNewDpt);
/***** Start box and table *****/ /***** Start box and table *****/
Box_StartBoxTable (NULL,Txt_New_department,NULL, Box_StartBoxTable (NULL,Txt_New_department,NULL,
@ -942,7 +943,7 @@ static void Dpt_PutFormToCreateDepartment (void)
Box_EndBoxTableWithButton (Btn_CREATE_BUTTON,Txt_Create_department); Box_EndBoxTableWithButton (Btn_CREATE_BUTTON,Txt_Create_department);
/***** End form *****/ /***** End form *****/
Act_EndForm (); Frm_EndForm ();
} }
/*****************************************************************************/ /*****************************************************************************/

View File

@ -33,6 +33,7 @@
#include "swad_database.h" #include "swad_database.h"
#include "swad_duplicate.h" #include "swad_duplicate.h"
#include "swad_enrolment.h" #include "swad_enrolment.h"
#include "swad_form.h"
#include "swad_global.h" #include "swad_global.h"
#include "swad_layout.h" #include "swad_layout.h"
#include "swad_profile.h" #include "swad_profile.h"
@ -403,10 +404,10 @@ static void Dup_PutButtonToViewSimilarUsrs (const struct UsrData *UsrDat)
{ {
extern const char *Txt_Similar_users; extern const char *Txt_Similar_users;
Act_StartForm (ActLstSimUsr); Frm_StartForm (ActLstSimUsr);
Usr_PutParamUsrCodEncrypted (UsrDat->EncryptedUsrCod); Usr_PutParamUsrCodEncrypted (UsrDat->EncryptedUsrCod);
Btn_PutConfirmButtonInline (Txt_Similar_users); Btn_PutConfirmButtonInline (Txt_Similar_users);
Act_EndForm (); Frm_EndForm ();
} }
/*****************************************************************************/ /*****************************************************************************/
@ -417,11 +418,11 @@ static void Dup_PutButtonToEliminateUsrAccount (const struct UsrData *UsrDat)
{ {
extern const char *Txt_Eliminate_user_account; extern const char *Txt_Eliminate_user_account;
Act_StartForm (ActUpdOth); Frm_StartForm (ActUpdOth);
Usr_PutParamUsrCodEncrypted (UsrDat->EncryptedUsrCod); Usr_PutParamUsrCodEncrypted (UsrDat->EncryptedUsrCod);
Par_PutHiddenParamUnsigned ("RegRemAction",(unsigned) Enr_ELIMINATE_ONE_USR_FROM_PLATFORM); Par_PutHiddenParamUnsigned ("RegRemAction",(unsigned) Enr_ELIMINATE_ONE_USR_FROM_PLATFORM);
Btn_PutRemoveButtonInline (Txt_Eliminate_user_account); Btn_PutRemoveButtonInline (Txt_Eliminate_user_account);
Act_EndForm (); Frm_EndForm ();
} }
/*****************************************************************************/ /*****************************************************************************/
@ -432,10 +433,10 @@ static void Dup_PutButtonToRemoveFromListOfDupUsrs (const struct UsrData *UsrDat
{ {
extern const char *Txt_Not_duplicated; extern const char *Txt_Not_duplicated;
Act_StartForm (ActRemDupUsr); Frm_StartForm (ActRemDupUsr);
Usr_PutParamUsrCodEncrypted (UsrDat->EncryptedUsrCod); Usr_PutParamUsrCodEncrypted (UsrDat->EncryptedUsrCod);
Btn_PutConfirmButtonInline (Txt_Not_duplicated); Btn_PutConfirmButtonInline (Txt_Not_duplicated);
Act_EndForm (); Frm_EndForm ();
} }
/*****************************************************************************/ /*****************************************************************************/

View File

@ -36,6 +36,7 @@
#include "swad_database.h" #include "swad_database.h"
#include "swad_duplicate.h" #include "swad_duplicate.h"
#include "swad_enrolment.h" #include "swad_enrolment.h"
#include "swad_form.h"
#include "swad_global.h" #include "swad_global.h"
#include "swad_ID.h" #include "swad_ID.h"
#include "swad_notification.h" #include "swad_notification.h"
@ -181,10 +182,10 @@ void Enr_PutButtonInlineToRegisterStds (long CrsCod)
if (Rol_GetRoleUsrInCrs (Gbl.Usrs.Me.UsrDat.UsrCod,CrsCod) == Rol_TCH) // I am a teacher in course if (Rol_GetRoleUsrInCrs (Gbl.Usrs.Me.UsrDat.UsrCod,CrsCod) == Rol_TCH) // I am a teacher in course
if (!Usr_GetNumUsrsInCrs (Rol_STD,CrsCod)) // No students in course if (!Usr_GetNumUsrsInCrs (Rol_STD,CrsCod)) // No students in course
{ {
Act_StartForm (ActReqEnrSevStd); Frm_StartForm (ActReqEnrSevStd);
Crs_PutParamCrsCod (CrsCod); Crs_PutParamCrsCod (CrsCod);
Btn_PutCreateButtonInline (Txt_Register_students); Btn_PutCreateButtonInline (Txt_Register_students);
Act_EndForm (); Frm_EndForm ();
} }
} }
@ -356,7 +357,7 @@ void Enr_WriteFormToReqAnotherUsrID (Act_Action_t NextAction,void (*FuncParams)
extern const char *Txt_Continue; extern const char *Txt_Continue;
/***** Form to request user's ID, @nickname or email address *****/ /***** Form to request user's ID, @nickname or email address *****/
Act_StartForm (NextAction); Frm_StartForm (NextAction);
if (FuncParams) if (FuncParams)
FuncParams (); FuncParams ();
fprintf (Gbl.F.Out,"<label for=\"OtherUsrIDNickOrEMail\"" fprintf (Gbl.F.Out,"<label for=\"OtherUsrIDNickOrEMail\""
@ -372,7 +373,7 @@ void Enr_WriteFormToReqAnotherUsrID (Act_Action_t NextAction,void (*FuncParams)
/***** Send button*****/ /***** Send button*****/
Btn_PutConfirmButton (Txt_Continue); Btn_PutConfirmButton (Txt_Continue);
Act_EndForm (); Frm_EndForm ();
} }
/*****************************************************************************/ /*****************************************************************************/
@ -404,37 +405,37 @@ void Enr_ReqAcceptRegisterInCrs (void)
switch (Gbl.Usrs.Me.UsrDat.Roles.InCurrentCrs.Role) switch (Gbl.Usrs.Me.UsrDat.Roles.InCurrentCrs.Role)
{ {
case Rol_STD: case Rol_STD:
Act_StartForm (ActAccEnrStd); Frm_StartForm (ActAccEnrStd);
break; break;
case Rol_NET: case Rol_NET:
Act_StartForm (ActAccEnrNET); Frm_StartForm (ActAccEnrNET);
break; break;
case Rol_TCH: case Rol_TCH:
Act_StartForm (ActAccEnrTch); Frm_StartForm (ActAccEnrTch);
break; break;
default: default:
Lay_ShowErrorAndExit ("Wrong role."); Lay_ShowErrorAndExit ("Wrong role.");
} }
Btn_PutCreateButtonInline (Txt_Confirm_my_enrolment); Btn_PutCreateButtonInline (Txt_Confirm_my_enrolment);
Act_EndForm (); Frm_EndForm ();
/***** Send button to refuse register in the current course *****/ /***** Send button to refuse register in the current course *****/
switch (Gbl.Usrs.Me.UsrDat.Roles.InCurrentCrs.Role) switch (Gbl.Usrs.Me.UsrDat.Roles.InCurrentCrs.Role)
{ {
case Rol_STD: case Rol_STD:
Act_StartForm (ActRemMe_Std); Frm_StartForm (ActRemMe_Std);
break; break;
case Rol_NET: case Rol_NET:
Act_StartForm (ActRemMe_NET); Frm_StartForm (ActRemMe_NET);
break; break;
case Rol_TCH: case Rol_TCH:
Act_StartForm (ActRemMe_Tch); Frm_StartForm (ActRemMe_Tch);
break; break;
default: default:
Lay_ShowErrorAndExit ("Wrong role."); Lay_ShowErrorAndExit ("Wrong role.");
} }
Btn_PutRemoveButtonInline (Txt_Remove_me_from_this_course); Btn_PutRemoveButtonInline (Txt_Remove_me_from_this_course);
Act_EndForm (); Frm_EndForm ();
/***** End box *****/ /***** End box *****/
Box_EndBox (); Box_EndBox ();
@ -708,7 +709,7 @@ static void Enr_ShowFormRegRemSeveralUsrs (Rol_Role_t Role)
Lay_ShowErrorAndExit ("Wrong role."); Lay_ShowErrorAndExit ("Wrong role.");
break; break;
} }
Act_StartForm (NextAction); Frm_StartForm (NextAction);
/***** Start box *****/ /***** Start box *****/
Box_StartBox (NULL,Title,NULL, Box_StartBox (NULL,Title,NULL,
@ -767,7 +768,7 @@ static void Enr_ShowFormRegRemSeveralUsrs (Rol_Role_t Role)
Box_EndBoxWithButton (Btn_CONFIRM_BUTTON,Txt_Confirm); Box_EndBoxWithButton (Btn_CONFIRM_BUTTON,Txt_Confirm);
/***** End form *****/ /***** End form *****/
Act_EndForm (); Frm_EndForm ();
} }
/*****************************************************************************/ /*****************************************************************************/
@ -799,7 +800,7 @@ void Enr_AskRemoveOldUsrs (void)
unsigned Months; unsigned Months;
/***** Start form *****/ /***** Start form *****/
Act_StartForm (ActRemOldUsr); Frm_StartForm (ActRemOldUsr);
/***** Start box *****/ /***** Start box *****/
Box_StartBox (NULL,Txt_Eliminate_old_users,NULL, Box_StartBox (NULL,Txt_Eliminate_old_users,NULL,
@ -828,7 +829,7 @@ void Enr_AskRemoveOldUsrs (void)
Box_EndBoxWithButton (Btn_REMOVE_BUTTON,Txt_Eliminate); Box_EndBoxWithButton (Btn_REMOVE_BUTTON,Txt_Eliminate);
/***** End form *****/ /***** End form *****/
Act_EndForm (); Frm_EndForm ();
} }
/*****************************************************************************/ /*****************************************************************************/
@ -1892,11 +1893,11 @@ void Enr_AskRemAllStdsThisCrs (void)
Ale_ShowAlertAndButton1 (Ale_QUESTION,Gbl.Alert.Txt); Ale_ShowAlertAndButton1 (Ale_QUESTION,Gbl.Alert.Txt);
/* Show form to request confirmation */ /* Show form to request confirmation */
Act_StartForm (ActRemAllStdCrs); Frm_StartForm (ActRemAllStdCrs);
Grp_PutParamAllGroups (); Grp_PutParamAllGroups ();
Pwd_AskForConfirmationOnDangerousAction (); Pwd_AskForConfirmationOnDangerousAction ();
Btn_PutRemoveButton (Txt_Remove_all_students); Btn_PutRemoveButton (Txt_Remove_all_students);
Act_EndForm (); Frm_EndForm ();
/* End alert */ /* End alert */
Ale_ShowAlertAndButton2 (ActUnk,NULL,NULL,NULL,Btn_NO_BUTTON,NULL); Ale_ShowAlertAndButton2 (ActUnk,NULL,NULL,NULL,Btn_NO_BUTTON,NULL);
@ -2334,7 +2335,7 @@ static void Enr_ShowEnrolmentRequestsGivenRoles (unsigned RolesSelected)
/***** Selection of scope and roles *****/ /***** Selection of scope and roles *****/
/* Start form and table */ /* Start form and table */
Act_StartForm (ActUpdSignUpReq); Frm_StartForm (ActUpdSignUpReq);
Tbl_StartTableWideMargin (2); Tbl_StartTableWideMargin (2);
/* Scope (whole platform, current centre, current degree or current course) */ /* Scope (whole platform, current centre, current degree or current course) */
@ -2365,7 +2366,7 @@ static void Enr_ShowEnrolmentRequestsGivenRoles (unsigned RolesSelected)
/* End table and form */ /* End table and form */
Tbl_EndTable (); Tbl_EndTable ();
Act_EndForm (); Frm_EndForm ();
/***** Build query *****/ /***** Build query *****/
switch (Gbl.Scope.Current) switch (Gbl.Scope.Current)
@ -2916,16 +2917,16 @@ static void Enr_ShowEnrolmentRequestsGivenRoles (unsigned RolesSelected)
Deg.DegCod = Crs.DegCod; Deg.DegCod = Crs.DegCod;
Deg_GetDataOfDegreeByCod (&Deg); Deg_GetDataOfDegreeByCod (&Deg);
fprintf (Gbl.F.Out,"<td class=\"DAT LEFT_TOP\">"); fprintf (Gbl.F.Out,"<td class=\"DAT LEFT_TOP\">");
Act_StartFormGoTo (ActSeeCrsInf); Frm_StartFormGoTo (ActSeeCrsInf);
Crs_PutParamCrsCod (Crs.CrsCod); Crs_PutParamCrsCod (Crs.CrsCod);
snprintf (Gbl.Title,sizeof (Gbl.Title), snprintf (Gbl.Title,sizeof (Gbl.Title),
Txt_Go_to_X, Txt_Go_to_X,
Crs.FullName); Crs.FullName);
Act_LinkFormSubmit (Gbl.Title,"DAT",NULL); Frm_LinkFormSubmit (Gbl.Title,"DAT",NULL);
fprintf (Gbl.F.Out,"%s &gt; %s" fprintf (Gbl.F.Out,"%s &gt; %s"
"</a>", "</a>",
Deg.ShrtName,Crs.ShrtName); Deg.ShrtName,Crs.ShrtName);
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</td>"); fprintf (Gbl.F.Out,"</td>");
/***** Number of teachers in the course *****/ /***** Number of teachers in the course *****/
@ -2977,20 +2978,20 @@ static void Enr_ShowEnrolmentRequestsGivenRoles (unsigned RolesSelected)
Lay_ShowErrorAndExit ("Wrong role."); Lay_ShowErrorAndExit ("Wrong role.");
break; break;
} }
Act_StartForm (NextAction); Frm_StartForm (NextAction);
Crs_PutParamCrsCod (Crs.CrsCod); Crs_PutParamCrsCod (Crs.CrsCod);
Usr_PutParamUsrCodEncrypted (UsrDat.EncryptedUsrCod); Usr_PutParamUsrCodEncrypted (UsrDat.EncryptedUsrCod);
Btn_PutCreateButtonInline (Txt_Register); Btn_PutCreateButtonInline (Txt_Register);
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</td>"); fprintf (Gbl.F.Out,"</td>");
/***** Button to reject the request *****/ /***** Button to reject the request *****/
fprintf (Gbl.F.Out,"<td class=\"DAT LEFT_TOP\">"); fprintf (Gbl.F.Out,"<td class=\"DAT LEFT_TOP\">");
Act_StartForm (ActReqRejSignUp); Frm_StartForm (ActReqRejSignUp);
Crs_PutParamCrsCod (Crs.CrsCod); Crs_PutParamCrsCod (Crs.CrsCod);
Usr_PutParamUsrCodEncrypted (UsrDat.EncryptedUsrCod); Usr_PutParamUsrCodEncrypted (UsrDat.EncryptedUsrCod);
Btn_PutRemoveButtonInline (Txt_Reject); Btn_PutRemoveButtonInline (Txt_Reject);
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</td>" fprintf (Gbl.F.Out,"</td>"
"</tr>"); "</tr>");
@ -4177,12 +4178,12 @@ static void Enr_AskIfRemoveUsrFromCrs (struct UsrData *UsrDat)
Lay_ShowErrorAndExit ("Wrong role."); Lay_ShowErrorAndExit ("Wrong role.");
break; break;
} }
Act_StartForm (NextAction); Frm_StartForm (NextAction);
Usr_PutParamUsrCodEncrypted (UsrDat->EncryptedUsrCod); Usr_PutParamUsrCodEncrypted (UsrDat->EncryptedUsrCod);
Pwd_AskForConfirmationOnDangerousAction (); Pwd_AskForConfirmationOnDangerousAction ();
Btn_PutRemoveButton (ItsMe ? Txt_Remove_me_from_this_course : Btn_PutRemoveButton (ItsMe ? Txt_Remove_me_from_this_course :
Txt_Remove_user_from_this_course); Txt_Remove_user_from_this_course);
Act_EndForm (); Frm_EndForm ();
/* End alert */ /* End alert */
Ale_ShowAlertAndButton2 (ActUnk,NULL,NULL,NULL,Btn_NO_BUTTON,NULL); Ale_ShowAlertAndButton2 (ActUnk,NULL,NULL,NULL,Btn_NO_BUTTON,NULL);

View File

@ -40,6 +40,7 @@
#include "swad_config.h" #include "swad_config.h"
#include "swad_database.h" #include "swad_database.h"
#include "swad_exam.h" #include "swad_exam.h"
#include "swad_form.h"
#include "swad_global.h" #include "swad_global.h"
#include "swad_logo.h" #include "swad_logo.h"
#include "swad_notification.h" #include "swad_notification.h"
@ -720,9 +721,9 @@ static void Exa_PutButtonToCreateNewExamAnnouncement (void)
{ {
extern const char *Txt_New_announcement_OF_EXAM; extern const char *Txt_New_announcement_OF_EXAM;
Act_StartForm (ActEdiExaAnn); Frm_StartForm (ActEdiExaAnn);
Btn_PutConfirmButton (Txt_New_announcement_OF_EXAM); Btn_PutConfirmButton (Txt_New_announcement_OF_EXAM);
Act_EndForm (); Frm_EndForm ();
} }
/*****************************************************************************/ /*****************************************************************************/
@ -1064,7 +1065,7 @@ static void Exa_ShowExamAnnouncement (Exa_TypeViewExamAnnouncement_t TypeViewExa
if (TypeViewExamAnnouncement == Exa_FORM_VIEW) if (TypeViewExamAnnouncement == Exa_FORM_VIEW)
{ {
/***** Start form *****/ /***** Start form *****/
Act_StartForm (ActRcvExaAnn); Frm_StartForm (ActRcvExaAnn);
if (Gbl.ExamAnns.ExaDat.ExaCod > 0) // Existing announcement of exam if (Gbl.ExamAnns.ExaDat.ExaCod > 0) // Existing announcement of exam
Exa_PutParamExaCodToEdit (); Exa_PutParamExaCodToEdit ();
} }

View File

@ -42,6 +42,7 @@
#include "swad_config.h" #include "swad_config.h"
#include "swad_database.h" #include "swad_database.h"
#include "swad_file_browser.h" #include "swad_file_browser.h"
#include "swad_form.h"
#include "swad_global.h" #include "swad_global.h"
#include "swad_ID.h" #include "swad_ID.h"
#include "swad_logo.h" #include "swad_logo.h"
@ -3433,7 +3434,7 @@ void Brw_AskEditWorksCrs (void)
Enr_CheckStdsAndPutButtonToRegisterStdsInCurrentCrs (); Enr_CheckStdsAndPutButtonToRegisterStdsInCurrentCrs ();
/* Start form */ /* Start form */
Act_StartForm (ActAdmAsgWrkCrs); Frm_StartForm (ActAdmAsgWrkCrs);
Grp_PutParamsCodGrps (); Grp_PutParamsCodGrps ();
Gbl.FileBrowser.FullTree = true; // By default, show all files Gbl.FileBrowser.FullTree = true; // By default, show all files
Brw_PutHiddenParamFullTreeIfSelected (); Brw_PutHiddenParamFullTreeIfSelected ();
@ -3449,7 +3450,7 @@ void Brw_AskEditWorksCrs (void)
Btn_PutConfirmButton (Txt_View_homework); Btn_PutConfirmButton (Txt_View_homework);
/* End form */ /* End form */
Act_EndForm (); Frm_EndForm ();
} }
} }
else // NumTotalUsrs == 0 else // NumTotalUsrs == 0
@ -3664,7 +3665,7 @@ static void Brw_FormToChangeCrsGrpZone (void)
Grp_GetLstCodGrpsWithFileZonesIBelong (&LstMyGrps); Grp_GetLstCodGrpsWithFileZonesIBelong (&LstMyGrps);
/***** Start form *****/ /***** Start form *****/
Act_StartForm (Brw_ActChgZone[Gbl.FileBrowser.Type]); Frm_StartForm (Brw_ActChgZone[Gbl.FileBrowser.Type]);
Brw_PutHiddenParamFullTreeIfSelected (); Brw_PutHiddenParamFullTreeIfSelected ();
/***** List start *****/ /***** List start *****/
@ -3727,7 +3728,7 @@ static void Brw_FormToChangeCrsGrpZone (void)
/***** End list and form *****/ /***** End list and form *****/
fprintf (Gbl.F.Out,"</ul>"); fprintf (Gbl.F.Out,"</ul>");
Act_EndForm (); Frm_EndForm ();
} }
/*****************************************************************************/ /*****************************************************************************/
@ -3796,7 +3797,7 @@ static void Brw_ShowDataOwnerAsgWrk (struct UsrData *UsrDat)
Lay_ShowErrorAndExit ("Wrong role."); Lay_ShowErrorAndExit ("Wrong role.");
break; break;
} }
Act_StartForm (NextAction); Frm_StartForm (NextAction);
Usr_PutParamUsrCodEncrypted (UsrDat->EncryptedUsrCod); Usr_PutParamUsrCodEncrypted (UsrDat->EncryptedUsrCod);
/***** Show user's ID *****/ /***** Show user's ID *****/
@ -3804,7 +3805,7 @@ static void Brw_ShowDataOwnerAsgWrk (struct UsrData *UsrDat)
/***** Show user's name *****/ /***** Show user's name *****/
fprintf (Gbl.F.Out,"<br />"); fprintf (Gbl.F.Out,"<br />");
Act_LinkFormSubmit (Txt_View_record_for_this_course,"AUTHOR_TXT",NULL); Frm_LinkFormSubmit (Txt_View_record_for_this_course,"AUTHOR_TXT",NULL);
fprintf (Gbl.F.Out,"%s",UsrDat->Surname1); fprintf (Gbl.F.Out,"%s",UsrDat->Surname1);
if (UsrDat->Surname2[0]) if (UsrDat->Surname2[0])
fprintf (Gbl.F.Out," %s",UsrDat->Surname2); fprintf (Gbl.F.Out," %s",UsrDat->Surname2);
@ -3818,7 +3819,7 @@ static void Brw_ShowDataOwnerAsgWrk (struct UsrData *UsrDat)
"<a href=\"mailto:%s\" target=\"_blank\"" "<a href=\"mailto:%s\" target=\"_blank\""
" class=\"AUTHOR_TXT\">%s</a>", " class=\"AUTHOR_TXT\">%s</a>",
UsrDat->Email,UsrDat->Email); UsrDat->Email,UsrDat->Email);
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</div>"); fprintf (Gbl.F.Out,"</div>");
@ -4138,19 +4139,19 @@ static void Brw_PutButtonToShowEdit (void)
case Brw_ICON_VIEW: case Brw_ICON_VIEW:
if (Brw_ActFromAdmToSee[Gbl.FileBrowser.Type] != ActUnk) if (Brw_ActFromAdmToSee[Gbl.FileBrowser.Type] != ActUnk)
{ {
Act_StartForm (Brw_ActFromAdmToSee[Gbl.FileBrowser.Type]); Frm_StartForm (Brw_ActFromAdmToSee[Gbl.FileBrowser.Type]);
Brw_PutHiddenParamFullTreeIfSelected (); Brw_PutHiddenParamFullTreeIfSelected ();
Btn_PutConfirmButton (Txt_View); Btn_PutConfirmButton (Txt_View);
Act_EndForm (); Frm_EndForm ();
} }
break; break;
case Brw_ICON_EDIT: case Brw_ICON_EDIT:
if (Brw_ActFromSeeToAdm[Gbl.FileBrowser.Type] != ActUnk) if (Brw_ActFromSeeToAdm[Gbl.FileBrowser.Type] != ActUnk)
{ {
Act_StartForm (Brw_ActFromSeeToAdm[Gbl.FileBrowser.Type]); Frm_StartForm (Brw_ActFromSeeToAdm[Gbl.FileBrowser.Type]);
Brw_PutHiddenParamFullTreeIfSelected (); Brw_PutHiddenParamFullTreeIfSelected ();
Btn_PutConfirmButton (Txt_Edit); Btn_PutConfirmButton (Txt_Edit);
Act_EndForm (); Frm_EndForm ();
} }
break; break;
} }
@ -6068,15 +6069,21 @@ static bool Brw_WriteRowFileBrowser (unsigned Level,const char *RowId,
// then Gbl.FileBrowser.Priv.FullPathInTree will be "descarga/teoria/tema1.pdf" // then Gbl.FileBrowser.Priv.FullPathInTree will be "descarga/teoria/tema1.pdf"
// If FilFolLnkName is ".", then Gbl.FileBrowser.Priv.FullPathInTree will be equal to PathInTreeUntilFileOrFolder // If FilFolLnkName is ".", then Gbl.FileBrowser.Priv.FullPathInTree will be equal to PathInTreeUntilFileOrFolder
void Brw_SetFullPathInTree (const char *PathInTreeUntilFileOrFolder,const char *FilFolLnkName) void Brw_SetFullPathInTree (const char PathInTreeUntilFileOrFolder[PATH_MAX + 1],
const char FilFolLnkName[NAME_MAX + 1])
{ {
char FullPath[PATH_MAX + 1 + NAME_MAX + 1];
if (!PathInTreeUntilFileOrFolder[0]) if (!PathInTreeUntilFileOrFolder[0])
Gbl.FileBrowser.Priv.FullPathInTree[0] = '\0'; Gbl.FileBrowser.Priv.FullPathInTree[0] = '\0';
else if (strcmp (FilFolLnkName,".")) else if (strcmp (FilFolLnkName,"."))
snprintf (Gbl.FileBrowser.Priv.FullPathInTree, {
sizeof (Gbl.FileBrowser.Priv.FullPathInTree), snprintf (FullPath,sizeof (FullPath),
"%s/%s", "%s/%s",
PathInTreeUntilFileOrFolder,FilFolLnkName); PathInTreeUntilFileOrFolder,FilFolLnkName);
Str_Copy (Gbl.FileBrowser.Priv.FullPathInTree,FullPath,
PATH_MAX);
}
else // It's the root folder else // It's the root folder
Str_Copy (Gbl.FileBrowser.Priv.FullPathInTree,PathInTreeUntilFileOrFolder, Str_Copy (Gbl.FileBrowser.Priv.FullPathInTree,PathInTreeUntilFileOrFolder,
PATH_MAX); PATH_MAX);
@ -6188,7 +6195,7 @@ static void Brw_PutIconRemoveFile (const char PathInTree[PATH_MAX + 1],
if (Gbl.FileBrowser.ICanEditFileOrFolder) // Can I remove this file? if (Gbl.FileBrowser.ICanEditFileOrFolder) // Can I remove this file?
{ {
/***** Form to remove a file *****/ /***** Form to remove a file *****/
Act_StartForm (Brw_ActAskRemoveFile[Gbl.FileBrowser.Type]); Frm_StartForm (Brw_ActAskRemoveFile[Gbl.FileBrowser.Type]);
Brw_PutParamsFileBrowser (Brw_ActAskRemoveFile[Gbl.FileBrowser.Type], Brw_PutParamsFileBrowser (Brw_ActAskRemoveFile[Gbl.FileBrowser.Type],
PathInTree,FileName, PathInTree,FileName,
Gbl.FileBrowser.FileType,-1L); Gbl.FileBrowser.FileType,-1L);
@ -6201,7 +6208,7 @@ static void Brw_PutIconRemoveFile (const char PathInTree[PATH_MAX + 1],
Gbl.Prefs.IconsURL, Gbl.Prefs.IconsURL,
Gbl.Title, Gbl.Title,
Gbl.Title); Gbl.Title);
Act_EndForm (); Frm_EndForm ();
} }
else else
// Ico_PutIconBRemovalNotAllowed (); // Ico_PutIconBRemovalNotAllowed ();
@ -6223,7 +6230,7 @@ static void Brw_PutIconRemoveDir (const char PathInTree[PATH_MAX + 1],
if (Gbl.FileBrowser.ICanEditFileOrFolder) // Can I remove this folder? if (Gbl.FileBrowser.ICanEditFileOrFolder) // Can I remove this folder?
{ {
/***** Form to remove a folder *****/ /***** Form to remove a folder *****/
Act_StartForm (Brw_ActRemoveFolder[Gbl.FileBrowser.Type]); Frm_StartForm (Brw_ActRemoveFolder[Gbl.FileBrowser.Type]);
Brw_PutParamsFileBrowser (Brw_ActRemoveFolder[Gbl.FileBrowser.Type], Brw_PutParamsFileBrowser (Brw_ActRemoveFolder[Gbl.FileBrowser.Type],
PathInTree,FileName, PathInTree,FileName,
Brw_IS_FOLDER,-1L); Brw_IS_FOLDER,-1L);
@ -6236,7 +6243,7 @@ static void Brw_PutIconRemoveDir (const char PathInTree[PATH_MAX + 1],
Gbl.Prefs.IconsURL, Gbl.Prefs.IconsURL,
Gbl.Title, Gbl.Title,
Gbl.Title); Gbl.Title);
Act_EndForm (); Frm_EndForm ();
} }
else else
// Ico_PutIconBRemovalNotAllowed (); // Ico_PutIconBRemovalNotAllowed ();
@ -6256,7 +6263,7 @@ static void Brw_PutIconCopy (const char PathInTree[PATH_MAX + 1],
fprintf (Gbl.F.Out,"<td class=\"BM%u\">",Gbl.RowEvenOdd); fprintf (Gbl.F.Out,"<td class=\"BM%u\">",Gbl.RowEvenOdd);
/***** Form to copy into the clipboard *****/ /***** Form to copy into the clipboard *****/
Act_StartForm (Brw_ActCopy[Gbl.FileBrowser.Type]); Frm_StartForm (Brw_ActCopy[Gbl.FileBrowser.Type]);
Brw_PutParamsFileBrowser (Brw_ActCopy[Gbl.FileBrowser.Type], Brw_PutParamsFileBrowser (Brw_ActCopy[Gbl.FileBrowser.Type],
PathInTree,FileName, PathInTree,FileName,
Gbl.FileBrowser.FileType,-1L); Gbl.FileBrowser.FileType,-1L);
@ -6269,7 +6276,7 @@ static void Brw_PutIconCopy (const char PathInTree[PATH_MAX + 1],
Gbl.Prefs.IconsURL, Gbl.Prefs.IconsURL,
Gbl.Title, Gbl.Title,
Gbl.Title); Gbl.Title);
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</td>"); fprintf (Gbl.F.Out,"</td>");
} }
@ -6286,7 +6293,7 @@ static void Brw_PutIconPasteOn (const char PathInTree[PATH_MAX + 1],
fprintf (Gbl.F.Out,"<td class=\"BM%u\">",Gbl.RowEvenOdd); fprintf (Gbl.F.Out,"<td class=\"BM%u\">",Gbl.RowEvenOdd);
/***** Form to paste the content of the clipboard *****/ /***** Form to paste the content of the clipboard *****/
Act_StartForm (Brw_ActPaste[Gbl.FileBrowser.Type]); Frm_StartForm (Brw_ActPaste[Gbl.FileBrowser.Type]);
Brw_PutParamsFileBrowser (Brw_ActPaste[Gbl.FileBrowser.Type], Brw_PutParamsFileBrowser (Brw_ActPaste[Gbl.FileBrowser.Type],
PathInTree,FileName, PathInTree,FileName,
Brw_IS_FOLDER,-1L); Brw_IS_FOLDER,-1L);
@ -6299,7 +6306,7 @@ static void Brw_PutIconPasteOn (const char PathInTree[PATH_MAX + 1],
Gbl.Prefs.IconsURL, Gbl.Prefs.IconsURL,
Gbl.Title, Gbl.Title,
Gbl.Title); Gbl.Title);
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</td>"); fprintf (Gbl.F.Out,"</td>");
} }
@ -6420,7 +6427,7 @@ static void Brw_PutIconToExpandFolder (const char *FileBrowserId,const char *Row
snprintf (JavaScriptFuncToExpandFolder,sizeof (JavaScriptFuncToExpandFolder), snprintf (JavaScriptFuncToExpandFolder,sizeof (JavaScriptFuncToExpandFolder),
"ExpandFolder('%s_%s')", "ExpandFolder('%s_%s')",
FileBrowserId,RowId); FileBrowserId,RowId);
Act_StartFormAnchorOnSubmit (Brw_ActExpandFolder[Gbl.FileBrowser.Type], Frm_StartFormAnchorOnSubmit (Brw_ActExpandFolder[Gbl.FileBrowser.Type],
FileBrowserId, FileBrowserId,
JavaScriptFuncToExpandFolder); // JavaScript function to unhide rows JavaScriptFuncToExpandFolder); // JavaScript function to unhide rows
Brw_PutParamsFileBrowser (Brw_ActExpandFolder[Gbl.FileBrowser.Type], Brw_PutParamsFileBrowser (Brw_ActExpandFolder[Gbl.FileBrowser.Type],
@ -6435,7 +6442,7 @@ static void Brw_PutIconToExpandFolder (const char *FileBrowserId,const char *Row
Gbl.Prefs.IconsURL, Gbl.Prefs.IconsURL,
Gbl.Title, Gbl.Title,
Gbl.Title); Gbl.Title);
Act_EndForm (); Frm_EndForm ();
/***** End container *****/ /***** End container *****/
fprintf (Gbl.F.Out,"</div>"); fprintf (Gbl.F.Out,"</div>");
@ -6465,7 +6472,7 @@ static void Brw_PutIconToContractFolder (const char *FileBrowserId,const char *R
snprintf (JavaScriptFuncToContractFolder,sizeof (JavaScriptFuncToContractFolder), snprintf (JavaScriptFuncToContractFolder,sizeof (JavaScriptFuncToContractFolder),
"ContractFolder('%s_%s')", "ContractFolder('%s_%s')",
FileBrowserId,RowId); FileBrowserId,RowId);
Act_StartFormAnchorOnSubmit (Brw_ActContractFolder[Gbl.FileBrowser.Type], Frm_StartFormAnchorOnSubmit (Brw_ActContractFolder[Gbl.FileBrowser.Type],
FileBrowserId, FileBrowserId,
JavaScriptFuncToContractFolder); // JavaScript function to hide rows JavaScriptFuncToContractFolder); // JavaScript function to hide rows
Brw_PutParamsFileBrowser (Brw_ActContractFolder[Gbl.FileBrowser.Type], Brw_PutParamsFileBrowser (Brw_ActContractFolder[Gbl.FileBrowser.Type],
@ -6480,7 +6487,7 @@ static void Brw_PutIconToContractFolder (const char *FileBrowserId,const char *R
Gbl.Prefs.IconsURL, Gbl.Prefs.IconsURL,
Gbl.Title, Gbl.Title,
Gbl.Title); Gbl.Title);
Act_EndForm (); Frm_EndForm ();
/***** End container *****/ /***** End container *****/
fprintf (Gbl.F.Out,"</div>"); fprintf (Gbl.F.Out,"</div>");
@ -6495,7 +6502,7 @@ static void Brw_PutIconShow (unsigned Level,const char *PathInTree,const char *F
extern const char *Txt_Show_FOLDER_FILE_OR_LINK_X; extern const char *Txt_Show_FOLDER_FILE_OR_LINK_X;
fprintf (Gbl.F.Out,"<td class=\"BM%u\">",Gbl.RowEvenOdd); fprintf (Gbl.F.Out,"<td class=\"BM%u\">",Gbl.RowEvenOdd);
Act_StartForm (Brw_ActShow[Gbl.FileBrowser.Type]); Frm_StartForm (Brw_ActShow[Gbl.FileBrowser.Type]);
Brw_PutParamsFileBrowser (ActUnk, Brw_PutParamsFileBrowser (ActUnk,
PathInTree,FileName, PathInTree,FileName,
Gbl.FileBrowser.FileType,-1L); Gbl.FileBrowser.FileType,-1L);
@ -6510,7 +6517,7 @@ static void Brw_PutIconShow (unsigned Level,const char *PathInTree,const char *F
"on", "on",
Gbl.Title, Gbl.Title,
Gbl.Title); Gbl.Title);
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</td>"); fprintf (Gbl.F.Out,"</td>");
} }
@ -6523,7 +6530,7 @@ static void Brw_PutIconHide (unsigned Level,const char *PathInTree,const char *F
extern const char *Txt_Hide_FOLDER_FILE_OR_LINK_X; extern const char *Txt_Hide_FOLDER_FILE_OR_LINK_X;
fprintf (Gbl.F.Out,"<td class=\"BM%u\">",Gbl.RowEvenOdd); fprintf (Gbl.F.Out,"<td class=\"BM%u\">",Gbl.RowEvenOdd);
Act_StartForm (Brw_ActHide[Gbl.FileBrowser.Type]); Frm_StartForm (Brw_ActHide[Gbl.FileBrowser.Type]);
Brw_PutParamsFileBrowser (ActUnk, Brw_PutParamsFileBrowser (ActUnk,
PathInTree,FileName, PathInTree,FileName,
Gbl.FileBrowser.FileType,-1L); Gbl.FileBrowser.FileType,-1L);
@ -6538,7 +6545,7 @@ static void Brw_PutIconHide (unsigned Level,const char *PathInTree,const char *F
"on", "on",
Gbl.Title, Gbl.Title,
Gbl.Title); Gbl.Title);
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</td>"); fprintf (Gbl.F.Out,"</td>");
} }
@ -6694,7 +6701,7 @@ static void Brw_PutIconFolderWithPlus (const char *FileBrowserId,const char *Row
fprintf (Gbl.F.Out,">"); fprintf (Gbl.F.Out,">");
/***** Form and icon *****/ /***** Form and icon *****/
Act_StartForm (Brw_ActFormCreate[Gbl.FileBrowser.Type]); Frm_StartForm (Brw_ActFormCreate[Gbl.FileBrowser.Type]);
Brw_PutParamsFileBrowser (Brw_ActFormCreate[Gbl.FileBrowser.Type], Brw_PutParamsFileBrowser (Brw_ActFormCreate[Gbl.FileBrowser.Type],
PathInTree,FileName, PathInTree,FileName,
Brw_IS_FOLDER,-1L); Brw_IS_FOLDER,-1L);
@ -6710,7 +6717,7 @@ static void Brw_PutIconFolderWithPlus (const char *FileBrowserId,const char *Row
"closed", "closed",
Gbl.Title, Gbl.Title,
Gbl.Title); Gbl.Title);
Act_EndForm (); Frm_EndForm ();
/***** End container *****/ /***** End container *****/
fprintf (Gbl.F.Out,"</div>"); fprintf (Gbl.F.Out,"</div>");
@ -6746,7 +6753,7 @@ static void Brw_PutIconFileWithLinkToViewMetadata (unsigned Size,
{ {
extern const char *Txt_View_data_of_FILE_OR_LINK_X; extern const char *Txt_View_data_of_FILE_OR_LINK_X;
Act_StartForm (Brw_ActReqDatFile[Gbl.FileBrowser.Type]); Frm_StartForm (Brw_ActReqDatFile[Gbl.FileBrowser.Type]);
Brw_PutParamsFileBrowser (Brw_ActReqDatFile[Gbl.FileBrowser.Type], Brw_PutParamsFileBrowser (Brw_ActReqDatFile[Gbl.FileBrowser.Type],
NULL,NULL, NULL,NULL,
Brw_IS_UNKNOWN, // Not used Brw_IS_UNKNOWN, // Not used
@ -6758,14 +6765,14 @@ static void Brw_PutIconFileWithLinkToViewMetadata (unsigned Size,
FileNameToShow); FileNameToShow);
/* Link to the form and to the file */ /* Link to the form and to the file */
Act_LinkFormSubmit (Gbl.Title,Gbl.FileBrowser.TxtStyle,NULL); Frm_LinkFormSubmit (Gbl.Title,Gbl.FileBrowser.TxtStyle,NULL);
/***** Icon depending on the file extension *****/ /***** Icon depending on the file extension *****/
Brw_PutIconFile (Size,FileMetadata->FileType,FileMetadata->FilFolLnkName); Brw_PutIconFile (Size,FileMetadata->FileType,FileMetadata->FilFolLnkName);
/* End link and form */ /* End link and form */
fprintf (Gbl.F.Out,"</a>"); fprintf (Gbl.F.Out,"</a>");
Act_EndForm (); Frm_EndForm ();
} }
/*****************************************************************************/ /*****************************************************************************/
@ -6835,7 +6842,7 @@ static void Brw_WriteFileName (unsigned Level,bool IsPublic,
/***** Form to rename folder *****/ /***** Form to rename folder *****/
if (Gbl.FileBrowser.ICanEditFileOrFolder) // Can I rename this folder? if (Gbl.FileBrowser.ICanEditFileOrFolder) // Can I rename this folder?
{ {
Act_StartForm (Brw_ActRenameFolder[Gbl.FileBrowser.Type]); Frm_StartForm (Brw_ActRenameFolder[Gbl.FileBrowser.Type]);
Brw_PutParamsFileBrowser (Brw_ActRenameFolder[Gbl.FileBrowser.Type], Brw_PutParamsFileBrowser (Brw_ActRenameFolder[Gbl.FileBrowser.Type],
PathInTree,FileName, PathInTree,FileName,
Brw_IS_FOLDER,-1L); Brw_IS_FOLDER,-1L);
@ -6854,7 +6861,7 @@ static void Brw_WriteFileName (unsigned Level,bool IsPublic,
Gbl.FileBrowser.Clipboard.IsThisFile ? "LIGHT_GREEN" : Gbl.FileBrowser.Clipboard.IsThisFile ? "LIGHT_GREEN" :
Gbl.ColorRows[Gbl.RowEvenOdd], Gbl.ColorRows[Gbl.RowEvenOdd],
Gbl.Form.Id); Gbl.Form.Id);
Act_EndForm (); Frm_EndForm ();
} }
else else
{ {
@ -6885,7 +6892,7 @@ static void Brw_WriteFileName (unsigned Level,bool IsPublic,
fprintf (Gbl.F.Out,"<div class=\"FILENAME\">"); fprintf (Gbl.F.Out,"<div class=\"FILENAME\">");
Act_StartForm (Brw_ActDowFile[Gbl.FileBrowser.Type]); Frm_StartForm (Brw_ActDowFile[Gbl.FileBrowser.Type]);
Brw_PutParamsFileBrowser (Brw_ActDowFile[Gbl.FileBrowser.Type], Brw_PutParamsFileBrowser (Brw_ActDowFile[Gbl.FileBrowser.Type],
PathInTree,FileName, PathInTree,FileName,
Gbl.FileBrowser.FileType,-1L); Gbl.FileBrowser.FileType,-1L);
@ -6896,10 +6903,10 @@ static void Brw_WriteFileName (unsigned Level,bool IsPublic,
Gbl.FileBrowser.Type == Brw_SHOW_MRK_GRP) ? Txt_Check_marks_in_file_X : Gbl.FileBrowser.Type == Brw_SHOW_MRK_GRP) ? Txt_Check_marks_in_file_X :
Txt_Download_FILE_OR_LINK_X, Txt_Download_FILE_OR_LINK_X,
FileNameToShow); FileNameToShow);
Act_LinkFormSubmit (Gbl.Title,Gbl.FileBrowser.TxtStyle,NULL); Frm_LinkFormSubmit (Gbl.Title,Gbl.FileBrowser.TxtStyle,NULL);
fprintf (Gbl.F.Out,"%s</a>", fprintf (Gbl.F.Out,"%s</a>",
FileNameToShow); FileNameToShow);
Act_EndForm (); Frm_EndForm ();
/* Put icon to make public/private file */ /* Put icon to make public/private file */
if (IsPublic) if (IsPublic)
@ -8970,7 +8977,7 @@ static void Brw_PutFormToCreateAFolder (const char FileNameToShow[NAME_MAX + 1])
extern const char *Txt_Folder; extern const char *Txt_Folder;
/***** Start form *****/ /***** Start form *****/
Act_StartForm (Brw_ActCreateFolder[Gbl.FileBrowser.Type]); Frm_StartForm (Brw_ActCreateFolder[Gbl.FileBrowser.Type]);
Brw_PutParamsFileBrowser (Brw_ActCreateFolder[Gbl.FileBrowser.Type], Brw_PutParamsFileBrowser (Brw_ActCreateFolder[Gbl.FileBrowser.Type],
Gbl.FileBrowser.Priv.PathInTreeUntilFilFolLnk, Gbl.FileBrowser.Priv.PathInTreeUntilFilFolLnk,
Gbl.FileBrowser.FilFolLnkName, Gbl.FileBrowser.FilFolLnkName,
@ -8998,7 +9005,7 @@ static void Brw_PutFormToCreateAFolder (const char FileNameToShow[NAME_MAX + 1])
Box_EndBoxWithButton (Btn_CREATE_BUTTON,Txt_Create_folder); Box_EndBoxWithButton (Btn_CREATE_BUTTON,Txt_Create_folder);
/***** End form *****/ /***** End form *****/
Act_EndForm (); Frm_EndForm ();
} }
/*****************************************************************************/ /*****************************************************************************/
@ -9050,7 +9057,7 @@ static void Brw_PutFormToUploadFilesUsingDropzone (const char *FileNameToShow)
Txt_Select_one_or_more_files_from_your_computer_or_drag_and_drop_here); Txt_Select_one_or_more_files_from_your_computer_or_drag_and_drop_here);
/***** Put button to refresh file browser after upload *****/ /***** Put button to refresh file browser after upload *****/
Act_StartForm (Brw_ActRefreshAfterUploadFiles[Gbl.FileBrowser.Type]); Frm_StartForm (Brw_ActRefreshAfterUploadFiles[Gbl.FileBrowser.Type]);
Brw_PutParamsFileBrowser (Brw_ActRefreshAfterUploadFiles[Gbl.FileBrowser.Type], Brw_PutParamsFileBrowser (Brw_ActRefreshAfterUploadFiles[Gbl.FileBrowser.Type],
NULL,NULL, NULL,NULL,
Brw_IS_UNKNOWN, // Not used Brw_IS_UNKNOWN, // Not used
@ -9060,7 +9067,7 @@ static void Brw_PutFormToUploadFilesUsingDropzone (const char *FileNameToShow)
Btn_PutConfirmButton (Txt_Done); Btn_PutConfirmButton (Txt_Done);
/***** End form *****/ /***** End form *****/
Act_EndForm (); Frm_EndForm ();
/***** End box *****/ /***** End box *****/
Box_EndBox (); Box_EndBox ();
@ -9088,7 +9095,7 @@ static void Brw_PutFormToUploadOneFileClassic (const char *FileNameToShow)
Ale_ShowAlert (Ale_INFO,Gbl.Alert.Txt); Ale_ShowAlert (Ale_INFO,Gbl.Alert.Txt);
/***** Form to upload one files using the classic way *****/ /***** Form to upload one files using the classic way *****/
Act_StartForm (Brw_ActUploadFileClassic[Gbl.FileBrowser.Type]); Frm_StartForm (Brw_ActUploadFileClassic[Gbl.FileBrowser.Type]);
Brw_PutParamsFileBrowser (Brw_ActUploadFileClassic[Gbl.FileBrowser.Type], Brw_PutParamsFileBrowser (Brw_ActUploadFileClassic[Gbl.FileBrowser.Type],
Gbl.FileBrowser.Priv.PathInTreeUntilFilFolLnk, Gbl.FileBrowser.Priv.PathInTreeUntilFilFolLnk,
Gbl.FileBrowser.FilFolLnkName, Gbl.FileBrowser.FilFolLnkName,
@ -9098,7 +9105,7 @@ static void Brw_PutFormToUploadOneFileClassic (const char *FileNameToShow)
/* Button to send */ /* Button to send */
Btn_PutCreateButton (Txt_Upload_file); Btn_PutCreateButton (Txt_Upload_file);
Act_EndForm (); Frm_EndForm ();
/***** End box *****/ /***** End box *****/
Box_EndBox (); Box_EndBox ();
@ -9115,7 +9122,7 @@ static void Brw_PutFormToPasteAFileOrFolder (const char *FileNameToShow)
extern const char *Txt_or_you_can_make_a_file_copy_to_the_folder_X; extern const char *Txt_or_you_can_make_a_file_copy_to_the_folder_X;
/***** Start form *****/ /***** Start form *****/
Act_StartForm (Brw_ActPaste[Gbl.FileBrowser.Type]); Frm_StartForm (Brw_ActPaste[Gbl.FileBrowser.Type]);
Brw_PutParamsFileBrowser (Brw_ActPaste[Gbl.FileBrowser.Type], Brw_PutParamsFileBrowser (Brw_ActPaste[Gbl.FileBrowser.Type],
Gbl.FileBrowser.Priv.PathInTreeUntilFilFolLnk, Gbl.FileBrowser.Priv.PathInTreeUntilFilFolLnk,
Gbl.FileBrowser.FilFolLnkName, Gbl.FileBrowser.FilFolLnkName,
@ -9135,7 +9142,7 @@ static void Brw_PutFormToPasteAFileOrFolder (const char *FileNameToShow)
Box_EndBoxWithButton (Btn_CREATE_BUTTON,Txt_Paste); Box_EndBoxWithButton (Btn_CREATE_BUTTON,Txt_Paste);
/***** End form *****/ /***** End form *****/
Act_EndForm (); Frm_EndForm ();
} }
/*****************************************************************************/ /*****************************************************************************/
@ -9152,7 +9159,7 @@ static void Brw_PutFormToCreateALink (const char *FileNameToShow)
extern const char *Txt_optional; extern const char *Txt_optional;
/***** Start form *****/ /***** Start form *****/
Act_StartForm (Brw_ActCreateLink[Gbl.FileBrowser.Type]); Frm_StartForm (Brw_ActCreateLink[Gbl.FileBrowser.Type]);
Brw_PutParamsFileBrowser (Brw_ActCreateLink[Gbl.FileBrowser.Type], Brw_PutParamsFileBrowser (Brw_ActCreateLink[Gbl.FileBrowser.Type],
Gbl.FileBrowser.Priv.PathInTreeUntilFilFolLnk, Gbl.FileBrowser.Priv.PathInTreeUntilFilFolLnk,
Gbl.FileBrowser.FilFolLnkName, Gbl.FileBrowser.FilFolLnkName,
@ -9207,7 +9214,7 @@ static void Brw_PutFormToCreateALink (const char *FileNameToShow)
Box_EndBoxWithButton (Btn_CREATE_BUTTON,Txt_Create_link); Box_EndBoxWithButton (Btn_CREATE_BUTTON,Txt_Create_link);
/***** End form *****/ /***** End form *****/
Act_EndForm (); Frm_EndForm ();
} }
/*****************************************************************************/ /*****************************************************************************/
@ -10234,7 +10241,7 @@ void Brw_ShowFileMetadata (void)
break; break;
} }
Act_StartForm (Brw_ActRecDatFile[Gbl.FileBrowser.Type]); Frm_StartForm (Brw_ActRecDatFile[Gbl.FileBrowser.Type]);
Brw_PutParamsFileBrowser (Brw_ActRecDatFile[Gbl.FileBrowser.Type], Brw_PutParamsFileBrowser (Brw_ActRecDatFile[Gbl.FileBrowser.Type],
FileMetadata.PathInTreeUntilFilFolLnk, FileMetadata.PathInTreeUntilFilFolLnk,
FileMetadata.FilFolLnkName, FileMetadata.FilFolLnkName,
@ -10429,7 +10436,7 @@ void Brw_ShowFileMetadata (void)
Box_EndBoxTableWithButton (Btn_CONFIRM_BUTTON,Txt_Save_file_properties); Box_EndBoxTableWithButton (Btn_CONFIRM_BUTTON,Txt_Save_file_properties);
/* End form */ /* End form */
Act_EndForm (); Frm_EndForm ();
} }
else else
/* End table and box */ /* End table and box */
@ -10751,7 +10758,7 @@ static void Brw_WriteBigLinkToDownloadFile (const char *URL,
Gbl.FileBrowser.Type == Brw_SHOW_MRK_GRP) Gbl.FileBrowser.Type == Brw_SHOW_MRK_GRP)
{ {
/* Form to see marks */ /* Form to see marks */
Act_StartForm (Gbl.FileBrowser.Type == Brw_SHOW_MRK_CRS ? ActSeeMyMrkCrs : Frm_StartForm (Gbl.FileBrowser.Type == Brw_SHOW_MRK_CRS ? ActSeeMyMrkCrs :
ActSeeMyMrkGrp); ActSeeMyMrkGrp);
Brw_PutParamsFileBrowser (ActUnk, Brw_PutParamsFileBrowser (ActUnk,
FileMetadata->PathInTreeUntilFilFolLnk, FileMetadata->PathInTreeUntilFilFolLnk,
@ -10762,7 +10769,7 @@ static void Brw_WriteBigLinkToDownloadFile (const char *URL,
snprintf (Gbl.Title,sizeof (Gbl.Title), snprintf (Gbl.Title,sizeof (Gbl.Title),
Txt_Check_marks_in_file_X, Txt_Check_marks_in_file_X,
FileNameToShow); FileNameToShow);
Act_LinkFormSubmit (Gbl.Title,"FILENAME_TXT",NULL); Frm_LinkFormSubmit (Gbl.Title,"FILENAME_TXT",NULL);
Brw_PutIconFile (32,FileMetadata->FileType,FileMetadata->FilFolLnkName); Brw_PutIconFile (32,FileMetadata->FileType,FileMetadata->FilFolLnkName);
/* Name of the file of marks, link end and form end */ /* Name of the file of marks, link end and form end */
@ -10773,7 +10780,7 @@ static void Brw_WriteBigLinkToDownloadFile (const char *URL,
"</a>", "</a>",
FileNameToShow,Gbl.Prefs.IconsURL, FileNameToShow,Gbl.Prefs.IconsURL,
Gbl.Title,Gbl.Title); Gbl.Title,Gbl.Title);
Act_EndForm (); Frm_EndForm ();
} }
else else
{ {
@ -10809,7 +10816,7 @@ static void Brw_WriteSmallLinkToDownloadFile (const char *URL,Brw_FileType_t Fil
Gbl.FileBrowser.Type == Brw_SHOW_MRK_GRP) Gbl.FileBrowser.Type == Brw_SHOW_MRK_GRP)
{ {
/* Form to see marks */ /* Form to see marks */
Act_StartForm (Gbl.FileBrowser.Type == Brw_SHOW_MRK_CRS ? ActSeeMyMrkCrs : Frm_StartForm (Gbl.FileBrowser.Type == Brw_SHOW_MRK_CRS ? ActSeeMyMrkCrs :
ActSeeMyMrkGrp); ActSeeMyMrkGrp);
Brw_PutParamsFileBrowser (ActUnk, Brw_PutParamsFileBrowser (ActUnk,
Gbl.FileBrowser.Priv.PathInTreeUntilFilFolLnk, Gbl.FileBrowser.Priv.PathInTreeUntilFilFolLnk,
@ -10820,11 +10827,11 @@ static void Brw_WriteSmallLinkToDownloadFile (const char *URL,Brw_FileType_t Fil
snprintf (Gbl.Title,sizeof (Gbl.Title), snprintf (Gbl.Title,sizeof (Gbl.Title),
Txt_Check_marks_in_file_X, Txt_Check_marks_in_file_X,
FileNameToShow); FileNameToShow);
Act_LinkFormSubmit (Gbl.Title,"DAT",NULL); Frm_LinkFormSubmit (Gbl.Title,"DAT",NULL);
/* Name of the file of marks, link end and form end */ /* Name of the file of marks, link end and form end */
fprintf (Gbl.F.Out,"%s</a>",FileNameToShow); fprintf (Gbl.F.Out,"%s</a>",FileNameToShow);
Act_EndForm (); Frm_EndForm ();
} }
else else
/* Put anchor and filename */ /* Put anchor and filename */
@ -12713,15 +12720,15 @@ static void Brw_WriteRowDocData (unsigned long *NumDocsNotHidden,MYSQL_ROW row)
BgColor); BgColor);
if (InsCod > 0) if (InsCod > 0)
{ {
Act_StartFormGoTo (ActSeeInsInf); Frm_StartFormGoTo (ActSeeInsInf);
Deg_PutParamDegCod (InsCod); Deg_PutParamDegCod (InsCod);
snprintf (Gbl.Title,sizeof (Gbl.Title), snprintf (Gbl.Title,sizeof (Gbl.Title),
Txt_Go_to_X, Txt_Go_to_X,
InsShortName); InsShortName);
Act_LinkFormSubmit (Gbl.Title,"DAT",NULL); Frm_LinkFormSubmit (Gbl.Title,"DAT",NULL);
Log_DrawLogo (Sco_SCOPE_INS,InsCod,InsShortName,20,"CENTER_TOP",true); Log_DrawLogo (Sco_SCOPE_INS,InsCod,InsShortName,20,"CENTER_TOP",true);
fprintf (Gbl.F.Out,"&nbsp;%s</a>",InsShortName); fprintf (Gbl.F.Out,"&nbsp;%s</a>",InsShortName);
Act_EndForm (); Frm_EndForm ();
} }
fprintf (Gbl.F.Out,"</td>"); fprintf (Gbl.F.Out,"</td>");
@ -12730,15 +12737,15 @@ static void Brw_WriteRowDocData (unsigned long *NumDocsNotHidden,MYSQL_ROW row)
BgColor); BgColor);
if (CtrCod > 0) if (CtrCod > 0)
{ {
Act_StartFormGoTo (ActSeeCtrInf); Frm_StartFormGoTo (ActSeeCtrInf);
Deg_PutParamDegCod (CtrCod); Deg_PutParamDegCod (CtrCod);
snprintf (Gbl.Title,sizeof (Gbl.Title), snprintf (Gbl.Title,sizeof (Gbl.Title),
Txt_Go_to_X, Txt_Go_to_X,
CtrShortName); CtrShortName);
Act_LinkFormSubmit (Gbl.Title,"DAT",NULL); Frm_LinkFormSubmit (Gbl.Title,"DAT",NULL);
Log_DrawLogo (Sco_SCOPE_CTR,CtrCod,CtrShortName,20,"CENTER_TOP",true); Log_DrawLogo (Sco_SCOPE_CTR,CtrCod,CtrShortName,20,"CENTER_TOP",true);
fprintf (Gbl.F.Out,"&nbsp;%s</a>",CtrShortName); fprintf (Gbl.F.Out,"&nbsp;%s</a>",CtrShortName);
Act_EndForm (); Frm_EndForm ();
} }
fprintf (Gbl.F.Out,"</td>"); fprintf (Gbl.F.Out,"</td>");
@ -12747,15 +12754,15 @@ static void Brw_WriteRowDocData (unsigned long *NumDocsNotHidden,MYSQL_ROW row)
BgColor); BgColor);
if (DegCod > 0) if (DegCod > 0)
{ {
Act_StartFormGoTo (ActSeeDegInf); Frm_StartFormGoTo (ActSeeDegInf);
Deg_PutParamDegCod (DegCod); Deg_PutParamDegCod (DegCod);
snprintf (Gbl.Title,sizeof (Gbl.Title), snprintf (Gbl.Title,sizeof (Gbl.Title),
Txt_Go_to_X, Txt_Go_to_X,
DegShortName); DegShortName);
Act_LinkFormSubmit (Gbl.Title,"DAT",NULL); Frm_LinkFormSubmit (Gbl.Title,"DAT",NULL);
Log_DrawLogo (Sco_SCOPE_DEG,DegCod,DegShortName,20,"CENTER_TOP",true); Log_DrawLogo (Sco_SCOPE_DEG,DegCod,DegShortName,20,"CENTER_TOP",true);
fprintf (Gbl.F.Out,"&nbsp;%s</a>",DegShortName); fprintf (Gbl.F.Out,"&nbsp;%s</a>",DegShortName);
Act_EndForm (); Frm_EndForm ();
} }
fprintf (Gbl.F.Out,"</td>"); fprintf (Gbl.F.Out,"</td>");
@ -12764,14 +12771,14 @@ static void Brw_WriteRowDocData (unsigned long *NumDocsNotHidden,MYSQL_ROW row)
BgColor); BgColor);
if (CrsCod > 0) if (CrsCod > 0)
{ {
Act_StartFormGoTo (ActSeeCrsInf); Frm_StartFormGoTo (ActSeeCrsInf);
Crs_PutParamCrsCod (CrsCod); Crs_PutParamCrsCod (CrsCod);
snprintf (Gbl.Title,sizeof (Gbl.Title), snprintf (Gbl.Title,sizeof (Gbl.Title),
Txt_Go_to_X, Txt_Go_to_X,
CrsShortName); CrsShortName);
Act_LinkFormSubmit (Gbl.Title,"DAT",NULL); Frm_LinkFormSubmit (Gbl.Title,"DAT",NULL);
fprintf (Gbl.F.Out,"%s</a>",CrsShortName); fprintf (Gbl.F.Out,"%s</a>",CrsShortName);
Act_EndForm (); Frm_EndForm ();
} }
fprintf (Gbl.F.Out,"</td>"); fprintf (Gbl.F.Out,"</td>");
@ -12838,26 +12845,26 @@ static void Brw_WriteRowDocData (unsigned long *NumDocsNotHidden,MYSQL_ROW row)
if (CrsCod > 0 && CrsCod != Gbl.CurrentCrs.Crs.CrsCod) // Not the current course if (CrsCod > 0 && CrsCod != Gbl.CurrentCrs.Crs.CrsCod) // Not the current course
{ {
Act_StartFormGoTo (Action); Frm_StartFormGoTo (Action);
Crs_PutParamCrsCod (CrsCod); // Go to another course Crs_PutParamCrsCod (CrsCod); // Go to another course
} }
else if (DegCod > 0 && DegCod != Gbl.CurrentDeg.Deg.DegCod) // Not the current degree else if (DegCod > 0 && DegCod != Gbl.CurrentDeg.Deg.DegCod) // Not the current degree
{ {
Act_StartFormGoTo (Action); Frm_StartFormGoTo (Action);
Deg_PutParamDegCod (DegCod); // Go to another degree Deg_PutParamDegCod (DegCod); // Go to another degree
} }
else if (CtrCod > 0 && CtrCod != Gbl.CurrentCtr.Ctr.CtrCod) // Not the current centre else if (CtrCod > 0 && CtrCod != Gbl.CurrentCtr.Ctr.CtrCod) // Not the current centre
{ {
Act_StartFormGoTo (Action); Frm_StartFormGoTo (Action);
Ctr_PutParamCtrCod (CtrCod); // Go to another centre Ctr_PutParamCtrCod (CtrCod); // Go to another centre
} }
else if (InsCod > 0 && InsCod != Gbl.CurrentIns.Ins.InsCod) // Not the current institution else if (InsCod > 0 && InsCod != Gbl.CurrentIns.Ins.InsCod) // Not the current institution
{ {
Act_StartFormGoTo (Action); Frm_StartFormGoTo (Action);
Ins_PutParamInsCod (InsCod); // Go to another institution Ins_PutParamInsCod (InsCod); // Go to another institution
} }
else else
Act_StartForm (Action); Frm_StartForm (Action);
if (GrpCod > 0) if (GrpCod > 0)
Grp_PutParamGrpCod (GrpCod); Grp_PutParamGrpCod (GrpCod);
@ -12872,7 +12879,7 @@ static void Brw_WriteRowDocData (unsigned long *NumDocsNotHidden,MYSQL_ROW row)
FileMetadata.FilCod); FileMetadata.FilCod);
/* File or folder icon */ /* File or folder icon */
Act_LinkFormSubmit (FileNameToShow,"DAT_N",NULL); Frm_LinkFormSubmit (FileNameToShow,"DAT_N",NULL);
if (FileMetadata.FileType == Brw_IS_FOLDER) if (FileMetadata.FileType == Brw_IS_FOLDER)
/* Icon with folder */ /* Icon with folder */
fprintf (Gbl.F.Out,"<img src=\"%s/folder-closed16x16.gif\"" fprintf (Gbl.F.Out,"<img src=\"%s/folder-closed16x16.gif\""
@ -12888,7 +12895,7 @@ static void Brw_WriteRowDocData (unsigned long *NumDocsNotHidden,MYSQL_ROW row)
FileNameToShow); FileNameToShow);
/* End form */ /* End form */
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</td>" fprintf (Gbl.F.Out,"</td>"
"</tr>"); "</tr>");
@ -12929,7 +12936,7 @@ void Brw_AskRemoveOldFiles (void)
Brw_GetParAndInitFileBrowser (); Brw_GetParAndInitFileBrowser ();
/***** Start form *****/ /***** Start form *****/
Act_StartForm (ActRemOldBrf); Frm_StartForm (ActRemOldBrf);
Brw_PutHiddenParamFullTreeIfSelected (); Brw_PutHiddenParamFullTreeIfSelected ();
/***** Start box *****/ /***** Start box *****/
@ -12959,7 +12966,7 @@ void Brw_AskRemoveOldFiles (void)
Box_EndBoxWithButton (Btn_REMOVE_BUTTON,Txt_Remove); Box_EndBoxWithButton (Btn_REMOVE_BUTTON,Txt_Remove);
/***** End form *****/ /***** End form *****/
Act_EndForm (); Frm_EndForm ();
/***** Show again the file browser *****/ /***** Show again the file browser *****/
Brw_ShowAgainFileBrowserOrWorks (); Brw_ShowAgainFileBrowserOrWorks ();

View File

@ -33,6 +33,7 @@
#include "swad_box.h" #include "swad_box.h"
#include "swad_database.h" #include "swad_database.h"
#include "swad_follow.h" #include "swad_follow.h"
#include "swad_form.h"
#include "swad_global.h" #include "swad_global.h"
#include "swad_notification.h" #include "swad_notification.h"
#include "swad_privacy.h" #include "swad_privacy.h"
@ -198,10 +199,10 @@ void Fol_SuggestUsrsToFollowMainZoneOnRightColumn (void)
fprintf (Gbl.F.Out,"<div class=\"CONNECTED\">"); fprintf (Gbl.F.Out,"<div class=\"CONNECTED\">");
/***** Title with link to suggest more users to follow *****/ /***** Title with link to suggest more users to follow *****/
Act_StartForm (ActSeeSocPrf); Frm_StartForm (ActSeeSocPrf);
Act_LinkFormSubmit (Txt_Who_to_follow,"CONNECTED_TXT",NULL); Frm_LinkFormSubmit (Txt_Who_to_follow,"CONNECTED_TXT",NULL);
fprintf (Gbl.F.Out,"%s</a>",Txt_Who_to_follow); fprintf (Gbl.F.Out,"%s</a>",Txt_Who_to_follow);
Act_EndForm (); Frm_EndForm ();
/***** Start table *****/ /***** Start table *****/
fprintf (Gbl.F.Out,"<table>"); fprintf (Gbl.F.Out,"<table>");
@ -428,11 +429,11 @@ static void Fol_PutIconToUpdateWhoToFollow (void)
extern const char *The_ClassFormBold[The_NUM_THEMES]; extern const char *The_ClassFormBold[The_NUM_THEMES];
extern const char *Txt_Update; extern const char *Txt_Update;
Act_StartForm (ActSeeSocPrf); Frm_StartForm (ActSeeSocPrf);
Act_LinkFormSubmitAnimated (Txt_Update,The_ClassFormBold[Gbl.Prefs.Theme], Frm_LinkFormSubmitAnimated (Txt_Update,The_ClassFormBold[Gbl.Prefs.Theme],
NULL); NULL);
Ico_PutCalculateIcon (Txt_Update); Ico_PutCalculateIcon (Txt_Update);
Act_EndForm (); Frm_EndForm ();
} }
/*****************************************************************************/ /*****************************************************************************/
@ -532,9 +533,9 @@ void Fol_ShowFollowingAndFollowers (const struct UsrData *UsrDat,
{ {
if (IFollowUsr) // I follow this user if (IFollowUsr) // I follow this user
{ {
Act_StartForm (ActUnfUsr); Frm_StartForm (ActUnfUsr);
Usr_PutParamUsrCodEncrypted (UsrDat->EncryptedUsrCod); Usr_PutParamUsrCodEncrypted (UsrDat->EncryptedUsrCod);
Act_LinkFormSubmit (Txt_Following_unfollow,"REC_DAT_BOLD",NULL); Frm_LinkFormSubmit (Txt_Following_unfollow,"REC_DAT_BOLD",NULL);
fprintf (Gbl.F.Out,"<div class=\"ICO_HIGHLIGHT\"" fprintf (Gbl.F.Out,"<div class=\"ICO_HIGHLIGHT\""
" style=\"display:inline;\" >" " style=\"display:inline;\" >"
"<img src=\"%s/following64x64.png\"" "<img src=\"%s/following64x64.png\""
@ -544,13 +545,13 @@ void Fol_ShowFollowingAndFollowers (const struct UsrData *UsrDat,
"</a>", "</a>",
Gbl.Prefs.IconsURL, Gbl.Prefs.IconsURL,
Txt_Unfollow,Txt_Following_unfollow); Txt_Unfollow,Txt_Following_unfollow);
Act_EndForm (); Frm_EndForm ();
} }
else // I do not follow this user else // I do not follow this user
{ {
Act_StartForm (ActFolUsr); Frm_StartForm (ActFolUsr);
Usr_PutParamUsrCodEncrypted (UsrDat->EncryptedUsrCod); Usr_PutParamUsrCodEncrypted (UsrDat->EncryptedUsrCod);
Act_LinkFormSubmit (Txt_Follow,"REC_DAT_BOLD",NULL); Frm_LinkFormSubmit (Txt_Follow,"REC_DAT_BOLD",NULL);
fprintf (Gbl.F.Out,"<div class=\"ICO_HIGHLIGHT\"" fprintf (Gbl.F.Out,"<div class=\"ICO_HIGHLIGHT\""
" style=\"display:inline;\" >" " style=\"display:inline;\" >"
"<img src=\"%s/follow64x64.png\"" "<img src=\"%s/follow64x64.png\""
@ -560,7 +561,7 @@ void Fol_ShowFollowingAndFollowers (const struct UsrData *UsrDat,
"</a>", "</a>",
Gbl.Prefs.IconsURL, Gbl.Prefs.IconsURL,
Txt_Follow,Txt_Follow); Txt_Follow,Txt_Follow);
Act_EndForm (); Frm_EndForm ();
} }
} }
fprintf (Gbl.F.Out,"</div>"); fprintf (Gbl.F.Out,"</div>");
@ -592,9 +593,9 @@ static void Fol_ShowNumberOfFollowingOrFollowers (const struct UsrData *UsrDat,
if (NumUsrs) if (NumUsrs)
{ {
/* Form to list users */ /* Form to list users */
Act_StartFormAnchor (Action,Fol_FOLLOW_SECTION_ID); Frm_StartFormAnchor (Action,Fol_FOLLOW_SECTION_ID);
Usr_PutParamUsrCodEncrypted (UsrDat->EncryptedUsrCod); Usr_PutParamUsrCodEncrypted (UsrDat->EncryptedUsrCod);
Act_LinkFormSubmit (Title, Frm_LinkFormSubmit (Title,
(Gbl.Action.Act == Action) ? "FOLLOW_NUM_B" : (Gbl.Action.Act == Action) ? "FOLLOW_NUM_B" :
"FOLLOW_NUM",NULL); "FOLLOW_NUM",NULL);
} }
@ -606,7 +607,7 @@ static void Fol_ShowNumberOfFollowingOrFollowers (const struct UsrData *UsrDat,
if (NumUsrs) if (NumUsrs)
{ {
fprintf (Gbl.F.Out,"</a>"); fprintf (Gbl.F.Out,"</a>");
Act_EndForm (); Frm_EndForm ();
} }
else else
fprintf (Gbl.F.Out,"</span>"); fprintf (Gbl.F.Out,"</span>");
@ -618,9 +619,9 @@ static void Fol_ShowNumberOfFollowingOrFollowers (const struct UsrData *UsrDat,
if (NumUsrs) if (NumUsrs)
{ {
/* Form to list users */ /* Form to list users */
Act_StartFormAnchor (Action,Fol_FOLLOW_SECTION_ID); Frm_StartFormAnchor (Action,Fol_FOLLOW_SECTION_ID);
Usr_PutParamUsrCodEncrypted (UsrDat->EncryptedUsrCod); Usr_PutParamUsrCodEncrypted (UsrDat->EncryptedUsrCod);
Act_LinkFormSubmit (Title, Frm_LinkFormSubmit (Title,
(Gbl.Action.Act == Action) ? The_ClassFormBold[Gbl.Prefs.Theme] : (Gbl.Action.Act == Action) ? The_ClassFormBold[Gbl.Prefs.Theme] :
The_ClassForm[Gbl.Prefs.Theme],NULL); The_ClassForm[Gbl.Prefs.Theme],NULL);
} }
@ -628,7 +629,7 @@ static void Fol_ShowNumberOfFollowingOrFollowers (const struct UsrData *UsrDat,
if (NumUsrs) if (NumUsrs)
{ {
fprintf (Gbl.F.Out,"</a>"); fprintf (Gbl.F.Out,"</a>");
Act_EndForm (); Frm_EndForm ();
} }
fprintf (Gbl.F.Out,"</div>"); fprintf (Gbl.F.Out,"</div>");
@ -842,14 +843,14 @@ static void Fol_ShowFollowedOrFollower (struct UsrData *UsrDat)
if (Visible) if (Visible)
{ {
/* Put form to go to public profile */ /* Put form to go to public profile */
Act_StartForm (ActSeeOthPubPrf); Frm_StartForm (ActSeeOthPubPrf);
Usr_PutParamUsrCodEncrypted (UsrDat->EncryptedUsrCod); Usr_PutParamUsrCodEncrypted (UsrDat->EncryptedUsrCod);
fprintf (Gbl.F.Out,"<div class=\"FOLLOW_USR_NAME\">"); // Limited width fprintf (Gbl.F.Out,"<div class=\"FOLLOW_USR_NAME\">"); // Limited width
Act_LinkFormSubmit (Txt_Another_user_s_profile,"DAT",NULL); Frm_LinkFormSubmit (Txt_Another_user_s_profile,"DAT",NULL);
Usr_WriteFirstNameBRSurnames (UsrDat); Usr_WriteFirstNameBRSurnames (UsrDat);
fprintf (Gbl.F.Out,"</a>" fprintf (Gbl.F.Out,"</a>"
"</div>"); "</div>");
Act_EndForm (); Frm_EndForm ();
} }
ItsMe = Usr_ItsMe (UsrDat->UsrCod); ItsMe = Usr_ItsMe (UsrDat->UsrCod);
@ -902,14 +903,14 @@ static void Fol_WriteRowUsrToFollowOnRightColumn (struct UsrData *UsrDat)
if (Visible) if (Visible)
{ {
/* Put form to go to public profile */ /* Put form to go to public profile */
Act_StartForm (ActSeeOthPubPrf); Frm_StartForm (ActSeeOthPubPrf);
Usr_PutParamUsrCodEncrypted (UsrDat->EncryptedUsrCod); Usr_PutParamUsrCodEncrypted (UsrDat->EncryptedUsrCod);
fprintf (Gbl.F.Out,"<div class=\"CON_NAME_NARROW\">"); // Limited width fprintf (Gbl.F.Out,"<div class=\"CON_NAME_NARROW\">"); // Limited width
Act_LinkFormSubmit (Txt_Another_user_s_profile,"CON_CRS",NULL); Frm_LinkFormSubmit (Txt_Another_user_s_profile,"CON_CRS",NULL);
Usr_WriteFirstNameBRSurnames (UsrDat); Usr_WriteFirstNameBRSurnames (UsrDat);
fprintf (Gbl.F.Out,"</a>" fprintf (Gbl.F.Out,"</a>"
"</div>"); "</div>");
Act_EndForm (); Frm_EndForm ();
} }
fprintf (Gbl.F.Out,"</td>"); fprintf (Gbl.F.Out,"</td>");
@ -961,9 +962,9 @@ static void Fol_PutIconToFollow (struct UsrData *UsrDat)
extern const char *Txt_Follow; extern const char *Txt_Follow;
/***** Form to unfollow *****/ /***** Form to unfollow *****/
Act_StartForm (ActFolUsr); Frm_StartForm (ActFolUsr);
Usr_PutParamUsrCodEncrypted (UsrDat->EncryptedUsrCod); Usr_PutParamUsrCodEncrypted (UsrDat->EncryptedUsrCod);
Act_LinkFormSubmit (Txt_Follow,NULL,NULL); Frm_LinkFormSubmit (Txt_Follow,NULL,NULL);
fprintf (Gbl.F.Out,"<div class=\"FOLLOW_USR_ICO ICO_HIGHLIGHT\">" fprintf (Gbl.F.Out,"<div class=\"FOLLOW_USR_ICO ICO_HIGHLIGHT\">"
"<img src=\"%s/follow64x64.png\"" "<img src=\"%s/follow64x64.png\""
" alt=\"%s\" title=\"%s\"" " alt=\"%s\" title=\"%s\""
@ -972,7 +973,7 @@ static void Fol_PutIconToFollow (struct UsrData *UsrDat)
"</a>", "</a>",
Gbl.Prefs.IconsURL, Gbl.Prefs.IconsURL,
Txt_Follow,Txt_Follow); Txt_Follow,Txt_Follow);
Act_EndForm (); Frm_EndForm ();
} }
/*****************************************************************************/ /*****************************************************************************/
@ -984,9 +985,9 @@ static void Fol_PutIconToUnfollow (struct UsrData *UsrDat)
extern const char *Txt_Unfollow; extern const char *Txt_Unfollow;
/* Form to follow */ /* Form to follow */
Act_StartForm (ActUnfUsr); Frm_StartForm (ActUnfUsr);
Usr_PutParamUsrCodEncrypted (UsrDat->EncryptedUsrCod); Usr_PutParamUsrCodEncrypted (UsrDat->EncryptedUsrCod);
Act_LinkFormSubmit (Txt_Unfollow,NULL,NULL); Frm_LinkFormSubmit (Txt_Unfollow,NULL,NULL);
fprintf (Gbl.F.Out,"<div class=\"FOLLOW_USR_ICO ICO_HIGHLIGHT\">" fprintf (Gbl.F.Out,"<div class=\"FOLLOW_USR_ICO ICO_HIGHLIGHT\">"
"<img src=\"%s/following64x64.png\"" "<img src=\"%s/following64x64.png\""
" alt=\"%s\" title=\"%s\"" " alt=\"%s\" title=\"%s\""
@ -995,7 +996,7 @@ static void Fol_PutIconToUnfollow (struct UsrData *UsrDat)
"</a>", "</a>",
Gbl.Prefs.IconsURL, Gbl.Prefs.IconsURL,
Txt_Unfollow,Txt_Unfollow); Txt_Unfollow,Txt_Unfollow);
Act_EndForm (); Frm_EndForm ();
} }
/*****************************************************************************/ /*****************************************************************************/

View File

@ -37,6 +37,7 @@
#include "swad_box.h" #include "swad_box.h"
#include "swad_config.h" #include "swad_config.h"
#include "swad_database.h" #include "swad_database.h"
#include "swad_form.h"
#include "swad_forum.h" #include "swad_forum.h"
#include "swad_global.h" #include "swad_global.h"
#include "swad_layout.h" #include "swad_layout.h"
@ -1224,7 +1225,7 @@ static void For_ShowAForumPost (unsigned PstNum,long PstCod,
"<td class=\"CONTEXT_COL\">"); "<td class=\"CONTEXT_COL\">");
if (ICanModerateForum) if (ICanModerateForum)
{ {
Act_StartFormAnchor (Enabled ? For_ActionsDisPstFor[Gbl.Forum.ForumSelected.Type] : Frm_StartFormAnchor (Enabled ? For_ActionsDisPstFor[Gbl.Forum.ForumSelected.Type] :
For_ActionsEnbPstFor[Gbl.Forum.ForumSelected.Type], For_ActionsEnbPstFor[Gbl.Forum.ForumSelected.Type],
For_FORUM_POSTS_SECTION_ID); For_FORUM_POSTS_SECTION_ID);
For_PutAllHiddenParamsForum (Gbl.Forum.CurrentPageThrs, // Page of threads = current For_PutAllHiddenParamsForum (Gbl.Forum.CurrentPageThrs, // Page of threads = current
@ -1247,7 +1248,7 @@ static void For_ShowAForumPost (unsigned PstNum,long PstCod,
"eye-slash", "eye-slash",
Gbl.Title, Gbl.Title,
Gbl.Title); Gbl.Title);
Act_EndForm (); Frm_EndForm ();
} }
else else
{ {
@ -1276,10 +1277,10 @@ static void For_ShowAForumPost (unsigned PstNum,long PstCod,
{ {
// Post can be removed if post is the last (without answers) and it's mine // Post can be removed if post is the last (without answers) and it's mine
if (PstNum == 1) // First and unique post in thread if (PstNum == 1) // First and unique post in thread
Act_StartFormAnchor (For_ActionsDelPstFor[Gbl.Forum.ForumSelected.Type], Frm_StartFormAnchor (For_ActionsDelPstFor[Gbl.Forum.ForumSelected.Type],
For_FORUM_THREADS_SECTION_ID); For_FORUM_THREADS_SECTION_ID);
else // Last of several posts in thread else // Last of several posts in thread
Act_StartFormAnchor (For_ActionsDelPstFor[Gbl.Forum.ForumSelected.Type], Frm_StartFormAnchor (For_ActionsDelPstFor[Gbl.Forum.ForumSelected.Type],
For_FORUM_POSTS_SECTION_ID); For_FORUM_POSTS_SECTION_ID);
For_PutAllHiddenParamsForum (Gbl.Forum.CurrentPageThrs, // Page of threads = current For_PutAllHiddenParamsForum (Gbl.Forum.CurrentPageThrs, // Page of threads = current
Gbl.Forum.CurrentPagePsts, // Page of posts = current Gbl.Forum.CurrentPagePsts, // Page of posts = current
@ -1289,7 +1290,7 @@ static void For_ShowAForumPost (unsigned PstNum,long PstCod,
Gbl.Forum.ForumSelected.ThrCod, Gbl.Forum.ForumSelected.ThrCod,
PstCod); PstCod);
Ico_PutIconRemove (); Ico_PutIconRemove ();
Act_EndForm (); Frm_EndForm ();
} }
} }
fprintf (Gbl.F.Out,"</td>"); fprintf (Gbl.F.Out,"</td>");
@ -1762,7 +1763,7 @@ static void For_PutFormWhichForums (void)
/***** Form to select which forums I want to see: /***** Form to select which forums I want to see:
- all my forums - all my forums
- only the forums of current institution/degree/course *****/ - only the forums of current institution/degree/course *****/
Act_StartForm (ActSeeFor); Frm_StartForm (ActSeeFor);
For_PutParamForumOrder (Gbl.Forum.ThreadsOrder); For_PutParamForumOrder (Gbl.Forum.ThreadsOrder);
fprintf (Gbl.F.Out,"<div class=\"SEL_BELOW_TITLE\">" fprintf (Gbl.F.Out,"<div class=\"SEL_BELOW_TITLE\">"
"<ul>"); "<ul>");
@ -1786,7 +1787,7 @@ static void For_PutFormWhichForums (void)
} }
fprintf (Gbl.F.Out,"</ul>" fprintf (Gbl.F.Out,"</ul>"
"</div>"); "</div>");
Act_EndForm (); Frm_EndForm ();
} }
/*****************************************************************************/ /*****************************************************************************/
@ -2074,7 +2075,7 @@ static void For_WriteLinkToForum (struct Forum *Forum,
Txt_Copy_not_allowed,Txt_Copy_not_allowed); Txt_Copy_not_allowed,Txt_Copy_not_allowed);
else else
{ {
Act_StartFormAnchor (For_ActionsPasThrFor[Forum->Type], Frm_StartFormAnchor (For_ActionsPasThrFor[Forum->Type],
For_FORUM_THREADS_SECTION_ID); For_FORUM_THREADS_SECTION_ID);
For_PutAllHiddenParamsForum (1, // Page of threads = first For_PutAllHiddenParamsForum (1, // Page of threads = first
1, // Page of posts = first 1, // Page of posts = first
@ -2089,12 +2090,12 @@ static void For_WriteLinkToForum (struct Forum *Forum,
Gbl.Prefs.IconsURL, Gbl.Prefs.IconsURL,
Txt_Paste_thread, Txt_Paste_thread,
Txt_Paste_thread); Txt_Paste_thread);
Act_EndForm (); Frm_EndForm ();
} }
} }
/***** Write link to forum *****/ /***** Write link to forum *****/
Act_StartFormAnchor (For_ActionsSeeFor[Forum->Type], Frm_StartFormAnchor (For_ActionsSeeFor[Forum->Type],
For_FORUM_THREADS_SECTION_ID); For_FORUM_THREADS_SECTION_ID);
For_PutAllHiddenParamsForum (1, // Page of threads = first For_PutAllHiddenParamsForum (1, // Page of threads = first
1, // Page of posts = first 1, // Page of posts = first
@ -2103,7 +2104,7 @@ static void For_WriteLinkToForum (struct Forum *Forum,
Forum->Location, Forum->Location,
-1L, -1L,
-1L); -1L);
Act_LinkFormSubmit (Act_GetActionTextFromDB (Act_GetActCod (For_ActionsSeeFor[Forum->Type]),ActTxt), Frm_LinkFormSubmit (Act_GetActionTextFromDB (Act_GetActCod (For_ActionsSeeFor[Forum->Type]),ActTxt),
Style,NULL); Style,NULL);
For_SetForumName (Forum,ForumName,Gbl.Prefs.Language,true); For_SetForumName (Forum,ForumName,Gbl.Prefs.Language,true);
switch (Forum->Type) switch (Forum->Type)
@ -2158,7 +2159,7 @@ static void For_WriteLinkToForum (struct Forum *Forum,
/***** End row *****/ /***** End row *****/
fprintf (Gbl.F.Out,"</a>"); fprintf (Gbl.F.Out,"</a>");
Act_EndForm (); Frm_EndForm ();
/***** Put link to register students *****/ /***** Put link to register students *****/
if (Forum->Type == For_FORUM_COURSE_USRS) if (Forum->Type == For_FORUM_COURSE_USRS)
@ -2582,7 +2583,7 @@ static void For_ShowForumThreadsHighlightingOneThread (long ThrCodHighlighted,
Order++) Order++)
{ {
fprintf (Gbl.F.Out,"<th colspan=\"2\" class=\"CENTER_MIDDLE\">"); fprintf (Gbl.F.Out,"<th colspan=\"2\" class=\"CENTER_MIDDLE\">");
Act_StartFormAnchor (For_ActionsSeeFor[Gbl.Forum.ForumSelected.Type], Frm_StartFormAnchor (For_ActionsSeeFor[Gbl.Forum.ForumSelected.Type],
For_FORUM_THREADS_SECTION_ID); For_FORUM_THREADS_SECTION_ID);
For_PutAllHiddenParamsForum (Gbl.Forum.CurrentPageThrs, // Page of threads = current For_PutAllHiddenParamsForum (Gbl.Forum.CurrentPageThrs, // Page of threads = current
1, // Page of posts = first 1, // Page of posts = first
@ -2591,14 +2592,14 @@ static void For_ShowForumThreadsHighlightingOneThread (long ThrCodHighlighted,
Gbl.Forum.ForumSelected.Location, Gbl.Forum.ForumSelected.Location,
-1L, -1L,
-1L); -1L);
Act_LinkFormSubmit (Txt_FORUM_THREAD_HELP_ORDER[Order],"TIT_TBL",NULL); Frm_LinkFormSubmit (Txt_FORUM_THREAD_HELP_ORDER[Order],"TIT_TBL",NULL);
if (Order == Gbl.Forum.ThreadsOrder) if (Order == Gbl.Forum.ThreadsOrder)
fprintf (Gbl.F.Out,"<u>"); fprintf (Gbl.F.Out,"<u>");
fprintf (Gbl.F.Out,"%s",Txt_FORUM_THREAD_ORDER[Order]); fprintf (Gbl.F.Out,"%s",Txt_FORUM_THREAD_ORDER[Order]);
if (Order == Gbl.Forum.ThreadsOrder) if (Order == Gbl.Forum.ThreadsOrder)
fprintf (Gbl.F.Out,"</u>"); fprintf (Gbl.F.Out,"</u>");
fprintf (Gbl.F.Out,"</a>"); fprintf (Gbl.F.Out,"</a>");
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</th>"); fprintf (Gbl.F.Out,"</th>");
} }
fprintf (Gbl.F.Out,"<th class=\"RIGHT_MIDDLE\">" fprintf (Gbl.F.Out,"<th class=\"RIGHT_MIDDLE\">"
@ -3459,7 +3460,7 @@ static void For_ListForumThrs (long ThrCods[Pag_ITEMS_PER_PAGE],
(1 << Gbl.Usrs.Me.Role.Logged)) // If I have permission to remove thread in this forum... (1 << Gbl.Usrs.Me.Role.Logged)) // If I have permission to remove thread in this forum...
{ {
fprintf (Gbl.F.Out,"<br />"); fprintf (Gbl.F.Out,"<br />");
Act_StartFormAnchor (For_ActionsReqDelThr[Gbl.Forum.ForumSelected.Type], Frm_StartFormAnchor (For_ActionsReqDelThr[Gbl.Forum.ForumSelected.Type],
For_REMOVE_THREAD_SECTION_ID); For_REMOVE_THREAD_SECTION_ID);
For_PutAllHiddenParamsForum (Gbl.Forum.CurrentPageThrs, // Page of threads = current For_PutAllHiddenParamsForum (Gbl.Forum.CurrentPageThrs, // Page of threads = current
1, // Page of posts = first 1, // Page of posts = first
@ -3469,14 +3470,14 @@ static void For_ListForumThrs (long ThrCods[Pag_ITEMS_PER_PAGE],
Thr.ThrCod, Thr.ThrCod,
-1L); -1L);
Ico_PutIconRemove (); Ico_PutIconRemove ();
Act_EndForm (); Frm_EndForm ();
} }
/***** Put button to cut the thread for moving it to another forum *****/ /***** Put button to cut the thread for moving it to another forum *****/
if (ICanMoveThreads) if (ICanMoveThreads)
{ {
fprintf (Gbl.F.Out,"<br />"); fprintf (Gbl.F.Out,"<br />");
Act_StartFormAnchor (For_ActionsCutThrFor[Gbl.Forum.ForumSelected.Type], Frm_StartFormAnchor (For_ActionsCutThrFor[Gbl.Forum.ForumSelected.Type],
For_FORUM_THREADS_SECTION_ID); For_FORUM_THREADS_SECTION_ID);
For_PutAllHiddenParamsForum (Gbl.Forum.CurrentPageThrs, // Page of threads = current For_PutAllHiddenParamsForum (Gbl.Forum.CurrentPageThrs, // Page of threads = current
1, // Page of posts = first 1, // Page of posts = first
@ -3491,7 +3492,7 @@ static void For_ListForumThrs (long ThrCods[Pag_ITEMS_PER_PAGE],
Gbl.Prefs.IconsURL, Gbl.Prefs.IconsURL,
Txt_Move_thread, Txt_Move_thread,
Txt_Move_thread); Txt_Move_thread);
Act_EndForm (); Frm_EndForm ();
} }
fprintf (Gbl.F.Out,"</td>"); fprintf (Gbl.F.Out,"</td>");
@ -3966,13 +3967,13 @@ static void For_WriteFormForumPst (bool IsReply,const char *Subject)
/***** Start form *****/ /***** Start form *****/
if (IsReply) // Form to write a reply to a post of an existing thread if (IsReply) // Form to write a reply to a post of an existing thread
{ {
Act_StartFormAnchor (For_ActionsRecRepFor[Gbl.Forum.ForumSelected.Type], Frm_StartFormAnchor (For_ActionsRecRepFor[Gbl.Forum.ForumSelected.Type],
For_FORUM_POSTS_SECTION_ID); For_FORUM_POSTS_SECTION_ID);
For_PutAllHiddenParamsNewPost (); For_PutAllHiddenParamsNewPost ();
} }
else // Form to write the first post of a new thread else // Form to write the first post of a new thread
{ {
Act_StartFormAnchor (For_ActionsRecThrFor[Gbl.Forum.ForumSelected.Type], Frm_StartFormAnchor (For_ActionsRecThrFor[Gbl.Forum.ForumSelected.Type],
For_FORUM_POSTS_SECTION_ID); For_FORUM_POSTS_SECTION_ID);
For_PutAllHiddenParamsNewThread (); For_PutAllHiddenParamsNewThread ();
} }
@ -4024,7 +4025,7 @@ static void For_WriteFormForumPst (bool IsReply,const char *Subject)
Btn_PutCreateButton (Txt_Send); Btn_PutCreateButton (Txt_Send);
/***** End form *****/ /***** End form *****/
Act_EndForm (); Frm_EndForm ();
/***** End box *****/ /***** End box *****/
Box_EndBox (); Box_EndBox ();

View File

@ -35,6 +35,7 @@
#include "swad_alert.h" #include "swad_alert.h"
#include "swad_box.h" #include "swad_box.h"
#include "swad_database.h" #include "swad_database.h"
#include "swad_form.h"
#include "swad_game.h" #include "swad_game.h"
#include "swad_global.h" #include "swad_global.h"
#include "swad_group.h" #include "swad_group.h"
@ -238,18 +239,18 @@ static void Gam_ListAllGames (void)
fprintf (Gbl.F.Out,"<th class=\"LEFT_MIDDLE\">"); fprintf (Gbl.F.Out,"<th class=\"LEFT_MIDDLE\">");
/* Form to change order */ /* Form to change order */
Act_StartForm (ActSeeAllGam); Frm_StartForm (ActSeeAllGam);
Grp_PutParamWhichGrps (); Grp_PutParamWhichGrps ();
Pag_PutHiddenParamPagNum (Pag_GAMES,Gbl.Games.CurrentPage); Pag_PutHiddenParamPagNum (Pag_GAMES,Gbl.Games.CurrentPage);
Par_PutHiddenParamUnsigned ("Order",(unsigned) Order); Par_PutHiddenParamUnsigned ("Order",(unsigned) Order);
Act_LinkFormSubmit (Txt_START_END_TIME_HELP[Order],"TIT_TBL",NULL); Frm_LinkFormSubmit (Txt_START_END_TIME_HELP[Order],"TIT_TBL",NULL);
if (Order == Gbl.Games.SelectedOrder) if (Order == Gbl.Games.SelectedOrder)
fprintf (Gbl.F.Out,"<u>"); fprintf (Gbl.F.Out,"<u>");
fprintf (Gbl.F.Out,"%s",Txt_START_END_TIME[Order]); fprintf (Gbl.F.Out,"%s",Txt_START_END_TIME[Order]);
if (Order == Gbl.Games.SelectedOrder) if (Order == Gbl.Games.SelectedOrder)
fprintf (Gbl.F.Out,"</u>"); fprintf (Gbl.F.Out,"</u>");
fprintf (Gbl.F.Out,"</a>"); fprintf (Gbl.F.Out,"</a>");
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</th>"); fprintf (Gbl.F.Out,"</th>");
} }
@ -356,10 +357,10 @@ static void Gam_PutButtonToCreateNewGame (void)
{ {
extern const char *Txt_New_game; extern const char *Txt_New_game;
Act_StartForm (ActFrmNewGam); Frm_StartForm (ActFrmNewGam);
Gam_PutParamsToCreateNewGame (); Gam_PutParamsToCreateNewGame ();
Btn_PutConfirmButton (Txt_New_game); Btn_PutConfirmButton (Txt_New_game);
Act_EndForm (); Frm_EndForm ();
} }
/*****************************************************************************/ /*****************************************************************************/
@ -511,17 +512,17 @@ static void Gam_ShowOneGame (long GamCod,
fprintf (Gbl.F.Out,"\">"); fprintf (Gbl.F.Out,"\">");
/* Put form to view game */ /* Put form to view game */
Act_StartForm (ActSeeOneGam); Frm_StartForm (ActSeeOneGam);
Gam_PutParamGameCod (GamCod); Gam_PutParamGameCod (GamCod);
Gam_PutHiddenParamGameOrder (); Gam_PutHiddenParamGameOrder ();
Grp_PutParamWhichGrps (); Grp_PutParamWhichGrps ();
Pag_PutHiddenParamPagNum (Pag_GAMES,Gbl.Games.CurrentPage); Pag_PutHiddenParamPagNum (Pag_GAMES,Gbl.Games.CurrentPage);
Act_LinkFormSubmit (Txt_View_game, Frm_LinkFormSubmit (Txt_View_game,
Game.Status.Visible ? "ASG_TITLE" : Game.Status.Visible ? "ASG_TITLE" :
"ASG_TITLE_LIGHT",NULL); "ASG_TITLE_LIGHT",NULL);
fprintf (Gbl.F.Out,"%s</a>", fprintf (Gbl.F.Out,"%s</a>",
Game.Title); Game.Title);
Act_EndForm (); Frm_EndForm ();
/* Number of questions and number of distinct users who have already answered this game */ /* Number of questions and number of distinct users who have already answered this game */
fprintf (Gbl.F.Out,"<div class=\"%s\">%s: %u; %s: %u</div>" fprintf (Gbl.F.Out,"<div class=\"%s\">%s: %u; %s: %u</div>"
@ -544,13 +545,13 @@ static void Gam_ShowOneGame (long GamCod,
{ {
fprintf (Gbl.F.Out,"<div class=\"BUTTONS_AFTER_ALERT\">"); fprintf (Gbl.F.Out,"<div class=\"BUTTONS_AFTER_ALERT\">");
Act_StartForm (ActPlyGam); Frm_StartForm (ActPlyGam);
Gam_PutParamGameCod (Game.GamCod); Gam_PutParamGameCod (Game.GamCod);
Gam_PutHiddenParamGameOrder (); Gam_PutHiddenParamGameOrder ();
Grp_PutParamWhichGrps (); Grp_PutParamWhichGrps ();
Pag_PutHiddenParamPagNum (Pag_GAMES,Gbl.Games.CurrentPage); Pag_PutHiddenParamPagNum (Pag_GAMES,Gbl.Games.CurrentPage);
Btn_PutCreateButtonInline (Txt_Play); Btn_PutCreateButtonInline (Txt_Play);
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</div>"); fprintf (Gbl.F.Out,"</div>");
} }
@ -561,13 +562,13 @@ static void Gam_ShowOneGame (long GamCod,
{ {
fprintf (Gbl.F.Out,"<div class=\"BUTTONS_AFTER_ALERT\">"); fprintf (Gbl.F.Out,"<div class=\"BUTTONS_AFTER_ALERT\">");
Act_StartForm (ActSeeOneGam); Frm_StartForm (ActSeeOneGam);
Gam_PutParamGameCod (Game.GamCod); Gam_PutParamGameCod (Game.GamCod);
Gam_PutHiddenParamGameOrder (); Gam_PutHiddenParamGameOrder ();
Grp_PutParamWhichGrps (); Grp_PutParamWhichGrps ();
Pag_PutHiddenParamPagNum (Pag_GAMES,Gbl.Games.CurrentPage); Pag_PutHiddenParamPagNum (Pag_GAMES,Gbl.Games.CurrentPage);
Btn_PutCreateButtonInline (Txt_Play); Btn_PutCreateButtonInline (Txt_Play);
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</div>"); fprintf (Gbl.F.Out,"</div>");
} }
@ -576,13 +577,13 @@ static void Gam_ShowOneGame (long GamCod,
{ {
fprintf (Gbl.F.Out,"<div class=\"BUTTONS_AFTER_ALERT\">"); fprintf (Gbl.F.Out,"<div class=\"BUTTONS_AFTER_ALERT\">");
Act_StartForm (ActSeeOneGam); Frm_StartForm (ActSeeOneGam);
Gam_PutParamGameCod (Game.GamCod); Gam_PutParamGameCod (Game.GamCod);
Gam_PutHiddenParamGameOrder (); Gam_PutHiddenParamGameOrder ();
Grp_PutParamWhichGrps (); Grp_PutParamWhichGrps ();
Pag_PutHiddenParamPagNum (Pag_GAMES,Gbl.Games.CurrentPage); Pag_PutHiddenParamPagNum (Pag_GAMES,Gbl.Games.CurrentPage);
Btn_PutConfirmButtonInline (Txt_View_game_results); Btn_PutConfirmButtonInline (Txt_View_game_results);
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</div>"); fprintf (Gbl.F.Out,"</div>");
} }
@ -1593,10 +1594,10 @@ static void Gam_PutButtonToResetGame (void)
{ {
extern const char *Txt_Reset_game; extern const char *Txt_Reset_game;
Act_StartForm (ActRstGam); Frm_StartForm (ActRstGam);
Gam_PutParams (); Gam_PutParams ();
Btn_PutRemoveButton (Txt_Reset_game); Btn_PutRemoveButton (Txt_Reset_game);
Act_EndForm (); Frm_EndForm ();
} }
/*****************************************************************************/ /*****************************************************************************/
@ -1790,7 +1791,7 @@ void Gam_RequestCreatOrEditGame (void)
/***** Start form *****/ /***** Start form *****/
Gbl.Games.CurrentGamCod = Game.GamCod; Gbl.Games.CurrentGamCod = Game.GamCod;
Act_StartForm (ItsANewGame ? ActNewGam : Frm_StartForm (ItsANewGame ? ActNewGam :
ActChgGam); ActChgGam);
Gam_PutParams (); Gam_PutParams ();
@ -1878,7 +1879,7 @@ void Gam_RequestCreatOrEditGame (void)
Box_EndBoxTableWithButton (Btn_CONFIRM_BUTTON,Txt_Save); Box_EndBoxTableWithButton (Btn_CONFIRM_BUTTON,Txt_Save);
/***** End form *****/ /***** End form *****/
Act_EndForm (); Frm_EndForm ();
/***** Show questions of the game ready to be edited *****/ /***** Show questions of the game ready to be edited *****/
if (!ItsANewGame) if (!ItsANewGame)
@ -2778,7 +2779,7 @@ static void Gam_ListGameQuestions (struct Game *Game)
Btn_PutConfirmButton (Txt_Done); Btn_PutConfirmButton (Txt_Done);
/***** End form *****/ /***** End form *****/
Act_EndForm (); Frm_EndForm ();
} }
} }
else // This game has no questions else // This game has no questions
@ -2877,11 +2878,11 @@ static void Gam_ListOneOrMoreQuestionsForEdition (struct Game *Game,
"<td class=\"BT%u\">",Gbl.RowEvenOdd); "<td class=\"BT%u\">",Gbl.RowEvenOdd);
/* Put icon to remove the question */ /* Put icon to remove the question */
Act_StartForm (ActReqRemGamQst); Frm_StartForm (ActReqRemGamQst);
Gam_PutParamGameCod (Game->GamCod); Gam_PutParamGameCod (Game->GamCod);
Gam_PutParamQstCod (QstCod); Gam_PutParamQstCod (QstCod);
Ico_PutIconRemove (); Ico_PutIconRemove ();
Act_EndForm (); Frm_EndForm ();
/* Put icon to move up the question */ /* Put icon to move up the question */
if (NumQst) if (NumQst)
@ -2994,10 +2995,10 @@ static void Gam_PutButtonToAddNewQuestions (void)
{ {
extern const char *Txt_Add_questions; extern const char *Txt_Add_questions;
Act_StartForm (ActAddOneGamQst); Frm_StartForm (ActAddOneGamQst);
Gam_PutParams (); Gam_PutParams ();
Btn_PutConfirmButton (Txt_Add_questions); Btn_PutConfirmButton (Txt_Add_questions);
Act_EndForm (); Frm_EndForm ();
} }
/*****************************************************************************/ /*****************************************************************************/
@ -3493,19 +3494,19 @@ static void Gam_PutBigButtonToStartGame (long GamCod)
extern const char *Txt_Play; extern const char *Txt_Play;
/***** Start form *****/ /***** Start form *****/
Act_StartForm (ActPlyGam1stQst); Frm_StartForm (ActPlyGam1stQst);
Gam_PutParamGameCod (GamCod); Gam_PutParamGameCod (GamCod);
Gam_PutParamQstInd (0); // Start by first question in game Gam_PutParamQstInd (0); // Start by first question in game
/***** Put icon with link *****/ /***** Put icon with link *****/
Act_LinkFormSubmit (Txt_Play,NULL,NULL); Frm_LinkFormSubmit (Txt_Play,NULL,NULL);
fprintf (Gbl.F.Out,"<img src=\"%s/play64x64.png\" alt=\"%s\" title=\"%s\"" fprintf (Gbl.F.Out,"<img src=\"%s/play64x64.png\" alt=\"%s\" title=\"%s\""
" class=\"CONTEXT_OPT ICO_HIGHLIGHT ICO64x64\" />", " class=\"CONTEXT_OPT ICO_HIGHLIGHT ICO64x64\" />",
Gbl.Prefs.IconsURL,Txt_Play,Txt_Play); Gbl.Prefs.IconsURL,Txt_Play,Txt_Play);
fprintf (Gbl.F.Out,"</a>"); fprintf (Gbl.F.Out,"</a>");
/***** End form *****/ /***** End form *****/
Act_EndForm (); Frm_EndForm ();
} }
/*****************************************************************************/ /*****************************************************************************/
@ -3640,12 +3641,12 @@ static void Gam_PutBigButtonToContinue (Act_Action_t NextAction,
fprintf (Gbl.F.Out,"<div class=\"GAM_PLAY_CONTINUE_CONTAINER\">"); fprintf (Gbl.F.Out,"<div class=\"GAM_PLAY_CONTINUE_CONTAINER\">");
/***** Start form *****/ /***** Start form *****/
Act_StartForm (NextAction); Frm_StartForm (NextAction);
Gam_PutParamGameCod (GamCod); Gam_PutParamGameCod (GamCod);
Gam_PutParamQstInd (QstInd); Gam_PutParamQstInd (QstInd);
/***** Put icon with link *****/ /***** Put icon with link *****/
Act_LinkFormSubmit (Txt_Continue,"GAM_PLAY_CONTINUE ICO_HIGHLIGHT",NULL); Frm_LinkFormSubmit (Txt_Continue,"GAM_PLAY_CONTINUE ICO_HIGHLIGHT",NULL);
fprintf (Gbl.F.Out,"<img src=\"%s/step-forward64x64.png\"" fprintf (Gbl.F.Out,"<img src=\"%s/step-forward64x64.png\""
" alt=\"%s\" title=\"%s\" class=\"ICO64x64\" />" " alt=\"%s\" title=\"%s\" class=\"ICO64x64\" />"
"<br />" "<br />"
@ -3655,7 +3656,7 @@ static void Gam_PutBigButtonToContinue (Act_Action_t NextAction,
fprintf (Gbl.F.Out,"</a>"); fprintf (Gbl.F.Out,"</a>");
/***** End form *****/ /***** End form *****/
Act_EndForm (); Frm_EndForm ();
/***** End container *****/ /***** End container *****/
fprintf (Gbl.F.Out,"</div>"); fprintf (Gbl.F.Out,"</div>");

View File

@ -152,6 +152,7 @@ void Gbl_InitializeGlobals (void)
Gbl.Session.NumSessions = 0; Gbl.Session.NumSessions = 0;
Gbl.Session.IsOpen = false; Gbl.Session.IsOpen = false;
Gbl.Session.HasBeenDisconnected = false; Gbl.Session.HasBeenDisconnected = false;
Gbl.Session.Id[0] = '\0';
Gbl.Usrs.Me.UsrIdLogin[0] = '\0'; Gbl.Usrs.Me.UsrIdLogin[0] = '\0';
Gbl.Usrs.Me.LoginPlainPassword[0] = '\0'; Gbl.Usrs.Me.LoginPlainPassword[0] = '\0';

View File

@ -34,6 +34,7 @@
#include "swad_action.h" #include "swad_action.h"
#include "swad_box.h" #include "swad_box.h"
#include "swad_database.h" #include "swad_database.h"
#include "swad_form.h"
#include "swad_game.h" #include "swad_game.h"
#include "swad_global.h" #include "swad_global.h"
#include "swad_group.h" #include "swad_group.h"
@ -380,7 +381,7 @@ void Grp_ShowFormToSelectSeveralGroups (Act_Action_t NextAction,
/***** Start form to update the students listed /***** Start form to update the students listed
depending on the groups selected *****/ depending on the groups selected *****/
Act_StartFormAnchor (NextAction,Usr_USER_LIST_SECTION_ID); Frm_StartFormAnchor (NextAction,Usr_USER_LIST_SECTION_ID);
Usr_PutParamsPrefsAboutUsrList (); Usr_PutParamsPrefsAboutUsrList ();
/***** Put parameters needed depending on the action *****/ /***** Put parameters needed depending on the action *****/
@ -408,7 +409,7 @@ void Grp_ShowFormToSelectSeveralGroups (Act_Action_t NextAction,
/***** Submit button *****/ /***** Submit button *****/
fprintf (Gbl.F.Out,"<div class=\"CENTER_MIDDLE\"" fprintf (Gbl.F.Out,"<div class=\"CENTER_MIDDLE\""
" style=\"padding-top:12px;\">"); " style=\"padding-top:12px;\">");
Act_LinkFormSubmitAnimated (Txt_Update_users_according_to_selected_groups, Frm_LinkFormSubmitAnimated (Txt_Update_users_according_to_selected_groups,
The_ClassFormBold[Gbl.Prefs.Theme], The_ClassFormBold[Gbl.Prefs.Theme],
"CopyMessageToHiddenFields()"); "CopyMessageToHiddenFields()");
Ico_PutCalculateIconWithText (Txt_Update_users_according_to_selected_groups, Ico_PutCalculateIconWithText (Txt_Update_users_according_to_selected_groups,
@ -416,7 +417,7 @@ void Grp_ShowFormToSelectSeveralGroups (Act_Action_t NextAction,
fprintf (Gbl.F.Out,"</div>"); fprintf (Gbl.F.Out,"</div>");
/***** End form *****/ /***** End form *****/
Act_EndForm (); Frm_EndForm ();
/***** End box *****/ /***** End box *****/
Box_EndBox (); Box_EndBox ();
@ -1304,15 +1305,15 @@ static void Grp_ListGroupTypesForEdition (void)
/* Put icon to remove group type */ /* Put icon to remove group type */
fprintf (Gbl.F.Out,"<tr>" fprintf (Gbl.F.Out,"<tr>"
"<td class=\"BM\">"); "<td class=\"BM\">");
Act_StartFormAnchor (ActReqRemGrpTyp,Grp_GROUP_TYPES_SECTION_ID); Frm_StartFormAnchor (ActReqRemGrpTyp,Grp_GROUP_TYPES_SECTION_ID);
Grp_PutParamGrpTypCod (Gbl.CurrentCrs.Grps.GrpTypes.LstGrpTypes[NumGrpTyp].GrpTypCod); Grp_PutParamGrpTypCod (Gbl.CurrentCrs.Grps.GrpTypes.LstGrpTypes[NumGrpTyp].GrpTypCod);
Ico_PutIconRemove (); Ico_PutIconRemove ();
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</td>"); fprintf (Gbl.F.Out,"</td>");
/* Name of group type */ /* Name of group type */
fprintf (Gbl.F.Out,"<td class=\"LEFT_MIDDLE\">"); fprintf (Gbl.F.Out,"<td class=\"LEFT_MIDDLE\">");
Act_StartFormAnchor (ActRenGrpTyp,Grp_GROUP_TYPES_SECTION_ID); Frm_StartFormAnchor (ActRenGrpTyp,Grp_GROUP_TYPES_SECTION_ID);
Grp_PutParamGrpTypCod (Gbl.CurrentCrs.Grps.GrpTypes.LstGrpTypes[NumGrpTyp].GrpTypCod); Grp_PutParamGrpTypCod (Gbl.CurrentCrs.Grps.GrpTypes.LstGrpTypes[NumGrpTyp].GrpTypCod);
fprintf (Gbl.F.Out,"<input type=\"text\" name=\"GrpTypName\"" fprintf (Gbl.F.Out,"<input type=\"text\" name=\"GrpTypName\""
" size=\"12\" maxlength=\"%u\" value=\"%s\"" " size=\"12\" maxlength=\"%u\" value=\"%s\""
@ -1320,12 +1321,12 @@ static void Grp_ListGroupTypesForEdition (void)
Grp_MAX_CHARS_GROUP_TYPE_NAME, Grp_MAX_CHARS_GROUP_TYPE_NAME,
Gbl.CurrentCrs.Grps.GrpTypes.LstGrpTypes[NumGrpTyp].GrpTypName, Gbl.CurrentCrs.Grps.GrpTypes.LstGrpTypes[NumGrpTyp].GrpTypName,
Gbl.Form.Id); Gbl.Form.Id);
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</td>"); fprintf (Gbl.F.Out,"</td>");
/* Is it mandatory to register in any group? */ /* Is it mandatory to register in any group? */
fprintf (Gbl.F.Out,"<td class=\"CENTER_MIDDLE\">"); fprintf (Gbl.F.Out,"<td class=\"CENTER_MIDDLE\">");
Act_StartFormAnchor (ActChgMdtGrpTyp,Grp_GROUP_TYPES_SECTION_ID); Frm_StartFormAnchor (ActChgMdtGrpTyp,Grp_GROUP_TYPES_SECTION_ID);
Grp_PutParamGrpTypCod (Gbl.CurrentCrs.Grps.GrpTypes.LstGrpTypes[NumGrpTyp].GrpTypCod); Grp_PutParamGrpTypCod (Gbl.CurrentCrs.Grps.GrpTypes.LstGrpTypes[NumGrpTyp].GrpTypCod);
fprintf (Gbl.F.Out,"<select name=\"MandatoryEnrolment\"" fprintf (Gbl.F.Out,"<select name=\"MandatoryEnrolment\""
" style=\"width:150px;\"" " style=\"width:150px;\""
@ -1342,12 +1343,12 @@ static void Grp_ListGroupTypesForEdition (void)
fprintf (Gbl.F.Out,">%s</option>" fprintf (Gbl.F.Out,">%s</option>"
"</select>", "</select>",
Txt_It_is_mandatory_to_choose_a_group); Txt_It_is_mandatory_to_choose_a_group);
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</td>"); fprintf (Gbl.F.Out,"</td>");
/* Is it possible to register in multiple groups? */ /* Is it possible to register in multiple groups? */
fprintf (Gbl.F.Out,"<td class=\"CENTER_MIDDLE\">"); fprintf (Gbl.F.Out,"<td class=\"CENTER_MIDDLE\">");
Act_StartFormAnchor (ActChgMulGrpTyp,Grp_GROUP_TYPES_SECTION_ID); Frm_StartFormAnchor (ActChgMulGrpTyp,Grp_GROUP_TYPES_SECTION_ID);
Grp_PutParamGrpTypCod (Gbl.CurrentCrs.Grps.GrpTypes.LstGrpTypes[NumGrpTyp].GrpTypCod); Grp_PutParamGrpTypCod (Gbl.CurrentCrs.Grps.GrpTypes.LstGrpTypes[NumGrpTyp].GrpTypCod);
fprintf (Gbl.F.Out,"<select name=\"MultipleEnrolment\"" fprintf (Gbl.F.Out,"<select name=\"MultipleEnrolment\""
" style=\"width:150px;\"" " style=\"width:150px;\""
@ -1364,12 +1365,12 @@ static void Grp_ListGroupTypesForEdition (void)
fprintf (Gbl.F.Out,">%s</option>" fprintf (Gbl.F.Out,">%s</option>"
"</select>", "</select>",
Txt_A_student_can_belong_to_several_groups); Txt_A_student_can_belong_to_several_groups);
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</td>"); fprintf (Gbl.F.Out,"</td>");
/* Open time */ /* Open time */
fprintf (Gbl.F.Out,"<td class=\"LEFT_MIDDLE\">"); fprintf (Gbl.F.Out,"<td class=\"LEFT_MIDDLE\">");
Act_StartFormAnchor (ActChgTimGrpTyp,Grp_GROUP_TYPES_SECTION_ID); Frm_StartFormAnchor (ActChgTimGrpTyp,Grp_GROUP_TYPES_SECTION_ID);
Grp_PutParamGrpTypCod (Gbl.CurrentCrs.Grps.GrpTypes.LstGrpTypes[NumGrpTyp].GrpTypCod); Grp_PutParamGrpTypCod (Gbl.CurrentCrs.Grps.GrpTypes.LstGrpTypes[NumGrpTyp].GrpTypCod);
Tbl_StartTableCenter (2); Tbl_StartTableCenter (2);
fprintf (Gbl.F.Out,"<tr>" fprintf (Gbl.F.Out,"<tr>"
@ -1400,7 +1401,7 @@ static void Grp_ListGroupTypesForEdition (void)
fprintf (Gbl.F.Out,"</td>" fprintf (Gbl.F.Out,"</td>"
"</tr>"); "</tr>");
Tbl_EndTable (); Tbl_EndTable ();
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</td>"); fprintf (Gbl.F.Out,"</td>");
/* Number of groups of this type */ /* Number of groups of this type */
@ -1519,15 +1520,15 @@ static void Grp_ListGroupsForEdition (void)
/* Write icon to remove group */ /* Write icon to remove group */
fprintf (Gbl.F.Out,"<tr>" fprintf (Gbl.F.Out,"<tr>"
"<td class=\"BM\">"); "<td class=\"BM\">");
Act_StartFormAnchor (ActReqRemGrp,Grp_GROUPS_SECTION_ID); Frm_StartFormAnchor (ActReqRemGrp,Grp_GROUPS_SECTION_ID);
Grp_PutParamGrpCod (Grp->GrpCod); Grp_PutParamGrpCod (Grp->GrpCod);
Ico_PutIconRemove (); Ico_PutIconRemove ();
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</td>"); fprintf (Gbl.F.Out,"</td>");
/* Write icon to open/close group */ /* Write icon to open/close group */
fprintf (Gbl.F.Out,"<td class=\"BM\">"); fprintf (Gbl.F.Out,"<td class=\"BM\">");
Act_StartFormAnchor (Grp->Open ? ActCloGrp : Frm_StartFormAnchor (Grp->Open ? ActCloGrp :
ActOpeGrp, ActOpeGrp,
Grp_GROUPS_SECTION_ID); Grp_GROUPS_SECTION_ID);
Grp_PutParamGrpCod (Grp->GrpCod); Grp_PutParamGrpCod (Grp->GrpCod);
@ -1543,12 +1544,12 @@ static void Grp_ListGroupsForEdition (void)
"lock", "lock",
Gbl.Title, Gbl.Title,
Gbl.Title); Gbl.Title);
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</td>"); fprintf (Gbl.F.Out,"</td>");
/* Write icon to activate file zones for this group */ /* Write icon to activate file zones for this group */
fprintf (Gbl.F.Out,"<td class=\"BM\">"); fprintf (Gbl.F.Out,"<td class=\"BM\">");
Act_StartFormAnchor (Grp->FileZones ? ActDisFilZonGrp : Frm_StartFormAnchor (Grp->FileZones ? ActDisFilZonGrp :
ActEnaFilZonGrp, ActEnaFilZonGrp,
Grp_GROUPS_SECTION_ID); Grp_GROUPS_SECTION_ID);
Grp_PutParamGrpCod (Grp->GrpCod); Grp_PutParamGrpCod (Grp->GrpCod);
@ -1564,12 +1565,12 @@ static void Grp_ListGroupsForEdition (void)
"folder-no", "folder-no",
Gbl.Title, Gbl.Title,
Gbl.Title); Gbl.Title);
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</td>"); fprintf (Gbl.F.Out,"</td>");
/* Group type */ /* Group type */
fprintf (Gbl.F.Out,"<td class=\"CENTER_MIDDLE\">"); fprintf (Gbl.F.Out,"<td class=\"CENTER_MIDDLE\">");
Act_StartFormAnchor (ActChgGrpTyp,Grp_GROUPS_SECTION_ID); Frm_StartFormAnchor (ActChgGrpTyp,Grp_GROUPS_SECTION_ID);
Grp_PutParamGrpCod (Grp->GrpCod); Grp_PutParamGrpCod (Grp->GrpCod);
fprintf (Gbl.F.Out,"<select name=\"GrpTypCod\" style=\"width:150px;\"" fprintf (Gbl.F.Out,"<select name=\"GrpTypCod\" style=\"width:150px;\""
" onchange=\"document.getElementById('%s').submit();\">", " onchange=\"document.getElementById('%s').submit();\">",
@ -1585,18 +1586,18 @@ static void Grp_ListGroupsForEdition (void)
fprintf (Gbl.F.Out,">%s</option>",GrpTypAux->GrpTypName); fprintf (Gbl.F.Out,">%s</option>",GrpTypAux->GrpTypName);
} }
fprintf (Gbl.F.Out,"</select>"); fprintf (Gbl.F.Out,"</select>");
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</td>"); fprintf (Gbl.F.Out,"</td>");
/* Group name */ /* Group name */
fprintf (Gbl.F.Out,"<td class=\"CENTER_MIDDLE\">"); fprintf (Gbl.F.Out,"<td class=\"CENTER_MIDDLE\">");
Act_StartFormAnchor (ActRenGrp,Grp_GROUPS_SECTION_ID); Frm_StartFormAnchor (ActRenGrp,Grp_GROUPS_SECTION_ID);
Grp_PutParamGrpCod (Grp->GrpCod); Grp_PutParamGrpCod (Grp->GrpCod);
fprintf (Gbl.F.Out,"<input type=\"text\" name=\"GrpName\"" fprintf (Gbl.F.Out,"<input type=\"text\" name=\"GrpName\""
" size=\"40\" maxlength=\"%u\" value=\"%s\"" " size=\"40\" maxlength=\"%u\" value=\"%s\""
" onchange=\"document.getElementById('%s').submit();\" />", " onchange=\"document.getElementById('%s').submit();\" />",
Grp_MAX_CHARS_GROUP_NAME,Grp->GrpName,Gbl.Form.Id); Grp_MAX_CHARS_GROUP_NAME,Grp->GrpName,Gbl.Form.Id);
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</td>"); fprintf (Gbl.F.Out,"</td>");
/* Current number of users in this group */ /* Current number of users in this group */
@ -1610,14 +1611,14 @@ static void Grp_ListGroupsForEdition (void)
/* Maximum number of students of the group (row[3]) */ /* Maximum number of students of the group (row[3]) */
fprintf (Gbl.F.Out,"<td class=\"CENTER_MIDDLE\">"); fprintf (Gbl.F.Out,"<td class=\"CENTER_MIDDLE\">");
Act_StartFormAnchor (ActChgMaxStdGrp,Grp_GROUPS_SECTION_ID); Frm_StartFormAnchor (ActChgMaxStdGrp,Grp_GROUPS_SECTION_ID);
Grp_PutParamGrpCod (Grp->GrpCod); Grp_PutParamGrpCod (Grp->GrpCod);
fprintf (Gbl.F.Out,"<input type=\"text\" name=\"MaxStudents\"" fprintf (Gbl.F.Out,"<input type=\"text\" name=\"MaxStudents\""
" size=\"3\" maxlength=\"10\" value=\""); " size=\"3\" maxlength=\"10\" value=\"");
Grp_WriteMaxStdsGrp (Grp->MaxStudents); Grp_WriteMaxStdsGrp (Grp->MaxStudents);
fprintf (Gbl.F.Out,"\" onchange=\"document.getElementById('%s').submit();\" />", fprintf (Gbl.F.Out,"\" onchange=\"document.getElementById('%s').submit();\" />",
Gbl.Form.Id); Gbl.Form.Id);
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</td>" fprintf (Gbl.F.Out,"</td>"
"</tr>"); "</tr>");
} }
@ -1791,7 +1792,7 @@ void Grp_ShowLstGrpsToChgMyGrps (void)
{ {
/***** Start form *****/ /***** Start form *****/
if (PutFormToChangeGrps) if (PutFormToChangeGrps)
Act_StartForm (ActChgGrp); Frm_StartForm (ActChgGrp);
/***** List the groups the user belongs to for change *****/ /***** List the groups the user belongs to for change *****/
Tbl_StartTableWide (2); Tbl_StartTableWide (2);
@ -1812,7 +1813,7 @@ void Grp_ShowLstGrpsToChgMyGrps (void)
if (ICanChangeMyGrps) if (ICanChangeMyGrps)
Btn_PutConfirmButton (NumGrpsIBelong ? Txt_Change_my_groups : Btn_PutConfirmButton (NumGrpsIBelong ? Txt_Change_my_groups :
Txt_Enrol_in_groups); Txt_Enrol_in_groups);
Act_EndForm (); Frm_EndForm ();
} }
} }
else // This course has no groups else // This course has no groups
@ -1825,9 +1826,9 @@ void Grp_ShowLstGrpsToChgMyGrps (void)
/***** Button to create group *****/ /***** Button to create group *****/
if (ICanEdit) if (ICanEdit)
{ {
Act_StartForm (ActReqEdiGrp); Frm_StartForm (ActReqEdiGrp);
Btn_PutConfirmButton (Txt_Create_group); Btn_PutConfirmButton (Txt_Create_group);
Act_EndForm (); Frm_EndForm ();
} }
} }
@ -2474,7 +2475,7 @@ static void Grp_PutFormToCreateGroupType (void)
/***** Start form *****/ /***** Start form *****/
Lay_StartSection (Grp_NEW_GROUP_TYPE_SECTION_ID); Lay_StartSection (Grp_NEW_GROUP_TYPE_SECTION_ID);
Act_StartFormAnchor (ActNewGrpTyp,Grp_GROUP_TYPES_SECTION_ID); Frm_StartFormAnchor (ActNewGrpTyp,Grp_GROUP_TYPES_SECTION_ID);
/***** Start box *****/ /***** Start box *****/
Box_StartBoxTable (NULL,Txt_New_type_of_group,NULL, Box_StartBoxTable (NULL,Txt_New_type_of_group,NULL,
@ -2569,7 +2570,7 @@ static void Grp_PutFormToCreateGroupType (void)
Box_EndBoxTableWithButton (Btn_CREATE_BUTTON,Txt_Create_type_of_group); Box_EndBoxTableWithButton (Btn_CREATE_BUTTON,Txt_Create_type_of_group);
/***** End form *****/ /***** End form *****/
Act_EndForm (); Frm_EndForm ();
Lay_EndSection (); Lay_EndSection ();
} }
@ -2588,7 +2589,7 @@ static void Grp_PutFormToCreateGroup (void)
/***** Start form *****/ /***** Start form *****/
Lay_StartSection (Grp_NEW_GROUP_SECTION_ID); Lay_StartSection (Grp_NEW_GROUP_SECTION_ID);
Act_StartFormAnchor (ActNewGrp,Grp_GROUPS_SECTION_ID); Frm_StartFormAnchor (ActNewGrp,Grp_GROUPS_SECTION_ID);
/***** Start box and table *****/ /***** Start box and table *****/
Box_StartBoxTable (NULL,Txt_New_group,NULL, Box_StartBoxTable (NULL,Txt_New_group,NULL,
@ -2663,7 +2664,7 @@ static void Grp_PutFormToCreateGroup (void)
Box_EndBoxTableWithButton (Btn_CREATE_BUTTON,Txt_Create_group); Box_EndBoxTableWithButton (Btn_CREATE_BUTTON,Txt_Create_group);
/***** End form *****/ /***** End form *****/
Act_EndForm (); Frm_EndForm ();
Lay_EndSection (); Lay_EndSection ();
} }
@ -4884,7 +4885,7 @@ void Grp_ShowFormToSelWhichGrps (Act_Action_t Action,void (*FuncParams) ())
fprintf (Gbl.F.Out,"<div class=\"%s\">", fprintf (Gbl.F.Out,"<div class=\"%s\">",
WhichGrps == Gbl.CurrentCrs.Grps.WhichGrps ? "PREF_ON" : WhichGrps == Gbl.CurrentCrs.Grps.WhichGrps ? "PREF_ON" :
"PREF_OFF"); "PREF_OFF");
Act_StartForm (Action); Frm_StartForm (Action);
Par_PutHiddenParamUnsigned ("WhichGrps",(unsigned) WhichGrps); Par_PutHiddenParamUnsigned ("WhichGrps",(unsigned) WhichGrps);
if (FuncParams) // Extra parameters depending on the action if (FuncParams) // Extra parameters depending on the action
FuncParams (); FuncParams ();
@ -4896,7 +4897,7 @@ void Grp_ShowFormToSelWhichGrps (Act_Action_t Action,void (*FuncParams) ())
"hierarchy64x64.png", "hierarchy64x64.png",
Txt_GROUP_WHICH_GROUPS[WhichGrps], Txt_GROUP_WHICH_GROUPS[WhichGrps],
Txt_GROUP_WHICH_GROUPS[WhichGrps]); Txt_GROUP_WHICH_GROUPS[WhichGrps]);
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</div>"); fprintf (Gbl.F.Out,"</div>");
} }
fprintf (Gbl.F.Out,"</div>"); fprintf (Gbl.F.Out,"</div>");

View File

@ -30,6 +30,7 @@
#include "swad_action.h" #include "swad_action.h"
#include "swad_box.h" #include "swad_box.h"
#include "swad_config.h" #include "swad_config.h"
#include "swad_form.h"
#include "swad_global.h" #include "swad_global.h"
#include "swad_help.h" #include "swad_help.h"
#include "swad_user.h" #include "swad_user.h"
@ -281,9 +282,9 @@ static void Hlp_ShowRowHelpWhatWouldYouLikeToDo (const char *Description,
/***** Button *****/ /***** Button *****/
fprintf (Gbl.F.Out,"<td class=\"LEFT_MIDDLE\">"); fprintf (Gbl.F.Out,"<td class=\"LEFT_MIDDLE\">");
Act_StartForm (Action); Frm_StartForm (Action);
Btn_PutButtonInline (Button,TxtButton); Btn_PutButtonInline (Button,TxtButton);
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</td>" fprintf (Gbl.F.Out,"</td>"
"</tr>"); "</tr>");
} }

View File

@ -30,6 +30,7 @@
#include "swad_config.h" #include "swad_config.h"
#include "swad_degree.h" #include "swad_degree.h"
#include "swad_form.h"
#include "swad_global.h" #include "swad_global.h"
#include "swad_logo.h" #include "swad_logo.h"
#include "swad_table.h" #include "swad_table.h"
@ -193,11 +194,11 @@ void Hie_WriteHierarchyInBreadcrumb (void)
/***** Form to go to the system *****/ /***** Form to go to the system *****/
fprintf (Gbl.F.Out,"<div class=\"BC %s\">&nbsp;",ClassTxt); fprintf (Gbl.F.Out,"<div class=\"BC %s\">&nbsp;",ClassTxt);
Act_StartFormGoTo (ActMnu); Frm_StartFormGoTo (ActMnu);
Par_PutHiddenParamUnsigned ("NxtTab",(unsigned) TabSys); Par_PutHiddenParamUnsigned ("NxtTab",(unsigned) TabSys);
Act_LinkFormSubmit (Txt_System,ClassTxt,NULL); Frm_LinkFormSubmit (Txt_System,ClassTxt,NULL);
fprintf (Gbl.F.Out,"%s</a>",Txt_System); fprintf (Gbl.F.Out,"%s</a>",Txt_System);
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</div>"); fprintf (Gbl.F.Out,"</div>");
@ -209,11 +210,11 @@ void Hie_WriteHierarchyInBreadcrumb (void)
fprintf (Gbl.F.Out,"&nbsp;&gt;&nbsp;"); fprintf (Gbl.F.Out,"&nbsp;&gt;&nbsp;");
/***** Form to go to see institutions of this country *****/ /***** Form to go to see institutions of this country *****/
Act_StartFormGoTo (ActSeeIns); Frm_StartFormGoTo (ActSeeIns);
Cty_PutParamCtyCod (Gbl.CurrentCty.Cty.CtyCod); Cty_PutParamCtyCod (Gbl.CurrentCty.Cty.CtyCod);
Act_LinkFormSubmit (Gbl.CurrentCty.Cty.Name[Gbl.Prefs.Language],ClassTxt,NULL); Frm_LinkFormSubmit (Gbl.CurrentCty.Cty.Name[Gbl.Prefs.Language],ClassTxt,NULL);
fprintf (Gbl.F.Out,"%s</a>",Gbl.CurrentCty.Cty.Name[Gbl.Prefs.Language]); fprintf (Gbl.F.Out,"%s</a>",Gbl.CurrentCty.Cty.Name[Gbl.Prefs.Language]);
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</div>"); fprintf (Gbl.F.Out,"</div>");
} }
@ -225,10 +226,10 @@ void Hie_WriteHierarchyInBreadcrumb (void)
fprintf (Gbl.F.Out,"&nbsp;&gt;&nbsp;"); fprintf (Gbl.F.Out,"&nbsp;&gt;&nbsp;");
/***** Form to go to select countries *****/ /***** Form to go to select countries *****/
Act_StartFormGoTo (ActSeeCty); Frm_StartFormGoTo (ActSeeCty);
Act_LinkFormSubmit (Txt_Country,ClassTxt,NULL); Frm_LinkFormSubmit (Txt_Country,ClassTxt,NULL);
fprintf (Gbl.F.Out,"%s</a>",Txt_Country); fprintf (Gbl.F.Out,"%s</a>",Txt_Country);
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</div>"); fprintf (Gbl.F.Out,"</div>");
} }
@ -241,11 +242,11 @@ void Hie_WriteHierarchyInBreadcrumb (void)
fprintf (Gbl.F.Out,"&nbsp;&gt;&nbsp;"); fprintf (Gbl.F.Out,"&nbsp;&gt;&nbsp;");
/***** Form to see centres of this institution *****/ /***** Form to see centres of this institution *****/
Act_StartFormGoTo (ActSeeCtr); Frm_StartFormGoTo (ActSeeCtr);
Ins_PutParamInsCod (Gbl.CurrentIns.Ins.InsCod); Ins_PutParamInsCod (Gbl.CurrentIns.Ins.InsCod);
Act_LinkFormSubmit (Gbl.CurrentIns.Ins.FullName,ClassTxt,NULL); Frm_LinkFormSubmit (Gbl.CurrentIns.Ins.FullName,ClassTxt,NULL);
fprintf (Gbl.F.Out,"%s</a>",Gbl.CurrentIns.Ins.ShrtName); fprintf (Gbl.F.Out,"%s</a>",Gbl.CurrentIns.Ins.ShrtName);
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</div>"); fprintf (Gbl.F.Out,"</div>");
} }
@ -257,10 +258,10 @@ void Hie_WriteHierarchyInBreadcrumb (void)
fprintf (Gbl.F.Out,"&nbsp;&gt;&nbsp;"); fprintf (Gbl.F.Out,"&nbsp;&gt;&nbsp;");
/***** Form to go to select institutions *****/ /***** Form to go to select institutions *****/
Act_StartFormGoTo (ActSeeIns); Frm_StartFormGoTo (ActSeeIns);
Act_LinkFormSubmit (Txt_Institution,ClassTxt,NULL); Frm_LinkFormSubmit (Txt_Institution,ClassTxt,NULL);
fprintf (Gbl.F.Out,"%s</a>",Txt_Institution); fprintf (Gbl.F.Out,"%s</a>",Txt_Institution);
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</div>"); fprintf (Gbl.F.Out,"</div>");
} }
@ -285,11 +286,11 @@ void Hie_WriteHierarchyInBreadcrumb (void)
fprintf (Gbl.F.Out,"&nbsp;&gt;&nbsp;"); fprintf (Gbl.F.Out,"&nbsp;&gt;&nbsp;");
/***** Form to see degrees of this centre *****/ /***** Form to see degrees of this centre *****/
Act_StartFormGoTo (ActSeeDeg); Frm_StartFormGoTo (ActSeeDeg);
Ctr_PutParamCtrCod (Gbl.CurrentCtr.Ctr.CtrCod); Ctr_PutParamCtrCod (Gbl.CurrentCtr.Ctr.CtrCod);
Act_LinkFormSubmit (Gbl.CurrentCtr.Ctr.FullName,ClassTxt,NULL); Frm_LinkFormSubmit (Gbl.CurrentCtr.Ctr.FullName,ClassTxt,NULL);
fprintf (Gbl.F.Out,"%s</a>",Gbl.CurrentCtr.Ctr.ShrtName); fprintf (Gbl.F.Out,"%s</a>",Gbl.CurrentCtr.Ctr.ShrtName);
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</div>"); fprintf (Gbl.F.Out,"</div>");
} }
@ -301,10 +302,10 @@ void Hie_WriteHierarchyInBreadcrumb (void)
fprintf (Gbl.F.Out,"&nbsp;&gt;&nbsp;"); fprintf (Gbl.F.Out,"&nbsp;&gt;&nbsp;");
/***** Form to go to select centres *****/ /***** Form to go to select centres *****/
Act_StartFormGoTo (ActSeeCtr); Frm_StartFormGoTo (ActSeeCtr);
Act_LinkFormSubmit (Txt_Centre,ClassTxt,NULL); Frm_LinkFormSubmit (Txt_Centre,ClassTxt,NULL);
fprintf (Gbl.F.Out,"%s</a>",Txt_Centre); fprintf (Gbl.F.Out,"%s</a>",Txt_Centre);
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</div>"); fprintf (Gbl.F.Out,"</div>");
} }
@ -329,11 +330,11 @@ void Hie_WriteHierarchyInBreadcrumb (void)
fprintf (Gbl.F.Out,"&nbsp;&gt;&nbsp;"); fprintf (Gbl.F.Out,"&nbsp;&gt;&nbsp;");
/***** Form to go to see courses of this degree *****/ /***** Form to go to see courses of this degree *****/
Act_StartFormGoTo (ActSeeCrs); Frm_StartFormGoTo (ActSeeCrs);
Deg_PutParamDegCod (Gbl.CurrentDeg.Deg.DegCod); Deg_PutParamDegCod (Gbl.CurrentDeg.Deg.DegCod);
Act_LinkFormSubmit (Gbl.CurrentDeg.Deg.FullName,ClassTxt,NULL); Frm_LinkFormSubmit (Gbl.CurrentDeg.Deg.FullName,ClassTxt,NULL);
fprintf (Gbl.F.Out,"%s</a>",Gbl.CurrentDeg.Deg.ShrtName); fprintf (Gbl.F.Out,"%s</a>",Gbl.CurrentDeg.Deg.ShrtName);
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</div>"); fprintf (Gbl.F.Out,"</div>");
} }
@ -345,10 +346,10 @@ void Hie_WriteHierarchyInBreadcrumb (void)
fprintf (Gbl.F.Out,"&nbsp;&gt;&nbsp;"); fprintf (Gbl.F.Out,"&nbsp;&gt;&nbsp;");
/***** Form to go to select degrees *****/ /***** Form to go to select degrees *****/
Act_StartFormGoTo (ActSeeDeg); Frm_StartFormGoTo (ActSeeDeg);
Act_LinkFormSubmit (Txt_Degree,ClassTxt,NULL); Frm_LinkFormSubmit (Txt_Degree,ClassTxt,NULL);
fprintf (Gbl.F.Out,"%s</a>",Txt_Degree); fprintf (Gbl.F.Out,"%s</a>",Txt_Degree);
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</div>"); fprintf (Gbl.F.Out,"</div>");
} }

View File

@ -33,6 +33,7 @@
#include "swad_box.h" #include "swad_box.h"
#include "swad_database.h" #include "swad_database.h"
#include "swad_form.h"
#include "swad_global.h" #include "swad_global.h"
#include "swad_holiday.h" #include "swad_holiday.h"
#include "swad_parameter.h" #include "swad_parameter.h"
@ -116,16 +117,16 @@ void Hld_SeeHolidays (void)
Order++) Order++)
{ {
fprintf (Gbl.F.Out,"<th class=\"LEFT_MIDDLE\">"); fprintf (Gbl.F.Out,"<th class=\"LEFT_MIDDLE\">");
Act_StartForm (ActSeeHld); Frm_StartForm (ActSeeHld);
Par_PutHiddenParamUnsigned ("Order",(unsigned) Order); Par_PutHiddenParamUnsigned ("Order",(unsigned) Order);
Act_LinkFormSubmit (Txt_HOLIDAYS_HELP_ORDER[Order],"TIT_TBL",NULL); Frm_LinkFormSubmit (Txt_HOLIDAYS_HELP_ORDER[Order],"TIT_TBL",NULL);
if (Order == Gbl.Hlds.SelectedOrder) if (Order == Gbl.Hlds.SelectedOrder)
fprintf (Gbl.F.Out,"<u>"); fprintf (Gbl.F.Out,"<u>");
fprintf (Gbl.F.Out,"%s",Txt_HOLIDAYS_ORDER[Order]); fprintf (Gbl.F.Out,"%s",Txt_HOLIDAYS_ORDER[Order]);
if (Order == Gbl.Hlds.SelectedOrder) if (Order == Gbl.Hlds.SelectedOrder)
fprintf (Gbl.F.Out,"</u>"); fprintf (Gbl.F.Out,"</u>");
fprintf (Gbl.F.Out,"</a>"); fprintf (Gbl.F.Out,"</a>");
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</th>"); fprintf (Gbl.F.Out,"</th>");
} }
fprintf (Gbl.F.Out,"<th class=\"LEFT_MIDDLE\">" fprintf (Gbl.F.Out,"<th class=\"LEFT_MIDDLE\">"
@ -181,9 +182,9 @@ void Hld_SeeHolidays (void)
/***** Button to create centre *****/ /***** Button to create centre *****/
if (Gbl.Usrs.Me.Role.Logged >= Rol_INS_ADM) // Institution admin or system admin if (Gbl.Usrs.Me.Role.Logged >= Rol_INS_ADM) // Institution admin or system admin
{ {
Act_StartForm (ActEdiHld); Frm_StartForm (ActEdiHld);
Btn_PutConfirmButton (Txt_New_holiday); Btn_PutConfirmButton (Txt_New_holiday);
Act_EndForm (); Frm_EndForm ();
} }
/***** End table and box *****/ /***** End table and box *****/
@ -534,10 +535,10 @@ static void Hld_ListHolidaysForEdition (void)
/* Put icon to remove holiday */ /* Put icon to remove holiday */
fprintf (Gbl.F.Out,"<tr>" fprintf (Gbl.F.Out,"<tr>"
"<td class=\"BM\">"); "<td class=\"BM\">");
Act_StartForm (ActRemHld); Frm_StartForm (ActRemHld);
Hld_PutParamHldCod (Hld->HldCod); Hld_PutParamHldCod (Hld->HldCod);
Ico_PutIconRemove (); Ico_PutIconRemove ();
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</td>"); fprintf (Gbl.F.Out,"</td>");
/* Holiday code */ /* Holiday code */
@ -548,7 +549,7 @@ static void Hld_ListHolidaysForEdition (void)
/* Holiday place */ /* Holiday place */
fprintf (Gbl.F.Out,"<td class=\"CENTER_MIDDLE\">"); fprintf (Gbl.F.Out,"<td class=\"CENTER_MIDDLE\">");
Act_StartForm (ActChgHldPlc); Frm_StartForm (ActChgHldPlc);
Hld_PutParamHldCod (Hld->HldCod); Hld_PutParamHldCod (Hld->HldCod);
fprintf (Gbl.F.Out,"<select name=\"PlcCod\" style=\"width:62px;\"" fprintf (Gbl.F.Out,"<select name=\"PlcCod\" style=\"width:62px;\""
" onchange=\"document.getElementById('%s').submit();\">" " onchange=\"document.getElementById('%s').submit();\">"
@ -566,12 +567,12 @@ static void Hld_ListHolidaysForEdition (void)
"", "",
Gbl.Plcs.Lst[NumPlc].ShrtName); Gbl.Plcs.Lst[NumPlc].ShrtName);
fprintf (Gbl.F.Out,"</select>"); fprintf (Gbl.F.Out,"</select>");
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</td>"); fprintf (Gbl.F.Out,"</td>");
/* Holiday type */ /* Holiday type */
fprintf (Gbl.F.Out,"<td class=\"CENTER_MIDDLE\">"); fprintf (Gbl.F.Out,"<td class=\"CENTER_MIDDLE\">");
Act_StartForm (ActChgHldTyp); Frm_StartForm (ActChgHldTyp);
Hld_PutParamHldCod (Hld->HldCod); Hld_PutParamHldCod (Hld->HldCod);
fprintf (Gbl.F.Out,"<select name=\"HldTyp\" style=\"width:62px;\"" fprintf (Gbl.F.Out,"<select name=\"HldTyp\" style=\"width:62px;\""
" onchange=\"document.getElementById('%s').submit();\">", " onchange=\"document.getElementById('%s').submit();\">",
@ -585,42 +586,42 @@ static void Hld_ListHolidaysForEdition (void)
"", "",
Txt_HOLIDAY_TYPES[HolidayType]); Txt_HOLIDAY_TYPES[HolidayType]);
fprintf (Gbl.F.Out,"</select>"); fprintf (Gbl.F.Out,"</select>");
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</td>"); fprintf (Gbl.F.Out,"</td>");
/* Holiday date / Non school period start date */ /* Holiday date / Non school period start date */
fprintf (Gbl.F.Out,"<td class=\"CENTER_MIDDLE\">"); fprintf (Gbl.F.Out,"<td class=\"CENTER_MIDDLE\">");
Act_StartForm (ActChgHldStrDat); Frm_StartForm (ActChgHldStrDat);
Hld_PutParamHldCod (Hld->HldCod); Hld_PutParamHldCod (Hld->HldCod);
Dat_WriteFormDate (Gbl.Now.Date.Year - 1, Dat_WriteFormDate (Gbl.Now.Date.Year - 1,
Gbl.Now.Date.Year + 1, Gbl.Now.Date.Year + 1,
"Start", "Start",
&(Gbl.Hlds.Lst[NumHld].StartDate), &(Gbl.Hlds.Lst[NumHld].StartDate),
true,false); true,false);
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</td>"); fprintf (Gbl.F.Out,"</td>");
/* Non school period end date */ /* Non school period end date */
fprintf (Gbl.F.Out,"<td class=\"CENTER_MIDDLE\">"); fprintf (Gbl.F.Out,"<td class=\"CENTER_MIDDLE\">");
Act_StartForm (ActChgHldEndDat); Frm_StartForm (ActChgHldEndDat);
Hld_PutParamHldCod (Hld->HldCod); Hld_PutParamHldCod (Hld->HldCod);
Dat_WriteFormDate (Gbl.Now.Date.Year - 1, Dat_WriteFormDate (Gbl.Now.Date.Year - 1,
Gbl.Now.Date.Year + 1, Gbl.Now.Date.Year + 1,
"End", "End",
&(Gbl.Hlds.Lst[NumHld].EndDate), &(Gbl.Hlds.Lst[NumHld].EndDate),
true,(Hld->HldTyp == Hld_HOLIDAY)); true,(Hld->HldTyp == Hld_HOLIDAY));
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</td>"); fprintf (Gbl.F.Out,"</td>");
/* Holiday name */ /* Holiday name */
fprintf (Gbl.F.Out,"<td class=\"CENTER_MIDDLE\">"); fprintf (Gbl.F.Out,"<td class=\"CENTER_MIDDLE\">");
Act_StartForm (ActRenHld); Frm_StartForm (ActRenHld);
Hld_PutParamHldCod (Hld->HldCod); Hld_PutParamHldCod (Hld->HldCod);
fprintf (Gbl.F.Out,"<input type=\"text\" name=\"Name\"" fprintf (Gbl.F.Out,"<input type=\"text\" name=\"Name\""
" size=\"20\" maxlength=\"%u\" value=\"%s\"" " size=\"20\" maxlength=\"%u\" value=\"%s\""
" onchange=\"document.getElementById('%s').submit();\" />", " onchange=\"document.getElementById('%s').submit();\" />",
Hld_MAX_CHARS_HOLIDAY_NAME,Hld->Name,Gbl.Form.Id); Hld_MAX_CHARS_HOLIDAY_NAME,Hld->Name,Gbl.Form.Id);
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</td>" fprintf (Gbl.F.Out,"</td>"
"</tr>"); "</tr>");
} }
@ -977,7 +978,7 @@ static void Hld_PutFormToCreateHoliday (void)
Hld = &Gbl.Hlds.EditingHld; Hld = &Gbl.Hlds.EditingHld;
/***** Start form *****/ /***** Start form *****/
Act_StartForm (ActNewHld); Frm_StartForm (ActNewHld);
/***** Start box and table *****/ /***** Start box and table *****/
Box_StartBoxTable (NULL,Txt_New_holiday,NULL, Box_StartBoxTable (NULL,Txt_New_holiday,NULL,
@ -1072,7 +1073,7 @@ static void Hld_PutFormToCreateHoliday (void)
Box_EndBoxTableWithButton (Btn_CREATE_BUTTON,Txt_Create_holiday); Box_EndBoxTableWithButton (Btn_CREATE_BUTTON,Txt_Create_holiday);
/***** End form *****/ /***** End form *****/
Act_EndForm (); Frm_EndForm ();
} }
/*****************************************************************************/ /*****************************************************************************/

View File

@ -32,6 +32,7 @@
#include "swad_box.h" #include "swad_box.h"
#include "swad_config.h" #include "swad_config.h"
#include "swad_database.h" #include "swad_database.h"
#include "swad_form.h"
#include "swad_global.h" #include "swad_global.h"
#include "swad_icon.h" #include "swad_icon.h"
#include "swad_layout.h" #include "swad_layout.h"
@ -88,7 +89,7 @@ void Ico_PutIconsToSelectIconSet (void)
fprintf (Gbl.F.Out,"<div class=\"%s\">", fprintf (Gbl.F.Out,"<div class=\"%s\">",
IconSet == Gbl.Prefs.IconSet ? "PREF_ON" : IconSet == Gbl.Prefs.IconSet ? "PREF_ON" :
"PREF_OFF"); "PREF_OFF");
Act_StartForm (ActChgIco); Frm_StartForm (ActChgIco);
Par_PutHiddenParamString ("IconSet",Ico_IconSetId[IconSet]); Par_PutHiddenParamString ("IconSet",Ico_IconSetId[IconSet]);
fprintf (Gbl.F.Out,"<input type=\"image\" src=\"%s/%s/%s/%s/heart64x64.gif\"" fprintf (Gbl.F.Out,"<input type=\"image\" src=\"%s/%s/%s/%s/heart64x64.gif\""
" alt=\"%s\" title=\"%s\" class=\"ICO25x25\" />", " alt=\"%s\" title=\"%s\" class=\"ICO25x25\" />",
@ -98,7 +99,7 @@ void Ico_PutIconsToSelectIconSet (void)
Cfg_ICON_ACTION, Cfg_ICON_ACTION,
Ico_IconSetNames[IconSet], Ico_IconSetNames[IconSet],
Ico_IconSetNames[IconSet]); Ico_IconSetNames[IconSet]);
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</div>"); fprintf (Gbl.F.Out,"</div>");
} }
fprintf (Gbl.F.Out,"</div>"); fprintf (Gbl.F.Out,"</div>");
@ -258,7 +259,7 @@ void Ico_PutContextualIconToPrint (Act_Action_t NextAction,void (*FuncParams) ()
void Ico_PutIconLink (const char *Icon,const char *Title,const char *Text, void Ico_PutIconLink (const char *Icon,const char *Title,const char *Text,
const char *LinkStyle,const char *OnSubmit) const char *LinkStyle,const char *OnSubmit)
{ {
Act_LinkFormSubmit (Title,LinkStyle,OnSubmit); Frm_LinkFormSubmit (Title,LinkStyle,OnSubmit);
if (Text) if (Text)
Ico_PutIconWithText (Icon,Title,Text); Ico_PutIconWithText (Icon,Title,Text);
else else

View File

@ -36,6 +36,7 @@
#include "swad_global.h" #include "swad_global.h"
#include "swad_file.h" #include "swad_file.h"
#include "swad_file_browser.h" #include "swad_file_browser.h"
#include "swad_form.h"
#include "swad_image.h" #include "swad_image.h"
/*****************************************************************************/ /*****************************************************************************/
@ -197,13 +198,13 @@ void Img_PutImageUploader (int NumImgInForm,const char *ClassImgTitURL)
extern const char *Txt_Image_title_attribution; extern const char *Txt_Image_title_attribution;
extern const char *Txt_Link; extern const char *Txt_Link;
struct ParamUploadImg ParamUploadImg; struct ParamUploadImg ParamUploadImg;
char Id[Act_MAX_BYTES_ID + 1]; char Id[Frm_MAX_BYTES_ID + 1];
/***** Set names of parameters depending on number of image in form *****/ /***** Set names of parameters depending on number of image in form *****/
Img_SetParamNames (&ParamUploadImg,NumImgInForm); Img_SetParamNames (&ParamUploadImg,NumImgInForm);
/***** Create unique id for this image uploader *****/ /***** Create unique id for this image uploader *****/
Act_SetUniqueId (Id); Frm_SetUniqueId (Id);
/***** Start container *****/ /***** Start container *****/
fprintf (Gbl.F.Out,"<div class=\"IMG_UPLOAD_CONTAINER\">"); fprintf (Gbl.F.Out,"<div class=\"IMG_UPLOAD_CONTAINER\">");

View File

@ -33,6 +33,8 @@
#include "swad_action.h" #include "swad_action.h"
#include "swad_box.h" #include "swad_box.h"
#include "swad_database.h" #include "swad_database.h"
#include "swad_form.h"
#include "swad_forum.h"
#include "swad_global.h" #include "swad_global.h"
#include "swad_indicator.h" #include "swad_indicator.h"
#include "swad_parameter.h" #include "swad_parameter.h"
@ -114,7 +116,7 @@ void Ind_ReqIndicatorsCourses (void)
/***** Form to update indicators *****/ /***** Form to update indicators *****/
/* Start form and table */ /* Start form and table */
Act_StartForm (ActReqStaCrs); Frm_StartForm (ActReqStaCrs);
Tbl_StartTableWide (2); Tbl_StartTableWide (2);
/* Scope */ /* Scope */
@ -184,7 +186,7 @@ void Ind_ReqIndicatorsCourses (void)
/* End table and form */ /* End table and form */
Tbl_EndTable (); Tbl_EndTable ();
Act_EndForm (); Frm_EndForm ();
/***** Show the stats of courses *****/ /***** Show the stats of courses *****/
for (Ind = 0, NumCrssToList = 0; for (Ind = 0, NumCrssToList = 0;
@ -198,14 +200,14 @@ void Ind_ReqIndicatorsCourses (void)
Ind_ShowTableOfCoursesWithIndicators (Ind_INDICATORS_BRIEF,NumCrss,mysql_res); Ind_ShowTableOfCoursesWithIndicators (Ind_INDICATORS_BRIEF,NumCrss,mysql_res);
/* Button to show more details */ /* Button to show more details */
Act_StartForm (ActSeeAllStaCrs); Frm_StartForm (ActSeeAllStaCrs);
Sco_PutParamScope ("ScopeInd",Gbl.Scope.Current); Sco_PutParamScope ("ScopeInd",Gbl.Scope.Current);
Par_PutHiddenParamLong ("OthDegTypCod",Gbl.Stat.DegTypCod); Par_PutHiddenParamLong ("OthDegTypCod",Gbl.Stat.DegTypCod);
Par_PutHiddenParamLong (Dpt_PARAM_DPT_COD_NAME,Gbl.Stat.DptCod); Par_PutHiddenParamLong (Dpt_PARAM_DPT_COD_NAME,Gbl.Stat.DptCod);
if (Gbl.Stat.StrIndicatorsSelected[0]) if (Gbl.Stat.StrIndicatorsSelected[0])
Par_PutHiddenParamString ("Indicators",Gbl.Stat.StrIndicatorsSelected); Par_PutHiddenParamString ("Indicators",Gbl.Stat.StrIndicatorsSelected);
Btn_PutConfirmButton (Txt_Show_more_details); Btn_PutConfirmButton (Txt_Show_more_details);
Act_EndForm (); Frm_EndForm ();
} }
/***** End box *****/ /***** End box *****/

View File

@ -38,6 +38,7 @@
#include "swad_action.h" #include "swad_action.h"
#include "swad_box.h" #include "swad_box.h"
#include "swad_database.h" #include "swad_database.h"
#include "swad_form.h"
#include "swad_global.h" #include "swad_global.h"
#include "swad_info.h" #include "swad_info.h"
#include "swad_parameter.h" #include "swad_parameter.h"
@ -464,9 +465,9 @@ static void Inf_PutButtonToEditInfo (void)
{ {
extern const char *Txt_Edit; extern const char *Txt_Edit;
Act_StartForm (Inf_ActionsEditInfo[Gbl.CurrentCrs.Info.Type]); Frm_StartForm (Inf_ActionsEditInfo[Gbl.CurrentCrs.Info.Type]);
Btn_PutConfirmButton (Txt_Edit); Btn_PutConfirmButton (Txt_Edit);
Act_EndForm (); Frm_EndForm ();
} }
/*****************************************************************************/ /*****************************************************************************/
@ -608,13 +609,13 @@ void Inf_WriteMsgYouMustReadInfo (void)
if (Gbl.CurrentCrs.Info.MustBeRead[InfoType]) if (Gbl.CurrentCrs.Info.MustBeRead[InfoType])
{ {
fprintf (Gbl.F.Out,"<li>"); fprintf (Gbl.F.Out,"<li>");
Act_StartForm (Inf_ActionsSeeInfo[InfoType]); Frm_StartForm (Inf_ActionsSeeInfo[InfoType]);
Act_LinkFormSubmit (Act_GetTitleAction (Inf_ActionsSeeInfo[InfoType]), Frm_LinkFormSubmit (Act_GetTitleAction (Inf_ActionsSeeInfo[InfoType]),
The_ClassForm[Gbl.Prefs.Theme],NULL); The_ClassForm[Gbl.Prefs.Theme],NULL);
fprintf (Gbl.F.Out,"%s" fprintf (Gbl.F.Out,"%s"
"</a>", "</a>",
Act_GetTitleAction (Inf_ActionsSeeInfo[InfoType])); Act_GetTitleAction (Inf_ActionsSeeInfo[InfoType]));
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</li>"); fprintf (Gbl.F.Out,"</li>");
} }
fprintf (Gbl.F.Out,"</ul>" fprintf (Gbl.F.Out,"</ul>"
@ -1141,7 +1142,7 @@ void Inf_FormsToSelSendInfo (void)
if (InfoSrc == InfoSrcSelected) if (InfoSrc == InfoSrcSelected)
fprintf (Gbl.F.Out," LIGHT_BLUE"); fprintf (Gbl.F.Out," LIGHT_BLUE");
fprintf (Gbl.F.Out,"\">"); fprintf (Gbl.F.Out,"\">");
Act_StartForm (Inf_ActionsSelecInfoSrc[Gbl.CurrentCrs.Info.Type]); Frm_StartForm (Inf_ActionsSelecInfoSrc[Gbl.CurrentCrs.Info.Type]);
fprintf (Gbl.F.Out,"<input type=\"radio\"" fprintf (Gbl.F.Out,"<input type=\"radio\""
" id=\"InfoSrc%u\" name=\"InfoSrc\" value=\"%u\"", " id=\"InfoSrc%u\" name=\"InfoSrc\" value=\"%u\"",
(unsigned) InfoSrc,(unsigned) InfoSrc); (unsigned) InfoSrc,(unsigned) InfoSrc);
@ -1157,7 +1158,7 @@ void Inf_FormsToSelSendInfo (void)
fprintf (Gbl.F.Out," disabled=\"disabled\""); fprintf (Gbl.F.Out," disabled=\"disabled\"");
} }
fprintf (Gbl.F.Out," />"); fprintf (Gbl.F.Out," />");
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</td>"); fprintf (Gbl.F.Out,"</td>");
/* Form for this info source */ /* Form for this info source */
@ -1226,9 +1227,9 @@ void Inf_FormToEnterIntegratedEditor (Inf_InfoSrc_t InfoSrc)
{ {
extern const char *Txt_Edit; extern const char *Txt_Edit;
Act_StartForm (Inf_ActionsInfo[InfoSrc][Gbl.CurrentCrs.Info.Type]); Frm_StartForm (Inf_ActionsInfo[InfoSrc][Gbl.CurrentCrs.Info.Type]);
Btn_PutConfirmButton (Txt_Edit); Btn_PutConfirmButton (Txt_Edit);
Act_EndForm (); Frm_EndForm ();
} }
/*****************************************************************************/ /*****************************************************************************/
@ -1239,9 +1240,9 @@ void Inf_FormToEnterPlainTextEditor (Inf_InfoSrc_t InfoSrc)
{ {
extern const char *Txt_Edit_plain_text; extern const char *Txt_Edit_plain_text;
Act_StartForm (Inf_ActionsInfo[InfoSrc][Gbl.CurrentCrs.Info.Type]); Frm_StartForm (Inf_ActionsInfo[InfoSrc][Gbl.CurrentCrs.Info.Type]);
Btn_PutConfirmButton (Txt_Edit_plain_text); Btn_PutConfirmButton (Txt_Edit_plain_text);
Act_EndForm (); Frm_EndForm ();
} }
/*****************************************************************************/ /*****************************************************************************/
@ -1252,9 +1253,9 @@ void Inf_FormToEnterRichTextEditor (Inf_InfoSrc_t InfoSrc)
{ {
extern const char *Txt_Edit_rich_text; extern const char *Txt_Edit_rich_text;
Act_StartForm (Inf_ActionsInfo[InfoSrc][Gbl.CurrentCrs.Info.Type]); Frm_StartForm (Inf_ActionsInfo[InfoSrc][Gbl.CurrentCrs.Info.Type]);
Btn_PutConfirmButton (Txt_Edit_rich_text); Btn_PutConfirmButton (Txt_Edit_rich_text);
Act_EndForm (); Frm_EndForm ();
} }
/*****************************************************************************/ /*****************************************************************************/
@ -1268,7 +1269,7 @@ void Inf_FormToSendPage (Inf_InfoSrc_t InfoSrc)
extern const char *Txt_Upload_file; extern const char *Txt_Upload_file;
/***** Start form *****/ /***** Start form *****/
Act_StartForm (Inf_ActionsInfo[InfoSrc][Gbl.CurrentCrs.Info.Type]); Frm_StartForm (Inf_ActionsInfo[InfoSrc][Gbl.CurrentCrs.Info.Type]);
/***** File *****/ /***** File *****/
fprintf (Gbl.F.Out,"<div class=\"CENTER_MIDDLE\">" fprintf (Gbl.F.Out,"<div class=\"CENTER_MIDDLE\">"
@ -1284,7 +1285,7 @@ void Inf_FormToSendPage (Inf_InfoSrc_t InfoSrc)
Btn_PutCreateButton (Txt_Upload_file); Btn_PutCreateButton (Txt_Upload_file);
/***** End form *****/ /***** End form *****/
Act_EndForm (); Frm_EndForm ();
} }
/*****************************************************************************/ /*****************************************************************************/
@ -1303,7 +1304,7 @@ void Inf_FormToSendURL (Inf_InfoSrc_t InfoSrc)
Inf_BuildPathURL (Gbl.CurrentCrs.Crs.CrsCod,Gbl.CurrentCrs.Info.Type,PathFile); Inf_BuildPathURL (Gbl.CurrentCrs.Crs.CrsCod,Gbl.CurrentCrs.Info.Type,PathFile);
/***** Start form *****/ /***** Start form *****/
Act_StartForm (Inf_ActionsInfo[InfoSrc][Gbl.CurrentCrs.Info.Type]); Frm_StartForm (Inf_ActionsInfo[InfoSrc][Gbl.CurrentCrs.Info.Type]);
/***** Link *****/ /***** Link *****/
fprintf (Gbl.F.Out,"<div class=\"CENTER_MIDDLE\">" fprintf (Gbl.F.Out,"<div class=\"CENTER_MIDDLE\">"
@ -1330,7 +1331,7 @@ void Inf_FormToSendURL (Inf_InfoSrc_t InfoSrc)
Btn_PutCreateButton (Txt_Send_URL); Btn_PutCreateButton (Txt_Send_URL);
/***** End form *****/ /***** End form *****/
Act_EndForm (); Frm_EndForm ();
} }
/*****************************************************************************/ /*****************************************************************************/
@ -2064,7 +2065,7 @@ void Inf_EditPlainTxtInfo (void)
Gbl.CurrentCrs.Info.Type = Inf_AsignInfoType (); Gbl.CurrentCrs.Info.Type = Inf_AsignInfoType ();
/***** Start form and box *****/ /***** Start form and box *****/
Act_StartForm (Inf_ActionsRcvPlaTxtInfo[Gbl.CurrentCrs.Info.Type]); Frm_StartForm (Inf_ActionsRcvPlaTxtInfo[Gbl.CurrentCrs.Info.Type]);
Box_StartBox (NULL,Txt_INFO_TITLE[Gbl.CurrentCrs.Info.Type],NULL, Box_StartBox (NULL,Txt_INFO_TITLE[Gbl.CurrentCrs.Info.Type],NULL,
HelpEdit[Gbl.CurrentCrs.Info.Type],Box_NOT_CLOSABLE); HelpEdit[Gbl.CurrentCrs.Info.Type],Box_NOT_CLOSABLE);
@ -2087,7 +2088,7 @@ void Inf_EditPlainTxtInfo (void)
/***** Send button and end box *****/ /***** Send button and end box *****/
Box_EndBoxWithButton (Btn_CONFIRM_BUTTON,Txt_Save); Box_EndBoxWithButton (Btn_CONFIRM_BUTTON,Txt_Save);
Act_EndForm (); Frm_EndForm ();
} }
/*****************************************************************************/ /*****************************************************************************/
@ -2115,7 +2116,7 @@ void Inf_EditRichTxtInfo (void)
Gbl.CurrentCrs.Info.Type = Inf_AsignInfoType (); Gbl.CurrentCrs.Info.Type = Inf_AsignInfoType ();
/***** Start form and box *****/ /***** Start form and box *****/
Act_StartForm (Inf_ActionsRcvRchTxtInfo[Gbl.CurrentCrs.Info.Type]); Frm_StartForm (Inf_ActionsRcvRchTxtInfo[Gbl.CurrentCrs.Info.Type]);
Box_StartBox (NULL,Txt_INFO_TITLE[Gbl.CurrentCrs.Info.Type],NULL, Box_StartBox (NULL,Txt_INFO_TITLE[Gbl.CurrentCrs.Info.Type],NULL,
HelpEdit[Gbl.CurrentCrs.Info.Type],Box_NOT_CLOSABLE); HelpEdit[Gbl.CurrentCrs.Info.Type],Box_NOT_CLOSABLE);
@ -2138,7 +2139,7 @@ void Inf_EditRichTxtInfo (void)
/***** Send button and end box *****/ /***** Send button and end box *****/
Box_EndBoxWithButton (Btn_CONFIRM_BUTTON,Txt_Save); Box_EndBoxWithButton (Btn_CONFIRM_BUTTON,Txt_Save);
Act_EndForm (); Frm_EndForm ();
} }
/*****************************************************************************/ /*****************************************************************************/

View File

@ -35,6 +35,7 @@
#include "swad_config.h" #include "swad_config.h"
#include "swad_constant.h" #include "swad_constant.h"
#include "swad_database.h" #include "swad_database.h"
#include "swad_form.h"
#include "swad_global.h" #include "swad_global.h"
#include "swad_help.h" #include "swad_help.h"
#include "swad_hierarchy.h" #include "swad_hierarchy.h"
@ -229,16 +230,16 @@ void Ins_DrawInstitutionLogoWithLink (struct Instit *Ins,unsigned Size)
if (PutLink) if (PutLink)
{ {
Act_StartForm (ActSeeInsInf); Frm_StartForm (ActSeeInsInf);
Ins_PutParamInsCod (Ins->InsCod); Ins_PutParamInsCod (Ins->InsCod);
Act_LinkFormSubmit (Ins->FullName,NULL,NULL); Frm_LinkFormSubmit (Ins->FullName,NULL,NULL);
} }
Log_DrawLogo (Sco_SCOPE_INS,Ins->InsCod,Ins->FullName, Log_DrawLogo (Sco_SCOPE_INS,Ins->InsCod,Ins->FullName,
Size,NULL,true); Size,NULL,true);
if (PutLink) if (PutLink)
{ {
fprintf (Gbl.F.Out,"</a>"); fprintf (Gbl.F.Out,"</a>");
Act_EndForm (); Frm_EndForm ();
} }
} }
@ -252,14 +253,14 @@ void Ins_DrawInstitutionLogoAndNameWithLink (struct Instit *Ins,Act_Action_t Act
extern const char *Txt_Go_to_X; extern const char *Txt_Go_to_X;
/***** Start form *****/ /***** Start form *****/
Act_StartFormGoTo (Action); Frm_StartFormGoTo (Action);
Ins_PutParamInsCod (Ins->InsCod); Ins_PutParamInsCod (Ins->InsCod);
/***** Link to action *****/ /***** Link to action *****/
snprintf (Gbl.Title,sizeof (Gbl.Title), snprintf (Gbl.Title,sizeof (Gbl.Title),
Txt_Go_to_X, Txt_Go_to_X,
Ins->FullName); Ins->FullName);
Act_LinkFormSubmit (Gbl.Title,ClassLink,NULL); Frm_LinkFormSubmit (Gbl.Title,ClassLink,NULL);
/***** Draw institution logo *****/ /***** Draw institution logo *****/
Log_DrawLogo (Sco_SCOPE_INS,Ins->InsCod,Ins->ShrtName,20,ClassLogo,true); Log_DrawLogo (Sco_SCOPE_INS,Ins->InsCod,Ins->ShrtName,20,ClassLogo,true);
@ -268,7 +269,7 @@ void Ins_DrawInstitutionLogoAndNameWithLink (struct Instit *Ins,Act_Action_t Act
fprintf (Gbl.F.Out,"&nbsp;%s</a>",Ins->FullName); fprintf (Gbl.F.Out,"&nbsp;%s</a>",Ins->FullName);
/***** End form *****/ /***** End form *****/
Act_EndForm (); Frm_EndForm ();
} }
/*****************************************************************************/ /*****************************************************************************/
@ -360,7 +361,7 @@ static void Ins_Configuration (bool PrintView)
Cty_GetListCountries (Cty_GET_BASIC_DATA); Cty_GetListCountries (Cty_GET_BASIC_DATA);
/* Put form to select country */ /* Put form to select country */
Act_StartForm (ActChgInsCtyCfg); Frm_StartForm (ActChgInsCtyCfg);
fprintf (Gbl.F.Out,"<select id=\"OthCtyCod\" name=\"OthCtyCod\"" fprintf (Gbl.F.Out,"<select id=\"OthCtyCod\" name=\"OthCtyCod\""
" class=\"INPUT_SHORT_NAME\"" " class=\"INPUT_SHORT_NAME\""
" onchange=\"document.getElementById('%s').submit();\">", " onchange=\"document.getElementById('%s').submit();\">",
@ -374,7 +375,7 @@ static void Ins_Configuration (bool PrintView)
"", "",
Gbl.Ctys.Lst[NumCty].Name[Gbl.Prefs.Language]); Gbl.Ctys.Lst[NumCty].Name[Gbl.Prefs.Language]);
fprintf (Gbl.F.Out,"</select>"); fprintf (Gbl.F.Out,"</select>");
Act_EndForm (); Frm_EndForm ();
/* Free list of countries */ /* Free list of countries */
Cty_FreeListCountries (); Cty_FreeListCountries ();
@ -398,7 +399,7 @@ static void Ins_Configuration (bool PrintView)
// Only system admins can edit institution full name // Only system admins can edit institution full name
{ {
/* Form to change institution full name */ /* Form to change institution full name */
Act_StartForm (ActRenInsFulCfg); Frm_StartForm (ActRenInsFulCfg);
fprintf (Gbl.F.Out,"<input type=\"text\"" fprintf (Gbl.F.Out,"<input type=\"text\""
" id=\"FullName\" name=\"FullName\"" " id=\"FullName\" name=\"FullName\""
" maxlength=\"%u\" value=\"%s\"" " maxlength=\"%u\" value=\"%s\""
@ -407,7 +408,7 @@ static void Ins_Configuration (bool PrintView)
Hie_MAX_CHARS_FULL_NAME, Hie_MAX_CHARS_FULL_NAME,
Gbl.CurrentIns.Ins.FullName, Gbl.CurrentIns.Ins.FullName,
Gbl.Form.Id); Gbl.Form.Id);
Act_EndForm (); Frm_EndForm ();
} }
else // I can not edit institution full name else // I can not edit institution full name
fprintf (Gbl.F.Out,"%s",Gbl.CurrentIns.Ins.FullName); fprintf (Gbl.F.Out,"%s",Gbl.CurrentIns.Ins.FullName);
@ -427,7 +428,7 @@ static void Ins_Configuration (bool PrintView)
// Only system admins can edit institution short name // Only system admins can edit institution short name
{ {
/* Form to change institution short name */ /* Form to change institution short name */
Act_StartForm (ActRenInsShoCfg); Frm_StartForm (ActRenInsShoCfg);
fprintf (Gbl.F.Out,"<input type=\"text\"" fprintf (Gbl.F.Out,"<input type=\"text\""
" id=\"ShortName\" name=\"ShortName\"" " id=\"ShortName\" name=\"ShortName\""
" maxlength=\"%u\" value=\"%s\"" " maxlength=\"%u\" value=\"%s\""
@ -436,7 +437,7 @@ static void Ins_Configuration (bool PrintView)
Hie_MAX_CHARS_SHRT_NAME, Hie_MAX_CHARS_SHRT_NAME,
Gbl.CurrentIns.Ins.ShrtName, Gbl.CurrentIns.Ins.ShrtName,
Gbl.Form.Id); Gbl.Form.Id);
Act_EndForm (); Frm_EndForm ();
} }
else // I can not edit institution short name else // I can not edit institution short name
fprintf (Gbl.F.Out,"%s",Gbl.CurrentIns.Ins.ShrtName); fprintf (Gbl.F.Out,"%s",Gbl.CurrentIns.Ins.ShrtName);
@ -457,7 +458,7 @@ static void Ins_Configuration (bool PrintView)
// can change institution WWW // can change institution WWW
{ {
/* Form to change institution WWW */ /* Form to change institution WWW */
Act_StartForm (ActChgInsWWWCfg); Frm_StartForm (ActChgInsWWWCfg);
fprintf (Gbl.F.Out,"<input type=\"url\" id=\"WWW\" name=\"WWW\"" fprintf (Gbl.F.Out,"<input type=\"url\" id=\"WWW\" name=\"WWW\""
" maxlength=\"%u\" value=\"%s\"" " maxlength=\"%u\" value=\"%s\""
" class=\"INPUT_WWW\"" " class=\"INPUT_WWW\""
@ -465,7 +466,7 @@ static void Ins_Configuration (bool PrintView)
Cns_MAX_CHARS_WWW, Cns_MAX_CHARS_WWW,
Gbl.CurrentIns.Ins.WWW, Gbl.CurrentIns.Ins.WWW,
Gbl.Form.Id); Gbl.Form.Id);
Act_EndForm (); Frm_EndForm ();
} }
else // I can not change institution WWW else // I can not change institution WWW
fprintf (Gbl.F.Out,"<div class=\"EXTERNAL_WWW_LONG\">" fprintf (Gbl.F.Out,"<div class=\"EXTERNAL_WWW_LONG\">"
@ -537,15 +538,15 @@ static void Ins_Configuration (bool PrintView)
Txt_Centres); Txt_Centres);
/* Form to go to see centres of this institution */ /* Form to go to see centres of this institution */
Act_StartFormGoTo (ActSeeCtr); Frm_StartFormGoTo (ActSeeCtr);
Ins_PutParamInsCod (Gbl.CurrentIns.Ins.InsCod); Ins_PutParamInsCod (Gbl.CurrentIns.Ins.InsCod);
snprintf (Gbl.Title,sizeof (Gbl.Title), snprintf (Gbl.Title,sizeof (Gbl.Title),
Txt_Centres_of_INSTITUTION_X, Txt_Centres_of_INSTITUTION_X,
Gbl.CurrentIns.Ins.ShrtName); Gbl.CurrentIns.Ins.ShrtName);
Act_LinkFormSubmit (Gbl.Title,"DAT",NULL); Frm_LinkFormSubmit (Gbl.Title,"DAT",NULL);
fprintf (Gbl.F.Out,"%u</a>", fprintf (Gbl.F.Out,"%u</a>",
Ctr_GetNumCtrsInIns (Gbl.CurrentIns.Ins.InsCod)); Ctr_GetNumCtrsInIns (Gbl.CurrentIns.Ins.InsCod));
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</td>" fprintf (Gbl.F.Out,"</td>"
"</tr>"); "</tr>");
@ -708,10 +709,10 @@ static void Ins_ListInstitutions (void)
/***** Button to create institution *****/ /***** Button to create institution *****/
if (Ins_CheckIfICanCreateInstitutions ()) if (Ins_CheckIfICanCreateInstitutions ())
{ {
Act_StartForm (ActEdiIns); Frm_StartForm (ActEdiIns);
Btn_PutConfirmButton (Gbl.Inss.Num ? Txt_Create_another_institution : Btn_PutConfirmButton (Gbl.Inss.Num ? Txt_Create_another_institution :
Txt_Create_institution); Txt_Create_institution);
Act_EndForm (); Frm_EndForm ();
} }
Box_EndBox (); Box_EndBox ();
@ -864,9 +865,9 @@ static void Ins_PutHeadInstitutionsForSeeing (bool OrderSelectable)
"RIGHT_MIDDLE"); "RIGHT_MIDDLE");
if (OrderSelectable) if (OrderSelectable)
{ {
Act_StartForm (ActSeeIns); Frm_StartForm (ActSeeIns);
Par_PutHiddenParamUnsigned ("Order",(unsigned) Order); Par_PutHiddenParamUnsigned ("Order",(unsigned) Order);
Act_LinkFormSubmit (Txt_INSTITUTIONS_HELP_ORDER[Order],"TIT_TBL",NULL); Frm_LinkFormSubmit (Txt_INSTITUTIONS_HELP_ORDER[Order],"TIT_TBL",NULL);
if (Order == Gbl.Inss.SelectedOrder) if (Order == Gbl.Inss.SelectedOrder)
fprintf (Gbl.F.Out,"<u>"); fprintf (Gbl.F.Out,"<u>");
} }
@ -876,7 +877,7 @@ static void Ins_PutHeadInstitutionsForSeeing (bool OrderSelectable)
if (Order == Gbl.Inss.SelectedOrder) if (Order == Gbl.Inss.SelectedOrder)
fprintf (Gbl.F.Out,"</u>"); fprintf (Gbl.F.Out,"</u>");
fprintf (Gbl.F.Out,"</a>"); fprintf (Gbl.F.Out,"</a>");
Act_EndForm (); Frm_EndForm ();
} }
fprintf (Gbl.F.Out,"</th>"); fprintf (Gbl.F.Out,"</th>");
} }
@ -1358,7 +1359,7 @@ void Ins_WriteSelectorOfInstitution (void)
long InsCod; long InsCod;
/***** Start form *****/ /***** Start form *****/
Act_StartFormGoTo (ActSeeCtr); Frm_StartFormGoTo (ActSeeCtr);
fprintf (Gbl.F.Out,"<select id=\"ins\" name=\"ins\" style=\"width:175px;\""); fprintf (Gbl.F.Out,"<select id=\"ins\" name=\"ins\" style=\"width:175px;\"");
if (Gbl.CurrentCty.Cty.CtyCod > 0) if (Gbl.CurrentCty.Cty.CtyCod > 0)
fprintf (Gbl.F.Out," onchange=\"document.getElementById('%s').submit();\"", fprintf (Gbl.F.Out," onchange=\"document.getElementById('%s').submit();\"",
@ -1407,7 +1408,7 @@ void Ins_WriteSelectorOfInstitution (void)
/***** End form *****/ /***** End form *****/
fprintf (Gbl.F.Out,"</select>"); fprintf (Gbl.F.Out,"</select>");
Act_EndForm (); Frm_EndForm ();
} }
/*****************************************************************************/ /*****************************************************************************/
@ -1450,10 +1451,10 @@ static void Ins_ListInstitutionsForEdition (void)
Ico_PutIconRemovalNotAllowed (); Ico_PutIconRemovalNotAllowed ();
else else
{ {
Act_StartForm (ActRemIns); Frm_StartForm (ActRemIns);
Ins_PutParamOtherInsCod (Ins->InsCod); Ins_PutParamOtherInsCod (Ins->InsCod);
Ico_PutIconRemove (); Ico_PutIconRemove ();
Act_EndForm (); Frm_EndForm ();
} }
fprintf (Gbl.F.Out,"</td>"); fprintf (Gbl.F.Out,"</td>");
@ -1474,7 +1475,7 @@ static void Ins_ListInstitutionsForEdition (void)
fprintf (Gbl.F.Out,"<td class=\"DAT LEFT_MIDDLE\">"); fprintf (Gbl.F.Out,"<td class=\"DAT LEFT_MIDDLE\">");
if (ICanEdit) if (ICanEdit)
{ {
Act_StartForm (ActRenInsSho); Frm_StartForm (ActRenInsSho);
Ins_PutParamOtherInsCod (Ins->InsCod); Ins_PutParamOtherInsCod (Ins->InsCod);
fprintf (Gbl.F.Out,"<input type=\"text\" name=\"ShortName\"" fprintf (Gbl.F.Out,"<input type=\"text\" name=\"ShortName\""
" maxlength=\"%u\" value=\"%s\"" " maxlength=\"%u\" value=\"%s\""
@ -1482,7 +1483,7 @@ static void Ins_ListInstitutionsForEdition (void)
" onchange=\"document.getElementById('%s').submit();\" />", " onchange=\"document.getElementById('%s').submit();\" />",
Hie_MAX_CHARS_SHRT_NAME,Ins->ShrtName, Hie_MAX_CHARS_SHRT_NAME,Ins->ShrtName,
Gbl.Form.Id); Gbl.Form.Id);
Act_EndForm (); Frm_EndForm ();
} }
else else
fprintf (Gbl.F.Out,"%s",Ins->ShrtName); fprintf (Gbl.F.Out,"%s",Ins->ShrtName);
@ -1492,7 +1493,7 @@ static void Ins_ListInstitutionsForEdition (void)
fprintf (Gbl.F.Out,"<td class=\"DAT LEFT_MIDDLE\">"); fprintf (Gbl.F.Out,"<td class=\"DAT LEFT_MIDDLE\">");
if (ICanEdit) if (ICanEdit)
{ {
Act_StartForm (ActRenInsFul); Frm_StartForm (ActRenInsFul);
Ins_PutParamOtherInsCod (Ins->InsCod); Ins_PutParamOtherInsCod (Ins->InsCod);
fprintf (Gbl.F.Out,"<input type=\"text\" name=\"FullName\"" fprintf (Gbl.F.Out,"<input type=\"text\" name=\"FullName\""
" maxlength=\"%u\" value=\"%s\"" " maxlength=\"%u\" value=\"%s\""
@ -1501,7 +1502,7 @@ static void Ins_ListInstitutionsForEdition (void)
Hie_MAX_CHARS_FULL_NAME, Hie_MAX_CHARS_FULL_NAME,
Ins->FullName, Ins->FullName,
Gbl.Form.Id); Gbl.Form.Id);
Act_EndForm (); Frm_EndForm ();
} }
else else
fprintf (Gbl.F.Out,"%s",Ins->FullName); fprintf (Gbl.F.Out,"%s",Ins->FullName);
@ -1511,7 +1512,7 @@ static void Ins_ListInstitutionsForEdition (void)
fprintf (Gbl.F.Out,"<td class=\"DAT LEFT_MIDDLE\">"); fprintf (Gbl.F.Out,"<td class=\"DAT LEFT_MIDDLE\">");
if (ICanEdit) if (ICanEdit)
{ {
Act_StartForm (ActChgInsWWW); Frm_StartForm (ActChgInsWWW);
Ins_PutParamOtherInsCod (Ins->InsCod); Ins_PutParamOtherInsCod (Ins->InsCod);
fprintf (Gbl.F.Out,"<input type=\"url\" name=\"WWW\"" fprintf (Gbl.F.Out,"<input type=\"url\" name=\"WWW\""
" maxlength=\"%u\" value=\"%s\"" " maxlength=\"%u\" value=\"%s\""
@ -1520,7 +1521,7 @@ static void Ins_ListInstitutionsForEdition (void)
Cns_MAX_CHARS_WWW, Cns_MAX_CHARS_WWW,
Ins->WWW, Ins->WWW,
Gbl.Form.Id); Gbl.Form.Id);
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</td>"); fprintf (Gbl.F.Out,"</td>");
} }
else else
@ -1568,7 +1569,7 @@ static void Ins_ListInstitutionsForEdition (void)
if (Gbl.Usrs.Me.Role.Logged == Rol_SYS_ADM && if (Gbl.Usrs.Me.Role.Logged == Rol_SYS_ADM &&
StatusTxt == Ins_STATUS_PENDING) StatusTxt == Ins_STATUS_PENDING)
{ {
Act_StartForm (ActChgInsSta); Frm_StartForm (ActChgInsSta);
Ins_PutParamOtherInsCod (Ins->InsCod); Ins_PutParamOtherInsCod (Ins->InsCod);
fprintf (Gbl.F.Out,"<select name=\"Status\" class=\"INPUT_STATUS\"" fprintf (Gbl.F.Out,"<select name=\"Status\" class=\"INPUT_STATUS\""
" onchange=\"document.getElementById('%s').submit();\">" " onchange=\"document.getElementById('%s').submit();\">"
@ -1580,7 +1581,7 @@ static void Ins_ListInstitutionsForEdition (void)
Txt_INSTITUTION_STATUS[Ins_STATUS_PENDING], Txt_INSTITUTION_STATUS[Ins_STATUS_PENDING],
(unsigned) Ins_GetStatusBitsFromStatusTxt (Ins_STATUS_ACTIVE), (unsigned) Ins_GetStatusBitsFromStatusTxt (Ins_STATUS_ACTIVE),
Txt_INSTITUTION_STATUS[Ins_STATUS_ACTIVE]); Txt_INSTITUTION_STATUS[Ins_STATUS_ACTIVE]);
Act_EndForm (); Frm_EndForm ();
} }
else if (StatusTxt != Ins_STATUS_ACTIVE) // If active ==> do not show anything else if (StatusTxt != Ins_STATUS_ACTIVE) // If active ==> do not show anything
fprintf (Gbl.F.Out,"%s",Txt_INSTITUTION_STATUS[StatusTxt]); fprintf (Gbl.F.Out,"%s",Txt_INSTITUTION_STATUS[StatusTxt]);
@ -2189,9 +2190,9 @@ static void Ins_PutFormToCreateInstitution (void)
/***** Start form *****/ /***** Start form *****/
if (Gbl.Usrs.Me.Role.Logged == Rol_SYS_ADM) if (Gbl.Usrs.Me.Role.Logged == Rol_SYS_ADM)
Act_StartForm (ActNewIns); Frm_StartForm (ActNewIns);
else if (Gbl.Usrs.Me.Role.Max >= Rol_GST) else if (Gbl.Usrs.Me.Role.Max >= Rol_GST)
Act_StartForm (ActReqIns); Frm_StartForm (ActReqIns);
else else
Lay_ShowErrorAndExit ("You can not edit institutions."); Lay_ShowErrorAndExit ("You can not edit institutions.");
@ -2270,7 +2271,7 @@ static void Ins_PutFormToCreateInstitution (void)
Box_EndBoxTableWithButton (Btn_CREATE_BUTTON,Txt_Create_institution); Box_EndBoxTableWithButton (Btn_CREATE_BUTTON,Txt_Create_institution);
/***** End form *****/ /***** End form *****/
Act_EndForm (); Frm_EndForm ();
} }
/*****************************************************************************/ /*****************************************************************************/

View File

@ -30,6 +30,7 @@
#include "swad_box.h" #include "swad_box.h"
#include "swad_database.h" #include "swad_database.h"
#include "swad_form.h"
#include "swad_global.h" #include "swad_global.h"
#include "swad_language.h" #include "swad_language.h"
#include "swad_preference.h" #include "swad_preference.h"
@ -99,7 +100,7 @@ void Lan_PutSelectorToSelectLanguage (void)
extern const char *Txt_STR_LANG_NAME[1 + Txt_NUM_LANGUAGES]; extern const char *Txt_STR_LANG_NAME[1 + Txt_NUM_LANGUAGES];
Txt_Language_t Lan; Txt_Language_t Lan;
Act_StartForm (ActReqChgLan); Frm_StartForm (ActReqChgLan);
fprintf (Gbl.F.Out,"<select name=\"Lan\"" fprintf (Gbl.F.Out,"<select name=\"Lan\""
" style=\"width:112px; margin:0;\"" " style=\"width:112px; margin:0;\""
" onchange=\"document.getElementById('%s').submit();\">", " onchange=\"document.getElementById('%s').submit();\">",
@ -114,7 +115,7 @@ void Lan_PutSelectorToSelectLanguage (void)
fprintf (Gbl.F.Out,">%s</option>",Txt_STR_LANG_NAME[Lan]); fprintf (Gbl.F.Out,">%s</option>",Txt_STR_LANG_NAME[Lan]);
} }
fprintf (Gbl.F.Out,"</select>"); fprintf (Gbl.F.Out,"</select>");
Act_EndForm (); Frm_EndForm ();
} }
/*****************************************************************************/ /*****************************************************************************/

View File

@ -38,6 +38,7 @@
#include "swad_database.h" #include "swad_database.h"
#include "swad_exam.h" #include "swad_exam.h"
#include "swad_follow.h" #include "swad_follow.h"
#include "swad_form.h"
#include "swad_global.h" #include "swad_global.h"
#include "swad_help.h" #include "swad_help.h"
#include "swad_hierarchy.h" #include "swad_hierarchy.h"
@ -862,11 +863,11 @@ static void Lay_WritePageTopHeading (void)
fprintf (Gbl.F.Out,"<div id=\"head_row_1_left\">"); fprintf (Gbl.F.Out,"<div id=\"head_row_1_left\">");
/* Start form to go to home page */ /* Start form to go to home page */
Act_StartFormGoTo (ActMnu); Frm_StartFormGoTo (ActMnu);
Par_PutHiddenParamUnsigned ("NxtTab",(unsigned) TabSys); Par_PutHiddenParamUnsigned ("NxtTab",(unsigned) TabSys);
fprintf (Gbl.F.Out,"<div id=\"head_row_1_logo_small\">"); fprintf (Gbl.F.Out,"<div id=\"head_row_1_logo_small\">");
Act_LinkFormSubmit (Txt_System,NULL,NULL); Frm_LinkFormSubmit (Txt_System,NULL,NULL);
fprintf (Gbl.F.Out,"<img src=\"%s/%s\" alt=\"%s\" title=\"%s\"" fprintf (Gbl.F.Out,"<img src=\"%s/%s\" alt=\"%s\" title=\"%s\""
" class=\"CENTER_MIDDLE\"" " class=\"CENTER_MIDDLE\""
" style=\"width:%upx; height:%upx;\" />" " style=\"width:%upx; height:%upx;\" />"
@ -876,7 +877,7 @@ static void Lay_WritePageTopHeading (void)
Cfg_PLATFORM_LOGO_SMALL_WIDTH,Cfg_PLATFORM_LOGO_SMALL_HEIGHT); Cfg_PLATFORM_LOGO_SMALL_WIDTH,Cfg_PLATFORM_LOGO_SMALL_HEIGHT);
fprintf (Gbl.F.Out,"</div>" fprintf (Gbl.F.Out,"</div>"
"<div id=\"head_row_1_logo_big\">"); "<div id=\"head_row_1_logo_big\">");
Act_LinkFormSubmit (Txt_System,NULL,NULL); Frm_LinkFormSubmit (Txt_System,NULL,NULL);
fprintf (Gbl.F.Out,"<img src=\"%s/%s\" alt=\"%s\" title=\"%s\"" fprintf (Gbl.F.Out,"<img src=\"%s/%s\" alt=\"%s\" title=\"%s\""
" class=\"CENTER_MIDDLE\"" " class=\"CENTER_MIDDLE\""
" style=\"width:%upx; height:%upx;\" />" " style=\"width:%upx; height:%upx;\" />"
@ -886,14 +887,14 @@ static void Lay_WritePageTopHeading (void)
Cfg_PLATFORM_LOGO_BIG_WIDTH,Cfg_PLATFORM_LOGO_BIG_HEIGHT); Cfg_PLATFORM_LOGO_BIG_WIDTH,Cfg_PLATFORM_LOGO_BIG_HEIGHT);
fprintf (Gbl.F.Out,"</div>" fprintf (Gbl.F.Out,"</div>"
"<div id=\"head_row_1_tagline\">"); "<div id=\"head_row_1_tagline\">");
Act_LinkFormSubmit (Txt_TAGLINE,The_ClassTagline[Gbl.Prefs.Theme],NULL); Frm_LinkFormSubmit (Txt_TAGLINE,The_ClassTagline[Gbl.Prefs.Theme],NULL);
fprintf (Gbl.F.Out,"%s" fprintf (Gbl.F.Out,"%s"
"</a>" "</a>"
"</div>", // head_row_1_tagline "</div>", // head_row_1_tagline
Txt_TAGLINE_BR); Txt_TAGLINE_BR);
/* End form to go to home page */ /* End form to go to home page */
Act_EndForm (); Frm_EndForm ();
Sch_PutFormToSearchInPageTopHeading (); Sch_PutFormToSearchInPageTopHeading ();
@ -1102,7 +1103,7 @@ void Lay_PutContextualLink (Act_Action_t NextAction,const char *Anchor,
// jumping to the next line on narrow screens // jumping to the next line on narrow screens
/***** Start form *****/ /***** Start form *****/
Act_StartFormAnchor (NextAction,Anchor); Frm_StartFormAnchor (NextAction,Anchor);
if (FuncParams) if (FuncParams)
FuncParams (); FuncParams ();
@ -1113,7 +1114,7 @@ void Lay_PutContextualLink (Act_Action_t NextAction,const char *Anchor,
OnSubmit); OnSubmit);
/***** End form *****/ /***** End form *****/
Act_EndForm (); Frm_EndForm ();
/***** Separator *****/ /***** Separator *****/
if (Text) if (Text)
@ -1139,7 +1140,7 @@ void Lay_PutContextualCheckbox (Act_Action_t NextAction,
// jumping to the next line on narrow screens // jumping to the next line on narrow screens
/***** Start form *****/ /***** Start form *****/
Act_StartForm (NextAction); Frm_StartForm (NextAction);
if (FuncParams) if (FuncParams)
FuncParams (); FuncParams ();
@ -1172,7 +1173,7 @@ void Lay_PutContextualCheckbox (Act_Action_t NextAction,
"</div>"); "</div>");
/***** End form *****/ /***** End form *****/
Act_EndForm (); Frm_EndForm ();
/***** Separator *****/ /***** Separator *****/
if (Text) if (Text)

View File

@ -34,6 +34,7 @@
#include "swad_box.h" #include "swad_box.h"
#include "swad_constant.h" #include "swad_constant.h"
#include "swad_database.h" #include "swad_database.h"
#include "swad_form.h"
#include "swad_global.h" #include "swad_global.h"
#include "swad_link.h" #include "swad_link.h"
#include "swad_parameter.h" #include "swad_parameter.h"
@ -128,9 +129,9 @@ void Lnk_SeeLinks (void)
/***** Button to create link *****/ /***** Button to create link *****/
if (Gbl.Usrs.Me.Role.Logged == Rol_SYS_ADM) if (Gbl.Usrs.Me.Role.Logged == Rol_SYS_ADM)
{ {
Act_StartForm (ActEdiLnk); Frm_StartForm (ActEdiLnk);
Btn_PutConfirmButton (Txt_New_link); Btn_PutConfirmButton (Txt_New_link);
Act_EndForm (); Frm_EndForm ();
} }
/***** End box *****/ /***** End box *****/
@ -165,12 +166,12 @@ void Lnk_WriteMenuWithInstitutionalLinks (void)
{ {
fprintf (Gbl.F.Out,"<div id=\"institutional_links\">"); fprintf (Gbl.F.Out,"<div id=\"institutional_links\">");
Act_StartForm (ActSeeLnk); Frm_StartForm (ActSeeLnk);
Act_LinkFormSubmit (Txt_Links,NULL,NULL); Frm_LinkFormSubmit (Txt_Links,NULL,NULL);
fprintf (Gbl.F.Out," %s" fprintf (Gbl.F.Out," %s"
"</a>", "</a>",
Txt_Links); Txt_Links);
Act_EndForm (); Frm_EndForm ();
Lnk_WriteListOfLinks (); Lnk_WriteListOfLinks ();
fprintf (Gbl.F.Out,"</div>"); fprintf (Gbl.F.Out,"</div>");
@ -405,10 +406,10 @@ static void Lnk_ListLinksForEdition (void)
/* Put icon to remove link */ /* Put icon to remove link */
fprintf (Gbl.F.Out,"<tr>" fprintf (Gbl.F.Out,"<tr>"
"<td class=\"BM\">"); "<td class=\"BM\">");
Act_StartForm (ActRemLnk); Frm_StartForm (ActRemLnk);
Lnk_PutParamLnkCod (Lnk->LnkCod); Lnk_PutParamLnkCod (Lnk->LnkCod);
Ico_PutIconRemove (); Ico_PutIconRemove ();
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</td>"); fprintf (Gbl.F.Out,"</td>");
/* Link code */ /* Link code */
@ -419,7 +420,7 @@ static void Lnk_ListLinksForEdition (void)
/* Link short name */ /* Link short name */
fprintf (Gbl.F.Out,"<td class=\"CENTER_MIDDLE\">"); fprintf (Gbl.F.Out,"<td class=\"CENTER_MIDDLE\">");
Act_StartForm (ActRenLnkSho); Frm_StartForm (ActRenLnkSho);
Lnk_PutParamLnkCod (Lnk->LnkCod); Lnk_PutParamLnkCod (Lnk->LnkCod);
fprintf (Gbl.F.Out,"<input type=\"text\" name=\"ShortName\"" fprintf (Gbl.F.Out,"<input type=\"text\" name=\"ShortName\""
" maxlength=\"%u\" value=\"%s\"" " maxlength=\"%u\" value=\"%s\""
@ -427,12 +428,12 @@ static void Lnk_ListLinksForEdition (void)
" onchange=\"document.getElementById('%s').submit();\" />", " onchange=\"document.getElementById('%s').submit();\" />",
Lnk_MAX_CHARS_LINK_SHRT_NAME,Lnk->ShrtName, Lnk_MAX_CHARS_LINK_SHRT_NAME,Lnk->ShrtName,
Gbl.Form.Id); Gbl.Form.Id);
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</td>"); fprintf (Gbl.F.Out,"</td>");
/* Link full name */ /* Link full name */
fprintf (Gbl.F.Out,"<td class=\"CENTER_MIDDLE\">"); fprintf (Gbl.F.Out,"<td class=\"CENTER_MIDDLE\">");
Act_StartForm (ActRenLnkFul); Frm_StartForm (ActRenLnkFul);
Lnk_PutParamLnkCod (Lnk->LnkCod); Lnk_PutParamLnkCod (Lnk->LnkCod);
fprintf (Gbl.F.Out,"<input type=\"text\" name=\"FullName\"" fprintf (Gbl.F.Out,"<input type=\"text\" name=\"FullName\""
" maxlength=\"%u\" value=\"%s\"" " maxlength=\"%u\" value=\"%s\""
@ -440,12 +441,12 @@ static void Lnk_ListLinksForEdition (void)
" onchange=\"document.getElementById('%s').submit();\" />", " onchange=\"document.getElementById('%s').submit();\" />",
Lnk_MAX_CHARS_LINK_FULL_NAME,Lnk->FullName, Lnk_MAX_CHARS_LINK_FULL_NAME,Lnk->FullName,
Gbl.Form.Id); Gbl.Form.Id);
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</td>"); fprintf (Gbl.F.Out,"</td>");
/* Link WWW */ /* Link WWW */
fprintf (Gbl.F.Out,"<td class=\"CENTER_MIDDLE\">"); fprintf (Gbl.F.Out,"<td class=\"CENTER_MIDDLE\">");
Act_StartForm (ActChgLnkWWW); Frm_StartForm (ActChgLnkWWW);
Lnk_PutParamLnkCod (Lnk->LnkCod); Lnk_PutParamLnkCod (Lnk->LnkCod);
fprintf (Gbl.F.Out,"<input type=\"url\" name=\"WWW\"" fprintf (Gbl.F.Out,"<input type=\"url\" name=\"WWW\""
" maxlength=\"%u\" value=\"%s\"" " maxlength=\"%u\" value=\"%s\""
@ -453,7 +454,7 @@ static void Lnk_ListLinksForEdition (void)
" onchange=\"document.getElementById('%s').submit();\" />", " onchange=\"document.getElementById('%s').submit();\" />",
Cns_MAX_CHARS_WWW,Lnk->WWW, Cns_MAX_CHARS_WWW,Lnk->WWW,
Gbl.Form.Id); Gbl.Form.Id);
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</td>" fprintf (Gbl.F.Out,"</td>"
"</tr>"); "</tr>");
} }
@ -707,7 +708,7 @@ static void Lnk_PutFormToCreateLink (void)
Lnk = &Gbl.Links.EditingLnk; Lnk = &Gbl.Links.EditingLnk;
/***** Start form *****/ /***** Start form *****/
Act_StartForm (ActNewLnk); Frm_StartForm (ActNewLnk);
/***** Start box and table *****/ /***** Start box and table *****/
Box_StartBoxTable (NULL,Txt_New_link,NULL, Box_StartBoxTable (NULL,Txt_New_link,NULL,
@ -753,7 +754,7 @@ static void Lnk_PutFormToCreateLink (void)
Box_EndBoxTableWithButton (Btn_CREATE_BUTTON,Txt_Create_link); Box_EndBoxTableWithButton (Btn_CREATE_BUTTON,Txt_Create_link);
/***** End form *****/ /***** End form *****/
Act_EndForm (); Frm_EndForm ();
} }
/*****************************************************************************/ /*****************************************************************************/

View File

@ -29,6 +29,7 @@
#include "swad_action.h" #include "swad_action.h"
#include "swad_box.h" #include "swad_box.h"
#include "swad_form.h"
#include "swad_global.h" #include "swad_global.h"
#include "swad_scope.h" #include "swad_scope.h"
#include "swad_theme.h" #include "swad_theme.h"
@ -286,7 +287,7 @@ void Log_RequestLogo (Sco_Scope_t Scope)
} }
/***** Start form to upload logo *****/ /***** Start form to upload logo *****/
Act_StartForm (ActionRec); Frm_StartForm (ActionRec);
/***** Start box *****/ /***** Start box *****/
Box_StartBox (NULL,Txt_Logo,NULL, Box_StartBox (NULL,Txt_Logo,NULL,
@ -313,7 +314,7 @@ void Log_RequestLogo (Sco_Scope_t Scope)
Box_EndBox (); Box_EndBox ();
/***** End form *****/ /***** End form *****/
Act_EndForm (); Frm_EndForm ();
} }
/*****************************************************************************/ /*****************************************************************************/

View File

@ -36,6 +36,7 @@
#include "swad_account.h" #include "swad_account.h"
#include "swad_box.h" #include "swad_box.h"
#include "swad_database.h" #include "swad_database.h"
#include "swad_form.h"
#include "swad_global.h" #include "swad_global.h"
#include "swad_mail.h" #include "swad_mail.h"
#include "swad_parameter.h" #include "swad_parameter.h"
@ -128,16 +129,16 @@ void Mai_SeeMailDomains (void)
Order++) Order++)
{ {
fprintf (Gbl.F.Out,"<th class=\"LEFT_MIDDLE\">"); fprintf (Gbl.F.Out,"<th class=\"LEFT_MIDDLE\">");
Act_StartForm (ActSeeMai); Frm_StartForm (ActSeeMai);
Par_PutHiddenParamUnsigned ("Order",(unsigned) Order); Par_PutHiddenParamUnsigned ("Order",(unsigned) Order);
Act_LinkFormSubmit (Txt_EMAIL_DOMAIN_HELP_ORDER[Order],"TIT_TBL",NULL); Frm_LinkFormSubmit (Txt_EMAIL_DOMAIN_HELP_ORDER[Order],"TIT_TBL",NULL);
if (Order == Gbl.Mails.SelectedOrder) if (Order == Gbl.Mails.SelectedOrder)
fprintf (Gbl.F.Out,"<u>"); fprintf (Gbl.F.Out,"<u>");
fprintf (Gbl.F.Out,"%s",Txt_EMAIL_DOMAIN_ORDER[Order]); fprintf (Gbl.F.Out,"%s",Txt_EMAIL_DOMAIN_ORDER[Order]);
if (Order == Gbl.Mails.SelectedOrder) if (Order == Gbl.Mails.SelectedOrder)
fprintf (Gbl.F.Out,"</u>"); fprintf (Gbl.F.Out,"</u>");
fprintf (Gbl.F.Out,"</a>"); fprintf (Gbl.F.Out,"</a>");
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</th>"); fprintf (Gbl.F.Out,"</th>");
} }
fprintf (Gbl.F.Out,"</tr>"); fprintf (Gbl.F.Out,"</tr>");
@ -476,10 +477,10 @@ static void Mai_ListMailDomainsForEdition (void)
/* Put icon to remove mail */ /* Put icon to remove mail */
fprintf (Gbl.F.Out,"<tr>" fprintf (Gbl.F.Out,"<tr>"
"<td class=\"BM\">"); "<td class=\"BM\">");
Act_StartForm (ActRemMai); Frm_StartForm (ActRemMai);
Mai_PutParamMaiCod (Mai->MaiCod); Mai_PutParamMaiCod (Mai->MaiCod);
Ico_PutIconRemove (); Ico_PutIconRemove ();
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</td>"); fprintf (Gbl.F.Out,"</td>");
/* Mail code */ /* Mail code */
@ -490,26 +491,26 @@ static void Mai_ListMailDomainsForEdition (void)
/* Mail domain */ /* Mail domain */
fprintf (Gbl.F.Out,"<td class=\"CENTER_MIDDLE\">"); fprintf (Gbl.F.Out,"<td class=\"CENTER_MIDDLE\">");
Act_StartForm (ActRenMaiSho); Frm_StartForm (ActRenMaiSho);
Mai_PutParamMaiCod (Mai->MaiCod); Mai_PutParamMaiCod (Mai->MaiCod);
fprintf (Gbl.F.Out,"<input type=\"text\" name=\"Domain\"" fprintf (Gbl.F.Out,"<input type=\"text\" name=\"Domain\""
" size=\"15\" maxlength=\"%u\" value=\"%s\"" " size=\"15\" maxlength=\"%u\" value=\"%s\""
" onchange=\"document.getElementById('%s').submit();\" />", " onchange=\"document.getElementById('%s').submit();\" />",
Cns_MAX_CHARS_EMAIL_ADDRESS,Mai->Domain, Cns_MAX_CHARS_EMAIL_ADDRESS,Mai->Domain,
Gbl.Form.Id); Gbl.Form.Id);
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</td>"); fprintf (Gbl.F.Out,"</td>");
/* Mail domain info */ /* Mail domain info */
fprintf (Gbl.F.Out,"<td class=\"CENTER_MIDDLE\">"); fprintf (Gbl.F.Out,"<td class=\"CENTER_MIDDLE\">");
Act_StartForm (ActRenMaiFul); Frm_StartForm (ActRenMaiFul);
Mai_PutParamMaiCod (Mai->MaiCod); Mai_PutParamMaiCod (Mai->MaiCod);
fprintf (Gbl.F.Out,"<input type=\"text\" name=\"Info\"" fprintf (Gbl.F.Out,"<input type=\"text\" name=\"Info\""
" size=\"40\" maxlength=\"%u\" value=\"%s\"" " size=\"40\" maxlength=\"%u\" value=\"%s\""
" onchange=\"document.getElementById('%s').submit();\" />", " onchange=\"document.getElementById('%s').submit();\" />",
Mai_MAX_CHARS_MAIL_INFO,Mai->Info, Mai_MAX_CHARS_MAIL_INFO,Mai->Info,
Gbl.Form.Id); Gbl.Form.Id);
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</td>"); fprintf (Gbl.F.Out,"</td>");
/* Number of users */ /* Number of users */
@ -730,7 +731,7 @@ static void Mai_PutFormToCreateMailDomain (void)
Mai = &Gbl.Mails.EditingMai; Mai = &Gbl.Mails.EditingMai;
/***** Start form *****/ /***** Start form *****/
Act_StartForm (ActNewMai); Frm_StartForm (ActNewMai);
/***** Start box and table *****/ /***** Start box and table *****/
Box_StartBoxTable (NULL,Txt_New_email_domain,NULL, Box_StartBoxTable (NULL,Txt_New_email_domain,NULL,
@ -772,7 +773,7 @@ static void Mai_PutFormToCreateMailDomain (void)
Box_EndBoxTableWithButton (Btn_CREATE_BUTTON,Txt_Create_email_domain); Box_EndBoxTableWithButton (Btn_CREATE_BUTTON,Txt_Create_email_domain);
/***** End form *****/ /***** End form *****/
Act_EndForm (); Frm_EndForm ();
} }
/*****************************************************************************/ /*****************************************************************************/
@ -1297,7 +1298,7 @@ static void Mai_ShowFormChangeUsrEmail (const struct UsrData *UsrDat,bool ItsMe,
/* Form to remove email */ /* Form to remove email */
if (ItsMe) if (ItsMe)
Act_StartFormAnchor (ActRemMaiMe,Mai_EMAIL_SECTION_ID); Frm_StartFormAnchor (ActRemMaiMe,Mai_EMAIL_SECTION_ID);
else else
{ {
switch (UsrDat->Roles.InCurrentCrs.Role) switch (UsrDat->Roles.InCurrentCrs.Role)
@ -1313,14 +1314,14 @@ static void Mai_ShowFormChangeUsrEmail (const struct UsrData *UsrDat,bool ItsMe,
NextAction = ActRemMaiOth; NextAction = ActRemMaiOth;
break; break;
} }
Act_StartFormAnchor (NextAction,Mai_EMAIL_SECTION_ID); Frm_StartFormAnchor (NextAction,Mai_EMAIL_SECTION_ID);
Usr_PutParamUsrCodEncrypted (UsrDat->EncryptedUsrCod); Usr_PutParamUsrCodEncrypted (UsrDat->EncryptedUsrCod);
} }
fprintf (Gbl.F.Out,"<input type=\"hidden\" name=\"Email\"" fprintf (Gbl.F.Out,"<input type=\"hidden\" name=\"Email\""
" value=\"%s\" />", " value=\"%s\" />",
row[0]); row[0]);
Ico_PutIconRemove (); Ico_PutIconRemove ();
Act_EndForm (); Frm_EndForm ();
/* Email */ /* Email */
fprintf (Gbl.F.Out,"%s",row[0]); fprintf (Gbl.F.Out,"%s",row[0]);
@ -1343,7 +1344,7 @@ static void Mai_ShowFormChangeUsrEmail (const struct UsrData *UsrDat,bool ItsMe,
{ {
fprintf (Gbl.F.Out,"<br />"); fprintf (Gbl.F.Out,"<br />");
if (ItsMe) if (ItsMe)
Act_StartFormAnchor (ActNewMaiMe,Mai_EMAIL_SECTION_ID); Frm_StartFormAnchor (ActNewMaiMe,Mai_EMAIL_SECTION_ID);
else else
{ {
switch (UsrDat->Roles.InCurrentCrs.Role) switch (UsrDat->Roles.InCurrentCrs.Role)
@ -1359,14 +1360,14 @@ static void Mai_ShowFormChangeUsrEmail (const struct UsrData *UsrDat,bool ItsMe,
NextAction = ActNewMaiOth; NextAction = ActNewMaiOth;
break; break;
} }
Act_StartFormAnchor (NextAction,Mai_EMAIL_SECTION_ID); Frm_StartFormAnchor (NextAction,Mai_EMAIL_SECTION_ID);
Usr_PutParamUsrCodEncrypted (UsrDat->EncryptedUsrCod); Usr_PutParamUsrCodEncrypted (UsrDat->EncryptedUsrCod);
} }
fprintf (Gbl.F.Out,"<input type=\"hidden\" name=\"NewEmail\" value=\"%s\" />", fprintf (Gbl.F.Out,"<input type=\"hidden\" name=\"NewEmail\" value=\"%s\" />",
row[0]); // Email row[0]); // Email
Btn_PutConfirmButtonInline ((ItsMe && NumEmail == 1) ? Txt_Confirm_email : Btn_PutConfirmButtonInline ((ItsMe && NumEmail == 1) ? Txt_Confirm_email :
Txt_Use_this_email); Txt_Use_this_email);
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</td>"); fprintf (Gbl.F.Out,"</td>");
} }
@ -1384,7 +1385,7 @@ static void Mai_ShowFormChangeUsrEmail (const struct UsrData *UsrDat,bool ItsMe,
NumEmails ? Txt_New_email : // A new email NumEmails ? Txt_New_email : // A new email
Txt_Email); // The first email Txt_Email); // The first email
if (ItsMe) if (ItsMe)
Act_StartFormAnchor (ActNewMaiMe,Mai_EMAIL_SECTION_ID); Frm_StartFormAnchor (ActNewMaiMe,Mai_EMAIL_SECTION_ID);
else else
{ {
switch (UsrDat->Roles.InCurrentCrs.Role) switch (UsrDat->Roles.InCurrentCrs.Role)
@ -1400,7 +1401,7 @@ static void Mai_ShowFormChangeUsrEmail (const struct UsrData *UsrDat,bool ItsMe,
NextAction = ActNewMaiOth; NextAction = ActNewMaiOth;
break; break;
} }
Act_StartFormAnchor (NextAction,Mai_EMAIL_SECTION_ID); Frm_StartFormAnchor (NextAction,Mai_EMAIL_SECTION_ID);
Usr_PutParamUsrCodEncrypted (UsrDat->EncryptedUsrCod); Usr_PutParamUsrCodEncrypted (UsrDat->EncryptedUsrCod);
} }
fprintf (Gbl.F.Out,"<input type=\"email\" id=\"NewEmail\" name=\"NewEmail\"" fprintf (Gbl.F.Out,"<input type=\"email\" id=\"NewEmail\" name=\"NewEmail\""
@ -1410,7 +1411,7 @@ static void Mai_ShowFormChangeUsrEmail (const struct UsrData *UsrDat,bool ItsMe,
Gbl.Usrs.Me.UsrDat.Email); Gbl.Usrs.Me.UsrDat.Email);
Btn_PutCreateButtonInline (NumEmails ? Txt_Change_email : // User already has an email address Btn_PutCreateButtonInline (NumEmails ? Txt_Change_email : // User already has an email address
Txt_Save); // User has no email address yet Txt_Save); // User has no email address yet
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</td>" fprintf (Gbl.F.Out,"</td>"
"</tr>"); "</tr>");

View File

@ -34,6 +34,7 @@
#include <unistd.h> // For unlink #include <unistd.h> // For unlink
#include "swad_database.h" #include "swad_database.h"
#include "swad_form.h"
#include "swad_global.h" #include "swad_global.h"
#include "swad_ID.h" #include "swad_ID.h"
#include "swad_mark.h" #include "swad_mark.h"
@ -129,11 +130,11 @@ void Mrk_GetAndWriteNumRowsHeaderAndFooter (Brw_FileType_t FileType,
Gbl.RowEvenOdd); Gbl.RowEvenOdd);
if (Gbl.CurrentCrs.Grps.GrpCod > 0) // Group zone if (Gbl.CurrentCrs.Grps.GrpCod > 0) // Group zone
{ {
Act_StartForm (ActChgNumRowHeaGrp); Frm_StartForm (ActChgNumRowHeaGrp);
Grp_PutParamGrpCod (Gbl.CurrentCrs.Grps.GrpCod); Grp_PutParamGrpCod (Gbl.CurrentCrs.Grps.GrpCod);
} }
else // Course zone else // Course zone
Act_StartForm (ActChgNumRowHeaCrs); Frm_StartForm (ActChgNumRowHeaCrs);
fprintf (Gbl.F.Out,"<label>&nbsp;%s: " fprintf (Gbl.F.Out,"<label>&nbsp;%s: "
"<input type=\"text\" name=\"%s\"" "<input type=\"text\" name=\"%s\""
" size=\"1\" maxlength=\"5\" value=\"%u\"" " size=\"1\" maxlength=\"5\" value=\"%u\""
@ -147,7 +148,7 @@ void Mrk_GetAndWriteNumRowsHeaderAndFooter (Brw_FileType_t FileType,
Brw_PutParamsFileBrowser (ActUnk, Brw_PutParamsFileBrowser (ActUnk,
PathInTree,FileName, PathInTree,FileName,
FileType,-1L); FileType,-1L);
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</td>"); fprintf (Gbl.F.Out,"</td>");
/***** Write the number of rows of footer *****/ /***** Write the number of rows of footer *****/
@ -156,11 +157,11 @@ void Mrk_GetAndWriteNumRowsHeaderAndFooter (Brw_FileType_t FileType,
Gbl.RowEvenOdd); Gbl.RowEvenOdd);
if (Gbl.CurrentCrs.Grps.GrpCod > 0) // Group zone if (Gbl.CurrentCrs.Grps.GrpCod > 0) // Group zone
{ {
Act_StartForm (ActChgNumRowFooGrp); Frm_StartForm (ActChgNumRowFooGrp);
Grp_PutParamGrpCod (Gbl.CurrentCrs.Grps.GrpCod); Grp_PutParamGrpCod (Gbl.CurrentCrs.Grps.GrpCod);
} }
else // Course zone else // Course zone
Act_StartForm (ActChgNumRowFooCrs); Frm_StartForm (ActChgNumRowFooCrs);
fprintf (Gbl.F.Out,"<label>&nbsp;%s: " fprintf (Gbl.F.Out,"<label>&nbsp;%s: "
"<input type=\"text\" name=\"%s\"" "<input type=\"text\" name=\"%s\""
" size=\"1\" maxlength=\"5\" value=\"%u\"" " size=\"1\" maxlength=\"5\" value=\"%u\""
@ -174,7 +175,7 @@ void Mrk_GetAndWriteNumRowsHeaderAndFooter (Brw_FileType_t FileType,
Brw_PutParamsFileBrowser (ActUnk, Brw_PutParamsFileBrowser (ActUnk,
PathInTree,FileName, PathInTree,FileName,
FileType,-1L); FileType,-1L);
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</td>"); fprintf (Gbl.F.Out,"</td>");
} }
} }

View File

@ -30,6 +30,7 @@
#include "swad_box.h" #include "swad_box.h"
#include "swad_database.h" #include "swad_database.h"
#include "swad_form.h"
#include "swad_global.h" #include "swad_global.h"
#include "swad_layout.h" #include "swad_layout.h"
#include "swad_menu.h" #include "swad_menu.h"
@ -365,8 +366,8 @@ void Mnu_WriteMenuThisTab (void)
"MENU_OPT_OFF"); "MENU_OPT_OFF");
/***** Start form and link *****/ /***** Start form and link *****/
Act_StartForm (NumAct); Frm_StartForm (NumAct);
Act_LinkFormSubmit (Title, Frm_LinkFormSubmit (Title,
IsTheSelectedAction ? The_ClassTxtMenuOn[Gbl.Prefs.Theme] : IsTheSelectedAction ? The_ClassTxtMenuOn[Gbl.Prefs.Theme] :
The_ClassTxtMenuOff[Gbl.Prefs.Theme],NULL); The_ClassTxtMenuOff[Gbl.Prefs.Theme],NULL);
@ -387,7 +388,7 @@ void Mnu_WriteMenuThisTab (void)
/***** End link and form *****/ /***** End link and form *****/
fprintf (Gbl.F.Out,"</div>" fprintf (Gbl.F.Out,"</div>"
"</a>"); "</a>");
Act_EndForm (); Frm_EndForm ();
/***** End container used to highlight this option *****/ /***** End container used to highlight this option *****/
fprintf (Gbl.F.Out,"</div>"); fprintf (Gbl.F.Out,"</div>");
@ -423,7 +424,7 @@ void Mnu_PutIconsToSelectMenu (void)
fprintf (Gbl.F.Out,"<div class=\"%s\">", fprintf (Gbl.F.Out,"<div class=\"%s\">",
Menu == Gbl.Prefs.Menu ? "PREF_ON" : Menu == Gbl.Prefs.Menu ? "PREF_ON" :
"PREF_OFF"); "PREF_OFF");
Act_StartForm (ActChgMnu); Frm_StartForm (ActChgMnu);
Par_PutHiddenParamUnsigned ("Menu",(unsigned) Menu); Par_PutHiddenParamUnsigned ("Menu",(unsigned) Menu);
fprintf (Gbl.F.Out,"<input type=\"image\" src=\"%s/%s32x32.gif\"" fprintf (Gbl.F.Out,"<input type=\"image\" src=\"%s/%s32x32.gif\""
" alt=\"%s\" title=\"%s\" class=\"ICO25x25\" />", " alt=\"%s\" title=\"%s\" class=\"ICO25x25\" />",
@ -431,7 +432,7 @@ void Mnu_PutIconsToSelectMenu (void)
Mnu_MenuIcons[Menu], Mnu_MenuIcons[Menu],
Txt_MENU_NAMES[Menu], Txt_MENU_NAMES[Menu],
Txt_MENU_NAMES[Menu]); Txt_MENU_NAMES[Menu]);
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</div>"); fprintf (Gbl.F.Out,"</div>");
} }
fprintf (Gbl.F.Out,"</div>"); fprintf (Gbl.F.Out,"</div>");

View File

@ -38,6 +38,7 @@
#include "swad_config.h" #include "swad_config.h"
#include "swad_course.h" #include "swad_course.h"
#include "swad_database.h" #include "swad_database.h"
#include "swad_form.h"
#include "swad_forum.h" #include "swad_forum.h"
#include "swad_global.h" #include "swad_global.h"
#include "swad_group.h" #include "swad_group.h"
@ -271,7 +272,7 @@ static void Msg_PutFormMsgUsrs (char Content[Cns_MAX_BYTES_LONG_TEXT + 1])
} }
/***** Start form to select recipients and write the message *****/ /***** Start form to select recipients and write the message *****/
Act_StartForm (ActRcvMsgUsr); Frm_StartForm (ActRcvMsgUsr);
if (Gbl.Msg.Reply.IsReply) if (Gbl.Msg.Reply.IsReply)
{ {
Par_PutHiddenParamChar ("IsReply",'Y'); Par_PutHiddenParamChar ("IsReply",'Y');
@ -330,7 +331,7 @@ static void Msg_PutFormMsgUsrs (char Content[Cns_MAX_BYTES_LONG_TEXT + 1])
Btn_PutCreateButton (Txt_Send_message); Btn_PutCreateButton (Txt_Send_message);
/***** End form *****/ /***** End form *****/
Act_EndForm (); Frm_EndForm ();
/***** End box *****/ /***** End box *****/
Box_EndBox (); Box_EndBox ();
@ -1758,7 +1759,7 @@ static void Msg_ShowSentOrReceivedMessages (void)
HelpFilter[Gbl.Msg.TypeOfMessages],Box_CLOSABLE); HelpFilter[Gbl.Msg.TypeOfMessages],Box_CLOSABLE);
/* Form to see messages again */ /* Form to see messages again */
Act_StartForm (ActionSee[Gbl.Msg.TypeOfMessages]); Frm_StartForm (ActionSee[Gbl.Msg.TypeOfMessages]);
fprintf (Gbl.F.Out,"<div class=\"CENTER_MIDDLE\">"); fprintf (Gbl.F.Out,"<div class=\"CENTER_MIDDLE\">");
Msg_ShowFormSelectCourseSentOrRecMsgs (); Msg_ShowFormSelectCourseSentOrRecMsgs ();
@ -1768,13 +1769,13 @@ static void Msg_ShowSentOrReceivedMessages (void)
Msg_ShowFormToFilterMsgs (); Msg_ShowFormToFilterMsgs ();
fprintf (Gbl.F.Out,"<div class=\"CONTEXT_MENU\">"); fprintf (Gbl.F.Out,"<div class=\"CONTEXT_MENU\">");
Act_LinkFormSubmitAnimated (Txt_Update_messages, Frm_LinkFormSubmitAnimated (Txt_Update_messages,
The_ClassFormBold[Gbl.Prefs.Theme], The_ClassFormBold[Gbl.Prefs.Theme],
NULL); NULL);
Ico_PutCalculateIconWithText (Txt_Update_messages,Txt_Update_messages); Ico_PutCalculateIconWithText (Txt_Update_messages,Txt_Update_messages);
fprintf (Gbl.F.Out,"</div>"); fprintf (Gbl.F.Out,"</div>");
Act_EndForm (); Frm_EndForm ();
/* End box */ /* End box */
Box_EndBox (); Box_EndBox ();
@ -3159,13 +3160,13 @@ static void Msg_WriteSentOrReceivedMsgSubject (long MsgCod,const char *Subject,b
"MSG_TIT_BG_NEW"); "MSG_TIT_BG_NEW");
/***** Start form to expand/contract the message *****/ /***** Start form to expand/contract the message *****/
Act_StartForm (Gbl.Msg.TypeOfMessages == Msg_MESSAGES_RECEIVED ? (Expanded ? ActConRcvMsg : Frm_StartForm (Gbl.Msg.TypeOfMessages == Msg_MESSAGES_RECEIVED ? (Expanded ? ActConRcvMsg :
ActExpRcvMsg) : ActExpRcvMsg) :
(Expanded ? ActConSntMsg : (Expanded ? ActConSntMsg :
ActExpSntMsg)); ActExpSntMsg));
Gbl.Msg.MsgCod = MsgCod; // Message to be contracted/expanded Gbl.Msg.MsgCod = MsgCod; // Message to be contracted/expanded
Msg_PutHiddenParamsOneMsg (); Msg_PutHiddenParamsOneMsg ();
Act_LinkFormSubmit (Expanded ? Txt_Hide_message : Frm_LinkFormSubmit (Expanded ? Txt_Hide_message :
Txt_See_message, Txt_See_message,
Open ? "MSG_TIT" : Open ? "MSG_TIT" :
"MSG_TIT_NEW",NULL); "MSG_TIT_NEW",NULL);
@ -3178,7 +3179,7 @@ static void Msg_WriteSentOrReceivedMsgSubject (long MsgCod,const char *Subject,b
/***** End form to expand the message *****/ /***** End form to expand the message *****/
fprintf (Gbl.F.Out,"</a>"); fprintf (Gbl.F.Out,"</a>");
Act_EndForm (); Frm_EndForm ();
/***** End cell *****/ /***** End cell *****/
fprintf (Gbl.F.Out,"</td>"); fprintf (Gbl.F.Out,"</td>");
@ -3282,18 +3283,18 @@ bool Msg_WriteCrsOrgMsg (long CrsCod)
else // Message sent from another course else // Message sent from another course
{ {
/* Write course, including link */ /* Write course, including link */
Act_StartFormGoTo (ActSeeCrsInf); Frm_StartFormGoTo (ActSeeCrsInf);
Crs_PutParamCrsCod (Crs.CrsCod); Crs_PutParamCrsCod (Crs.CrsCod);
fprintf (Gbl.F.Out,"<div class=\"AUTHOR_TXT\">" fprintf (Gbl.F.Out,"<div class=\"AUTHOR_TXT\">"
"("); "(");
snprintf (Gbl.Title,sizeof (Gbl.Title), snprintf (Gbl.Title,sizeof (Gbl.Title),
Txt_Go_to_X, Txt_Go_to_X,
Crs.FullName); Crs.FullName);
Act_LinkFormSubmit (Gbl.Title,"AUTHOR_TXT",NULL); Frm_LinkFormSubmit (Gbl.Title,"AUTHOR_TXT",NULL);
fprintf (Gbl.F.Out,"%s</a>)" fprintf (Gbl.F.Out,"%s</a>)"
"</div>", "</div>",
Crs.ShrtName); Crs.ShrtName);
Act_EndForm (); Frm_EndForm ();
} }
} }
} }
@ -3322,10 +3323,10 @@ static void Msg_WriteFormToReply (long MsgCod,long CrsCod,
/***** Form start and parameters *****/ /***** Form start and parameters *****/
if (FromThisCrs) if (FromThisCrs)
Act_StartForm (ActReqMsgUsr); Frm_StartForm (ActReqMsgUsr);
else // Not the current course ==> go to another course else // Not the current course ==> go to another course
{ {
Act_StartFormGoTo (ActReqMsgUsr); Frm_StartFormGoTo (ActReqMsgUsr);
Crs_PutParamCrsCod (CrsCod); Crs_PutParamCrsCod (CrsCod);
} }
Grp_PutParamAllGroups (); Grp_PutParamAllGroups ();
@ -3570,15 +3571,15 @@ static void Msg_WriteMsgTo (long MsgCod)
/***** Start form to show all the users *****/ /***** Start form to show all the users *****/
fprintf (Gbl.F.Out,"<tr>" fprintf (Gbl.F.Out,"<tr>"
"<td colspan=\"3\" class=\"AUTHOR_TXT LEFT_MIDDLE\">"); "<td colspan=\"3\" class=\"AUTHOR_TXT LEFT_MIDDLE\">");
Act_StartForm (ActionSee[Gbl.Msg.TypeOfMessages]); Frm_StartForm (ActionSee[Gbl.Msg.TypeOfMessages]);
Gbl.Msg.MsgCod = MsgCod; // Message to be expanded with all recipients visible Gbl.Msg.MsgCod = MsgCod; // Message to be expanded with all recipients visible
Msg_PutHiddenParamsOneMsg (); Msg_PutHiddenParamsOneMsg ();
Par_PutHiddenParamChar ("SeeAllRcpts",'Y'); Par_PutHiddenParamChar ("SeeAllRcpts",'Y');
Act_LinkFormSubmit (Txt_View_all_recipients,"AUTHOR_TXT",NULL); Frm_LinkFormSubmit (Txt_View_all_recipients,"AUTHOR_TXT",NULL);
fprintf (Gbl.F.Out,Txt_and_X_other_recipients, fprintf (Gbl.F.Out,Txt_and_X_other_recipients,
NumRecipientsKnown - NumRecipientsToShow); NumRecipientsKnown - NumRecipientsToShow);
fprintf (Gbl.F.Out,"</a>"); fprintf (Gbl.F.Out,"</a>");
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</td>" fprintf (Gbl.F.Out,"</td>"
"</tr>"); "</tr>");
} }
@ -3667,7 +3668,7 @@ static void Msg_PutFormToBanSender (struct UsrData *UsrDat)
{ {
extern const char *Txt_Sender_permitted_click_to_ban_him; extern const char *Txt_Sender_permitted_click_to_ban_him;
Act_StartForm (ActBanUsrMsg); Frm_StartForm (ActBanUsrMsg);
Pag_PutHiddenParamPagNum (Msg_WhatPaginate[Gbl.Msg.TypeOfMessages], Pag_PutHiddenParamPagNum (Msg_WhatPaginate[Gbl.Msg.TypeOfMessages],
Gbl.Msg.CurrentPage); Gbl.Msg.CurrentPage);
Usr_PutParamUsrCodEncrypted (UsrDat->EncryptedUsrCod); Usr_PutParamUsrCodEncrypted (UsrDat->EncryptedUsrCod);
@ -3678,7 +3679,7 @@ static void Msg_PutFormToBanSender (struct UsrData *UsrDat)
Gbl.Prefs.IconsURL, Gbl.Prefs.IconsURL,
Txt_Sender_permitted_click_to_ban_him, Txt_Sender_permitted_click_to_ban_him,
Txt_Sender_permitted_click_to_ban_him); Txt_Sender_permitted_click_to_ban_him);
Act_EndForm (); Frm_EndForm ();
} }
/*****************************************************************************/ /*****************************************************************************/
@ -3689,7 +3690,7 @@ static void Msg_PutFormToUnbanSender (struct UsrData *UsrDat)
{ {
extern const char *Txt_Sender_banned_click_to_unban_him; extern const char *Txt_Sender_banned_click_to_unban_him;
Act_StartForm (ActUnbUsrMsg); Frm_StartForm (ActUnbUsrMsg);
Pag_PutHiddenParamPagNum (Msg_WhatPaginate[Gbl.Msg.TypeOfMessages], Pag_PutHiddenParamPagNum (Msg_WhatPaginate[Gbl.Msg.TypeOfMessages],
Gbl.Msg.CurrentPage); Gbl.Msg.CurrentPage);
Usr_PutParamUsrCodEncrypted (UsrDat->EncryptedUsrCod); Usr_PutParamUsrCodEncrypted (UsrDat->EncryptedUsrCod);
@ -3700,7 +3701,7 @@ static void Msg_PutFormToUnbanSender (struct UsrData *UsrDat)
Gbl.Prefs.IconsURL, Gbl.Prefs.IconsURL,
Txt_Sender_banned_click_to_unban_him, Txt_Sender_banned_click_to_unban_him,
Txt_Sender_banned_click_to_unban_him); Txt_Sender_banned_click_to_unban_him);
Act_EndForm (); Frm_EndForm ();
} }
/*****************************************************************************/ /*****************************************************************************/
@ -3871,7 +3872,7 @@ void Msg_ListBannedUsrs (void)
/* Put form to unban user */ /* Put form to unban user */
fprintf (Gbl.F.Out,"<tr>" fprintf (Gbl.F.Out,"<tr>"
"<td class=\"BM\">"); "<td class=\"BM\">");
Act_StartForm (ActUnbUsrLst); Frm_StartForm (ActUnbUsrLst);
Usr_PutParamUsrCodEncrypted (UsrDat.EncryptedUsrCod); Usr_PutParamUsrCodEncrypted (UsrDat.EncryptedUsrCod);
fprintf (Gbl.F.Out,"<input type=\"image\"" fprintf (Gbl.F.Out,"<input type=\"image\""
" src=\"%s/lock-on64x64.png\"" " src=\"%s/lock-on64x64.png\""
@ -3880,7 +3881,7 @@ void Msg_ListBannedUsrs (void)
Gbl.Prefs.IconsURL, Gbl.Prefs.IconsURL,
Txt_Sender_banned_click_to_unban_him, Txt_Sender_banned_click_to_unban_him,
Txt_Sender_banned_click_to_unban_him); Txt_Sender_banned_click_to_unban_him);
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</td>"); fprintf (Gbl.F.Out,"</td>");
/* Show photo */ /* Show photo */

View File

@ -31,6 +31,7 @@
#include "swad_box.h" #include "swad_box.h"
#include "swad_database.h" #include "swad_database.h"
#include "swad_form.h"
#include "swad_global.h" #include "swad_global.h"
#include "swad_parameter.h" #include "swad_parameter.h"
#include "swad_profile.h" #include "swad_profile.h"
@ -335,7 +336,7 @@ void Net_ShowFormMyWebsAndSocialNets (void)
Net_WebsAndSocialNetworksTitle[NumURL], Net_WebsAndSocialNetworksTitle[NumURL],
Net_WebsAndSocialNetworksTitle[NumURL], Net_WebsAndSocialNetworksTitle[NumURL],
Net_WebsAndSocialNetworksTitle[NumURL]); Net_WebsAndSocialNetworksTitle[NumURL]);
Act_StartFormAnchor (ActChgMyNet,Net_MY_WEBS_ID); Frm_StartFormAnchor (ActChgMyNet,Net_MY_WEBS_ID);
Par_PutHiddenParamUnsigned ("Web",(unsigned) NumURL); Par_PutHiddenParamUnsigned ("Web",(unsigned) NumURL);
fprintf (Gbl.F.Out,"<input type=\"url\" id=\"URL%u\" name=\"URL\"" fprintf (Gbl.F.Out,"<input type=\"url\" id=\"URL%u\" name=\"URL\""
" maxlength=\"%u\" value=\"%s\"" " maxlength=\"%u\" value=\"%s\""
@ -344,7 +345,7 @@ void Net_ShowFormMyWebsAndSocialNets (void)
(unsigned) NumURL, (unsigned) NumURL,
Cns_MAX_CHARS_WWW,URL, Cns_MAX_CHARS_WWW,URL,
Gbl.Form.Id); Gbl.Form.Id);
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</td>" fprintf (Gbl.F.Out,"</td>"
"</tr>"); "</tr>");
} }

View File

@ -32,6 +32,7 @@
#include "swad_account.h" #include "swad_account.h"
#include "swad_box.h" #include "swad_box.h"
#include "swad_database.h" #include "swad_database.h"
#include "swad_form.h"
#include "swad_global.h" #include "swad_global.h"
#include "swad_parameter.h" #include "swad_parameter.h"
#include "swad_QR.h" #include "swad_QR.h"
@ -299,7 +300,7 @@ static void Nck_ShowFormChangeUsrNickname (const struct UsrData *UsrDat,bool Its
/* Form to remove old nickname */ /* Form to remove old nickname */
if (ItsMe) if (ItsMe)
Act_StartFormAnchor (ActRemOldNicMe,Nck_NICKNAME_SECTION_ID); Frm_StartFormAnchor (ActRemOldNicMe,Nck_NICKNAME_SECTION_ID);
else else
{ {
switch (UsrDat->Roles.InCurrentCrs.Role) switch (UsrDat->Roles.InCurrentCrs.Role)
@ -315,14 +316,14 @@ static void Nck_ShowFormChangeUsrNickname (const struct UsrData *UsrDat,bool Its
NextAction = ActRemOldNicOth; NextAction = ActRemOldNicOth;
break; break;
} }
Act_StartFormAnchor (NextAction,Nck_NICKNAME_SECTION_ID); Frm_StartFormAnchor (NextAction,Nck_NICKNAME_SECTION_ID);
Usr_PutParamUsrCodEncrypted (UsrDat->EncryptedUsrCod); Usr_PutParamUsrCodEncrypted (UsrDat->EncryptedUsrCod);
} }
fprintf (Gbl.F.Out,"<input type=\"hidden\" name=\"Nick\"" fprintf (Gbl.F.Out,"<input type=\"hidden\" name=\"Nick\""
" value=\"%s\" />", " value=\"%s\" />",
row[0]); row[0]);
Ico_PutIconRemove (); Ico_PutIconRemove ();
Act_EndForm (); Frm_EndForm ();
} }
/* Nickname */ /* Nickname */
@ -337,7 +338,7 @@ static void Nck_ShowFormChangeUsrNickname (const struct UsrData *UsrDat,bool Its
{ {
fprintf (Gbl.F.Out,"<br />"); fprintf (Gbl.F.Out,"<br />");
if (ItsMe) if (ItsMe)
Act_StartFormAnchor (ActChgNicMe,Nck_NICKNAME_SECTION_ID); Frm_StartFormAnchor (ActChgNicMe,Nck_NICKNAME_SECTION_ID);
else else
{ {
switch (UsrDat->Roles.InCurrentCrs.Role) switch (UsrDat->Roles.InCurrentCrs.Role)
@ -353,14 +354,14 @@ static void Nck_ShowFormChangeUsrNickname (const struct UsrData *UsrDat,bool Its
NextAction = ActChgNicOth; NextAction = ActChgNicOth;
break; break;
} }
Act_StartFormAnchor (NextAction,Nck_NICKNAME_SECTION_ID); Frm_StartFormAnchor (NextAction,Nck_NICKNAME_SECTION_ID);
Usr_PutParamUsrCodEncrypted (UsrDat->EncryptedUsrCod); Usr_PutParamUsrCodEncrypted (UsrDat->EncryptedUsrCod);
} }
fprintf (Gbl.F.Out,"<input type=\"hidden\" name=\"NewNick\"" fprintf (Gbl.F.Out,"<input type=\"hidden\" name=\"NewNick\""
" value=\"@%s\" />", " value=\"@%s\" />",
row[0]); // Nickname row[0]); // Nickname
Btn_PutConfirmButtonInline (Txt_Use_this_nickname); Btn_PutConfirmButtonInline (Txt_Use_this_nickname);
Act_EndForm (); Frm_EndForm ();
} }
fprintf (Gbl.F.Out,"</td>" fprintf (Gbl.F.Out,"</td>"
@ -379,7 +380,7 @@ static void Nck_ShowFormChangeUsrNickname (const struct UsrData *UsrDat,bool Its
NumNicks ? Txt_New_nickname : // A new nickname NumNicks ? Txt_New_nickname : // A new nickname
Txt_Nickname); // The first nickname Txt_Nickname); // The first nickname
if (ItsMe) if (ItsMe)
Act_StartFormAnchor (ActChgNicMe,Nck_NICKNAME_SECTION_ID); Frm_StartFormAnchor (ActChgNicMe,Nck_NICKNAME_SECTION_ID);
else else
{ {
switch (UsrDat->Roles.InCurrentCrs.Role) switch (UsrDat->Roles.InCurrentCrs.Role)
@ -395,7 +396,7 @@ static void Nck_ShowFormChangeUsrNickname (const struct UsrData *UsrDat,bool Its
NextAction = ActChgNicOth; NextAction = ActChgNicOth;
break; break;
} }
Act_StartFormAnchor (NextAction,Nck_NICKNAME_SECTION_ID); Frm_StartFormAnchor (NextAction,Nck_NICKNAME_SECTION_ID);
Usr_PutParamUsrCodEncrypted (UsrDat->EncryptedUsrCod); Usr_PutParamUsrCodEncrypted (UsrDat->EncryptedUsrCod);
} }
fprintf (Gbl.F.Out,"<input type=\"text\" id=\"NewNick\" name=\"NewNick\"" fprintf (Gbl.F.Out,"<input type=\"text\" id=\"NewNick\" name=\"NewNick\""
@ -405,7 +406,7 @@ static void Nck_ShowFormChangeUsrNickname (const struct UsrData *UsrDat,bool Its
Gbl.Usrs.Me.UsrDat.Nickname); Gbl.Usrs.Me.UsrDat.Nickname);
Btn_PutCreateButtonInline (NumNicks ? Txt_Change_nickname : // I already have a nickname Btn_PutCreateButtonInline (NumNicks ? Txt_Change_nickname : // I already have a nickname
Txt_Save); // I have no nickname yet); Txt_Save); // I have no nickname yet);
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</td>" fprintf (Gbl.F.Out,"</td>"
"</tr>"); "</tr>");

View File

@ -34,6 +34,7 @@
#include "swad_box.h" #include "swad_box.h"
#include "swad_database.h" #include "swad_database.h"
#include "swad_form.h"
#include "swad_global.h" #include "swad_global.h"
#include "swad_notice.h" #include "swad_notice.h"
#include "swad_notification.h" #include "swad_notification.h"
@ -103,7 +104,7 @@ void Not_ShowFormNotice (void)
Ale_ShowAlert (Ale_INFO,Gbl.Alert.Txt); Ale_ShowAlert (Ale_INFO,Gbl.Alert.Txt);
/***** Start form *****/ /***** Start form *****/
Act_StartForm (ActRcvNot); Frm_StartForm (ActRcvNot);
/***** Start box *****/ /***** Start box *****/
Box_StartBox (NULL,Txt_New_notice,NULL, Box_StartBox (NULL,Txt_New_notice,NULL,
@ -118,7 +119,7 @@ void Not_ShowFormNotice (void)
Box_EndBoxWithButton (Btn_CREATE_BUTTON,Txt_Create_notice); Box_EndBoxWithButton (Btn_CREATE_BUTTON,Txt_Create_notice);
/***** End form *****/ /***** End form *****/
Act_EndForm (); Frm_EndForm ();
/***** Show all notices *****/ /***** Show all notices *****/
Not_ShowNotices (Not_LIST_FULL_NOTICES); Not_ShowNotices (Not_LIST_FULL_NOTICES);
@ -534,9 +535,9 @@ static void Not_PutButtonToAddNewNotice (void)
{ {
extern const char *Txt_New_notice; extern const char *Txt_New_notice;
Act_StartForm (ActWriNot); Frm_StartForm (ActWriNot);
Btn_PutConfirmButton (Txt_New_notice); Btn_PutConfirmButton (Txt_New_notice);
Act_EndForm (); Frm_EndForm ();
} }
/*****************************************************************************/ /*****************************************************************************/
@ -665,7 +666,7 @@ static void Not_DrawANotice (Not_Listing_t TypeNoticesListing,
NULL); NULL);
break; break;
} }
Act_EndForm (); Frm_EndForm ();
} }
else // Don't put forms else // Don't put forms
/* Status of the notice */ /* Status of the notice */
@ -703,16 +704,16 @@ static void Not_DrawANotice (Not_Listing_t TypeNoticesListing,
if (TypeNoticesListing == Not_LIST_BRIEF_NOTICES) if (TypeNoticesListing == Not_LIST_BRIEF_NOTICES)
{ {
/* Form to view full notice */ /* Form to view full notice */
Act_StartForm (ActSeeOneNot); Frm_StartForm (ActSeeOneNot);
Not_PutHiddenParamNotCod (NotCod); Not_PutHiddenParamNotCod (NotCod);
Act_LinkFormSubmit (Txt_See_full_notice,DateClass[Status],NULL); Frm_LinkFormSubmit (Txt_See_full_notice,DateClass[Status],NULL);
} }
fprintf (Gbl.F.Out,"<span id=\"not_date_%u\"></span>", fprintf (Gbl.F.Out,"<span id=\"not_date_%u\"></span>",
UniqueId); UniqueId);
if (TypeNoticesListing == Not_LIST_BRIEF_NOTICES) if (TypeNoticesListing == Not_LIST_BRIEF_NOTICES)
{ {
fprintf (Gbl.F.Out,"</a>"); fprintf (Gbl.F.Out,"</a>");
Act_EndForm (); Frm_EndForm ();
} }
fprintf (Gbl.F.Out,"<script type=\"text/javascript\">" fprintf (Gbl.F.Out,"<script type=\"text/javascript\">"
"writeLocalDateHMSFromUTC('not_date_%u',%ld," "writeLocalDateHMSFromUTC('not_date_%u',%ld,"

View File

@ -41,6 +41,7 @@
#include "swad_enrolment.h" #include "swad_enrolment.h"
#include "swad_exam.h" #include "swad_exam.h"
#include "swad_follow.h" #include "swad_follow.h"
#include "swad_form.h"
#include "swad_global.h" #include "swad_global.h"
#include "swad_mark.h" #include "swad_mark.h"
#include "swad_notice.h" #include "swad_notice.h"
@ -515,7 +516,7 @@ void Ntf_ShowMyNotifications (void)
Ntf_Icons[NotifyEvent], Ntf_Icons[NotifyEvent],
Txt_NOTIFY_EVENTS_SINGULAR[NotifyEvent], Txt_NOTIFY_EVENTS_SINGULAR[NotifyEvent],
Txt_NOTIFY_EVENTS_SINGULAR[NotifyEvent]); Txt_NOTIFY_EVENTS_SINGULAR[NotifyEvent]);
Act_EndForm (); Frm_EndForm ();
} }
else else
fprintf (Gbl.F.Out,"<img src=\"%s/%s\"" fprintf (Gbl.F.Out,"<img src=\"%s/%s\""
@ -535,10 +536,10 @@ void Ntf_ShowMyNotifications (void)
if (PutLink) if (PutLink)
{ {
Act_LinkFormSubmit (Txt_NOTIFY_EVENTS_SINGULAR[NotifyEvent],ClassAnchor,NULL); Frm_LinkFormSubmit (Txt_NOTIFY_EVENTS_SINGULAR[NotifyEvent],ClassAnchor,NULL);
fprintf (Gbl.F.Out,"%s</a>", fprintf (Gbl.F.Out,"%s</a>",
Txt_NOTIFY_EVENTS_SINGULAR[NotifyEvent]); Txt_NOTIFY_EVENTS_SINGULAR[NotifyEvent]);
Act_EndForm (); Frm_EndForm ();
} }
else else
fprintf (Gbl.F.Out,"<span class=\"%s\">%s</span>", fprintf (Gbl.F.Out,"<span class=\"%s\">%s</span>",
@ -560,14 +561,14 @@ void Ntf_ShowMyNotifications (void)
PutLink = Ntf_StartFormGoToAction (NotifyEvent,Crs.CrsCod,&UsrDat,Cod); PutLink = Ntf_StartFormGoToAction (NotifyEvent,Crs.CrsCod,&UsrDat,Cod);
if (PutLink) if (PutLink)
Act_LinkFormSubmit (Txt_NOTIFY_EVENTS_SINGULAR[NotifyEvent],ClassAnchor,NULL); Frm_LinkFormSubmit (Txt_NOTIFY_EVENTS_SINGULAR[NotifyEvent],ClassAnchor,NULL);
else else
fprintf (Gbl.F.Out,"<span class=\"%s\">",ClassAnchor); fprintf (Gbl.F.Out,"<span class=\"%s\">",ClassAnchor);
fprintf (Gbl.F.Out,"%s: %s",Txt_Forum,ForumName); fprintf (Gbl.F.Out,"%s: %s",Txt_Forum,ForumName);
if (PutLink) if (PutLink)
{ {
fprintf (Gbl.F.Out,"</a>"); fprintf (Gbl.F.Out,"</a>");
Act_EndForm (); Frm_EndForm ();
} }
else else
fprintf (Gbl.F.Out,"</span>"); fprintf (Gbl.F.Out,"</span>");
@ -578,7 +579,7 @@ void Ntf_ShowMyNotifications (void)
PutLink = Ntf_StartFormGoToAction (NotifyEvent,Crs.CrsCod,&UsrDat,Cod); PutLink = Ntf_StartFormGoToAction (NotifyEvent,Crs.CrsCod,&UsrDat,Cod);
if (PutLink) if (PutLink)
Act_LinkFormSubmit (Txt_NOTIFY_EVENTS_SINGULAR[NotifyEvent],ClassAnchor,NULL); Frm_LinkFormSubmit (Txt_NOTIFY_EVENTS_SINGULAR[NotifyEvent],ClassAnchor,NULL);
else else
fprintf (Gbl.F.Out,"<span class=\"%s\">",ClassAnchor); fprintf (Gbl.F.Out,"<span class=\"%s\">",ClassAnchor);
@ -596,7 +597,7 @@ void Ntf_ShowMyNotifications (void)
if (PutLink) if (PutLink)
{ {
fprintf (Gbl.F.Out,"</a>"); fprintf (Gbl.F.Out,"</a>");
Act_EndForm (); Frm_EndForm ();
} }
else else
fprintf (Gbl.F.Out,"</span>"); fprintf (Gbl.F.Out,"</span>");
@ -750,7 +751,7 @@ static bool Ntf_StartFormGoToAction (Ntf_NotifyEvent_t NotifyEvent,
default: // Not aplicable here default: // Not aplicable here
break; break;
} }
Act_StartForm (Action); Frm_StartForm (Action);
if (GrpCod > 0) if (GrpCod > 0)
Grp_PutParamGrpCod (GrpCod); Grp_PutParamGrpCod (GrpCod);
Brw_PutHiddenParamFilCod (FileMetadata.FilCod); Brw_PutHiddenParamFilCod (FileMetadata.FilCod);
@ -761,7 +762,7 @@ static bool Ntf_StartFormGoToAction (Ntf_NotifyEvent_t NotifyEvent,
case Ntf_EVENT_TIMELINE_SHARE: case Ntf_EVENT_TIMELINE_SHARE:
case Ntf_EVENT_TIMELINE_MENTION: case Ntf_EVENT_TIMELINE_MENTION:
// Cod is the code of the social publishing // Cod is the code of the social publishing
Act_StartForm (ActSeeSocTmlGbl); Frm_StartForm (ActSeeSocTmlGbl);
Soc_PutHiddenParamPubCod (Cod); Soc_PutHiddenParamPubCod (Cod);
Usr_PutParamUsrCodEncrypted (UsrDat->EncryptedUsrCod); Usr_PutParamUsrCodEncrypted (UsrDat->EncryptedUsrCod);
Ntf_PutHiddenParamNotifyEvent (NotifyEvent); Ntf_PutHiddenParamNotifyEvent (NotifyEvent);
@ -770,16 +771,16 @@ static bool Ntf_StartFormGoToAction (Ntf_NotifyEvent_t NotifyEvent,
if (UsrDat->EncryptedUsrCod[0]) // User's code found ==> if (UsrDat->EncryptedUsrCod[0]) // User's code found ==>
// go to user's public profile // go to user's public profile
{ {
Act_StartForm (ActSeeOthPubPrf); Frm_StartForm (ActSeeOthPubPrf);
/* Put param to go to follower's profile */ /* Put param to go to follower's profile */
Usr_PutParamUsrCodEncrypted (UsrDat->EncryptedUsrCod); Usr_PutParamUsrCodEncrypted (UsrDat->EncryptedUsrCod);
} }
else // No user's code found ==> go to see my followers else // No user's code found ==> go to see my followers
Act_StartForm (ActSeeFlr); Frm_StartForm (ActSeeFlr);
break; break;
case Ntf_EVENT_FORUM_POST_COURSE: case Ntf_EVENT_FORUM_POST_COURSE:
case Ntf_EVENT_FORUM_REPLY: case Ntf_EVENT_FORUM_REPLY:
Act_StartForm (For_ActionsSeeFor[Gbl.Forum.ForumSelected.Type]); Frm_StartForm (For_ActionsSeeFor[Gbl.Forum.ForumSelected.Type]);
For_PutAllHiddenParamsForum (1, // Page of threads = first For_PutAllHiddenParamsForum (1, // Page of threads = first
1, // Page of posts = first 1, // Page of posts = first
Gbl.Forum.ForumSet, Gbl.Forum.ForumSet,
@ -789,15 +790,15 @@ static bool Ntf_StartFormGoToAction (Ntf_NotifyEvent_t NotifyEvent,
-1L); -1L);
break; break;
case Ntf_EVENT_NOTICE: case Ntf_EVENT_NOTICE:
Act_StartForm (ActSeeOneNot); Frm_StartForm (ActSeeOneNot);
Not_PutHiddenParamNotCod (Cod); Not_PutHiddenParamNotCod (Cod);
break; break;
case Ntf_EVENT_MESSAGE: case Ntf_EVENT_MESSAGE:
Act_StartForm (ActExpRcvMsg); Frm_StartForm (ActExpRcvMsg);
Msg_PutHiddenParamMsgCod (Cod); Msg_PutHiddenParamMsgCod (Cod);
break; break;
default: default:
Act_StartForm (Ntf_DefaultActions[NotifyEvent]); Frm_StartForm (Ntf_DefaultActions[NotifyEvent]);
break; break;
} }
@ -1947,7 +1948,7 @@ void Ntf_PutFormChangeNotifSentByEMail (void)
Hlp_PROFILE_Preferences_notifications,Box_NOT_CLOSABLE); Hlp_PROFILE_Preferences_notifications,Box_NOT_CLOSABLE);
/***** Start form *****/ /***** Start form *****/
Act_StartForm (ActChgNtfPrf); Frm_StartForm (ActChgNtfPrf);
/***** Warning if I can not receive email notifications *****/ /***** Warning if I can not receive email notifications *****/
if (!Mai_CheckIfUsrCanReceiveEmailNotif (&Gbl.Usrs.Me.UsrDat)) if (!Mai_CheckIfUsrCanReceiveEmailNotif (&Gbl.Usrs.Me.UsrDat))
@ -2002,7 +2003,7 @@ void Ntf_PutFormChangeNotifSentByEMail (void)
Btn_PutConfirmButton (Txt_Save_changes); Btn_PutConfirmButton (Txt_Save_changes);
/***** End form *****/ /***** End form *****/
Act_EndForm (); Frm_EndForm ();
/***** End box *****/ /***** End box *****/
Box_EndBox (); Box_EndBox ();
@ -2080,8 +2081,8 @@ void Ntf_WriteNumberOfNewNtfs (void)
NumNewNtfs = Ntf_GetNumberOfMyNewUnseenNtfs (); NumNewNtfs = Ntf_GetNumberOfMyNewUnseenNtfs ();
/***** Start form *****/ /***** Start form *****/
Act_StartFormId (ActSeeNewNtf,"form_ntf"); Frm_StartFormId (ActSeeNewNtf,"form_ntf");
Act_LinkFormSubmitId (Txt_See_notifications, Frm_LinkFormSubmitId (Txt_See_notifications,
The_ClassNotif[Gbl.Prefs.Theme],"form_ntf",NULL); The_ClassNotif[Gbl.Prefs.Theme],"form_ntf",NULL);
/***** Number of unseen notifications *****/ /***** Number of unseen notifications *****/
@ -2105,7 +2106,7 @@ void Ntf_WriteNumberOfNewNtfs (void)
/***** End form *****/ /***** End form *****/
fprintf (Gbl.F.Out,"</a>"); fprintf (Gbl.F.Out,"</a>");
Act_EndForm (); Frm_EndForm ();
} }
/*****************************************************************************/ /*****************************************************************************/

View File

@ -31,6 +31,7 @@
#include "swad_action.h" #include "swad_action.h"
#include "swad_database.h" #include "swad_database.h"
#include "swad_form.h"
#include "swad_forum.h" #include "swad_forum.h"
#include "swad_global.h" #include "swad_global.h"
#include "swad_parameter.h" #include "swad_parameter.h"
@ -159,38 +160,38 @@ void Pag_WriteLinksToPages (Pag_WhatPaginate_t WhatPaginate,
switch (WhatPaginate) switch (WhatPaginate)
{ {
case Pag_ASSIGNMENTS: case Pag_ASSIGNMENTS:
Act_StartFormAnchor (ActSeeAsg,Pagination->Anchor); Frm_StartFormAnchor (ActSeeAsg,Pagination->Anchor);
Pag_PutHiddenParamPagNum (WhatPaginate,1); Pag_PutHiddenParamPagNum (WhatPaginate,1);
Asg_PutHiddenParamAsgOrder (); Asg_PutHiddenParamAsgOrder ();
Grp_PutParamWhichGrps (); Grp_PutParamWhichGrps ();
break; break;
case Pag_PROJECTS: case Pag_PROJECTS:
Act_StartFormAnchor (ActSeePrj,Pagination->Anchor); Frm_StartFormAnchor (ActSeePrj,Pagination->Anchor);
Prj_PutParams (&Gbl.Prjs.Filter, Prj_PutParams (&Gbl.Prjs.Filter,
Gbl.Prjs.SelectedOrder, Gbl.Prjs.SelectedOrder,
1, 1,
-1L); -1L);
break; break;
case Pag_GAMES: case Pag_GAMES:
Act_StartFormAnchor (ActSeeAllGam,Pagination->Anchor); Frm_StartFormAnchor (ActSeeAllGam,Pagination->Anchor);
Pag_PutHiddenParamPagNum (WhatPaginate,1); Pag_PutHiddenParamPagNum (WhatPaginate,1);
Asg_PutHiddenParamAsgOrder (); Asg_PutHiddenParamAsgOrder ();
Grp_PutParamWhichGrps (); Grp_PutParamWhichGrps ();
break; break;
case Pag_SURVEYS: case Pag_SURVEYS:
Act_StartFormAnchor (ActSeeAllSvy,Pagination->Anchor); Frm_StartFormAnchor (ActSeeAllSvy,Pagination->Anchor);
Pag_PutHiddenParamPagNum (WhatPaginate,1); Pag_PutHiddenParamPagNum (WhatPaginate,1);
Asg_PutHiddenParamAsgOrder (); Asg_PutHiddenParamAsgOrder ();
Grp_PutParamWhichGrps (); Grp_PutParamWhichGrps ();
break; break;
case Pag_ATT_EVENTS: case Pag_ATT_EVENTS:
Act_StartFormAnchor (ActSeeAtt,Pagination->Anchor); Frm_StartFormAnchor (ActSeeAtt,Pagination->Anchor);
Pag_PutHiddenParamPagNum (WhatPaginate,1); Pag_PutHiddenParamPagNum (WhatPaginate,1);
Att_PutHiddenParamAttOrder (); Att_PutHiddenParamAttOrder ();
Grp_PutParamWhichGrps (); Grp_PutParamWhichGrps ();
break; break;
case Pag_THREADS_FORUM: case Pag_THREADS_FORUM:
Act_StartFormAnchor (For_ActionsSeeFor[Gbl.Forum.ForumSelected.Type], Frm_StartFormAnchor (For_ActionsSeeFor[Gbl.Forum.ForumSelected.Type],
Pagination->Anchor); Pagination->Anchor);
For_PutAllHiddenParamsForum (1, // Page of threads = first For_PutAllHiddenParamsForum (1, // Page of threads = first
1, // Page of posts = first 1, // Page of posts = first
@ -201,7 +202,7 @@ void Pag_WriteLinksToPages (Pag_WhatPaginate_t WhatPaginate,
-1L); -1L);
break; break;
case Pag_POSTS_FORUM: case Pag_POSTS_FORUM:
Act_StartFormAnchor (For_ActionsSeePstFor[Gbl.Forum.ForumSelected.Type], Frm_StartFormAnchor (For_ActionsSeePstFor[Gbl.Forum.ForumSelected.Type],
Pagination->Anchor); Pagination->Anchor);
For_PutAllHiddenParamsForum (Gbl.Forum.CurrentPageThrs, // Page of threads = current For_PutAllHiddenParamsForum (Gbl.Forum.CurrentPageThrs, // Page of threads = current
1, // Page of posts = first 1, // Page of posts = first
@ -212,17 +213,17 @@ void Pag_WriteLinksToPages (Pag_WhatPaginate_t WhatPaginate,
-1L); -1L);
break; break;
case Pag_MESSAGES_RECEIVED: case Pag_MESSAGES_RECEIVED:
Act_StartFormAnchor (ActSeeRcvMsg,Pagination->Anchor); Frm_StartFormAnchor (ActSeeRcvMsg,Pagination->Anchor);
Pag_PutHiddenParamPagNum (WhatPaginate,1); Pag_PutHiddenParamPagNum (WhatPaginate,1);
Msg_PutHiddenParamsMsgsFilters (); Msg_PutHiddenParamsMsgsFilters ();
break; break;
case Pag_MESSAGES_SENT: case Pag_MESSAGES_SENT:
Act_StartFormAnchor (ActSeeSntMsg,Pagination->Anchor); Frm_StartFormAnchor (ActSeeSntMsg,Pagination->Anchor);
Pag_PutHiddenParamPagNum (WhatPaginate,1); Pag_PutHiddenParamPagNum (WhatPaginate,1);
Msg_PutHiddenParamsMsgsFilters (); Msg_PutHiddenParamsMsgsFilters ();
break; break;
case Pag_MY_AGENDA: case Pag_MY_AGENDA:
Act_StartFormAnchor (ActSeeMyAgd,Pagination->Anchor); Frm_StartFormAnchor (ActSeeMyAgd,Pagination->Anchor);
Agd_PutParamsMyAgenda (Gbl.Agenda.Past__FutureEvents, Agd_PutParamsMyAgenda (Gbl.Agenda.Past__FutureEvents,
Gbl.Agenda.PrivatPublicEvents, Gbl.Agenda.PrivatPublicEvents,
Gbl.Agenda.HiddenVisiblEvents, Gbl.Agenda.HiddenVisiblEvents,
@ -230,7 +231,7 @@ void Pag_WriteLinksToPages (Pag_WhatPaginate_t WhatPaginate,
-1L); -1L);
break; break;
case Pag_ANOTHER_AGENDA: case Pag_ANOTHER_AGENDA:
Act_StartFormAnchor (ActSeeUsrAgd,Pagination->Anchor); Frm_StartFormAnchor (ActSeeUsrAgd,Pagination->Anchor);
Agd_PutHiddenParamEventsOrder (); Agd_PutHiddenParamEventsOrder ();
Pag_PutHiddenParamPagNum (WhatPaginate,1); Pag_PutHiddenParamPagNum (WhatPaginate,1);
Usr_PutParamOtherUsrCodEncrypted (); Usr_PutParamOtherUsrCodEncrypted ();
@ -239,7 +240,7 @@ void Pag_WriteLinksToPages (Pag_WhatPaginate_t WhatPaginate,
snprintf (Gbl.Title,sizeof (Gbl.Title), snprintf (Gbl.Title,sizeof (Gbl.Title),
Txt_Page_X_of_Y, Txt_Page_X_of_Y,
1,Pagination->NumPags); 1,Pagination->NumPags);
Act_LinkFormSubmit (Gbl.Title,Font,NULL); Frm_LinkFormSubmit (Gbl.Title,Font,NULL);
} }
else else
fprintf (Gbl.F.Out,"<span class=\"%s\">",Font); fprintf (Gbl.F.Out,"<span class=\"%s\">",Font);
@ -250,7 +251,7 @@ void Pag_WriteLinksToPages (Pag_WhatPaginate_t WhatPaginate,
if (LinkToPagCurrent) if (LinkToPagCurrent)
{ {
fprintf (Gbl.F.Out,"</a>"); fprintf (Gbl.F.Out,"</a>");
Act_EndForm (); Frm_EndForm ();
} }
else else
fprintf (Gbl.F.Out,"</span>"); fprintf (Gbl.F.Out,"</span>");
@ -270,38 +271,38 @@ void Pag_WriteLinksToPages (Pag_WhatPaginate_t WhatPaginate,
switch (WhatPaginate) switch (WhatPaginate)
{ {
case Pag_ASSIGNMENTS: case Pag_ASSIGNMENTS:
Act_StartFormAnchor (ActSeeAsg,Pagination->Anchor); Frm_StartFormAnchor (ActSeeAsg,Pagination->Anchor);
Pag_PutHiddenParamPagNum (WhatPaginate,1); Pag_PutHiddenParamPagNum (WhatPaginate,1);
Asg_PutHiddenParamAsgOrder (); Asg_PutHiddenParamAsgOrder ();
Grp_PutParamWhichGrps (); Grp_PutParamWhichGrps ();
break; break;
case Pag_PROJECTS: case Pag_PROJECTS:
Act_StartFormAnchor (ActSeePrj,Pagination->Anchor); Frm_StartFormAnchor (ActSeePrj,Pagination->Anchor);
Prj_PutParams (&Gbl.Prjs.Filter, Prj_PutParams (&Gbl.Prjs.Filter,
Gbl.Prjs.SelectedOrder, Gbl.Prjs.SelectedOrder,
1, 1,
-1L); -1L);
break; break;
case Pag_GAMES: case Pag_GAMES:
Act_StartFormAnchor (ActSeeAllGam,Pagination->Anchor); Frm_StartFormAnchor (ActSeeAllGam,Pagination->Anchor);
Pag_PutHiddenParamPagNum (WhatPaginate,1); Pag_PutHiddenParamPagNum (WhatPaginate,1);
Asg_PutHiddenParamAsgOrder (); Asg_PutHiddenParamAsgOrder ();
Grp_PutParamWhichGrps (); Grp_PutParamWhichGrps ();
break; break;
case Pag_SURVEYS: case Pag_SURVEYS:
Act_StartFormAnchor (ActSeeAllSvy,Pagination->Anchor); Frm_StartFormAnchor (ActSeeAllSvy,Pagination->Anchor);
Pag_PutHiddenParamPagNum (WhatPaginate,1); Pag_PutHiddenParamPagNum (WhatPaginate,1);
Asg_PutHiddenParamAsgOrder (); Asg_PutHiddenParamAsgOrder ();
Grp_PutParamWhichGrps (); Grp_PutParamWhichGrps ();
break; break;
case Pag_ATT_EVENTS: case Pag_ATT_EVENTS:
Act_StartFormAnchor (ActSeeAtt,Pagination->Anchor); Frm_StartFormAnchor (ActSeeAtt,Pagination->Anchor);
Pag_PutHiddenParamPagNum (WhatPaginate,1); Pag_PutHiddenParamPagNum (WhatPaginate,1);
Att_PutHiddenParamAttOrder (); Att_PutHiddenParamAttOrder ();
Grp_PutParamWhichGrps (); Grp_PutParamWhichGrps ();
break; break;
case Pag_THREADS_FORUM: case Pag_THREADS_FORUM:
Act_StartFormAnchor (For_ActionsSeeFor[Gbl.Forum.ForumSelected.Type], Frm_StartFormAnchor (For_ActionsSeeFor[Gbl.Forum.ForumSelected.Type],
Pagination->Anchor); Pagination->Anchor);
For_PutAllHiddenParamsForum (1, // Page of threads = first For_PutAllHiddenParamsForum (1, // Page of threads = first
1, // Page of posts = first 1, // Page of posts = first
@ -312,7 +313,7 @@ void Pag_WriteLinksToPages (Pag_WhatPaginate_t WhatPaginate,
-1L); -1L);
break; break;
case Pag_POSTS_FORUM: case Pag_POSTS_FORUM:
Act_StartFormAnchor (For_ActionsSeePstFor[Gbl.Forum.ForumSelected.Type], Frm_StartFormAnchor (For_ActionsSeePstFor[Gbl.Forum.ForumSelected.Type],
Pagination->Anchor); Pagination->Anchor);
For_PutAllHiddenParamsForum (Gbl.Forum.CurrentPageThrs, // Page of threads = current For_PutAllHiddenParamsForum (Gbl.Forum.CurrentPageThrs, // Page of threads = current
1, // Page of posts = first 1, // Page of posts = first
@ -323,17 +324,17 @@ void Pag_WriteLinksToPages (Pag_WhatPaginate_t WhatPaginate,
-1L); -1L);
break; break;
case Pag_MESSAGES_RECEIVED: case Pag_MESSAGES_RECEIVED:
Act_StartFormAnchor (ActSeeRcvMsg,Pagination->Anchor); Frm_StartFormAnchor (ActSeeRcvMsg,Pagination->Anchor);
Pag_PutHiddenParamPagNum (WhatPaginate,1); Pag_PutHiddenParamPagNum (WhatPaginate,1);
Msg_PutHiddenParamsMsgsFilters (); Msg_PutHiddenParamsMsgsFilters ();
break; break;
case Pag_MESSAGES_SENT: case Pag_MESSAGES_SENT:
Act_StartFormAnchor (ActSeeSntMsg,Pagination->Anchor); Frm_StartFormAnchor (ActSeeSntMsg,Pagination->Anchor);
Pag_PutHiddenParamPagNum (WhatPaginate,1); Pag_PutHiddenParamPagNum (WhatPaginate,1);
Msg_PutHiddenParamsMsgsFilters (); Msg_PutHiddenParamsMsgsFilters ();
break; break;
case Pag_MY_AGENDA: case Pag_MY_AGENDA:
Act_StartFormAnchor (ActSeeMyAgd,Pagination->Anchor); Frm_StartFormAnchor (ActSeeMyAgd,Pagination->Anchor);
Agd_PutParamsMyAgenda (Gbl.Agenda.Past__FutureEvents, Agd_PutParamsMyAgenda (Gbl.Agenda.Past__FutureEvents,
Gbl.Agenda.PrivatPublicEvents, Gbl.Agenda.PrivatPublicEvents,
Gbl.Agenda.HiddenVisiblEvents, Gbl.Agenda.HiddenVisiblEvents,
@ -341,7 +342,7 @@ void Pag_WriteLinksToPages (Pag_WhatPaginate_t WhatPaginate,
-1L); -1L);
break; break;
case Pag_ANOTHER_AGENDA: case Pag_ANOTHER_AGENDA:
Act_StartFormAnchor (ActSeeUsrAgd,Pagination->Anchor); Frm_StartFormAnchor (ActSeeUsrAgd,Pagination->Anchor);
Agd_PutHiddenParamEventsOrder (); Agd_PutHiddenParamEventsOrder ();
Pag_PutHiddenParamPagNum (WhatPaginate,1); Pag_PutHiddenParamPagNum (WhatPaginate,1);
Usr_PutParamOtherUsrCodEncrypted (); Usr_PutParamOtherUsrCodEncrypted ();
@ -350,10 +351,10 @@ void Pag_WriteLinksToPages (Pag_WhatPaginate_t WhatPaginate,
snprintf (Gbl.Title,sizeof (Gbl.Title), snprintf (Gbl.Title,sizeof (Gbl.Title),
Txt_Page_X_of_Y, Txt_Page_X_of_Y,
1,Pagination->NumPags); 1,Pagination->NumPags);
Act_LinkFormSubmit (Gbl.Title,LinkStyle,NULL); Frm_LinkFormSubmit (Gbl.Title,LinkStyle,NULL);
fprintf (Gbl.F.Out,"1" fprintf (Gbl.F.Out,"1"
"</a>"); "</a>");
Act_EndForm (); Frm_EndForm ();
if (Pagination->LeftPage > 2) if (Pagination->LeftPage > 2)
fprintf (Gbl.F.Out,"<span class=\"%s\">&hellip;</span>",Font); fprintf (Gbl.F.Out,"<span class=\"%s\">&hellip;</span>",Font);
} }
@ -365,38 +366,38 @@ void Pag_WriteLinksToPages (Pag_WhatPaginate_t WhatPaginate,
switch (WhatPaginate) switch (WhatPaginate)
{ {
case Pag_ASSIGNMENTS: case Pag_ASSIGNMENTS:
Act_StartFormAnchor (ActSeeAsg,Pagination->Anchor); Frm_StartFormAnchor (ActSeeAsg,Pagination->Anchor);
Pag_PutHiddenParamPagNum (WhatPaginate,Pagination->LeftPage); Pag_PutHiddenParamPagNum (WhatPaginate,Pagination->LeftPage);
Asg_PutHiddenParamAsgOrder (); Asg_PutHiddenParamAsgOrder ();
Grp_PutParamWhichGrps (); Grp_PutParamWhichGrps ();
break; break;
case Pag_PROJECTS: case Pag_PROJECTS:
Act_StartFormAnchor (ActSeePrj,Pagination->Anchor); Frm_StartFormAnchor (ActSeePrj,Pagination->Anchor);
Prj_PutParams (&Gbl.Prjs.Filter, Prj_PutParams (&Gbl.Prjs.Filter,
Gbl.Prjs.SelectedOrder, Gbl.Prjs.SelectedOrder,
Pagination->LeftPage, Pagination->LeftPage,
-1L); -1L);
break; break;
case Pag_GAMES: case Pag_GAMES:
Act_StartFormAnchor (ActSeeAllGam,Pagination->Anchor); Frm_StartFormAnchor (ActSeeAllGam,Pagination->Anchor);
Pag_PutHiddenParamPagNum (WhatPaginate,Pagination->LeftPage); Pag_PutHiddenParamPagNum (WhatPaginate,Pagination->LeftPage);
Asg_PutHiddenParamAsgOrder (); Asg_PutHiddenParamAsgOrder ();
Grp_PutParamWhichGrps (); Grp_PutParamWhichGrps ();
break; break;
case Pag_SURVEYS: case Pag_SURVEYS:
Act_StartFormAnchor (ActSeeAllSvy,Pagination->Anchor); Frm_StartFormAnchor (ActSeeAllSvy,Pagination->Anchor);
Pag_PutHiddenParamPagNum (WhatPaginate,Pagination->LeftPage); Pag_PutHiddenParamPagNum (WhatPaginate,Pagination->LeftPage);
Asg_PutHiddenParamAsgOrder (); Asg_PutHiddenParamAsgOrder ();
Grp_PutParamWhichGrps (); Grp_PutParamWhichGrps ();
break; break;
case Pag_ATT_EVENTS: case Pag_ATT_EVENTS:
Act_StartFormAnchor (ActSeeAtt,Pagination->Anchor); Frm_StartFormAnchor (ActSeeAtt,Pagination->Anchor);
Pag_PutHiddenParamPagNum (WhatPaginate,Pagination->LeftPage); Pag_PutHiddenParamPagNum (WhatPaginate,Pagination->LeftPage);
Att_PutHiddenParamAttOrder (); Att_PutHiddenParamAttOrder ();
Grp_PutParamWhichGrps (); Grp_PutParamWhichGrps ();
break; break;
case Pag_THREADS_FORUM: case Pag_THREADS_FORUM:
Act_StartFormAnchor (For_ActionsSeeFor[Gbl.Forum.ForumSelected.Type], Frm_StartFormAnchor (For_ActionsSeeFor[Gbl.Forum.ForumSelected.Type],
Pagination->Anchor); Pagination->Anchor);
For_PutAllHiddenParamsForum (Pagination->LeftPage, // Page of threads = left For_PutAllHiddenParamsForum (Pagination->LeftPage, // Page of threads = left
1, // Page of posts = first 1, // Page of posts = first
@ -407,7 +408,7 @@ void Pag_WriteLinksToPages (Pag_WhatPaginate_t WhatPaginate,
-1L); -1L);
break; break;
case Pag_POSTS_FORUM: case Pag_POSTS_FORUM:
Act_StartFormAnchor (For_ActionsSeePstFor[Gbl.Forum.ForumSelected.Type], Frm_StartFormAnchor (For_ActionsSeePstFor[Gbl.Forum.ForumSelected.Type],
Pagination->Anchor); Pagination->Anchor);
For_PutAllHiddenParamsForum (Gbl.Forum.CurrentPageThrs, // Page of threads = current For_PutAllHiddenParamsForum (Gbl.Forum.CurrentPageThrs, // Page of threads = current
Pagination->LeftPage, // Page of posts = left Pagination->LeftPage, // Page of posts = left
@ -418,17 +419,17 @@ void Pag_WriteLinksToPages (Pag_WhatPaginate_t WhatPaginate,
-1L); -1L);
break; break;
case Pag_MESSAGES_RECEIVED: case Pag_MESSAGES_RECEIVED:
Act_StartFormAnchor (ActSeeRcvMsg,Pagination->Anchor); Frm_StartFormAnchor (ActSeeRcvMsg,Pagination->Anchor);
Pag_PutHiddenParamPagNum (WhatPaginate,Pagination->LeftPage); Pag_PutHiddenParamPagNum (WhatPaginate,Pagination->LeftPage);
Msg_PutHiddenParamsMsgsFilters (); Msg_PutHiddenParamsMsgsFilters ();
break; break;
case Pag_MESSAGES_SENT: case Pag_MESSAGES_SENT:
Act_StartFormAnchor (ActSeeSntMsg,Pagination->Anchor); Frm_StartFormAnchor (ActSeeSntMsg,Pagination->Anchor);
Pag_PutHiddenParamPagNum (WhatPaginate,Pagination->LeftPage); Pag_PutHiddenParamPagNum (WhatPaginate,Pagination->LeftPage);
Msg_PutHiddenParamsMsgsFilters (); Msg_PutHiddenParamsMsgsFilters ();
break; break;
case Pag_MY_AGENDA: case Pag_MY_AGENDA:
Act_StartFormAnchor (ActSeeMyAgd,Pagination->Anchor); Frm_StartFormAnchor (ActSeeMyAgd,Pagination->Anchor);
Agd_PutParamsMyAgenda (Gbl.Agenda.Past__FutureEvents, Agd_PutParamsMyAgenda (Gbl.Agenda.Past__FutureEvents,
Gbl.Agenda.PrivatPublicEvents, Gbl.Agenda.PrivatPublicEvents,
Gbl.Agenda.HiddenVisiblEvents, Gbl.Agenda.HiddenVisiblEvents,
@ -436,7 +437,7 @@ void Pag_WriteLinksToPages (Pag_WhatPaginate_t WhatPaginate,
-1L); -1L);
break; break;
case Pag_ANOTHER_AGENDA: case Pag_ANOTHER_AGENDA:
Act_StartFormAnchor (ActSeeUsrAgd,Pagination->Anchor); Frm_StartFormAnchor (ActSeeUsrAgd,Pagination->Anchor);
Agd_PutHiddenParamEventsOrder (); Agd_PutHiddenParamEventsOrder ();
Pag_PutHiddenParamPagNum (WhatPaginate,Pagination->LeftPage); Pag_PutHiddenParamPagNum (WhatPaginate,Pagination->LeftPage);
Usr_PutParamOtherUsrCodEncrypted (); Usr_PutParamOtherUsrCodEncrypted ();
@ -446,10 +447,10 @@ void Pag_WriteLinksToPages (Pag_WhatPaginate_t WhatPaginate,
Txt_Page_X_of_Y, Txt_Page_X_of_Y,
Pagination->LeftPage, Pagination->LeftPage,
Pagination->NumPags); Pagination->NumPags);
Act_LinkFormSubmit (Gbl.Title,LinkStyle,NULL); Frm_LinkFormSubmit (Gbl.Title,LinkStyle,NULL);
fprintf (Gbl.F.Out,"%u</a>", fprintf (Gbl.F.Out,"%u</a>",
Pagination->LeftPage); Pagination->LeftPage);
Act_EndForm (); Frm_EndForm ();
if (Pagination->LeftPage < Pagination->StartPage - 1) if (Pagination->LeftPage < Pagination->StartPage - 1)
fprintf (Gbl.F.Out,"<span class=\"%s\">&hellip;</span>",Font); fprintf (Gbl.F.Out,"<span class=\"%s\">&hellip;</span>",Font);
} }
@ -472,38 +473,38 @@ void Pag_WriteLinksToPages (Pag_WhatPaginate_t WhatPaginate,
switch (WhatPaginate) switch (WhatPaginate)
{ {
case Pag_ASSIGNMENTS: case Pag_ASSIGNMENTS:
Act_StartFormAnchor (ActSeeAsg,Pagination->Anchor); Frm_StartFormAnchor (ActSeeAsg,Pagination->Anchor);
Pag_PutHiddenParamPagNum (WhatPaginate,NumPage); Pag_PutHiddenParamPagNum (WhatPaginate,NumPage);
Asg_PutHiddenParamAsgOrder (); Asg_PutHiddenParamAsgOrder ();
Grp_PutParamWhichGrps (); Grp_PutParamWhichGrps ();
break; break;
case Pag_PROJECTS: case Pag_PROJECTS:
Act_StartFormAnchor (ActSeePrj,Pagination->Anchor); Frm_StartFormAnchor (ActSeePrj,Pagination->Anchor);
Prj_PutParams (&Gbl.Prjs.Filter, Prj_PutParams (&Gbl.Prjs.Filter,
Gbl.Prjs.SelectedOrder, Gbl.Prjs.SelectedOrder,
NumPage, NumPage,
-1L); -1L);
break; break;
case Pag_GAMES: case Pag_GAMES:
Act_StartFormAnchor (ActSeeAllGam,Pagination->Anchor); Frm_StartFormAnchor (ActSeeAllGam,Pagination->Anchor);
Pag_PutHiddenParamPagNum (WhatPaginate,NumPage); Pag_PutHiddenParamPagNum (WhatPaginate,NumPage);
Asg_PutHiddenParamAsgOrder (); Asg_PutHiddenParamAsgOrder ();
Grp_PutParamWhichGrps (); Grp_PutParamWhichGrps ();
break; break;
case Pag_SURVEYS: case Pag_SURVEYS:
Act_StartFormAnchor (ActSeeAllSvy,Pagination->Anchor); Frm_StartFormAnchor (ActSeeAllSvy,Pagination->Anchor);
Pag_PutHiddenParamPagNum (WhatPaginate,NumPage); Pag_PutHiddenParamPagNum (WhatPaginate,NumPage);
Asg_PutHiddenParamAsgOrder (); Asg_PutHiddenParamAsgOrder ();
Grp_PutParamWhichGrps (); Grp_PutParamWhichGrps ();
break; break;
case Pag_ATT_EVENTS: case Pag_ATT_EVENTS:
Act_StartFormAnchor (ActSeeAtt,Pagination->Anchor); Frm_StartFormAnchor (ActSeeAtt,Pagination->Anchor);
Pag_PutHiddenParamPagNum (WhatPaginate,NumPage); Pag_PutHiddenParamPagNum (WhatPaginate,NumPage);
Att_PutHiddenParamAttOrder (); Att_PutHiddenParamAttOrder ();
Grp_PutParamWhichGrps (); Grp_PutParamWhichGrps ();
break; break;
case Pag_THREADS_FORUM: case Pag_THREADS_FORUM:
Act_StartFormAnchor (For_ActionsSeeFor[Gbl.Forum.ForumSelected.Type], Frm_StartFormAnchor (For_ActionsSeeFor[Gbl.Forum.ForumSelected.Type],
Pagination->Anchor); Pagination->Anchor);
For_PutAllHiddenParamsForum (NumPage, // Page of threads = number of page For_PutAllHiddenParamsForum (NumPage, // Page of threads = number of page
1, // Page of posts = first 1, // Page of posts = first
@ -514,7 +515,7 @@ void Pag_WriteLinksToPages (Pag_WhatPaginate_t WhatPaginate,
-1L); -1L);
break; break;
case Pag_POSTS_FORUM: case Pag_POSTS_FORUM:
Act_StartFormAnchor (For_ActionsSeePstFor[Gbl.Forum.ForumSelected.Type], Frm_StartFormAnchor (For_ActionsSeePstFor[Gbl.Forum.ForumSelected.Type],
Pagination->Anchor); Pagination->Anchor);
For_PutAllHiddenParamsForum (Gbl.Forum.CurrentPageThrs, // Page of threads = current For_PutAllHiddenParamsForum (Gbl.Forum.CurrentPageThrs, // Page of threads = current
NumPage, // Page of posts = number of page NumPage, // Page of posts = number of page
@ -525,17 +526,17 @@ void Pag_WriteLinksToPages (Pag_WhatPaginate_t WhatPaginate,
-1L); -1L);
break; break;
case Pag_MESSAGES_RECEIVED: case Pag_MESSAGES_RECEIVED:
Act_StartFormAnchor (ActSeeRcvMsg,Pagination->Anchor); Frm_StartFormAnchor (ActSeeRcvMsg,Pagination->Anchor);
Pag_PutHiddenParamPagNum (WhatPaginate,NumPage); Pag_PutHiddenParamPagNum (WhatPaginate,NumPage);
Msg_PutHiddenParamsMsgsFilters (); Msg_PutHiddenParamsMsgsFilters ();
break; break;
case Pag_MESSAGES_SENT: case Pag_MESSAGES_SENT:
Act_StartFormAnchor (ActSeeSntMsg,Pagination->Anchor); Frm_StartFormAnchor (ActSeeSntMsg,Pagination->Anchor);
Pag_PutHiddenParamPagNum (WhatPaginate,NumPage); Pag_PutHiddenParamPagNum (WhatPaginate,NumPage);
Msg_PutHiddenParamsMsgsFilters (); Msg_PutHiddenParamsMsgsFilters ();
break; break;
case Pag_MY_AGENDA: case Pag_MY_AGENDA:
Act_StartFormAnchor (ActSeeMyAgd,Pagination->Anchor); Frm_StartFormAnchor (ActSeeMyAgd,Pagination->Anchor);
Agd_PutParamsMyAgenda (Gbl.Agenda.Past__FutureEvents, Agd_PutParamsMyAgenda (Gbl.Agenda.Past__FutureEvents,
Gbl.Agenda.PrivatPublicEvents, Gbl.Agenda.PrivatPublicEvents,
Gbl.Agenda.HiddenVisiblEvents, Gbl.Agenda.HiddenVisiblEvents,
@ -543,16 +544,16 @@ void Pag_WriteLinksToPages (Pag_WhatPaginate_t WhatPaginate,
-1L); -1L);
break; break;
case Pag_ANOTHER_AGENDA: case Pag_ANOTHER_AGENDA:
Act_StartFormAnchor (ActSeeUsrAgd,Pagination->Anchor); Frm_StartFormAnchor (ActSeeUsrAgd,Pagination->Anchor);
Agd_PutHiddenParamEventsOrder (); Agd_PutHiddenParamEventsOrder ();
Pag_PutHiddenParamPagNum (WhatPaginate,NumPage); Pag_PutHiddenParamPagNum (WhatPaginate,NumPage);
Usr_PutParamOtherUsrCodEncrypted (); Usr_PutParamOtherUsrCodEncrypted ();
break; break;
} }
Act_LinkFormSubmit (Gbl.Title,LinkStyle,NULL); Frm_LinkFormSubmit (Gbl.Title,LinkStyle,NULL);
fprintf (Gbl.F.Out,"%u</a>", fprintf (Gbl.F.Out,"%u</a>",
NumPage); NumPage);
Act_EndForm (); Frm_EndForm ();
} }
} }
@ -565,38 +566,38 @@ void Pag_WriteLinksToPages (Pag_WhatPaginate_t WhatPaginate,
switch (WhatPaginate) switch (WhatPaginate)
{ {
case Pag_ASSIGNMENTS: case Pag_ASSIGNMENTS:
Act_StartFormAnchor (ActSeeAsg,Pagination->Anchor); Frm_StartFormAnchor (ActSeeAsg,Pagination->Anchor);
Pag_PutHiddenParamPagNum (WhatPaginate,Pagination->RightPage); Pag_PutHiddenParamPagNum (WhatPaginate,Pagination->RightPage);
Asg_PutHiddenParamAsgOrder (); Asg_PutHiddenParamAsgOrder ();
Grp_PutParamWhichGrps (); Grp_PutParamWhichGrps ();
break; break;
case Pag_PROJECTS: case Pag_PROJECTS:
Act_StartFormAnchor (ActSeePrj,Pagination->Anchor); Frm_StartFormAnchor (ActSeePrj,Pagination->Anchor);
Prj_PutParams (&Gbl.Prjs.Filter, Prj_PutParams (&Gbl.Prjs.Filter,
Gbl.Prjs.SelectedOrder, Gbl.Prjs.SelectedOrder,
Pagination->RightPage, Pagination->RightPage,
-1L); -1L);
break; break;
case Pag_GAMES: case Pag_GAMES:
Act_StartFormAnchor (ActSeeAllGam,Pagination->Anchor); Frm_StartFormAnchor (ActSeeAllGam,Pagination->Anchor);
Pag_PutHiddenParamPagNum (WhatPaginate,Pagination->RightPage); Pag_PutHiddenParamPagNum (WhatPaginate,Pagination->RightPage);
Asg_PutHiddenParamAsgOrder (); Asg_PutHiddenParamAsgOrder ();
Grp_PutParamWhichGrps (); Grp_PutParamWhichGrps ();
break; break;
case Pag_SURVEYS: case Pag_SURVEYS:
Act_StartFormAnchor (ActSeeAllSvy,Pagination->Anchor); Frm_StartFormAnchor (ActSeeAllSvy,Pagination->Anchor);
Pag_PutHiddenParamPagNum (WhatPaginate,Pagination->RightPage); Pag_PutHiddenParamPagNum (WhatPaginate,Pagination->RightPage);
Asg_PutHiddenParamAsgOrder (); Asg_PutHiddenParamAsgOrder ();
Grp_PutParamWhichGrps (); Grp_PutParamWhichGrps ();
break; break;
case Pag_ATT_EVENTS: case Pag_ATT_EVENTS:
Act_StartFormAnchor (ActSeeAtt,Pagination->Anchor); Frm_StartFormAnchor (ActSeeAtt,Pagination->Anchor);
Pag_PutHiddenParamPagNum (WhatPaginate,Pagination->RightPage); Pag_PutHiddenParamPagNum (WhatPaginate,Pagination->RightPage);
Att_PutHiddenParamAttOrder (); Att_PutHiddenParamAttOrder ();
Grp_PutParamWhichGrps (); Grp_PutParamWhichGrps ();
break; break;
case Pag_THREADS_FORUM: case Pag_THREADS_FORUM:
Act_StartFormAnchor (For_ActionsSeeFor[Gbl.Forum.ForumSelected.Type], Frm_StartFormAnchor (For_ActionsSeeFor[Gbl.Forum.ForumSelected.Type],
Pagination->Anchor); Pagination->Anchor);
For_PutAllHiddenParamsForum (Pagination->RightPage, // Page of threads = right For_PutAllHiddenParamsForum (Pagination->RightPage, // Page of threads = right
1, // Page of posts = first 1, // Page of posts = first
@ -607,7 +608,7 @@ void Pag_WriteLinksToPages (Pag_WhatPaginate_t WhatPaginate,
-1L); -1L);
break; break;
case Pag_POSTS_FORUM: case Pag_POSTS_FORUM:
Act_StartFormAnchor (For_ActionsSeePstFor[Gbl.Forum.ForumSelected.Type], Frm_StartFormAnchor (For_ActionsSeePstFor[Gbl.Forum.ForumSelected.Type],
Pagination->Anchor); Pagination->Anchor);
For_PutAllHiddenParamsForum (Gbl.Forum.CurrentPageThrs, // Page of threads = current For_PutAllHiddenParamsForum (Gbl.Forum.CurrentPageThrs, // Page of threads = current
Pagination->RightPage, // Page of posts = right Pagination->RightPage, // Page of posts = right
@ -618,17 +619,17 @@ void Pag_WriteLinksToPages (Pag_WhatPaginate_t WhatPaginate,
-1L); -1L);
break; break;
case Pag_MESSAGES_RECEIVED: case Pag_MESSAGES_RECEIVED:
Act_StartFormAnchor (ActSeeRcvMsg,Pagination->Anchor); Frm_StartFormAnchor (ActSeeRcvMsg,Pagination->Anchor);
Pag_PutHiddenParamPagNum (WhatPaginate,Pagination->RightPage); Pag_PutHiddenParamPagNum (WhatPaginate,Pagination->RightPage);
Msg_PutHiddenParamsMsgsFilters (); Msg_PutHiddenParamsMsgsFilters ();
break; break;
case Pag_MESSAGES_SENT: case Pag_MESSAGES_SENT:
Act_StartFormAnchor (ActSeeSntMsg,Pagination->Anchor); Frm_StartFormAnchor (ActSeeSntMsg,Pagination->Anchor);
Pag_PutHiddenParamPagNum (WhatPaginate,Pagination->RightPage); Pag_PutHiddenParamPagNum (WhatPaginate,Pagination->RightPage);
Msg_PutHiddenParamsMsgsFilters (); Msg_PutHiddenParamsMsgsFilters ();
break; break;
case Pag_MY_AGENDA: case Pag_MY_AGENDA:
Act_StartFormAnchor (ActSeeMyAgd,Pagination->Anchor); Frm_StartFormAnchor (ActSeeMyAgd,Pagination->Anchor);
Agd_PutParamsMyAgenda (Gbl.Agenda.Past__FutureEvents, Agd_PutParamsMyAgenda (Gbl.Agenda.Past__FutureEvents,
Gbl.Agenda.PrivatPublicEvents, Gbl.Agenda.PrivatPublicEvents,
Gbl.Agenda.HiddenVisiblEvents, Gbl.Agenda.HiddenVisiblEvents,
@ -636,7 +637,7 @@ void Pag_WriteLinksToPages (Pag_WhatPaginate_t WhatPaginate,
-1L); -1L);
break; break;
case Pag_ANOTHER_AGENDA: case Pag_ANOTHER_AGENDA:
Act_StartFormAnchor (ActSeeUsrAgd,Pagination->Anchor); Frm_StartFormAnchor (ActSeeUsrAgd,Pagination->Anchor);
Agd_PutHiddenParamEventsOrder (); Agd_PutHiddenParamEventsOrder ();
Pag_PutHiddenParamPagNum (WhatPaginate,Pagination->RightPage); Pag_PutHiddenParamPagNum (WhatPaginate,Pagination->RightPage);
Usr_PutParamOtherUsrCodEncrypted (); Usr_PutParamOtherUsrCodEncrypted ();
@ -645,9 +646,9 @@ void Pag_WriteLinksToPages (Pag_WhatPaginate_t WhatPaginate,
snprintf (Gbl.Title,sizeof (Gbl.Title), snprintf (Gbl.Title,sizeof (Gbl.Title),
Txt_Page_X_of_Y, Txt_Page_X_of_Y,
Pagination->RightPage,Pagination->NumPags); Pagination->RightPage,Pagination->NumPags);
Act_LinkFormSubmit (Gbl.Title,LinkStyle,NULL); Frm_LinkFormSubmit (Gbl.Title,LinkStyle,NULL);
fprintf (Gbl.F.Out,"%u</a>",Pagination->RightPage); fprintf (Gbl.F.Out,"%u</a>",Pagination->RightPage);
Act_EndForm (); Frm_EndForm ();
} }
/***** Possible link to last page *****/ /***** Possible link to last page *****/
@ -658,38 +659,38 @@ void Pag_WriteLinksToPages (Pag_WhatPaginate_t WhatPaginate,
switch (WhatPaginate) switch (WhatPaginate)
{ {
case Pag_ASSIGNMENTS: case Pag_ASSIGNMENTS:
Act_StartFormAnchor (ActSeeAsg,Pagination->Anchor); Frm_StartFormAnchor (ActSeeAsg,Pagination->Anchor);
Pag_PutHiddenParamPagNum (WhatPaginate,Pagination->NumPags); Pag_PutHiddenParamPagNum (WhatPaginate,Pagination->NumPags);
Asg_PutHiddenParamAsgOrder (); Asg_PutHiddenParamAsgOrder ();
Grp_PutParamWhichGrps (); Grp_PutParamWhichGrps ();
break; break;
case Pag_PROJECTS: case Pag_PROJECTS:
Act_StartFormAnchor (ActSeePrj,Pagination->Anchor); Frm_StartFormAnchor (ActSeePrj,Pagination->Anchor);
Prj_PutParams (&Gbl.Prjs.Filter, Prj_PutParams (&Gbl.Prjs.Filter,
Gbl.Prjs.SelectedOrder, Gbl.Prjs.SelectedOrder,
Pagination->NumPags, Pagination->NumPags,
-1L); -1L);
break; break;
case Pag_GAMES: case Pag_GAMES:
Act_StartFormAnchor (ActSeeAllGam,Pagination->Anchor); Frm_StartFormAnchor (ActSeeAllGam,Pagination->Anchor);
Pag_PutHiddenParamPagNum (WhatPaginate,Pagination->NumPags); Pag_PutHiddenParamPagNum (WhatPaginate,Pagination->NumPags);
Asg_PutHiddenParamAsgOrder (); Asg_PutHiddenParamAsgOrder ();
Grp_PutParamWhichGrps (); Grp_PutParamWhichGrps ();
break; break;
case Pag_SURVEYS: case Pag_SURVEYS:
Act_StartFormAnchor (ActSeeAllSvy,Pagination->Anchor); Frm_StartFormAnchor (ActSeeAllSvy,Pagination->Anchor);
Pag_PutHiddenParamPagNum (WhatPaginate,Pagination->NumPags); Pag_PutHiddenParamPagNum (WhatPaginate,Pagination->NumPags);
Asg_PutHiddenParamAsgOrder (); Asg_PutHiddenParamAsgOrder ();
Grp_PutParamWhichGrps (); Grp_PutParamWhichGrps ();
break; break;
case Pag_ATT_EVENTS: case Pag_ATT_EVENTS:
Act_StartFormAnchor (ActSeeAtt,Pagination->Anchor); Frm_StartFormAnchor (ActSeeAtt,Pagination->Anchor);
Pag_PutHiddenParamPagNum (WhatPaginate,Pagination->NumPags); Pag_PutHiddenParamPagNum (WhatPaginate,Pagination->NumPags);
Att_PutHiddenParamAttOrder (); Att_PutHiddenParamAttOrder ();
Grp_PutParamWhichGrps (); Grp_PutParamWhichGrps ();
break; break;
case Pag_THREADS_FORUM: case Pag_THREADS_FORUM:
Act_StartFormAnchor (For_ActionsSeeFor[Gbl.Forum.ForumSelected.Type], Frm_StartFormAnchor (For_ActionsSeeFor[Gbl.Forum.ForumSelected.Type],
Pagination->Anchor); Pagination->Anchor);
For_PutAllHiddenParamsForum (Pagination->NumPags, // Page of threads = last For_PutAllHiddenParamsForum (Pagination->NumPags, // Page of threads = last
1, // Page of posts = first 1, // Page of posts = first
@ -700,7 +701,7 @@ void Pag_WriteLinksToPages (Pag_WhatPaginate_t WhatPaginate,
-1L); -1L);
break; break;
case Pag_POSTS_FORUM: case Pag_POSTS_FORUM:
Act_StartFormAnchor (For_ActionsSeePstFor[Gbl.Forum.ForumSelected.Type], Frm_StartFormAnchor (For_ActionsSeePstFor[Gbl.Forum.ForumSelected.Type],
Pagination->Anchor); Pagination->Anchor);
For_PutAllHiddenParamsForum (Gbl.Forum.CurrentPageThrs, // Page of threads = current For_PutAllHiddenParamsForum (Gbl.Forum.CurrentPageThrs, // Page of threads = current
Pagination->NumPags, // Page of posts = last Pagination->NumPags, // Page of posts = last
@ -711,17 +712,17 @@ void Pag_WriteLinksToPages (Pag_WhatPaginate_t WhatPaginate,
-1L); -1L);
break; break;
case Pag_MESSAGES_RECEIVED: case Pag_MESSAGES_RECEIVED:
Act_StartFormAnchor (ActSeeRcvMsg,Pagination->Anchor); Frm_StartFormAnchor (ActSeeRcvMsg,Pagination->Anchor);
Pag_PutHiddenParamPagNum (WhatPaginate,Pagination->NumPags); Pag_PutHiddenParamPagNum (WhatPaginate,Pagination->NumPags);
Msg_PutHiddenParamsMsgsFilters (); Msg_PutHiddenParamsMsgsFilters ();
break; break;
case Pag_MESSAGES_SENT: case Pag_MESSAGES_SENT:
Act_StartFormAnchor (ActSeeSntMsg,Pagination->Anchor); Frm_StartFormAnchor (ActSeeSntMsg,Pagination->Anchor);
Pag_PutHiddenParamPagNum (WhatPaginate,Pagination->NumPags); Pag_PutHiddenParamPagNum (WhatPaginate,Pagination->NumPags);
Msg_PutHiddenParamsMsgsFilters (); Msg_PutHiddenParamsMsgsFilters ();
break; break;
case Pag_MY_AGENDA: case Pag_MY_AGENDA:
Act_StartFormAnchor (ActSeeMyAgd,Pagination->Anchor); Frm_StartFormAnchor (ActSeeMyAgd,Pagination->Anchor);
Agd_PutParamsMyAgenda (Gbl.Agenda.Past__FutureEvents, Agd_PutParamsMyAgenda (Gbl.Agenda.Past__FutureEvents,
Gbl.Agenda.PrivatPublicEvents, Gbl.Agenda.PrivatPublicEvents,
Gbl.Agenda.HiddenVisiblEvents, Gbl.Agenda.HiddenVisiblEvents,
@ -729,7 +730,7 @@ void Pag_WriteLinksToPages (Pag_WhatPaginate_t WhatPaginate,
-1L); -1L);
break; break;
case Pag_ANOTHER_AGENDA: case Pag_ANOTHER_AGENDA:
Act_StartFormAnchor (ActSeeUsrAgd,Pagination->Anchor); Frm_StartFormAnchor (ActSeeUsrAgd,Pagination->Anchor);
Agd_PutHiddenParamEventsOrder (); Agd_PutHiddenParamEventsOrder ();
Pag_PutHiddenParamPagNum (WhatPaginate,Pagination->NumPags); Pag_PutHiddenParamPagNum (WhatPaginate,Pagination->NumPags);
Usr_PutParamOtherUsrCodEncrypted (); Usr_PutParamOtherUsrCodEncrypted ();
@ -738,9 +739,9 @@ void Pag_WriteLinksToPages (Pag_WhatPaginate_t WhatPaginate,
snprintf (Gbl.Title,sizeof (Gbl.Title), snprintf (Gbl.Title,sizeof (Gbl.Title),
Txt_Page_X_of_Y, Txt_Page_X_of_Y,
Pagination->NumPags,Pagination->NumPags); Pagination->NumPags,Pagination->NumPags);
Act_LinkFormSubmit (Gbl.Title,LinkStyle,NULL); Frm_LinkFormSubmit (Gbl.Title,LinkStyle,NULL);
fprintf (Gbl.F.Out,"%u</a>",Pagination->NumPags); fprintf (Gbl.F.Out,"%u</a>",Pagination->NumPags);
Act_EndForm (); Frm_EndForm ();
} }
} }
} }

View File

@ -35,6 +35,7 @@
#include "swad_box.h" #include "swad_box.h"
#include "swad_database.h" #include "swad_database.h"
#include "swad_enrolment.h" #include "swad_enrolment.h"
#include "swad_form.h"
#include "swad_global.h" #include "swad_global.h"
#include "swad_ID.h" #include "swad_ID.h"
#include "swad_password.h" #include "swad_password.h"
@ -287,7 +288,7 @@ void Pwd_ShowFormSendNewPwd (void)
Lay_StartSection (Pwd_PASSWORD_SECTION_ID); Lay_StartSection (Pwd_PASSWORD_SECTION_ID);
/***** Start form *****/ /***** Start form *****/
Act_StartFormAnchor (ActSndNewPwd,Pwd_PASSWORD_SECTION_ID); Frm_StartFormAnchor (ActSndNewPwd,Pwd_PASSWORD_SECTION_ID);
/***** Start box *****/ /***** Start box *****/
Box_StartBox (NULL,Txt_Forgotten_password,NULL, Box_StartBox (NULL,Txt_Forgotten_password,NULL,
@ -309,7 +310,7 @@ void Pwd_ShowFormSendNewPwd (void)
Box_EndBoxWithButton (Btn_CONFIRM_BUTTON,Txt_Get_a_new_password); Box_EndBoxWithButton (Btn_CONFIRM_BUTTON,Txt_Get_a_new_password);
/***** End form *****/ /***** End form *****/
Act_EndForm (); Frm_EndForm ();
/***** End section *****/ /***** End section *****/
Lay_EndSection (); Lay_EndSection ();
@ -697,7 +698,7 @@ void Pwd_ShowFormChgMyPwd (void)
Lay_StartSection (Pwd_PASSWORD_SECTION_ID); Lay_StartSection (Pwd_PASSWORD_SECTION_ID);
/***** Start form *****/ /***** Start form *****/
Act_StartFormAnchor (ActChgPwd,Pwd_PASSWORD_SECTION_ID); Frm_StartFormAnchor (ActChgPwd,Pwd_PASSWORD_SECTION_ID);
/***** Start box *****/ /***** Start box *****/
snprintf (StrRecordWidth,sizeof (StrRecordWidth), snprintf (StrRecordWidth,sizeof (StrRecordWidth),
@ -760,7 +761,7 @@ void Pwd_ShowFormChgMyPwd (void)
Txt_Set_password); Txt_Set_password);
/***** End form *****/ /***** End form *****/
Act_EndForm (); Frm_EndForm ();
/***** End section *****/ /***** End section *****/
Lay_EndSection (); Lay_EndSection ();
@ -875,7 +876,7 @@ void Pwd_ShowFormChgOtherUsrPwd (void)
NextAction = ActChgPwdOth; NextAction = ActChgPwdOth;
break; break;
} }
Act_StartFormAnchor (NextAction,Pwd_PASSWORD_SECTION_ID); Frm_StartFormAnchor (NextAction,Pwd_PASSWORD_SECTION_ID);
Usr_PutParamOtherUsrCodEncrypted (); Usr_PutParamOtherUsrCodEncrypted ();
/* New password */ /* New password */
@ -885,7 +886,7 @@ void Pwd_ShowFormChgOtherUsrPwd (void)
/* End form */ /* End form */
Btn_PutConfirmButton (Txt_Change_password); Btn_PutConfirmButton (Txt_Change_password);
Act_EndForm (); Frm_EndForm ();
/***** End box *****/ /***** End box *****/
Box_EndBox (); Box_EndBox ();

View File

@ -42,6 +42,7 @@
#include "swad_enrolment.h" #include "swad_enrolment.h"
#include "swad_file.h" #include "swad_file.h"
#include "swad_file_browser.h" #include "swad_file_browser.h"
#include "swad_form.h"
#include "swad_global.h" #include "swad_global.h"
#include "swad_logo.h" #include "swad_logo.h"
#include "swad_parameter.h" #include "swad_parameter.h"
@ -312,7 +313,7 @@ static void Pho_ReqPhoto (const struct UsrData *UsrDat)
/***** Start form *****/ /***** Start form *****/
if (ItsMe) if (ItsMe)
Act_StartForm (ActDetMyPho); Frm_StartForm (ActDetMyPho);
else else
{ {
switch (Gbl.Usrs.Other.UsrDat.Roles.InCurrentCrs.Role) switch (Gbl.Usrs.Other.UsrDat.Roles.InCurrentCrs.Role)
@ -328,7 +329,7 @@ static void Pho_ReqPhoto (const struct UsrData *UsrDat)
NextAction = ActDetOthPho; NextAction = ActDetOthPho;
break; break;
} }
Act_StartForm (NextAction); Frm_StartForm (NextAction);
Usr_PutParamUsrCodEncrypted (UsrDat->EncryptedUsrCod); Usr_PutParamUsrCodEncrypted (UsrDat->EncryptedUsrCod);
} }
@ -347,7 +348,7 @@ static void Pho_ReqPhoto (const struct UsrData *UsrDat)
Gbl.Form.Id); Gbl.Form.Id);
/***** End form *****/ /***** End form *****/
Act_EndForm (); Frm_EndForm ();
/***** End box *****/ /***** End box *****/
Box_EndBox (); Box_EndBox ();
@ -709,7 +710,7 @@ static bool Pho_ReceivePhotoAndDetectFaces (bool ItsMe,const struct UsrData *Usr
{ {
NumFacesGreen++; NumFacesGreen++;
if (ItsMe) if (ItsMe)
Act_StartForm (ActUpdMyPho); Frm_StartForm (ActUpdMyPho);
else else
{ {
switch (Gbl.Usrs.Other.UsrDat.Roles.InCurrentCrs.Role) switch (Gbl.Usrs.Other.UsrDat.Roles.InCurrentCrs.Role)
@ -725,11 +726,11 @@ static bool Pho_ReceivePhotoAndDetectFaces (bool ItsMe,const struct UsrData *Usr
NextAction = ActUpdOthPho; NextAction = ActUpdOthPho;
break; break;
} }
Act_StartForm (NextAction); Frm_StartForm (NextAction);
Usr_PutParamUsrCodEncrypted (UsrDat->EncryptedUsrCod); Usr_PutParamUsrCodEncrypted (UsrDat->EncryptedUsrCod);
} }
Par_PutHiddenParamString ("FileName",StrFileName); Par_PutHiddenParamString ("FileName",StrFileName);
Act_EndForm (); Frm_EndForm ();
} }
else else
NumFacesRed++; NumFacesRed++;
@ -1230,29 +1231,29 @@ void Pho_ShowUsrPhoto (const struct UsrData *UsrDat,const char *PhotoURL,
BrowserTabIs1stTab; // Only in main browser tab BrowserTabIs1stTab; // Only in main browser tab
bool PutZoomCode = (Zoom == Pho_ZOOM) && // Make zoom bool PutZoomCode = (Zoom == Pho_ZOOM) && // Make zoom
BrowserTabIs1stTab; // Only in main browser tab BrowserTabIs1stTab; // Only in main browser tab
char IdCaption[Act_MAX_BYTES_ID + 1]; char IdCaption[Frm_MAX_BYTES_ID + 1];
/***** Start form to go to public profile *****/ /***** Start form to go to public profile *****/
if (PutLinkToPublicProfile) if (PutLinkToPublicProfile)
{ {
if (FormUnique) if (FormUnique)
{ {
Act_StartFormUnique (ActSeeOthPubPrf); Frm_StartFormUnique (ActSeeOthPubPrf);
Usr_PutParamUsrCodEncrypted (UsrDat->EncryptedUsrCod); Usr_PutParamUsrCodEncrypted (UsrDat->EncryptedUsrCod);
Act_LinkFormSubmitUnique (NULL,NULL); Frm_LinkFormSubmitUnique (NULL,NULL);
} }
else else
{ {
Act_StartForm (ActSeeOthPubPrf); Frm_StartForm (ActSeeOthPubPrf);
Usr_PutParamUsrCodEncrypted (UsrDat->EncryptedUsrCod); Usr_PutParamUsrCodEncrypted (UsrDat->EncryptedUsrCod);
Act_LinkFormSubmit (NULL,NULL,NULL); Frm_LinkFormSubmit (NULL,NULL,NULL);
} }
} }
/***** Hidden div to pass user's name to Javascript *****/ /***** Hidden div to pass user's name to Javascript *****/
if (PutZoomCode) if (PutZoomCode)
{ {
Act_SetUniqueId (IdCaption); Frm_SetUniqueId (IdCaption);
fprintf (Gbl.F.Out,"<div id=\"%s\" class=\"NOT_SHOWN\">", fprintf (Gbl.F.Out,"<div id=\"%s\" class=\"NOT_SHOWN\">",
IdCaption); IdCaption);
@ -1314,7 +1315,7 @@ void Pho_ShowUsrPhoto (const struct UsrData *UsrDat,const char *PhotoURL,
if (PutLinkToPublicProfile) if (PutLinkToPublicProfile)
{ {
fprintf (Gbl.F.Out,"</a>"); fprintf (Gbl.F.Out,"</a>");
Act_EndForm (); Frm_EndForm ();
} }
} }
@ -1805,7 +1806,7 @@ static void Pho_PutSelectorForTypeOfAvg (void)
"</td>" "</td>"
"<td class=\"LEFT_MIDDLE\">", "<td class=\"LEFT_MIDDLE\">",
The_ClassForm[Gbl.Prefs.Theme],Txt_Average_type); The_ClassForm[Gbl.Prefs.Theme],Txt_Average_type);
Act_StartForm (ActSeePhoDeg); Frm_StartForm (ActSeePhoDeg);
Pho_PutHiddenParamPhotoSize (); Pho_PutHiddenParamPhotoSize ();
Pho_PutHiddenParamOrderDegrees (); Pho_PutHiddenParamOrderDegrees ();
Usr_PutParamsPrefsAboutUsrList (); Usr_PutParamsPrefsAboutUsrList ();
@ -1822,7 +1823,7 @@ static void Pho_PutSelectorForTypeOfAvg (void)
fprintf (Gbl.F.Out,">%s</option>",Txt_AVERAGE_PHOTO_TYPES[TypeOfAvg]); fprintf (Gbl.F.Out,">%s</option>",Txt_AVERAGE_PHOTO_TYPES[TypeOfAvg]);
} }
fprintf (Gbl.F.Out,"</select>"); fprintf (Gbl.F.Out,"</select>");
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</td>" fprintf (Gbl.F.Out,"</td>"
"</tr>"); "</tr>");
} }
@ -1866,7 +1867,7 @@ static void Pho_PutSelectorForHowComputePhotoSize (void)
"</td>" "</td>"
"<td class=\"LEFT_MIDDLE\">", "<td class=\"LEFT_MIDDLE\">",
The_ClassForm[Gbl.Prefs.Theme],Txt_Size_of_photos); The_ClassForm[Gbl.Prefs.Theme],Txt_Size_of_photos);
Act_StartForm (ActSeePhoDeg); Frm_StartForm (ActSeePhoDeg);
Pho_PutHiddenParamTypeOfAvg (); Pho_PutHiddenParamTypeOfAvg ();
Pho_PutHiddenParamOrderDegrees (); Pho_PutHiddenParamOrderDegrees ();
Usr_PutParamsPrefsAboutUsrList (); Usr_PutParamsPrefsAboutUsrList ();
@ -1883,7 +1884,7 @@ static void Pho_PutSelectorForHowComputePhotoSize (void)
fprintf (Gbl.F.Out,">%s</option>",Txt_STAT_DEGREE_PHOTO_SIZE[PhoSi]); fprintf (Gbl.F.Out,">%s</option>",Txt_STAT_DEGREE_PHOTO_SIZE[PhoSi]);
} }
fprintf (Gbl.F.Out,"</select>"); fprintf (Gbl.F.Out,"</select>");
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</td>" fprintf (Gbl.F.Out,"</td>"
"</tr>"); "</tr>");
} }
@ -1927,7 +1928,7 @@ static void Pho_PutSelectorForHowOrderDegrees (void)
"</td>" "</td>"
"<td class=\"LEFT_MIDDLE\">", "<td class=\"LEFT_MIDDLE\">",
The_ClassForm[Gbl.Prefs.Theme],Txt_Sort_degrees_by); The_ClassForm[Gbl.Prefs.Theme],Txt_Sort_degrees_by);
Act_StartForm (ActSeePhoDeg); Frm_StartForm (ActSeePhoDeg);
Pho_PutHiddenParamTypeOfAvg (); Pho_PutHiddenParamTypeOfAvg ();
Pho_PutHiddenParamPhotoSize (); Pho_PutHiddenParamPhotoSize ();
Usr_PutParamsPrefsAboutUsrList (); Usr_PutParamsPrefsAboutUsrList ();
@ -1944,7 +1945,7 @@ static void Pho_PutSelectorForHowOrderDegrees (void)
fprintf (Gbl.F.Out,">%s</option>",Txt_STAT_DEGREE_PHOTO_ORDER[Order]); fprintf (Gbl.F.Out,">%s</option>",Txt_STAT_DEGREE_PHOTO_ORDER[Order]);
} }
fprintf (Gbl.F.Out,"</select>"); fprintf (Gbl.F.Out,"</select>");
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</td>" fprintf (Gbl.F.Out,"</td>"
"</tr>"); "</tr>");
} }
@ -2017,12 +2018,12 @@ static void Pho_PutLinkToCalculateDegreeStats (void)
fprintf (Gbl.F.Out,"<div class=\"CONTEXT_MENU\">"); fprintf (Gbl.F.Out,"<div class=\"CONTEXT_MENU\">");
/***** Start form *****/ /***** Start form *****/
Act_StartForm (ActCalPhoDeg); Frm_StartForm (ActCalPhoDeg);
Pho_PutHiddenParamTypeOfAvg (); Pho_PutHiddenParamTypeOfAvg ();
Pho_PutHiddenParamPhotoSize (); Pho_PutHiddenParamPhotoSize ();
Pho_PutHiddenParamOrderDegrees (); Pho_PutHiddenParamOrderDegrees ();
Usr_PutParamsPrefsAboutUsrList (); Usr_PutParamsPrefsAboutUsrList ();
Act_LinkFormSubmitAnimated (Txt_Calculate_average_photo_of_a_degree, Frm_LinkFormSubmitAnimated (Txt_Calculate_average_photo_of_a_degree,
The_ClassFormBold[Gbl.Prefs.Theme], The_ClassFormBold[Gbl.Prefs.Theme],
NULL); NULL);
Ico_PutCalculateIconWithText (Txt_Calculate_average_photo_of_a_degree, Ico_PutCalculateIconWithText (Txt_Calculate_average_photo_of_a_degree,
@ -2056,7 +2057,7 @@ static void Pho_PutLinkToCalculateDegreeStats (void)
/***** End selector, form and div *****/ /***** End selector, form and div *****/
fprintf (Gbl.F.Out,"</select>"); fprintf (Gbl.F.Out,"</select>");
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</div>"); fprintf (Gbl.F.Out,"</div>");
/***** Free list of all the degrees with students *****/ /***** Free list of all the degrees with students *****/
@ -2445,7 +2446,7 @@ static void Pho_ShowDegreeAvgPhotoAndStat (struct Degree *Deg,
char PhotoURL[PATH_MAX + 1]; char PhotoURL[PATH_MAX + 1];
char PhotoCaption[1024 + Hie_MAX_BYTES_SHRT_NAME]; char PhotoCaption[1024 + Hie_MAX_BYTES_SHRT_NAME];
bool ShowDegPhoto; bool ShowDegPhoto;
char IdCaption[Act_MAX_BYTES_ID + 1]; char IdCaption[Frm_MAX_BYTES_ID + 1];
/***** Initializations *****/ /***** Initializations *****/
PhotoURL[0] = '\0'; PhotoURL[0] = '\0';
@ -2458,12 +2459,12 @@ static void Pho_ShowDegreeAvgPhotoAndStat (struct Degree *Deg,
/***** Put link to degree *****/ /***** Put link to degree *****/
if (SeeOrPrint == Pho_DEGREES_SEE) if (SeeOrPrint == Pho_DEGREES_SEE)
{ {
Act_StartFormGoTo (ActSeeDegInf); Frm_StartFormGoTo (ActSeeDegInf);
Deg_PutParamDegCod (Deg->DegCod); Deg_PutParamDegCod (Deg->DegCod);
snprintf (Gbl.Title,sizeof (Gbl.Title), snprintf (Gbl.Title,sizeof (Gbl.Title),
Txt_Go_to_X, Txt_Go_to_X,
Deg->FullName); Deg->FullName);
Act_LinkFormSubmit (Gbl.Title,NULL,NULL); Frm_LinkFormSubmit (Gbl.Title,NULL,NULL);
} }
/***** Check if photo of degree can be shown *****/ /***** Check if photo of degree can be shown *****/
@ -2499,7 +2500,7 @@ static void Pho_ShowDegreeAvgPhotoAndStat (struct Degree *Deg,
NumStdsWithPhoto,Txt_photos, NumStdsWithPhoto,Txt_photos,
NumStds > 0 ? (int) (((NumStdsWithPhoto * 100.0) / NumStds) + 0.5) : NumStds > 0 ? (int) (((NumStdsWithPhoto * 100.0) / NumStds) + 0.5) :
0); 0);
Act_SetUniqueId (IdCaption); Frm_SetUniqueId (IdCaption);
fprintf (Gbl.F.Out,"<div id=\"%s\" class=\"NOT_SHOWN\">" fprintf (Gbl.F.Out,"<div id=\"%s\" class=\"NOT_SHOWN\">"
"<div class=\"ZOOM_TXT_LINE DAT_N\">" "<div class=\"ZOOM_TXT_LINE DAT_N\">"
"%s" "%s"
@ -2542,7 +2543,7 @@ static void Pho_ShowDegreeAvgPhotoAndStat (struct Degree *Deg,
if (SeeOrPrint == Pho_DEGREES_SEE) if (SeeOrPrint == Pho_DEGREES_SEE)
{ {
fprintf (Gbl.F.Out,"</a>"); fprintf (Gbl.F.Out,"</a>");
Act_EndForm (); Frm_EndForm ();
} }
} }

View File

@ -34,6 +34,7 @@
#include "swad_box.h" #include "swad_box.h"
#include "swad_constant.h" #include "swad_constant.h"
#include "swad_database.h" #include "swad_database.h"
#include "swad_form.h"
#include "swad_global.h" #include "swad_global.h"
#include "swad_parameter.h" #include "swad_parameter.h"
#include "swad_place.h" #include "swad_place.h"
@ -130,16 +131,16 @@ void Plc_SeePlaces (void)
Order++) Order++)
{ {
fprintf (Gbl.F.Out,"<th class=\"LEFT_MIDDLE\">"); fprintf (Gbl.F.Out,"<th class=\"LEFT_MIDDLE\">");
Act_StartForm (ActSeePlc); Frm_StartForm (ActSeePlc);
Par_PutHiddenParamUnsigned ("Order",(unsigned) Order); Par_PutHiddenParamUnsigned ("Order",(unsigned) Order);
Act_LinkFormSubmit (Txt_PLACES_HELP_ORDER[Order],"TIT_TBL",NULL); Frm_LinkFormSubmit (Txt_PLACES_HELP_ORDER[Order],"TIT_TBL",NULL);
if (Order == Gbl.Plcs.SelectedOrder) if (Order == Gbl.Plcs.SelectedOrder)
fprintf (Gbl.F.Out,"<u>"); fprintf (Gbl.F.Out,"<u>");
fprintf (Gbl.F.Out,"%s",Txt_PLACES_ORDER[Order]); fprintf (Gbl.F.Out,"%s",Txt_PLACES_ORDER[Order]);
if (Order == Gbl.Plcs.SelectedOrder) if (Order == Gbl.Plcs.SelectedOrder)
fprintf (Gbl.F.Out,"</u>"); fprintf (Gbl.F.Out,"</u>");
fprintf (Gbl.F.Out,"</a>"); fprintf (Gbl.F.Out,"</a>");
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</th>"); fprintf (Gbl.F.Out,"</th>");
} }
fprintf (Gbl.F.Out,"</tr>"); fprintf (Gbl.F.Out,"</tr>");
@ -202,9 +203,9 @@ void Plc_SeePlaces (void)
/***** Button to create place *****/ /***** Button to create place *****/
if (ICanEdit) if (ICanEdit)
{ {
Act_StartForm (ActEdiPlc); Frm_StartForm (ActEdiPlc);
Btn_PutConfirmButton (Txt_New_place); Btn_PutConfirmButton (Txt_New_place);
Act_EndForm (); Frm_EndForm ();
} }
/***** End box *****/ /***** End box *****/
@ -491,10 +492,10 @@ static void Plc_ListPlacesForEdition (void)
Ico_PutIconRemovalNotAllowed (); Ico_PutIconRemovalNotAllowed ();
else else
{ {
Act_StartForm (ActRemPlc); Frm_StartForm (ActRemPlc);
Plc_PutParamPlcCod (Plc->PlcCod); Plc_PutParamPlcCod (Plc->PlcCod);
Ico_PutIconRemove (); Ico_PutIconRemove ();
Act_EndForm (); Frm_EndForm ();
} }
fprintf (Gbl.F.Out,"</td>"); fprintf (Gbl.F.Out,"</td>");
@ -506,26 +507,26 @@ static void Plc_ListPlacesForEdition (void)
/* Place short name */ /* Place short name */
fprintf (Gbl.F.Out,"<td class=\"CENTER_MIDDLE\">"); fprintf (Gbl.F.Out,"<td class=\"CENTER_MIDDLE\">");
Act_StartForm (ActRenPlcSho); Frm_StartForm (ActRenPlcSho);
Plc_PutParamPlcCod (Plc->PlcCod); Plc_PutParamPlcCod (Plc->PlcCod);
fprintf (Gbl.F.Out,"<input type=\"text\" name=\"ShortName\"" fprintf (Gbl.F.Out,"<input type=\"text\" name=\"ShortName\""
" maxlength=\"%u\" value=\"%s\"" " maxlength=\"%u\" value=\"%s\""
" class=\"INPUT_SHORT_NAME\"" " class=\"INPUT_SHORT_NAME\""
" onchange=\"document.getElementById('%s').submit();\" />", " onchange=\"document.getElementById('%s').submit();\" />",
Plc_MAX_CHARS_PLACE_SHRT_NAME,Plc->ShrtName,Gbl.Form.Id); Plc_MAX_CHARS_PLACE_SHRT_NAME,Plc->ShrtName,Gbl.Form.Id);
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</td>"); fprintf (Gbl.F.Out,"</td>");
/* Place full name */ /* Place full name */
fprintf (Gbl.F.Out,"<td class=\"CENTER_MIDDLE\">"); fprintf (Gbl.F.Out,"<td class=\"CENTER_MIDDLE\">");
Act_StartForm (ActRenPlcFul); Frm_StartForm (ActRenPlcFul);
Plc_PutParamPlcCod (Plc->PlcCod); Plc_PutParamPlcCod (Plc->PlcCod);
fprintf (Gbl.F.Out,"<input type=\"text\" name=\"FullName\"" fprintf (Gbl.F.Out,"<input type=\"text\" name=\"FullName\""
" maxlength=\"%u\" value=\"%s\"" " maxlength=\"%u\" value=\"%s\""
" class=\"INPUT_FULL_NAME\"" " class=\"INPUT_FULL_NAME\""
" onchange=\"document.getElementById('%s').submit();\" />", " onchange=\"document.getElementById('%s').submit();\" />",
Plc_MAX_CHARS_PLACE_FULL_NAME,Plc->FullName,Gbl.Form.Id); Plc_MAX_CHARS_PLACE_FULL_NAME,Plc->FullName,Gbl.Form.Id);
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</td>"); fprintf (Gbl.F.Out,"</td>");
/* Number of centres */ /* Number of centres */
@ -750,7 +751,7 @@ static void Plc_PutFormToCreatePlace (void)
Plc = &Gbl.Plcs.EditingPlc; Plc = &Gbl.Plcs.EditingPlc;
/***** Start form *****/ /***** Start form *****/
Act_StartForm (ActNewPlc); Frm_StartForm (ActNewPlc);
/***** Start box and table *****/ /***** Start box and table *****/
Box_StartBoxTable (NULL,Txt_New_place,NULL, Box_StartBoxTable (NULL,Txt_New_place,NULL,
@ -794,7 +795,7 @@ static void Plc_PutFormToCreatePlace (void)
Box_EndBoxTableWithButton (Btn_CREATE_BUTTON,Txt_Create_place); Box_EndBoxTableWithButton (Btn_CREATE_BUTTON,Txt_Create_place);
/***** End form *****/ /***** End form *****/
Act_EndForm (); Frm_EndForm ();
} }
/*****************************************************************************/ /*****************************************************************************/

View File

@ -40,6 +40,7 @@ TODO: Check if web service is called from an authorized IP.
#include "swad_constant.h" #include "swad_constant.h"
#include "swad_cryptography.h" #include "swad_cryptography.h"
#include "swad_database.h" #include "swad_database.h"
#include "swad_form.h"
#include "swad_global.h" #include "swad_global.h"
#include "swad_parameter.h" #include "swad_parameter.h"
#include "swad_plugin.h" #include "swad_plugin.h"
@ -363,10 +364,10 @@ static void Plg_ListPluginsForEdition (void)
/* Put icon to remove plugin */ /* Put icon to remove plugin */
fprintf (Gbl.F.Out,"<tr>" fprintf (Gbl.F.Out,"<tr>"
"<td class=\"BM\">"); "<td class=\"BM\">");
Act_StartForm (ActRemPlg); Frm_StartForm (ActRemPlg);
Plg_PutParamPlgCod (Plg->PlgCod); Plg_PutParamPlgCod (Plg->PlgCod);
Ico_PutIconRemove (); Ico_PutIconRemove ();
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</td>"); fprintf (Gbl.F.Out,"</td>");
/* Plugin code */ /* Plugin code */
@ -389,69 +390,69 @@ static void Plg_ListPluginsForEdition (void)
/* Plugin name */ /* Plugin name */
fprintf (Gbl.F.Out,"<td class=\"CENTER_MIDDLE\">"); fprintf (Gbl.F.Out,"<td class=\"CENTER_MIDDLE\">");
Act_StartForm (ActRenPlg); Frm_StartForm (ActRenPlg);
Plg_PutParamPlgCod (Plg->PlgCod); Plg_PutParamPlgCod (Plg->PlgCod);
fprintf (Gbl.F.Out,"<input type=\"text\" name=\"Name\"" fprintf (Gbl.F.Out,"<input type=\"text\" name=\"Name\""
" size=\"10\" maxlength=\"%u\" value=\"%s\"" " size=\"10\" maxlength=\"%u\" value=\"%s\""
" onchange=\"document.getElementById('%s').submit();\" />", " onchange=\"document.getElementById('%s').submit();\" />",
Plg_MAX_CHARS_PLUGIN_NAME,Plg->Name,Gbl.Form.Id); Plg_MAX_CHARS_PLUGIN_NAME,Plg->Name,Gbl.Form.Id);
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</td>"); fprintf (Gbl.F.Out,"</td>");
/* Plugin description */ /* Plugin description */
fprintf (Gbl.F.Out,"<td class=\"CENTER_MIDDLE\">"); fprintf (Gbl.F.Out,"<td class=\"CENTER_MIDDLE\">");
Act_StartForm (ActChgPlgDes); Frm_StartForm (ActChgPlgDes);
Plg_PutParamPlgCod (Plg->PlgCod); Plg_PutParamPlgCod (Plg->PlgCod);
fprintf (Gbl.F.Out,"<input type=\"text\" name=\"Description\"" fprintf (Gbl.F.Out,"<input type=\"text\" name=\"Description\""
" size=\"30\" maxlength=\"%u\" value=\"%s\"" " size=\"30\" maxlength=\"%u\" value=\"%s\""
" onchange=\"document.getElementById('%s').submit();\" />", " onchange=\"document.getElementById('%s').submit();\" />",
Plg_MAX_CHARS_PLUGIN_DESCRIPTION,Plg->Description,Gbl.Form.Id); Plg_MAX_CHARS_PLUGIN_DESCRIPTION,Plg->Description,Gbl.Form.Id);
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</td>"); fprintf (Gbl.F.Out,"</td>");
/* Plugin logo */ /* Plugin logo */
fprintf (Gbl.F.Out,"<td class=\"CENTER_MIDDLE\">"); fprintf (Gbl.F.Out,"<td class=\"CENTER_MIDDLE\">");
Act_StartForm (ActChgPlgLog); Frm_StartForm (ActChgPlgLog);
Plg_PutParamPlgCod (Plg->PlgCod); Plg_PutParamPlgCod (Plg->PlgCod);
fprintf (Gbl.F.Out,"<input type=\"text\" name=\"Logo\"" fprintf (Gbl.F.Out,"<input type=\"text\" name=\"Logo\""
" size=\"4\" maxlength=\"%u\" value=\"%s\"" " size=\"4\" maxlength=\"%u\" value=\"%s\""
" onchange=\"document.getElementById('%s').submit();\" />", " onchange=\"document.getElementById('%s').submit();\" />",
Plg_MAX_CHARS_PLUGIN_LOGO,Plg->Logo,Gbl.Form.Id); Plg_MAX_CHARS_PLUGIN_LOGO,Plg->Logo,Gbl.Form.Id);
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</td>"); fprintf (Gbl.F.Out,"</td>");
/* Plugin application key */ /* Plugin application key */
fprintf (Gbl.F.Out,"<td class=\"CENTER_MIDDLE\">"); fprintf (Gbl.F.Out,"<td class=\"CENTER_MIDDLE\">");
Act_StartForm (ActChgPlgAppKey); Frm_StartForm (ActChgPlgAppKey);
Plg_PutParamPlgCod (Plg->PlgCod); Plg_PutParamPlgCod (Plg->PlgCod);
fprintf (Gbl.F.Out,"<input type=\"text\" name=\"AppKey\"" fprintf (Gbl.F.Out,"<input type=\"text\" name=\"AppKey\""
" size=\"16\" maxlength=\"%u\" value=\"%s\"" " size=\"16\" maxlength=\"%u\" value=\"%s\""
" onchange=\"document.getElementById('%s').submit();\" />", " onchange=\"document.getElementById('%s').submit();\" />",
Plg_MAX_CHARS_PLUGIN_APP_KEY,Plg->AppKey,Gbl.Form.Id); Plg_MAX_CHARS_PLUGIN_APP_KEY,Plg->AppKey,Gbl.Form.Id);
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</td>"); fprintf (Gbl.F.Out,"</td>");
/* Plugin URL */ /* Plugin URL */
fprintf (Gbl.F.Out,"<td class=\"CENTER_MIDDLE\">"); fprintf (Gbl.F.Out,"<td class=\"CENTER_MIDDLE\">");
Act_StartForm (ActChgPlgURL); Frm_StartForm (ActChgPlgURL);
Plg_PutParamPlgCod (Plg->PlgCod); Plg_PutParamPlgCod (Plg->PlgCod);
fprintf (Gbl.F.Out,"<input type=\"url\" name=\"URL\"" fprintf (Gbl.F.Out,"<input type=\"url\" name=\"URL\""
" size=\"15\" maxlength=\"%u\" value=\"%s\"" " size=\"15\" maxlength=\"%u\" value=\"%s\""
" onchange=\"document.getElementById('%s').submit();\" />", " onchange=\"document.getElementById('%s').submit();\" />",
Cns_MAX_CHARS_WWW,Plg->URL,Gbl.Form.Id); Cns_MAX_CHARS_WWW,Plg->URL,Gbl.Form.Id);
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</td>"); fprintf (Gbl.F.Out,"</td>");
/* Plugin IP */ /* Plugin IP */
fprintf (Gbl.F.Out,"<td class=\"CENTER_MIDDLE\">"); fprintf (Gbl.F.Out,"<td class=\"CENTER_MIDDLE\">");
Act_StartForm (ActChgPlgIP); Frm_StartForm (ActChgPlgIP);
Plg_PutParamPlgCod (Plg->PlgCod); Plg_PutParamPlgCod (Plg->PlgCod);
fprintf (Gbl.F.Out,"<input type=\"text\" name=\"IP\"" fprintf (Gbl.F.Out,"<input type=\"text\" name=\"IP\""
" size=\"10\" maxlength=\"%u\" value=\"%s\"" " size=\"10\" maxlength=\"%u\" value=\"%s\""
" onchange=\"document.getElementById('%s').submit();\" />", " onchange=\"document.getElementById('%s').submit();\" />",
Cns_MAX_CHARS_IP,Plg->IP, Cns_MAX_CHARS_IP,Plg->IP,
Gbl.Form.Id); Gbl.Form.Id);
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</td>" fprintf (Gbl.F.Out,"</td>"
"</tr>"); "</tr>");
} }
@ -839,7 +840,7 @@ static void Plg_PutFormToCreatePlugin (void)
Plg = &Gbl.Plugins.EditingPlg; Plg = &Gbl.Plugins.EditingPlg;
/***** Start form *****/ /***** Start form *****/
Act_StartForm (ActNewPlg); Frm_StartForm (ActNewPlg);
/***** Start box and table *****/ /***** Start box and table *****/
Box_StartBoxTable (NULL,Txt_New_plugin,NULL, Box_StartBoxTable (NULL,Txt_New_plugin,NULL,
@ -926,7 +927,7 @@ static void Plg_PutFormToCreatePlugin (void)
Box_EndBoxTableWithButton (Btn_CREATE_BUTTON,Txt_Create_plugin); Box_EndBoxTableWithButton (Btn_CREATE_BUTTON,Txt_Create_plugin);
/***** End form *****/ /***** End form *****/
Act_EndForm (); Frm_EndForm ();
} }
/*****************************************************************************/ /*****************************************************************************/

View File

@ -36,6 +36,7 @@
#include "swad_config.h" #include "swad_config.h"
#include "swad_database.h" #include "swad_database.h"
#include "swad_date.h" #include "swad_date.h"
#include "swad_form.h"
#include "swad_global.h" #include "swad_global.h"
#include "swad_language.h" #include "swad_language.h"
#include "swad_layout.h" #include "swad_layout.h"
@ -243,7 +244,7 @@ static void Pre_PutIconsToSelectSideCols (void)
fprintf (Gbl.F.Out,"<div class=\"%s\">", fprintf (Gbl.F.Out,"<div class=\"%s\">",
SideCols == Gbl.Prefs.SideCols ? "PREF_ON" : SideCols == Gbl.Prefs.SideCols ? "PREF_ON" :
"PREF_OFF"); "PREF_OFF");
Act_StartForm (ActChgCol); Frm_StartForm (ActChgCol);
Par_PutHiddenParamUnsigned ("SideCols",SideCols); Par_PutHiddenParamUnsigned ("SideCols",SideCols);
fprintf (Gbl.F.Out,"<input type=\"image\" src=\"%s/layout%u%u_32x20.gif\"" fprintf (Gbl.F.Out,"<input type=\"image\" src=\"%s/layout%u%u_32x20.gif\""
" alt=\"%s\" title=\"%s\" class=\"ICO40x25\" />", " alt=\"%s\" title=\"%s\" class=\"ICO40x25\" />",
@ -251,7 +252,7 @@ static void Pre_PutIconsToSelectSideCols (void)
SideCols >> 1,SideCols & 1, SideCols >> 1,SideCols & 1,
Txt_LAYOUT_SIDE_COLUMNS[SideCols], Txt_LAYOUT_SIDE_COLUMNS[SideCols],
Txt_LAYOUT_SIDE_COLUMNS[SideCols]); Txt_LAYOUT_SIDE_COLUMNS[SideCols]);
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</div>"); fprintf (Gbl.F.Out,"</div>");
} }
fprintf (Gbl.F.Out,"</div>"); fprintf (Gbl.F.Out,"</div>");

View File

@ -29,6 +29,7 @@
#include "swad_action.h" #include "swad_action.h"
#include "swad_box.h" #include "swad_box.h"
#include "swad_form.h"
#include "swad_global.h" #include "swad_global.h"
#include "swad_parameter.h" #include "swad_parameter.h"
#include "swad_privacy.h" #include "swad_privacy.h"
@ -161,7 +162,7 @@ static void Pri_PutFormVisibility (const char *TxtLabel,
/***** Form with list of options *****/ /***** Form with list of options *****/
if (Action != ActUnk) if (Action != ActUnk)
Act_StartFormAnchor (Action,Pri_PRIVACY_ID); Frm_StartFormAnchor (Action,Pri_PRIVACY_ID);
fprintf (Gbl.F.Out,"<ul class=\"LIST_LEFT\">"); fprintf (Gbl.F.Out,"<ul class=\"LIST_LEFT\">");
for (Visibility = Pri_VISIBILITY_USER; for (Visibility = Pri_VISIBILITY_USER;
Visibility <= Pri_VISIBILITY_WORLD; Visibility <= Pri_VISIBILITY_WORLD;
@ -191,7 +192,7 @@ static void Pri_PutFormVisibility (const char *TxtLabel,
/***** End list and form *****/ /***** End list and form *****/
fprintf (Gbl.F.Out,"</ul>"); fprintf (Gbl.F.Out,"</ul>");
if (Action != ActUnk) if (Action != ActUnk)
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</td>" fprintf (Gbl.F.Out,"</td>"
"</tr>"); "</tr>");
} }

View File

@ -34,6 +34,7 @@
#include "swad_config.h" #include "swad_config.h"
#include "swad_database.h" #include "swad_database.h"
#include "swad_follow.h" #include "swad_follow.h"
#include "swad_form.h"
#include "swad_global.h" #include "swad_global.h"
#include "swad_network.h" #include "swad_network.h"
#include "swad_nickname.h" #include "swad_nickname.h"
@ -177,7 +178,7 @@ void Prf_RequestUserProfile (void)
} }
/***** Start form *****/ /***** Start form *****/
Act_StartForm (ActSeeOthPubPrf); Frm_StartForm (ActSeeOthPubPrf);
/***** Start box *****/ /***** Start box *****/
Box_StartBox (NULL,Txt_Another_user_s_profile,NULL, Box_StartBox (NULL,Txt_Another_user_s_profile,NULL,
@ -200,7 +201,7 @@ void Prf_RequestUserProfile (void)
Box_EndBoxWithButton (Btn_CONFIRM_BUTTON,Txt_Continue); Box_EndBoxWithButton (Btn_CONFIRM_BUTTON,Txt_Continue);
/***** End form *****/ /***** End form *****/
Act_EndForm (); Frm_EndForm ();
} }
/*****************************************************************************/ /*****************************************************************************/
@ -383,7 +384,7 @@ void Prf_ShowDetailsUserProfile (const struct UsrData *UsrDat)
unsigned NumCrssUsrIsStudent; unsigned NumCrssUsrIsStudent;
unsigned NumFiles; unsigned NumFiles;
unsigned NumPublicFiles; unsigned NumPublicFiles;
char IdFirstClickTime[Act_MAX_BYTES_ID + 1]; char IdFirstClickTime[Frm_MAX_BYTES_ID + 1];
/***** Start left list *****/ /***** Start left list *****/
fprintf (Gbl.F.Out,"<div class=\"PRF_FIG_LEFT_CONTAINER\">" fprintf (Gbl.F.Out,"<div class=\"PRF_FIG_LEFT_CONTAINER\">"
@ -450,7 +451,7 @@ void Prf_ShowDetailsUserProfile (const struct UsrData *UsrDat)
if (UsrFigures.FirstClickTimeUTC) if (UsrFigures.FirstClickTimeUTC)
{ {
/* Create unique id for new comment */ /* Create unique id for new comment */
Act_SetUniqueId (IdFirstClickTime); Frm_SetUniqueId (IdFirstClickTime);
fprintf (Gbl.F.Out,"<span id=\"%s\"></span>",IdFirstClickTime); fprintf (Gbl.F.Out,"<span id=\"%s\"></span>",IdFirstClickTime);
if (UsrFigures.NumDays > 0) if (UsrFigures.NumDays > 0)
@ -607,12 +608,12 @@ static void Prf_PutLinkToUpdateAction (Act_Action_t Action,const char *Encrypted
extern const char *The_ClassForm[The_NUM_THEMES]; extern const char *The_ClassForm[The_NUM_THEMES];
extern const char *Txt_Calculate; extern const char *Txt_Calculate;
Act_StartForm (Action); Frm_StartForm (Action);
Usr_PutParamUsrCodEncrypted (EncryptedUsrCod); Usr_PutParamUsrCodEncrypted (EncryptedUsrCod);
Act_LinkFormSubmitAnimated (Txt_Calculate,The_ClassForm[Gbl.Prefs.Theme], Frm_LinkFormSubmitAnimated (Txt_Calculate,The_ClassForm[Gbl.Prefs.Theme],
NULL); NULL);
Ico_PutCalculateIconWithText (Txt_Calculate,Txt_Calculate); Ico_PutCalculateIconWithText (Txt_Calculate,Txt_Calculate);
Act_EndForm (); Frm_EndForm ();
} }
/*****************************************************************************/ /*****************************************************************************/
@ -757,12 +758,12 @@ static void Prf_ShowRanking (unsigned long Rank,unsigned long NumUsrs)
Rank,Txt_of_PART_OF_A_TOTAL,NumUsrs); Rank,Txt_of_PART_OF_A_TOTAL,NumUsrs);
/***** Rank in form to go to ranking *****/ /***** Rank in form to go to ranking *****/
Act_StartForm (ActSeeUseGbl); Frm_StartForm (ActSeeUseGbl);
Sco_PutParamScope ("ScopeSta",Sco_SCOPE_SYS); Sco_PutParamScope ("ScopeSta",Sco_SCOPE_SYS);
Par_PutHiddenParamUnsigned ("FigureType",(unsigned) Sta_USERS_RANKING); Par_PutHiddenParamUnsigned ("FigureType",(unsigned) Sta_USERS_RANKING);
Act_LinkFormSubmit (Gbl.Title,The_ClassForm[Gbl.Prefs.Theme],NULL); Frm_LinkFormSubmit (Gbl.Title,The_ClassForm[Gbl.Prefs.Theme],NULL);
fprintf (Gbl.F.Out,"#%lu</a>",Rank); fprintf (Gbl.F.Out,"#%lu</a>",Rank);
Act_EndForm (); Frm_EndForm ();
} }
/*****************************************************************************/ /*****************************************************************************/
@ -1524,14 +1525,14 @@ void Prf_ShowUsrInRanking (struct UsrData *UsrDat,unsigned Rank)
/***** Put form to go to public profile *****/ /***** Put form to go to public profile *****/
if (Visible) if (Visible)
{ {
Act_StartForm (ActSeeOthPubPrf); Frm_StartForm (ActSeeOthPubPrf);
Usr_PutParamUsrCodEncrypted (UsrDat->EncryptedUsrCod); Usr_PutParamUsrCodEncrypted (UsrDat->EncryptedUsrCod);
fprintf (Gbl.F.Out,"<div class=\"RANK_USR\">"); // Limited width fprintf (Gbl.F.Out,"<div class=\"RANK_USR\">"); // Limited width
Act_LinkFormSubmit (Txt_Another_user_s_profile,"DAT_SMALL",NULL); Frm_LinkFormSubmit (Txt_Another_user_s_profile,"DAT_SMALL",NULL);
Usr_WriteFirstNameBRSurnames (UsrDat); Usr_WriteFirstNameBRSurnames (UsrDat);
fprintf (Gbl.F.Out,"</a>" fprintf (Gbl.F.Out,"</a>"
"</div>"); "</div>");
Act_EndForm (); Frm_EndForm ();
} }
fprintf (Gbl.F.Out,"</td>"); fprintf (Gbl.F.Out,"</td>");

View File

@ -34,6 +34,7 @@
#include "swad_box.h" #include "swad_box.h"
#include "swad_database.h" #include "swad_database.h"
#include "swad_form.h"
#include "swad_global.h" #include "swad_global.h"
#include "swad_ID.h" #include "swad_ID.h"
#include "swad_notification.h" #include "swad_notification.h"
@ -370,7 +371,7 @@ static void Prj_ShowFormToFilterByMy_All (void)
fprintf (Gbl.F.Out,"<div class=\"%s\">", fprintf (Gbl.F.Out,"<div class=\"%s\">",
(Gbl.Prjs.Filter.My_All == My_All) ? "PREF_ON" : (Gbl.Prjs.Filter.My_All == My_All) ? "PREF_ON" :
"PREF_OFF"); "PREF_OFF");
Act_StartForm (ActSeePrj); Frm_StartForm (ActSeePrj);
Filter.My_All = My_All; Filter.My_All = My_All;
Filter.PreNon = Gbl.Prjs.Filter.PreNon; Filter.PreNon = Gbl.Prjs.Filter.PreNon;
Filter.HidVis = Gbl.Prjs.Filter.HidVis; Filter.HidVis = Gbl.Prjs.Filter.HidVis;
@ -385,7 +386,7 @@ static void Prj_ShowFormToFilterByMy_All (void)
Gbl.Prefs.IconsURL,WhoseProjectsImage[My_All], Gbl.Prefs.IconsURL,WhoseProjectsImage[My_All],
Txt_PROJECT_MY_ALL_PROJECTS[My_All], Txt_PROJECT_MY_ALL_PROJECTS[My_All],
Txt_PROJECT_MY_ALL_PROJECTS[My_All]); Txt_PROJECT_MY_ALL_PROJECTS[My_All]);
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</div>"); fprintf (Gbl.F.Out,"</div>");
} }
fprintf (Gbl.F.Out,"</div>"); fprintf (Gbl.F.Out,"</div>");
@ -409,7 +410,7 @@ static void Prj_ShowFormToFilterByPreassignedNonPreassig (void)
fprintf (Gbl.F.Out,"<div class=\"%s\">", fprintf (Gbl.F.Out,"<div class=\"%s\">",
(Gbl.Prjs.Filter.PreNon & (1 << PreNon)) ? "PREF_ON" : (Gbl.Prjs.Filter.PreNon & (1 << PreNon)) ? "PREF_ON" :
"PREF_OFF"); "PREF_OFF");
Act_StartForm (ActSeePrj); Frm_StartForm (ActSeePrj);
Filter.My_All = Gbl.Prjs.Filter.My_All; Filter.My_All = Gbl.Prjs.Filter.My_All;
Filter.PreNon = Gbl.Prjs.Filter.PreNon ^ (1 << PreNon); // Toggle Filter.PreNon = Gbl.Prjs.Filter.PreNon ^ (1 << PreNon); // Toggle
Filter.HidVis = Gbl.Prjs.Filter.HidVis; Filter.HidVis = Gbl.Prjs.Filter.HidVis;
@ -424,7 +425,7 @@ static void Prj_ShowFormToFilterByPreassignedNonPreassig (void)
Gbl.Prefs.IconsURL,PreassignedNonpreassigImage[PreNon], Gbl.Prefs.IconsURL,PreassignedNonpreassigImage[PreNon],
Txt_PROJECT_PREASSIGNED_NONPREASSIGNED_PLURAL[PreNon], Txt_PROJECT_PREASSIGNED_NONPREASSIGNED_PLURAL[PreNon],
Txt_PROJECT_PREASSIGNED_NONPREASSIGNED_PLURAL[PreNon]); Txt_PROJECT_PREASSIGNED_NONPREASSIGNED_PLURAL[PreNon]);
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</div>"); fprintf (Gbl.F.Out,"</div>");
} }
fprintf (Gbl.F.Out,"</div>"); fprintf (Gbl.F.Out,"</div>");
@ -453,7 +454,7 @@ static void Prj_ShowFormToFilterByHidden (void)
fprintf (Gbl.F.Out,"<div class=\"%s\">", fprintf (Gbl.F.Out,"<div class=\"%s\">",
(Gbl.Prjs.Filter.HidVis & (1 << HidVis)) ? "PREF_ON" : (Gbl.Prjs.Filter.HidVis & (1 << HidVis)) ? "PREF_ON" :
"PREF_OFF"); "PREF_OFF");
Act_StartForm (ActSeePrj); Frm_StartForm (ActSeePrj);
Filter.My_All = Gbl.Prjs.Filter.My_All; Filter.My_All = Gbl.Prjs.Filter.My_All;
Filter.PreNon = Gbl.Prjs.Filter.PreNon; Filter.PreNon = Gbl.Prjs.Filter.PreNon;
Filter.HidVis = Gbl.Prjs.Filter.HidVis ^ (1 << HidVis); // Toggle Filter.HidVis = Gbl.Prjs.Filter.HidVis ^ (1 << HidVis); // Toggle
@ -469,7 +470,7 @@ static void Prj_ShowFormToFilterByHidden (void)
HiddenVisiblImage[HidVis], HiddenVisiblImage[HidVis],
Txt_PROJECT_HIDDEN_VISIBL_PROJECTS[HidVis], Txt_PROJECT_HIDDEN_VISIBL_PROJECTS[HidVis],
Txt_PROJECT_HIDDEN_VISIBL_PROJECTS[HidVis]); Txt_PROJECT_HIDDEN_VISIBL_PROJECTS[HidVis]);
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</div>"); fprintf (Gbl.F.Out,"</div>");
} }
fprintf (Gbl.F.Out,"</div>"); fprintf (Gbl.F.Out,"</div>");
@ -486,7 +487,7 @@ static void Prj_ShowFormToFilterByDpt (void)
/***** Start form *****/ /***** Start form *****/
fprintf (Gbl.F.Out,"<div>"); fprintf (Gbl.F.Out,"<div>");
Act_StartForm (ActSeePrj); Frm_StartForm (ActSeePrj);
Filter.My_All = Gbl.Prjs.Filter.My_All; Filter.My_All = Gbl.Prjs.Filter.My_All;
Filter.PreNon = Gbl.Prjs.Filter.PreNon; Filter.PreNon = Gbl.Prjs.Filter.PreNon;
Filter.HidVis = Gbl.Prjs.Filter.HidVis; Filter.HidVis = Gbl.Prjs.Filter.HidVis;
@ -505,7 +506,7 @@ static void Prj_ShowFormToFilterByDpt (void)
true); // Submit on change true); // Submit on change
/***** End form *****/ /***** End form *****/
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</div>"); fprintf (Gbl.F.Out,"</div>");
} }
@ -698,19 +699,19 @@ static void Prj_ShowProjectsHead (Prj_ProjectView_t ProjectView)
{ {
case Prj_LIST_PROJECTS: case Prj_LIST_PROJECTS:
case Prj_FILE_BROWSER_PROJECT: case Prj_FILE_BROWSER_PROJECT:
Act_StartForm (ActSeePrj); Frm_StartForm (ActSeePrj);
Prj_PutParams (&Gbl.Prjs.Filter, Prj_PutParams (&Gbl.Prjs.Filter,
Order, Order,
Gbl.Prjs.CurrentPage, Gbl.Prjs.CurrentPage,
-1L); -1L);
Act_LinkFormSubmit (Txt_PROJECT_ORDER_HELP[Order],"TIT_TBL",NULL); Frm_LinkFormSubmit (Txt_PROJECT_ORDER_HELP[Order],"TIT_TBL",NULL);
if (Order == Gbl.Prjs.SelectedOrder) if (Order == Gbl.Prjs.SelectedOrder)
fprintf (Gbl.F.Out,"<u>"); fprintf (Gbl.F.Out,"<u>");
fprintf (Gbl.F.Out,"%s",Txt_PROJECT_ORDER[Order]); fprintf (Gbl.F.Out,"%s",Txt_PROJECT_ORDER[Order]);
if (Order == Gbl.Prjs.SelectedOrder) if (Order == Gbl.Prjs.SelectedOrder)
fprintf (Gbl.F.Out,"</u>"); fprintf (Gbl.F.Out,"</u>");
fprintf (Gbl.F.Out,"</a>"); fprintf (Gbl.F.Out,"</a>");
Act_EndForm (); Frm_EndForm ();
break; break;
default: default:
fprintf (Gbl.F.Out,"%s",Txt_PROJECT_ORDER[Order]); fprintf (Gbl.F.Out,"%s",Txt_PROJECT_ORDER[Order]);
@ -834,10 +835,10 @@ static void Prj_PutButtonToCreateNewPrj (void)
extern const char *Txt_New_project; extern const char *Txt_New_project;
Gbl.Prjs.PrjCod = -1L; Gbl.Prjs.PrjCod = -1L;
Act_StartForm (ActFrmNewPrj); Frm_StartForm (ActFrmNewPrj);
Prj_PutCurrentParams (); Prj_PutCurrentParams ();
Btn_PutConfirmButton (Txt_New_project); Btn_PutConfirmButton (Txt_New_project);
Act_EndForm (); Frm_EndForm ();
} }
/*****************************************************************************/ /*****************************************************************************/
@ -1012,14 +1013,14 @@ static void Prj_ShowOneProject (unsigned NumIndex,struct Project *Prj,
fprintf (Gbl.F.Out,"\">"); fprintf (Gbl.F.Out,"\">");
if (ICanViewProjectFiles) if (ICanViewProjectFiles)
{ {
Act_StartForm (ActAdmDocPrj); Frm_StartForm (ActAdmDocPrj);
Prj_PutCurrentParams (); Prj_PutCurrentParams ();
Act_LinkFormSubmit (Txt_Project_files, Frm_LinkFormSubmit (Txt_Project_files,
Prj->Hidden == Prj_HIDDEN ? "ASG_TITLE_LIGHT" : Prj->Hidden == Prj_HIDDEN ? "ASG_TITLE_LIGHT" :
"ASG_TITLE", "ASG_TITLE",
NULL); NULL);
fprintf (Gbl.F.Out,"%s</a>",Prj->Title); fprintf (Gbl.F.Out,"%s</a>",Prj->Title);
Act_EndForm (); Frm_EndForm ();
} }
else else
fprintf (Gbl.F.Out,"<div class=\"%s\">%s</div>", fprintf (Gbl.F.Out,"<div class=\"%s\">%s</div>",
@ -2067,12 +2068,12 @@ static void Prj_ReqRemUsrFromPrj (Prj_RoleInProject_t RoleInProject)
Rec_ShowSharedRecordUnmodifiable (&Gbl.Usrs.Other.UsrDat); Rec_ShowSharedRecordUnmodifiable (&Gbl.Usrs.Other.UsrDat);
/* Show form to request confirmation */ /* Show form to request confirmation */
Act_StartForm (ActionRemUsr[RoleInProject]); Frm_StartForm (ActionRemUsr[RoleInProject]);
Gbl.Prjs.PrjCod = Prj.PrjCod; Gbl.Prjs.PrjCod = Prj.PrjCod;
Prj_PutCurrentParams (); Prj_PutCurrentParams ();
Btn_PutRemoveButton (ItsMe ? Txt_Remove_me_from_this_project : Btn_PutRemoveButton (ItsMe ? Txt_Remove_me_from_this_project :
Txt_Remove_user_from_this_project); Txt_Remove_user_from_this_project);
Act_EndForm (); Frm_EndForm ();
/* End alert */ /* End alert */
Ale_ShowAlertAndButton2 (ActUnk,NULL,NULL,NULL,Btn_NO_BUTTON,NULL); Ale_ShowAlertAndButton2 (ActUnk,NULL,NULL,NULL,Btn_NO_BUTTON,NULL);
@ -2986,7 +2987,7 @@ static void Prj_PutFormProject (struct Project *Prj,bool ItsANewProject)
/***** 2. Project data *****/ /***** 2. Project data *****/
/* Start data form */ /* Start data form */
Act_StartForm (ItsANewProject ? ActNewPrj : Frm_StartForm (ItsANewProject ? ActNewPrj :
ActChgPrj); ActChgPrj);
Prj_PutCurrentParams (); Prj_PutCurrentParams ();
@ -3119,7 +3120,7 @@ static void Prj_PutFormProject (struct Project *Prj,bool ItsANewProject)
Box_EndBoxTableWithButton (Btn_CONFIRM_BUTTON,Txt_Save); Box_EndBoxTableWithButton (Btn_CONFIRM_BUTTON,Txt_Save);
/* End data form */ /* End data form */
Act_EndForm (); Frm_EndForm ();
/***** End project box *****/ /***** End project box *****/
Box_EndBox (); Box_EndBox ();

View File

@ -39,6 +39,7 @@
#include "swad_database.h" #include "swad_database.h"
#include "swad_enrolment.h" #include "swad_enrolment.h"
#include "swad_follow.h" #include "swad_follow.h"
#include "swad_form.h"
#include "swad_global.h" #include "swad_global.h"
#include "swad_ID.h" #include "swad_ID.h"
#include "swad_logo.h" #include "swad_logo.h"
@ -302,15 +303,15 @@ void Rec_ListFieldsRecordsForEdition (void)
/* Write icon to remove the field */ /* Write icon to remove the field */
fprintf (Gbl.F.Out,"<td class=\"BM\">"); fprintf (Gbl.F.Out,"<td class=\"BM\">");
Act_StartForm (ActReqRemFie); Frm_StartForm (ActReqRemFie);
Par_PutHiddenParamLong ("FieldCod",Gbl.CurrentCrs.Records.LstFields.Lst[NumField].FieldCod); Par_PutHiddenParamLong ("FieldCod",Gbl.CurrentCrs.Records.LstFields.Lst[NumField].FieldCod);
Ico_PutIconRemove (); Ico_PutIconRemove ();
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</td>"); fprintf (Gbl.F.Out,"</td>");
/* Name of the field */ /* Name of the field */
fprintf (Gbl.F.Out,"<td class=\"LEFT_MIDDLE\">"); fprintf (Gbl.F.Out,"<td class=\"LEFT_MIDDLE\">");
Act_StartForm (ActRenFie); Frm_StartForm (ActRenFie);
Par_PutHiddenParamLong ("FieldCod",Gbl.CurrentCrs.Records.LstFields.Lst[NumField].FieldCod); Par_PutHiddenParamLong ("FieldCod",Gbl.CurrentCrs.Records.LstFields.Lst[NumField].FieldCod);
fprintf (Gbl.F.Out,"<input type=\"text\" name=\"FieldName\"" fprintf (Gbl.F.Out,"<input type=\"text\" name=\"FieldName\""
" style=\"width:500px;\" maxlength=\"%u\" value=\"%s\"" " style=\"width:500px;\" maxlength=\"%u\" value=\"%s\""
@ -318,24 +319,24 @@ void Rec_ListFieldsRecordsForEdition (void)
Rec_MAX_CHARS_NAME_FIELD, Rec_MAX_CHARS_NAME_FIELD,
Gbl.CurrentCrs.Records.LstFields.Lst[NumField].Name, Gbl.CurrentCrs.Records.LstFields.Lst[NumField].Name,
Gbl.Form.Id); Gbl.Form.Id);
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</td>"); fprintf (Gbl.F.Out,"</td>");
/* Number of lines in the form */ /* Number of lines in the form */
fprintf (Gbl.F.Out,"<td class=\"CENTER_MIDDLE\">"); fprintf (Gbl.F.Out,"<td class=\"CENTER_MIDDLE\">");
Act_StartForm (ActChgRowFie); Frm_StartForm (ActChgRowFie);
Par_PutHiddenParamLong ("FieldCod",Gbl.CurrentCrs.Records.LstFields.Lst[NumField].FieldCod); Par_PutHiddenParamLong ("FieldCod",Gbl.CurrentCrs.Records.LstFields.Lst[NumField].FieldCod);
fprintf (Gbl.F.Out,"<input type=\"text\" name=\"NumLines\"" fprintf (Gbl.F.Out,"<input type=\"text\" name=\"NumLines\""
" size=\"2\" maxlength=\"2\" value=\"%u\"" " size=\"2\" maxlength=\"2\" value=\"%u\""
" onchange=\"document.getElementById('%s').submit();\" />", " onchange=\"document.getElementById('%s').submit();\" />",
Gbl.CurrentCrs.Records.LstFields.Lst[NumField].NumLines, Gbl.CurrentCrs.Records.LstFields.Lst[NumField].NumLines,
Gbl.Form.Id); Gbl.Form.Id);
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</td>"); fprintf (Gbl.F.Out,"</td>");
/* Visibility of a field */ /* Visibility of a field */
fprintf (Gbl.F.Out,"<td class=\"CENTER_MIDDLE\">"); fprintf (Gbl.F.Out,"<td class=\"CENTER_MIDDLE\">");
Act_StartForm (ActChgVisFie); Frm_StartForm (ActChgVisFie);
Par_PutHiddenParamLong ("FieldCod",Gbl.CurrentCrs.Records.LstFields.Lst[NumField].FieldCod); Par_PutHiddenParamLong ("FieldCod",Gbl.CurrentCrs.Records.LstFields.Lst[NumField].FieldCod);
fprintf (Gbl.F.Out,"<select name=\"Visibility\"" fprintf (Gbl.F.Out,"<select name=\"Visibility\""
" onchange=\"document.getElementById('%s').submit();\">", " onchange=\"document.getElementById('%s').submit();\">",
@ -351,7 +352,7 @@ void Rec_ListFieldsRecordsForEdition (void)
Txt_RECORD_FIELD_VISIBILITY_MENU[Vis]); Txt_RECORD_FIELD_VISIBILITY_MENU[Vis]);
} }
fprintf (Gbl.F.Out,"</select>"); fprintf (Gbl.F.Out,"</select>");
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</td>" fprintf (Gbl.F.Out,"</td>"
"</tr>"); "</tr>");
} }
@ -370,7 +371,7 @@ void Rec_ShowFormCreateRecordField (void)
Rec_VisibilityRecordFields_t Vis; Rec_VisibilityRecordFields_t Vis;
/***** Start form *****/ /***** Start form *****/
Act_StartForm (ActNewFie); Frm_StartForm (ActNewFie);
/***** Start box and table *****/ /***** Start box and table *****/
Box_StartBoxTable (NULL,Txt_New_record_field,NULL, Box_StartBoxTable (NULL,Txt_New_record_field,NULL,
@ -423,7 +424,7 @@ void Rec_ShowFormCreateRecordField (void)
Box_EndBoxTableWithButton (Btn_CREATE_BUTTON,Txt_Create_record_field); Box_EndBoxTableWithButton (Btn_CREATE_BUTTON,Txt_Create_record_field);
/***** End form *****/ /***** End form *****/
Act_EndForm (); Frm_EndForm ();
} }
/*****************************************************************************/ /*****************************************************************************/
@ -1046,10 +1047,10 @@ static void Rec_ListRecordsGsts (Rec_SharedRecordViewType_t TypeOfView)
fprintf (Gbl.F.Out,"<div class=\"CONTEXT_MENU\">"); fprintf (Gbl.F.Out,"<div class=\"CONTEXT_MENU\">");
/* Link to print view */ /* Link to print view */
Act_StartForm (ActPrnRecSevGst); Frm_StartForm (ActPrnRecSevGst);
Usr_PutHiddenParUsrCodAll (ActPrnRecSevGst,Gbl.Usrs.Select[Rol_UNK]); Usr_PutHiddenParUsrCodAll (ActPrnRecSevGst,Gbl.Usrs.Select[Rol_UNK]);
Rec_ShowLinkToPrintPreviewOfRecords (); Rec_ShowLinkToPrintPreviewOfRecords ();
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</div>"); fprintf (Gbl.F.Out,"</div>");
} }
@ -1142,10 +1143,10 @@ static void Rec_ShowRecordOneStdCrs (void)
Rec_PutLinkToEditRecordFields (); Rec_PutLinkToEditRecordFields ();
/* Link to print view */ /* Link to print view */
Act_StartForm (ActPrnRecSevStd); Frm_StartForm (ActPrnRecSevStd);
Usr_PutHiddenParUsrCodAll (ActPrnRecSevStd,Gbl.Usrs.Other.UsrDat.EncryptedUsrCod); Usr_PutHiddenParUsrCodAll (ActPrnRecSevStd,Gbl.Usrs.Other.UsrDat.EncryptedUsrCod);
Rec_ShowLinkToPrintPreviewOfRecords (); Rec_ShowLinkToPrintPreviewOfRecords ();
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</div>"); fprintf (Gbl.F.Out,"</div>");
@ -1251,10 +1252,10 @@ static void Rec_ListRecordsStds (Rec_SharedRecordViewType_t ShaTypeOfView,
Rec_PutLinkToEditRecordFields (); Rec_PutLinkToEditRecordFields ();
/* Link to print view */ /* Link to print view */
Act_StartForm (ActPrnRecSevStd); Frm_StartForm (ActPrnRecSevStd);
Usr_PutHiddenParUsrCodAll (ActPrnRecSevStd,Gbl.Usrs.Select[Rol_UNK]); Usr_PutHiddenParUsrCodAll (ActPrnRecSevStd,Gbl.Usrs.Select[Rol_UNK]);
Rec_ShowLinkToPrintPreviewOfRecords (); Rec_ShowLinkToPrintPreviewOfRecords ();
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</div>"); fprintf (Gbl.F.Out,"</div>");
} }
@ -1377,12 +1378,12 @@ static void Rec_ShowRecordOneTchCrs (void)
Rec_WriteFormShowOfficeHoursOneTch (ShowOfficeHours); Rec_WriteFormShowOfficeHoursOneTch (ShowOfficeHours);
/* Link to print view */ /* Link to print view */
Act_StartForm (ActPrnRecSevTch); Frm_StartForm (ActPrnRecSevTch);
Usr_PutHiddenParUsrCodAll (ActPrnRecSevTch,Gbl.Usrs.Other.UsrDat.EncryptedUsrCod); Usr_PutHiddenParUsrCodAll (ActPrnRecSevTch,Gbl.Usrs.Other.UsrDat.EncryptedUsrCod);
Par_PutHiddenParamChar ("ParamOfficeHours",'Y'); Par_PutHiddenParamChar ("ParamOfficeHours",'Y');
Par_PutHiddenParamChar ("ShowOfficeHours",'Y'); Par_PutHiddenParamChar ("ShowOfficeHours",'Y');
Rec_ShowLinkToPrintPreviewOfRecords (); Rec_ShowLinkToPrintPreviewOfRecords ();
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</div>"); fprintf (Gbl.F.Out,"</div>");
@ -1472,14 +1473,14 @@ static void Rec_ListRecordsTchs (Rec_SharedRecordViewType_t TypeOfView)
Rec_WriteFormShowOfficeHoursSeveralTchs (ShowOfficeHours); Rec_WriteFormShowOfficeHoursSeveralTchs (ShowOfficeHours);
/* Link to print view */ /* Link to print view */
Act_StartForm (ActPrnRecSevTch); Frm_StartForm (ActPrnRecSevTch);
Usr_PutHiddenParUsrCodAll (ActPrnRecSevTch,Gbl.Usrs.Select[Rol_UNK]); Usr_PutHiddenParUsrCodAll (ActPrnRecSevTch,Gbl.Usrs.Select[Rol_UNK]);
Par_PutHiddenParamChar ("ParamOfficeHours",'Y'); Par_PutHiddenParamChar ("ParamOfficeHours",'Y');
Par_PutHiddenParamChar ("ShowOfficeHours", Par_PutHiddenParamChar ("ShowOfficeHours",
ShowOfficeHours ? 'Y' : ShowOfficeHours ? 'Y' :
'N'); 'N');
Rec_ShowLinkToPrintPreviewOfRecords (); Rec_ShowLinkToPrintPreviewOfRecords ();
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</div>"); fprintf (Gbl.F.Out,"</div>");
} }
@ -1560,7 +1561,7 @@ static void Rec_ShowLinkToPrintPreviewOfRecords (void)
extern const char *Txt_record_cards_per_page; extern const char *Txt_record_cards_per_page;
unsigned i; unsigned i;
Act_LinkFormSubmit (Txt_Print,The_ClassFormBold[Gbl.Prefs.Theme],NULL); Frm_LinkFormSubmit (Txt_Print,The_ClassFormBold[Gbl.Prefs.Theme],NULL);
Ico_PutIconWithText ("print64x64.png",Txt_Print,Txt_Print); Ico_PutIconWithText ("print64x64.png",Txt_Print,Txt_Print);
fprintf (Gbl.F.Out,"</a>" fprintf (Gbl.F.Out,"</a>"
"<label class=\"%s\">" "<label class=\"%s\">"
@ -1786,7 +1787,7 @@ static void Rec_ShowCrsRecord (Rec_CourseRecordViewType_t TypeOfView,
if (Gbl.CurrentCrs.Records.LstFields.Lst[NumField].Visibility == Rec_EDITABLE_FIELD) if (Gbl.CurrentCrs.Records.LstFields.Lst[NumField].Visibility == Rec_EDITABLE_FIELD)
{ {
ICanEdit = true; ICanEdit = true;
Act_StartForm (ActRcvRecCrs); Frm_StartForm (ActRcvRecCrs);
break; break;
} }
} }
@ -1801,7 +1802,7 @@ static void Rec_ShowCrsRecord (Rec_CourseRecordViewType_t TypeOfView,
TypeOfView == Rec_CRS_LIST_SEVERAL_RECORDS) TypeOfView == Rec_CRS_LIST_SEVERAL_RECORDS)
{ {
ICanEdit = true; ICanEdit = true;
Act_StartFormAnchor (ActRcvRecOthUsr,Anchor); Frm_StartFormAnchor (ActRcvRecOthUsr,Anchor);
Par_PutHiddenParamLong ("OriginalActCod", Par_PutHiddenParamLong ("OriginalActCod",
Act_GetActCod (ActSeeRecSevStd)); // Original action, used to know where we came from Act_GetActCod (ActSeeRecSevStd)); // Original action, used to know where we came from
Usr_PutParamUsrCodEncrypted (UsrDat->EncryptedUsrCod); Usr_PutParamUsrCodEncrypted (UsrDat->EncryptedUsrCod);
@ -1933,7 +1934,7 @@ static void Rec_ShowCrsRecord (Rec_CourseRecordViewType_t TypeOfView,
Box_EndBoxTableWithButton (Btn_CONFIRM_BUTTON,Txt_Save); Box_EndBoxTableWithButton (Btn_CONFIRM_BUTTON,Txt_Save);
/* End form */ /* End form */
Act_EndForm (); Frm_EndForm ();
} }
else else
/* End table and box */ /* End table and box */
@ -2369,10 +2370,10 @@ void Rec_ShowSharedUsrRecord (Rec_SharedRecordViewType_t TypeOfView,
switch (TypeOfView) switch (TypeOfView)
{ {
case Rec_SHA_SIGN_UP_IN_CRS_FORM: case Rec_SHA_SIGN_UP_IN_CRS_FORM:
Act_StartForm (ActSignUp); Frm_StartForm (ActSignUp);
break; break;
case Rec_SHA_MY_RECORD_FORM: case Rec_SHA_MY_RECORD_FORM:
Act_StartForm (ActChgMyData); Frm_StartForm (ActChgMyData);
break; break;
case Rec_SHA_OTHER_EXISTING_USR_FORM: case Rec_SHA_OTHER_EXISTING_USR_FORM:
switch (Gbl.Action.Act) switch (Gbl.Action.Act)
@ -2390,7 +2391,7 @@ void Rec_ShowSharedUsrRecord (Rec_SharedRecordViewType_t TypeOfView,
NextAction = ActUpdOth; NextAction = ActUpdOth;
break; break;
} }
Act_StartForm (NextAction); Frm_StartForm (NextAction);
Usr_PutParamUsrCodEncrypted (UsrDat->EncryptedUsrCod); // Existing user Usr_PutParamUsrCodEncrypted (UsrDat->EncryptedUsrCod); // Existing user
break; break;
case Rec_SHA_OTHER_NEW_USR_FORM: case Rec_SHA_OTHER_NEW_USR_FORM:
@ -2409,7 +2410,7 @@ void Rec_ShowSharedUsrRecord (Rec_SharedRecordViewType_t TypeOfView,
NextAction = ActCreOth; NextAction = ActCreOth;
break; break;
} }
Act_StartForm (NextAction); Frm_StartForm (NextAction);
ID_PutParamOtherUsrIDPlain (); // New user ID_PutParamOtherUsrIDPlain (); // New user
break; break;
default: default:
@ -2469,17 +2470,17 @@ void Rec_ShowSharedUsrRecord (Rec_SharedRecordViewType_t TypeOfView,
{ {
case Rec_SHA_SIGN_UP_IN_CRS_FORM: case Rec_SHA_SIGN_UP_IN_CRS_FORM:
Btn_PutConfirmButton (Txt_Sign_up); Btn_PutConfirmButton (Txt_Sign_up);
Act_EndForm (); Frm_EndForm ();
break; break;
case Rec_SHA_MY_RECORD_FORM: case Rec_SHA_MY_RECORD_FORM:
Btn_PutConfirmButton (Txt_Save_changes); Btn_PutConfirmButton (Txt_Save_changes);
Act_EndForm (); Frm_EndForm ();
break; break;
case Rec_SHA_OTHER_NEW_USR_FORM: case Rec_SHA_OTHER_NEW_USR_FORM:
if (Gbl.CurrentCrs.Grps.NumGrps) // This course has groups? if (Gbl.CurrentCrs.Grps.NumGrps) // This course has groups?
Grp_ShowLstGrpsToChgOtherUsrsGrps (UsrDat->UsrCod); Grp_ShowLstGrpsToChgOtherUsrsGrps (UsrDat->UsrCod);
Btn_PutConfirmButton (Txt_Register); Btn_PutConfirmButton (Txt_Register);
Act_EndForm (); Frm_EndForm ();
break; break;
case Rec_SHA_OTHER_EXISTING_USR_FORM: case Rec_SHA_OTHER_EXISTING_USR_FORM:
/***** Show list of groups to register/remove me/user *****/ /***** Show list of groups to register/remove me/user *****/
@ -2499,7 +2500,7 @@ void Rec_ShowSharedUsrRecord (Rec_SharedRecordViewType_t TypeOfView,
if (Enr_PutActionsRegRemOneUsr (ItsMe)) if (Enr_PutActionsRegRemOneUsr (ItsMe))
Btn_PutConfirmButton (Txt_Confirm); Btn_PutConfirmButton (Txt_Confirm);
Act_EndForm (); Frm_EndForm ();
break; break;
default: default:
break; break;
@ -2743,16 +2744,16 @@ static void Rec_ShowInstitutionInHead (struct Instit *Ins,bool PutFormLinks)
/* Form to go to the institution */ /* Form to go to the institution */
if (PutFormLinks) if (PutFormLinks)
{ {
Act_StartFormGoTo (ActSeeInsInf); Frm_StartFormGoTo (ActSeeInsInf);
Ins_PutParamInsCod (Ins->InsCod); Ins_PutParamInsCod (Ins->InsCod);
Act_LinkFormSubmit (Ins->FullName,NULL,NULL); Frm_LinkFormSubmit (Ins->FullName,NULL,NULL);
} }
Log_DrawLogo (Sco_SCOPE_INS,Ins->InsCod,Ins->ShrtName, Log_DrawLogo (Sco_SCOPE_INS,Ins->InsCod,Ins->ShrtName,
Rec_INSTITUTION_LOGO_SIZE,NULL,true); Rec_INSTITUTION_LOGO_SIZE,NULL,true);
if (PutFormLinks) if (PutFormLinks)
{ {
fprintf (Gbl.F.Out,"</a>"); fprintf (Gbl.F.Out,"</a>");
Act_EndForm (); Frm_EndForm ();
} }
} }
fprintf (Gbl.F.Out,"</td>"); fprintf (Gbl.F.Out,"</td>");
@ -2764,15 +2765,15 @@ static void Rec_ShowInstitutionInHead (struct Instit *Ins,bool PutFormLinks)
/* Form to go to the institution */ /* Form to go to the institution */
if (PutFormLinks) if (PutFormLinks)
{ {
Act_StartFormGoTo (ActSeeInsInf); Frm_StartFormGoTo (ActSeeInsInf);
Ins_PutParamInsCod (Ins->InsCod); Ins_PutParamInsCod (Ins->InsCod);
Act_LinkFormSubmit (Ins->FullName,"REC_HEAD",NULL); Frm_LinkFormSubmit (Ins->FullName,"REC_HEAD",NULL);
} }
fprintf (Gbl.F.Out,"%s",Ins->FullName); fprintf (Gbl.F.Out,"%s",Ins->FullName);
if (PutFormLinks) if (PutFormLinks)
{ {
fprintf (Gbl.F.Out,"</a>"); fprintf (Gbl.F.Out,"</a>");
Act_EndForm (); Frm_EndForm ();
} }
} }
fprintf (Gbl.F.Out,"</td>"); fprintf (Gbl.F.Out,"</td>");
@ -2835,9 +2836,9 @@ static void Rec_ShowNickname (struct UsrData *UsrDat,bool PutFormLinks)
{ {
/* Put form to go to public profile */ /* Put form to go to public profile */
ItsMe = Usr_ItsMe (UsrDat->UsrCod); ItsMe = Usr_ItsMe (UsrDat->UsrCod);
Act_StartForm (ActSeeOthPubPrf); Frm_StartForm (ActSeeOthPubPrf);
Usr_PutParamUsrCodEncrypted (UsrDat->EncryptedUsrCod); Usr_PutParamUsrCodEncrypted (UsrDat->EncryptedUsrCod);
Act_LinkFormSubmit (ItsMe ? Txt_My_public_profile : Frm_LinkFormSubmit (ItsMe ? Txt_My_public_profile :
Txt_Another_user_s_profile, Txt_Another_user_s_profile,
"REC_NICK",NULL); "REC_NICK",NULL);
} }
@ -2845,7 +2846,7 @@ static void Rec_ShowNickname (struct UsrData *UsrDat,bool PutFormLinks)
if (PutFormLinks) if (PutFormLinks)
{ {
fprintf (Gbl.F.Out,"</a>"); fprintf (Gbl.F.Out,"</a>");
Act_EndForm (); Frm_EndForm ();
} }
} }
fprintf (Gbl.F.Out,"</div>" fprintf (Gbl.F.Out,"</div>"
@ -4067,7 +4068,7 @@ static void Rec_ShowFormMyInsCtrDpt (bool IAmATeacher)
} }
/* Start form to select the country of my institution */ /* Start form to select the country of my institution */
Act_StartFormAnchor (ActChgCtyMyIns,Rec_MY_INS_CTR_DPT_ID); Frm_StartFormAnchor (ActChgCtyMyIns,Rec_MY_INS_CTR_DPT_ID);
fprintf (Gbl.F.Out,"<select id=\"OthCtyCod\" name=\"OthCtyCod\"" fprintf (Gbl.F.Out,"<select id=\"OthCtyCod\" name=\"OthCtyCod\""
" class=\"REC_C2_BOT_INPUT\"" " class=\"REC_C2_BOT_INPUT\""
" onchange=\"document.getElementById('%s').submit();\">" " onchange=\"document.getElementById('%s').submit();\">"
@ -4088,7 +4089,7 @@ static void Rec_ShowFormMyInsCtrDpt (bool IAmATeacher)
Gbl.Ctys.Lst[NumCty].Name[Gbl.Prefs.Language]); Gbl.Ctys.Lst[NumCty].Name[Gbl.Prefs.Language]);
} }
fprintf (Gbl.F.Out,"</select>"); fprintf (Gbl.F.Out,"</select>");
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</td>" fprintf (Gbl.F.Out,"</td>"
"</tr>"); "</tr>");
@ -4106,7 +4107,7 @@ static void Rec_ShowFormMyInsCtrDpt (bool IAmATeacher)
Ins_GetListInstitutions (Gbl.Usrs.Me.UsrDat.InsCtyCod,Ins_GET_BASIC_DATA); Ins_GetListInstitutions (Gbl.Usrs.Me.UsrDat.InsCtyCod,Ins_GET_BASIC_DATA);
/* Start form to select institution */ /* Start form to select institution */
Act_StartFormAnchor (ActChgMyIns,Rec_MY_INS_CTR_DPT_ID); Frm_StartFormAnchor (ActChgMyIns,Rec_MY_INS_CTR_DPT_ID);
fprintf (Gbl.F.Out,"<select id=\"OthInsCod\" name=\"OthInsCod\"" fprintf (Gbl.F.Out,"<select id=\"OthInsCod\" name=\"OthInsCod\""
" class=\"REC_C2_BOT_INPUT\"" " class=\"REC_C2_BOT_INPUT\""
" onchange=\"document.getElementById('%s').submit();\">" " onchange=\"document.getElementById('%s').submit();\">"
@ -4132,7 +4133,7 @@ static void Rec_ShowFormMyInsCtrDpt (bool IAmATeacher)
Gbl.Inss.Lst[NumIns].FullName); Gbl.Inss.Lst[NumIns].FullName);
} }
fprintf (Gbl.F.Out,"</select>"); fprintf (Gbl.F.Out,"</select>");
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</td>" fprintf (Gbl.F.Out,"</td>"
"</tr>"); "</tr>");
@ -4152,7 +4153,7 @@ static void Rec_ShowFormMyInsCtrDpt (bool IAmATeacher)
Ctr_GetListCentres (Gbl.Usrs.Me.UsrDat.InsCod); Ctr_GetListCentres (Gbl.Usrs.Me.UsrDat.InsCod);
/* Start form to select centre */ /* Start form to select centre */
Act_StartFormAnchor (ActChgMyCtr,Rec_MY_INS_CTR_DPT_ID); Frm_StartFormAnchor (ActChgMyCtr,Rec_MY_INS_CTR_DPT_ID);
fprintf (Gbl.F.Out,"<select id=\"OthCtrCod\" name=\"OthCtrCod\"" fprintf (Gbl.F.Out,"<select id=\"OthCtrCod\" name=\"OthCtrCod\""
" class=\"REC_C2_BOT_INPUT\"" " class=\"REC_C2_BOT_INPUT\""
" onchange=\"document.getElementById('%s').submit();\">" " onchange=\"document.getElementById('%s').submit();\">"
@ -4178,7 +4179,7 @@ static void Rec_ShowFormMyInsCtrDpt (bool IAmATeacher)
Gbl.Ctrs.Lst[NumCtr].FullName); Gbl.Ctrs.Lst[NumCtr].FullName);
} }
fprintf (Gbl.F.Out,"</select>"); fprintf (Gbl.F.Out,"</select>");
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</td>" fprintf (Gbl.F.Out,"</td>"
"</tr>"); "</tr>");
@ -4189,14 +4190,14 @@ static void Rec_ShowFormMyInsCtrDpt (bool IAmATeacher)
"</td>" "</td>"
"<td class=\"REC_C2_BOT LEFT_MIDDLE\">", "<td class=\"REC_C2_BOT LEFT_MIDDLE\">",
Dpt_PARAM_DPT_COD_NAME,ClassForm,Txt_Department); Dpt_PARAM_DPT_COD_NAME,ClassForm,Txt_Department);
Act_StartFormAnchor (ActChgMyDpt,Rec_MY_INS_CTR_DPT_ID); Frm_StartFormAnchor (ActChgMyDpt,Rec_MY_INS_CTR_DPT_ID);
Dpt_WriteSelectorDepartment (Gbl.Usrs.Me.UsrDat.InsCod, // Departments in my institution Dpt_WriteSelectorDepartment (Gbl.Usrs.Me.UsrDat.InsCod, // Departments in my institution
Gbl.Usrs.Me.UsrDat.Tch.DptCod, // Selected department Gbl.Usrs.Me.UsrDat.Tch.DptCod, // Selected department
"REC_C2_BOT_INPUT", // Selector class "REC_C2_BOT_INPUT", // Selector class
-1L, // First option -1L, // First option
"", // Text when no department selected "", // Text when no department selected
true); // Submit on change true); // Submit on change
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</td>" fprintf (Gbl.F.Out,"</td>"
"</tr>"); "</tr>");
@ -4209,7 +4210,7 @@ static void Rec_ShowFormMyInsCtrDpt (bool IAmATeacher)
"</td>" "</td>"
"<td class=\"REC_C2_BOT LEFT_MIDDLE\">", "<td class=\"REC_C2_BOT LEFT_MIDDLE\">",
ClassForm,Txt_Office); ClassForm,Txt_Office);
Act_StartFormAnchor (ActChgMyOff,Rec_MY_INS_CTR_DPT_ID); Frm_StartFormAnchor (ActChgMyOff,Rec_MY_INS_CTR_DPT_ID);
fprintf (Gbl.F.Out,"<input type=\"text\" id=\"Office\" name=\"Office\"" fprintf (Gbl.F.Out,"<input type=\"text\" id=\"Office\" name=\"Office\""
" maxlength=\"%u\" value=\"%s\"" " maxlength=\"%u\" value=\"%s\""
" class=\"REC_C2_BOT_INPUT\"" " class=\"REC_C2_BOT_INPUT\""
@ -4217,7 +4218,7 @@ static void Rec_ShowFormMyInsCtrDpt (bool IAmATeacher)
Usr_MAX_CHARS_ADDRESS, Usr_MAX_CHARS_ADDRESS,
Gbl.Usrs.Me.UsrDat.Tch.Office, Gbl.Usrs.Me.UsrDat.Tch.Office,
Gbl.Form.Id); Gbl.Form.Id);
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</td>" fprintf (Gbl.F.Out,"</td>"
"</tr>"); "</tr>");
@ -4230,7 +4231,7 @@ static void Rec_ShowFormMyInsCtrDpt (bool IAmATeacher)
"</td>" "</td>"
"<td class=\"REC_C2_BOT LEFT_MIDDLE\">", "<td class=\"REC_C2_BOT LEFT_MIDDLE\">",
ClassForm,Txt_Phone); ClassForm,Txt_Phone);
Act_StartFormAnchor (ActChgMyOffPho,Rec_MY_INS_CTR_DPT_ID); Frm_StartFormAnchor (ActChgMyOffPho,Rec_MY_INS_CTR_DPT_ID);
fprintf (Gbl.F.Out,"<input type=\"tel\"" fprintf (Gbl.F.Out,"<input type=\"tel\""
" id=\"OfficePhone\" name=\"OfficePhone\"" " id=\"OfficePhone\" name=\"OfficePhone\""
" maxlength=\"%u\" value=\"%s\"" " maxlength=\"%u\" value=\"%s\""
@ -4239,7 +4240,7 @@ static void Rec_ShowFormMyInsCtrDpt (bool IAmATeacher)
Usr_MAX_CHARS_PHONE, Usr_MAX_CHARS_PHONE,
Gbl.Usrs.Me.UsrDat.Tch.OfficePhone, Gbl.Usrs.Me.UsrDat.Tch.OfficePhone,
Gbl.Form.Id); Gbl.Form.Id);
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</td>" fprintf (Gbl.F.Out,"</td>"
"</tr>"); "</tr>");
} }

View File

@ -30,6 +30,7 @@
#include "swad_box.h" #include "swad_box.h"
#include "swad_database.h" #include "swad_database.h"
#include "swad_form.h"
#include "swad_global.h" #include "swad_global.h"
#include "swad_ID.h" #include "swad_ID.h"
#include "swad_profile.h" #include "swad_profile.h"
@ -152,7 +153,7 @@ void Rep_ReqMyUsageReport (void)
extern const char *Txt_Generate_report; extern const char *Txt_Generate_report;
/***** Form to show my usage report *****/ /***** Form to show my usage report *****/
Act_StartForm (ActSeeMyUsgRep); Frm_StartForm (ActSeeMyUsgRep);
/***** Start box *****/ /***** Start box *****/
snprintf (Gbl.Title,sizeof (Gbl.Title), snprintf (Gbl.Title,sizeof (Gbl.Title),
@ -168,7 +169,7 @@ void Rep_ReqMyUsageReport (void)
Box_EndBoxWithButton (Btn_CONFIRM_BUTTON,Txt_Generate_report); Box_EndBoxWithButton (Btn_CONFIRM_BUTTON,Txt_Generate_report);
/***** End form *****/ /***** End form *****/
Act_EndForm (); Frm_EndForm ();
} }
/*****************************************************************************/ /*****************************************************************************/

View File

@ -26,6 +26,7 @@
/*****************************************************************************/ /*****************************************************************************/
#include "swad_database.h" #include "swad_database.h"
#include "swad_form.h"
#include "swad_global.h" #include "swad_global.h"
#include "swad_parameter.h" #include "swad_parameter.h"
#include "swad_role.h" #include "swad_role.h"
@ -439,7 +440,7 @@ void Rol_PutFormToChangeMyRole (const char *ClassSelect)
extern const char *Txt_ROLES_SINGUL_Abc[Rol_NUM_ROLES][Usr_NUM_SEXS]; extern const char *Txt_ROLES_SINGUL_Abc[Rol_NUM_ROLES][Usr_NUM_SEXS];
Rol_Role_t Role; Rol_Role_t Role;
Act_StartForm (ActChgMyRol); Frm_StartForm (ActChgMyRol);
fprintf (Gbl.F.Out,"<select name=\"MyRole\""); fprintf (Gbl.F.Out,"<select name=\"MyRole\"");
if (ClassSelect) if (ClassSelect)
if (ClassSelect[0]) if (ClassSelect[0])
@ -458,7 +459,7 @@ void Rol_PutFormToChangeMyRole (const char *ClassSelect)
Txt_ROLES_SINGUL_Abc[Role][Gbl.Usrs.Me.UsrDat.Sex]); Txt_ROLES_SINGUL_Abc[Role][Gbl.Usrs.Me.UsrDat.Sex]);
} }
fprintf (Gbl.F.Out,"</select>"); fprintf (Gbl.F.Out,"</select>");
Act_EndForm (); Frm_EndForm ();
} }
/*****************************************************************************/ /*****************************************************************************/

View File

@ -31,6 +31,7 @@
#include "swad_box.h" #include "swad_box.h"
#include "swad_database.h" #include "swad_database.h"
#include "swad_form.h"
#include "swad_global.h" #include "swad_global.h"
#include "swad_layout.h" #include "swad_layout.h"
#include "swad_parameter.h" #include "swad_parameter.h"
@ -193,7 +194,7 @@ static void Sch_PutFormToSearchWithWhatToSearchAndScope (Act_Action_t Action,Sco
Hlp_Search,Box_NOT_CLOSABLE); Hlp_Search,Box_NOT_CLOSABLE);
/***** Start form *****/ /***** Start form *****/
Act_StartForm (Action); Frm_StartForm (Action);
/***** Scope (whole platform, current country, current institution, /***** Scope (whole platform, current country, current institution,
current centre, current degree or current course) *****/ current centre, current degree or current course) *****/
@ -242,7 +243,7 @@ static void Sch_PutFormToSearchWithWhatToSearchAndScope (Act_Action_t Action,Sco
Btn_PutButton (Btn_CONFIRM_BUTTON,Txt_Search); Btn_PutButton (Btn_CONFIRM_BUTTON,Txt_Search);
/***** End form *****/ /***** End form *****/
Act_EndForm (); Frm_EndForm ();
/***** End box *****/ /***** End box *****/
Box_EndBox (); Box_EndBox ();
@ -292,11 +293,11 @@ void Sch_PutFormToSearchInPageTopHeading (void)
/***** Put form *****/ /***** Put form *****/
fprintf (Gbl.F.Out,"<div id=\"head_row_1_search\">"); fprintf (Gbl.F.Out,"<div id=\"head_row_1_search\">");
Act_StartForm (ActionSearch); Frm_StartForm (ActionSearch);
Sco_PutParamScope ("ScopeSch",Sco_SCOPE_SYS); Sco_PutParamScope ("ScopeSch",Sco_SCOPE_SYS);
Sch_PutInputStringToSearch ("head_search_text"); Sch_PutInputStringToSearch ("head_search_text");
Sch_PutMagnifyingGlassButton ("search-white64x64.png"); Sch_PutMagnifyingGlassButton ("search-white64x64.png");
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</div>"); // head_row_1_search fprintf (Gbl.F.Out,"</div>"); // head_row_1_search
} }

View File

@ -35,6 +35,7 @@
#include "swad_database.h" #include "swad_database.h"
#include "swad_exam.h" #include "swad_exam.h"
#include "swad_follow.h" #include "swad_follow.h"
#include "swad_form.h"
#include "swad_global.h" #include "swad_global.h"
#include "swad_image.h" #include "swad_image.h"
#include "swad_layout.h" #include "swad_layout.h"
@ -183,10 +184,10 @@ static void Soc_PutTextarea (const char *Placeholder,
static long Soc_ReceiveSocialPost (void); static long Soc_ReceiveSocialPost (void);
static void Soc_PutIconToToggleCommentSocialNote (const char UniqueId[Act_MAX_BYTES_ID + 1]); static void Soc_PutIconToToggleCommentSocialNote (const char UniqueId[Frm_MAX_BYTES_ID + 1]);
static void Soc_PutIconCommentDisabled (void); static void Soc_PutIconCommentDisabled (void);
static void Soc_PutHiddenFormToWriteNewCommentToSocialNote (long NotCod, static void Soc_PutHiddenFormToWriteNewCommentToSocialNote (long NotCod,
const char IdNewComment[Act_MAX_BYTES_ID + 1]); const char IdNewComment[Frm_MAX_BYTES_ID + 1]);
static unsigned long Soc_GetNumCommentsInSocialNote (long NotCod); static unsigned long Soc_GetNumCommentsInSocialNote (long NotCod);
static void Soc_WriteCommentsInSocialNote (const struct SocialNote *SocNot); static void Soc_WriteCommentsInSocialNote (const struct SocialNote *SocNot);
static void Soc_WriteSocialComment (struct SocialComment *SocCom, static void Soc_WriteSocialComment (struct SocialComment *SocCom,
@ -725,6 +726,7 @@ static void Soc_BuildQueryToGetTimeline (char **Query,
SubQueryRangeTop[0] = '\0'; SubQueryRangeTop[0] = '\0';
/* Select the most recent publishing from social_pubs */ /* Select the most recent publishing from social_pubs */
NumPubs = 0; // Initialized to avoid warning
switch (TimelineUsrOrGbl) switch (TimelineUsrOrGbl)
{ {
case Soc_TIMELINE_USR: // Show the timeline of a user case Soc_TIMELINE_USR: // Show the timeline of a user
@ -956,7 +958,7 @@ static void Soc_ShowTimeline (char **Query,
/***** List recent publishings in timeline *****/ /***** List recent publishings in timeline *****/
fprintf (Gbl.F.Out,"<ul id=\"timeline_list\" class=\"LIST_LEFT\">"); fprintf (Gbl.F.Out,"<ul id=\"timeline_list\" class=\"LIST_LEFT\">");
for (NumPub = 0; for (NumPub = 0, SocPub.PubCod = 0;
NumPub < NumPubsGot; NumPub < NumPubsGot;
NumPub++) NumPub++)
{ {
@ -1014,12 +1016,12 @@ static void Soc_FormStart (Act_Action_t ActionGbl,Act_Action_t ActionUsr)
{ {
if (Gbl.Usrs.Other.UsrDat.UsrCod > 0) if (Gbl.Usrs.Other.UsrDat.UsrCod > 0)
{ {
Act_StartFormAnchor (ActionUsr,"timeline"); Frm_StartFormAnchor (ActionUsr,"timeline");
Usr_PutParamOtherUsrCodEncrypted (); Usr_PutParamOtherUsrCodEncrypted ();
} }
else else
{ {
Act_StartForm (ActionGbl); Frm_StartForm (ActionGbl);
Soc_PutParamWhichUsrs (); Soc_PutParamWhichUsrs ();
} }
} }
@ -1036,7 +1038,7 @@ static void Soc_PutFormWhichUsrs (void)
/***** Form to select which users I want to see in timeline: /***** Form to select which users I want to see in timeline:
- only the users I follow - only the users I follow
- all users *****/ - all users *****/
Act_StartForm (ActSeeSocTmlGbl); Frm_StartForm (ActSeeSocTmlGbl);
fprintf (Gbl.F.Out,"<div class=\"SEL_BELOW_TITLE\">" fprintf (Gbl.F.Out,"<div class=\"SEL_BELOW_TITLE\">"
"<ul>"); "<ul>");
@ -1059,7 +1061,7 @@ static void Soc_PutFormWhichUsrs (void)
} }
fprintf (Gbl.F.Out,"</ul>" fprintf (Gbl.F.Out,"</ul>"
"</div>"); "</div>");
Act_EndForm (); Frm_EndForm ();
/***** Show warning if I do not follow anyone *****/ /***** Show warning if I do not follow anyone *****/
if (Gbl.Social.WhichUsrs == Soc_FOLLOWED) if (Gbl.Social.WhichUsrs == Soc_FOLLOWED)
@ -1170,7 +1172,7 @@ static void Soc_ShowOldPubsInTimeline (char **Query)
"can not get timeline"); "can not get timeline");
/***** List old publishings in timeline *****/ /***** List old publishings in timeline *****/
for (NumPub = 0; for (NumPub = 0, SocPub.PubCod = 0;
NumPub < NumPubsGot; NumPub < NumPubsGot;
NumPub++) NumPub++)
{ {
@ -1279,7 +1281,7 @@ static void Soc_WriteSocialNote (const struct SocialNote *SocNot,
char ForumName[For_MAX_BYTES_FORUM_NAME + 1]; char ForumName[For_MAX_BYTES_FORUM_NAME + 1];
char SummaryStr[Ntf_MAX_BYTES_SUMMARY + 1]; char SummaryStr[Ntf_MAX_BYTES_SUMMARY + 1];
unsigned NumComments; unsigned NumComments;
char IdNewComment[Act_MAX_BYTES_ID + 1]; char IdNewComment[Frm_MAX_BYTES_ID + 1];
/***** Start box ****/ /***** Start box ****/
if (ShowNoteAlone) if (ShowNoteAlone)
@ -1452,7 +1454,7 @@ static void Soc_WriteSocialNote (const struct SocialNote *SocNot,
fprintf (Gbl.F.Out,"<div class=\"SOCIAL_BOTTOM_LEFT\">"); fprintf (Gbl.F.Out,"<div class=\"SOCIAL_BOTTOM_LEFT\">");
/* Create unique id for new comment */ /* Create unique id for new comment */
Act_SetUniqueId (IdNewComment); Frm_SetUniqueId (IdNewComment);
/* Get number of comments in this social note */ /* Get number of comments in this social note */
NumComments = Soc_GetNumCommentsInSocialNote (SocNot->NotCod); NumComments = Soc_GetNumCommentsInSocialNote (SocNot->NotCod);
@ -1563,13 +1565,13 @@ static void Soc_WriteTopMessage (Soc_TopMessage_t TopMessage,long UsrCod)
fprintf (Gbl.F.Out,"<div class=\"SOCIAL_TOP_CONTAINER SOCIAL_TOP_PUBLISHER\">"); fprintf (Gbl.F.Out,"<div class=\"SOCIAL_TOP_CONTAINER SOCIAL_TOP_PUBLISHER\">");
/***** Show user's name inside form to go to user's public profile *****/ /***** Show user's name inside form to go to user's public profile *****/
Act_StartFormUnique (ActSeeOthPubPrf); Frm_StartFormUnique (ActSeeOthPubPrf);
Usr_PutParamUsrCodEncrypted (UsrDat.EncryptedUsrCod); Usr_PutParamUsrCodEncrypted (UsrDat.EncryptedUsrCod);
Act_LinkFormSubmitUnique (ItsMe ? Txt_My_public_profile : Frm_LinkFormSubmitUnique (ItsMe ? Txt_My_public_profile :
Txt_Another_user_s_profile, Txt_Another_user_s_profile,
"SOCIAL_TOP_PUBLISHER"); "SOCIAL_TOP_PUBLISHER");
fprintf (Gbl.F.Out,"%s</a>",UsrDat.FullName); fprintf (Gbl.F.Out,"%s</a>",UsrDat.FullName);
Act_EndForm (); Frm_EndForm ();
/***** Show action made *****/ /***** Show action made *****/
fprintf (Gbl.F.Out," %s:</div>", fprintf (Gbl.F.Out," %s:</div>",
@ -1595,22 +1597,22 @@ static void Soc_WriteAuthorNote (const struct UsrData *UsrDat)
fprintf (Gbl.F.Out,"<div class=\"SOCIAL_RIGHT_AUTHOR\">"); fprintf (Gbl.F.Out,"<div class=\"SOCIAL_RIGHT_AUTHOR\">");
/***** Show user's name inside form to go to user's public profile *****/ /***** Show user's name inside form to go to user's public profile *****/
Act_StartFormUnique (ActSeeOthPubPrf); Frm_StartFormUnique (ActSeeOthPubPrf);
Usr_PutParamUsrCodEncrypted (UsrDat->EncryptedUsrCod); Usr_PutParamUsrCodEncrypted (UsrDat->EncryptedUsrCod);
Act_LinkFormSubmitUnique (ItsMe ? Txt_My_public_profile : Frm_LinkFormSubmitUnique (ItsMe ? Txt_My_public_profile :
Txt_Another_user_s_profile, Txt_Another_user_s_profile,
"DAT_N_BOLD"); "DAT_N_BOLD");
fprintf (Gbl.F.Out,"%s</a>",UsrDat->FullName); fprintf (Gbl.F.Out,"%s</a>",UsrDat->FullName);
Act_EndForm (); Frm_EndForm ();
/***** Show user's nickname inside form to go to user's public profile *****/ /***** Show user's nickname inside form to go to user's public profile *****/
Act_StartFormUnique (ActSeeOthPubPrf); Frm_StartFormUnique (ActSeeOthPubPrf);
Usr_PutParamUsrCodEncrypted (UsrDat->EncryptedUsrCod); Usr_PutParamUsrCodEncrypted (UsrDat->EncryptedUsrCod);
Act_LinkFormSubmitUnique (ItsMe ? Txt_My_public_profile : Frm_LinkFormSubmitUnique (ItsMe ? Txt_My_public_profile :
Txt_Another_user_s_profile, Txt_Another_user_s_profile,
"DAT_LIGHT"); "DAT_LIGHT");
fprintf (Gbl.F.Out," @%s</a>",UsrDat->Nickname); fprintf (Gbl.F.Out," @%s</a>",UsrDat->Nickname);
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</div>"); fprintf (Gbl.F.Out,"</div>");
} }
@ -1623,10 +1625,10 @@ static void Soc_WriteAuthorNote (const struct UsrData *UsrDat)
static void Soc_WriteDateTime (time_t TimeUTC) static void Soc_WriteDateTime (time_t TimeUTC)
{ {
extern const char *Txt_Today; extern const char *Txt_Today;
char IdDateTime[Act_MAX_BYTES_ID + 1]; char IdDateTime[Frm_MAX_BYTES_ID + 1];
/***** Create unique Id *****/ /***** Create unique Id *****/
Act_SetUniqueId (IdDateTime); Frm_SetUniqueId (IdDateTime);
/***** Container where the date-time is written *****/ /***** Container where the date-time is written *****/
fprintf (Gbl.F.Out,"<div id=\"%s\" class=\"SOCIAL_RIGHT_TIME DAT_LIGHT\">" fprintf (Gbl.F.Out,"<div id=\"%s\" class=\"SOCIAL_RIGHT_TIME DAT_LIGHT\">"
@ -1805,34 +1807,34 @@ static void Soc_PutFormGoToAction (const struct SocialNote *SocNot)
{ {
case Soc_NOTE_INS_DOC_PUB_FILE: case Soc_NOTE_INS_DOC_PUB_FILE:
case Soc_NOTE_INS_SHA_PUB_FILE: case Soc_NOTE_INS_SHA_PUB_FILE:
Act_StartFormUnique (Soc_DefaultActions[SocNot->NoteType]); Frm_StartFormUnique (Soc_DefaultActions[SocNot->NoteType]);
Brw_PutHiddenParamFilCod (SocNot->Cod); Brw_PutHiddenParamFilCod (SocNot->Cod);
if (SocNot->HieCod != Gbl.CurrentIns.Ins.InsCod) // Not the current institution if (SocNot->HieCod != Gbl.CurrentIns.Ins.InsCod) // Not the current institution
Ins_PutParamInsCod (SocNot->HieCod); // Go to another institution Ins_PutParamInsCod (SocNot->HieCod); // Go to another institution
break; break;
case Soc_NOTE_CTR_DOC_PUB_FILE: case Soc_NOTE_CTR_DOC_PUB_FILE:
case Soc_NOTE_CTR_SHA_PUB_FILE: case Soc_NOTE_CTR_SHA_PUB_FILE:
Act_StartFormUnique (Soc_DefaultActions[SocNot->NoteType]); Frm_StartFormUnique (Soc_DefaultActions[SocNot->NoteType]);
Brw_PutHiddenParamFilCod (SocNot->Cod); Brw_PutHiddenParamFilCod (SocNot->Cod);
if (SocNot->HieCod != Gbl.CurrentCtr.Ctr.CtrCod) // Not the current centre if (SocNot->HieCod != Gbl.CurrentCtr.Ctr.CtrCod) // Not the current centre
Ctr_PutParamCtrCod (SocNot->HieCod); // Go to another centre Ctr_PutParamCtrCod (SocNot->HieCod); // Go to another centre
break; break;
case Soc_NOTE_DEG_DOC_PUB_FILE: case Soc_NOTE_DEG_DOC_PUB_FILE:
case Soc_NOTE_DEG_SHA_PUB_FILE: case Soc_NOTE_DEG_SHA_PUB_FILE:
Act_StartFormUnique (Soc_DefaultActions[SocNot->NoteType]); Frm_StartFormUnique (Soc_DefaultActions[SocNot->NoteType]);
Brw_PutHiddenParamFilCod (SocNot->Cod); Brw_PutHiddenParamFilCod (SocNot->Cod);
if (SocNot->HieCod != Gbl.CurrentDeg.Deg.DegCod) // Not the current degree if (SocNot->HieCod != Gbl.CurrentDeg.Deg.DegCod) // Not the current degree
Deg_PutParamDegCod (SocNot->HieCod); // Go to another degree Deg_PutParamDegCod (SocNot->HieCod); // Go to another degree
break; break;
case Soc_NOTE_CRS_DOC_PUB_FILE: case Soc_NOTE_CRS_DOC_PUB_FILE:
case Soc_NOTE_CRS_SHA_PUB_FILE: case Soc_NOTE_CRS_SHA_PUB_FILE:
Act_StartFormUnique (Soc_DefaultActions[SocNot->NoteType]); Frm_StartFormUnique (Soc_DefaultActions[SocNot->NoteType]);
Brw_PutHiddenParamFilCod (SocNot->Cod); Brw_PutHiddenParamFilCod (SocNot->Cod);
if (SocNot->HieCod != Gbl.CurrentCrs.Crs.CrsCod) // Not the current course if (SocNot->HieCod != Gbl.CurrentCrs.Crs.CrsCod) // Not the current course
Crs_PutParamCrsCod (SocNot->HieCod); // Go to another course Crs_PutParamCrsCod (SocNot->HieCod); // Go to another course
break; break;
case Soc_NOTE_EXAM_ANNOUNCEMENT: case Soc_NOTE_EXAM_ANNOUNCEMENT:
Act_StartFormUnique (Soc_DefaultActions[SocNot->NoteType]); Frm_StartFormUnique (Soc_DefaultActions[SocNot->NoteType]);
Exa_PutHiddenParamExaCod (SocNot->Cod); Exa_PutHiddenParamExaCod (SocNot->Cod);
if (SocNot->HieCod != Gbl.CurrentCrs.Crs.CrsCod) // Not the current course if (SocNot->HieCod != Gbl.CurrentCrs.Crs.CrsCod) // Not the current course
Crs_PutParamCrsCod (SocNot->HieCod); // Go to another course Crs_PutParamCrsCod (SocNot->HieCod); // Go to another course
@ -1840,7 +1842,7 @@ static void Soc_PutFormGoToAction (const struct SocialNote *SocNot)
case Soc_NOTE_SOCIAL_POST: // Not applicable case Soc_NOTE_SOCIAL_POST: // Not applicable
return; return;
case Soc_NOTE_FORUM_POST: case Soc_NOTE_FORUM_POST:
Act_StartFormUnique (For_ActionsSeeFor[Gbl.Forum.ForumSelected.Type]); Frm_StartFormUnique (For_ActionsSeeFor[Gbl.Forum.ForumSelected.Type]);
For_PutAllHiddenParamsForum (1, // Page of threads = first For_PutAllHiddenParamsForum (1, // Page of threads = first
1, // Page of posts = first 1, // Page of posts = first
Gbl.Forum.ForumSet, Gbl.Forum.ForumSet,
@ -1852,7 +1854,7 @@ static void Soc_PutFormGoToAction (const struct SocialNote *SocNot)
Crs_PutParamCrsCod (SocNot->HieCod); // Go to another course Crs_PutParamCrsCod (SocNot->HieCod); // Go to another course
break; break;
case Soc_NOTE_NOTICE: case Soc_NOTE_NOTICE:
Act_StartFormUnique (Soc_DefaultActions[SocNot->NoteType]); Frm_StartFormUnique (Soc_DefaultActions[SocNot->NoteType]);
Not_PutHiddenParamNotCod (SocNot->Cod); Not_PutHiddenParamNotCod (SocNot->Cod);
if (SocNot->HieCod != Gbl.CurrentCrs.Crs.CrsCod) // Not the current course if (SocNot->HieCod != Gbl.CurrentCrs.Crs.CrsCod) // Not the current course
Crs_PutParamCrsCod (SocNot->HieCod); // Go to another course Crs_PutParamCrsCod (SocNot->HieCod); // Go to another course
@ -1865,7 +1867,7 @@ static void Soc_PutFormGoToAction (const struct SocialNote *SocNot)
snprintf (Class,sizeof (Class), snprintf (Class,sizeof (Class),
"%s ICO_HIGHLIGHT", "%s ICO_HIGHLIGHT",
The_ClassFormBold[Gbl.Prefs.Theme]); The_ClassFormBold[Gbl.Prefs.Theme]);
Act_LinkFormSubmitUnique (Txt_SOCIAL_NOTE[SocNot->NoteType],Class); Frm_LinkFormSubmitUnique (Txt_SOCIAL_NOTE[SocNot->NoteType],Class);
fprintf (Gbl.F.Out,"<img src=\"%s/%s\"" fprintf (Gbl.F.Out,"<img src=\"%s/%s\""
" alt=\"%s\" title=\"%s\"" " alt=\"%s\" title=\"%s\""
" class=\"ICO20x20\" />" " class=\"ICO20x20\" />"
@ -1875,7 +1877,7 @@ static void Soc_PutFormGoToAction (const struct SocialNote *SocNot)
Txt_SOCIAL_NOTE[SocNot->NoteType], Txt_SOCIAL_NOTE[SocNot->NoteType],
Txt_SOCIAL_NOTE[SocNot->NoteType], Txt_SOCIAL_NOTE[SocNot->NoteType],
Txt_SOCIAL_NOTE[SocNot->NoteType]); Txt_SOCIAL_NOTE[SocNot->NoteType]);
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</div>"); fprintf (Gbl.F.Out,"</div>");
} }
@ -2183,7 +2185,7 @@ static void Soc_PutFormToWriteNewPost (void)
"SOCIAL_TEXTAREA_POST","SOCIAL_POST_IMG_TIT_URL"); "SOCIAL_TEXTAREA_POST","SOCIAL_POST_IMG_TIT_URL");
/* End form */ /* End form */
Act_EndForm (); Frm_EndForm ();
/* End container */ /* End container */
fprintf (Gbl.F.Out,"</div>"); fprintf (Gbl.F.Out,"</div>");
@ -2201,10 +2203,10 @@ static void Soc_PutTextarea (const char *Placeholder,
const char *ClassTextArea,const char *ClassImgTit) const char *ClassTextArea,const char *ClassImgTit)
{ {
extern const char *Txt_Post; extern const char *Txt_Post;
char IdDivImgButton[Act_MAX_BYTES_ID + 1]; char IdDivImgButton[Frm_MAX_BYTES_ID + 1];
/***** Set unique id for the hidden div *****/ /***** Set unique id for the hidden div *****/
Act_SetUniqueId (IdDivImgButton); Frm_SetUniqueId (IdDivImgButton);
/***** Textarea to write the content *****/ /***** Textarea to write the content *****/
fprintf (Gbl.F.Out,"<textarea name=\"Content\" rows=\"1\" maxlength=\"%u\"" fprintf (Gbl.F.Out,"<textarea name=\"Content\" rows=\"1\" maxlength=\"%u\""
@ -2339,7 +2341,7 @@ static long Soc_ReceiveSocialPost (void)
/****** Put an icon to toggle on/off the form to comment a social note *******/ /****** Put an icon to toggle on/off the form to comment a social note *******/
/*****************************************************************************/ /*****************************************************************************/
static void Soc_PutIconToToggleCommentSocialNote (const char UniqueId[Act_MAX_BYTES_ID + 1]) static void Soc_PutIconToToggleCommentSocialNote (const char UniqueId[Frm_MAX_BYTES_ID + 1])
{ {
extern const char *Txt_Comment; extern const char *Txt_Comment;
@ -2381,7 +2383,7 @@ static void Soc_PutIconCommentDisabled (void)
// All forms in this function and nested functions must have unique identifiers // All forms in this function and nested functions must have unique identifiers
static void Soc_PutHiddenFormToWriteNewCommentToSocialNote (long NotCod, static void Soc_PutHiddenFormToWriteNewCommentToSocialNote (long NotCod,
const char IdNewComment[Act_MAX_BYTES_ID + 1]) const char IdNewComment[Frm_MAX_BYTES_ID + 1])
{ {
extern const char *Txt_New_SOCIAL_comment; extern const char *Txt_New_SOCIAL_comment;
bool ShowPhoto = false; bool ShowPhoto = false;
@ -2414,7 +2416,7 @@ static void Soc_PutHiddenFormToWriteNewCommentToSocialNote (long NotCod,
"SOCIAL_TEXTAREA_COMMENT","SOCIAL_COMMENT_IMG_TIT_URL"); "SOCIAL_TEXTAREA_COMMENT","SOCIAL_COMMENT_IMG_TIT_URL");
/* End form */ /* End form */
Act_EndForm (); Frm_EndForm ();
/* End right container */ /* End right container */
fprintf (Gbl.F.Out,"</div>"); fprintf (Gbl.F.Out,"</div>");
@ -2629,22 +2631,22 @@ static void Soc_WriteAuthorComment (struct UsrData *UsrDat)
fprintf (Gbl.F.Out,"<div class=\"SOCIAL_COMMENT_RIGHT_AUTHOR\">"); fprintf (Gbl.F.Out,"<div class=\"SOCIAL_COMMENT_RIGHT_AUTHOR\">");
/***** Show user's name inside form to go to user's public profile *****/ /***** Show user's name inside form to go to user's public profile *****/
Act_StartFormUnique (ActSeeOthPubPrf); Frm_StartFormUnique (ActSeeOthPubPrf);
Usr_PutParamUsrCodEncrypted (UsrDat->EncryptedUsrCod); Usr_PutParamUsrCodEncrypted (UsrDat->EncryptedUsrCod);
Act_LinkFormSubmitUnique (ItsMe ? Txt_My_public_profile : Frm_LinkFormSubmitUnique (ItsMe ? Txt_My_public_profile :
Txt_Another_user_s_profile, Txt_Another_user_s_profile,
"DAT_BOLD"); "DAT_BOLD");
fprintf (Gbl.F.Out,"%s</a>",UsrDat->FullName); fprintf (Gbl.F.Out,"%s</a>",UsrDat->FullName);
Act_EndForm (); Frm_EndForm ();
/***** Show user's nickname inside form to go to user's public profile *****/ /***** Show user's nickname inside form to go to user's public profile *****/
Act_StartFormUnique (ActSeeOthPubPrf); Frm_StartFormUnique (ActSeeOthPubPrf);
Usr_PutParamUsrCodEncrypted (UsrDat->EncryptedUsrCod); Usr_PutParamUsrCodEncrypted (UsrDat->EncryptedUsrCod);
Act_LinkFormSubmitUnique (ItsMe ? Txt_My_public_profile : Frm_LinkFormSubmitUnique (ItsMe ? Txt_My_public_profile :
Txt_Another_user_s_profile, Txt_Another_user_s_profile,
"DAT_LIGHT"); "DAT_LIGHT");
fprintf (Gbl.F.Out," @%s</a>",UsrDat->Nickname); fprintf (Gbl.F.Out," @%s</a>",UsrDat->Nickname);
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</div>"); fprintf (Gbl.F.Out,"</div>");
} }
@ -2670,7 +2672,7 @@ static void Soc_PutFormToRemoveComment (long PubCod)
Gbl.Prefs.IconsURL, Gbl.Prefs.IconsURL,
Txt_Remove, Txt_Remove,
Txt_Remove); Txt_Remove);
Act_EndForm (); Frm_EndForm ();
} }
/*****************************************************************************/ /*****************************************************************************/
@ -2693,7 +2695,7 @@ static void Soc_PutFormToFavSocialComment (long PubCod)
"</div>", "</div>",
Gbl.Prefs.IconsURL, Gbl.Prefs.IconsURL,
Txt_Mark_as_favourite,Txt_Mark_as_favourite); Txt_Mark_as_favourite,Txt_Mark_as_favourite);
Act_EndForm (); Frm_EndForm ();
} }
/*****************************************************************************/ /*****************************************************************************/
@ -2770,7 +2772,7 @@ static void Soc_PutFormToShareSocialNote (long NotCod)
"</div>", "</div>",
Gbl.Prefs.IconsURL, Gbl.Prefs.IconsURL,
Txt_Share,Txt_Share); Txt_Share,Txt_Share);
Act_EndForm (); Frm_EndForm ();
} }
/*****************************************************************************/ /*****************************************************************************/
@ -2793,7 +2795,7 @@ static void Soc_PutFormToFavSocialNote (long NotCod)
"</div>", "</div>",
Gbl.Prefs.IconsURL, Gbl.Prefs.IconsURL,
Txt_Mark_as_favourite,Txt_Mark_as_favourite); Txt_Mark_as_favourite,Txt_Mark_as_favourite);
Act_EndForm (); Frm_EndForm ();
} }
/*****************************************************************************/ /*****************************************************************************/
@ -2816,7 +2818,7 @@ static void Soc_PutFormToUnshareSocialNote (long NotCod)
"</div>", "</div>",
Gbl.Prefs.IconsURL, Gbl.Prefs.IconsURL,
Txt_SOCIAL_NOTE_Shared,Txt_SOCIAL_NOTE_Shared); Txt_SOCIAL_NOTE_Shared,Txt_SOCIAL_NOTE_Shared);
Act_EndForm (); Frm_EndForm ();
} }
/*****************************************************************************/ /*****************************************************************************/
@ -2839,7 +2841,7 @@ static void Soc_PutFormToUnfavSocialNote (long NotCod)
"</div>", "</div>",
Gbl.Prefs.IconsURL, Gbl.Prefs.IconsURL,
Txt_SOCIAL_NOTE_Favourite,Txt_SOCIAL_NOTE_Favourite); Txt_SOCIAL_NOTE_Favourite,Txt_SOCIAL_NOTE_Favourite);
Act_EndForm (); Frm_EndForm ();
} }
/*****************************************************************************/ /*****************************************************************************/
@ -2862,7 +2864,7 @@ static void Soc_PutFormToUnfavSocialComment (long PubCod)
"</div>", "</div>",
Gbl.Prefs.IconsURL, Gbl.Prefs.IconsURL,
Txt_SOCIAL_NOTE_Favourite,Txt_SOCIAL_NOTE_Favourite); Txt_SOCIAL_NOTE_Favourite,Txt_SOCIAL_NOTE_Favourite);
Act_EndForm (); Frm_EndForm ();
} }
/*****************************************************************************/ /*****************************************************************************/
@ -2886,7 +2888,7 @@ static void Soc_PutFormToRemoveSocialPublishing (long NotCod)
Gbl.Prefs.IconsURL, Gbl.Prefs.IconsURL,
Txt_Remove, Txt_Remove,
Txt_Remove); Txt_Remove);
Act_EndForm (); Frm_EndForm ();
} }
/*****************************************************************************/ /*****************************************************************************/

View File

@ -42,6 +42,7 @@
#include "swad_database.h" #include "swad_database.h"
#include "swad_file_browser.h" #include "swad_file_browser.h"
#include "swad_follow.h" #include "swad_follow.h"
#include "swad_form.h"
#include "swad_forum.h" #include "swad_forum.h"
#include "swad_game.h" #include "swad_game.h"
#include "swad_global.h" #include "swad_global.h"
@ -464,7 +465,7 @@ void Sta_AskShowCrsHits (void)
Enr_CheckStdsAndPutButtonToRegisterStdsInCurrentCrs (); Enr_CheckStdsAndPutButtonToRegisterStdsInCurrentCrs ();
/***** Start form *****/ /***** Start form *****/
Act_StartFormAnchor (ActSeeAccCrs,Sta_STAT_RESULTS_SECTION_ID); Frm_StartFormAnchor (ActSeeAccCrs,Sta_STAT_RESULTS_SECTION_ID);
Grp_PutParamsCodGrps (); Grp_PutParamsCodGrps ();
Par_PutHiddenParamLong ("FirstRow",0); Par_PutHiddenParamLong ("FirstRow",0);
@ -572,7 +573,7 @@ void Sta_AskShowCrsHits (void)
Btn_PutConfirmButton (Txt_Show_hits); Btn_PutConfirmButton (Txt_Show_hits);
/***** End form *****/ /***** End form *****/
Act_EndForm (); Frm_EndForm ();
} }
} }
else // No teachers nor students found else // No teachers nor students found
@ -638,7 +639,7 @@ void Sta_AskShowGblHits (void)
fprintf (Gbl.F.Out,"</div>"); fprintf (Gbl.F.Out,"</div>");
/***** Start form *****/ /***** Start form *****/
Act_StartFormAnchor (ActSeeAccGbl,Sta_STAT_RESULTS_SECTION_ID); Frm_StartFormAnchor (ActSeeAccGbl,Sta_STAT_RESULTS_SECTION_ID);
/***** Start box and table *****/ /***** Start box and table *****/
Box_StartBoxTable (NULL,Txt_Statistics_of_all_visits,NULL, Box_StartBoxTable (NULL,Txt_Statistics_of_all_visits,NULL,
@ -733,7 +734,7 @@ void Sta_AskShowGblHits (void)
Box_EndBoxWithButton (Btn_CONFIRM_BUTTON,Txt_Show_hits); Box_EndBoxWithButton (Btn_CONFIRM_BUTTON,Txt_Show_hits);
/***** End form *****/ /***** End form *****/
Act_EndForm (); Frm_EndForm ();
} }
/*****************************************************************************/ /*****************************************************************************/
@ -1663,7 +1664,7 @@ static void Sta_ShowDetailedAccessesList (unsigned long NumRows,MYSQL_RES *mysql
/* Put link to jump to previous page (older clicks) */ /* Put link to jump to previous page (older clicks) */
if (FirstRow > 1) if (FirstRow > 1)
{ {
Act_StartFormAnchor (ActSeeAccCrs,Sta_STAT_RESULTS_SECTION_ID); Frm_StartFormAnchor (ActSeeAccCrs,Sta_STAT_RESULTS_SECTION_ID);
Sta_WriteParamsDatesSeeAccesses (); Sta_WriteParamsDatesSeeAccesses ();
Par_PutHiddenParamUnsigned ("GroupedBy",(unsigned) Sta_CLICKS_CRS_DETAILED_LIST); Par_PutHiddenParamUnsigned ("GroupedBy",(unsigned) Sta_CLICKS_CRS_DETAILED_LIST);
Par_PutHiddenParamUnsigned ("StatAct" ,(unsigned) Gbl.Stat.NumAction); Par_PutHiddenParamUnsigned ("StatAct" ,(unsigned) Gbl.Stat.NumAction);
@ -1678,13 +1679,13 @@ static void Sta_ShowDetailedAccessesList (unsigned long NumRows,MYSQL_RES *mysql
snprintf (Gbl.Title,sizeof (Gbl.Title), snprintf (Gbl.Title,sizeof (Gbl.Title),
Txt_Show_previous_X_clicks, Txt_Show_previous_X_clicks,
Gbl.Stat.RowsPerPage); Gbl.Stat.RowsPerPage);
Act_LinkFormSubmit (Gbl.Title,"TIT_TBL",NULL); Frm_LinkFormSubmit (Gbl.Title,"TIT_TBL",NULL);
fprintf (Gbl.F.Out,"<strong>&lt;%s</strong></a>", fprintf (Gbl.F.Out,"<strong>&lt;%s</strong></a>",
Txt_PAGES_Previous); Txt_PAGES_Previous);
} }
fprintf (Gbl.F.Out,"</td>"); fprintf (Gbl.F.Out,"</td>");
if (FirstRow > 1) if (FirstRow > 1)
Act_EndForm (); Frm_EndForm ();
/* Write number of current page */ /* Write number of current page */
fprintf (Gbl.F.Out,"<td class=\"DAT_N CENTER_MIDDLE\" style=\"width:60%%;\">" fprintf (Gbl.F.Out,"<td class=\"DAT_N CENTER_MIDDLE\" style=\"width:60%%;\">"
@ -1699,7 +1700,7 @@ static void Sta_ShowDetailedAccessesList (unsigned long NumRows,MYSQL_RES *mysql
/* Put link to jump to next page (more recent clicks) */ /* Put link to jump to next page (more recent clicks) */
if (LastRow < NumRows) if (LastRow < NumRows)
{ {
Act_StartFormAnchor (ActSeeAccCrs,Sta_STAT_RESULTS_SECTION_ID); Frm_StartFormAnchor (ActSeeAccCrs,Sta_STAT_RESULTS_SECTION_ID);
Sta_WriteParamsDatesSeeAccesses (); Sta_WriteParamsDatesSeeAccesses ();
Par_PutHiddenParamUnsigned ("GroupedBy",(unsigned) Sta_CLICKS_CRS_DETAILED_LIST); Par_PutHiddenParamUnsigned ("GroupedBy",(unsigned) Sta_CLICKS_CRS_DETAILED_LIST);
Par_PutHiddenParamUnsigned ("StatAct" ,(unsigned) Gbl.Stat.NumAction); Par_PutHiddenParamUnsigned ("StatAct" ,(unsigned) Gbl.Stat.NumAction);
@ -1714,14 +1715,14 @@ static void Sta_ShowDetailedAccessesList (unsigned long NumRows,MYSQL_RES *mysql
snprintf (Gbl.Title,sizeof (Gbl.Title), snprintf (Gbl.Title,sizeof (Gbl.Title),
Txt_Show_next_X_clicks, Txt_Show_next_X_clicks,
Gbl.Stat.RowsPerPage); Gbl.Stat.RowsPerPage);
Act_LinkFormSubmit (Gbl.Title,"TIT_TBL",NULL); Frm_LinkFormSubmit (Gbl.Title,"TIT_TBL",NULL);
fprintf (Gbl.F.Out,"<strong>%s&gt;</strong>" fprintf (Gbl.F.Out,"<strong>%s&gt;</strong>"
"</a>", "</a>",
Txt_PAGES_Next); Txt_PAGES_Next);
} }
fprintf (Gbl.F.Out,"</td>"); fprintf (Gbl.F.Out,"</td>");
if (LastRow < NumRows) if (LastRow < NumRows)
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</tr>"); fprintf (Gbl.F.Out,"</tr>");
Tbl_EndTable (); Tbl_EndTable ();
@ -2175,7 +2176,7 @@ static void Sta_ShowDistrAccessesPerDayAndHour (unsigned long NumRows,MYSQL_RES
fprintf (Gbl.F.Out,"<tr>" fprintf (Gbl.F.Out,"<tr>"
"<td colspan=\"26\" class=\"CENTER_MIDDLE\">"); "<td colspan=\"26\" class=\"CENTER_MIDDLE\">");
Act_StartFormAnchor (Gbl.Action.Act,Sta_STAT_RESULTS_SECTION_ID); Frm_StartFormAnchor (Gbl.Action.Act,Sta_STAT_RESULTS_SECTION_ID);
Sta_WriteParamsDatesSeeAccesses (); Sta_WriteParamsDatesSeeAccesses ();
Par_PutHiddenParamUnsigned ("GroupedBy",(unsigned) Gbl.Stat.ClicksGroupedBy); Par_PutHiddenParamUnsigned ("GroupedBy",(unsigned) Gbl.Stat.ClicksGroupedBy);
Par_PutHiddenParamUnsigned ("CountType",(unsigned) Gbl.Stat.CountType); Par_PutHiddenParamUnsigned ("CountType",(unsigned) Gbl.Stat.CountType);
@ -2205,7 +2206,7 @@ static void Sta_ShowDistrAccessesPerDayAndHour (unsigned long NumRows,MYSQL_RES
} }
fprintf (Gbl.F.Out,"</select>" fprintf (Gbl.F.Out,"</select>"
"</label>"); "</label>");
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</td>" fprintf (Gbl.F.Out,"</td>"
"</tr>"); "</tr>");
@ -3912,12 +3913,12 @@ static void Sta_ShowNumHitsPerCourse (unsigned long NumRows,
fprintf (Gbl.F.Out,"<td class=\"LOG LEFT_TOP\">"); fprintf (Gbl.F.Out,"<td class=\"LOG LEFT_TOP\">");
if (CrsOK) if (CrsOK)
{ {
Act_StartFormGoTo (ActSeeCrsInf); Frm_StartFormGoTo (ActSeeCrsInf);
Crs_PutParamCrsCod (Crs.CrsCod); Crs_PutParamCrsCod (Crs.CrsCod);
snprintf (Gbl.Title,sizeof (Gbl.Title), snprintf (Gbl.Title,sizeof (Gbl.Title),
Txt_Go_to_X, Txt_Go_to_X,
Crs.FullName); Crs.FullName);
Act_LinkFormSubmit (Gbl.Title,"LOG",NULL); Frm_LinkFormSubmit (Gbl.Title,"LOG",NULL);
fprintf (Gbl.F.Out,"%s" fprintf (Gbl.F.Out,"%s"
"</a>", "</a>",
Crs.ShrtName); Crs.ShrtName);
@ -3926,7 +3927,7 @@ static void Sta_ShowNumHitsPerCourse (unsigned long NumRows,
fprintf (Gbl.F.Out,"-"); fprintf (Gbl.F.Out,"-");
fprintf (Gbl.F.Out,"&nbsp;"); fprintf (Gbl.F.Out,"&nbsp;");
if (CrsOK) if (CrsOK)
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</td>"); fprintf (Gbl.F.Out,"</td>");
/* Draw bar proportional to number of hits */ /* Draw bar proportional to number of hits */
@ -4036,7 +4037,7 @@ void Sta_ReqShowFigures (void)
Sta_FigureType_t FigureType; Sta_FigureType_t FigureType;
/***** Form to show statistic *****/ /***** Form to show statistic *****/
Act_StartForm (ActSeeUseGbl); Frm_StartForm (ActSeeUseGbl);
/***** Start box *****/ /***** Start box *****/
Box_StartBox (NULL,Txt_Figures,NULL, Box_StartBox (NULL,Txt_Figures,NULL,
@ -4080,7 +4081,7 @@ void Sta_ReqShowFigures (void)
Box_EndBoxWithButton (Btn_CONFIRM_BUTTON,Txt_Show_statistic); Box_EndBoxWithButton (Btn_CONFIRM_BUTTON,Txt_Show_statistic);
/***** End form *****/ /***** End form *****/
Act_EndForm (); Frm_EndForm ();
} }
/*****************************************************************************/ /*****************************************************************************/
@ -5561,9 +5562,9 @@ static void Sta_ShowInss (MYSQL_RES **mysql_res,unsigned NumInss,
The_ClassForm[Gbl.Prefs.Theme]); The_ClassForm[Gbl.Prefs.Theme]);
/* Icon and name of this institution */ /* Icon and name of this institution */
Act_StartForm (ActSeeInsInf); Frm_StartForm (ActSeeInsInf);
Ins_PutParamInsCod (Ins.InsCod); Ins_PutParamInsCod (Ins.InsCod);
Act_LinkFormSubmit (Ins.ShrtName,The_ClassForm[Gbl.Prefs.Theme],NULL); Frm_LinkFormSubmit (Ins.ShrtName,The_ClassForm[Gbl.Prefs.Theme],NULL);
if (Gbl.Usrs.Listing.WithPhotos) if (Gbl.Usrs.Listing.WithPhotos)
{ {
Log_DrawLogo (Sco_SCOPE_INS,Ins.InsCod,Ins.ShrtName, Log_DrawLogo (Sco_SCOPE_INS,Ins.InsCod,Ins.ShrtName,
@ -5571,7 +5572,7 @@ static void Sta_ShowInss (MYSQL_RES **mysql_res,unsigned NumInss,
fprintf (Gbl.F.Out,"&nbsp;"); fprintf (Gbl.F.Out,"&nbsp;");
} }
fprintf (Gbl.F.Out,"%s</a>",Ins.FullName); fprintf (Gbl.F.Out,"%s</a>",Ins.FullName);
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</td>"); fprintf (Gbl.F.Out,"</td>");

View File

@ -32,6 +32,7 @@
#include <stdlib.h> // For malloc and free #include <stdlib.h> // For malloc and free
#include <string.h> // For string functions #include <string.h> // For string functions
#include "swad_form.h"
#include "swad_global.h" #include "swad_global.h"
#include "swad_ID.h" #include "swad_ID.h"
#include "swad_parameter.h" #include "swad_parameter.h"
@ -112,7 +113,7 @@ action="https://localhost/swad/es" method="post">
void Str_InsertLinks (char *Txt,unsigned long MaxLength,size_t MaxCharsURLOnScreen) void Str_InsertLinks (char *Txt,unsigned long MaxLength,size_t MaxCharsURLOnScreen)
{ {
extern const char *Txt_STR_LANG_ID[1 + Txt_NUM_LANGUAGES]; extern const char *Txt_STR_LANG_ID[1 + Txt_NUM_LANGUAGES];
char ParamsStr[Act_MAX_BYTES_PARAMS_STR]; char ParamsStr[Frm_MAX_BYTES_PARAMS_STR];
char Anchor1Nick[256 + 256 + 256 + Cns_BYTES_SESSION_ID + 256 + 256]; char Anchor1Nick[256 + 256 + 256 + Cns_BYTES_SESSION_ID + 256 + 256];
char Anchor2Nick[256 + Cry_BYTES_ENCRYPTED_STR_SHA256_BASE64]; char Anchor2Nick[256 + Cry_BYTES_ENCRYPTED_STR_SHA256_BASE64];
size_t TxtLength; size_t TxtLength;
@ -309,7 +310,7 @@ void Str_InsertLinks (char *Txt,unsigned long MaxLength,size_t MaxCharsURLOnScre
Gbl.Form.Num); Gbl.Form.Num);
/* Store first part of anchor */ /* Store first part of anchor */
Act_SetParamsForm (ParamsStr,ActSeeOthPubPrf,true); Frm_SetParamsForm (ParamsStr,ActSeeOthPubPrf,true);
snprintf (Anchor1Nick,sizeof (Anchor1Nick), snprintf (Anchor1Nick,sizeof (Anchor1Nick),
"<form method=\"post\" action=\"%s/%s\" id=\"%s\">" "<form method=\"post\" action=\"%s/%s\" id=\"%s\">"
"%s" "%s"

View File

@ -32,6 +32,7 @@
#include "swad_box.h" #include "swad_box.h"
#include "swad_database.h" #include "swad_database.h"
#include "swad_form.h"
#include "swad_global.h" #include "swad_global.h"
#include "swad_group.h" #include "swad_group.h"
#include "swad_notification.h" #include "swad_notification.h"
@ -241,18 +242,18 @@ static void Svy_ListAllSurveys (struct SurveyQuestion *SvyQst)
fprintf (Gbl.F.Out,"<th class=\"LEFT_MIDDLE\">"); fprintf (Gbl.F.Out,"<th class=\"LEFT_MIDDLE\">");
/* Form to change order */ /* Form to change order */
Act_StartForm (ActSeeAllSvy); Frm_StartForm (ActSeeAllSvy);
Grp_PutParamWhichGrps (); Grp_PutParamWhichGrps ();
Pag_PutHiddenParamPagNum (Pag_SURVEYS,Gbl.Svys.CurrentPage); Pag_PutHiddenParamPagNum (Pag_SURVEYS,Gbl.Svys.CurrentPage);
Par_PutHiddenParamUnsigned ("Order",(unsigned) Order); Par_PutHiddenParamUnsigned ("Order",(unsigned) Order);
Act_LinkFormSubmit (Txt_START_END_TIME_HELP[Order],"TIT_TBL",NULL); Frm_LinkFormSubmit (Txt_START_END_TIME_HELP[Order],"TIT_TBL",NULL);
if (Order == Gbl.Svys.SelectedOrder) if (Order == Gbl.Svys.SelectedOrder)
fprintf (Gbl.F.Out,"<u>"); fprintf (Gbl.F.Out,"<u>");
fprintf (Gbl.F.Out,"%s",Txt_START_END_TIME[Order]); fprintf (Gbl.F.Out,"%s",Txt_START_END_TIME[Order]);
if (Order == Gbl.Svys.SelectedOrder) if (Order == Gbl.Svys.SelectedOrder)
fprintf (Gbl.F.Out,"</u>"); fprintf (Gbl.F.Out,"</u>");
fprintf (Gbl.F.Out,"</a>"); fprintf (Gbl.F.Out,"</a>");
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</th>"); fprintf (Gbl.F.Out,"</th>");
} }
@ -356,10 +357,10 @@ static void Svy_PutButtonToCreateNewSvy (void)
{ {
extern const char *Txt_New_survey; extern const char *Txt_New_survey;
Act_StartForm (ActFrmNewSvy); Frm_StartForm (ActFrmNewSvy);
Svy_PutParamsToCreateNewSvy (); Svy_PutParamsToCreateNewSvy ();
Btn_PutConfirmButton (Txt_New_survey); Btn_PutConfirmButton (Txt_New_survey);
Act_EndForm (); Frm_EndForm ();
} }
/*****************************************************************************/ /*****************************************************************************/
@ -509,17 +510,17 @@ static void Svy_ShowOneSurvey (long SvyCod,struct SurveyQuestion *SvyQst,
fprintf (Gbl.F.Out,"\">"); fprintf (Gbl.F.Out,"\">");
/* Put form to view survey */ /* Put form to view survey */
Act_StartForm (ActSeeOneSvy); Frm_StartForm (ActSeeOneSvy);
Svy_PutParamSvyCod (SvyCod); Svy_PutParamSvyCod (SvyCod);
Svy_PutHiddenParamSvyOrder (); Svy_PutHiddenParamSvyOrder ();
Grp_PutParamWhichGrps (); Grp_PutParamWhichGrps ();
Pag_PutHiddenParamPagNum (Pag_SURVEYS,Gbl.Svys.CurrentPage); Pag_PutHiddenParamPagNum (Pag_SURVEYS,Gbl.Svys.CurrentPage);
Act_LinkFormSubmit (Txt_View_survey, Frm_LinkFormSubmit (Txt_View_survey,
Svy.Status.Visible ? "ASG_TITLE" : Svy.Status.Visible ? "ASG_TITLE" :
"ASG_TITLE_LIGHT",NULL); "ASG_TITLE_LIGHT",NULL);
fprintf (Gbl.F.Out,"%s</a>", fprintf (Gbl.F.Out,"%s</a>",
Svy.Title); Svy.Title);
Act_EndForm (); Frm_EndForm ();
/* Number of questions and number of distinct users who have already answered this survey */ /* Number of questions and number of distinct users who have already answered this survey */
fprintf (Gbl.F.Out,"<div class=\"%s\">%s: %u; %s: %u</div>" fprintf (Gbl.F.Out,"<div class=\"%s\">%s: %u; %s: %u</div>"
@ -545,13 +546,13 @@ static void Svy_ShowOneSurvey (long SvyCod,struct SurveyQuestion *SvyQst,
{ {
fprintf (Gbl.F.Out,"<div class=\"BUTTONS_AFTER_ALERT\">"); fprintf (Gbl.F.Out,"<div class=\"BUTTONS_AFTER_ALERT\">");
Act_StartForm (ActSeeOneSvy); Frm_StartForm (ActSeeOneSvy);
Svy_PutParamSvyCod (Svy.SvyCod); Svy_PutParamSvyCod (Svy.SvyCod);
Svy_PutHiddenParamSvyOrder (); Svy_PutHiddenParamSvyOrder ();
Grp_PutParamWhichGrps (); Grp_PutParamWhichGrps ();
Pag_PutHiddenParamPagNum (Pag_SURVEYS,Gbl.Svys.CurrentPage); Pag_PutHiddenParamPagNum (Pag_SURVEYS,Gbl.Svys.CurrentPage);
Btn_PutCreateButtonInline (Txt_Answer_survey); Btn_PutCreateButtonInline (Txt_Answer_survey);
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</div>"); fprintf (Gbl.F.Out,"</div>");
} }
@ -560,13 +561,13 @@ static void Svy_ShowOneSurvey (long SvyCod,struct SurveyQuestion *SvyQst,
{ {
fprintf (Gbl.F.Out,"<div class=\"BUTTONS_AFTER_ALERT\">"); fprintf (Gbl.F.Out,"<div class=\"BUTTONS_AFTER_ALERT\">");
Act_StartForm (ActSeeOneSvy); Frm_StartForm (ActSeeOneSvy);
Svy_PutParamSvyCod (Svy.SvyCod); Svy_PutParamSvyCod (Svy.SvyCod);
Svy_PutHiddenParamSvyOrder (); Svy_PutHiddenParamSvyOrder ();
Grp_PutParamWhichGrps (); Grp_PutParamWhichGrps ();
Pag_PutHiddenParamPagNum (Pag_SURVEYS,Gbl.Svys.CurrentPage); Pag_PutHiddenParamPagNum (Pag_SURVEYS,Gbl.Svys.CurrentPage);
Btn_PutConfirmButtonInline (Txt_View_survey_results); Btn_PutConfirmButtonInline (Txt_View_survey_results);
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</div>"); fprintf (Gbl.F.Out,"</div>");
} }
@ -1626,10 +1627,10 @@ static void Svy_PutButtonToResetSurvey (void)
{ {
extern const char *Txt_Reset_survey; extern const char *Txt_Reset_survey;
Act_StartForm (ActRstSvy); Frm_StartForm (ActRstSvy);
Svy_PutParams (); Svy_PutParams ();
Btn_PutRemoveButton (Txt_Reset_survey); Btn_PutRemoveButton (Txt_Reset_survey);
Act_EndForm (); Frm_EndForm ();
} }
/*****************************************************************************/ /*****************************************************************************/
@ -1838,7 +1839,7 @@ void Svy_RequestCreatOrEditSvy (void)
/***** Start form *****/ /***** Start form *****/
Gbl.Svys.SvyCodToEdit = Svy.SvyCod; Gbl.Svys.SvyCodToEdit = Svy.SvyCod;
Act_StartForm (ItsANewSurvey ? ActNewSvy : Frm_StartForm (ItsANewSurvey ? ActNewSvy :
ActChgSvy); ActChgSvy);
Svy_PutParams (); Svy_PutParams ();
@ -1926,7 +1927,7 @@ void Svy_RequestCreatOrEditSvy (void)
Box_EndBoxTableWithButton (Btn_CONFIRM_BUTTON,Txt_Save); Box_EndBoxTableWithButton (Btn_CONFIRM_BUTTON,Txt_Save);
/***** End form *****/ /***** End form *****/
Act_EndForm (); Frm_EndForm ();
/***** Show questions of the survey ready to be edited *****/ /***** Show questions of the survey ready to be edited *****/
if (!ItsANewSurvey) if (!ItsANewSurvey)
@ -2681,7 +2682,7 @@ static void Svy_ShowFormEditOneQst (long SvyCod,struct SurveyQuestion *SvyQst,
Hlp_ASSESSMENT_Surveys_questions,Box_NOT_CLOSABLE); Hlp_ASSESSMENT_Surveys_questions,Box_NOT_CLOSABLE);
/***** Start form *****/ /***** Start form *****/
Act_StartForm (ActRcvSvyQst); Frm_StartForm (ActRcvSvyQst);
Svy_PutParamSvyCod (SvyCod); Svy_PutParamSvyCod (SvyCod);
if (SvyQst->QstCod > 0) // If the question already has assigned a code if (SvyQst->QstCod > 0) // If the question already has assigned a code
Svy_PutParamQstCod (SvyQst->QstCod); Svy_PutParamQstCod (SvyQst->QstCod);
@ -2773,7 +2774,7 @@ static void Svy_ShowFormEditOneQst (long SvyCod,struct SurveyQuestion *SvyQst,
Btn_PutCreateButton (Txt_Create_question); Btn_PutCreateButton (Txt_Create_question);
/***** End form *****/ /***** End form *****/
Act_EndForm (); Frm_EndForm ();
/***** End box *****/ /***** End box *****/
Box_EndBox (); Box_EndBox ();
@ -3194,7 +3195,7 @@ static void Svy_ListSvyQuestions (struct Survey *Svy,
if (PutFormAnswerSurvey) if (PutFormAnswerSurvey)
{ {
/***** Start form to send answers to survey *****/ /***** Start form to send answers to survey *****/
Act_StartForm (ActAnsSvy); Frm_StartForm (ActAnsSvy);
Svy_PutParamSvyCod (Svy->SvyCod); Svy_PutParamSvyCod (Svy->SvyCod);
} }
@ -3237,11 +3238,11 @@ static void Svy_ListSvyQuestions (struct Survey *Svy,
fprintf (Gbl.F.Out,"<td class=\"BT%u\">",Gbl.RowEvenOdd); fprintf (Gbl.F.Out,"<td class=\"BT%u\">",Gbl.RowEvenOdd);
/* Write icon to remove the question */ /* Write icon to remove the question */
Act_StartForm (ActReqRemSvyQst); Frm_StartForm (ActReqRemSvyQst);
Svy_PutParamSvyCod (Svy->SvyCod); Svy_PutParamSvyCod (Svy->SvyCod);
Svy_PutParamQstCod (SvyQst->QstCod); Svy_PutParamQstCod (SvyQst->QstCod);
Ico_PutIconRemove (); Ico_PutIconRemove ();
Act_EndForm (); Frm_EndForm ();
/* Write icon to edit the question */ /* Write icon to edit the question */
Gbl.Svys.SvyCodToEdit = Svy->SvyCod; Gbl.Svys.SvyCodToEdit = Svy->SvyCod;
@ -3284,7 +3285,7 @@ static void Svy_ListSvyQuestions (struct Survey *Svy,
Btn_PutConfirmButton (Txt_Done); Btn_PutConfirmButton (Txt_Done);
/***** End form *****/ /***** End form *****/
Act_EndForm (); Frm_EndForm ();
} }
} }
else // This survey has no questions else // This survey has no questions
@ -3336,10 +3337,10 @@ static void Svy_PutButtonToCreateNewQuestion (void)
{ {
extern const char *Txt_New_question; extern const char *Txt_New_question;
Act_StartForm (ActEdiOneSvyQst); Frm_StartForm (ActEdiOneSvyQst);
Svy_PutParams (); Svy_PutParams ();
Btn_PutConfirmButton (Txt_New_question); Btn_PutConfirmButton (Txt_New_question);
Act_EndForm (); Frm_EndForm ();
} }
/*****************************************************************************/ /*****************************************************************************/

View File

@ -37,6 +37,7 @@
#include "swad_changelog.h" #include "swad_changelog.h"
#include "swad_config.h" #include "swad_config.h"
#include "swad_database.h" #include "swad_database.h"
#include "swad_form.h"
#include "swad_global.h" #include "swad_global.h"
#include "swad_parameter.h" #include "swad_parameter.h"
#include "swad_string.h" #include "swad_string.h"
@ -140,7 +141,7 @@ void Syl_PutFormWhichSyllabus (void)
/***** Form to select which forums I want to see /***** Form to select which forums I want to see
(all my forums or only the forums of current institution/degree/course) *****/ (all my forums or only the forums of current institution/degree/course) *****/
Act_StartForm (ActSeeSyl); Frm_StartForm (ActSeeSyl);
fprintf (Gbl.F.Out,"<div class=\"CENTER_MIDDLE\">" fprintf (Gbl.F.Out,"<div class=\"CENTER_MIDDLE\">"
"<ul class=\"LIST_LEFT\" style=\"margin:12px;\">"); "<ul class=\"LIST_LEFT\" style=\"margin:12px;\">");
@ -163,7 +164,7 @@ void Syl_PutFormWhichSyllabus (void)
} }
fprintf (Gbl.F.Out,"</ul>" fprintf (Gbl.F.Out,"</ul>"
"</div>"); "</div>");
Act_EndForm (); Frm_EndForm ();
} }
/*****************************************************************************/ /*****************************************************************************/
@ -247,9 +248,9 @@ bool Syl_CheckAndEditSyllabus (void)
if (Gbl.Syllabus.EditionIsActive) if (Gbl.Syllabus.EditionIsActive)
{ {
/***** Button to view *****/ /***** Button to view *****/
Act_StartForm (Inf_ActionsSeeInfo[Gbl.CurrentCrs.Info.Type]); Frm_StartForm (Inf_ActionsSeeInfo[Gbl.CurrentCrs.Info.Type]);
Btn_PutConfirmButton (Txt_Done); Btn_PutConfirmButton (Txt_Done);
Act_EndForm (); Frm_EndForm ();
} }
/***** End box *****/ /***** End box *****/
@ -610,11 +611,11 @@ static void Syl_ShowRowSyllabus (unsigned NumItem,
Ico_PutIconRemovalNotAllowed (); Ico_PutIconRemovalNotAllowed ();
else else
{ {
Act_StartForm (Gbl.CurrentCrs.Info.Type == Inf_LECTURES ? ActDelItmSylLec : Frm_StartForm (Gbl.CurrentCrs.Info.Type == Inf_LECTURES ? ActDelItmSylLec :
ActDelItmSylPra); ActDelItmSylPra);
Syl_PutParamNumItem (); Syl_PutParamNumItem ();
Ico_PutIconRemove (); Ico_PutIconRemove ();
Act_EndForm (); Frm_EndForm ();
} }
fprintf (Gbl.F.Out,"</td>"); fprintf (Gbl.F.Out,"</td>");
@ -912,7 +913,7 @@ static void Syl_PutFormItemSyllabus (bool NewItem,unsigned NumItem,int Level,int
/***** Text of the item *****/ /***** Text of the item *****/
fprintf (Gbl.F.Out,"<td colspan=\"%d\" class=\"LEFT_MIDDLE COLOR%u\">", fprintf (Gbl.F.Out,"<td colspan=\"%d\" class=\"LEFT_MIDDLE COLOR%u\">",
LstItemsSyllabus.NumLevels - Level + 1,Gbl.RowEvenOdd); LstItemsSyllabus.NumLevels - Level + 1,Gbl.RowEvenOdd);
Act_StartForm (NewItem ? (Gbl.CurrentCrs.Info.Type == Inf_LECTURES ? ActInsIteSylLec : Frm_StartForm (NewItem ? (Gbl.CurrentCrs.Info.Type == Inf_LECTURES ? ActInsIteSylLec :
ActInsIteSylPra) : ActInsIteSylPra) :
(Gbl.CurrentCrs.Info.Type == Inf_LECTURES ? ActModIteSylLec : (Gbl.CurrentCrs.Info.Type == Inf_LECTURES ? ActModIteSylLec :
ActModIteSylPra)); ActModIteSylPra));
@ -927,7 +928,7 @@ static void Syl_PutFormItemSyllabus (bool NewItem,unsigned NumItem,int Level,int
fprintf (Gbl.F.Out," autofocus=\"autofocus\""); fprintf (Gbl.F.Out," autofocus=\"autofocus\"");
fprintf (Gbl.F.Out," onchange=\"document.getElementById('%s').submit();\" />", fprintf (Gbl.F.Out," onchange=\"document.getElementById('%s').submit();\" />",
Gbl.Form.Id); Gbl.Form.Id);
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</td>"); fprintf (Gbl.F.Out,"</td>");
} }

View File

@ -25,6 +25,7 @@
/********************************* Headers ***********************************/ /********************************* Headers ***********************************/
/*****************************************************************************/ /*****************************************************************************/
#include "swad_form.h"
#include "swad_global.h" #include "swad_global.h"
#include "swad_parameter.h" #include "swad_parameter.h"
#include "swad_tab.h" #include "swad_tab.h"
@ -131,9 +132,9 @@ void Tab_DrawTabs (void)
fprintf (Gbl.F.Out," class=\"ICO_HIGHLIGHT\""); fprintf (Gbl.F.Out," class=\"ICO_HIGHLIGHT\"");
fprintf (Gbl.F.Out,">"); fprintf (Gbl.F.Out,">");
Act_StartForm (ActMnu); Frm_StartForm (ActMnu);
Par_PutHiddenParamUnsigned ("NxtTab",(unsigned) NumTab); Par_PutHiddenParamUnsigned ("NxtTab",(unsigned) NumTab);
Act_LinkFormSubmit (Txt_TABS_TXT[NumTab], Frm_LinkFormSubmit (Txt_TABS_TXT[NumTab],
NumTab == Gbl.Action.Tab ? The_ClassTxtTabOn[Gbl.Prefs.Theme] : NumTab == Gbl.Action.Tab ? The_ClassTxtTabOn[Gbl.Prefs.Theme] :
The_ClassTxtTabOff[Gbl.Prefs.Theme],NULL); The_ClassTxtTabOff[Gbl.Prefs.Theme],NULL);
fprintf (Gbl.F.Out,"<img src=\"%s/%s/%s\" alt=\"%s\" title=\"%s\"" fprintf (Gbl.F.Out,"<img src=\"%s/%s/%s\" alt=\"%s\" title=\"%s\""
@ -147,7 +148,7 @@ void Tab_DrawTabs (void)
NumTab == Gbl.Action.Tab ? The_ClassTxtTabOn[Gbl.Prefs.Theme] : NumTab == Gbl.Action.Tab ? The_ClassTxtTabOn[Gbl.Prefs.Theme] :
The_ClassTxtTabOff[Gbl.Prefs.Theme], The_ClassTxtTabOff[Gbl.Prefs.Theme],
Txt_TABS_TXT[NumTab]); Txt_TABS_TXT[NumTab]);
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</div>" fprintf (Gbl.F.Out,"</div>"
"</li>"); "</li>");
@ -243,11 +244,11 @@ static void Tab_WriteBreadcrumbHome (void)
extern const char *The_ClassTxtTabOn[The_NUM_THEMES]; extern const char *The_ClassTxtTabOn[The_NUM_THEMES];
extern const char *Txt_Home_PAGE; extern const char *Txt_Home_PAGE;
Act_StartForm (ActHom); Frm_StartForm (ActHom);
Act_LinkFormSubmit (Txt_Home_PAGE,The_ClassTxtTabOn[Gbl.Prefs.Theme],NULL); Frm_LinkFormSubmit (Txt_Home_PAGE,The_ClassTxtTabOn[Gbl.Prefs.Theme],NULL);
fprintf (Gbl.F.Out,"%s</a>", fprintf (Gbl.F.Out,"%s</a>",
Txt_Home_PAGE); Txt_Home_PAGE);
Act_EndForm (); Frm_EndForm ();
} }
/*****************************************************************************/ /*****************************************************************************/
@ -260,13 +261,13 @@ static void Tab_WriteBreadcrumbTab (void)
extern const char *Txt_TABS_TXT[Tab_NUM_TABS]; extern const char *Txt_TABS_TXT[Tab_NUM_TABS];
/***** Start form *****/ /***** Start form *****/
Act_StartForm (ActMnu); Frm_StartForm (ActMnu);
Par_PutHiddenParamUnsigned ("NxtTab",(unsigned) Gbl.Action.Tab); Par_PutHiddenParamUnsigned ("NxtTab",(unsigned) Gbl.Action.Tab);
Act_LinkFormSubmit (Txt_TABS_TXT[Gbl.Action.Tab],The_ClassTxtTabOn[Gbl.Prefs.Theme],NULL); Frm_LinkFormSubmit (Txt_TABS_TXT[Gbl.Action.Tab],The_ClassTxtTabOn[Gbl.Prefs.Theme],NULL);
/***** Title and end form *****/ /***** Title and end form *****/
fprintf (Gbl.F.Out,"%s</a>",Txt_TABS_TXT[Gbl.Action.Tab]); fprintf (Gbl.F.Out,"%s</a>",Txt_TABS_TXT[Gbl.Action.Tab]);
Act_EndForm (); Frm_EndForm ();
} }
/*****************************************************************************/ /*****************************************************************************/
@ -279,13 +280,13 @@ static void Tab_WriteBreadcrumbAction (void)
const char *Title = Act_GetTitleAction (Gbl.Action.Act); const char *Title = Act_GetTitleAction (Gbl.Action.Act);
/***** Start form *****/ /***** Start form *****/
Act_StartForm (Act_GetSuperAction (Gbl.Action.Act)); Frm_StartForm (Act_GetSuperAction (Gbl.Action.Act));
Act_LinkFormSubmit (Title,The_ClassTxtTabOn[Gbl.Prefs.Theme],NULL); Frm_LinkFormSubmit (Title,The_ClassTxtTabOn[Gbl.Prefs.Theme],NULL);
/***** Title and end form *****/ /***** Title and end form *****/
fprintf (Gbl.F.Out,"%s</a>", fprintf (Gbl.F.Out,"%s</a>",
Title); Title);
Act_EndForm (); Frm_EndForm ();
} }
/*****************************************************************************/ /*****************************************************************************/

View File

@ -39,6 +39,7 @@
#include "swad_action.h" #include "swad_action.h"
#include "swad_box.h" #include "swad_box.h"
#include "swad_database.h" #include "swad_database.h"
#include "swad_form.h"
#include "swad_global.h" #include "swad_global.h"
#include "swad_ID.h" #include "swad_ID.h"
#include "swad_image.h" #include "swad_image.h"
@ -341,7 +342,7 @@ void Tst_ShowFormAskTst (void)
/***** Check if minimum date-time of next access to test is older than now *****/ /***** Check if minimum date-time of next access to test is older than now *****/
if (Tst_CheckIfNextTstAllowed ()) if (Tst_CheckIfNextTstAllowed ())
{ {
Act_StartForm (ActSeeTst); Frm_StartForm (ActSeeTst);
Tbl_StartTable (2); Tbl_StartTable (2);
@ -376,7 +377,7 @@ void Tst_ShowFormAskTst (void)
/***** Send button *****/ /***** Send button *****/
Btn_PutConfirmButton (Txt_Generate_test); Btn_PutConfirmButton (Txt_Generate_test);
Act_EndForm (); Frm_EndForm ();
} }
} }
else else
@ -458,7 +459,7 @@ void Tst_ShowNewTest (void)
Gbl.CurrentCrs.Crs.CrsCod); Gbl.CurrentCrs.Crs.CrsCod);
/***** Start form *****/ /***** Start form *****/
Act_StartForm (ActAssTst); Frm_StartForm (ActAssTst);
Gbl.Test.NumQsts = (unsigned) NumRows; Gbl.Test.NumQsts = (unsigned) NumRows;
Par_PutHiddenParamUnsigned ("NumTst",NumAccessesTst); Par_PutHiddenParamUnsigned ("NumTst",NumAccessesTst);
Par_PutHiddenParamUnsigned ("NumQst",Gbl.Test.NumQsts); Par_PutHiddenParamUnsigned ("NumQst",Gbl.Test.NumQsts);
@ -485,7 +486,7 @@ void Tst_ShowNewTest (void)
/***** End form *****/ /***** End form *****/
Btn_PutConfirmButton (Txt_Done_assess_test); Btn_PutConfirmButton (Txt_Done_assess_test);
Act_EndForm (); Frm_EndForm ();
/***** End box *****/ /***** End box *****/
Box_EndBox (); Box_EndBox ();
@ -1323,7 +1324,7 @@ void Tst_ShowFormAskEditTsts (void)
/***** Get tags already present in the table of questions *****/ /***** Get tags already present in the table of questions *****/
if ((NumRows = Tst_GetAllTagsFromCurrentCrs (&mysql_res))) if ((NumRows = Tst_GetAllTagsFromCurrentCrs (&mysql_res)))
{ {
Act_StartForm (ActLstTstQst); Frm_StartForm (ActLstTstQst);
Par_PutHiddenParamUnsigned ("Order",(unsigned) Tst_ORDER_STEM); Par_PutHiddenParamUnsigned ("Order",(unsigned) Tst_ORDER_STEM);
Tbl_StartTable (2); Tbl_StartTable (2);
@ -1341,7 +1342,7 @@ void Tst_ShowFormAskEditTsts (void)
/***** Send button *****/ /***** Send button *****/
Btn_PutConfirmButton (Txt_Show_questions); Btn_PutConfirmButton (Txt_Show_questions);
Act_EndForm (); Frm_EndForm ();
} }
else // No test questions else // No test questions
{ {
@ -1379,7 +1380,7 @@ void Tst_ShowFormAskSelectTstsForGame (long GamCod)
/***** Get tags already present in the table of questions *****/ /***** Get tags already present in the table of questions *****/
if ((NumRows = Tst_GetAllTagsFromCurrentCrs (&mysql_res))) if ((NumRows = Tst_GetAllTagsFromCurrentCrs (&mysql_res)))
{ {
Act_StartForm (ActGamLstTstQst); Frm_StartForm (ActGamLstTstQst);
Gam_PutParamGameCod (GamCod); Gam_PutParamGameCod (GamCod);
Tbl_StartTable (2); Tbl_StartTable (2);
@ -1394,7 +1395,7 @@ void Tst_ShowFormAskSelectTstsForGame (long GamCod)
/***** Send button *****/ /***** Send button *****/
Btn_PutConfirmButton (Txt_Show_questions); Btn_PutConfirmButton (Txt_Show_questions);
Act_EndForm (); Frm_EndForm ();
} }
else // No test questions else // No test questions
{ {
@ -1465,9 +1466,9 @@ static void Tst_PutButtonToAddQuestion (void)
{ {
extern const char *Txt_New_question; extern const char *Txt_New_question;
Act_StartForm (ActEdiOneTstQst); Frm_StartForm (ActEdiOneTstQst);
Btn_PutConfirmButton (Txt_New_question); Btn_PutConfirmButton (Txt_New_question);
Act_EndForm (); Frm_EndForm ();
} }
/*****************************************************************************/ /*****************************************************************************/
@ -1845,13 +1846,13 @@ static void Tst_ShowFormEditTags (void)
/* Form to rename this tag */ /* Form to rename this tag */
fprintf (Gbl.F.Out,"<td class=\"LEFT_MIDDLE\">"); fprintf (Gbl.F.Out,"<td class=\"LEFT_MIDDLE\">");
Act_StartForm (ActRenTag); Frm_StartForm (ActRenTag);
Par_PutHiddenParamString ("OldTagTxt",row[1]); Par_PutHiddenParamString ("OldTagTxt",row[1]);
fprintf (Gbl.F.Out,"<input type=\"text\" name=\"NewTagTxt\"" fprintf (Gbl.F.Out,"<input type=\"text\" name=\"NewTagTxt\""
" size=\"36\" maxlength=\"%u\" value=\"%s\"" " size=\"36\" maxlength=\"%u\" value=\"%s\""
" onchange=\"document.getElementById('%s').submit();\" />", " onchange=\"document.getElementById('%s').submit();\" />",
Tst_MAX_CHARS_TAG,row[1],Gbl.Form.Id); Tst_MAX_CHARS_TAG,row[1],Gbl.Form.Id);
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</td>" fprintf (Gbl.F.Out,"</td>"
"</tr>"); "</tr>");
} }
@ -1875,7 +1876,7 @@ static void Tst_PutIconEnable (long TagCod,const char *TagTxt)
extern const char *Txt_Tag_X_not_allowed_Click_to_allow_it; extern const char *Txt_Tag_X_not_allowed_Click_to_allow_it;
fprintf (Gbl.F.Out,"<td class=\"BM\">"); fprintf (Gbl.F.Out,"<td class=\"BM\">");
Act_StartForm (ActEnableTag); Frm_StartForm (ActEnableTag);
Par_PutHiddenParamLong ("TagCod",TagCod); Par_PutHiddenParamLong ("TagCod",TagCod);
snprintf (Gbl.Title,sizeof (Gbl.Title), snprintf (Gbl.Title,sizeof (Gbl.Title),
Txt_Tag_X_not_allowed_Click_to_allow_it, Txt_Tag_X_not_allowed_Click_to_allow_it,
@ -1886,7 +1887,7 @@ static void Tst_PutIconEnable (long TagCod,const char *TagTxt)
Gbl.Prefs.IconsURL, Gbl.Prefs.IconsURL,
Gbl.Title, Gbl.Title,
Gbl.Title); Gbl.Title);
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</td>"); fprintf (Gbl.F.Out,"</td>");
} }
@ -1899,7 +1900,7 @@ static void Tst_PutIconDisable (long TagCod,const char *TagTxt)
extern const char *Txt_Tag_X_allowed_Click_to_disable_it; extern const char *Txt_Tag_X_allowed_Click_to_disable_it;
fprintf (Gbl.F.Out,"<td class=\"BM\">"); fprintf (Gbl.F.Out,"<td class=\"BM\">");
Act_StartForm (ActDisableTag); Frm_StartForm (ActDisableTag);
Par_PutHiddenParamLong ("TagCod",TagCod); Par_PutHiddenParamLong ("TagCod",TagCod);
snprintf (Gbl.Title,sizeof (Gbl.Title), snprintf (Gbl.Title,sizeof (Gbl.Title),
Txt_Tag_X_allowed_Click_to_disable_it, Txt_Tag_X_allowed_Click_to_disable_it,
@ -1910,7 +1911,7 @@ static void Tst_PutIconDisable (long TagCod,const char *TagTxt)
Gbl.Prefs.IconsURL, Gbl.Prefs.IconsURL,
Gbl.Title, Gbl.Title,
Gbl.Title); Gbl.Title);
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</td>"); fprintf (Gbl.F.Out,"</td>");
} }
@ -1944,7 +1945,7 @@ static void Tst_ShowFormConfigTst (void)
Hlp_ASSESSMENT_Tests,Box_NOT_CLOSABLE); Hlp_ASSESSMENT_Tests,Box_NOT_CLOSABLE);
/***** Start form *****/ /***** Start form *****/
Act_StartForm (ActRcvCfgTst); Frm_StartForm (ActRcvCfgTst);
/***** Tests are visible from plugins? *****/ /***** Tests are visible from plugins? *****/
Tbl_StartTable (2); Tbl_StartTable (2);
@ -2038,7 +2039,7 @@ static void Tst_ShowFormConfigTst (void)
Btn_PutConfirmButton (Txt_Save); Btn_PutConfirmButton (Txt_Save);
/***** End form *****/ /***** End form *****/
Act_EndForm (); Frm_EndForm ();
/***** End box *****/ /***** End box *****/
Box_EndBox (); Box_EndBox ();
@ -2909,11 +2910,11 @@ static void Tst_ListOneOrMoreQuestionsForEdition (unsigned long NumRows,
fprintf (Gbl.F.Out,"<th class=\"LEFT_TOP\">"); fprintf (Gbl.F.Out,"<th class=\"LEFT_TOP\">");
if (NumRows > 1) if (NumRows > 1)
{ {
Act_StartForm (ActLstTstQst); Frm_StartForm (ActLstTstQst);
Sta_WriteParamsDatesSeeAccesses (); Sta_WriteParamsDatesSeeAccesses ();
Tst_WriteParamEditQst (); Tst_WriteParamEditQst ();
Par_PutHiddenParamUnsigned ("Order",(unsigned) Order); Par_PutHiddenParamUnsigned ("Order",(unsigned) Order);
Act_LinkFormSubmit (Txt_TST_STR_ORDER_FULL[Order],"TIT_TBL",NULL); Frm_LinkFormSubmit (Txt_TST_STR_ORDER_FULL[Order],"TIT_TBL",NULL);
if (Order == Gbl.Test.SelectedOrder) if (Order == Gbl.Test.SelectedOrder)
fprintf (Gbl.F.Out,"<u>"); fprintf (Gbl.F.Out,"<u>");
} }
@ -2923,7 +2924,7 @@ static void Tst_ListOneOrMoreQuestionsForEdition (unsigned long NumRows,
if (Order == Gbl.Test.SelectedOrder) if (Order == Gbl.Test.SelectedOrder)
fprintf (Gbl.F.Out,"</u>"); fprintf (Gbl.F.Out,"</u>");
fprintf (Gbl.F.Out,"</a>"); fprintf (Gbl.F.Out,"</a>");
Act_EndForm (); Frm_EndForm ();
} }
fprintf (Gbl.F.Out,"</th>"); fprintf (Gbl.F.Out,"</th>");
} }
@ -2964,14 +2965,14 @@ static void Tst_ListOneOrMoreQuestionsForEdition (unsigned long NumRows,
"<td class=\"BT%u\">",Gbl.RowEvenOdd); "<td class=\"BT%u\">",Gbl.RowEvenOdd);
/* Write icon to remove the question */ /* Write icon to remove the question */
Act_StartForm (ActReqRemTstQst); Frm_StartForm (ActReqRemTstQst);
Tst_PutParamQstCod (); Tst_PutParamQstCod ();
if (NumRows == 1) if (NumRows == 1)
Par_PutHiddenParamChar ("OnlyThisQst",'Y'); // If there are only one row, don't list again after removing Par_PutHiddenParamChar ("OnlyThisQst",'Y'); // If there are only one row, don't list again after removing
Sta_WriteParamsDatesSeeAccesses (); Sta_WriteParamsDatesSeeAccesses ();
Tst_WriteParamEditQst (); Tst_WriteParamEditQst ();
Ico_PutIconRemove (); Ico_PutIconRemove ();
Act_EndForm (); Frm_EndForm ();
/* Write icon to edit the question */ /* Write icon to edit the question */
Ico_PutContextualIconToEdit (ActEdiOneTstQst,Tst_PutParamQstCod); Ico_PutContextualIconToEdit (ActEdiOneTstQst,Tst_PutParamQstCod);
@ -3021,7 +3022,7 @@ static void Tst_ListOneOrMoreQuestionsForEdition (unsigned long NumRows,
if (Gbl.Test.AnswerType == Tst_ANS_UNIQUE_CHOICE || if (Gbl.Test.AnswerType == Tst_ANS_UNIQUE_CHOICE ||
Gbl.Test.AnswerType == Tst_ANS_MULTIPLE_CHOICE) Gbl.Test.AnswerType == Tst_ANS_MULTIPLE_CHOICE)
{ {
Act_StartForm (ActShfTstQst); Frm_StartForm (ActShfTstQst);
Tst_PutParamQstCod (); Tst_PutParamQstCod ();
Sta_WriteParamsDatesSeeAccesses (); Sta_WriteParamsDatesSeeAccesses ();
Tst_WriteParamEditQst (); Tst_WriteParamEditQst ();
@ -3033,7 +3034,7 @@ static void Tst_ListOneOrMoreQuestionsForEdition (unsigned long NumRows,
fprintf (Gbl.F.Out," checked=\"checked\""); fprintf (Gbl.F.Out," checked=\"checked\"");
fprintf (Gbl.F.Out," onclick=\"document.getElementById('%s').submit();\" />", fprintf (Gbl.F.Out," onclick=\"document.getElementById('%s').submit();\" />",
Gbl.Form.Id); Gbl.Form.Id);
Act_EndForm (); Frm_EndForm ();
} }
fprintf (Gbl.F.Out,"</td>"); fprintf (Gbl.F.Out,"</td>");
@ -3146,7 +3147,7 @@ static void Tst_ListOneOrMoreQuestionsForSelection (long GamCod,
Hlp_ASSESSMENT_Tests,Box_NOT_CLOSABLE); Hlp_ASSESSMENT_Tests,Box_NOT_CLOSABLE);
/***** Start form *****/ /***** Start form *****/
Act_StartForm (ActAddTstQstToGam); Frm_StartForm (ActAddTstQstToGam);
Gam_PutParamGameCod (GamCod); Gam_PutParamGameCod (GamCod);
/***** Write the heading *****/ /***** Write the heading *****/
@ -3296,7 +3297,7 @@ static void Tst_ListOneOrMoreQuestionsForSelection (long GamCod,
Btn_PutConfirmButton (Txt_Add_questions); Btn_PutConfirmButton (Txt_Add_questions);
/***** End form *****/ /***** End form *****/
Act_EndForm (); Frm_EndForm ();
/***** End box *****/ /***** End box *****/
Box_EndBox (); Box_EndBox ();
@ -5000,7 +5001,7 @@ static void Tst_PutFormEditOneQst (char Stem[Cns_MAX_BYTES_TEXT + 1],
Hlp_ASSESSMENT_Tests,Box_NOT_CLOSABLE); Hlp_ASSESSMENT_Tests,Box_NOT_CLOSABLE);
/***** Start form *****/ /***** Start form *****/
Act_StartForm (ActRcvTstQst); Frm_StartForm (ActRcvTstQst);
if (Gbl.Test.QstCod > 0) // The question already has assigned a code if (Gbl.Test.QstCod > 0) // The question already has assigned a code
Tst_PutParamQstCod (); Tst_PutParamQstCod ();
@ -5347,7 +5348,7 @@ static void Tst_PutFormEditOneQst (char Stem[Cns_MAX_BYTES_TEXT + 1],
Btn_PutCreateButton (Txt_Create_question); Btn_PutCreateButton (Txt_Create_question);
/***** End form *****/ /***** End form *****/
Act_EndForm (); Frm_EndForm ();
/***** End box *****/ /***** End box *****/
Box_EndBox (); Box_EndBox ();
@ -7513,7 +7514,7 @@ void Tst_SelUsrsToSeeUsrsTestResults (void)
Usr_ShowFormsToSelectUsrListType (ActReqSeeUsrTstRes); Usr_ShowFormsToSelectUsrListType (ActReqSeeUsrTstRes);
/***** Start form *****/ /***** Start form *****/
Act_StartForm (ActSeeUsrTstRes); Frm_StartForm (ActSeeUsrTstRes);
Grp_PutParamsCodGrps (); Grp_PutParamsCodGrps ();
/***** Put list of users to select some of them *****/ /***** Put list of users to select some of them *****/
@ -7542,7 +7543,7 @@ void Tst_SelUsrsToSeeUsrsTestResults (void)
Btn_PutConfirmButton (Txt_View_test_results); Btn_PutConfirmButton (Txt_View_test_results);
/***** End form *****/ /***** End form *****/
Act_EndForm (); Frm_EndForm ();
} }
} }
else // NumTotalUsrs == 0 else // NumTotalUsrs == 0
@ -7578,7 +7579,7 @@ void Tst_SelDatesToSeeMyTestResults (void)
extern const char *Txt_View_test_results; extern const char *Txt_View_test_results;
/***** Start form *****/ /***** Start form *****/
Act_StartForm (ActSeeMyTstRes); Frm_StartForm (ActSeeMyTstRes);
/***** Start box and table *****/ /***** Start box and table *****/
Box_StartBoxTable (NULL,Txt_Test_results,NULL, Box_StartBoxTable (NULL,Txt_Test_results,NULL,
@ -7589,7 +7590,7 @@ void Tst_SelDatesToSeeMyTestResults (void)
Box_EndBoxTableWithButton (Btn_CONFIRM_BUTTON,Txt_View_test_results); Box_EndBoxTableWithButton (Btn_CONFIRM_BUTTON,Txt_View_test_results);
/***** End form *****/ /***** End form *****/
Act_EndForm (); Frm_EndForm ();
} }
/*****************************************************************************/ /*****************************************************************************/
@ -7931,7 +7932,7 @@ static void Tst_ShowTestResults (struct UsrData *UsrDat)
Gbl.RowEvenOdd); Gbl.RowEvenOdd);
if (ICanViewTest) if (ICanViewTest)
{ {
Act_StartForm (Gbl.Action.Act == ActSeeMyTstRes ? ActSeeOneTstResMe : Frm_StartForm (Gbl.Action.Act == ActSeeMyTstRes ? ActSeeOneTstResMe :
ActSeeOneTstResOth); ActSeeOneTstResOth);
Tst_PutParamTstCod (TstCod); Tst_PutParamTstCod (TstCod);
fprintf (Gbl.F.Out,"<input type=\"image\" src=\"%s/exam64x64.png\"" fprintf (Gbl.F.Out,"<input type=\"image\" src=\"%s/exam64x64.png\""
@ -7940,7 +7941,7 @@ static void Tst_ShowTestResults (struct UsrData *UsrDat)
Gbl.Prefs.IconsURL, Gbl.Prefs.IconsURL,
Txt_View_test, Txt_View_test,
Txt_View_test); Txt_View_test);
Act_EndForm (); Frm_EndForm ();
} }
fprintf (Gbl.F.Out,"</td>" fprintf (Gbl.F.Out,"</td>"
"</tr>"); "</tr>");
@ -8019,9 +8020,9 @@ static void Tst_ShowDataUsr (struct UsrData *UsrDat,unsigned NumExams)
Lay_ShowErrorAndExit ("Wrong role."); Lay_ShowErrorAndExit ("Wrong role.");
break; break;
} }
Act_StartForm (NextAction); Frm_StartForm (NextAction);
Usr_PutParamUsrCodEncrypted (UsrDat->EncryptedUsrCod); Usr_PutParamUsrCodEncrypted (UsrDat->EncryptedUsrCod);
Act_LinkFormSubmit (UsrDat->FullName,"AUTHOR_TXT",NULL); Frm_LinkFormSubmit (UsrDat->FullName,"AUTHOR_TXT",NULL);
/***** Show user's ID *****/ /***** Show user's ID *****/
ID_WriteUsrIDs (UsrDat,NULL); ID_WriteUsrIDs (UsrDat,NULL);
@ -8034,7 +8035,7 @@ static void Tst_ShowDataUsr (struct UsrData *UsrDat,unsigned NumExams)
fprintf (Gbl.F.Out,",<br />%s",UsrDat->FirstName); fprintf (Gbl.F.Out,",<br />%s",UsrDat->FirstName);
/***** End form *****/ /***** End form *****/
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</td>"); fprintf (Gbl.F.Out,"</td>");
} }

View File

@ -34,6 +34,7 @@
#include "swad_box.h" #include "swad_box.h"
#include "swad_database.h" #include "swad_database.h"
#include "swad_form.h"
#include "swad_global.h" #include "swad_global.h"
#include "swad_parameter.h" #include "swad_parameter.h"
#include "swad_table.h" #include "swad_table.h"
@ -146,7 +147,7 @@ void TsI_ShowFormImportQstsFromXML (void)
Ale_ShowAlert (Ale_INFO,Txt_You_need_an_XML_file_containing_a_list_of_questions); Ale_ShowAlert (Ale_INFO,Txt_You_need_an_XML_file_containing_a_list_of_questions);
/***** Write a form to import questions *****/ /***** Write a form to import questions *****/
Act_StartForm (ActImpTstQst); Frm_StartForm (ActImpTstQst);
fprintf (Gbl.F.Out,"<label class=\"%s\">" fprintf (Gbl.F.Out,"<label class=\"%s\">"
"%s:&nbsp;" "%s:&nbsp;"
"<input type=\"file\" name=\"%s\" accept=\".xml\"" "<input type=\"file\" name=\"%s\" accept=\".xml\""
@ -156,7 +157,7 @@ void TsI_ShowFormImportQstsFromXML (void)
Txt_XML_file, Txt_XML_file,
Fil_NAME_OF_PARAM_FILENAME_ORG, Fil_NAME_OF_PARAM_FILENAME_ORG,
Gbl.Form.Id); Gbl.Form.Id);
Act_EndForm (); Frm_EndForm ();
/***** End box *****/ /***** End box *****/
Box_EndBox (); Box_EndBox ();

View File

@ -32,6 +32,7 @@
#include "swad_box.h" #include "swad_box.h"
#include "swad_config.h" #include "swad_config.h"
#include "swad_database.h" #include "swad_database.h"
#include "swad_form.h"
#include "swad_global.h" #include "swad_global.h"
#include "swad_layout.h" #include "swad_layout.h"
#include "swad_parameter.h" #include "swad_parameter.h"
@ -243,7 +244,7 @@ void The_PutIconsToSelectTheme (void)
fprintf (Gbl.F.Out,"<div class=\"%s\">", fprintf (Gbl.F.Out,"<div class=\"%s\">",
Theme == Gbl.Prefs.Theme ? "PREF_ON" : Theme == Gbl.Prefs.Theme ? "PREF_ON" :
"PREF_OFF"); "PREF_OFF");
Act_StartForm (ActChgThe); Frm_StartForm (ActChgThe);
Par_PutHiddenParamString ("Theme",The_ThemeId[Theme]); Par_PutHiddenParamString ("Theme",The_ThemeId[Theme]);
fprintf (Gbl.F.Out,"<input type=\"image\"" fprintf (Gbl.F.Out,"<input type=\"image\""
" src=\"%s/%s/%s/theme_32x20.gif\" alt=\"%s\"" " src=\"%s/%s/%s/theme_32x20.gif\" alt=\"%s\""
@ -253,7 +254,7 @@ void The_PutIconsToSelectTheme (void)
The_ThemeId[Theme], The_ThemeId[Theme],
The_ThemeNames[Theme], The_ThemeNames[Theme],
The_ThemeNames[Theme]); The_ThemeNames[Theme]);
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</div>"); fprintf (Gbl.F.Out,"</div>");
} }
fprintf (Gbl.F.Out,"</div>"); fprintf (Gbl.F.Out,"</div>");

View File

@ -33,6 +33,7 @@
#include "swad_box.h" #include "swad_box.h"
#include "swad_calendar.h" #include "swad_calendar.h"
#include "swad_database.h" #include "swad_database.h"
#include "swad_form.h"
#include "swad_global.h" #include "swad_global.h"
#include "swad_parameter.h" #include "swad_parameter.h"
#include "swad_text.h" #include "swad_text.h"
@ -1500,9 +1501,9 @@ static void TT_TimeTableDrawCell (unsigned Weekday,unsigned Interval,unsigned Co
/***** Form to modify this cell *****/ /***** Form to modify this cell *****/
if (Gbl.TimeTable.View == TT_CRS_EDIT) if (Gbl.TimeTable.View == TT_CRS_EDIT)
Act_StartForm (ActChgCrsTT); Frm_StartForm (ActChgCrsTT);
else if (Gbl.TimeTable.View == TT_TUT_EDIT) else if (Gbl.TimeTable.View == TT_TUT_EDIT)
Act_StartForm (ActChgTut); Frm_StartForm (ActChgTut);
/***** Draw cell depending on type of view *****/ /***** Draw cell depending on type of view *****/
switch (Gbl.TimeTable.View) switch (Gbl.TimeTable.View)
@ -1685,7 +1686,7 @@ static void TT_TimeTableDrawCell (unsigned Weekday,unsigned Interval,unsigned Co
/***** End form *****/ /***** End form *****/
if (Gbl.TimeTable.View == TT_CRS_EDIT || if (Gbl.TimeTable.View == TT_CRS_EDIT ||
Gbl.TimeTable.View == TT_TUT_EDIT) Gbl.TimeTable.View == TT_TUT_EDIT)
Act_EndForm (); Frm_EndForm ();
/***** End cell *****/ /***** End cell *****/
fprintf (Gbl.F.Out,"</td>"); fprintf (Gbl.F.Out,"</td>");

View File

@ -44,6 +44,7 @@
#include "swad_database.h" #include "swad_database.h"
#include "swad_duplicate.h" #include "swad_duplicate.h"
#include "swad_enrolment.h" #include "swad_enrolment.h"
#include "swad_form.h"
#include "swad_global.h" #include "swad_global.h"
#include "swad_group.h" #include "swad_group.h"
#include "swad_help.h" #include "swad_help.h"
@ -2440,7 +2441,7 @@ void Usr_WriteFormLogin (Act_Action_t NextAction,void (*FuncParams) ())
fprintf (Gbl.F.Out,"<div class=\"CENTER_MIDDLE\">"); fprintf (Gbl.F.Out,"<div class=\"CENTER_MIDDLE\">");
/***** Start form *****/ /***** Start form *****/
Act_StartForm (NextAction); Frm_StartForm (NextAction);
if (FuncParams) if (FuncParams)
FuncParams (); FuncParams ();
@ -2485,7 +2486,7 @@ void Usr_WriteFormLogin (Act_Action_t NextAction,void (*FuncParams) ())
Box_EndBoxTableWithButton (Btn_CONFIRM_BUTTON,Txt_Log_in); Box_EndBoxTableWithButton (Btn_CONFIRM_BUTTON,Txt_Log_in);
/***** End form *****/ /***** End form *****/
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</div>"); fprintf (Gbl.F.Out,"</div>");
} }
@ -2622,8 +2623,8 @@ void Usr_PutFormLogIn (void)
extern const char *Txt_Log_in; extern const char *Txt_Log_in;
/***** Link to log in form *****/ /***** Link to log in form *****/
Act_StartForm (ActFrmLogIn); Frm_StartForm (ActFrmLogIn);
Act_LinkFormSubmit (Txt_Log_in,The_ClassHead[Gbl.Prefs.Theme],NULL); Frm_LinkFormSubmit (Txt_Log_in,The_ClassHead[Gbl.Prefs.Theme],NULL);
fprintf (Gbl.F.Out,"<img src=\"%s/login-green64x64.png\"" fprintf (Gbl.F.Out,"<img src=\"%s/login-green64x64.png\""
" alt=\"%s\" title=\"%s\"" " alt=\"%s\" title=\"%s\""
" class=\"ICO20x20\" />" " class=\"ICO20x20\" />"
@ -2633,7 +2634,7 @@ void Usr_PutFormLogIn (void)
Txt_Log_in, Txt_Log_in,
Txt_Log_in, Txt_Log_in,
Txt_Log_in); Txt_Log_in);
Act_EndForm (); Frm_EndForm ();
} }
/*****************************************************************************/ /*****************************************************************************/
@ -2656,11 +2657,11 @@ void Usr_WriteLoggedUsrHead (void)
/***** User's role *****/ /***** User's role *****/
if (NumAvailableRoles == 1) if (NumAvailableRoles == 1)
{ {
Act_StartForm (ActFrmRolSes); Frm_StartForm (ActFrmRolSes);
Act_LinkFormSubmit (Txt_Role,The_ClassUsr[Gbl.Prefs.Theme],NULL); Frm_LinkFormSubmit (Txt_Role,The_ClassUsr[Gbl.Prefs.Theme],NULL);
fprintf (Gbl.F.Out,"%s</a>", fprintf (Gbl.F.Out,"%s</a>",
Txt_ROLES_SINGUL_Abc[Gbl.Usrs.Me.Role.Logged][Gbl.Usrs.Me.UsrDat.Sex]); Txt_ROLES_SINGUL_Abc[Gbl.Usrs.Me.Role.Logged][Gbl.Usrs.Me.UsrDat.Sex]);
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,":&nbsp;"); fprintf (Gbl.F.Out,":&nbsp;");
} }
else else
@ -2691,8 +2692,8 @@ void Usr_PutFormLogOut (void)
extern const char *The_ClassHead[The_NUM_THEMES]; extern const char *The_ClassHead[The_NUM_THEMES];
extern const char *Txt_Log_out; extern const char *Txt_Log_out;
Act_StartForm (ActLogOut); Frm_StartForm (ActLogOut);
Act_LinkFormSubmit (Txt_Log_out,The_ClassHead[Gbl.Prefs.Theme],NULL); Frm_LinkFormSubmit (Txt_Log_out,The_ClassHead[Gbl.Prefs.Theme],NULL);
fprintf (Gbl.F.Out,"<img src=\"%s/logout-red64x64.png\"" fprintf (Gbl.F.Out,"<img src=\"%s/logout-red64x64.png\""
" alt=\"%s\" title=\"%s\"" " alt=\"%s\" title=\"%s\""
" class=\"ICO20x20\" />" " class=\"ICO20x20\" />"
@ -2702,7 +2703,7 @@ void Usr_PutFormLogOut (void)
Txt_Log_out, Txt_Log_out,
Txt_Log_out, Txt_Log_out,
Txt_Log_out); Txt_Log_out);
Act_EndForm (); Frm_EndForm ();
} }
/*****************************************************************************/ /*****************************************************************************/
@ -5905,13 +5906,13 @@ void Usr_ShowFormsToSelectUsrListType (Act_Action_t NextAction)
Usr_FormToSelectUsrListType (NextAction,Usr_LIST_AS_CLASS_PHOTO); Usr_FormToSelectUsrListType (NextAction,Usr_LIST_AS_CLASS_PHOTO);
/* Number of columns in the class photo */ /* Number of columns in the class photo */
Act_StartFormAnchor (NextAction,Usr_USER_LIST_SECTION_ID); Frm_StartFormAnchor (NextAction,Usr_USER_LIST_SECTION_ID);
Grp_PutParamsCodGrps (); Grp_PutParamsCodGrps ();
Usr_PutParamUsrListType (Usr_LIST_AS_CLASS_PHOTO); Usr_PutParamUsrListType (Usr_LIST_AS_CLASS_PHOTO);
Usr_PutParamListWithPhotos (); Usr_PutParamListWithPhotos ();
Usr_PutExtraParamsUsrList (NextAction); Usr_PutExtraParamsUsrList (NextAction);
Usr_PutSelectorNumColsClassPhoto (); Usr_PutSelectorNumColsClassPhoto ();
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</div>"); fprintf (Gbl.F.Out,"</div>");
/***** Select Usr_LIST_AS_LISTING *****/ /***** Select Usr_LIST_AS_LISTING *****/
@ -5921,12 +5922,12 @@ void Usr_ShowFormsToSelectUsrListType (Act_Action_t NextAction)
Usr_FormToSelectUsrListType (NextAction,Usr_LIST_AS_LISTING); Usr_FormToSelectUsrListType (NextAction,Usr_LIST_AS_LISTING);
/* See the photos in list? */ /* See the photos in list? */
Act_StartFormAnchor (NextAction,Usr_USER_LIST_SECTION_ID); Frm_StartFormAnchor (NextAction,Usr_USER_LIST_SECTION_ID);
Grp_PutParamsCodGrps (); Grp_PutParamsCodGrps ();
Usr_PutParamUsrListType (Usr_LIST_AS_LISTING); Usr_PutParamUsrListType (Usr_LIST_AS_LISTING);
Usr_PutExtraParamsUsrList (NextAction); Usr_PutExtraParamsUsrList (NextAction);
Usr_PutCheckboxListWithPhotos (); Usr_PutCheckboxListWithPhotos ();
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</div>"); fprintf (Gbl.F.Out,"</div>");
fprintf (Gbl.F.Out,"</div>"); fprintf (Gbl.F.Out,"</div>");
@ -5942,14 +5943,14 @@ static void Usr_FormToSelectUsrListType (Act_Action_t NextAction,Usr_ShowUsrsTyp
extern const char *Txt_USR_LIST_TYPES[Usr_NUM_USR_LIST_TYPES]; extern const char *Txt_USR_LIST_TYPES[Usr_NUM_USR_LIST_TYPES];
/***** Start form *****/ /***** Start form *****/
Act_StartFormAnchor (NextAction,Usr_USER_LIST_SECTION_ID); Frm_StartFormAnchor (NextAction,Usr_USER_LIST_SECTION_ID);
Grp_PutParamsCodGrps (); Grp_PutParamsCodGrps ();
Usr_PutParamUsrListType (ListType); Usr_PutParamUsrListType (ListType);
Usr_PutParamListWithPhotos (); Usr_PutParamListWithPhotos ();
Usr_PutExtraParamsUsrList (NextAction); Usr_PutExtraParamsUsrList (NextAction);
/***** Link and image *****/ /***** Link and image *****/
Act_LinkFormSubmit (Txt_USR_LIST_TYPES[ListType], Frm_LinkFormSubmit (Txt_USR_LIST_TYPES[ListType],
The_ClassFormNoWrap[Gbl.Prefs.Theme], The_ClassFormNoWrap[Gbl.Prefs.Theme],
NextAction == ActReqMsgUsr ? "CopyMessageToHiddenFields()" : NextAction == ActReqMsgUsr ? "CopyMessageToHiddenFields()" :
NULL); NULL);
@ -5964,7 +5965,7 @@ static void Usr_FormToSelectUsrListType (Act_Action_t NextAction,Usr_ShowUsrsTyp
Txt_USR_LIST_TYPES[ListType]); Txt_USR_LIST_TYPES[ListType]);
/***** End form *****/ /***** End form *****/
Act_EndForm (); Frm_EndForm ();
} }
/*****************************************************************************/ /*****************************************************************************/
@ -7100,13 +7101,13 @@ void Usr_ListDataAdms (void)
/***** Form to select scope *****/ /***** Form to select scope *****/
fprintf (Gbl.F.Out,"<div class=\"CENTER_MIDDLE\">"); fprintf (Gbl.F.Out,"<div class=\"CENTER_MIDDLE\">");
Act_StartForm (ActLstOth); Frm_StartForm (ActLstOth);
Usr_PutParamListWithPhotos (); Usr_PutParamListWithPhotos ();
fprintf (Gbl.F.Out,"<label class=\"%s\">%s:&nbsp;", fprintf (Gbl.F.Out,"<label class=\"%s\">%s:&nbsp;",
The_ClassForm[Gbl.Prefs.Theme],Txt_Scope); The_ClassForm[Gbl.Prefs.Theme],Txt_Scope);
Sco_PutSelectorScope ("ScopeUsr",true); Sco_PutSelectorScope ("ScopeUsr",true);
fprintf (Gbl.F.Out,"</label>"); fprintf (Gbl.F.Out,"</label>");
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</div>"); fprintf (Gbl.F.Out,"</div>");
if (Gbl.Usrs.LstUsrs[Rol_DEG_ADM].NumUsrs) if (Gbl.Usrs.LstUsrs[Rol_DEG_ADM].NumUsrs)
@ -7114,10 +7115,10 @@ void Usr_ListDataAdms (void)
/****** Show photos? *****/ /****** Show photos? *****/
fprintf (Gbl.F.Out,"<div class=\"CENTER_MIDDLE\"" fprintf (Gbl.F.Out,"<div class=\"CENTER_MIDDLE\""
" style=\"margin-bottom:8px;\">"); " style=\"margin-bottom:8px;\">");
Act_StartForm (ActLstOth); Frm_StartForm (ActLstOth);
Sco_PutParamScope ("ScopeUsr",Gbl.Scope.Current); Sco_PutParamScope ("ScopeUsr",Gbl.Scope.Current);
Usr_PutCheckboxListWithPhotos (); Usr_PutCheckboxListWithPhotos ();
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</div>"); fprintf (Gbl.F.Out,"</div>");
/***** Heading row with column names *****/ /***** Heading row with column names *****/
@ -7573,13 +7574,13 @@ void Usr_SeeGuests (void)
if (Gbl.Usrs.Me.Role.Logged == Rol_SYS_ADM) if (Gbl.Usrs.Me.Role.Logged == Rol_SYS_ADM)
{ {
fprintf (Gbl.F.Out,"<div class=\"CENTER_MIDDLE\">"); fprintf (Gbl.F.Out,"<div class=\"CENTER_MIDDLE\">");
Act_StartForm (ActLstGst); Frm_StartForm (ActLstGst);
Usr_PutParamsPrefsAboutUsrList (); Usr_PutParamsPrefsAboutUsrList ();
fprintf (Gbl.F.Out,"<label class=\"%s\">%s:&nbsp;", fprintf (Gbl.F.Out,"<label class=\"%s\">%s:&nbsp;",
The_ClassForm[Gbl.Prefs.Theme],Txt_Scope); The_ClassForm[Gbl.Prefs.Theme],Txt_Scope);
Sco_PutSelectorScope ("ScopeUsr",true); Sco_PutSelectorScope ("ScopeUsr",true);
fprintf (Gbl.F.Out,"</label>"); fprintf (Gbl.F.Out,"</label>");
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</div>"); fprintf (Gbl.F.Out,"</div>");
} }
@ -7606,7 +7607,7 @@ void Usr_SeeGuests (void)
-1L); -1L);
/* Start form */ /* Start form */
Act_StartForm (ActSeeRecSevGst); Frm_StartForm (ActSeeRecSevGst);
/* Start table */ /* Start table */
Tbl_StartTableWide (0); Tbl_StartTableWide (0);
@ -7632,7 +7633,7 @@ void Usr_SeeGuests (void)
Btn_PutConfirmButton (Txt_Show_records); Btn_PutConfirmButton (Txt_Show_records);
/* End form */ /* End form */
Act_EndForm (); Frm_EndForm ();
} }
} }
else // Gbl.Usrs.LstUsrs[Rol_GST].NumUsrs == 0 else // Gbl.Usrs.LstUsrs[Rol_GST].NumUsrs == 0
@ -7723,13 +7724,13 @@ void Usr_SeeStudents (void)
case Rol_INS_ADM: case Rol_INS_ADM:
case Rol_SYS_ADM: case Rol_SYS_ADM:
fprintf (Gbl.F.Out,"<div class=\"CENTER_MIDDLE\">"); fprintf (Gbl.F.Out,"<div class=\"CENTER_MIDDLE\">");
Act_StartForm (ActLstStd); Frm_StartForm (ActLstStd);
Usr_PutParamsPrefsAboutUsrList (); Usr_PutParamsPrefsAboutUsrList ();
fprintf (Gbl.F.Out,"<label class=\"%s\">%s:&nbsp;", fprintf (Gbl.F.Out,"<label class=\"%s\">%s:&nbsp;",
The_ClassForm[Gbl.Prefs.Theme],Txt_Scope); The_ClassForm[Gbl.Prefs.Theme],Txt_Scope);
Sco_PutSelectorScope ("ScopeUsr",true); Sco_PutSelectorScope ("ScopeUsr",true);
fprintf (Gbl.F.Out,"</label>"); fprintf (Gbl.F.Out,"</label>");
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</div>"); fprintf (Gbl.F.Out,"</div>");
break; break;
default: default:
@ -7770,7 +7771,7 @@ void Usr_SeeStudents (void)
/* Start form */ /* Start form */
if (ICanViewRecords) if (ICanViewRecords)
{ {
Act_StartForm (ActSeeRecSevStd); Frm_StartForm (ActSeeRecSevStd);
Grp_PutParamsCodGrps (); Grp_PutParamsCodGrps ();
} }
@ -7801,7 +7802,7 @@ void Usr_SeeStudents (void)
Btn_PutConfirmButton (Txt_Show_records); Btn_PutConfirmButton (Txt_Show_records);
/* End form */ /* End form */
Act_EndForm (); Frm_EndForm ();
} }
} }
} }
@ -7902,13 +7903,13 @@ void Usr_SeeTeachers (void)
/***** Form to select scope *****/ /***** Form to select scope *****/
fprintf (Gbl.F.Out,"<div class=\"CENTER_MIDDLE\">"); fprintf (Gbl.F.Out,"<div class=\"CENTER_MIDDLE\">");
Act_StartForm (ActLstTch); Frm_StartForm (ActLstTch);
Usr_PutParamsPrefsAboutUsrList (); Usr_PutParamsPrefsAboutUsrList ();
fprintf (Gbl.F.Out,"<label class=\"%s\">%s:&nbsp;", fprintf (Gbl.F.Out,"<label class=\"%s\">%s:&nbsp;",
The_ClassForm[Gbl.Prefs.Theme],Txt_Scope); The_ClassForm[Gbl.Prefs.Theme],Txt_Scope);
Sco_PutSelectorScope ("ScopeUsr",true); Sco_PutSelectorScope ("ScopeUsr",true);
fprintf (Gbl.F.Out,"</label>"); fprintf (Gbl.F.Out,"</label>");
Act_EndForm (); Frm_EndForm ();
fprintf (Gbl.F.Out,"</div>"); fprintf (Gbl.F.Out,"</div>");
/***** Form to select groups *****/ /***** Form to select groups *****/
@ -7941,7 +7942,7 @@ void Usr_SeeTeachers (void)
/* Start form */ /* Start form */
if (ICanViewRecords) if (ICanViewRecords)
Act_StartForm (ActSeeRecSevTch); Frm_StartForm (ActSeeRecSevTch);
/* Start table */ /* Start table */
Tbl_StartTableWide (0); Tbl_StartTableWide (0);
@ -7979,7 +7980,7 @@ void Usr_SeeTeachers (void)
Btn_PutConfirmButton (Txt_Show_records); Btn_PutConfirmButton (Txt_Show_records);
/* End form */ /* End form */
Act_EndForm (); Frm_EndForm ();
} }
} }
} }

View File

@ -4473,8 +4473,8 @@ static void Svc_ListDir (unsigned Level,const char *Path,const char *PathInTree)
struct dirent **FileList; struct dirent **FileList;
int NumFile; int NumFile;
int NumFiles; int NumFiles;
char PathFileRel[PATH_MAX + 1]; char PathFileRel[PATH_MAX + 1 + NAME_MAX + 1];
char PathFileInExplTree[PATH_MAX + 1]; char PathFileInExplTree[PATH_MAX + 1 + NAME_MAX + 1];
struct stat FileStatus; struct stat FileStatus;
/***** Scan directory *****/ /***** Scan directory *****/

View File

@ -36,6 +36,7 @@
#include "swad_box.h" #include "swad_box.h"
#include "swad_config.h" #include "swad_config.h"
#include "swad_form.h"
#include "swad_global.h" #include "swad_global.h"
#include "swad_file_browser.h" #include "swad_file_browser.h"
#include "swad_ID.h" #include "swad_ID.h"
@ -377,11 +378,11 @@ void ZIP_PutButtonToDownloadZIPOfAFolder (const char *PathInTree,const char *Fil
extern const char *The_ClassForm[The_NUM_THEMES]; extern const char *The_ClassForm[The_NUM_THEMES];
extern const char *Txt_Create_ZIP_file; extern const char *Txt_Create_ZIP_file;
Act_StartForm (ZIP_ActZIPFolder[Gbl.FileBrowser.Type]); Frm_StartForm (ZIP_ActZIPFolder[Gbl.FileBrowser.Type]);
Brw_PutParamsFileBrowser (ZIP_ActZIPFolder[Gbl.FileBrowser.Type], Brw_PutParamsFileBrowser (ZIP_ActZIPFolder[Gbl.FileBrowser.Type],
PathInTree,FileName, PathInTree,FileName,
Brw_IS_FOLDER,-1L); Brw_IS_FOLDER,-1L);
Act_LinkFormSubmit (Txt_Create_ZIP_file,The_ClassForm[Gbl.Prefs.Theme],NULL); Frm_LinkFormSubmit (Txt_Create_ZIP_file,The_ClassForm[Gbl.Prefs.Theme],NULL);
fprintf (Gbl.F.Out,"<img src=\"%s/download64x64.png\"" fprintf (Gbl.F.Out,"<img src=\"%s/download64x64.png\""
" alt=\"%s\" title=\"%s\"" " alt=\"%s\" title=\"%s\""
" class=\"ICO20x20\" />" " class=\"ICO20x20\" />"
@ -389,7 +390,7 @@ void ZIP_PutButtonToDownloadZIPOfAFolder (const char *PathInTree,const char *Fil
Gbl.Prefs.IconsURL, Gbl.Prefs.IconsURL,
Txt_Create_ZIP_file, Txt_Create_ZIP_file,
Txt_Create_ZIP_file); Txt_Create_ZIP_file);
Act_EndForm (); Frm_EndForm ();
} }
/*****************************************************************************/ /*****************************************************************************/