Version19.45.1

This commit is contained in:
Antonio Cañas Vargas 2019-10-27 09:28:51 +01:00
parent 71cbf128f2
commit bfe3b73215
33 changed files with 150 additions and 110 deletions

View File

@ -497,7 +497,7 @@ static void ID_PutLinkToConfirmID (struct UsrData *UsrDat,unsigned NumID,
Frm_LinkFormSubmit (Txt_Confirm_ID,The_ClassFormOutBoxBold[Gbl.Prefs.Theme],NULL); Frm_LinkFormSubmit (Txt_Confirm_ID,The_ClassFormOutBoxBold[Gbl.Prefs.Theme],NULL);
Ico_PutIconTextLink ("check.svg", Ico_PutIconTextLink ("check.svg",
Txt_Confirm_ID); Txt_Confirm_ID);
fprintf (Gbl.F.Out,"</a>"); Frm_LinkFormEnd ();
/***** End form *****/ /***** End form *****/
Frm_EndForm (); Frm_EndForm ();

View File

@ -588,13 +588,15 @@ static void Agd_WriteHeaderListEvents (Agd_AgendaType_t AgendaType)
break; break;
} }
Par_PutHiddenParamUnsigned ("Order",(unsigned) Order); Par_PutHiddenParamUnsigned ("Order",(unsigned) Order);
Frm_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>"); Frm_LinkFormEnd ();
Frm_EndForm (); Frm_EndForm ();
HTM_TH_End (); HTM_TH_End ();
} }

View File

@ -226,7 +226,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>"); Frm_LinkFormEnd ();
Frm_EndForm (); Frm_EndForm ();
} }

View File

@ -257,7 +257,7 @@ static void Att_ShowAllAttEvents (void)
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>"); Frm_LinkFormEnd ();
Frm_EndForm (); Frm_EndForm ();
HTM_TH_End (); HTM_TH_End ();
@ -2183,7 +2183,8 @@ static void Att_PutLinkAttEvent (struct AttendanceEvent *AttEvent,
Att_PutParamAttCod (AttEvent->AttCod); Att_PutParamAttCod (AttEvent->AttCod);
Att_PutParamsCodGrps (AttEvent->AttCod); Att_PutParamsCodGrps (AttEvent->AttCod);
Frm_LinkFormSubmit (Title,LinkStyle,NULL); Frm_LinkFormSubmit (Title,LinkStyle,NULL);
fprintf (Gbl.F.Out,"%s</a>",Txt); fprintf (Gbl.F.Out,"%s",Txt);
Frm_LinkFormEnd ();
Frm_EndForm (); Frm_EndForm ();
} }
@ -3165,6 +3166,7 @@ static void Att_ListEventsToSelect (Att_TypeOfView_t TypeOfView)
The_ClassFormInBoxBold[Gbl.Prefs.Theme], The_ClassFormInBoxBold[Gbl.Prefs.Theme],
NULL); NULL);
Ico_PutCalculateIconWithText (Txt_Update_attendance); Ico_PutCalculateIconWithText (Txt_Update_attendance);
Frm_LinkFormEnd ();
HTM_TD_End (); HTM_TD_End ();
HTM_TR_End (); HTM_TR_End ();

View File

@ -1054,12 +1054,12 @@ void Ban_WriteMenuWithBanners (void)
Frm_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\"" fprintf (Gbl.F.Out,"<img src=\"%s/%s\""
" alt=\"%s\" title=\"%s\"" " alt=\"%s\" title=\"%s\""
" class=\"BANNER\" />" " class=\"BANNER\" />",
"</a>",
Cfg_URL_BANNER_PUBLIC, Cfg_URL_BANNER_PUBLIC,
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);
Frm_LinkFormEnd ();
Frm_EndForm (); Frm_EndForm ();
HTM_DIV_End (); HTM_DIV_End ();
} }

View File

@ -249,11 +249,12 @@ void Ctr_DrawCentreLogoAndNameWithLink (struct Centre *Ctr,Act_Action_t Action,
Ctr->FullName); Ctr->FullName);
Frm_LinkFormSubmit (Gbl.Title,ClassLink,NULL); Frm_LinkFormSubmit (Gbl.Title,ClassLink,NULL);
/***** Draw centre logo *****/ /***** Centre logo and name *****/
Log_DrawLogo (Hie_CTR,Ctr->CtrCod,Ctr->ShrtName,16,ClassLogo,true); Log_DrawLogo (Hie_CTR,Ctr->CtrCod,Ctr->ShrtName,16,ClassLogo,true);
fprintf (Gbl.F.Out,"&nbsp;%s",Ctr->FullName);
/***** End link *****/ /***** End link *****/
fprintf (Gbl.F.Out,"&nbsp;%s</a>",Ctr->FullName); Frm_LinkFormEnd ();
/***** End form *****/ /***** End form *****/
Frm_EndForm (); Frm_EndForm ();
@ -664,8 +665,8 @@ static void Ctr_Configuration (bool PrintView)
Txt_Degrees_of_CENTRE_X, Txt_Degrees_of_CENTRE_X,
Gbl.Hierarchy.Ctr.ShrtName); Gbl.Hierarchy.Ctr.ShrtName);
Frm_LinkFormSubmit (Gbl.Title,"DAT",NULL); Frm_LinkFormSubmit (Gbl.Title,"DAT",NULL);
fprintf (Gbl.F.Out,"%u</a>", fprintf (Gbl.F.Out,"%u",Deg_GetNumDegsInCtr (Gbl.Hierarchy.Ctr.CtrCod));
Deg_GetNumDegsInCtr (Gbl.Hierarchy.Ctr.CtrCod)); Frm_LinkFormEnd ();
Frm_EndForm (); Frm_EndForm ();
HTM_TD_End (); HTM_TD_End ();
@ -2642,7 +2643,7 @@ static void Ctr_PutHeadCentresForSeeing (bool OrderSelectable)
{ {
if (Order == Gbl.Hierarchy.Ins.Ctrs.SelectedOrder) if (Order == Gbl.Hierarchy.Ins.Ctrs.SelectedOrder)
fprintf (Gbl.F.Out,"</u>"); fprintf (Gbl.F.Out,"</u>");
fprintf (Gbl.F.Out,"</a>"); Frm_LinkFormEnd ();
Frm_EndForm (); Frm_EndForm ();
} }
HTM_TH_End (); HTM_TH_End ();

View File

@ -487,13 +487,15 @@ enscript -2 --landscape --color --file-align=2 --highlight --line-numbers -o - *
En OpenSWAD: En OpenSWAD:
ps2pdf source.ps destination.pdf ps2pdf source.ps destination.pdf
*/ */
#define Log_PLATFORM_VERSION "SWAD 19.45 (2019-10-26)" #define Log_PLATFORM_VERSION "SWAD 19.45.1 (2019-10-27)"
#define CSS_FILE "swad19.45.css" #define CSS_FILE "swad19.45.css"
#define JS_FILE "swad19.39.js" #define JS_FILE "swad19.39.js"
/* /*
// TODO: Hacer un nuevo rol en los TFG: tutor externo (profesor de áreas no vinculadas con el centro, profesionales de empresas, etc.) // TODO: Hacer un nuevo rol en los TFG: tutor externo (profesor de áreas no vinculadas con el centro, profesionales de empresas, etc.)
// TODO: Impedir la creación y edición de proyectos si no son editables. // TODO: Impedir la creación y edición de proyectos si no son editables.
// TODO: Cambiar </a> por Frm_LinkFormEnd (); a partir de swad_layout incluido.
Version 19.45.1: Oct 27, 2019 Code refactoring in HTML forms. (246481 lines)
Version 19.45: Oct 26, 2019 Code refactoring in HTML lists. (246444 lines) Version 19.45: Oct 26, 2019 Code refactoring in HTML lists. (246444 lines)
Version 19.44.4: Oct 26, 2019 Fixed bug in HTML divs. (246370 lines) Version 19.44.4: Oct 26, 2019 Fixed bug in HTML divs. (246370 lines)
Version 19.44.3: Oct 26, 2019 Code refactoring in HTML lists. (246369 lines) Version 19.44.3: Oct 26, 2019 Code refactoring in HTML lists. (246369 lines)

View File

@ -352,7 +352,7 @@ static void Cht_WriteLinkToChat2 (const char *RoomCode,const char *RoomFullName)
Txt_connected_SINGULAR); Txt_connected_SINGULAR);
if (NumUsrsInRoom) if (NumUsrsInRoom)
fprintf (Gbl.F.Out,"</strong>"); fprintf (Gbl.F.Out,"</strong>");
fprintf (Gbl.F.Out,"</a>"); Frm_LinkFormEnd ();
Frm_EndForm (); Frm_EndForm ();
HTM_LI_End (); HTM_LI_End ();
} }

View File

@ -129,7 +129,7 @@ void Cla_SeeClassrooms (void)
fprintf (Gbl.F.Out,"%s",Txt_CLASSROOMS_ORDER[Order]); fprintf (Gbl.F.Out,"%s",Txt_CLASSROOMS_ORDER[Order]);
if (Order == Gbl.Classrooms.SelectedOrder) if (Order == Gbl.Classrooms.SelectedOrder)
fprintf (Gbl.F.Out,"</u>"); fprintf (Gbl.F.Out,"</u>");
fprintf (Gbl.F.Out,"</a>"); Frm_LinkFormEnd ();
Frm_EndForm (); Frm_EndForm ();
HTM_TH_End (); HTM_TH_End ();
} }

View File

@ -133,6 +133,7 @@ static void Con_PutIconToUpdateConnected (void)
Sco_PutParamScope ("ScopeCon",Gbl.Scope.Current); Sco_PutParamScope ("ScopeCon",Gbl.Scope.Current);
Frm_LinkFormSubmitAnimated (Txt_Update,NULL,NULL); Frm_LinkFormSubmitAnimated (Txt_Update,NULL,NULL);
Ico_PutCalculateIcon (Txt_Update); Ico_PutCalculateIcon (Txt_Update);
Frm_LinkFormEnd ();
Frm_EndForm (); Frm_EndForm ();
} }
@ -176,7 +177,7 @@ void Con_ShowGlobalConnectedUsrs (void)
(Gbl.Session.NumSessions == 1) ? Txt_session : (Gbl.Session.NumSessions == 1) ? Txt_session :
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>"); Frm_LinkFormEnd ();
Frm_EndForm (); Frm_EndForm ();
if (NumUsrsTotal) if (NumUsrsTotal)
@ -321,9 +322,8 @@ void Con_ShowConnectedUsrsBelongingToCurrentCrs (void)
Str_Copy (CourseName,Gbl.Hierarchy.Crs.ShrtName, Str_Copy (CourseName,Gbl.Hierarchy.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",Usrs.NumUsrs,Txt_from,CourseName);
"</a>", Frm_LinkFormEnd ();
Usrs.NumUsrs,Txt_from,CourseName);
Frm_EndForm (); Frm_EndForm ();
/***** Number of teachers and students *****/ /***** Number of teachers and students *****/
@ -414,10 +414,10 @@ static void Con_ShowConnectedUsrsWithARoleBelongingToCurrentCrsOnRightColumn (Ro
Sco_PutParamScope ("ScopeCon",Hie_CRS); Sco_PutParamScope ("ScopeCon",Hie_CRS);
Frm_LinkFormSubmitUnique (Txt_Connected_users,"CONNECTED_TXT"); Frm_LinkFormSubmitUnique (Txt_Connected_users,"CONNECTED_TXT");
fprintf (Gbl.F.Out,"<img src=\"%s/ellipsis-h.svg\"" fprintf (Gbl.F.Out,"<img src=\"%s/ellipsis-h.svg\""
" alt=\"%s\" title=\"%s\" class=\"ICO40x40\" />" " alt=\"%s\" title=\"%s\" class=\"ICO40x40\" />",
"</a>",
Cfg_URL_ICON_PUBLIC, Cfg_URL_ICON_PUBLIC,
Txt_Connected_users,Txt_Connected_users); Txt_Connected_users,Txt_Connected_users);
Frm_LinkFormEnd ();
Frm_EndForm (); Frm_EndForm ();
HTM_TD_End (); HTM_TD_End ();
@ -851,7 +851,7 @@ static void Con_WriteRowConnectedUsrOnRightColumn (Rol_Role_t Role)
HTM_DIV_Begin ("class=\"CON_NAME_NARROW\""); // Limited width HTM_DIV_Begin ("class=\"CON_NAME_NARROW\""); // Limited width
Frm_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>"); Frm_LinkFormEnd ();
HTM_DIV_End (); HTM_DIV_End ();
Frm_EndForm (); Frm_EndForm ();
@ -1069,7 +1069,7 @@ static void Con_ShowConnectedUsrsCurrentLocationOneByOneOnMainZone (Rol_Role_t R
Frm_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>"); Frm_LinkFormEnd ();
HTM_DIV_End (); HTM_DIV_End ();
if (PutLinkToRecord) if (PutLinkToRecord)

View File

@ -404,8 +404,8 @@ static void Cty_Configuration (bool PrintView)
Txt_Institutions_of_COUNTRY_X, Txt_Institutions_of_COUNTRY_X,
Gbl.Hierarchy.Cty.Name[Gbl.Prefs.Language]); Gbl.Hierarchy.Cty.Name[Gbl.Prefs.Language]);
Frm_LinkFormSubmit (Gbl.Title,"DAT",NULL); Frm_LinkFormSubmit (Gbl.Title,"DAT",NULL);
fprintf (Gbl.F.Out,"%u</a>", fprintf (Gbl.F.Out,"%u",Ins_GetNumInssInCty (Gbl.Hierarchy.Cty.CtyCod));
Ins_GetNumInssInCty (Gbl.Hierarchy.Cty.CtyCod)); Frm_LinkFormEnd ();
Frm_EndForm (); Frm_EndForm ();
HTM_TD_End (); HTM_TD_End ();
@ -677,7 +677,7 @@ static void Cty_PutHeadCountriesForSeeing (bool OrderSelectable)
{ {
if (Order == Gbl.Hierarchy.Sys.Ctys.SelectedOrder) if (Order == Gbl.Hierarchy.Sys.Ctys.SelectedOrder)
fprintf (Gbl.F.Out,"</u>"); fprintf (Gbl.F.Out,"</u>");
fprintf (Gbl.F.Out,"</a>"); Frm_LinkFormEnd ();
Frm_EndForm (); Frm_EndForm ();
} }
HTM_TH_End (); HTM_TH_End ();
@ -1291,7 +1291,8 @@ void Cty_WriteCountryName (long CtyCod,const char *ClassLink)
Cty_PutParamCtyCod (CtyCod); Cty_PutParamCtyCod (CtyCod);
Frm_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",CtyName);
Frm_LinkFormEnd ();
Frm_EndForm (); Frm_EndForm ();
} }
else else

View File

@ -597,11 +597,12 @@ static void Crs_WriteListMyCoursesToSelectOne (void)
NULL); NULL);
fprintf (Gbl.F.Out,"<img src=\"%s/sitemap.svg\"" fprintf (Gbl.F.Out,"<img src=\"%s/sitemap.svg\""
" alt=\"%s\" title=\"%s\"" " alt=\"%s\" title=\"%s\""
" class=\"ICO16x16\" />&nbsp;%s</a>", " class=\"ICO16x16\" />&nbsp;%s",
Cfg_URL_ICON_PUBLIC, Cfg_URL_ICON_PUBLIC,
Txt_System, Txt_System,
Txt_System, Txt_System,
Txt_System); Txt_System);
Frm_LinkFormEnd ();
Frm_EndForm (); Frm_EndForm ();
HTM_LI_End (); HTM_LI_End ();
@ -634,13 +635,14 @@ static void Crs_WriteListMyCoursesToSelectOne (void)
/* Country map */ /* Country map */
fprintf (Gbl.F.Out,"<img src=\"%s/%s/%s.png\"" fprintf (Gbl.F.Out,"<img src=\"%s/%s/%s.png\""
" alt=\"%s\" title=\"%s\"" " alt=\"%s\" title=\"%s\""
" class=\"ICO16x16\" />&nbsp;%s</a>", " class=\"ICO16x16\" />&nbsp;%s",
Cfg_URL_ICON_COUNTRIES_PUBLIC, Cfg_URL_ICON_COUNTRIES_PUBLIC,
Cty.Alpha2, Cty.Alpha2,
Cty.Alpha2, Cty.Alpha2,
Cty.Alpha2, Cty.Alpha2,
Cty.Name[Gbl.Prefs.Language], Cty.Name[Gbl.Prefs.Language],
Cty.Name[Gbl.Prefs.Language]); Cty.Name[Gbl.Prefs.Language]);
Frm_LinkFormEnd ();
Frm_EndForm (); Frm_EndForm ();
HTM_LI_End (); HTM_LI_End ();
@ -672,7 +674,8 @@ static void Crs_WriteListMyCoursesToSelectOne (void)
Highlight ? ClassHighlight : Highlight ? ClassHighlight :
ClassNormal,NULL); ClassNormal,NULL);
Log_DrawLogo (Hie_INS,Ins.InsCod,Ins.ShrtName,16,NULL,true); Log_DrawLogo (Hie_INS,Ins.InsCod,Ins.ShrtName,16,NULL,true);
fprintf (Gbl.F.Out,"&nbsp;%s</a>",Ins.FullName); fprintf (Gbl.F.Out,"&nbsp;%s",Ins.FullName);
Frm_LinkFormEnd ();
Frm_EndForm (); Frm_EndForm ();
HTM_LI_End (); HTM_LI_End ();
@ -704,7 +707,8 @@ static void Crs_WriteListMyCoursesToSelectOne (void)
Highlight ? ClassHighlight : Highlight ? ClassHighlight :
ClassNormal,NULL); ClassNormal,NULL);
Log_DrawLogo (Hie_CTR,Ctr.CtrCod,Ctr.ShrtName,16,NULL,true); Log_DrawLogo (Hie_CTR,Ctr.CtrCod,Ctr.ShrtName,16,NULL,true);
fprintf (Gbl.F.Out,"&nbsp;%s</a>",Ctr.FullName); fprintf (Gbl.F.Out,"&nbsp;%s",Ctr.FullName);
Frm_LinkFormEnd ();
Frm_EndForm (); Frm_EndForm ();
HTM_LI_End (); HTM_LI_End ();
@ -736,7 +740,8 @@ static void Crs_WriteListMyCoursesToSelectOne (void)
Highlight ? ClassHighlight : Highlight ? ClassHighlight :
ClassNormal,NULL); ClassNormal,NULL);
Log_DrawLogo (Hie_DEG,Deg.DegCod,Deg.ShrtName,16,NULL,true); Log_DrawLogo (Hie_DEG,Deg.DegCod,Deg.ShrtName,16,NULL,true);
fprintf (Gbl.F.Out,"&nbsp;%s</a>",Deg.FullName); fprintf (Gbl.F.Out,"&nbsp;%s",Deg.FullName);
Frm_LinkFormEnd ();
Frm_EndForm (); Frm_EndForm ();
HTM_LI_End (); HTM_LI_End ();
@ -773,12 +778,12 @@ static void Crs_WriteListMyCoursesToSelectOne (void)
fprintf (Gbl.F.Out,"<img src=\"%s/list-ol.svg\"" fprintf (Gbl.F.Out,"<img src=\"%s/list-ol.svg\""
" alt=\"%s\" title=\"%s\"" " alt=\"%s\" title=\"%s\""
" class=\"ICO16x16\" />" " class=\"ICO16x16\" />"
"&nbsp;%s" "&nbsp;%s",
"</a>",
Cfg_URL_ICON_PUBLIC, Cfg_URL_ICON_PUBLIC,
Crs.ShrtName, Crs.ShrtName,
Crs.FullName, Crs.FullName,
Crs.FullName); Crs.FullName);
Frm_LinkFormEnd ();
Frm_EndForm (); Frm_EndForm ();
/***** Put link to register students *****/ /***** Put link to register students *****/
@ -1312,8 +1317,8 @@ static bool Crs_ListCoursesOfAYearForSeeing (unsigned Year)
Txt_Go_to_X, Txt_Go_to_X,
Crs->FullName); Crs->FullName);
Frm_LinkFormSubmit (Gbl.Title,TxtClassStrong,NULL); Frm_LinkFormSubmit (Gbl.Title,TxtClassStrong,NULL);
fprintf (Gbl.F.Out,"%s</a>", fprintf (Gbl.F.Out,"%s",Crs->FullName);
Crs->FullName); Frm_LinkFormEnd ();
Frm_EndForm (); Frm_EndForm ();
HTM_TD_End (); HTM_TD_End ();
@ -2950,10 +2955,10 @@ void Crs_PutIconToSelectMyCoursesInBreadcrumb (void)
Frm_LinkFormSubmit (Txt_My_courses,NULL,NULL); Frm_LinkFormSubmit (Txt_My_courses,NULL,NULL);
fprintf (Gbl.F.Out,"<img src=\"%s/sitemap.svg\"" fprintf (Gbl.F.Out,"<img src=\"%s/sitemap.svg\""
" alt=\"%s\" title=\"%s\"" " alt=\"%s\" title=\"%s\""
" class=\"BC_ICON ICO_HIGHLIGHT\" />" " class=\"BC_ICON ICO_HIGHLIGHT\" />",
"</a>",
Gbl.Prefs.URLTheme, Gbl.Prefs.URLTheme,
Txt_My_courses,Txt_My_courses); Txt_My_courses,Txt_My_courses);
Frm_LinkFormEnd ();
/***** End form *****/ /***** End form *****/
Frm_EndForm (); Frm_EndForm ();
@ -3254,9 +3259,8 @@ static void Crs_WriteRowCrsData (unsigned NumCrs,MYSQL_ROW row,bool WriteColumnA
row[2]); row[2]);
Frm_LinkFormSubmit (Gbl.Title,StyleNoBR,NULL); Frm_LinkFormSubmit (Gbl.Title,StyleNoBR,NULL);
Log_DrawLogo (Hie_DEG,Deg.DegCod,Deg.ShrtName,20,"CT",true); Log_DrawLogo (Hie_DEG,Deg.DegCod,Deg.ShrtName,20,"CT",true);
fprintf (Gbl.F.Out," %s (%s)" fprintf (Gbl.F.Out," %s (%s)",row[2],row[6]);
"</a>", Frm_LinkFormEnd ();
row[2],row[6]);
Frm_EndForm (); Frm_EndForm ();
HTM_TD_End (); HTM_TD_End ();
@ -3273,7 +3277,8 @@ static void Crs_WriteRowCrsData (unsigned NumCrs,MYSQL_ROW row,bool WriteColumnA
Txt_Go_to_X, Txt_Go_to_X,
row[6]); row[6]);
Frm_LinkFormSubmit (Gbl.Title,Style,NULL); Frm_LinkFormSubmit (Gbl.Title,Style,NULL);
fprintf (Gbl.F.Out,"%s</a>",row[5]); fprintf (Gbl.F.Out,"%s",row[5]);
Frm_LinkFormEnd ();
Frm_EndForm (); Frm_EndForm ();
HTM_TD_End (); HTM_TD_End ();

View File

@ -316,8 +316,8 @@ void Dat_ShowClientLocalTime (void)
Frm_StartForm (ActSeeCal); Frm_StartForm (ActSeeCal);
Frm_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>"); Frm_LinkFormEnd ();
Frm_EndForm (); Frm_EndForm ();
HTM_DIV_End (); HTM_DIV_End ();
@ -332,7 +332,7 @@ void Dat_ShowClientLocalTime (void)
"</span>"); "</span>");
if (Gbl.Usrs.Me.Logged) if (Gbl.Usrs.Me.Logged)
{ {
fprintf (Gbl.F.Out,"</a>"); Frm_LinkFormEnd ();
Frm_EndForm (); Frm_EndForm ();
} }
HTM_DIV_End (); HTM_DIV_End ();

View File

@ -255,11 +255,12 @@ void Deg_DrawDegreeLogoAndNameWithLink (struct Degree *Deg,Act_Action_t Action,
Deg->FullName); Deg->FullName);
Frm_LinkFormSubmit (Gbl.Title,ClassLink,NULL); Frm_LinkFormSubmit (Gbl.Title,ClassLink,NULL);
/***** Draw degree logo *****/ /***** Degree logo and name *****/
Log_DrawLogo (Hie_DEG,Deg->DegCod,Deg->ShrtName,16,ClassLogo,true); Log_DrawLogo (Hie_DEG,Deg->DegCod,Deg->ShrtName,16,ClassLogo,true);
fprintf (Gbl.F.Out,"&nbsp;%s",Deg->FullName);
/***** End link *****/ /***** End link *****/
fprintf (Gbl.F.Out,"&nbsp;%s</a>",Deg->FullName); Frm_LinkFormEnd ();
/***** End form *****/ /***** End form *****/
Frm_EndForm (); Frm_EndForm ();
@ -535,8 +536,8 @@ static void Deg_Configuration (bool PrintView)
Txt_Courses_of_DEGREE_X, Txt_Courses_of_DEGREE_X,
Gbl.Hierarchy.Deg.ShrtName); Gbl.Hierarchy.Deg.ShrtName);
Frm_LinkFormSubmit (Gbl.Title,"DAT",NULL); Frm_LinkFormSubmit (Gbl.Title,"DAT",NULL);
fprintf (Gbl.F.Out,"%u</a>", fprintf (Gbl.F.Out,"%u",Crs_GetNumCrssInDeg (Gbl.Hierarchy.Deg.DegCod));
Crs_GetNumCrssInDeg (Gbl.Hierarchy.Deg.DegCod)); Frm_LinkFormEnd ();
Frm_EndForm (); Frm_EndForm ();
HTM_TD_End (); HTM_TD_End ();

View File

@ -536,7 +536,7 @@ static void DT_PutHeadDegreeTypesForSeeing (Act_Action_t NextAction,DT_Order_t S
fprintf (Gbl.F.Out,"%s",Txt_DEGREE_TYPES_ORDER[Order]); fprintf (Gbl.F.Out,"%s",Txt_DEGREE_TYPES_ORDER[Order]);
if (Order == SelectedOrder) if (Order == SelectedOrder)
fprintf (Gbl.F.Out,"</u>"); fprintf (Gbl.F.Out,"</u>");
fprintf (Gbl.F.Out,"</a>"); Frm_LinkFormEnd ();
/* End form */ /* End form */
Frm_EndForm (); Frm_EndForm ();

View File

@ -135,7 +135,7 @@ void Dpt_SeeDepts (void)
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>"); Frm_LinkFormEnd ();
Frm_EndForm (); Frm_EndForm ();
HTM_TH_End (); HTM_TH_End ();

View File

@ -2873,9 +2873,8 @@ static void Enr_ShowEnrolmentRequestsGivenRoles (unsigned RolesSelected)
Txt_Go_to_X, Txt_Go_to_X,
Crs.FullName); Crs.FullName);
Frm_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",Deg.ShrtName,Crs.ShrtName);
"</a>", Frm_LinkFormEnd ();
Deg.ShrtName,Crs.ShrtName);
Frm_EndForm (); Frm_EndForm ();
HTM_TD_End (); HTM_TD_End ();

View File

@ -1497,7 +1497,8 @@ static void Fig_ShowInss (MYSQL_RES **mysql_res,unsigned NumInss,
40,NULL,true); 40,NULL,true);
fprintf (Gbl.F.Out,"&nbsp;"); fprintf (Gbl.F.Out,"&nbsp;");
} }
fprintf (Gbl.F.Out,"%s</a>",Ins.FullName); fprintf (Gbl.F.Out,"%s",Ins.FullName);
Frm_LinkFormEnd ();
Frm_EndForm (); Frm_EndForm ();
HTM_TD_End (); HTM_TD_End ();

View File

@ -3395,13 +3395,14 @@ 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 />");
Frm_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);
if (UsrDat->FirstName[0]) if (UsrDat->FirstName[0])
fprintf (Gbl.F.Out,", %s",UsrDat->FirstName); fprintf (Gbl.F.Out,", %s",UsrDat->FirstName);
fprintf (Gbl.F.Out,"</a>"); Frm_LinkFormEnd ();
/***** Show user's email *****/ /***** Show user's email *****/
if (UsrDat->Email[0]) if (UsrDat->Email[0])
@ -6164,7 +6165,7 @@ static void Brw_PutIconFileWithLinkToViewMetadata (unsigned Size,
Brw_PutIconFile (Size,FileMetadata->FilFolLnk.Type,FileMetadata->FilFolLnk.Name); Brw_PutIconFile (Size,FileMetadata->FilFolLnk.Type,FileMetadata->FilFolLnk.Name);
/***** End link and form *****/ /***** End link and form *****/
fprintf (Gbl.F.Out,"</a>"); Frm_LinkFormEnd ();
Frm_EndForm (); Frm_EndForm ();
} }
@ -6314,8 +6315,8 @@ static void Brw_WriteFileName (unsigned Level,bool IsPublic)
Gbl.FileBrowser.Type == Brw_SHOW_MRK_GRP) ? Txt_Check_marks_in_the_file : Gbl.FileBrowser.Type == Brw_SHOW_MRK_GRP) ? Txt_Check_marks_in_the_file :
Txt_Download, Txt_Download,
Gbl.FileBrowser.TxtStyle,NULL); Gbl.FileBrowser.TxtStyle,NULL);
fprintf (Gbl.F.Out,"%s</a>", fprintf (Gbl.F.Out,"%s",FileNameToShow);
FileNameToShow); Frm_LinkFormEnd ();
Frm_EndForm (); Frm_EndForm ();
/* Put icon to make public/private file */ /* Put icon to make public/private file */
@ -10049,10 +10050,10 @@ static void Brw_WriteBigLinkToDownloadFile (const char *URL,
fprintf (Gbl.F.Out,"&nbsp;%s&nbsp;" fprintf (Gbl.F.Out,"&nbsp;%s&nbsp;"
"<img src=\"%s/grades32x32.gif\"" "<img src=\"%s/grades32x32.gif\""
" alt=\"%s\" title=\"%s\"" " alt=\"%s\" title=\"%s\""
" class=\"ICO40x40\" />" " class=\"ICO40x40\" />",
"</a>",
FileNameToShow,Cfg_URL_ICON_PUBLIC, FileNameToShow,Cfg_URL_ICON_PUBLIC,
Txt_Check_marks_in_the_file,Txt_Check_marks_in_the_file); Txt_Check_marks_in_the_file,Txt_Check_marks_in_the_file);
Frm_LinkFormEnd ();
Frm_EndForm (); Frm_EndForm ();
} }
else else
@ -10103,13 +10104,18 @@ static void Brw_WriteSmallLinkToDownloadFile (const char *URL,
/* Link begin */ /* Link begin */
Frm_LinkFormSubmit (Txt_Check_marks_in_the_file,"DAT",NULL); Frm_LinkFormSubmit (Txt_Check_marks_in_the_file,"DAT",NULL);
/* Name of the file of marks, link end and form end */ /* Name of the file of marks */
fprintf (Gbl.F.Out,"%s</a>",FileNameToShow); fprintf (Gbl.F.Out,"%s",FileNameToShow);
/* Link end and form end */
Frm_LinkFormEnd ();
Frm_EndForm (); Frm_EndForm ();
} }
else else
/* Put anchor and filename */ /* Put anchor and filename */
fprintf (Gbl.F.Out,"<a href=\"%s\" class=\"DAT\" title=\"%s\" target=\"_blank\">%s</a>", fprintf (Gbl.F.Out,"<a href=\"%s\" class=\"DAT\" title=\"%s\" target=\"_blank\">"
"%s"
"</a>",
URL,FileNameToShow,FileNameToShow); URL,FileNameToShow,FileNameToShow);
} }
@ -11952,7 +11958,8 @@ static void Brw_WriteRowDocData (unsigned long *NumDocsNotHidden,MYSQL_ROW row)
InsShortName); InsShortName);
Frm_LinkFormSubmit (Gbl.Title,"DAT",NULL); Frm_LinkFormSubmit (Gbl.Title,"DAT",NULL);
Log_DrawLogo (Hie_INS,InsCod,InsShortName,20,"CT",true); Log_DrawLogo (Hie_INS,InsCod,InsShortName,20,"CT",true);
fprintf (Gbl.F.Out,"&nbsp;%s</a>",InsShortName); fprintf (Gbl.F.Out,"&nbsp;%s",InsShortName);
Frm_LinkFormEnd ();
Frm_EndForm (); Frm_EndForm ();
} }
HTM_TD_End (); HTM_TD_End ();
@ -11968,7 +11975,8 @@ static void Brw_WriteRowDocData (unsigned long *NumDocsNotHidden,MYSQL_ROW row)
CtrShortName); CtrShortName);
Frm_LinkFormSubmit (Gbl.Title,"DAT",NULL); Frm_LinkFormSubmit (Gbl.Title,"DAT",NULL);
Log_DrawLogo (Hie_CTR,CtrCod,CtrShortName,20,"CT",true); Log_DrawLogo (Hie_CTR,CtrCod,CtrShortName,20,"CT",true);
fprintf (Gbl.F.Out,"&nbsp;%s</a>",CtrShortName); fprintf (Gbl.F.Out,"&nbsp;%s",CtrShortName);
Frm_LinkFormEnd ();
Frm_EndForm (); Frm_EndForm ();
} }
HTM_TD_End (); HTM_TD_End ();
@ -11984,7 +11992,8 @@ static void Brw_WriteRowDocData (unsigned long *NumDocsNotHidden,MYSQL_ROW row)
DegShortName); DegShortName);
Frm_LinkFormSubmit (Gbl.Title,"DAT",NULL); Frm_LinkFormSubmit (Gbl.Title,"DAT",NULL);
Log_DrawLogo (Hie_DEG,DegCod,DegShortName,20,"CT",true); Log_DrawLogo (Hie_DEG,DegCod,DegShortName,20,"CT",true);
fprintf (Gbl.F.Out,"&nbsp;%s</a>",DegShortName); fprintf (Gbl.F.Out,"&nbsp;%s",DegShortName);
Frm_LinkFormEnd ();
Frm_EndForm (); Frm_EndForm ();
} }
HTM_TD_End (); HTM_TD_End ();
@ -11999,7 +12008,8 @@ static void Brw_WriteRowDocData (unsigned long *NumDocsNotHidden,MYSQL_ROW row)
Txt_Go_to_X, Txt_Go_to_X,
CrsShortName); CrsShortName);
Frm_LinkFormSubmit (Gbl.Title,"DAT",NULL); Frm_LinkFormSubmit (Gbl.Title,"DAT",NULL);
fprintf (Gbl.F.Out,"%s</a>",CrsShortName); fprintf (Gbl.F.Out,"%s",CrsShortName);
Frm_LinkFormEnd ();
Frm_EndForm (); Frm_EndForm ();
} }
HTM_TD_End (); HTM_TD_End ();
@ -12110,9 +12120,8 @@ static void Brw_WriteRowDocData (unsigned long *NumDocsNotHidden,MYSQL_ROW row)
else else
/* Icon with file type or link */ /* Icon with file type or link */
Brw_PutIconFile (16,FileMetadata.FilFolLnk.Type,FileMetadata.FilFolLnk.Name); Brw_PutIconFile (16,FileMetadata.FilFolLnk.Type,FileMetadata.FilFolLnk.Name);
fprintf (Gbl.F.Out,"&nbsp;%s" fprintf (Gbl.F.Out,"&nbsp;%s",FileNameToShow);
"</a>", Frm_LinkFormEnd ();
FileNameToShow);
/* End form */ /* End form */
Frm_EndForm (); Frm_EndForm ();

View File

@ -213,7 +213,8 @@ void Fol_SuggestUsrsToFollowMainZoneOnRightColumn (void)
/***** Title with link to suggest more users to follow *****/ /***** Title with link to suggest more users to follow *****/
Frm_StartForm (ActSeeSocPrf); Frm_StartForm (ActSeeSocPrf);
Frm_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",Txt_Who_to_follow);
Frm_LinkFormEnd ();
Frm_EndForm (); Frm_EndForm ();
/***** Begin table *****/ /***** Begin table *****/
@ -436,6 +437,7 @@ static void Fol_PutIconToUpdateWhoToFollow (void)
Frm_StartForm (ActSeeSocPrf); Frm_StartForm (ActSeeSocPrf);
Frm_LinkFormSubmitAnimated (Txt_Update,NULL,NULL); Frm_LinkFormSubmitAnimated (Txt_Update,NULL,NULL);
Ico_PutCalculateIcon (Txt_Update); Ico_PutCalculateIcon (Txt_Update);
Frm_LinkFormEnd ();
Frm_EndForm (); Frm_EndForm ();
} }
@ -562,7 +564,7 @@ void Fol_ShowFollowingAndFollowers (const struct UsrData *UsrDat,
Cfg_URL_ICON_PUBLIC, Cfg_URL_ICON_PUBLIC,
Txt_Unfollow,Txt_Following_unfollow); Txt_Unfollow,Txt_Following_unfollow);
HTM_DIV_End (); HTM_DIV_End ();
fprintf (Gbl.F.Out,"</a>"); Frm_LinkFormEnd ();
Frm_EndForm (); Frm_EndForm ();
} }
else // I do not follow this user else // I do not follow this user
@ -577,7 +579,7 @@ void Fol_ShowFollowingAndFollowers (const struct UsrData *UsrDat,
Cfg_URL_ICON_PUBLIC, Cfg_URL_ICON_PUBLIC,
Txt_Follow,Txt_Follow); Txt_Follow,Txt_Follow);
HTM_DIV_End (); HTM_DIV_End ();
fprintf (Gbl.F.Out,"</a>"); Frm_LinkFormEnd ();
Frm_EndForm (); Frm_EndForm ();
} }
} }
@ -623,7 +625,7 @@ static void Fol_ShowNumberOfFollowingOrFollowers (const struct UsrData *UsrDat,
fprintf (Gbl.F.Out,"%u",NumUsrs); fprintf (Gbl.F.Out,"%u",NumUsrs);
if (NumUsrs) if (NumUsrs)
{ {
fprintf (Gbl.F.Out,"</a>"); Frm_LinkFormEnd ();
Frm_EndForm (); Frm_EndForm ();
} }
else else
@ -646,7 +648,7 @@ static void Fol_ShowNumberOfFollowingOrFollowers (const struct UsrData *UsrDat,
fprintf (Gbl.F.Out,"%s",Title); fprintf (Gbl.F.Out,"%s",Title);
if (NumUsrs) if (NumUsrs)
{ {
fprintf (Gbl.F.Out,"</a>"); Frm_LinkFormEnd ();
Frm_EndForm (); Frm_EndForm ();
} }
HTM_DIV_End (); HTM_DIV_End ();
@ -860,7 +862,7 @@ static void Fol_ShowFollowedOrFollower (struct UsrData *UsrDat)
HTM_DIV_Begin ("class=\"FOLLOW_USR_NAME\""); // Limited width HTM_DIV_Begin ("class=\"FOLLOW_USR_NAME\""); // Limited width
Frm_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>"); Frm_LinkFormEnd ();
HTM_DIV_End (); HTM_DIV_End ();
Frm_EndForm (); Frm_EndForm ();
} }
@ -917,7 +919,7 @@ static void Fol_WriteRowUsrToFollowOnRightColumn (struct UsrData *UsrDat)
HTM_DIV_Begin ("class=\"CON_NAME_FOLLOW\""); // Limited width HTM_DIV_Begin ("class=\"CON_NAME_FOLLOW\""); // Limited width
Frm_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>"); Frm_LinkFormEnd ();
HTM_DIV_End (); HTM_DIV_End ();
Frm_EndForm (); Frm_EndForm ();
} }
@ -976,7 +978,7 @@ static void Fol_PutIconToFollow (struct UsrData *UsrDat)
Cfg_URL_ICON_PUBLIC, Cfg_URL_ICON_PUBLIC,
Txt_Follow,Txt_Follow); Txt_Follow,Txt_Follow);
HTM_DIV_End (); HTM_DIV_End ();
fprintf (Gbl.F.Out,"</a>"); Frm_LinkFormEnd ();
Frm_EndForm (); Frm_EndForm ();
} }
@ -998,7 +1000,7 @@ static void Fol_PutIconToUnfollow (struct UsrData *UsrDat)
Cfg_URL_ICON_PUBLIC, Cfg_URL_ICON_PUBLIC,
Txt_Unfollow,Txt_Unfollow); Txt_Unfollow,Txt_Unfollow);
HTM_DIV_End (); HTM_DIV_End ();
fprintf (Gbl.F.Out,"</a>"); Frm_LinkFormEnd ();
Frm_EndForm (); Frm_EndForm ();
} }

View File

@ -233,7 +233,6 @@ void Frm_EndForm (void)
/*****************************************************************************/ /*****************************************************************************/
/******************* Anchor directive used to send a form ********************/ /******************* Anchor directive used to send a form ********************/
/*****************************************************************************/ /*****************************************************************************/
// Requires an extern </a>
void Frm_LinkFormSubmit (const char *Title,const char *LinkClass, void Frm_LinkFormSubmit (const char *Title,const char *LinkClass,
const char *OnSubmit) const char *OnSubmit)
@ -293,6 +292,11 @@ void Frm_LinkFormSubmitAnimated (const char *Title,const char *LinkClass,
Gbl.Form.Id); Gbl.Form.Id);
} }
void Frm_LinkFormEnd (void)
{
fprintf (Gbl.F.Out,"</a>");
}
/*****************************************************************************/ /*****************************************************************************/
/***************************** Get unique Id *********************************/ /***************************** Get unique Id *********************************/
/*****************************************************************************/ /*****************************************************************************/

View File

@ -69,6 +69,7 @@ void Frm_LinkFormSubmitId (const char *Title,const char *LinkClass,
const char *Id,const char *OnSubmit); const char *Id,const char *OnSubmit);
void Frm_LinkFormSubmitAnimated (const char *Title,const char *LinkClass, void Frm_LinkFormSubmitAnimated (const char *Title,const char *LinkClass,
const char *OnSubmit); const char *OnSubmit);
void Frm_LinkFormEnd (void);
void Frm_SetUniqueId (char UniqueId[Frm_MAX_BYTES_ID + 1]); void Frm_SetUniqueId (char UniqueId[Frm_MAX_BYTES_ID + 1]);

View File

@ -2142,7 +2142,7 @@ static void For_WriteLinkToForum (struct Forum *Forum,
For_WriteNumberOfThrs (NumThrs,NumThrsWithNewPosts); For_WriteNumberOfThrs (NumThrs,NumThrsWithNewPosts);
/***** End row *****/ /***** End row *****/
fprintf (Gbl.F.Out,"</a>"); Frm_LinkFormEnd ();
Frm_EndForm (); Frm_EndForm ();
/***** Put link to register students *****/ /***** Put link to register students *****/
@ -2584,7 +2584,7 @@ static void For_ShowForumThreadsHighlightingOneThread (long ThrCodHighlighted,
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>"); Frm_LinkFormEnd ();
Frm_EndForm (); Frm_EndForm ();
HTM_TH_End (); HTM_TH_End ();

View File

@ -230,7 +230,7 @@ static void Gam_ListAllGames (void)
fprintf (Gbl.F.Out,"%s",Txt_GAMES_ORDER[Order]); fprintf (Gbl.F.Out,"%s",Txt_GAMES_ORDER[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>"); Frm_LinkFormEnd ();
Frm_EndForm (); Frm_EndForm ();
HTM_TH_End (); HTM_TH_End ();
@ -455,8 +455,8 @@ void Gam_ShowOneGame (long GamCod,
Frm_LinkFormSubmit (Txt_View_game, Frm_LinkFormSubmit (Txt_View_game,
Game.Hidden ? "ASG_TITLE_LIGHT": Game.Hidden ? "ASG_TITLE_LIGHT":
"ASG_TITLE",NULL); "ASG_TITLE",NULL);
fprintf (Gbl.F.Out,"%s</a>", fprintf (Gbl.F.Out,"%s",Game.Title);
Game.Title); Frm_LinkFormEnd ();
Frm_EndForm (); Frm_EndForm ();
HTM_ARTICLE_End (); HTM_ARTICLE_End ();
@ -482,7 +482,8 @@ void Gam_ShowOneGame (long GamCod,
"ASG_TITLE",NULL); "ASG_TITLE",NULL);
if (ShowOnlyThisGame) if (ShowOnlyThisGame)
fprintf (Gbl.F.Out,"%s:&nbsp;",Txt_Matches); fprintf (Gbl.F.Out,"%s:&nbsp;",Txt_Matches);
fprintf (Gbl.F.Out,"%u</a>",Game.NumMchs); fprintf (Gbl.F.Out,"%u",Game.NumMchs);
Frm_LinkFormEnd ();
Frm_EndForm (); Frm_EndForm ();
HTM_TD_End (); HTM_TD_End ();

View File

@ -415,6 +415,7 @@ void Grp_ShowFormToSelectSeveralGroups (void (*FuncParams) (void),
The_ClassFormInBoxBold[Gbl.Prefs.Theme], The_ClassFormInBoxBold[Gbl.Prefs.Theme],
"CopyMessageToHiddenFields();"); "CopyMessageToHiddenFields();");
Ico_PutCalculateIconWithText (Txt_Update_users); Ico_PutCalculateIconWithText (Txt_Update_users);
Frm_LinkFormEnd ();
HTM_DIV_End (); HTM_DIV_End ();
/***** End form *****/ /***** End form *****/

View File

@ -210,7 +210,8 @@ void Hie_WriteHierarchyInBreadcrumb (void)
Frm_StartFormGoTo (ActMnu); Frm_StartFormGoTo (ActMnu);
Par_PutHiddenParamUnsigned ("NxtTab",(unsigned) TabSys); Par_PutHiddenParamUnsigned ("NxtTab",(unsigned) TabSys);
Frm_LinkFormSubmit (Txt_System,ClassTxt,NULL); Frm_LinkFormSubmit (Txt_System,ClassTxt,NULL);
fprintf (Gbl.F.Out,"%s</a>",Txt_System); fprintf (Gbl.F.Out,"%s",Txt_System);
Frm_LinkFormEnd ();
Frm_EndForm (); Frm_EndForm ();
HTM_DIV_End (); HTM_DIV_End ();
@ -226,7 +227,8 @@ void Hie_WriteHierarchyInBreadcrumb (void)
Frm_StartFormGoTo (ActSeeIns); Frm_StartFormGoTo (ActSeeIns);
Cty_PutParamCtyCod (Gbl.Hierarchy.Cty.CtyCod); Cty_PutParamCtyCod (Gbl.Hierarchy.Cty.CtyCod);
Frm_LinkFormSubmit (Gbl.Hierarchy.Cty.Name[Gbl.Prefs.Language],ClassTxt,NULL); Frm_LinkFormSubmit (Gbl.Hierarchy.Cty.Name[Gbl.Prefs.Language],ClassTxt,NULL);
fprintf (Gbl.F.Out,"%s</a>",Gbl.Hierarchy.Cty.Name[Gbl.Prefs.Language]); fprintf (Gbl.F.Out,"%s",Gbl.Hierarchy.Cty.Name[Gbl.Prefs.Language]);
Frm_LinkFormEnd ();
Frm_EndForm (); Frm_EndForm ();
HTM_DIV_End (); HTM_DIV_End ();
@ -241,7 +243,8 @@ void Hie_WriteHierarchyInBreadcrumb (void)
/***** Form to go to select countries *****/ /***** Form to go to select countries *****/
Frm_StartFormGoTo (ActSeeCty); Frm_StartFormGoTo (ActSeeCty);
Frm_LinkFormSubmit (Txt_Country,ClassTxt,NULL); Frm_LinkFormSubmit (Txt_Country,ClassTxt,NULL);
fprintf (Gbl.F.Out,"%s</a>",Txt_Country); fprintf (Gbl.F.Out,"%s",Txt_Country);
Frm_LinkFormEnd ();
Frm_EndForm (); Frm_EndForm ();
HTM_DIV_End (); HTM_DIV_End ();
@ -258,7 +261,8 @@ void Hie_WriteHierarchyInBreadcrumb (void)
Frm_StartFormGoTo (ActSeeCtr); Frm_StartFormGoTo (ActSeeCtr);
Ins_PutParamInsCod (Gbl.Hierarchy.Ins.InsCod); Ins_PutParamInsCod (Gbl.Hierarchy.Ins.InsCod);
Frm_LinkFormSubmit (Gbl.Hierarchy.Ins.FullName,ClassTxt,NULL); Frm_LinkFormSubmit (Gbl.Hierarchy.Ins.FullName,ClassTxt,NULL);
fprintf (Gbl.F.Out,"%s</a>",Gbl.Hierarchy.Ins.ShrtName); fprintf (Gbl.F.Out,"%s",Gbl.Hierarchy.Ins.ShrtName);
Frm_LinkFormEnd ();
Frm_EndForm (); Frm_EndForm ();
HTM_DIV_End (); HTM_DIV_End ();
@ -273,7 +277,8 @@ void Hie_WriteHierarchyInBreadcrumb (void)
/***** Form to go to select institutions *****/ /***** Form to go to select institutions *****/
Frm_StartFormGoTo (ActSeeIns); Frm_StartFormGoTo (ActSeeIns);
Frm_LinkFormSubmit (Txt_Institution,ClassTxt,NULL); Frm_LinkFormSubmit (Txt_Institution,ClassTxt,NULL);
fprintf (Gbl.F.Out,"%s</a>",Txt_Institution); fprintf (Gbl.F.Out,"%s",Txt_Institution);
Frm_LinkFormEnd ();
Frm_EndForm (); Frm_EndForm ();
HTM_DIV_End (); HTM_DIV_End ();
@ -302,7 +307,8 @@ void Hie_WriteHierarchyInBreadcrumb (void)
Frm_StartFormGoTo (ActSeeDeg); Frm_StartFormGoTo (ActSeeDeg);
Ctr_PutParamCtrCod (Gbl.Hierarchy.Ctr.CtrCod); Ctr_PutParamCtrCod (Gbl.Hierarchy.Ctr.CtrCod);
Frm_LinkFormSubmit (Gbl.Hierarchy.Ctr.FullName,ClassTxt,NULL); Frm_LinkFormSubmit (Gbl.Hierarchy.Ctr.FullName,ClassTxt,NULL);
fprintf (Gbl.F.Out,"%s</a>",Gbl.Hierarchy.Ctr.ShrtName); fprintf (Gbl.F.Out,"%s",Gbl.Hierarchy.Ctr.ShrtName);
Frm_LinkFormEnd ();
Frm_EndForm (); Frm_EndForm ();
HTM_DIV_End (); HTM_DIV_End ();
@ -317,7 +323,8 @@ void Hie_WriteHierarchyInBreadcrumb (void)
/***** Form to go to select centres *****/ /***** Form to go to select centres *****/
Frm_StartFormGoTo (ActSeeCtr); Frm_StartFormGoTo (ActSeeCtr);
Frm_LinkFormSubmit (Txt_Centre,ClassTxt,NULL); Frm_LinkFormSubmit (Txt_Centre,ClassTxt,NULL);
fprintf (Gbl.F.Out,"%s</a>",Txt_Centre); fprintf (Gbl.F.Out,"%s",Txt_Centre);
Frm_LinkFormEnd ();
Frm_EndForm (); Frm_EndForm ();
HTM_DIV_End (); HTM_DIV_End ();
@ -346,7 +353,8 @@ void Hie_WriteHierarchyInBreadcrumb (void)
Frm_StartFormGoTo (ActSeeCrs); Frm_StartFormGoTo (ActSeeCrs);
Deg_PutParamDegCod (Gbl.Hierarchy.Deg.DegCod); Deg_PutParamDegCod (Gbl.Hierarchy.Deg.DegCod);
Frm_LinkFormSubmit (Gbl.Hierarchy.Deg.FullName,ClassTxt,NULL); Frm_LinkFormSubmit (Gbl.Hierarchy.Deg.FullName,ClassTxt,NULL);
fprintf (Gbl.F.Out,"%s</a>",Gbl.Hierarchy.Deg.ShrtName); fprintf (Gbl.F.Out,"%s",Gbl.Hierarchy.Deg.ShrtName);
Frm_LinkFormEnd ();
Frm_EndForm (); Frm_EndForm ();
HTM_DIV_End (); HTM_DIV_End ();
@ -361,7 +369,8 @@ void Hie_WriteHierarchyInBreadcrumb (void)
/***** Form to go to select degrees *****/ /***** Form to go to select degrees *****/
Frm_StartFormGoTo (ActSeeDeg); Frm_StartFormGoTo (ActSeeDeg);
Frm_LinkFormSubmit (Txt_Degree,ClassTxt,NULL); Frm_LinkFormSubmit (Txt_Degree,ClassTxt,NULL);
fprintf (Gbl.F.Out,"%s</a>",Txt_Degree); fprintf (Gbl.F.Out,"%s",Txt_Degree);
Frm_LinkFormEnd ();
Frm_EndForm (); Frm_EndForm ();
HTM_DIV_End (); HTM_DIV_End ();

View File

@ -131,7 +131,7 @@ void Hld_SeeHolidays (void)
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>"); Frm_LinkFormEnd ();
Frm_EndForm (); Frm_EndForm ();
HTM_TH_End (); HTM_TH_End ();

View File

@ -430,8 +430,6 @@ void Ico_PutCalculateIcon (const char *Title)
Gbl.Form.Num,Cfg_URL_ICON_PUBLIC,Title,Title, Gbl.Form.Num,Cfg_URL_ICON_PUBLIC,Title,Title,
Gbl.Form.Num,Cfg_URL_ICON_PUBLIC,Title,Title); Gbl.Form.Num,Cfg_URL_ICON_PUBLIC,Title,Title);
HTM_DIV_End (); HTM_DIV_End ();
fprintf (Gbl.F.Out,"</a>");
} }
/*****************************************************************************/ /*****************************************************************************/
@ -453,8 +451,6 @@ void Ico_PutCalculateIconWithText (const char *Text)
Gbl.Form.Num,Cfg_URL_ICON_PUBLIC,Text,Text, Gbl.Form.Num,Cfg_URL_ICON_PUBLIC,Text,Text,
Text); Text);
HTM_DIV_End (); HTM_DIV_End ();
fprintf (Gbl.F.Out,"</a>");
} }
/*****************************************************************************/ /*****************************************************************************/

View File

@ -613,9 +613,8 @@ void Inf_WriteMsgYouMustReadInfo (void)
Frm_StartForm (Inf_ActionsSeeInfo[InfoType]); Frm_StartForm (Inf_ActionsSeeInfo[InfoType]);
Frm_LinkFormSubmit (Act_GetTitleAction (Inf_ActionsSeeInfo[InfoType]), Frm_LinkFormSubmit (Act_GetTitleAction (Inf_ActionsSeeInfo[InfoType]),
The_ClassFormInBox[Gbl.Prefs.Theme],NULL); The_ClassFormInBox[Gbl.Prefs.Theme],NULL);
fprintf (Gbl.F.Out,"%s" fprintf (Gbl.F.Out,"%s",Act_GetTitleAction (Inf_ActionsSeeInfo[InfoType]));
"</a>", Frm_LinkFormEnd ();
Act_GetTitleAction (Inf_ActionsSeeInfo[InfoType]));
Frm_EndForm (); Frm_EndForm ();
HTM_LI_End (); HTM_LI_End ();
} }

View File

@ -241,7 +241,7 @@ void Ins_DrawInstitutionLogoWithLink (struct Instit *Ins,unsigned Size)
Size,NULL,true); Size,NULL,true);
if (PutLink) if (PutLink)
{ {
fprintf (Gbl.F.Out,"</a>"); Frm_LinkFormEnd ();
Frm_EndForm (); Frm_EndForm ();
} }
} }
@ -265,11 +265,12 @@ void Ins_DrawInstitutionLogoAndNameWithLink (struct Instit *Ins,Act_Action_t Act
Ins->FullName); Ins->FullName);
Frm_LinkFormSubmit (Gbl.Title,ClassLink,NULL); Frm_LinkFormSubmit (Gbl.Title,ClassLink,NULL);
/***** Draw institution logo *****/ /***** Institution logo and name *****/
Log_DrawLogo (Hie_INS,Ins->InsCod,Ins->ShrtName,16,ClassLogo,true); Log_DrawLogo (Hie_INS,Ins->InsCod,Ins->ShrtName,16,ClassLogo,true);
fprintf (Gbl.F.Out,"&nbsp;%s",Ins->FullName);
/***** End link *****/ /***** End link *****/
fprintf (Gbl.F.Out,"&nbsp;%s</a>",Ins->FullName); Frm_LinkFormEnd ();
/***** End form *****/ /***** End form *****/
Frm_EndForm (); Frm_EndForm ();
@ -562,8 +563,8 @@ static void Ins_Configuration (bool PrintView)
Txt_Centres_of_INSTITUTION_X, Txt_Centres_of_INSTITUTION_X,
Gbl.Hierarchy.Ins.ShrtName); Gbl.Hierarchy.Ins.ShrtName);
Frm_LinkFormSubmit (Gbl.Title,"DAT",NULL); Frm_LinkFormSubmit (Gbl.Title,"DAT",NULL);
fprintf (Gbl.F.Out,"%u</a>", fprintf (Gbl.F.Out,"%u",Ctr_GetNumCtrsInIns (Gbl.Hierarchy.Ins.InsCod));
Ctr_GetNumCtrsInIns (Gbl.Hierarchy.Ins.InsCod)); Frm_LinkFormEnd ();
Frm_EndForm (); Frm_EndForm ();
HTM_TD_End (); HTM_TD_End ();
@ -889,7 +890,7 @@ static void Ins_PutHeadInstitutionsForSeeing (bool OrderSelectable)
{ {
if (Order == Gbl.Hierarchy.Cty.Inss.SelectedOrder) if (Order == Gbl.Hierarchy.Cty.Inss.SelectedOrder)
fprintf (Gbl.F.Out,"</u>"); fprintf (Gbl.F.Out,"</u>");
fprintf (Gbl.F.Out,"</a>"); Frm_LinkFormEnd ();
Frm_EndForm (); Frm_EndForm ();
} }
HTM_TH_End (); HTM_TH_End ();

View File

@ -1773,6 +1773,7 @@ static void Msg_ShowSentOrReceivedMessages (void)
The_ClassFormInBoxBold[Gbl.Prefs.Theme], The_ClassFormInBoxBold[Gbl.Prefs.Theme],
NULL); NULL);
Ico_PutCalculateIconWithText (Txt_Update_messages); // Animated icon to update messages Ico_PutCalculateIconWithText (Txt_Update_messages); // Animated icon to update messages
Frm_LinkFormEnd ();
Mnu_ContextMenuEnd (); Mnu_ContextMenuEnd ();
Frm_EndForm (); Frm_EndForm ();

View File

@ -2023,6 +2023,7 @@ static void Pho_PutLinkToCalculateDegreeStats (void)
The_ClassFormInBoxBold[Gbl.Prefs.Theme], The_ClassFormInBoxBold[Gbl.Prefs.Theme],
NULL); NULL);
Ico_PutCalculateIconWithText (Txt_Calculate_average_photo_of_THE_DEGREE_X); Ico_PutCalculateIconWithText (Txt_Calculate_average_photo_of_THE_DEGREE_X);
Frm_LinkFormEnd ();
/* Selector with all the degrees with students */ /* Selector with all the degrees with students */
fprintf (Gbl.F.Out,"<select name=\"OthDegCod\">"); fprintf (Gbl.F.Out,"<select name=\"OthDegCod\">");

View File

@ -806,6 +806,7 @@ static void Prf_PutLinkCalculateFigures (const char *EncryptedUsrCod)
The_ClassFormOutBoxBold[Gbl.Prefs.Theme], The_ClassFormOutBoxBold[Gbl.Prefs.Theme],
NULL); NULL);
Ico_PutCalculateIconWithText (Txt_Calculate); Ico_PutCalculateIconWithText (Txt_Calculate);
Frm_LinkFormEnd ();
Frm_EndForm (); Frm_EndForm ();
} }