Version19.46.5

This commit is contained in:
Antonio Cañas Vargas 2019-10-30 00:42:01 +01:00
parent 7c6df6a1d4
commit 10e90abfc7
18 changed files with 103 additions and 118 deletions

View File

@ -703,3 +703,39 @@ void HTM_A_End (void)
HTM_A_NestingLevel--;
}
/*****************************************************************************/
/********************************** Images ***********************************/
/*****************************************************************************/
void HTM_IMG (const char *Path,const char *Icon,const char *Title,
const char *Class,const char *Style,const char *Id)
{
fprintf (Gbl.F.Out,"<img");
if (Id)
if (Id[0])
fprintf (Gbl.F.Out," id=\"%s\"",Id);
fprintf (Gbl.F.Out," src=\"%s/%s\"",Path,Icon);
if (Title)
{
if (Title[0])
fprintf (Gbl.F.Out," alt=\"%s\" title=\"%s\"",Title,Title);
else
fprintf (Gbl.F.Out," alt=\"\"");
}
else
fprintf (Gbl.F.Out," alt=\"\"");
if (Class)
if (Class[0])
fprintf (Gbl.F.Out," class=\"%s\"",Class);
if (Style)
if (Style[0])
fprintf (Gbl.F.Out," style=\"%s\"",Style);
fprintf (Gbl.F.Out," />");
}

View File

@ -83,4 +83,7 @@ void HTM_LI_End (void);
void HTM_A_Begin (const char *fmt,...);
void HTM_A_End (void);
void HTM_IMG (const char *Path,const char *Icon,const char *Title,
const char *Class,const char *Style,const char *Id);
#endif

View File

@ -245,10 +245,8 @@ void MFU_WriteBigMFUActions (struct MFU_ListMFUActions *ListMFUActions)
HTM_LI_Begin ("class=\"ICO_HIGHLIGHT\"");
Frm_StartForm (Action);
Frm_LinkFormSubmit (TabMenuStr,The_ClassFormInBoxNoWrap[Gbl.Prefs.Theme],NULL);
fprintf (Gbl.F.Out,"<img src=\"%s/%s\" alt=\"%s\" />",
Gbl.Prefs.URLIconSet,
Act_GetIcon (Action),
MenuStr);
HTM_IMG (Gbl.Prefs.URLIconSet,Act_GetIcon (Action),MenuStr,
NULL,NULL,NULL);
fprintf (Gbl.F.Out," %s",TabMenuStr);
Frm_LinkFormEnd ();
Frm_EndForm ();
@ -308,10 +306,8 @@ void MFU_WriteSmallMFUActions (struct MFU_ListMFUActions *ListMFUActions)
HTM_LI_Begin ("class=\"ICO_HIGHLIGHT\"");
Frm_StartForm (Action);
Frm_LinkFormSubmit (TabMenuStr,NULL,NULL);
fprintf (Gbl.F.Out,"<img src=\"%s/%s\" alt=\"%s\" />",
Gbl.Prefs.URLIconSet,
Act_GetIcon (Action),
MenuStr);
HTM_IMG (Gbl.Prefs.URLIconSet,Act_GetIcon (Action),MenuStr,
NULL,NULL,NULL);
fprintf (Gbl.F.Out," %s",MenuStr);
Frm_LinkFormEnd ();
Frm_EndForm ();

View File

@ -156,13 +156,8 @@ static void Ban_WriteListOfBanners (void)
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\" />",
Cfg_URL_BANNER_PUBLIC,
Gbl.Banners.Lst[NumBan].Img,
Gbl.Banners.Lst[NumBan].ShrtName,
Gbl.Banners.Lst[NumBan].FullName);
HTM_IMG (Cfg_URL_BANNER_PUBLIC,Gbl.Banners.Lst[NumBan].Img,Gbl.Banners.Lst[NumBan].FullName,
"BANNER",NULL,NULL);
HTM_A_End ();
HTM_LI_End ();
}
@ -1052,13 +1047,8 @@ void Ban_WriteMenuWithBanners (void)
Ban_PutParamBanCod (Gbl.Banners.Lst[NumBan].BanCod);
Par_PutHiddenParamString ("URL",Gbl.Banners.Lst[NumBan].WWW);
Frm_LinkFormSubmit (Gbl.Banners.Lst[NumBan].FullName,"BANNER",NULL);
fprintf (Gbl.F.Out,"<img src=\"%s/%s\""
" alt=\"%s\" title=\"%s\""
" class=\"BANNER\" />",
Cfg_URL_BANNER_PUBLIC,
Gbl.Banners.Lst[NumBan].Img,
Gbl.Banners.Lst[NumBan].ShrtName,
Gbl.Banners.Lst[NumBan].FullName);
HTM_IMG (Cfg_URL_BANNER_PUBLIC,Gbl.Banners.Lst[NumBan].Img,Gbl.Banners.Lst[NumBan].FullName,
"BANNER",NULL,NULL);
Frm_LinkFormEnd ();
Frm_EndForm ();
HTM_DIV_End ();

View File

@ -487,13 +487,15 @@ enscript -2 --landscape --color --file-align=2 --highlight --line-numbers -o - *
En OpenSWAD:
ps2pdf source.ps destination.pdf
*/
#define Log_PLATFORM_VERSION "SWAD 19.46.4 (2019-10-28)"
#define Log_PLATFORM_VERSION "SWAD 19.46.5 (2019-10-29)"
#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.
// TODO: Continuar convirtiendo <img a HTM_IMG ()
Version 19.46.5: Oct 29, 2019 Code refactoring in HTML images. (246223 lines)
Version 19.46.4: Oct 28, 2019 Code refactoring in HTML images. (246247 lines)
Version 19.46.3: Oct 28, 2019 Code refactoring in HTML images. (246390 lines)
Version 19.46.2: Oct 28, 2019 Code refactoring in HTML images. (246519 lines)

View File

@ -2939,11 +2939,8 @@ void Crs_PutIconToSelectMyCoursesInBreadcrumb (void)
/***** Put icon with link *****/
Frm_LinkFormSubmit (Txt_My_courses,NULL,NULL);
fprintf (Gbl.F.Out,"<img src=\"%s/sitemap.svg\""
" alt=\"%s\" title=\"%s\""
" class=\"BC_ICON ICO_HIGHLIGHT\" />",
Gbl.Prefs.URLTheme,
Txt_My_courses,Txt_My_courses);
HTM_IMG (Gbl.Prefs.URLTheme,"sitemap.svg",Txt_My_courses,
"BC_ICON ICO_HIGHLIGHT",NULL,NULL);
Frm_LinkFormEnd ();
/***** End form *****/

View File

@ -3292,13 +3292,11 @@ static void Brw_FormToChangeCrsGrpZone (void)
(IsGroupZone &&
GrpDat.GrpCod == Gbl.Crs.Grps.GrpCod) ? "BROWSER_TITLE" :
"BROWSER_TITLE_LIGHT");
fprintf (Gbl.F.Out,"<img src=\"%s/%s20x20.gif\""
" alt=\"\" title=\"\""
" class=\"ICO25x25\""
" style=\"margin-left:6px;\" />",
Cfg_URL_ICON_PUBLIC,
NumGrp < LstMyGrps.NumGrps - 1 ? "submid" :
"subend");
HTM_IMG (Cfg_URL_ICON_PUBLIC,
NumGrp < LstMyGrps.NumGrps - 1 ? "submid20x20.gif" :
"subend20x20.gif",
NULL,
"ICO25x25","margin-left:6px;",NULL);
fprintf (Gbl.F.Out,"<label>"
"<input type=\"radio\" name=\"GrpCod\" value=\"%ld\"",
GrpDat.GrpCod);

View File

@ -411,10 +411,8 @@ void Ico_PutIconOff (const char *Icon,const char *Title)
void Ico_PutIcon (const char *Icon,const char *Title,const char *Class)
{
fprintf (Gbl.F.Out,"<img src=\"%s/%s\""
" alt=\"%s\" title=\"%s\" class=\"%s\" />",
Cfg_URL_ICON_PUBLIC,Icon,
Title,Title,Class);
HTM_IMG (Cfg_URL_ICON_PUBLIC,Icon,Title,
Class,NULL,NULL);
}
/*****************************************************************************/

View File

@ -270,10 +270,8 @@ void Lay_WriteStartOfPage (void)
case Act_BRW_1ST_TAB:
fprintf (Gbl.F.Out,"<body onload=\"init();\">\n");
HTM_DIV_Begin ("id=\"zoomLyr\" class=\"ZOOM\"");
fprintf (Gbl.F.Out,"<img id=\"zoomImg\" src=\"%s/usr_bl.jpg\""
" alt=\"\" title=\"\""
" class=\"IMG_USR\" />",
Cfg_URL_ICON_PUBLIC);
HTM_IMG (Cfg_URL_ICON_PUBLIC,"usr_bl.jpg",NULL,
"IMG_USR",NULL,"zoomImg");
HTM_DIV_Begin ("id=\"zoomTxt\" class=\"CM\"");
HTM_DIV_End ();
HTM_DIV_End ();
@ -1155,10 +1153,8 @@ static void Lay_ShowRightColumn (void)
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;\" />",
Cfg_URL_ICON_PUBLIC);
HTM_IMG (Cfg_URL_ICON_PUBLIC,"SWADroid120x200.png","SWADroid",
NULL,"width:150px; height:250px;",NULL);
HTM_A_End ();
HTM_DIV_End ();
}
@ -1444,11 +1440,10 @@ static void Lay_WriteAboutZone (void)
/***** Questions and problems *****/
HTM_DIV_Begin (NULL);
fprintf (Gbl.F.Out,"%s: "
"<a href=\"mailto:%s\" class=\"ABOUT\" target=\"_blank\">"
"%s",
Txt_Questions_and_problems,
Cfg_PLATFORM_RESPONSIBLE_EMAIL,Cfg_PLATFORM_RESPONSIBLE_EMAIL);
fprintf (Gbl.F.Out,"%s: ",Txt_Questions_and_problems);
HTM_A_Begin ("href=\"mailto:%s\" class=\"ABOUT\" target=\"_blank\"",
Cfg_PLATFORM_RESPONSIBLE_EMAIL);
fprintf (Gbl.F.Out,"%s",Cfg_PLATFORM_RESPONSIBLE_EMAIL);
HTM_A_End ();
HTM_DIV_End ();
@ -1685,11 +1680,8 @@ void Lay_AdvertisementMobile (void)
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 />",Txt_Stay_connected_with_SWADroid);
fprintf (Gbl.F.Out,"<img src=\"%s/SWADroid200x300.png\""
" alt=\"SWADroid\" title=\"%s\""
" style=\"width:250px; height:375px;\" />",
Cfg_URL_ICON_PUBLIC,
Txt_Stay_connected_with_SWADroid);
HTM_IMG (Cfg_URL_ICON_PUBLIC,"SWADroid200x300.png",Txt_Stay_connected_with_SWADroid,
NULL,"width:250px; height:375px;",NULL);
HTM_A_End ();
HTM_TD_End ();
HTM_TR_End ();

View File

@ -322,13 +322,8 @@ void Net_ShowFormMyWebsAndSocialNets (void)
HTM_TD_Begin ("class=\"REC_C1_BOT LM\"");
fprintf (Gbl.F.Out,"<label for=\"URL%u\" class=\"%s\">",
(unsigned) NumURL,The_ClassFormInBox[Gbl.Prefs.Theme]);
fprintf (Gbl.F.Out,"<img src=\"%s/%s\""
" alt=\"%s\" title=\"%s\""
" class=\"CONTEXT_ICO_16x16\""
" style=\"margin-right:6px;\" />",
Cfg_URL_ICON_PUBLIC,Net_WebsAndSocialNetworksIcons[NumURL],
Net_WebsAndSocialNetworksTitle[NumURL],
Net_WebsAndSocialNetworksTitle[NumURL]);
HTM_IMG (Cfg_URL_ICON_PUBLIC,Net_WebsAndSocialNetworksIcons[NumURL],Net_WebsAndSocialNetworksTitle[NumURL],
"CONTEXT_ICO_16x16","margin-right:6px;",NULL);
fprintf (Gbl.F.Out,"%s:"
"</label>",
Net_WebsAndSocialNetworksTitle[NumURL]);

View File

@ -2059,12 +2059,8 @@ void Ntf_WriteNumberOfNewNtfs (void)
/***** Icon and number of new notifications *****/
if (NumNewNtfs)
{
fprintf (Gbl.F.Out,"<img src=\"%s/bell.svg\""
" alt=\"%s\" title=\"%s\""
" class=\"ICO16x16\" />",
Gbl.Prefs.URLTheme,
Txt_Notifications,
Txt_Notifications);
HTM_IMG (Gbl.Prefs.URLTheme,"bell.svg",Txt_Notifications,
"ICO16x16",NULL,NULL);
fprintf (Gbl.F.Out,"&nbsp;%u<span id=\"notif_new\">&nbsp;%s</span>",
NumNewNtfs,
NumNewNtfs == 1 ? Txt_NOTIF_new_SINGULAR :

View File

@ -1790,6 +1790,7 @@ static void Sta_ShowNumHitsPerUsr (unsigned long NumRows,MYSQL_RES *mysql_res)
unsigned long NumRow;
struct Sta_Hits Hits;
unsigned BarWidth;
char Style[64];
struct UsrData UsrDat;
char PhotoURL[PATH_MAX + 1];
bool ShowPhoto;
@ -1868,18 +1869,16 @@ static void Sta_ShowNumHitsPerUsr (unsigned long NumRows,MYSQL_RES *mysql_res)
HTM_TD_Begin ("class=\"LOG LT COLOR%u\"",Gbl.RowEvenOdd);
if (BarWidth)
{
fprintf (Gbl.F.Out,"<img src=\"%s/%c1x1.png\"" // Background
" alt=\"\" title=\"\""
" class=\"LT\""
" style=\"width:%upx; height:10px; padding-top:4px;\" />",
Cfg_URL_ICON_PUBLIC,
UsrDat.Roles.InCurrentCrs.Role == Rol_STD ? 'o' : // Student
'r', // Non-editing teacher or teacher
BarWidth);
snprintf (Style,sizeof (Style),
"width:%upx; height:10px; padding-top:4px;",BarWidth);
HTM_IMG (Cfg_URL_ICON_PUBLIC,
UsrDat.Roles.InCurrentCrs.Role == Rol_STD ? "o1x1.png" : // Student
"r1x1.png", // Non-editing teacher or teacher
NULL,
"LT",Style,NULL);
fprintf (Gbl.F.Out,"&nbsp;");
}
Str_WriteFloatNumToFile (Gbl.F.Out,Hits.Num);
fprintf (Gbl.F.Out,"&nbsp;");
HTM_TD_End ();
HTM_TR_End ();

View File

@ -3505,6 +3505,7 @@ static void Svy_WriteAnswersOfAQst (struct Survey *Svy,
static void Svy_DrawBarNumUsrs (unsigned NumUsrs,unsigned MaxUsrs)
{
extern const char *Txt_of_PART_OF_A_TOTAL;
char Style[64];
unsigned BarWidth = 0;
/***** String with the number of users *****/
@ -3527,16 +3528,13 @@ static void Svy_DrawBarNumUsrs (unsigned NumUsrs,unsigned MaxUsrs)
(float) MaxUsrs) + 0.5);
if (BarWidth < 2)
BarWidth = 2;
fprintf (Gbl.F.Out,"<img src=\"%s/o1x1.png\" alt=\"%s\" title=\"%s\""
" class=\"LT\" style=\"width:%upx; height:20px;\" />",
Cfg_URL_ICON_PUBLIC,
Gbl.Title,
Gbl.Title,
BarWidth);
fprintf (Gbl.F.Out,"&nbsp;");
snprintf (Style,sizeof (Style),
"width:%upx; height:20px;",BarWidth);
HTM_IMG (Cfg_URL_ICON_PUBLIC,"o1x1.png",Gbl.Title,
"LT",Style,NULL);
/***** Write the number of users *****/
fprintf (Gbl.F.Out,"%s",Gbl.Title);
fprintf (Gbl.F.Out,"&nbsp;%s",Gbl.Title);
HTM_TD_End ();
}

View File

@ -136,12 +136,8 @@ void Tab_DrawTabs (void)
Frm_LinkFormSubmit (Txt_TABS_TXT[NumTab],
NumTab == Gbl.Action.Tab ? The_ClassTxtTabOn[Gbl.Prefs.Theme] :
The_ClassTxtTabOff[Gbl.Prefs.Theme],NULL);
fprintf (Gbl.F.Out,"<img src=\"%s/%s\" alt=\"%s\" title=\"%s\""
" class=\"TAB_ICO\" />",
Gbl.Prefs.URLIconSet,
Tab_GetIcon (NumTab),
Txt_TABS_TXT[NumTab],
Txt_TABS_TXT[NumTab]);
HTM_IMG (Gbl.Prefs.URLIconSet,Tab_GetIcon (NumTab),Txt_TABS_TXT[NumTab],
"TAB_ICO",NULL,NULL);
HTM_DIV_Begin ("class=\"TAB_TXT %s\"",
NumTab == Gbl.Action.Tab ? The_ClassTxtTabOn[Gbl.Prefs.Theme] :
The_ClassTxtTabOff[Gbl.Prefs.Theme]);

View File

@ -1735,16 +1735,12 @@ static void Tst_ShowFormSelTags (unsigned long NumRows,MYSQL_RES *mysql_res,
{
TagHidden = (row[2][0] == 'Y');
HTM_TD_Begin ("class=\"LM\"");
fprintf (Gbl.F.Out,"<img src=\"%s/",Cfg_URL_ICON_PUBLIC);
if (TagHidden)
fprintf (Gbl.F.Out,"eye-slash.svg\" alt=\"%s\" title=\"%s",
Txt_Tag_not_allowed,
Txt_Tag_not_allowed);
HTM_IMG (Cfg_URL_ICON_PUBLIC,"eye-slash.svg",Txt_Tag_not_allowed,
"ICO_HIDDEN ICO16x16",NULL,NULL);
else
fprintf (Gbl.F.Out,"eye.svg\" alt=\"%s\" title=\"%s",
Txt_Tag_allowed,
Txt_Tag_allowed);
fprintf (Gbl.F.Out,"\" class=\"ICO_HIDDEN ICO16x16\" />");
HTM_IMG (Cfg_URL_ICON_PUBLIC,"eye.svg",Txt_Tag_allowed,
"ICO_HIDDEN ICO16x16",NULL,NULL);
HTM_TD_End ();
}

View File

@ -1425,14 +1425,12 @@ static void TL_PutLinkToViewOldPublications (void)
"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\" />",
Cfg_URL_ICON_PUBLIC,Txt_See_more,Txt_See_more);
fprintf (Gbl.F.Out,"<img id=\"getting_old_timeline\""
" src=\"%s/working16x16.gif\" alt=\"%s\" title=\"%s\""
" class=\"ICO20x20\" style=\"display:none;\" />", // Animated icon hidden
Cfg_URL_ICON_PUBLIC,Txt_See_more,Txt_See_more);
HTM_IMG (Cfg_URL_ICON_PUBLIC,"recycle16x16.gif","Txt_See_more",
"ICO20x20",NULL,"get_old_timeline");
HTM_IMG (Cfg_URL_ICON_PUBLIC,"working16x16.gif",Txt_See_more,
"ICO20x20","display:none;","getting_old_timeline"); // Animated icon hidden
HTM_IMG (Cfg_URL_ICON_PUBLIC,"recycle16x16.gif","Txt_See_more",
"ICO20x20","display:none;","get_old_timeline");
fprintf (Gbl.F.Out,"&nbsp;%s",Txt_See_more);
HTM_A_End ();
HTM_DIV_End ();

View File

@ -2677,9 +2677,8 @@ void Usr_WelcomeUsr (void)
Gbl.Usrs.Me.UsrDat.FirstName);
/* Show cake icon */
fprintf (Gbl.F.Out,"<img src=\"%s/birthday-cake.svg\""
" alt=\"\" class=\"ICO160x160\" />",
Gbl.Prefs.URLIconSet);
HTM_IMG (Gbl.Prefs.URLIconSet,"birthday-cake.svg",NULL,
"ICO160x160",NULL,NULL);
/* End alert */
Ale_ShowAlertAndButton2 (ActUnk,NULL,NULL,NULL,Btn_NO_BUTTON,NULL);

View File

@ -571,12 +571,8 @@ static void ZIP_ShowLinkToDownloadZIP (const char *FileName,const char *URL,
HTM_TD_Begin ("colspan=\"2\" class=\"FILENAME_TXT CM\"");
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\" />",
CfG_URL_ICON_FILEXT_PUBLIC,
Txt_ZIP_file,
Txt_ZIP_file);
HTM_IMG (CfG_URL_ICON_FILEXT_PUBLIC "32x32","zip32x32.gif",Txt_ZIP_file,
"ICO40x40",NULL,NULL);
fprintf (Gbl.F.Out,"&nbsp;%s&nbsp;",FileName);
Ico_PutIcon ("download.svg",Txt_Download,"ICO40x40");
HTM_A_End ();