mirror of
https://github.com/acanas/swad-core.git
synced 2024-05-29 04:53:26 +02:00
Version 14.39.2
This commit is contained in:
parent
47bcbe0eea
commit
ad4ca51839
|
@ -35,12 +35,13 @@
|
||||||
/****************************** Public constants *****************************/
|
/****************************** Public constants *****************************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
#define Log_PLATFORM_VERSION "SWAD 14.39.1 (2014/12/20)"
|
#define Log_PLATFORM_VERSION "SWAD 14.39.2 (2014/12/21)"
|
||||||
|
|
||||||
// Number of lines (includes comments but not blank lines) has been got with the following command:
|
// Number of lines (includes comments but not blank lines) has been got with the following command:
|
||||||
// nl swad*.c swad*.h css/swad*.css py/swad*.py js/swad*.js soap/swad*.h | tail -1
|
// nl swad*.c swad*.h css/swad*.css py/swad*.py js/swad*.js soap/swad*.h | tail -1
|
||||||
/*
|
/*
|
||||||
Version 14.39.1 :Dic 20, 2014 Change from XHTML 1.0 Transitional to HTML5. (? lines)
|
Version 14.39.2 :Dic 21, 2014 Changes in layout and graphics. (170739 lines)
|
||||||
|
Version 14.39.1 :Dic 20, 2014 Change from XHTML 1.0 Transitional to HTML5. (170747 lines)
|
||||||
Version 14.39 :Dic 20, 2014 iframes removed from course info. (170746 lines)
|
Version 14.39 :Dic 20, 2014 iframes removed from course info. (170746 lines)
|
||||||
Version 14.38.9 :Dic 20, 2014 The words "Course" and "Group" are removed from selection of course and groups in Documents and Shared files. (? lines)
|
Version 14.38.9 :Dic 20, 2014 The words "Course" and "Group" are removed from selection of course and groups in Documents and Shared files. (? lines)
|
||||||
Version 14.38.8 :Dic 18, 2014 Fixed bug in banned users. (170793 lines)
|
Version 14.38.8 :Dic 18, 2014 Fixed bug in banned users. (170793 lines)
|
||||||
|
|
|
@ -353,7 +353,7 @@ void Dat_DrawMonth (unsigned RealYear,unsigned RealMonth,
|
||||||
|
|
||||||
/***** Start of month *****/
|
/***** Start of month *****/
|
||||||
fprintf (Gbl.F.Out,"<div class=\"MONTH_CONTAINER\">"
|
fprintf (Gbl.F.Out,"<div class=\"MONTH_CONTAINER\">"
|
||||||
"<span class=\"MONTH\">%s %u<br /></span>"
|
"<div class=\"MONTH\">%s %u</div>"
|
||||||
"<table cellspacing=\"0\" cellpadding=\"0\" class=\"MONTH_TABLE_DAYS\">",
|
"<table cellspacing=\"0\" cellpadding=\"0\" class=\"MONTH_TABLE_DAYS\">",
|
||||||
Txt_MONTHS_CAPS[RealMonth-1],RealYear);
|
Txt_MONTHS_CAPS[RealMonth-1],RealYear);
|
||||||
|
|
||||||
|
|
|
@ -593,16 +593,16 @@ static void Lay_WritePageTopHeading (void)
|
||||||
},
|
},
|
||||||
};
|
};
|
||||||
|
|
||||||
fprintf (Gbl.F.Out,"<tr style=\"background-image: url('%s/head_row1_1x48.gif'); background-repeat: repeat-x;\">",
|
fprintf (Gbl.F.Out,"<tr style=\"background-image:url('%s/head_row1_1x48.gif'); background-repeat:repeat-x;\">",
|
||||||
Gbl.Prefs.PathTheme);
|
Gbl.Prefs.PathTheme);
|
||||||
|
|
||||||
/***** 1st. row, 1st. column: logo *****/
|
/***** 1st. row, 1st. column: logo *****/
|
||||||
fprintf (Gbl.F.Out,"<td align=\"center\" valign=\"middle\" width=\"%u\">",
|
fprintf (Gbl.F.Out,"<td align=\"center\" width=\"%u\">",
|
||||||
LogoLayout[Gbl.Prefs.Layout].Width + 16);
|
LogoLayout[Gbl.Prefs.Layout].Width + 16);
|
||||||
|
|
||||||
/* Left logo */
|
/* Left logo */
|
||||||
fprintf (Gbl.F.Out,"<a href=\"%s\" target=\"_blank\">"
|
fprintf (Gbl.F.Out,"<a href=\"%s\" target=\"_blank\">"
|
||||||
"<img src=\"%s/%s\" width=\"%u\" height=\"%u\" alt=\"%s\" />"
|
"<img src=\"%s/%s\" width=\"%u\" height=\"%u\" alt=\"%s\" style=\"display:block;\" />"
|
||||||
"</a>",
|
"</a>",
|
||||||
Cfg_HTTP_SwAD_HOME_PAGE,Gbl.Prefs.PathTheme,
|
Cfg_HTTP_SwAD_HOME_PAGE,Gbl.Prefs.PathTheme,
|
||||||
LogoLayout[Gbl.Prefs.Layout].Icon,
|
LogoLayout[Gbl.Prefs.Layout].Icon,
|
||||||
|
@ -610,11 +610,9 @@ static void Lay_WritePageTopHeading (void)
|
||||||
LogoLayout[Gbl.Prefs.Layout].Height,
|
LogoLayout[Gbl.Prefs.Layout].Height,
|
||||||
Cfg_PLATFORM_FULL_NAME);
|
Cfg_PLATFORM_FULL_NAME);
|
||||||
fprintf (Gbl.F.Out,"</td>");
|
fprintf (Gbl.F.Out,"</td>");
|
||||||
|
|
||||||
fprintf (Gbl.F.Out,"<td align=\"center\" valign=\"middle\">"
|
fprintf (Gbl.F.Out,"<td align=\"center\" valign=\"middle\">"
|
||||||
"<table width=\"100%%\" cellspacing=\"0\" cellpadding=\"0\">"
|
"<table width=\"100%%\" cellspacing=\"0\" cellpadding=\"0\">"
|
||||||
"<tr>");
|
"<tr>");
|
||||||
|
|
||||||
/***** 1st. row, 2nd. column: search, and logged user / language selection *****/
|
/***** 1st. row, 2nd. column: search, and logged user / language selection *****/
|
||||||
if (Gbl.Prefs.Layout == Lay_LAYOUT_DESKTOP)
|
if (Gbl.Prefs.Layout == Lay_LAYOUT_DESKTOP)
|
||||||
{
|
{
|
||||||
|
|
|
@ -270,7 +270,7 @@ void Prf_PutSelectorToSelectLanguage (void)
|
||||||
};
|
};
|
||||||
|
|
||||||
Act_FormStart (ActReqChgLan);
|
Act_FormStart (ActReqChgLan);
|
||||||
fprintf (Gbl.F.Out,"<select name=\"Lan\" style=\"width:%upx;\""
|
fprintf (Gbl.F.Out,"<select name=\"Lan\" style=\"width:%upx;margin:0;\""
|
||||||
" onchange=\"javascript:document.getElementById('%s').submit();\">",
|
" onchange=\"javascript:document.getElementById('%s').submit();\">",
|
||||||
SelectorWidth[Gbl.Prefs.Layout],Gbl.FormId);
|
SelectorWidth[Gbl.Prefs.Layout],Gbl.FormId);
|
||||||
for (Lan = (Txt_Language_t) 0;
|
for (Lan = (Txt_Language_t) 0;
|
||||||
|
|
|
@ -321,7 +321,7 @@ void Sch_PutFormToSearch (const char *IconURL)
|
||||||
if (!Gbl.Search.Str[0])
|
if (!Gbl.Search.Str[0])
|
||||||
fprintf (Gbl.F.Out," placeholder=\"%s...\"",
|
fprintf (Gbl.F.Out," placeholder=\"%s...\"",
|
||||||
Txt_Search);
|
Txt_Search);
|
||||||
fprintf (Gbl.F.Out," />");
|
fprintf (Gbl.F.Out," style=\"margin:0;\" />");
|
||||||
|
|
||||||
/***** Send button *****/
|
/***** Send button *****/
|
||||||
fprintf (Gbl.F.Out,"<input type=\"image\" src=\"%s/search16x16.gif\""
|
fprintf (Gbl.F.Out,"<input type=\"image\" src=\"%s/search16x16.gif\""
|
||||||
|
|
|
@ -2181,14 +2181,11 @@ static void Sta_DrawAccessesPerHourForADay (Sta_ColorType_t ColorType,float NumP
|
||||||
Hour++)
|
Hour++)
|
||||||
{
|
{
|
||||||
Sta_SetColor (ColorType,NumPagesGenerated[Hour],MaxPagesGenerated,&R,&G,&B);
|
Sta_SetColor (ColorType,NumPagesGenerated[Hour],MaxPagesGenerated,&R,&G,&B);
|
||||||
fprintf (Gbl.F.Out,"<td align=\"left\" width=\"%u\" bgcolor=\"#%02X%02X%02X\">"
|
fprintf (Gbl.F.Out,"<td align=\"left\" width=\"%u\" bgcolor=\"#%02X%02X%02X\" class=\"LOG\" title=\"",
|
||||||
"<span class=\"LOG\" title=\"",
|
|
||||||
GRAPH_DISTRIBUTION_PER_HOUR_HOUR_WIDTH,R,G,B);
|
GRAPH_DISTRIBUTION_PER_HOUR_HOUR_WIDTH,R,G,B);
|
||||||
Sta_WriteFloatNum (NumPagesGenerated[Hour]);
|
Sta_WriteFloatNum (NumPagesGenerated[Hour]);
|
||||||
fprintf (Gbl.F.Out,"\"><img src=\"%s/tr20x14.gif\" width=\"%u\" height=\"14\" alt=\"",
|
fprintf (Gbl.F.Out,"\">"
|
||||||
Gbl.Prefs.IconsURL,GRAPH_DISTRIBUTION_PER_HOUR_HOUR_WIDTH);
|
"</td>");
|
||||||
Sta_WriteFloatNum (NumPagesGenerated[Hour]);
|
|
||||||
fprintf (Gbl.F.Out,"\" /></span></td>");
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -2565,7 +2562,7 @@ static void Sta_WriteAccessHour (unsigned Hour,float NumPagesGenerated,float Max
|
||||||
|
|
||||||
#define NUM_MINUTES_PER_DAY (60*24) // 1440 minutes in a day
|
#define NUM_MINUTES_PER_DAY (60*24) // 1440 minutes in a day
|
||||||
#define WIDTH_SEMIDIVISION_GRAPHIC 24
|
#define WIDTH_SEMIDIVISION_GRAPHIC 24
|
||||||
#define NUM_DIVISIONS_X 10
|
#define NUM_DIVISIONS_X 10
|
||||||
|
|
||||||
static void Sta_ShowAverageAccessesPerMinute (unsigned long NumRows,MYSQL_RES *mysql_res)
|
static void Sta_ShowAverageAccessesPerMinute (unsigned long NumRows,MYSQL_RES *mysql_res)
|
||||||
{
|
{
|
||||||
|
@ -2628,20 +2625,20 @@ static void Sta_ShowAverageAccessesPerMinute (unsigned long NumRows,MYSQL_RES *m
|
||||||
else
|
else
|
||||||
Format = "%f";
|
Format = "%f";
|
||||||
|
|
||||||
/***** Rótulos of the X axis *****/
|
/***** X axis tags *****/
|
||||||
Sta_WriteLabelsXAxisAccMin (IncX,Format);
|
Sta_WriteLabelsXAxisAccMin (IncX,Format);
|
||||||
|
|
||||||
/***** Eje Y and graphic *****/
|
/***** Y axis and graphic *****/
|
||||||
for (i = 0;
|
for (i = 0;
|
||||||
i < NUM_MINUTES_PER_DAY;
|
i < NUM_MINUTES_PER_DAY;
|
||||||
i++)
|
i++)
|
||||||
Sta_WriteAccessMinute (i,NumClicksPerMin[i],MaxX);
|
Sta_WriteAccessMinute (i,NumClicksPerMin[i],MaxX);
|
||||||
|
|
||||||
/***** Eje X *****/
|
/***** X axis *****/
|
||||||
/* First division (left) */
|
/* First division (left) */
|
||||||
fprintf (Gbl.F.Out,"<tr>"
|
fprintf (Gbl.F.Out,"<tr>"
|
||||||
"<td align=\"left\" width=\"%u\">"
|
"<td align=\"left\" width=\"%u\">"
|
||||||
"<img src=\"%s/ejexizq24x1.gif\" width=\"%u\" height=\"1\" alt=\"\" />"
|
"<img src=\"%s/ejexizq24x1.gif\" width=\"%u\" height=\"1\" alt=\"\" style=\"display:block;\" />"
|
||||||
"</td>",
|
"</td>",
|
||||||
WIDTH_SEMIDIVISION_GRAPHIC,Gbl.Prefs.IconsURL,WIDTH_SEMIDIVISION_GRAPHIC);
|
WIDTH_SEMIDIVISION_GRAPHIC,Gbl.Prefs.IconsURL,WIDTH_SEMIDIVISION_GRAPHIC);
|
||||||
/* All the intermediate divisions */
|
/* All the intermediate divisions */
|
||||||
|
@ -2649,12 +2646,12 @@ static void Sta_ShowAverageAccessesPerMinute (unsigned long NumRows,MYSQL_RES *m
|
||||||
i < NUM_DIVISIONS_X*2;
|
i < NUM_DIVISIONS_X*2;
|
||||||
i++)
|
i++)
|
||||||
fprintf (Gbl.F.Out,"<td align=\"left\" width=\"%u\">"
|
fprintf (Gbl.F.Out,"<td align=\"left\" width=\"%u\">"
|
||||||
"<img src=\"%s/ejex24x1.gif\" width=\"%u\" height=\"1\" alt=\"\" />"
|
"<img src=\"%s/ejex24x1.gif\" width=\"%u\" height=\"1\" alt=\"\" style=\"display:block;\" />"
|
||||||
"</td>",
|
"</td>",
|
||||||
WIDTH_SEMIDIVISION_GRAPHIC,Gbl.Prefs.IconsURL,WIDTH_SEMIDIVISION_GRAPHIC);
|
WIDTH_SEMIDIVISION_GRAPHIC,Gbl.Prefs.IconsURL,WIDTH_SEMIDIVISION_GRAPHIC);
|
||||||
/* Last division (right) */
|
/* Last division (right) */
|
||||||
fprintf (Gbl.F.Out,"<td align=\"left\" width=\"%u\">"
|
fprintf (Gbl.F.Out,"<td align=\"left\" width=\"%u\">"
|
||||||
"<img src=\"%s/tr24x1.gif\" width=\"%u\" height=\"1\" alt=\"\" />"
|
"<img src=\"%s/tr24x1.gif\" width=\"%u\" height=\"1\" alt=\"\" style=\"display:block;\" />"
|
||||||
"</td>"
|
"</td>"
|
||||||
"</tr>",
|
"</tr>",
|
||||||
WIDTH_SEMIDIVISION_GRAPHIC,Gbl.Prefs.IconsURL,WIDTH_SEMIDIVISION_GRAPHIC);
|
WIDTH_SEMIDIVISION_GRAPHIC,Gbl.Prefs.IconsURL,WIDTH_SEMIDIVISION_GRAPHIC);
|
||||||
|
@ -2721,7 +2718,7 @@ static void Sta_WriteAccessMinute (unsigned Minute,float NumPagesGenerated,float
|
||||||
/***** Draw bar with anchura proporcional al number of clicks *****/
|
/***** Draw bar with anchura proporcional al number of clicks *****/
|
||||||
if (NumPagesGenerated != 0.0)
|
if (NumPagesGenerated != 0.0)
|
||||||
if ((BarWidth = (unsigned) (((NumPagesGenerated * (float) WIDTH_GRAPHIC / MaxX)) + 0.5)) != 0)
|
if ((BarWidth = (unsigned) (((NumPagesGenerated * (float) WIDTH_GRAPHIC / MaxX)) + 0.5)) != 0)
|
||||||
fprintf (Gbl.F.Out,"<img src=\"%s/b%c1x1.gif\" width=\"%u\" height=\"1\" alt=\"\" />",
|
fprintf (Gbl.F.Out,"<img src=\"%s/b%c1x1.gif\" width=\"%u\" height=\"1\" alt=\"\" style=\"display:block;\" />",
|
||||||
Gbl.Prefs.IconsURL,
|
Gbl.Prefs.IconsURL,
|
||||||
(Minute % 60) == 0 ? 'g' :
|
(Minute % 60) == 0 ? 'g' :
|
||||||
'b',
|
'b',
|
||||||
|
@ -3164,23 +3161,21 @@ static void Sta_WriteDegree (long DegCod)
|
||||||
extern const char *Txt_Clicks_without_degree_selected;
|
extern const char *Txt_Clicks_without_degree_selected;
|
||||||
struct Degree Deg;
|
struct Degree Deg;
|
||||||
|
|
||||||
fprintf (Gbl.F.Out,"<td align=\"left\" valign=\"top\">");
|
fprintf (Gbl.F.Out,"<td align=\"left\" valign=\"middle\" class=\"LOG\" title=\"");
|
||||||
if (DegCod >= 0)
|
if (DegCod >= 0)
|
||||||
{
|
{
|
||||||
Deg.DegCod = DegCod;
|
Deg.DegCod = DegCod;
|
||||||
Deg_GetDataOfDegreeByCod (&Deg);
|
Deg_GetDataOfDegreeByCod (&Deg);
|
||||||
fprintf (Gbl.F.Out,"<a href=\"%s\" title=\"%s\" class=\"LOG\" target=\"_blank\">",
|
fprintf (Gbl.F.Out,"%s\">"
|
||||||
|
"<a href=\"%s\" class=\"LOG\" target=\"_blank\">",
|
||||||
Deg.WWW,Deg.FullName);
|
Deg.WWW,Deg.FullName);
|
||||||
Deg_DrawDegreeLogo (Deg.Logo,Deg.ShortName,16,"vertical-align:top;");
|
Deg_DrawDegreeLogo (Deg.Logo,Deg.ShortName,16,"vertical-align:top;");
|
||||||
fprintf (Gbl.F.Out," %s </a>",
|
fprintf (Gbl.F.Out," %s </a>",
|
||||||
Deg.ShortName);
|
Deg.ShortName);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
fprintf (Gbl.F.Out,"<span title=\"%s\" class=\"LOG\">"
|
fprintf (Gbl.F.Out,"%s\">"
|
||||||
"<img src=\"%s/tr16x16.gif\" alt=\"%s\""
|
" - ",
|
||||||
" class=\"ICON16x16\" style=\"vertical-align:top;\" />"
|
|
||||||
" - </span>",
|
|
||||||
Txt_Clicks_without_degree_selected,Gbl.Prefs.IconsURL,
|
|
||||||
Txt_Clicks_without_degree_selected);
|
Txt_Clicks_without_degree_selected);
|
||||||
fprintf (Gbl.F.Out,"</td>");
|
fprintf (Gbl.F.Out,"</td>");
|
||||||
}
|
}
|
||||||
|
@ -3193,7 +3188,7 @@ static void Sta_DrawBarNumClicks (char Color,float NumPagesGenerated,float MaxPa
|
||||||
{
|
{
|
||||||
unsigned BarWidth;
|
unsigned BarWidth;
|
||||||
|
|
||||||
fprintf (Gbl.F.Out,"<td align=\"left\" valign=\"top\">");
|
fprintf (Gbl.F.Out,"<td align=\"left\" valign=\"middle\" class=\"LOG\">");
|
||||||
if (NumPagesGenerated != 0.0)
|
if (NumPagesGenerated != 0.0)
|
||||||
{
|
{
|
||||||
/* Draw bar with a with proportional to the number of clicks */
|
/* Draw bar with a with proportional to the number of clicks */
|
||||||
|
@ -3201,7 +3196,7 @@ static void Sta_DrawBarNumClicks (char Color,float NumPagesGenerated,float MaxPa
|
||||||
if (BarWidth == 0)
|
if (BarWidth == 0)
|
||||||
BarWidth = 1;
|
BarWidth = 1;
|
||||||
fprintf (Gbl.F.Out,"<img src=\"%s/%c1x14.gif\" width=\"%u\" height=\"14\" style=\"vertical-align:top;\" alt=\"\" />"
|
fprintf (Gbl.F.Out,"<img src=\"%s/%c1x14.gif\" width=\"%u\" height=\"14\" style=\"vertical-align:top;\" alt=\"\" />"
|
||||||
"<span class=\"LOG\"> ",
|
" ",
|
||||||
Gbl.Prefs.IconsURL,Color,BarWidth);
|
Gbl.Prefs.IconsURL,Color,BarWidth);
|
||||||
|
|
||||||
/* Write the number of clicks */
|
/* Write the number of clicks */
|
||||||
|
@ -3211,8 +3206,8 @@ static void Sta_DrawBarNumClicks (char Color,float NumPagesGenerated,float MaxPa
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
/* Write the number of clicks */
|
/* Write the number of clicks */
|
||||||
fprintf (Gbl.F.Out,"<span class=\"LOG\">0 (0");
|
fprintf (Gbl.F.Out,"0 (0");
|
||||||
fprintf (Gbl.F.Out,"%%) </span>"
|
fprintf (Gbl.F.Out,"%%) "
|
||||||
"</td>"
|
"</td>"
|
||||||
"</tr>");
|
"</tr>");
|
||||||
}
|
}
|
||||||
|
|
|
@ -1456,11 +1456,9 @@ void Usr_WriteLoggedUsrHead (void)
|
||||||
ShowPhoto ? PhotoURL :
|
ShowPhoto ? PhotoURL :
|
||||||
NULL,
|
NULL,
|
||||||
15,20,true);
|
15,20,true);
|
||||||
fprintf (Gbl.F.Out,"<span class=\"%s\"> </span>",
|
|
||||||
The_ClassUsr[Gbl.Prefs.Theme]);
|
|
||||||
|
|
||||||
/***** User's name *****/
|
/***** User's name *****/
|
||||||
fprintf (Gbl.F.Out,"<span class=\"%s\">",
|
fprintf (Gbl.F.Out,"<span class=\"%s\"> ",
|
||||||
The_ClassUsr[Gbl.Prefs.Theme]);
|
The_ClassUsr[Gbl.Prefs.Theme]);
|
||||||
|
|
||||||
/* Name */
|
/* Name */
|
||||||
|
@ -1470,8 +1468,6 @@ void Usr_WriteLoggedUsrHead (void)
|
||||||
Str_LimitLengthHTMLStr (UsrFullName,NumCharsName[Gbl.Prefs.Layout]);
|
Str_LimitLengthHTMLStr (UsrFullName,NumCharsName[Gbl.Prefs.Layout]);
|
||||||
fprintf (Gbl.F.Out,"%s",UsrFullName);
|
fprintf (Gbl.F.Out,"%s",UsrFullName);
|
||||||
}
|
}
|
||||||
else
|
|
||||||
fprintf (Gbl.F.Out," ");
|
|
||||||
|
|
||||||
fprintf (Gbl.F.Out,"</span>");
|
fprintf (Gbl.F.Out,"</span>");
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue
Block a user