mirror of https://github.com/acanas/swad-core.git
Version19.46.1
This commit is contained in:
parent
088dabaa48
commit
26ccde3e21
11
swad_RSS.c
11
swad_RSS.c
|
@ -62,6 +62,7 @@ void RSS_UpdateRSSFileForACrs (struct Course *Crs)
|
|||
char PathRelPublRSSDir[PATH_MAX + 1];
|
||||
char PathRelPublRSSFile[PATH_MAX + 1];
|
||||
FILE *FileRSS;
|
||||
char RSSLink[Cns_MAX_BYTES_WWW + 1];
|
||||
struct tm *tm;
|
||||
|
||||
/***** Create RSS directory if not exists *****/
|
||||
|
@ -85,7 +86,8 @@ void RSS_UpdateRSSFileForACrs (struct Course *Crs)
|
|||
fprintf (FileRSS,"<channel>\n");
|
||||
|
||||
fprintf (FileRSS,"<atom:link href=\"");
|
||||
RSS_WriteRSSLink (FileRSS,Crs->CrsCod);
|
||||
RSS_BuildRSSLink (RSSLink,Crs->CrsCod);
|
||||
fprintf (FileRSS,"%s",RSSLink);
|
||||
fprintf (FileRSS,"\" rel=\"self\" type=\"application/rss+xml\" />\n");
|
||||
|
||||
fprintf (FileRSS,"<title>%s: %s</title>\n",
|
||||
|
@ -322,8 +324,9 @@ static void RSS_WriteExamAnnouncements (FILE *FileRSS,struct Course *Crs)
|
|||
/********* Write URL to RSS archive with active notices in a course **********/
|
||||
/*****************************************************************************/
|
||||
|
||||
void RSS_WriteRSSLink (FILE *FileTgt,long CrsCod)
|
||||
void RSS_BuildRSSLink (char RSSLink[Cns_MAX_BYTES_WWW + 1],long CrsCod)
|
||||
{
|
||||
fprintf (FileTgt,"%s/%ld/%s/%s",
|
||||
Cfg_URL_CRS_PUBLIC,CrsCod,Cfg_RSS_FOLDER,Cfg_RSS_FILE);
|
||||
snprintf (RSSLink,Cns_MAX_BYTES_WWW + 1,
|
||||
"%s/%ld/%s/%s",
|
||||
Cfg_URL_CRS_PUBLIC,CrsCod,Cfg_RSS_FOLDER,Cfg_RSS_FILE);
|
||||
}
|
||||
|
|
|
@ -40,6 +40,6 @@
|
|||
/*****************************************************************************/
|
||||
|
||||
void RSS_UpdateRSSFileForACrs (struct Course *Crs);
|
||||
void RSS_WriteRSSLink (FILE *FileTgt,long CrsCod);
|
||||
void RSS_BuildRSSLink (char RSSLink[Cns_MAX_BYTES_WWW + 1],long CrsCod);
|
||||
|
||||
#endif
|
||||
|
|
|
@ -153,9 +153,9 @@ static void Ban_WriteListOfBanners (void)
|
|||
{
|
||||
/* Write data of this banner */
|
||||
HTM_LI_Begin (NULL);
|
||||
fprintf (Gbl.F.Out,"<a href=\"%s\" title=\"%s\" class=\"DAT\" target=\"_blank\">",
|
||||
Gbl.Banners.Lst[NumBan].WWW,
|
||||
Gbl.Banners.Lst[NumBan].FullName);
|
||||
HTM_A_Begin ("href=\"%s\" title=\"%s\" class=\"DAT\" target=\"_blank\"",
|
||||
Gbl.Banners.Lst[NumBan].WWW,
|
||||
Gbl.Banners.Lst[NumBan].FullName);
|
||||
fprintf (Gbl.F.Out,"<img src=\"%s/%s\""
|
||||
" alt=\"%s\" title=\"%s\""
|
||||
" class=\"BANNER\" />",
|
||||
|
|
|
@ -171,8 +171,7 @@ static void Box_StartBoxInternal (const char *Width,const char *Title,
|
|||
|
||||
if (HelpLink) // Link to help
|
||||
{
|
||||
fprintf (Gbl.F.Out,"<a href=\"%s%s\" target=\"_blank\">",
|
||||
Hlp_WIKI,HelpLink);
|
||||
HTM_A_Begin ("href=\"%s%s\" target=\"_blank\"",Hlp_WIKI,HelpLink);
|
||||
Ico_PutDivIcon ("CONTEXT_OPT HLP_HIGHLIGHT",
|
||||
"question.svg",Txt_Help);
|
||||
HTM_A_End ();
|
||||
|
@ -180,9 +179,8 @@ static void Box_StartBoxInternal (const char *Width,const char *Title,
|
|||
|
||||
if (Closable == Box_CLOSABLE) // Icon to close the box
|
||||
{
|
||||
fprintf (Gbl.F.Out,"<a href=\"\""
|
||||
" onclick=\"toggleDisplay('%s');return false;\" />",
|
||||
Gbl.Box.Ids[Gbl.Box.Nested]);
|
||||
HTM_A_Begin ("href=\"\" onclick=\"toggleDisplay('%s');return false;\"",
|
||||
Gbl.Box.Ids[Gbl.Box.Nested]);
|
||||
Ico_PutDivIcon ("CONTEXT_OPT HLP_HIGHLIGHT",
|
||||
"close.svg",Txt_Close);
|
||||
HTM_A_End ();
|
||||
|
|
|
@ -335,10 +335,10 @@ static void Ctr_Configuration (bool PrintView)
|
|||
PutLink = !PrintView && Gbl.Hierarchy.Ctr.WWW[0];
|
||||
HTM_DIV_Begin ("class=\"FRAME_TITLE FRAME_TITLE_BIG\"");
|
||||
if (PutLink)
|
||||
fprintf (Gbl.F.Out,"<a href=\"%s\" target=\"_blank\""
|
||||
" class=\"FRAME_TITLE_BIG\" title=\"%s\">",
|
||||
Gbl.Hierarchy.Ctr.WWW,
|
||||
Gbl.Hierarchy.Ctr.FullName);
|
||||
HTM_A_Begin ("href=\"%s\" target=\"_blank\""
|
||||
" class=\"FRAME_TITLE_BIG\" title=\"%s\"",
|
||||
Gbl.Hierarchy.Ctr.WWW,
|
||||
Gbl.Hierarchy.Ctr.FullName);
|
||||
Log_DrawLogo (Hie_CTR,Gbl.Hierarchy.Ctr.CtrCod,
|
||||
Gbl.Hierarchy.Ctr.ShrtName,64,NULL,true);
|
||||
fprintf (Gbl.F.Out,"<br />%s",Gbl.Hierarchy.Ctr.FullName);
|
||||
|
@ -355,8 +355,8 @@ static void Ctr_Configuration (bool PrintView)
|
|||
/* Photo image */
|
||||
HTM_DIV_Begin ("class=\"DAT_SMALL CM\"");
|
||||
if (PutLink)
|
||||
fprintf (Gbl.F.Out,"<a href=\"%s\" target=\"_blank\" class=\"DAT_N\">",
|
||||
Gbl.Hierarchy.Ctr.WWW);
|
||||
HTM_A_Begin ("href=\"%s\" target=\"_blank\" class=\"DAT_N\"",
|
||||
Gbl.Hierarchy.Ctr.WWW);
|
||||
fprintf (Gbl.F.Out,"<img src=\"%s/%02u/%u/%u.jpg\""
|
||||
" alt=\"%s\" title=\"%s\""
|
||||
" class=\"%s\" />",
|
||||
|
@ -588,8 +588,8 @@ static void Ctr_Configuration (bool PrintView)
|
|||
else // I can not change centre WWW
|
||||
{
|
||||
HTM_DIV_Begin ("class=\"EXTERNAL_WWW_LONG\"");
|
||||
fprintf (Gbl.F.Out,"<a href=\"%s\" target=\"_blank\" class=\"DAT\">",
|
||||
Gbl.Hierarchy.Ctr.WWW);
|
||||
HTM_A_Begin ("href=\"%s\" target=\"_blank\" class=\"DAT\"",
|
||||
Gbl.Hierarchy.Ctr.WWW);
|
||||
fprintf (Gbl.F.Out,"%s",Gbl.Hierarchy.Ctr.WWW);
|
||||
HTM_A_End ();
|
||||
HTM_DIV_End ();
|
||||
|
@ -606,10 +606,10 @@ static void Ctr_Configuration (bool PrintView)
|
|||
HTM_TD_End ();
|
||||
|
||||
HTM_TD_Begin ("class=\"DAT LM\"");
|
||||
fprintf (Gbl.F.Out,"<a href=\"%s/%s?ctr=%ld\" class=\"DAT\" target=\"_blank\">",
|
||||
Cfg_URL_SWAD_CGI,
|
||||
Lan_STR_LANG_ID[Gbl.Prefs.Language],
|
||||
Gbl.Hierarchy.Ctr.CtrCod);
|
||||
HTM_A_Begin ("href=\"%s/%s?ctr=%ld\" class=\"DAT\" target=\"_blank\"",
|
||||
Cfg_URL_SWAD_CGI,
|
||||
Lan_STR_LANG_ID[Gbl.Prefs.Language],
|
||||
Gbl.Hierarchy.Ctr.CtrCod);
|
||||
fprintf (Gbl.F.Out,"%s/%s?ctr=%ld",
|
||||
Cfg_URL_SWAD_CGI,
|
||||
Lan_STR_LANG_ID[Gbl.Prefs.Language],
|
||||
|
@ -1606,8 +1606,8 @@ static void Ctr_ListCentresForEdition (void)
|
|||
Str_Copy (WWW,Ctr->WWW,
|
||||
Cns_MAX_BYTES_WWW);
|
||||
HTM_DIV_Begin ("class=\"EXTERNAL_WWW_SHORT\"");
|
||||
fprintf (Gbl.F.Out,"<a href=\"%s\" target=\"_blank\""
|
||||
" class=\"DAT\" title=\"%s\">",Ctr->WWW,Ctr->WWW);
|
||||
HTM_A_Begin ("href=\"%s\" target=\"_blank\""
|
||||
" class=\"DAT\" title=\"%s\"",Ctr->WWW,Ctr->WWW);
|
||||
fprintf (Gbl.F.Out,"%s",WWW);
|
||||
HTM_A_End ();
|
||||
HTM_DIV_End ();
|
||||
|
|
|
@ -487,13 +487,14 @@ enscript -2 --landscape --color --file-align=2 --highlight --line-numbers -o - *
|
|||
En OpenSWAD:
|
||||
ps2pdf source.ps destination.pdf
|
||||
*/
|
||||
#define Log_PLATFORM_VERSION "SWAD 19.46 (2019-10-28)"
|
||||
#define Log_PLATFORM_VERSION "SWAD 19.46.1 (2019-10-28)"
|
||||
#define CSS_FILE "swad19.45.css"
|
||||
#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: Impedir la creación y edición de proyectos si no son editables.
|
||||
|
||||
Version 19.46.1: Oct 28, 2019 Code refactoring in HTML anchors. (246523 lines)
|
||||
Version 19.46: Oct 28, 2019 Code refactoring in HTML anchors. (246541 lines)
|
||||
Version 19.45.2: Oct 27, 2019 Code refactoring in HTML forms. (246498 lines)
|
||||
Version 19.45.1: Oct 27, 2019 Code refactoring in HTML forms. (246481 lines)
|
||||
|
|
|
@ -265,10 +265,10 @@ static void Cty_Configuration (bool PrintView)
|
|||
PutLink = !PrintView && Gbl.Hierarchy.Cty.WWW[Gbl.Prefs.Language][0];
|
||||
HTM_DIV_Begin ("class=\"FRAME_TITLE FRAME_TITLE_BIG\"");
|
||||
if (PutLink)
|
||||
fprintf (Gbl.F.Out,"<a href=\"%s\" target=\"_blank\""
|
||||
" class=\"FRAME_TITLE_BIG\" title=\"%s\">",
|
||||
Gbl.Hierarchy.Cty.WWW[Gbl.Prefs.Language],
|
||||
Gbl.Hierarchy.Cty.Name[Gbl.Prefs.Language]);
|
||||
HTM_A_Begin ("href=\"%s\" target=\"_blank\""
|
||||
" class=\"FRAME_TITLE_BIG\" title=\"%s\"",
|
||||
Gbl.Hierarchy.Cty.WWW[Gbl.Prefs.Language],
|
||||
Gbl.Hierarchy.Cty.Name[Gbl.Prefs.Language]);
|
||||
fprintf (Gbl.F.Out,"%s",Gbl.Hierarchy.Cty.Name[Gbl.Prefs.Language]);
|
||||
if (PutLink)
|
||||
HTM_A_End ();
|
||||
|
@ -283,10 +283,10 @@ static void Cty_Configuration (bool PrintView)
|
|||
/* Map image */
|
||||
HTM_DIV_Begin ("class=\"DAT_SMALL CM\"");
|
||||
if (PutLink)
|
||||
fprintf (Gbl.F.Out,"<a href=\"%s\" target=\"_blank\">",
|
||||
Gbl.Hierarchy.Cty.WWW[Gbl.Prefs.Language]);
|
||||
HTM_A_Begin ("href=\"%s\" target=\"_blank\"",
|
||||
Gbl.Hierarchy.Cty.WWW[Gbl.Prefs.Language]);
|
||||
Cty_DrawCountryMap (&Gbl.Hierarchy.Cty,PrintView ? "COUNTRY_MAP_PRINT" :
|
||||
"COUNTRY_MAP_SHOW");
|
||||
"COUNTRY_MAP_SHOW");
|
||||
if (PutLink)
|
||||
HTM_A_End ();
|
||||
HTM_DIV_End ();
|
||||
|
@ -329,8 +329,8 @@ static void Cty_Configuration (bool PrintView)
|
|||
|
||||
HTM_TD_Begin ("class=\"DAT_N LM\"");
|
||||
if (!PrintView && Gbl.Hierarchy.Cty.WWW[Gbl.Prefs.Language][0])
|
||||
fprintf (Gbl.F.Out,"<a href=\"%s\" target=\"_blank\" class=\"DAT_N\">",
|
||||
Gbl.Hierarchy.Cty.WWW[Gbl.Prefs.Language]);
|
||||
HTM_A_Begin ("href=\"%s\" target=\"_blank\" class=\"DAT_N\"",
|
||||
Gbl.Hierarchy.Cty.WWW[Gbl.Prefs.Language]);
|
||||
fprintf (Gbl.F.Out,"%s",Gbl.Hierarchy.Cty.Name[Gbl.Prefs.Language]);
|
||||
if (!PrintView && Gbl.Hierarchy.Cty.WWW[Gbl.Prefs.Language][0])
|
||||
HTM_A_End ();
|
||||
|
@ -346,10 +346,10 @@ static void Cty_Configuration (bool PrintView)
|
|||
HTM_TD_End ();
|
||||
|
||||
HTM_TD_Begin ("class=\"DAT LM\"");
|
||||
fprintf (Gbl.F.Out,"<a href=\"%s/%s?cty=%ld\" class=\"DAT\" target=\"_blank\">",
|
||||
Cfg_URL_SWAD_CGI,
|
||||
Lan_STR_LANG_ID[Gbl.Prefs.Language],
|
||||
Gbl.Hierarchy.Cty.CtyCod);
|
||||
HTM_A_Begin ("href=\"%s/%s?cty=%ld\" class=\"DAT\" target=\"_blank\"",
|
||||
Cfg_URL_SWAD_CGI,
|
||||
Lan_STR_LANG_ID[Gbl.Prefs.Language],
|
||||
Gbl.Hierarchy.Cty.CtyCod);
|
||||
fprintf (Gbl.F.Out,"%s/%s?cty=%ld",
|
||||
Cfg_URL_SWAD_CGI,
|
||||
Lan_STR_LANG_ID[Gbl.Prefs.Language],
|
||||
|
|
|
@ -219,16 +219,15 @@ static void Crs_Configuration (bool PrintView)
|
|||
PutLink = !PrintView && Gbl.Hierarchy.Deg.WWW[0];
|
||||
HTM_DIV_Begin ("class=\"FRAME_TITLE FRAME_TITLE_BIG\"");
|
||||
if (PutLink)
|
||||
fprintf (Gbl.F.Out,"<a href=\"%s\" target=\"_blank\""
|
||||
" class=\"FRAME_TITLE_BIG\" title=\"%s\">",
|
||||
Gbl.Hierarchy.Deg.WWW,
|
||||
Gbl.Hierarchy.Deg.FullName);
|
||||
HTM_A_Begin ("href=\"%s\" target=\"_blank\""
|
||||
" class=\"FRAME_TITLE_BIG\" title=\"%s\"",
|
||||
Gbl.Hierarchy.Deg.WWW,
|
||||
Gbl.Hierarchy.Deg.FullName);
|
||||
Log_DrawLogo (Hie_DEG,Gbl.Hierarchy.Deg.DegCod,
|
||||
Gbl.Hierarchy.Deg.ShrtName,64,NULL,true);
|
||||
if (PutLink)
|
||||
HTM_A_End ();
|
||||
fprintf (Gbl.F.Out,"<br />%s",
|
||||
Gbl.Hierarchy.Crs.FullName);
|
||||
fprintf (Gbl.F.Out,"<br />%s",Gbl.Hierarchy.Crs.FullName);
|
||||
HTM_DIV_End ();
|
||||
|
||||
/***** Begin table *****/
|
||||
|
@ -432,10 +431,10 @@ static void Crs_Configuration (bool PrintView)
|
|||
HTM_TD_End ();
|
||||
|
||||
HTM_TD_Begin ("class=\"DAT LM\"");
|
||||
fprintf (Gbl.F.Out,"<a href=\"%s/%s?crs=%ld\" class=\"DAT\" target=\"_blank\">",
|
||||
Cfg_URL_SWAD_CGI,
|
||||
Lan_STR_LANG_ID[Gbl.Prefs.Language],
|
||||
Gbl.Hierarchy.Crs.CrsCod);
|
||||
HTM_A_Begin ("href=\"%s/%s?crs=%ld\" class=\"DAT\" target=\"_blank\"",
|
||||
Cfg_URL_SWAD_CGI,
|
||||
Lan_STR_LANG_ID[Gbl.Prefs.Language],
|
||||
Gbl.Hierarchy.Crs.CrsCod);
|
||||
fprintf (Gbl.F.Out,"%s/%s?crs=%ld",
|
||||
Cfg_URL_SWAD_CGI,
|
||||
Lan_STR_LANG_ID[Gbl.Prefs.Language],
|
||||
|
|
|
@ -323,10 +323,10 @@ static void Deg_Configuration (bool PrintView)
|
|||
PutLink = !PrintView && Gbl.Hierarchy.Deg.WWW[0];
|
||||
HTM_DIV_Begin ("class=\"FRAME_TITLE FRAME_TITLE_BIG\"");
|
||||
if (PutLink)
|
||||
fprintf (Gbl.F.Out,"<a href=\"%s\" target=\"_blank\""
|
||||
" class=\"FRAME_TITLE_BIG\" title=\"%s\">",
|
||||
Gbl.Hierarchy.Deg.WWW,
|
||||
Gbl.Hierarchy.Deg.FullName);
|
||||
HTM_A_Begin ("href=\"%s\" target=\"_blank\""
|
||||
" class=\"FRAME_TITLE_BIG\" title=\"%s\">",
|
||||
Gbl.Hierarchy.Deg.WWW,
|
||||
Gbl.Hierarchy.Deg.FullName);
|
||||
Log_DrawLogo (Hie_DEG,Gbl.Hierarchy.Deg.DegCod,
|
||||
Gbl.Hierarchy.Deg.ShrtName,64,NULL,true);
|
||||
fprintf (Gbl.F.Out,"<br />%s",
|
||||
|
@ -473,8 +473,8 @@ static void Deg_Configuration (bool PrintView)
|
|||
else // I can not change degree WWW
|
||||
{
|
||||
HTM_DIV_Begin ("class=\"EXTERNAL_WWW_LONG\"");
|
||||
fprintf (Gbl.F.Out,"<a href=\"%s\" target=\"_blank\" class=\"DAT\">",
|
||||
Gbl.Hierarchy.Deg.WWW);
|
||||
HTM_A_Begin ("href=\"%s\" target=\"_blank\" class=\"DAT\"",
|
||||
Gbl.Hierarchy.Deg.WWW);
|
||||
fprintf (Gbl.F.Out,"%s",Gbl.Hierarchy.Deg.WWW);
|
||||
HTM_A_End ();
|
||||
HTM_DIV_End ();
|
||||
|
@ -490,10 +490,10 @@ static void Deg_Configuration (bool PrintView)
|
|||
HTM_TD_End ();
|
||||
|
||||
HTM_TD_Begin ("class=\"DAT LM\"");
|
||||
fprintf (Gbl.F.Out,"<a href=\"%s/%s?deg=%ld\" class=\"DAT\" target=\"_blank\">",
|
||||
Cfg_URL_SWAD_CGI,
|
||||
Lan_STR_LANG_ID[Gbl.Prefs.Language],
|
||||
Gbl.Hierarchy.Deg.DegCod);
|
||||
HTM_A_Begin ("href=\"%s/%s?deg=%ld\" class=\"DAT\" target=\"_blank\"",
|
||||
Cfg_URL_SWAD_CGI,
|
||||
Lan_STR_LANG_ID[Gbl.Prefs.Language],
|
||||
Gbl.Hierarchy.Deg.DegCod);
|
||||
fprintf (Gbl.F.Out,"%s/%s?deg=%ld",
|
||||
Cfg_URL_SWAD_CGI,
|
||||
Lan_STR_LANG_ID[Gbl.Prefs.Language],
|
||||
|
@ -835,8 +835,8 @@ static void Deg_ListDegreesForEdition (void)
|
|||
Str_Copy (WWW,Deg->WWW,
|
||||
Cns_MAX_BYTES_WWW);
|
||||
HTM_DIV_Begin ("class=\"EXTERNAL_WWW_SHORT\"");
|
||||
fprintf (Gbl.F.Out,"<a href=\"%s\" target=\"_blank\""
|
||||
" class=\"DAT\" title=\"%s\">",Deg->WWW,Deg->WWW);
|
||||
HTM_A_Begin ("href=\"%s\" target=\"_blank\" class=\"DAT\" title=\"%s\"",
|
||||
Deg->WWW,Deg->WWW);
|
||||
fprintf (Gbl.F.Out,"%s",WWW);
|
||||
HTM_A_End ();
|
||||
HTM_DIV_End ();
|
||||
|
|
|
@ -151,8 +151,8 @@ void Dpt_SeeDepts (void)
|
|||
HTM_TR_Begin (NULL);
|
||||
|
||||
HTM_TD_Begin ("class=\"LM\"");
|
||||
fprintf (Gbl.F.Out,"<a href=\"%s\" target=\"_blank\" class=\"DAT\">",
|
||||
Gbl.Dpts.Lst[NumDpt].WWW);
|
||||
HTM_A_Begin ("href=\"%s\" target=\"_blank\" class=\"DAT\"",
|
||||
Gbl.Dpts.Lst[NumDpt].WWW);
|
||||
fprintf (Gbl.F.Out,"%s",Gbl.Dpts.Lst[NumDpt].FullName);
|
||||
HTM_A_End ();
|
||||
HTM_TD_End ();
|
||||
|
|
|
@ -1049,8 +1049,8 @@ static void Exa_ShowExamAnnouncement (long ExaCod,
|
|||
if (TypeViewExamAnnouncement == Exa_PRINT_VIEW)
|
||||
fprintf (Gbl.F.Out,"<span class=\"%s\">",StyleTitle);
|
||||
else
|
||||
fprintf (Gbl.F.Out,"<a href=\"%s\" target=\"_blank\" class=\"%s\">",
|
||||
Ins.WWW,StyleTitle);
|
||||
HTM_A_Begin ("href=\"%s\" target=\"_blank\" class=\"%s\"",
|
||||
Ins.WWW,StyleTitle);
|
||||
Log_DrawLogo (Hie_INS,Ins.InsCod,Ins.FullName,64,NULL,true);
|
||||
fprintf (Gbl.F.Out,"<br />%s",
|
||||
Ins.FullName);
|
||||
|
@ -1065,8 +1065,8 @@ static void Exa_ShowExamAnnouncement (long ExaCod,
|
|||
HTM_TR_Begin (NULL);
|
||||
HTM_TD_Begin ("colspan=\"2\" class=\"%s CM\"",StyleTitle);
|
||||
if (TypeViewExamAnnouncement == Exa_NORMAL_VIEW)
|
||||
fprintf (Gbl.F.Out,"<a href=\"%s\" target=\"_blank\" class=\"%s\">",
|
||||
Gbl.Hierarchy.Deg.WWW,StyleTitle);
|
||||
HTM_A_Begin ("href=\"%s\" target=\"_blank\" class=\"%s\"",
|
||||
Gbl.Hierarchy.Deg.WWW,StyleTitle);
|
||||
fprintf (Gbl.F.Out,"%s",Gbl.Hierarchy.Deg.FullName);
|
||||
if (TypeViewExamAnnouncement == Exa_NORMAL_VIEW)
|
||||
HTM_A_End ();
|
||||
|
|
|
@ -10065,9 +10065,8 @@ static void Brw_WriteBigLinkToDownloadFile (const char *URL,
|
|||
Txt_Download;
|
||||
|
||||
/* Put anchor and filename */
|
||||
fprintf (Gbl.F.Out,"<a href=\"%s\" class=\"FILENAME_TXT\""
|
||||
" title=\"%s\" target=\"_blank\">",
|
||||
URL,Title);
|
||||
HTM_A_Begin ("href=\"%s\" class=\"FILENAME_TXT\" title=\"%s\" target=\"_blank\"",
|
||||
URL,Title);
|
||||
Brw_PutIconFile (32,FileMetadata->FilFolLnk.Type,FileMetadata->FilFolLnk.Name);
|
||||
fprintf (Gbl.F.Out," %s "
|
||||
"<img src=\"%s/download.svg\""
|
||||
|
@ -10117,8 +10116,8 @@ static void Brw_WriteSmallLinkToDownloadFile (const char *URL,
|
|||
else
|
||||
{
|
||||
/* Put anchor and filename */
|
||||
fprintf (Gbl.F.Out,"<a href=\"%s\" class=\"DAT\" title=\"%s\" target=\"_blank\">",
|
||||
URL,FileNameToShow);
|
||||
HTM_A_Begin ("href=\"%s\" class=\"DAT\" title=\"%s\" target=\"_blank\"",
|
||||
URL,FileNameToShow);
|
||||
fprintf (Gbl.F.Out,"%s",FileNameToShow);
|
||||
HTM_A_End ();
|
||||
}
|
||||
|
|
|
@ -928,8 +928,8 @@ static void Ind_ShowTableOfCoursesWithIndicators (Ind_IndicatorsLayout_t Indicat
|
|||
HTM_TD_End ();
|
||||
|
||||
HTM_TD_Begin ("class=\"DAT_SMALL LM COLOR%u\"",Gbl.RowEvenOdd);
|
||||
fprintf (Gbl.F.Out,"<a href=\"%s/?crs=%ld&act=%ld\" target=\"_blank\">",
|
||||
Cfg_URL_SWAD_CGI,CrsCod,ActCod);
|
||||
HTM_A_Begin ("href=\"%s/?crs=%ld&act=%ld\" target=\"_blank\"",
|
||||
Cfg_URL_SWAD_CGI,CrsCod,ActCod);
|
||||
fprintf (Gbl.F.Out,"%s/?crs=%ld&act=%ld",
|
||||
Cfg_URL_SWAD_CGI,CrsCod,ActCod);
|
||||
HTM_A_End ();
|
||||
|
@ -1038,8 +1038,8 @@ static void Ind_ShowTableOfCoursesWithIndicators (Ind_IndicatorsLayout_t Indicat
|
|||
HTM_TD_End ();
|
||||
|
||||
HTM_TD_Begin ("class=\"DAT_SMALL LM COLOR%u\"",Gbl.RowEvenOdd);
|
||||
fprintf (Gbl.F.Out,"<a href=\"%s/?crs=%ld&act=%ld\" target=\"_blank\">",
|
||||
Cfg_URL_SWAD_CGI,CrsCod,ActCod);
|
||||
HTM_A_Begin ("href=\"%s/?crs=%ld&act=%ld\" target=\"_blank\"",
|
||||
Cfg_URL_SWAD_CGI,CrsCod,ActCod);
|
||||
fprintf (Gbl.F.Out,"%s/?crs=%ld&act=%ld",
|
||||
Cfg_URL_SWAD_CGI,CrsCod,ActCod);
|
||||
HTM_A_End ();
|
||||
|
|
|
@ -1048,8 +1048,8 @@ static void Inf_ShowPage (const char *URL)
|
|||
Help[Gbl.Crs.Info.Type],Box_NOT_CLOSABLE);
|
||||
|
||||
/***** Link to view in a new window *****/
|
||||
fprintf (Gbl.F.Out,"<a href=\"%s\" target=\"_blank\" class=\"%s\">",
|
||||
URL,The_ClassFormOutBoxBold[Gbl.Prefs.Theme]);
|
||||
HTM_A_Begin ("href=\"%s\" target=\"_blank\" class=\"%s\"",
|
||||
URL,The_ClassFormOutBoxBold[Gbl.Prefs.Theme]);
|
||||
Ico_PutIconTextLink ("expand-arrows-alt.svg",
|
||||
Txt_View_in_a_new_window);
|
||||
HTM_A_End ();
|
||||
|
|
|
@ -337,10 +337,9 @@ static void Ins_Configuration (bool PrintView)
|
|||
PutLink = !PrintView && Gbl.Hierarchy.Ins.WWW[0];
|
||||
HTM_DIV_Begin ("class=\"FRAME_TITLE FRAME_TITLE_BIG\"");
|
||||
if (PutLink)
|
||||
fprintf (Gbl.F.Out,"<a href=\"%s\" target=\"_blank\""
|
||||
" class=\"FRAME_TITLE_BIG\" title=\"%s\">",
|
||||
Gbl.Hierarchy.Ins.WWW,
|
||||
Gbl.Hierarchy.Ins.FullName);
|
||||
HTM_A_Begin ("href=\"%s\" target=\"_blank\" class=\"FRAME_TITLE_BIG\" title=\"%s\"",
|
||||
Gbl.Hierarchy.Ins.WWW,
|
||||
Gbl.Hierarchy.Ins.FullName);
|
||||
Log_DrawLogo (Hie_INS,Gbl.Hierarchy.Ins.InsCod,
|
||||
Gbl.Hierarchy.Ins.ShrtName,64,NULL,true);
|
||||
fprintf (Gbl.F.Out,"<br />%s",Gbl.Hierarchy.Ins.FullName);
|
||||
|
@ -487,10 +486,9 @@ static void Ins_Configuration (bool PrintView)
|
|||
else // I can not change institution WWW
|
||||
{
|
||||
HTM_DIV_Begin ("class=\"EXTERNAL_WWW_LONG\"");
|
||||
fprintf (Gbl.F.Out,"<a href=\"%s\" target=\"_blank\" class=\"DAT\">"
|
||||
"%s",
|
||||
Gbl.Hierarchy.Ins.WWW,
|
||||
Gbl.Hierarchy.Ins.WWW);
|
||||
HTM_A_Begin ("href=\"%s\" target=\"_blank\" class=\"DAT\">",
|
||||
Gbl.Hierarchy.Ins.WWW);
|
||||
fprintf (Gbl.F.Out,"%s",Gbl.Hierarchy.Ins.WWW);
|
||||
HTM_A_End ();
|
||||
HTM_DIV_End ();
|
||||
}
|
||||
|
@ -506,11 +504,11 @@ static void Ins_Configuration (bool PrintView)
|
|||
HTM_TD_End ();
|
||||
|
||||
HTM_TD_Begin ("class=\"LM\"");
|
||||
fprintf (Gbl.F.Out,"<a href=\"%s/%s?ins=%ld\" class=\"DAT\" target=\"_blank\">"
|
||||
"%s/%s?ins=%ld",
|
||||
Cfg_URL_SWAD_CGI,
|
||||
Lan_STR_LANG_ID[Gbl.Prefs.Language],
|
||||
Gbl.Hierarchy.Ins.InsCod,
|
||||
HTM_A_Begin ("href=\"%s/%s?ins=%ld\" class=\"DAT\" target=\"_blank\"",
|
||||
Cfg_URL_SWAD_CGI,
|
||||
Lan_STR_LANG_ID[Gbl.Prefs.Language],
|
||||
Gbl.Hierarchy.Ins.InsCod);
|
||||
fprintf (Gbl.F.Out,"%s/%s?ins=%ld",
|
||||
Cfg_URL_SWAD_CGI,
|
||||
Lan_STR_LANG_ID[Gbl.Prefs.Language],
|
||||
Gbl.Hierarchy.Ins.InsCod);
|
||||
|
@ -1557,8 +1555,8 @@ static void Ins_ListInstitutionsForEdition (void)
|
|||
Str_Copy (WWW,Ins->WWW,
|
||||
Cns_MAX_BYTES_WWW);
|
||||
HTM_DIV_Begin ("class=\"EXTERNAL_WWW_SHORT\"");
|
||||
fprintf (Gbl.F.Out,"<a href=\"%s\" target=\"_blank\""
|
||||
" class=\"DAT\" title=\"%s\">",Ins->WWW,Ins->WWW);
|
||||
HTM_A_Begin ("href=\"%s\" target=\"_blank\" class=\"DAT\" title=\"%s\"",
|
||||
Ins->WWW,Ins->WWW);
|
||||
fprintf (Gbl.F.Out,"%s",WWW);
|
||||
HTM_A_End ();
|
||||
HTM_DIV_End ();
|
||||
|
|
|
@ -1152,9 +1152,9 @@ static void Lay_ShowRightColumn (void)
|
|||
{
|
||||
/***** SWADroid advertisement *****/
|
||||
HTM_DIV_Begin ("class=\"LEFT_RIGHT_CELL\"");
|
||||
fprintf (Gbl.F.Out,"<a href=\"https://play.google.com/store/apps/details?id=es.ugr.swad.swadroid\""
|
||||
" target=\"_blank\" title=\"%s\">",
|
||||
Txt_If_you_have_an_Android_device_try_SWADroid);
|
||||
HTM_A_Begin ("href=\"https://play.google.com/store/apps/details?id=es.ugr.swad.swadroid\""
|
||||
" target=\"_blank\" title=\"%s\"",
|
||||
Txt_If_you_have_an_Android_device_try_SWADroid);
|
||||
fprintf (Gbl.F.Out,"<img src=\"%s/SWADroid120x200.png\""
|
||||
" alt=\"SWADroid\" title=\"SWADroid\""
|
||||
" style=\"width:150px; height:250px;\" />",
|
||||
|
@ -1430,8 +1430,7 @@ static void Lay_WriteAboutZone (void)
|
|||
fprintf (Gbl.F.Out,"<address id=\"about_zone\" class=\"ABOUT\">");
|
||||
|
||||
/***** Institution and centre hosting the platform *****/
|
||||
fprintf (Gbl.F.Out,"<a href=\"%s\" class=\"ABOUT\" target=\"_blank\">",
|
||||
Cfg_ABOUT_URL);
|
||||
HTM_A_Begin ("href=\"%s\" class=\"ABOUT\" target=\"_blank\"",Cfg_ABOUT_URL);
|
||||
fprintf (Gbl.F.Out,"<img src=\"%s/%s\""
|
||||
" alt=\"%s\" title=\"%s\""
|
||||
" style=\"width:%upx; height:%upx;\" />",
|
||||
|
@ -1457,8 +1456,7 @@ static void Lay_WriteAboutZone (void)
|
|||
HTM_DIV_Begin (NULL);
|
||||
|
||||
/* About */
|
||||
fprintf (Gbl.F.Out,"<a href=\"%s\" class=\"ABOUT\" target=\"_blank\">",
|
||||
Cfg_ABOUT_SWAD_URL);
|
||||
HTM_A_Begin ("href=\"%s\" class=\"ABOUT\" target=\"_blank\"",Cfg_ABOUT_SWAD_URL);
|
||||
fprintf (Gbl.F.Out,Txt_About_X,Log_PLATFORM_VERSION);
|
||||
HTM_A_End ();
|
||||
fprintf (Gbl.F.Out," ");
|
||||
|
@ -1604,7 +1602,7 @@ void Lay_WriteHeaderClassPhoto (bool PrintView,bool DrawingClassPhoto,
|
|||
if (InsCod > 0)
|
||||
{
|
||||
if (!PrintView)
|
||||
fprintf (Gbl.F.Out,"<a href=\"%s\" target=\"_blank\">",Ins.WWW);
|
||||
HTM_A_Begin ("href=\"%s\" target=\"_blank\"",Ins.WWW);
|
||||
Log_DrawLogo (Hie_INS,Ins.InsCod,Ins.ShrtName,40,NULL,true);
|
||||
if (!PrintView)
|
||||
HTM_A_End ();
|
||||
|
@ -1616,9 +1614,8 @@ void Lay_WriteHeaderClassPhoto (bool PrintView,bool DrawingClassPhoto,
|
|||
if (InsCod > 0)
|
||||
{
|
||||
if (!PrintView)
|
||||
fprintf (Gbl.F.Out,"<a href=\"%s\" target=\"_blank\""
|
||||
" class=\"CLASSPHOTO_TITLE\">",
|
||||
Ins.WWW);
|
||||
HTM_A_Begin ("href=\"%s\" target=\"_blank\" class=\"CLASSPHOTO_TITLE\"",
|
||||
Ins.WWW);
|
||||
fprintf (Gbl.F.Out,"%s",Ins.FullName);
|
||||
if (!PrintView)
|
||||
HTM_A_End ();
|
||||
|
@ -1628,9 +1625,8 @@ void Lay_WriteHeaderClassPhoto (bool PrintView,bool DrawingClassPhoto,
|
|||
if (Ins.InsCod > 0)
|
||||
fprintf (Gbl.F.Out," - ");
|
||||
if (!PrintView)
|
||||
fprintf (Gbl.F.Out,"<a href=\"%s\" target=\"_blank\""
|
||||
" class=\"CLASSPHOTO_TITLE\">",
|
||||
Deg.WWW);
|
||||
HTM_A_Begin ("href=\"%s\" target=\"_blank\" class=\"CLASSPHOTO_TITLE\"",
|
||||
Deg.WWW);
|
||||
fprintf (Gbl.F.Out,"%s",Deg.FullName);
|
||||
if (!PrintView)
|
||||
HTM_A_End ();
|
||||
|
@ -1652,9 +1648,8 @@ void Lay_WriteHeaderClassPhoto (bool PrintView,bool DrawingClassPhoto,
|
|||
if (DegCod > 0)
|
||||
{
|
||||
if (!PrintView)
|
||||
fprintf (Gbl.F.Out,"<a href=\"%s\" target=\"_blank\""
|
||||
" class=\"CLASSPHOTO_TITLE\">",
|
||||
Deg.WWW);
|
||||
HTM_A_Begin ("href=\"%s\" target=\"_blank\" class=\"CLASSPHOTO_TITLE\"",
|
||||
Deg.WWW);
|
||||
Log_DrawLogo (Hie_DEG,Deg.DegCod,Deg.ShrtName,40,NULL,true);
|
||||
if (!PrintView)
|
||||
HTM_A_End ();
|
||||
|
@ -1687,8 +1682,8 @@ void Lay_AdvertisementMobile (void)
|
|||
/***** Show advertisement *****/
|
||||
HTM_TR_Begin (NULL);
|
||||
HTM_TD_Begin ("class=\"DAT CM\"");
|
||||
fprintf (Gbl.F.Out,"<a href=\"https://play.google.com/store/apps/details?id=es.ugr.swad.swadroid\""
|
||||
" class=\"DAT\">");
|
||||
HTM_A_Begin ("href=\"https://play.google.com/store/apps/details?id=es.ugr.swad.swadroid\""
|
||||
" class=\"DAT\"");
|
||||
fprintf (Gbl.F.Out,"%s<br /><br />"
|
||||
"<img src=\"%s/SWADroid200x300.png\""
|
||||
" alt=\"SWADroid\" title=\"%s\""
|
||||
|
|
|
@ -196,10 +196,9 @@ static void Lnk_WriteListOfLinks (void)
|
|||
{
|
||||
/* Write data of this link */
|
||||
HTM_LI_Begin ("class=\"INS_LNK\"");
|
||||
fprintf (Gbl.F.Out,"<a href=\"%s\" title=\"%s\" class=\"INS_LNK\""
|
||||
" target=\"_blank\">",
|
||||
Gbl.Links.Lst[NumLnk].WWW,
|
||||
Gbl.Links.Lst[NumLnk].FullName);
|
||||
HTM_A_Begin ("href=\"%s\" title=\"%s\" class=\"INS_LNK\" target=\"_blank\"",
|
||||
Gbl.Links.Lst[NumLnk].WWW,
|
||||
Gbl.Links.Lst[NumLnk].FullName);
|
||||
fprintf (Gbl.F.Out,"%s",Gbl.Links.Lst[NumLnk].ShrtName);
|
||||
HTM_A_End ();
|
||||
HTM_LI_End ();
|
||||
|
|
20
swad_mail.c
20
swad_mail.c
|
@ -963,8 +963,8 @@ static void Mai_ListEmails (void)
|
|||
Lay_ShowErrorAndExit ("The space allocated to store email addresses is full.");
|
||||
Str_Concat (StrAddresses,UsrDat.Email,
|
||||
Mai_MAX_BYTES_STR_ADDR);
|
||||
fprintf (Gbl.F.Out,"<a href=\"mailto:%s?subject=%s\">",
|
||||
UsrDat.Email,Gbl.Hierarchy.Crs.FullName);
|
||||
HTM_A_Begin ("href=\"mailto:%s?subject=%s\"",
|
||||
UsrDat.Email,Gbl.Hierarchy.Crs.FullName);
|
||||
fprintf (Gbl.F.Out,"%s",UsrDat.Email);
|
||||
HTM_A_End ();
|
||||
|
||||
|
@ -994,14 +994,14 @@ static void Mai_ListEmails (void)
|
|||
Mnu_ContextMenuBegin ();
|
||||
|
||||
/* Open the client email program */
|
||||
fprintf (Gbl.F.Out,"<a href=\"mailto:%s?subject=%s&cc=%s&bcc=%s\""
|
||||
" title=\"%s\" class=\"%s\">",
|
||||
Gbl.Usrs.Me.UsrDat.Email,
|
||||
Gbl.Hierarchy.Crs.FullName,
|
||||
Gbl.Usrs.Me.UsrDat.Email,
|
||||
StrAddresses,
|
||||
Txt_Create_email_message,
|
||||
The_ClassFormOutBoxBold[Gbl.Prefs.Theme]);
|
||||
HTM_A_Begin ("href=\"mailto:%s?subject=%s&cc=%s&bcc=%s\""
|
||||
" title=\"%s\" class=\"%s\"",
|
||||
Gbl.Usrs.Me.UsrDat.Email,
|
||||
Gbl.Hierarchy.Crs.FullName,
|
||||
Gbl.Usrs.Me.UsrDat.Email,
|
||||
StrAddresses,
|
||||
Txt_Create_email_message,
|
||||
The_ClassFormOutBoxBold[Gbl.Prefs.Theme]);
|
||||
Ico_PutIconTextLink ("marker.svg",
|
||||
Txt_Create_email_message);
|
||||
HTM_A_End ();
|
||||
|
|
11
swad_match.c
11
swad_match.c
|
@ -2867,9 +2867,9 @@ static void Mch_PutBigButton (Act_Action_t NextAction,const char *Id,
|
|||
|
||||
/***** Put icon with link *****/
|
||||
HTM_DIV_Begin ("class=\"MCH_BUTTON_CONTAINER\"");
|
||||
fprintf (Gbl.F.Out,"<a href=\"\" class=\"MCH_BUTTON_ON\" title=\"%s\" "
|
||||
" onclick=\"document.getElementById('%s').submit();"
|
||||
" return false;\">",Txt,Id);
|
||||
HTM_A_Begin ("href=\"\" class=\"MCH_BUTTON_ON\" title=\"%s\" "
|
||||
" onclick=\"document.getElementById('%s').submit();return false;\"",
|
||||
Txt,Id);
|
||||
fprintf (Gbl.F.Out,"<i class=\"%s\"></i>",Icon);
|
||||
HTM_A_End ();
|
||||
HTM_DIV_End ();
|
||||
|
@ -2894,9 +2894,8 @@ static void Mch_PutBigButtonClose (void)
|
|||
|
||||
/***** Put icon with link *****/
|
||||
HTM_DIV_Begin ("class=\"MCH_BUTTON_CONTAINER\"");
|
||||
fprintf (Gbl.F.Out,"<a href=\"\" class=\"MCH_BUTTON_ON\" title=\"%s\" "
|
||||
" onclick=\"window.close();"
|
||||
" return false;\"\">",Txt_Close);
|
||||
HTM_A_Begin ("href=\"\" class=\"MCH_BUTTON_ON\" title=\"%s\" "
|
||||
" onclick=\"window.close();return false;\"\"",Txt_Close);
|
||||
fprintf (Gbl.F.Out,"<i class=\"%s\"></i>",Mch_ICON_CLOSE);
|
||||
HTM_A_End ();
|
||||
HTM_DIV_End ();
|
||||
|
|
|
@ -391,8 +391,7 @@ void Med_PutMediaUploader (int NumMediaInForm,const char *ClassInput)
|
|||
|
||||
/***** Icon 'clip' *****/
|
||||
HTM_DIV_Begin ("id=\"%s_med_ico\"",Id); // <id>_med_ico
|
||||
fprintf (Gbl.F.Out,"<a href=\"\""
|
||||
" onclick=\"mediaActivateMediaUploader('%s');return false;\">",
|
||||
HTM_A_Begin ("href=\"\" onclick=\"mediaActivateMediaUploader('%s');return false;\"",
|
||||
Id);
|
||||
fprintf (Gbl.F.Out,"<img src=\"%s/paperclip.svg\""
|
||||
" alt=\"%s\" title=\"%s\""
|
||||
|
@ -490,8 +489,8 @@ static void Med_PutIconMediaUploader (const char UniqueId[Frm_MAX_BYTES_ID + 1],
|
|||
/***** Icon to activate form in media uploader *****/
|
||||
HTM_DIV_Begin ("id=\"%s_%s\" class=\"PREF_OFF\"", // <id>_IconSuffix
|
||||
UniqueId,MediaUploader->IconSuffix);
|
||||
fprintf (Gbl.F.Out,"<a href=\"\" onclick=\"%s('%s');return false;\">",
|
||||
MediaUploader->FunctionName,UniqueId);
|
||||
HTM_A_Begin ("href=\"\" onclick=\"%s('%s');return false;\"",
|
||||
MediaUploader->FunctionName,UniqueId);
|
||||
fprintf (Gbl.F.Out,"<img src=\"%s/%s\" alt=\"%s\" title=\"%s\""
|
||||
" class=\"ICO_HIGHLIGHT ICOx16\" />",
|
||||
Cfg_URL_ICON_PUBLIC,MediaUploader->Icon,
|
||||
|
@ -1477,7 +1476,7 @@ void Med_ShowMedia (struct Media *Media,
|
|||
if (Media->URL[0])
|
||||
PutLink = true;
|
||||
if (PutLink)
|
||||
fprintf (Gbl.F.Out,"<a href=\"%s\" target=\"_blank\">",Media->URL);
|
||||
HTM_A_Begin ("href=\"%s\" target=\"_blank\"",Media->URL);
|
||||
|
||||
/* Create a temporary public directory used to show the media */
|
||||
Brw_CreateDirDownloadTmp ();
|
||||
|
|
|
@ -252,8 +252,7 @@ static void Net_ShowAWebOrSocialNet (const char *URL,
|
|||
{
|
||||
/***** Write link and icon *****/
|
||||
HTM_DIV_Begin ("class=\"ICO_HIGHLIGHT\" style=\"display:inline;\"");
|
||||
fprintf (Gbl.F.Out,"<a href=\"%s\" target=\"_blank\" title=\"%s\">",
|
||||
URL,Title);
|
||||
HTM_A_Begin ("href=\"%s\" target=\"_blank\" title=\"%s\"",URL,Title);
|
||||
fprintf (Gbl.F.Out,"<img src=\"%s/%s\""
|
||||
" alt=\"%s\" title=\"%s\""
|
||||
" class=\"ICO16x16\" />",
|
||||
|
|
|
@ -369,6 +369,7 @@ void Not_ShowNotices (Not_Listing_t TypeNoticesListing,long HighlightNotCod)
|
|||
long UsrCod;
|
||||
unsigned UnsignedNum;
|
||||
Not_Status_t Status;
|
||||
char RSSLink[Cns_MAX_BYTES_WWW + 1];
|
||||
|
||||
/***** Trivial check *****/
|
||||
if (Gbl.Hierarchy.Level != Hie_CRS) // No course selected
|
||||
|
@ -470,9 +471,8 @@ void Not_ShowNotices (Not_Listing_t TypeNoticesListing,long HighlightNotCod)
|
|||
|
||||
/* Put a link to the RSS file */
|
||||
HTM_DIV_Begin ("class=\"CM\"");
|
||||
fprintf (Gbl.F.Out,"<a href=\"");
|
||||
RSS_WriteRSSLink (Gbl.F.Out,Gbl.Hierarchy.Crs.CrsCod);
|
||||
fprintf (Gbl.F.Out,"\" target=\"_blank\">");
|
||||
RSS_BuildRSSLink (RSSLink,Gbl.Hierarchy.Crs.CrsCod);
|
||||
HTM_A_Begin ("href=\"%s\" target=\"_blank\"",RSSLink);
|
||||
fprintf (Gbl.F.Out,"<img src=\"%s/rss-square.svg\""
|
||||
" alt=\"RSS\" title=\"RSS\""
|
||||
" class=\"ICO16x16\" />",
|
||||
|
|
|
@ -137,8 +137,8 @@ void Plg_ListPlugins (void)
|
|||
HTM_TR_Begin (NULL);
|
||||
|
||||
HTM_TD_Begin ("class=\"DAT LM\" style=\"width:45px;\"");
|
||||
fprintf (Gbl.F.Out,"<a href=\"%s\" title=\"%s\" class=\"DAT\" target=\"_blank\">",
|
||||
URL,Plg->Name);
|
||||
HTM_A_Begin ("href=\"%s\" title=\"%s\" class=\"DAT\" target=\"_blank\"",
|
||||
URL,Plg->Name);
|
||||
fprintf (Gbl.F.Out,"<img src=\"%s/%s24x24.gif\" alt=\"%s\" title=\"%s\""
|
||||
" class=\"ICO40x40\" />",
|
||||
Cfg_URL_ICON_PLUGINS_PUBLIC,Gbl.Plugins.Lst[NumPlg].Logo,
|
||||
|
@ -147,8 +147,8 @@ void Plg_ListPlugins (void)
|
|||
HTM_TD_End ();
|
||||
|
||||
HTM_TD_Begin ("class=\"DAT LM\"");
|
||||
fprintf (Gbl.F.Out,"<a href=\"%s\" title=\"%s\" class=\"DAT\" target=\"_blank\">",
|
||||
URL,Plg->Name);
|
||||
HTM_A_Begin ("href=\"%s\" title=\"%s\" class=\"DAT\" target=\"_blank\"",
|
||||
URL,Plg->Name);
|
||||
fprintf (Gbl.F.Out,"%s",Plg->Name);
|
||||
HTM_A_End ();
|
||||
HTM_TD_End ();
|
||||
|
|
|
@ -1457,10 +1457,10 @@ static void Prj_PutIconToToggleProject (unsigned UniqueId,
|
|||
extern const char *The_ClassFormInBox[The_NUM_THEMES];
|
||||
|
||||
/***** Link to toggle on/off some fields of project *****/
|
||||
fprintf (Gbl.F.Out,"<a href=\"\" title=\"%s\" class=\"%s\""
|
||||
" onclick=\"toggleProject('%u');return false;\" />",
|
||||
Text,The_ClassFormInBox[Gbl.Prefs.Theme],
|
||||
UniqueId);
|
||||
HTM_A_Begin ("href=\"\" title=\"%s\" class=\"%s\""
|
||||
" onclick=\"toggleProject('%u');return false;\"",
|
||||
Text,The_ClassFormInBox[Gbl.Prefs.Theme],
|
||||
UniqueId);
|
||||
Ico_PutIconTextLink (Icon,Text);
|
||||
HTM_A_End ();
|
||||
}
|
||||
|
@ -1601,8 +1601,8 @@ static void Prj_ShowOneProjectDepartment (const struct Project *Prj,
|
|||
break;
|
||||
}
|
||||
if (PutLink)
|
||||
fprintf (Gbl.F.Out,"<a href=\"%s\" target=\"_blank\" class=\"%s\">",
|
||||
Dpt.WWW,ClassData);
|
||||
HTM_A_Begin ("href=\"%s\" target=\"_blank\" class=\"%s\"",
|
||||
Dpt.WWW,ClassData);
|
||||
fprintf (Gbl.F.Out,"%s",Dpt.FullName);
|
||||
if (PutLink)
|
||||
HTM_A_End ();
|
||||
|
@ -1777,7 +1777,7 @@ static void Prj_ShowOneProjectURL (const struct Project *Prj,
|
|||
break;
|
||||
}
|
||||
if (PutLink)
|
||||
fprintf (Gbl.F.Out,"<a href=\"%s\" target=\"_blank\">",Prj->URL);
|
||||
HTM_A_Begin ("href=\"%s\" target=\"_blank\"",Prj->URL);
|
||||
fprintf (Gbl.F.Out,"%s",Prj->URL);
|
||||
if (PutLink)
|
||||
HTM_A_End ();
|
||||
|
|
|
@ -2850,8 +2850,7 @@ static void Rec_ShowEmail (struct UsrData *UsrDat,const char *ClassForm)
|
|||
HTM_DIV_Begin ("class=\"REC_EMAIL\""); // Limited width
|
||||
if (Mai_ICanSeeOtherUsrEmail (UsrDat))
|
||||
{
|
||||
fprintf (Gbl.F.Out,"<a href=\"mailto:%s\" class=\"REC_DAT_BOLD\">",
|
||||
UsrDat->Email);
|
||||
HTM_A_Begin ("href=\"mailto:%s\" class=\"REC_DAT_BOLD\"",UsrDat->Email);
|
||||
fprintf (Gbl.F.Out,"%s",UsrDat->Email);
|
||||
HTM_A_End ();
|
||||
}
|
||||
|
@ -3465,8 +3464,7 @@ static void Rec_ShowLocalPhone (struct UsrData *UsrDat,
|
|||
UsrDat->LocalPhone);
|
||||
else if (UsrDat->LocalPhone[0])
|
||||
{
|
||||
fprintf (Gbl.F.Out,"<a href=\"tel:%s\" class=\"REC_DAT_BOLD\">",
|
||||
UsrDat->LocalPhone);
|
||||
HTM_A_Begin ("href=\"tel:%s\" class=\"REC_DAT_BOLD\"",UsrDat->LocalPhone);
|
||||
fprintf (Gbl.F.Out,"%s",UsrDat->LocalPhone);
|
||||
HTM_A_End ();
|
||||
}
|
||||
|
@ -3544,8 +3542,7 @@ static void Rec_ShowFamilyPhone (struct UsrData *UsrDat,
|
|||
UsrDat->FamilyPhone);
|
||||
else if (UsrDat->FamilyPhone[0])
|
||||
{
|
||||
fprintf (Gbl.F.Out,"<a href=\"tel:%s\" class=\"REC_DAT_BOLD\">",
|
||||
UsrDat->FamilyPhone);
|
||||
HTM_A_Begin ("href=\"tel:%s\" class=\"REC_DAT_BOLD\"",UsrDat->FamilyPhone);
|
||||
fprintf (Gbl.F.Out,"%s",UsrDat->FamilyPhone);
|
||||
HTM_A_End ();
|
||||
}
|
||||
|
@ -3637,9 +3634,8 @@ static void Rec_ShowInstitution (struct Instit *Ins,
|
|||
if (Ins->InsCod > 0)
|
||||
{
|
||||
if (Ins->WWW[0])
|
||||
fprintf (Gbl.F.Out,"<a href=\"%s\" target=\"_blank\""
|
||||
" class=\"REC_DAT_BOLD\">",
|
||||
Ins->WWW);
|
||||
HTM_A_Begin ("href=\"%s\" target=\"_blank\" class=\"REC_DAT_BOLD\"",
|
||||
Ins->WWW);
|
||||
fprintf (Gbl.F.Out,"%s",Ins->FullName);
|
||||
if (Ins->WWW[0])
|
||||
HTM_A_End ();
|
||||
|
@ -3673,9 +3669,8 @@ static void Rec_ShowCentre (struct UsrData *UsrDat,
|
|||
Ctr.CtrCod = UsrDat->Tch.CtrCod;
|
||||
Ctr_GetDataOfCentreByCod (&Ctr);
|
||||
if (Ctr.WWW[0])
|
||||
fprintf (Gbl.F.Out,"<a href=\"%s\" target=\"_blank\""
|
||||
" class=\"REC_DAT_BOLD\">",
|
||||
Ctr.WWW);
|
||||
HTM_A_Begin ("href=\"%s\" target=\"_blank\" class=\"REC_DAT_BOLD\"",
|
||||
Ctr.WWW);
|
||||
fprintf (Gbl.F.Out,"%s",Ctr.FullName);
|
||||
if (Ctr.WWW[0])
|
||||
HTM_A_End ();
|
||||
|
@ -3710,9 +3705,8 @@ static void Rec_ShowDepartment (struct UsrData *UsrDat,
|
|||
Dpt.DptCod = UsrDat->Tch.DptCod;
|
||||
Dpt_GetDataOfDepartmentByCod (&Dpt);
|
||||
if (Dpt.WWW[0])
|
||||
fprintf (Gbl.F.Out,"<a href=\"%s\" target=\"_blank\""
|
||||
" class=\"REC_DAT_BOLD\">",
|
||||
Dpt.WWW);
|
||||
HTM_A_Begin ("href=\"%s\" target=\"_blank\" class=\"REC_DAT_BOLD\"",
|
||||
Dpt.WWW);
|
||||
fprintf (Gbl.F.Out,"%s",Dpt.FullName);
|
||||
if (Dpt.WWW[0])
|
||||
HTM_A_End ();
|
||||
|
@ -3764,8 +3758,8 @@ static void Rec_ShowOfficePhone (struct UsrData *UsrDat,
|
|||
HTM_TD_Begin ("class=\"REC_C2_BOT REC_DAT_BOLD LM\"");
|
||||
if (ShowData)
|
||||
{
|
||||
fprintf (Gbl.F.Out,"<a href=\"tel:%s\" class=\"REC_DAT_BOLD\">",
|
||||
UsrDat->Tch.OfficePhone);
|
||||
HTM_A_Begin ("href=\"tel:%s\" class=\"REC_DAT_BOLD\"",
|
||||
UsrDat->Tch.OfficePhone);
|
||||
fprintf (Gbl.F.Out,"%s",UsrDat->Tch.OfficePhone);
|
||||
HTM_A_End ();
|
||||
}
|
||||
|
@ -3783,9 +3777,9 @@ static void Rec_WriteLinkToDataProtectionClause (void)
|
|||
extern const char *Txt_DATA_PROTECTION_CLAUSE;
|
||||
|
||||
HTM_DIV_Begin ("class=\"CM\"");
|
||||
fprintf (Gbl.F.Out,"<a class=\"TIT\" href=\"%s/\" target=\"_blank\">",
|
||||
Cfg_URL_DATA_PROTECTION_PUBLIC);
|
||||
fprintf (Gbl.F.Out,"%s",Txt_DATA_PROTECTION_CLAUSE);
|
||||
HTM_A_Begin ("class=\"TIT\" href=\"%s/\" target=\"_blank\"",
|
||||
Cfg_URL_DATA_PROTECTION_PUBLIC);
|
||||
fprintf (Gbl.F.Out,"%s",Txt_DATA_PROTECTION_CLAUSE);
|
||||
HTM_A_End ();
|
||||
HTM_DIV_End ();
|
||||
}
|
||||
|
|
|
@ -275,10 +275,9 @@ static void Rep_PutLinkToMyUsageReport (struct Rep_Report *Report)
|
|||
|
||||
/***** Put anchor and report filename *****/
|
||||
HTM_DIV_Begin ("class=\"FILENAME_TXT CM\"");
|
||||
fprintf (Gbl.F.Out,"<a href=\"%s\" class=\"FILENAME_TXT\""
|
||||
" title=\"%s\" target=\"_blank\">",
|
||||
Report->Permalink,
|
||||
Txt_Report);
|
||||
HTM_A_Begin ("href=\"%s\" class=\"FILENAME_TXT\" title=\"%s\" target=\"_blank\"",
|
||||
Report->Permalink,
|
||||
Txt_Report);
|
||||
fprintf (Gbl.F.Out,"<img src=\"%s/file-alt.svg\" alt=\"%s\""
|
||||
" class=\"ICO64x64\" /><br />"
|
||||
"%s",
|
||||
|
|
|
@ -3314,9 +3314,9 @@ static void Sta_ShowNumHitsPerBanner (unsigned long NumRows,
|
|||
Lay_ShowErrorAndExit ("Wrong banner code.");
|
||||
Ban_GetDataOfBannerByCod (&Ban);
|
||||
HTM_TD_Begin ("class=\"LOG LT\"");
|
||||
fprintf (Gbl.F.Out,"<a href=\"%s\" title=\"%s\" class=\"DAT\" target=\"_blank\">",
|
||||
Ban.WWW,
|
||||
Ban.FullName);
|
||||
HTM_A_Begin ("href=\"%s\" title=\"%s\" class=\"DAT\" target=\"_blank\"",
|
||||
Ban.WWW,
|
||||
Ban.FullName);
|
||||
fprintf (Gbl.F.Out,"<img src=\"%s/%s\""
|
||||
" alt=\"%s\" title=\"%s\""
|
||||
" class=\"BANNER_SMALL\""
|
||||
|
|
29
swad_test.c
29
swad_test.c
|
@ -5340,11 +5340,12 @@ static void Tst_PutFormEditOneQst (char Stem[Cns_MAX_BYTES_TEXT + 1],
|
|||
snprintf (Gbl.Title,sizeof (Gbl.Title),
|
||||
"%s %c)",
|
||||
Txt_Expand,'a' + (char) NumOpt);
|
||||
fprintf (Gbl.F.Out,"<a href=\"\" id=\"exp_%u\"",NumOpt);
|
||||
if (DisplayRightColumn) // Answer does not have content
|
||||
fprintf (Gbl.F.Out," style=\"display:none;\""); // Hide icon
|
||||
fprintf (Gbl.F.Out," onclick=\"toggleAnswer('%u'); return false;\" />",
|
||||
NumOpt);
|
||||
HTM_A_Begin ("href=\"\" id=\"exp_%u\"%s"
|
||||
" onclick=\"toggleAnswer('%u');return false;\"",
|
||||
NumOpt,
|
||||
DisplayRightColumn ? " style=\"display:none;\"" : // Answer does have content ==> Hide icon
|
||||
"",
|
||||
NumOpt);
|
||||
fprintf (Gbl.F.Out,"<img src=\"%s/caret-right.svg\""
|
||||
" alt=\"%s\" title=\"%s\" class=\"ICO16x16\" />",
|
||||
Cfg_URL_ICON_PUBLIC,
|
||||
|
@ -5355,10 +5356,12 @@ static void Tst_PutFormEditOneQst (char Stem[Cns_MAX_BYTES_TEXT + 1],
|
|||
snprintf (Gbl.Title,sizeof (Gbl.Title),
|
||||
"%s %c)",
|
||||
Txt_Contract,'a' + (char) NumOpt);
|
||||
fprintf (Gbl.F.Out,"<a href=\"\" id=\"con_%u\"",NumOpt);
|
||||
if (!DisplayRightColumn) // Answer does not have content
|
||||
fprintf (Gbl.F.Out," style=\"display:none;\""); // Hide icon
|
||||
fprintf (Gbl.F.Out," onclick=\"toggleAnswer(%u); return false;\" />",NumOpt);
|
||||
HTM_A_Begin ("href=\"\" id=\"con_%u\"%s"
|
||||
" onclick=\"toggleAnswer(%u);return false;\"",
|
||||
NumOpt,
|
||||
DisplayRightColumn ? "" :
|
||||
" style=\"display:none;\"", // Answer does not have content ==> Hide icon
|
||||
NumOpt);
|
||||
fprintf (Gbl.F.Out,"<img src=\"%s/caret-down.svg\""
|
||||
" alt=\"%s\" title=\"%s\" class=\"ICO16x16\" />",
|
||||
Cfg_URL_ICON_PUBLIC,
|
||||
|
@ -5369,10 +5372,10 @@ static void Tst_PutFormEditOneQst (char Stem[Cns_MAX_BYTES_TEXT + 1],
|
|||
|
||||
/***** Right column: content of the answer *****/
|
||||
HTM_TD_Begin ("class=\"TEST_EDI_ANS_RIGHT_COL COLOR%u\"",Gbl.RowEvenOdd);
|
||||
HTM_DIV_Begin ("id=\"ans_%u\"",NumOpt);
|
||||
if (!DisplayRightColumn) // Answer does not have content
|
||||
fprintf (Gbl.F.Out," style=\"display:none;\""); // Hide column
|
||||
fprintf (Gbl.F.Out,">");
|
||||
HTM_DIV_Begin ("id=\"ans_%u\"%s",
|
||||
NumOpt,
|
||||
DisplayRightColumn ? "" :
|
||||
" style=\"display:none;\""); // Answer does not have content ==> Hide column
|
||||
|
||||
/* Answer text */
|
||||
fprintf (Gbl.F.Out,"<textarea name=\"AnsStr%u\""
|
||||
|
|
|
@ -257,12 +257,11 @@ void TsI_CreateXML (unsigned long NumRows,MYSQL_RES *mysql_res)
|
|||
mysql_data_seek (mysql_res,0);
|
||||
|
||||
/***** Write the link to XML file *****/
|
||||
fprintf (Gbl.F.Out,"<a href=\"%s/%s/%s/test.xml\""
|
||||
" class=\"%s\" target=\"_blank\">",
|
||||
Cfg_URL_FILE_BROWSER_TMP_PUBLIC,
|
||||
Gbl.FileBrowser.TmpPubDir.L,
|
||||
Gbl.FileBrowser.TmpPubDir.R,
|
||||
The_ClassFormOutBoxBold[Gbl.Prefs.Theme]);
|
||||
HTM_A_Begin ("href=\"%s/%s/%s/test.xml\" class=\"%s\" target=\"_blank\"",
|
||||
Cfg_URL_FILE_BROWSER_TMP_PUBLIC,
|
||||
Gbl.FileBrowser.TmpPubDir.L,
|
||||
Gbl.FileBrowser.TmpPubDir.R,
|
||||
The_ClassFormOutBoxBold[Gbl.Prefs.Theme]);
|
||||
Ico_PutIconTextLink ("file.svg",
|
||||
Txt_XML_file);
|
||||
HTM_A_End ();
|
||||
|
|
|
@ -1398,9 +1398,9 @@ static void TL_PutLinkToViewNewPublications (void)
|
|||
HTM_DIV_Begin ("id=\"view_new_posts_container\""
|
||||
" class=\"TL_WIDTH TL_SEP VERY_LIGHT_BLUE\""
|
||||
" style=\"display:none;\"");
|
||||
fprintf (Gbl.F.Out,"<a href=\"\" class=\"%s\""
|
||||
" onclick=\"moveNewTimelineToTimeline(); return false;\" />",
|
||||
The_ClassFormInBoxBold[Gbl.Prefs.Theme]);
|
||||
HTM_A_Begin ("href=\"\" class=\"%s\""
|
||||
" onclick=\"moveNewTimelineToTimeline();return false;\"",
|
||||
The_ClassFormInBoxBold[Gbl.Prefs.Theme]);
|
||||
fprintf (Gbl.F.Out,"%s (<span id=\"view_new_posts_count\">0</span>)",
|
||||
Txt_See_new_activity);
|
||||
HTM_A_End ();
|
||||
|
@ -1419,12 +1419,12 @@ static void TL_PutLinkToViewOldPublications (void)
|
|||
/***** Animated link to view old publications *****/
|
||||
HTM_DIV_Begin ("id=\"view_old_posts_container\""
|
||||
" class=\"TL_WIDTH TL_SEP VERY_LIGHT_BLUE\"");
|
||||
fprintf (Gbl.F.Out,"<a href=\"\" class=\"%s\" onclick=\""
|
||||
"document.getElementById('get_old_timeline').style.display='none';" // Icon to be hidden on click
|
||||
"document.getElementById('getting_old_timeline').style.display='';" // Icon to be shown on click
|
||||
"refreshOldTimeline();"
|
||||
"return false;\">",
|
||||
The_ClassFormInBoxBold[Gbl.Prefs.Theme]);
|
||||
HTM_A_Begin ("href=\"\" class=\"%s\" onclick=\""
|
||||
"document.getElementById('get_old_timeline').style.display='none';" // Icon to be hidden on click
|
||||
"document.getElementById('getting_old_timeline').style.display='';" // Icon to be shown on click
|
||||
"refreshOldTimeline();"
|
||||
"return false;\"",
|
||||
The_ClassFormInBoxBold[Gbl.Prefs.Theme]);
|
||||
fprintf (Gbl.F.Out,"<img id=\"get_old_timeline\""
|
||||
" src=\"%s/recycle16x16.gif\" alt=\"%s\" title=\"%s\""
|
||||
" class=\"ICO20x20\" />"
|
||||
|
@ -2502,9 +2502,8 @@ static void TL_PutIconToToggleCommentNote (const char UniqueId[Frm_MAX_BYTES_ID
|
|||
|
||||
/***** Link to toggle on/off the form to comment a note *****/
|
||||
HTM_DIV_Begin ("id=\"%s_ico\" class=\"TL_ICO_COM_OFF\"",UniqueId);
|
||||
fprintf (Gbl.F.Out,"<a href=\"\""
|
||||
" onclick=\"toggleNewComment ('%s');return false;\">",
|
||||
UniqueId);
|
||||
HTM_A_Begin ("href=\"\" onclick=\"toggleNewComment ('%s');return false;\"",
|
||||
UniqueId);
|
||||
fprintf (Gbl.F.Out,"<img src=\"%s/edit.svg\" alt=\"%s\" title=\"%s\""
|
||||
" class=\"CONTEXT_ICO_16x16\" />",
|
||||
Cfg_URL_ICON_PUBLIC,
|
||||
|
@ -2702,11 +2701,11 @@ static void TL_PutIconToToggleComments (const char *UniqueId,
|
|||
extern const char *The_ClassFormInBox[The_NUM_THEMES];
|
||||
|
||||
/***** Link to toggle on/off some divs *****/
|
||||
fprintf (Gbl.F.Out,"<a href=\"\" title=\"%s\" class=\"%s\""
|
||||
" onclick=\"toggleComments('%s');"
|
||||
"return false;\" />",
|
||||
Text,The_ClassFormInBox[Gbl.Prefs.Theme],
|
||||
UniqueId);
|
||||
HTM_A_Begin ("href=\"\" title=\"%s\" class=\"%s\""
|
||||
" onclick=\"toggleComments('%s');"
|
||||
"return false;\"",
|
||||
Text,The_ClassFormInBox[Gbl.Prefs.Theme],
|
||||
UniqueId);
|
||||
Ico_PutIconTextLink (Icon,Text);
|
||||
HTM_A_End ();
|
||||
}
|
||||
|
|
|
@ -4123,10 +4123,9 @@ static void Usr_WriteUsrData (const char *BgColor,
|
|||
|
||||
/***** Start link *****/
|
||||
if (Link)
|
||||
fprintf (Gbl.F.Out,"<a href=\"%s\" class=\"%s\" target=\"_blank\">",
|
||||
Link,
|
||||
Accepted ? "DAT_SMALL_NOBR_N" :
|
||||
"DAT_SMALL_NOBR");
|
||||
HTM_A_Begin ("href=\"%s\" class=\"%s\" target=\"_blank\"",
|
||||
Link,Accepted ? "DAT_SMALL_NOBR_N" :
|
||||
"DAT_SMALL_NOBR");
|
||||
|
||||
/***** Write data *****/
|
||||
fprintf (Gbl.F.Out,"%s",Data);
|
||||
|
|
|
@ -569,8 +569,8 @@ static void ZIP_ShowLinkToDownloadZIP (const char *FileName,const char *URL,
|
|||
/***** Link to download the file *****/
|
||||
HTM_TR_Begin (NULL);
|
||||
HTM_TD_Begin ("colspan=\"2\" class=\"FILENAME_TXT CM\"");
|
||||
fprintf (Gbl.F.Out,"<a href=\"%s\" class=\"FILENAME_TXT\" title=\"%s\" target=\"_blank\">",
|
||||
URL,FileName);
|
||||
HTM_A_Begin ("href=\"%s\" class=\"FILENAME_TXT\" title=\"%s\" target=\"_blank\"",
|
||||
URL,FileName);
|
||||
fprintf (Gbl.F.Out,"<img src=\"%s32x32/zip32x32.gif\""
|
||||
" alt=\"%s\" title=\"%s\""
|
||||
" class=\"ICO40x40\" />"
|
||||
|
@ -597,8 +597,8 @@ static void ZIP_ShowLinkToDownloadZIP (const char *FileName,const char *URL,
|
|||
HTM_TD_End ();
|
||||
|
||||
HTM_TD_Begin ("class=\"DAT LM\"");
|
||||
fprintf (Gbl.F.Out,"<a href=\"%s\" class=\"DAT\" title=\"%s\" target=\"_blank\">",
|
||||
URL,FileName);
|
||||
HTM_A_Begin ("href=\"%s\" class=\"DAT\" title=\"%s\" target=\"_blank\"",
|
||||
URL,FileName);
|
||||
fprintf (Gbl.F.Out,"%s",FileName);
|
||||
HTM_A_End ();
|
||||
HTM_TD_End ();
|
||||
|
|
Loading…
Reference in New Issue