mirror of https://github.com/acanas/swad-core.git
Version 14.39.5
This commit is contained in:
parent
781f87d7f2
commit
5d5db513fd
|
@ -40,6 +40,14 @@ table
|
|||
border-style:none;
|
||||
border-spacing:0px;
|
||||
}
|
||||
table th
|
||||
{
|
||||
padding:0px;
|
||||
}
|
||||
table td
|
||||
{
|
||||
padding:0px;
|
||||
}
|
||||
img {border-width:0px; border-style:none;}
|
||||
form {margin:0px; display:inline;}
|
||||
p {margin:0px;}
|
||||
|
@ -443,6 +451,14 @@ hr.YELLOW_SEPARA {height:0px; border-top:0px; border-bottom:#BD4815 dotted 1px;}
|
|||
font-size:16pt;
|
||||
font-weight:bold;
|
||||
}
|
||||
.CELLS_PAD_1 th {padding:1px;}
|
||||
.CELLS_PAD_1 td {padding:1px;}
|
||||
.CELLS_PAD_2 th {padding:2px;}
|
||||
.CELLS_PAD_2 td {padding:2px;}
|
||||
.CELLS_PAD_4 th {padding:4px;}
|
||||
.CELLS_PAD_4 td {padding:4px;}
|
||||
.CELLS_PAD_8 th {padding:8px;}
|
||||
.CELLS_PAD_8 td {padding:8px;}
|
||||
|
||||
/*********************************** Title ***********************************/
|
||||
.TIT
|
||||
|
|
|
@ -40,6 +40,14 @@ table
|
|||
border-style:none;
|
||||
border-spacing:0px;
|
||||
}
|
||||
table th
|
||||
{
|
||||
padding:0px;
|
||||
}
|
||||
table td
|
||||
{
|
||||
padding:0px;
|
||||
}
|
||||
img {border-width:0px; border-style:none;}
|
||||
form {margin:0px; display:inline;}
|
||||
p {margin:0px;}
|
||||
|
@ -291,6 +299,14 @@ p {margin:0px;}
|
|||
font-size:20pt;
|
||||
font-weight:bold;
|
||||
}
|
||||
.CELLS_PAD_1 th {padding:1px;}
|
||||
.CELLS_PAD_1 td {padding:1px;}
|
||||
.CELLS_PAD_2 th {padding:2px;}
|
||||
.CELLS_PAD_2 td {padding:2px;}
|
||||
.CELLS_PAD_4 th {padding:4px;}
|
||||
.CELLS_PAD_4 td {padding:4px;}
|
||||
.CELLS_PAD_8 th {padding:8px;}
|
||||
.CELLS_PAD_8 td {padding:8px;}
|
||||
|
||||
/*********************************** Title ***********************************/
|
||||
.TIT {
|
||||
|
|
|
@ -4138,7 +4138,7 @@ void Act_WriteSmallMFUActions (struct Act_ListMFUActions *ListMFUActions)
|
|||
fprintf (Gbl.F.Out," %s</a></form>",Txt_Frequent_actions);
|
||||
|
||||
fprintf (Gbl.F.Out,"<div id=\"MFU_actions\">"
|
||||
"<table cellpadding=\"0\" width=\"120\">");
|
||||
"<table width=\"120\">");
|
||||
|
||||
/***** Write list of frequently used actions *****/
|
||||
for (NumAct = 0;
|
||||
|
@ -4203,7 +4203,7 @@ void Act_UpdateMFUActions (void)
|
|||
if (Act_Actions[Gbl.CurrentAct].SuperAction == ActMFUAct)
|
||||
return;
|
||||
|
||||
setlocale (LC_NUMERIC,"en_US.iso88591"); // To get the decimal point
|
||||
setlocale (LC_NUMERIC,"en_US.utf8"); // To get the decimal point
|
||||
|
||||
/***** Get current score *****/
|
||||
sprintf (Query,"SELECT Score FROM actions_MFU"
|
||||
|
@ -4242,5 +4242,5 @@ void Act_UpdateMFUActions (void)
|
|||
Act_Actions[Act_Actions[Gbl.CurrentAct].SuperAction].ActCod);
|
||||
DB_QueryUPDATE (Query,"can not update most frequently used actions");
|
||||
|
||||
setlocale (LC_NUMERIC,"es_ES.iso88591");
|
||||
setlocale (LC_NUMERIC,"es_ES.utf8");
|
||||
}
|
||||
|
|
|
@ -266,7 +266,7 @@ static void Asg_ShowOneAssignment (long AsgCod)
|
|||
/* Send work? */
|
||||
fprintf (Gbl.F.Out,"<td rowspan=\"2\" align=\"center\" valign=\"top\""
|
||||
" bgcolor=\"%s\">"
|
||||
"<table cellpadding=\"0\" style=\"border-spacing:2px;\">"
|
||||
"<table style=\"border-spacing:2px;\">"
|
||||
"<tr>"
|
||||
"<td align=\"center\" valign=\"top\" class=\"%s\">"
|
||||
"<img src=\"%s/%s16x16.gif\""
|
||||
|
@ -395,7 +395,7 @@ static void Asg_WriteAssignmentFolder (struct Assignment *Asg)
|
|||
if (Asg->SendWork == Asg_SEND_WORK)
|
||||
{
|
||||
/***** Folder icon *****/
|
||||
fprintf (Gbl.F.Out,"<table cellpadding=\"0\" style=\"border-spacing:2px;\">"
|
||||
fprintf (Gbl.F.Out,"<table style=\"border-spacing:2px;\">"
|
||||
"<tr>"
|
||||
"<td class=\"BT\">");
|
||||
if (Asg->Open &&
|
||||
|
@ -484,7 +484,7 @@ static void Asg_PutFormsToRemEditOneAsg (long AsgCod,bool Hidden)
|
|||
extern const char *Txt_Hide;
|
||||
extern const char *Txt_Edit;
|
||||
|
||||
fprintf (Gbl.F.Out,"<table cellpadding=\"4\">"
|
||||
fprintf (Gbl.F.Out,"<table class=\"CELLS_PAD_4\">"
|
||||
"<tr>");
|
||||
|
||||
/***** Put form to remove assignment *****/
|
||||
|
@ -1152,7 +1152,7 @@ void Asg_RequestCreatOrEditAsg (void)
|
|||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td align=\"right\" valign=\"top\" class=\"TIT_TBL\">%s:</td>"
|
||||
"<td align=\"left\" valign=\"top\">"
|
||||
"<table cellpadding=\"2\">"
|
||||
"<table class=\"CELLS_PAD_2\">"
|
||||
"<tr>"
|
||||
"<td align=\"left\" valign=\"top\">",
|
||||
Dates[StartOrEndTime]);
|
||||
|
|
|
@ -468,7 +468,7 @@ static void Att_PutFormsToRemEditOneAttEvent (long AttCod,bool Hidden)
|
|||
extern const char *Txt_Edit;
|
||||
|
||||
/***** Put form to remove attendance event *****/
|
||||
fprintf (Gbl.F.Out,"<table cellpadding=\"4\">"
|
||||
fprintf (Gbl.F.Out,"<table class=\"CELLS_PAD_4\">"
|
||||
"<tr>"
|
||||
"<td align=\"left\">");
|
||||
Act_FormStart (ActReqRemAtt);
|
||||
|
@ -1104,7 +1104,7 @@ void Att_RequestCreatOrEditAttEvent (void)
|
|||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td align=\"right\" valign=\"top\" class=\"TIT_TBL\">%s:</td>"
|
||||
"<td align=\"left\" valign=\"top\">"
|
||||
"<table cellpadding=\"2\">"
|
||||
"<table class=\"CELLS_PAD_2\">"
|
||||
"<tr>"
|
||||
"<td align=\"left\" valign=\"top\">",
|
||||
Dates[StartOrEndTime]);
|
||||
|
|
|
@ -1246,7 +1246,7 @@ static void Ctr_ListCentresForEdition (void)
|
|||
UsrDat.UsrCod = Ctr->RequesterUsrCod;
|
||||
Usr_ChkUsrCodAndGetAllUsrDataFromUsrCod (&UsrDat);
|
||||
fprintf (Gbl.F.Out,"<td align=\"left\" width=\"100\" valign=\"top\">"
|
||||
"<table width=\"100\" cellpadding=\"2\">"
|
||||
"<table width=\"100\" class=\"CELLS_PAD_2\">"
|
||||
"<tr>");
|
||||
Msg_WriteMsgAuthor (&UsrDat,80,10,"DAT",true,NULL);
|
||||
fprintf (Gbl.F.Out,"</tr>"
|
||||
|
@ -1943,7 +1943,7 @@ static void Ctr_PutFormToCreateCentre (void)
|
|||
|
||||
/***** Centre requester *****/
|
||||
fprintf (Gbl.F.Out,"<td align=\"left\" width=\"100\" valign=\"top\">"
|
||||
"<table width=\"100\" cellpadding=\"2\">"
|
||||
"<table width=\"100\" class=\"CELLS_PAD_2\">"
|
||||
"<tr>");
|
||||
Msg_WriteMsgAuthor (&Gbl.Usrs.Me.UsrDat,80,10,"DAT",true,NULL);
|
||||
fprintf (Gbl.F.Out,"</tr>"
|
||||
|
|
|
@ -35,11 +35,12 @@
|
|||
/****************************** Public constants *****************************/
|
||||
/*****************************************************************************/
|
||||
|
||||
#define Log_PLATFORM_VERSION "SWAD 14.39.4 (2014/12/21)"
|
||||
#define Log_PLATFORM_VERSION "SWAD 14.39.5 (2014/12/21)"
|
||||
|
||||
// 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
|
||||
/*
|
||||
Version 14.39.5 :Dic 21, 2014 Changes in HTML and CSS to validate HTML5 in W3C validator. (170725 lines)
|
||||
Version 14.39.4 :Dic 21, 2014 Changes in HTML and CSS to validate HTML5 in W3C validator. (170688 lines)
|
||||
Version 14.39.3 :Dic 21, 2014 Changes to validate HTML5 in W3C validator.
|
||||
Charset is changed from ISO-8859-1 to windows-1252. (170664 lines)
|
||||
|
|
|
@ -277,7 +277,7 @@ static void Cht_WriteLinkToChat (const char *Icon,const char *RoomCode,const cha
|
|||
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td align=\"left\" valign=\"top\">"
|
||||
"<table cellpadding=\"0\">"
|
||||
"<table>"
|
||||
"<tr>");
|
||||
Msg_IndentDependingOnLevel (Level,IsLastItemInLevel);
|
||||
|
||||
|
|
|
@ -251,7 +251,7 @@ void Con_ShowGlobalConnectedUsrs (void)
|
|||
|
||||
/***** Start table *****/
|
||||
fprintf (Gbl.F.Out,"<div class=\"CONNECTED\" style=\"width:110px;\">"
|
||||
"<table cellpadding=\"0\" width=\"110\">");
|
||||
"<table width=\"110\">");
|
||||
|
||||
/***** Write total number of sessions *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
|
@ -394,11 +394,11 @@ void Con_ShowConnectedUsrsBelongingToScope (void)
|
|||
{
|
||||
case Con_SHOW_ON_MAIN_ZONE:
|
||||
fprintf (Gbl.F.Out,"<div class=\"CONNECTED\" style=\"width:312px;\">"
|
||||
"<table cellpadding=\"0\">");
|
||||
"<table>");
|
||||
break;
|
||||
case Con_SHOW_ON_RIGHT_COLUMN:
|
||||
fprintf (Gbl.F.Out,"<div class=\"CONNECTED\" style=\"width:110px;\">"
|
||||
"<table cellpadding=\"0\" width=\"110\">");
|
||||
"<table width=\"110\">");
|
||||
break;
|
||||
}
|
||||
|
||||
|
|
|
@ -1246,7 +1246,7 @@ static void Crs_ListCoursesForEdition (void)
|
|||
UsrDat.UsrCod = Crs->RequesterUsrCod;
|
||||
Usr_ChkUsrCodAndGetAllUsrDataFromUsrCod (&UsrDat);
|
||||
fprintf (Gbl.F.Out,"<td align=\"left\" width=\"100\" valign=\"top\">"
|
||||
"<table width=\"100\" cellpadding=\"2\">"
|
||||
"<table width=\"100\" class=\"CELLS_PAD_2\">"
|
||||
"<tr>");
|
||||
Msg_WriteMsgAuthor (&UsrDat,80,10,"DAT",true,NULL);
|
||||
fprintf (Gbl.F.Out,"</tr>"
|
||||
|
@ -1429,7 +1429,7 @@ static void Crs_PutFormToCreateCourse (void)
|
|||
|
||||
/***** Course requester *****/
|
||||
fprintf (Gbl.F.Out,"<td align=\"left\" width=\"100\" valign=\"top\">"
|
||||
"<table width=\"100\" cellpadding=\"2\">"
|
||||
"<table width=\"100\" class=\"CELLS_PAD_2\">"
|
||||
"<tr>");
|
||||
Msg_WriteMsgAuthor (&Gbl.Usrs.Me.UsrDat,80,10,"DAT",true,NULL);
|
||||
fprintf (Gbl.F.Out,"</tr>"
|
||||
|
|
10
swad_date.c
10
swad_date.c
|
@ -266,7 +266,7 @@ void Dat_DrawCalendar (void)
|
|||
/***** Draw several months *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td align=\"center\">"
|
||||
"<table cellpadding=\"0\" style=\"border-spacing:5px;\">");
|
||||
"<table style=\"border-spacing:5px;\">");
|
||||
for (Row = 0;
|
||||
Row < 4;
|
||||
Row++)
|
||||
|
@ -354,7 +354,7 @@ void Dat_DrawMonth (unsigned RealYear,unsigned RealMonth,
|
|||
/***** Start of month *****/
|
||||
fprintf (Gbl.F.Out,"<div class=\"MONTH_CONTAINER\">"
|
||||
"<div class=\"MONTH\">%s %u</div>"
|
||||
"<table cellpadding=\"0\" class=\"MONTH_TABLE_DAYS\">",
|
||||
"<table class=\"MONTH_TABLE_DAYS\">",
|
||||
Txt_MONTHS_CAPS[RealMonth-1],RealYear);
|
||||
|
||||
/***** Month head: first letter for each day of week *****/
|
||||
|
@ -465,7 +465,7 @@ void Dat_DrawMonth (unsigned RealYear,unsigned RealMonth,
|
|||
if (PutLinkToEvents && ThisDayHasEvent)
|
||||
{
|
||||
Act_FormStart (ActSeeExaAnn);
|
||||
fprintf (Gbl.F.Out,"<table cellpadding=\"0\" width=\"100%%\">"
|
||||
fprintf (Gbl.F.Out,"<table width=\"100%%\">"
|
||||
"<tr>"
|
||||
"<td align=\"center\" class=\"%s\">",
|
||||
ClassForDay);
|
||||
|
@ -632,7 +632,7 @@ void Dat_WriteFormDate (unsigned FirstYear,unsigned LastYear,
|
|||
extern const char *Txt_MONTHS_SMALL[12];
|
||||
|
||||
/***** Day *****/
|
||||
fprintf (Gbl.F.Out,"<table cellpadding=\"0\">"
|
||||
fprintf (Gbl.F.Out,"<table>"
|
||||
"<tr>"
|
||||
"<td align=\"left\">"
|
||||
"<select id=\"%s\" name=\"%s\"",
|
||||
|
@ -719,7 +719,7 @@ void Dat_WriteFormHourMinute (const char *NameSelectHour,const char *NameSelectM
|
|||
unsigned Hour,Minute;
|
||||
|
||||
/***** Hour *****/
|
||||
fprintf (Gbl.F.Out,"<table cellpadding=\"0\">"
|
||||
fprintf (Gbl.F.Out,"<table>"
|
||||
"<tr>"
|
||||
"<td align=\"left\">"
|
||||
"<select name=\"%s\"",
|
||||
|
|
|
@ -434,7 +434,7 @@ void Deg_WriteMenuAllCourses (Act_Action_t NextActionCty,
|
|||
|
||||
/***** Start of table *****/
|
||||
fprintf (Gbl.F.Out,"<div align=\"center\" style=\"margin-bottom:10px;\">"
|
||||
"<table cellpadding=\"2\">");
|
||||
"<table class=\"CELLS_PAD_2\">");
|
||||
|
||||
/***** Write a 1st selector
|
||||
with all the countries *****/
|
||||
|
@ -1542,7 +1542,7 @@ static void Deg_ListDegreesForEdition (void)
|
|||
UsrDat.UsrCod = Deg->RequesterUsrCod;
|
||||
Usr_ChkUsrCodAndGetAllUsrDataFromUsrCod (&UsrDat);
|
||||
fprintf (Gbl.F.Out,"<td align=\"left\" width=\"100\" valign=\"top\">"
|
||||
"<table width=\"100\" cellpadding=\"2\">"
|
||||
"<table width=\"100\" class=\"CELLS_PAD_2\">"
|
||||
"<tr>");
|
||||
Msg_WriteMsgAuthor (&UsrDat,80,10,"DAT",true,NULL);
|
||||
fprintf (Gbl.F.Out,"</tr>"
|
||||
|
@ -1806,7 +1806,7 @@ static void Deg_PutFormToCreateDegree (void)
|
|||
|
||||
/***** Degree requester *****/
|
||||
fprintf (Gbl.F.Out,"<td align=\"left\" width=\"100\" valign=\"top\">"
|
||||
"<table width=\"100\" cellpadding=\"2\">"
|
||||
"<table width=\"100\" class=\"CELLS_PAD_2\">"
|
||||
"<tr>");
|
||||
Msg_WriteMsgAuthor (&Gbl.Usrs.Me.UsrDat,80,10,"DAT",true,NULL);
|
||||
fprintf (Gbl.F.Out,"</tr>"
|
||||
|
|
|
@ -1917,7 +1917,7 @@ void Enr_ShowEnrollmentRequests (void)
|
|||
/* Start form */
|
||||
Act_FormStart (ActSeeSignUpReq);
|
||||
fprintf (Gbl.F.Out,"<div align=\"center\">"
|
||||
"<table cellpadding=\"0\" style=\"border-spacing:4px;\">");
|
||||
"<table style=\"border-spacing:4px;\">");
|
||||
|
||||
/* Scope (whole platform, current centre, current degree or current course) */
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
|
|
|
@ -780,10 +780,7 @@ static void Exa_ShowExamAnnouncement (long ExaCod,Exa_tTypeViewExamAnnouncement_
|
|||
Lay_StartRoundFrameTable10 ("500px",0,NULL);
|
||||
fprintf (Gbl.F.Out,"<tr>" \
|
||||
"<td align=\"center\">" \
|
||||
"<table cellpadding=\"20\" width=\"100%%\">" \
|
||||
"<tr>" \
|
||||
"<td align=\"center\">" \
|
||||
"<table cellpadding=\"0\" width=\"100%%\" style=\"border-spacing:3px;\">");
|
||||
"<table width=\"100%%\" style=\"padding:20px; border-spacing:3px;\">");
|
||||
|
||||
/***** Institution logo *****/
|
||||
fprintf (Gbl.F.Out,"<tr>" \
|
||||
|
@ -1185,9 +1182,6 @@ static void Exa_ShowExamAnnouncement (long ExaCod,Exa_tTypeViewExamAnnouncement_
|
|||
|
||||
/***** End frame *****/
|
||||
fprintf (Gbl.F.Out,"</table>" \
|
||||
"</td>" \
|
||||
"</tr>" \
|
||||
"</table>" \
|
||||
"</td>" \
|
||||
"</tr>");
|
||||
Lay_EndRoundFrameTable10 ();
|
||||
|
|
|
@ -3542,7 +3542,8 @@ static bool Brw_WriteRowFileBrowser (unsigned Level,
|
|||
/***** Indentation depending on level, icon, and file/folder name *****/
|
||||
/* Start of the column */
|
||||
fprintf (Gbl.F.Out,"<td align=\"left\" width=\"99%%\" bgcolor=\"%s\" valign=\"top\" class=\"NO_BR\">"
|
||||
"<table cellpadding=\"0\"><tr>",
|
||||
"<table>"
|
||||
"<tr>",
|
||||
Gbl.ColorRows[Gbl.RowEvenOdd]);
|
||||
|
||||
/* Indent depending on level */
|
||||
|
@ -3909,7 +3910,7 @@ static void Brw_IndentAndWriteIconExpandContract (unsigned Level,Brw_ExpandTree_
|
|||
extern const char *Txt_Contract_FOLDER_X;
|
||||
|
||||
fprintf (Gbl.F.Out,"<td align=\"left\">"
|
||||
"<table cellpadding=\"0\">"
|
||||
"<table>"
|
||||
"<tr>");
|
||||
Brw_IndentDependingOnLevel (Level);
|
||||
fprintf (Gbl.F.Out,"<td class=\"BM%d\">",Gbl.RowEvenOdd);
|
||||
|
@ -4548,7 +4549,7 @@ static void Brw_WriteDatesAssignment (void)
|
|||
|
||||
if (Gbl.FileBrowser.Asg.AsgCod > 0)
|
||||
{
|
||||
fprintf (Gbl.F.Out,"<table cellpadding=\"0\">"
|
||||
fprintf (Gbl.F.Out,"<table>"
|
||||
"<tr>");
|
||||
|
||||
/***** Write start date *****/
|
||||
|
@ -7509,7 +7510,7 @@ void Brw_ShowFileMetadata (void)
|
|||
}
|
||||
|
||||
/***** Start table *****/
|
||||
fprintf (Gbl.F.Out,"<table cellpadding=\"2\">");
|
||||
fprintf (Gbl.F.Out,"<table class=\"CELLS_PAD_2\">");
|
||||
|
||||
/***** Link to download the file *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
|
|
|
@ -858,7 +858,7 @@ static void For_ShowThreadPosts (long ThrCod,char *LastSubject)
|
|||
/* Write thread title */
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td align=\"left\" valign=\"top\">"
|
||||
"<table cellpadding=\"0\">"
|
||||
"<table>"
|
||||
"<tr>");
|
||||
IsLastItemInLevel[2] = true;
|
||||
Msg_IndentDependingOnLevel (2,IsLastItemInLevel);
|
||||
|
@ -929,7 +929,7 @@ static void For_ShowThreadPosts (long ThrCod,char *LastSubject)
|
|||
Lay_StartRoundFrameTable10 (NULL,0,NULL);
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td align=\"center\" width=\"100%%\">"
|
||||
"<table cellpadding=\"2\" width=\"100%%\">");
|
||||
"<table width=\"100%%\" class=\"CELLS_PAD_2\">");
|
||||
|
||||
mysql_data_seek (mysql_res,(my_ulonglong) (Pagination.FirstItemVisible-1));
|
||||
for (NumRow = Pagination.FirstItemVisible;
|
||||
|
@ -1119,7 +1119,7 @@ static void For_ShowAForumPost (struct ForumThread *Thr,unsigned PstNum,long Pst
|
|||
/***** Write author or destinatary, and form to reply (in case of received post) *****/
|
||||
fprintf (Gbl.F.Out,"</td>"
|
||||
"<td align=\"left\" width=\"120\" colspan=\"2\" valign=\"top\">"
|
||||
"<table width=\"120\" cellpadding=\"2\">");
|
||||
"<table width=\"120\" class=\"CELLS_PAD_2\">");
|
||||
|
||||
/* Write author */
|
||||
fprintf (Gbl.F.Out,"<tr>");
|
||||
|
@ -2045,7 +2045,7 @@ static void For_WriteLinkToForum (For_ForumType_t ForumType,Act_Action_t NextAct
|
|||
/***** Start row *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td align=\"left\" valign=\"top\">"
|
||||
"<table cellpadding=\"0\">"
|
||||
"<table>"
|
||||
"<tr>");
|
||||
|
||||
/***** Indent forum title *****/
|
||||
|
|
|
@ -84,7 +84,7 @@ void Gbl_InitializeGlobals (void)
|
|||
char UniqueNamePlain[Cns_MAX_LENGTH_IP+1+10+1+10+1];
|
||||
Txt_Language_t Lan;
|
||||
|
||||
setlocale (LC_ALL,"es_ES.iso88591");
|
||||
setlocale (LC_ALL,"es_ES.utf8");
|
||||
|
||||
gettimeofday (&Gbl.tvStart, &Gbl.tz);
|
||||
Dat_GetTimeStartExecution ();
|
||||
|
|
|
@ -1205,7 +1205,7 @@ static void Grp_ListGroupTypesForEdition (void)
|
|||
fprintf (Gbl.F.Out,"<td align=\"left\" valign=\"middle\">");
|
||||
Act_FormStart (ActChgTimGrpTyp);
|
||||
Grp_PutParamGrpTypCod (Gbl.CurrentCrs.Grps.GrpTypes.LstGrpTypes[NumGrpTyp].GrpTypCod);
|
||||
fprintf (Gbl.F.Out,"<table cellpadding=\"2\">"
|
||||
fprintf (Gbl.F.Out,"<table class=\"CELLS_PAD_2\">"
|
||||
"<tr>"
|
||||
"<td width=\"16\" align=\"left\" valign=\"middle\">"
|
||||
"<img src=\"%s/%s16x16.gif\" title=\"%s\""
|
||||
|
@ -2044,7 +2044,7 @@ static void Grp_PutFormToCreateGroupType (void)
|
|||
|
||||
/***** Open time *****/
|
||||
fprintf (Gbl.F.Out,"<td align=\"left\" valign=\"middle\">"
|
||||
"<table cellpadding=\"2\">"
|
||||
"<table class=\"CELLS_PAD_2\">"
|
||||
"<tr>"
|
||||
"<td align=\"left\" valign=\"middle\">"
|
||||
"<img src=\"%s/%s16x16.gif\" alt=\"\" title=\"%s\""
|
||||
|
@ -4116,7 +4116,7 @@ void Grp_ShowSelectorWhichGrps (void)
|
|||
extern const char *Txt_Show_WHICH_groups[2];
|
||||
Grp_WhichGroups_t WhichGrps;
|
||||
|
||||
fprintf (Gbl.F.Out,"<table cellpadding=\"2\">"
|
||||
fprintf (Gbl.F.Out,"<table class=\"CELLS_PAD_2\">"
|
||||
"<tr>");
|
||||
for (WhichGrps = Grp_ONLY_MY_GROUPS;
|
||||
WhichGrps <= Grp_ALL_GROUPS;
|
||||
|
|
|
@ -68,7 +68,7 @@ void Ico_PutIconsToSelectIconSet (void)
|
|||
{
|
||||
Ico_IconSet_t IconSet;
|
||||
|
||||
fprintf (Gbl.F.Out,"<table cellpadding=\"1\">"
|
||||
fprintf (Gbl.F.Out,"<table class=\"CELLS_PAD_1\">"
|
||||
"<tr>");
|
||||
for (IconSet = (Ico_IconSet_t) 0;
|
||||
IconSet < Ico_NUM_ICON_SETS;
|
||||
|
|
|
@ -92,7 +92,7 @@ void Ind_ReqIndicatorsCourses (void)
|
|||
/* Start form */
|
||||
Act_FormStart (ActReqStaCrs);
|
||||
fprintf (Gbl.F.Out,"<div align=\"center\">"
|
||||
"<table cellpadding=\"2\">");
|
||||
"<table class=\"CELLS_PAD_2\">");
|
||||
|
||||
/* Compute stats for anywhere, centre, degree or course? */
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
|
@ -495,7 +495,7 @@ static void Ind_ShowTableOfCoursesWithIndicators (Ind_IndicatorsLayout_t Indicat
|
|||
struct Ind_IndicatorsCrs Indicators;
|
||||
|
||||
/***** Table start *****/
|
||||
fprintf (Gbl.F.Out,"<table bgcolor=\"#4D88A1\" cellpadding=\"1\" style=\"border-spacing:1px;\">");
|
||||
fprintf (Gbl.F.Out,"<table bgcolor=\"#4D88A1\" class=\"CELLS_PAD_1\" style=\"border-spacing:1px;\">");
|
||||
|
||||
/***** Write table heading *****/
|
||||
switch (IndicatorsLayout)
|
||||
|
|
|
@ -1041,7 +1041,7 @@ void Inf_FormToSendPage (Inf_InfoSrc_t InfoSrc,Inf_InfoType_t InfoType)
|
|||
Act_FormStart (Inf_ActionsInfo[InfoSrc][InfoType]);
|
||||
|
||||
/***** File *****/
|
||||
fprintf (Gbl.F.Out,"<table cellpadding=\"0\">"
|
||||
fprintf (Gbl.F.Out,"<table>"
|
||||
"<tr>"
|
||||
"<td align=\"right\" class=\"%s\">%s:</td>"
|
||||
"<td align=\"left\">"
|
||||
|
@ -1074,7 +1074,8 @@ void Inf_FormToSendURL (Inf_InfoSrc_t InfoSrc,Inf_InfoType_t InfoType)
|
|||
Act_FormStart (Inf_ActionsInfo[InfoSrc][InfoType]);
|
||||
|
||||
/***** Link *****/
|
||||
fprintf (Gbl.F.Out,"<table cellpadding=\"0\"><tr>"
|
||||
fprintf (Gbl.F.Out,"<table>"
|
||||
"<tr>"
|
||||
"<td align=\"right\" class=\"%s\">%s:</td>"
|
||||
"<td align=\"left\">"
|
||||
"<input type=\"text\" name=\"InfoSrcURL\" size=\"50\" maxlength=\"256\" value=\"",
|
||||
|
|
|
@ -1172,7 +1172,7 @@ static void Ins_ListInstitutionsForEdition (void)
|
|||
UsrDat.UsrCod = Ins->RequesterUsrCod;
|
||||
Usr_ChkUsrCodAndGetAllUsrDataFromUsrCod (&UsrDat);
|
||||
fprintf (Gbl.F.Out,"<td align=\"left\" width=\"100\" valign=\"top\">"
|
||||
"<table width=\"100\" cellpadding=\"2\">"
|
||||
"<table width=\"100\" class=\"CELLS_PAD_2\">"
|
||||
"<tr>");
|
||||
Msg_WriteMsgAuthor (&UsrDat,80,10,"DAT",true,NULL);
|
||||
fprintf (Gbl.F.Out,"</tr>"
|
||||
|
@ -1705,7 +1705,7 @@ static void Ins_PutFormToCreateInstitution (void)
|
|||
|
||||
/***** Centre requester *****/
|
||||
fprintf (Gbl.F.Out,"<td align=\"left\" width=\"100\" valign=\"top\">"
|
||||
"<table width=\"100\" cellpadding=\"2\">"
|
||||
"<table width=\"100\" class=\"CELLS_PAD_2\">"
|
||||
"<tr>");
|
||||
Msg_WriteMsgAuthor (&Gbl.Usrs.Me.UsrDat,80,10,"DAT",true,NULL);
|
||||
fprintf (Gbl.F.Out,"</tr>"
|
||||
|
|
|
@ -271,7 +271,7 @@ void Lay_WriteStartOfPage (void)
|
|||
Gbl.Prefs.IconsURL);
|
||||
|
||||
/***** Header of layout *****/
|
||||
fprintf (Gbl.F.Out,"<table cellpadding=\"0\" width=\"100%%\">");
|
||||
fprintf (Gbl.F.Out,"<table width=\"100%%\">");
|
||||
|
||||
Lay_WritePageTopHeading ();
|
||||
|
||||
|
@ -284,7 +284,7 @@ void Lay_WriteStartOfPage (void)
|
|||
}
|
||||
fprintf (Gbl.F.Out,"<td colspan=\"%u\" align=\"center\" valign=\"top\">"
|
||||
"<div id=\"CENTRAL_ZONE\" style=\"background-color:%s;vertical-align:top;\">"
|
||||
"<table cellpadding=\"0\" width=\"100%%\" style=\"vertical-align:top;\">"
|
||||
"<table width=\"100%%\" style=\"vertical-align:top;\">"
|
||||
"<tr>",
|
||||
ColspanCentralPart,
|
||||
The_TabOnBgColors[Gbl.Prefs.Theme]);
|
||||
|
@ -604,7 +604,7 @@ static void Lay_WritePageTopHeading (void)
|
|||
Cfg_PLATFORM_FULL_NAME);
|
||||
fprintf (Gbl.F.Out,"</td>");
|
||||
fprintf (Gbl.F.Out,"<td align=\"center\" valign=\"middle\">"
|
||||
"<table width=\"100%%\" cellpadding=\"0\">"
|
||||
"<table width=\"100%%\">"
|
||||
"<tr>");
|
||||
/***** 1st. row, 2nd. column: search, and logged user / language selection *****/
|
||||
if (Gbl.Prefs.Layout == Lay_LAYOUT_DESKTOP)
|
||||
|
@ -955,7 +955,7 @@ static void Lay_DrawTabsMobile (void)
|
|||
bool ICanViewTab;
|
||||
|
||||
/***** Table start *****/
|
||||
fprintf (Gbl.F.Out,"<table cellpadding=\"0\" width=\"100%%\">");
|
||||
fprintf (Gbl.F.Out,"<table width=\"100%%\">");
|
||||
|
||||
/***** Loop to write all tabs. Each row holds a tab *****/
|
||||
for (NumTabVisible = 0, NumTab = (Act_Tab_t) 1;
|
||||
|
@ -971,7 +971,7 @@ static void Lay_DrawTabsMobile (void)
|
|||
|
||||
/* Icon at top and text at bottom */
|
||||
fprintf (Gbl.F.Out,"<td align=\"center\" valign=\"top\" width=\"25%%\">"
|
||||
"<table cellpadding=\"0\">"
|
||||
"<table>"
|
||||
"<tr>"
|
||||
"<td align=\"center\" valign=\"top\">");
|
||||
if (ICanViewTab)
|
||||
|
@ -1201,7 +1201,7 @@ static void Lay_WriteMenuThisTabMobile (void)
|
|||
const char *Title;
|
||||
|
||||
/***** Table start *****/
|
||||
fprintf (Gbl.F.Out,"<table cellpadding=\"0\" width=\"100%%\">");
|
||||
fprintf (Gbl.F.Out,"<table width=\"100%%\">");
|
||||
|
||||
/***** Loop to write all options in menu. Each row holds an option *****/
|
||||
for (NumOptInMenu = NumOptVisible = 0;
|
||||
|
@ -1345,10 +1345,10 @@ static void Lay_ShowLeftColumn (void)
|
|||
{
|
||||
struct Act_ListMFUActions ListMFUActions;
|
||||
|
||||
fprintf (Gbl.F.Out,"<table width=\"128\" cellpadding=\"0\">"
|
||||
fprintf (Gbl.F.Out,"<table width=\"128\">"
|
||||
"<tr>"
|
||||
"<td align=\"left\" valign=\"top\">"
|
||||
"<table width=\"128\" cellpadding=\"0\" style=\"border-spacing:4px;\">");
|
||||
"<table width=\"128\" style=\"border-spacing:4px;\">");
|
||||
|
||||
/***** Most frequently used actions *****/
|
||||
if (Gbl.Usrs.Me.Logged)
|
||||
|
@ -1400,11 +1400,11 @@ static void Lay_ShowRightColumn (void)
|
|||
Gbl.Usrs.Connected.WhereToShow = Con_SHOW_ON_RIGHT_COLUMN;
|
||||
|
||||
/***** Connected users *****/
|
||||
fprintf (Gbl.F.Out,"<table width=\"100%%\" cellpadding=\"0\">"
|
||||
fprintf (Gbl.F.Out,"<table width=\"100%%\">"
|
||||
"<tr>"
|
||||
"<td align=\"right\" valign=\"top\""
|
||||
" style=\"background-image: url('%s/head_base_background_1x56.gif'); background-repeat: repeat-x;\">"
|
||||
"<table width=\"100%%\" cellpadding=\"0\" style=\"padding-top:56px; border-spacing:4px;\">",
|
||||
"<table width=\"100%%\" style=\"padding-top:56px; border-spacing:4px;\">",
|
||||
Gbl.Prefs.PathTheme);
|
||||
|
||||
/***** Banners *****/
|
||||
|
@ -1512,22 +1512,28 @@ void Lay_WriteTitle (const char *Title)
|
|||
/*****************************************************************************/
|
||||
/****************** Start and end a table with rounded frame *****************/
|
||||
/*****************************************************************************/
|
||||
// CellPadding must be 0, 1, 2, 4 or 8
|
||||
|
||||
void Lay_StartRoundFrameTable10 (const char *Width,unsigned CellPadding,const char *Title)
|
||||
{
|
||||
fprintf (Gbl.F.Out,"<div align=\"center\">"
|
||||
"<div class=\"FRAME10\"");
|
||||
if (Width)
|
||||
fprintf (Gbl.F.Out," style=\"width:%s;\"",
|
||||
Width);
|
||||
fprintf (Gbl.F.Out," style=\"width:%s;\"",Width);
|
||||
fprintf (Gbl.F.Out,">");
|
||||
|
||||
if (Title)
|
||||
fprintf (Gbl.F.Out,"<div align=\"center\" class=\"TIT_TBL_10\">%s</div>",
|
||||
Title);
|
||||
fprintf (Gbl.F.Out,"<table cellpadding=\"%u\" class=\"TABLE10\">",
|
||||
CellPadding);
|
||||
|
||||
fprintf (Gbl.F.Out,"<table class=\"TABLE10");
|
||||
if (CellPadding)
|
||||
fprintf (Gbl.F.Out," CELLS_PAD_%u",CellPadding); // CellPadding must be 0, 1, 2, 4 or 8
|
||||
fprintf (Gbl.F.Out,"\">");
|
||||
}
|
||||
|
||||
// CellPadding must be 0, 1, 2, 4 or 8
|
||||
|
||||
void Lay_StartRoundFrameTable10Shadow (const char *Width,unsigned CellPadding)
|
||||
{
|
||||
fprintf (Gbl.F.Out,"<div align=\"center\">"
|
||||
|
@ -1536,8 +1542,10 @@ void Lay_StartRoundFrameTable10Shadow (const char *Width,unsigned CellPadding)
|
|||
fprintf (Gbl.F.Out," style=\"width:%s\"",
|
||||
Width);
|
||||
fprintf (Gbl.F.Out,">"
|
||||
"<table cellpadding=\"%u\" class=\"TABLE10\">",
|
||||
CellPadding);
|
||||
"<table class=\"TABLE10");
|
||||
if (CellPadding)
|
||||
fprintf (Gbl.F.Out," CELLS_PAD_%u",CellPadding); // CellPadding must be 0, 1, 2, 4 or 8
|
||||
fprintf (Gbl.F.Out,"\">");
|
||||
}
|
||||
|
||||
void Lay_EndRoundFrameTable10 (void)
|
||||
|
@ -1810,8 +1818,7 @@ void Lay_WriteHeaderClassPhoto (unsigned NumColumns,bool PrintView,bool DrawingC
|
|||
/***** Table start *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td align=\"center\" colspan=\"%u\">"
|
||||
"<table cellpadding=\"0\" width=\"100%%\""
|
||||
" style=\"padding:10px;\">"
|
||||
"<table width=\"100%%\" style=\"padding:10px;\">"
|
||||
"<tr>",
|
||||
NumColumns);
|
||||
|
||||
|
@ -1890,7 +1897,8 @@ void Lay_PutIconsToSelectLayout (void)
|
|||
extern const char *Txt_LAYOUT_NAMES[Lay_NUM_LAYOUTS];
|
||||
Lay_Layout_t Layout;
|
||||
|
||||
fprintf (Gbl.F.Out,"<table cellpadding=\"1\"><tr>");
|
||||
fprintf (Gbl.F.Out,"<table class=\"CELLS_PAD_2\">"
|
||||
"<tr>");
|
||||
for (Layout = (Lay_Layout_t) 0;
|
||||
Layout < Lay_NUM_LAYOUTS;
|
||||
Layout++)
|
||||
|
@ -1909,7 +1917,8 @@ void Lay_PutIconsToSelectLayout (void)
|
|||
Txt_LAYOUT_NAMES[Layout],
|
||||
Txt_LAYOUT_NAMES[Layout]);
|
||||
}
|
||||
fprintf (Gbl.F.Out,"</tr></table>");
|
||||
fprintf (Gbl.F.Out,"</tr>"
|
||||
"</table>");
|
||||
}
|
||||
|
||||
/*****************************************************************************/
|
||||
|
|
|
@ -740,7 +740,7 @@ void Lnk_WriteMenuWithInstitutionalLinks (void)
|
|||
fprintf (Gbl.F.Out,"<tr>" \
|
||||
"<td align=\"center\" width=\"120\" class=\"INS_LNK\">" \
|
||||
"<div id=\"institutional_links\">" \
|
||||
"<table cellpadding=\"0\" width=\"110\">");
|
||||
"<table width=\"110\">");
|
||||
|
||||
/***** Write all the links *****/
|
||||
for (NumLnk = 0;
|
||||
|
|
|
@ -779,7 +779,7 @@ void Mai_WriteMenuWithMailDomains (void)
|
|||
Txt_Mail_domains_allowed_for_notifications);
|
||||
|
||||
/***** Start table *****/
|
||||
fprintf (Gbl.F.Out,"<table cellpadding=\"0\" width=\"120\">"
|
||||
fprintf (Gbl.F.Out,"<table width=\"120\">"
|
||||
"<tr>"
|
||||
"<td align=\"left\" width=\"4\"><img src=\"%s/ewbw1_4x4.gif\" width=\"4\" height=\"4\" alt=\"\" /></td>"
|
||||
"<td align=\"left\" style=\"background-image: url('%s/mbw1_1x4.gif'); background-repeat: repeat-x;\"></td>"
|
||||
|
|
|
@ -1574,7 +1574,7 @@ static void Msg_ShowSentOrReceivedMessages (Msg_TypeOfMessages_t TypeOfMessages)
|
|||
Lay_StartRoundFrameTable10 ("100%",0,NULL);
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td align=\"center\" width=\"100%%\">"
|
||||
"<table cellpadding=\"2\" width=\"100%%\">");
|
||||
"<table width=\"100%%\" class=\"CELLS_PAD_2\">");
|
||||
|
||||
mysql_data_seek (mysql_res,(my_ulonglong) (Pagination.FirstItemVisible-1));
|
||||
for (NumRow = Pagination.FirstItemVisible;
|
||||
|
@ -2210,7 +2210,7 @@ void Msg_ShowFormToFilterMsgs (Msg_TypeOfMessages_t TypeOfMessages)
|
|||
|
||||
/***** Table start *****/
|
||||
fprintf (Gbl.F.Out,"<div align=\"center\">"
|
||||
"<table cellpadding=\"0\">");
|
||||
"<table>");
|
||||
|
||||
/***** Authors/recipients of the message *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
|
@ -2489,7 +2489,7 @@ static void Msg_ShowASentOrReceivedMessage (Msg_TypeOfMessages_t TypeOfMessages,
|
|||
/***** Put an icon with message status *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td align=\"center\" valign=\"top\" width=\"16\" class=\"%s\">"
|
||||
"<table cellpadding=\"0\" width=\"16\">"
|
||||
"<table width=\"16\">"
|
||||
"<tr>"
|
||||
"<td align=\"center\" valign=\"top\" width=\"16\">"
|
||||
"<img src=\"%s/msg-%s16x16.gif\""
|
||||
|
@ -2539,7 +2539,7 @@ static void Msg_ShowASentOrReceivedMessage (Msg_TypeOfMessages_t TypeOfMessages,
|
|||
{
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td align=\"left\" valign=\"top\" rowspan=\"3\" colspan=\"3\">"
|
||||
"<table cellpadding=\"2\">");
|
||||
"<table class=\"CELLS_PAD_2\">");
|
||||
|
||||
/***** Write course origin of message *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
|
@ -2858,7 +2858,7 @@ static void Msg_WriteMsgFrom (struct UsrData *UsrDat,bool Deleted)
|
|||
char PhotoURL[PATH_MAX+1];
|
||||
|
||||
/***** Put an icon to show if user has read the message *****/
|
||||
fprintf (Gbl.F.Out,"<table cellpadding=\"0\">"
|
||||
fprintf (Gbl.F.Out,"<table>"
|
||||
"<tr>"
|
||||
"<td align=\"left\" valign=\"middle\" width=\"16\">"
|
||||
"<img src=\"%s/%s16x16.gif\""
|
||||
|
@ -2963,7 +2963,7 @@ static void Msg_WriteMsgTo (Msg_TypeOfMessages_t TypeOfMessages,long MsgCod)
|
|||
if (NumRecipientsTotal)
|
||||
{
|
||||
/***** Start table *****/
|
||||
fprintf (Gbl.F.Out,"<table cellpadding=\"0\">");
|
||||
fprintf (Gbl.F.Out,"<table>");
|
||||
|
||||
/***** How many recipients will be shown? *****/
|
||||
if (NumRecipientsKnown <= Msg_MAX_RECIPIENTS_TO_SHOW)
|
||||
|
|
|
@ -1641,7 +1641,7 @@ void Ntf_PutFormChangeNotifSentByEMail (void)
|
|||
/***** Start form *****/
|
||||
Act_FormStart (ActChgNtfPrf);
|
||||
fprintf (Gbl.F.Out,"<p class=\"TIT_TBL\">%s</p>"
|
||||
"<table cellpadding=\"2\">"
|
||||
"<table class=\"CELLS_PAD_2\">"
|
||||
"<tr>"
|
||||
"<th></th>"
|
||||
"<th align=\"center\" class=\"TIT_TBL\">%s</th>"
|
||||
|
|
|
@ -185,7 +185,7 @@ void Pag_WriteLinksToPages (Pag_WhatPaginate_t WhatPaginate,long ThrCod,struct P
|
|||
if (Pagination->MoreThanOnePage)
|
||||
{
|
||||
/***** Links to several pages start here *****/
|
||||
fprintf (Gbl.F.Out,"<table cellpadding=\"0\" style=\"border-spacing:5px;\">"
|
||||
fprintf (Gbl.F.Out,"<table style=\"border-spacing:5px;\">"
|
||||
"<tr>"
|
||||
"<td align=\"left\" class=\"%s\">[</td>"
|
||||
"<td align=\"left\" class=\"%s\">%s</td>",
|
||||
|
|
|
@ -676,7 +676,7 @@ static void Pho_UpdatePhoto2 (void)
|
|||
unsigned NumPhoto;
|
||||
|
||||
/***** Show the three images resulting of the processing *****/
|
||||
fprintf (Gbl.F.Out,"<table border=\"0\" width=\"100%%\" cellpadding=\"0\"><tr>");
|
||||
fprintf (Gbl.F.Out,"<table width=\"100%%\"><tr>");
|
||||
for (NumPhoto = 0;
|
||||
NumPhoto < 3;
|
||||
NumPhoto++)
|
||||
|
@ -1398,7 +1398,7 @@ void Pho_ShowOrPrintPhotoDegree (Pho_AvgPhotoSeeOrPrint_t SeeOrPrint)
|
|||
if (SeeOrPrint == Pho_DEGREES_SEE)
|
||||
{
|
||||
fprintf (Gbl.F.Out,"<div align=\"center\">"
|
||||
"<table cellpadding=\"2\">");
|
||||
"<table class=\"CELLS_PAD_2\">");
|
||||
|
||||
/***** Put a selector for the type of average *****/
|
||||
Pho_PutSelectorForTypeOfAvg ();
|
||||
|
@ -1874,7 +1874,7 @@ static void Pho_ShowOrPrintListDegrees (Pho_AvgPhotoSeeOrPrint_t SeeOrPrint)
|
|||
if (SeeOrPrint == Pho_DEGREES_SEE)
|
||||
Lay_StartRoundFrameTable10 (NULL,0,NULL);
|
||||
else
|
||||
fprintf (Gbl.F.Out,"<table cellpadding=\"0\">");
|
||||
fprintf (Gbl.F.Out,"<table>");
|
||||
|
||||
/***** Write heading *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
|
|
|
@ -377,7 +377,8 @@ void Prf_PutIconsToSelectSideCols (void)
|
|||
unsigned SideCols;
|
||||
extern const char *Txt_LAYOUT_SIDE_COLUMNS[4];
|
||||
|
||||
fprintf (Gbl.F.Out,"<table cellpadding=\"1\"><tr>");
|
||||
fprintf (Gbl.F.Out,"<table class=\"CELLS_PAD_1\">"
|
||||
"<tr>");
|
||||
for (SideCols = 0;
|
||||
SideCols <= 3;
|
||||
SideCols++)
|
||||
|
@ -396,7 +397,8 @@ void Prf_PutIconsToSelectSideCols (void)
|
|||
Txt_LAYOUT_SIDE_COLUMNS[SideCols],
|
||||
Txt_LAYOUT_SIDE_COLUMNS[SideCols]);
|
||||
}
|
||||
fprintf (Gbl.F.Out,"</tr></table>");
|
||||
fprintf (Gbl.F.Out,"</tr>"
|
||||
"</table>");
|
||||
}
|
||||
|
||||
/*****************************************************************************/
|
||||
|
@ -579,7 +581,7 @@ static void Prf_PutFormPublicPhoto (void)
|
|||
|
||||
/***** Start form *****/
|
||||
Act_FormStart (ActChgPubPho);
|
||||
fprintf (Gbl.F.Out,"<table cellpadding=\"0\" style=\"border-spacing:2px;\">"
|
||||
fprintf (Gbl.F.Out,"<table style=\"border-spacing:2px;\">"
|
||||
"<tr>");
|
||||
|
||||
/***** Checkbox to select between public or private photo *****/
|
||||
|
|
|
@ -1498,7 +1498,7 @@ void Rec_ShowCrsRecord (Rec_RecordViewType_t TypeOfView,struct UsrData *UsrDat)
|
|||
/***** Header *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td align=\"left\" colspan=\"2\" valign=\"top\">"
|
||||
"<table cellpadding=\"0\" width=\"100%%\">"
|
||||
"<table width=\"100%%\">"
|
||||
"<tr>"
|
||||
"<td align=\"left\" width=\"%u\">",
|
||||
Rec_DEGREE_LOGO_SIZE);
|
||||
|
@ -2108,7 +2108,7 @@ void Rec_ShowCommonRecord (Rec_RecordViewType_t TypeOfView,
|
|||
/***** Institution *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td align=\"left\" width=\"%u\" valign=\"middle\" colspan=\"2\">"
|
||||
"<table cellpadding=\"2\">"
|
||||
"<table class=\"CELLS_PAD_2\">"
|
||||
"<tr>"
|
||||
"<td align=\"center\" width=\"%u\" valign=\"middle\">",
|
||||
Cols1and2Width,
|
||||
|
|
|
@ -27,7 +27,6 @@
|
|||
|
||||
#include <linux/limits.h> // For PATH_MAX
|
||||
#include <linux/stddef.h> // For NULL
|
||||
#include <locale.h> // For setlocale
|
||||
#include <math.h> // For log10, floor, ceil, modf, sqrt...
|
||||
#include <stdlib.h> // For system, getenv, etc.
|
||||
#include <string.h> // For string functions
|
||||
|
@ -395,7 +394,7 @@ void Sta_AskSeeCrsAccesses (void)
|
|||
/***** Draw two class photographs with the users: one for teachers of the course and another one for students *****/
|
||||
/* Start the table */
|
||||
fprintf (Gbl.F.Out,"<div align=\"center\">"
|
||||
"<table cellpadding=\"0\" style=\"border-spacing:4px;\">"
|
||||
"<table style=\"border-spacing:4px;\">"
|
||||
"<tr>"
|
||||
"<td colspan=\"2\" align=\"left\">");
|
||||
Lay_StartRoundFrameTable10 (NULL,0,NULL);
|
||||
|
@ -510,7 +509,7 @@ void Sta_AskSeeGblAccesses (void)
|
|||
/***** Start form *****/
|
||||
Act_FormStart (ActSeeAccGbl);
|
||||
fprintf (Gbl.F.Out,"<div align=\"center\">"
|
||||
"<table cellpadding=\"2\">");
|
||||
"<table class=\"CELLS_PAD_2\">");
|
||||
|
||||
/***** Start and end dates for the search *****/
|
||||
Dat_WriteFormIniEndDates ();
|
||||
|
@ -1442,7 +1441,7 @@ static void Sta_ShowDetailedAccessesList (unsigned long NumRows,MYSQL_RES *mysql
|
|||
/***** Put heading with backward and forward buttons *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td align=\"left\" colspan=\"7\">"
|
||||
"<table width=\"100%%\" cellpadding=\"2\">"
|
||||
"<table width=\"100%%\" class=\"CELLS_PAD_2\">"
|
||||
"<tr>");
|
||||
|
||||
/* Put link to jump to previous page (older clicks) */
|
||||
|
@ -2136,7 +2135,7 @@ static void Sta_DrawBarColors (Sta_ColorType_t ColorType,float MaxPagesGenerated
|
|||
unsigned Interval,NumColor,R,G,B;
|
||||
|
||||
/***** Write numbers from 0 to MaxPagesGenerated *****/
|
||||
fprintf (Gbl.F.Out,"<table width=\"100%%\" cellpadding=\"0\">"
|
||||
fprintf (Gbl.F.Out,"<table width=\"100%%\">"
|
||||
"<tr>"
|
||||
"<td align=\"left\" valign=\"bottom\" width=\"%u\" colspan=\"%u\" class=\"LOG\">0</td>",
|
||||
(GRAPH_DISTRIBUTION_PER_HOUR_TOTAL_WIDTH/5)/2,(GRAPH_DISTRIBUTION_PER_HOUR_TOTAL_WIDTH/5)/2);
|
||||
|
|
|
@ -622,10 +622,10 @@ float Str_GetFloatNumFromStr (const char *Str)
|
|||
|
||||
if (Str)
|
||||
{
|
||||
setlocale (LC_NUMERIC,"en_US.iso88591"); // To get the decimal point
|
||||
setlocale (LC_NUMERIC,"en_US.utf8"); // To get the decimal point
|
||||
if (sscanf (Str,"%f",&Num) != 1)
|
||||
Lay_ShowErrorAndExit ("Bad floating point format.");
|
||||
setlocale (LC_NUMERIC,"es_ES.iso88591");
|
||||
setlocale (LC_NUMERIC,"es_ES.utf8");
|
||||
}
|
||||
else // Str == NULL
|
||||
Num = 0.0;
|
||||
|
|
|
@ -27,7 +27,6 @@
|
|||
|
||||
#include <linux/limits.h> // For PATH_MAX
|
||||
#include <linux/stddef.h> // For NULL
|
||||
#include <locale.h> // For setlocale, LC_NUMERIC...
|
||||
#include <stdlib.h> // For calloc
|
||||
#include <string.h> // For string functions
|
||||
|
||||
|
@ -702,7 +701,8 @@ static void Svy_PutFormsToRemEditOneSvy (long SvyCod,bool Visible)
|
|||
extern const char *Txt_Hide;
|
||||
extern const char *Txt_Edit;
|
||||
|
||||
fprintf (Gbl.F.Out,"<table cellpadding=\"4\"><tr>");
|
||||
fprintf (Gbl.F.Out,"<table class=\"CELLS_PAD_4\">"
|
||||
"<tr>");
|
||||
|
||||
/***** Put form to remove survey *****/
|
||||
fprintf (Gbl.F.Out,"<td align=\"left\">");
|
||||
|
@ -770,7 +770,8 @@ static void Svy_PutFormsToRemEditOneSvy (long SvyCod,bool Visible)
|
|||
Txt_Edit,
|
||||
Txt_Edit);
|
||||
|
||||
fprintf (Gbl.F.Out,"</tr></table>");
|
||||
fprintf (Gbl.F.Out,"</tr>"
|
||||
"</table>");
|
||||
}
|
||||
|
||||
/*****************************************************************************/
|
||||
|
@ -1610,7 +1611,7 @@ void Svy_RequestCreatOrEditSvy (void)
|
|||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td align=\"right\" valign=\"top\" class=\"TIT_TBL\">%s:</td>"
|
||||
"<td align=\"left\" valign=\"top\">"
|
||||
"<table cellpadding=\"2\">"
|
||||
"<table class=\"CELLS_PAD_2\">"
|
||||
"<tr>"
|
||||
"<td align=\"left\" valign=\"top\">",
|
||||
Dates[StartOrEndTime]);
|
||||
|
@ -2459,7 +2460,7 @@ static void Svy_ShowFormEditOneQst (long SvyCod,struct SurveyQuestion *SvyQst,ch
|
|||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td align=\"left\"></td>"
|
||||
"<td align=\"left\" valign=\"top\">"
|
||||
"<table cellpadding=\"2\">");
|
||||
"<table class=\"CELLS_PAD_2\">");
|
||||
for (NumAns = 0;
|
||||
NumAns < Svy_MAX_ANSWERS_PER_QUESTION;
|
||||
NumAns++)
|
||||
|
@ -2922,7 +2923,7 @@ static void Svy_ListSvyQuestions (struct Survey *Svy,struct SurveyQuestion *SvyQ
|
|||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td align=\"center\" class=\"DAT\">");
|
||||
Lay_WriteTitle (Txt_Survey_questions);
|
||||
fprintf (Gbl.F.Out,"<table cellpadding=\"4\">");
|
||||
fprintf (Gbl.F.Out,"<table class=\"CELLS_PAD_4\">");
|
||||
|
||||
if (NumQsts)
|
||||
{
|
||||
|
@ -3107,7 +3108,7 @@ static void Svy_WriteAnswersOfAQst (struct Survey *Svy,struct SurveyQuestion *Sv
|
|||
NumAnswers = Svy_GetAnswersQst (SvyQst->QstCod,&mysql_res); // Result: AnsInd,NumUsrs,Answer
|
||||
|
||||
/***** Write the answers *****/
|
||||
fprintf (Gbl.F.Out,"<table cellpadding=\"4\" width=\"100%%\">");
|
||||
fprintf (Gbl.F.Out,"<table width=\"100%%\" class=\"CELLS_PAD_4\">");
|
||||
for (NumAns = 0;
|
||||
NumAns < NumAnswers;
|
||||
NumAns++)
|
||||
|
|
|
@ -146,7 +146,7 @@ void Syl_EditSyllabus (void)
|
|||
Lay_StartRoundFrameTable10 (NULL,0,Txt_INFO_TITLE[InfoType]);
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td align=\"left\">"
|
||||
"<table cellpadding=\"1\" width=\"100%%\">");
|
||||
"<table width=\"100%%\" class=\"CELLS_PAD_1\">");
|
||||
|
||||
/***** Write the current syllabus *****/
|
||||
Syl_ShowSyllabus (InfoType);
|
||||
|
|
69
swad_test.c
69
swad_test.c
|
@ -1015,7 +1015,7 @@ static void Tst_UpdateScoreQst (long QstCod,float ScoreThisQst,bool AnswerIsNotB
|
|||
char Query[512];
|
||||
|
||||
/***** Update number of clicks and score of the question *****/
|
||||
setlocale (LC_NUMERIC,"en_US.iso88591"); // To print the floating point as a dot
|
||||
setlocale (LC_NUMERIC,"en_US.utf8"); // To print the floating point as a dot
|
||||
if (AnswerIsNotBlank)
|
||||
sprintf (Query,"UPDATE tst_questions"
|
||||
" SET NumHits=NumHits+1,NumHitsNotBlank=NumHitsNotBlank+1,Score=Score+(%lf)"
|
||||
|
@ -1026,7 +1026,7 @@ static void Tst_UpdateScoreQst (long QstCod,float ScoreThisQst,bool AnswerIsNotB
|
|||
" SET NumHits=NumHits+1"
|
||||
" WHERE QstCod='%ld'",
|
||||
QstCod);
|
||||
setlocale (LC_NUMERIC,"es_ES.iso88591"); // Return to spanish system (TODO: this should be internationalized!!!!!!!)
|
||||
setlocale (LC_NUMERIC,"es_ES.utf8"); // Return to spanish system (TODO: this should be internationalized!!!!!!!)
|
||||
DB_QueryUPDATE (Query,"can not update the score of a question");
|
||||
}
|
||||
|
||||
|
@ -1102,7 +1102,7 @@ void Tst_ShowFormAskEditTsts (void)
|
|||
Tst_ShowFormAnswerTypes ();
|
||||
|
||||
/***** Starting and ending dates in the search *****/
|
||||
fprintf (Gbl.F.Out,"<table cellpadding=\"2\">");
|
||||
fprintf (Gbl.F.Out,"<table class=\"CELLS_PAD_2\">");
|
||||
Dat_WriteFormIniEndDates ();
|
||||
fprintf (Gbl.F.Out,"</table>");
|
||||
|
||||
|
@ -1593,7 +1593,7 @@ static void Tst_ShowFormConfigTst (void)
|
|||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td align=\"right\" class=\"%s\">%s:</td>"
|
||||
"<td align=\"left\">"
|
||||
"<table cellpadding=\"0\" style=\"border-spacing:2px;\">",
|
||||
"<table style=\"border-spacing:2px;\">",
|
||||
The_ClassFormul[Gbl.Prefs.Theme],
|
||||
Txt_No_of_questions);
|
||||
|
||||
|
@ -2529,10 +2529,10 @@ static void Tst_ListOneOrMoreQuestionsToEdit (unsigned long NumRows,MYSQL_RES *m
|
|||
Lay_ShowErrorAndExit ("Wrong number of hits not blank to a question.");
|
||||
|
||||
/* Get the acumulated score of the question (row[8]) */
|
||||
setlocale (LC_NUMERIC,"en_US.iso88591"); // To get decimal point
|
||||
setlocale (LC_NUMERIC,"en_US.utf8"); // To get decimal point
|
||||
if (sscanf (row[8],"%lf",&TotalScoreThisQst) != 1)
|
||||
Lay_ShowErrorAndExit ("Wrong score of a question.");
|
||||
setlocale (LC_NUMERIC,"es_ES.iso88591"); // Return to spanish system (TODO: this should be internationalized!!!!!!!)
|
||||
setlocale (LC_NUMERIC,"es_ES.utf8"); // Return to spanish system (TODO: this should be internationalized!!!!!!!)
|
||||
|
||||
/* Write number of times this question has been answered */
|
||||
fprintf (Gbl.F.Out,"<td align=\"center\" valign=\"top\" bgcolor=\"%s\" class=\"DAT_SMALL\">%lu</td>",
|
||||
|
@ -2663,7 +2663,7 @@ static void Tst_WriteAnswersOfAQstEdit (long QstCod)
|
|||
case Tst_ANS_UNIQUE_CHOICE:
|
||||
case Tst_ANS_MULTIPLE_CHOICE:
|
||||
case Tst_ANS_TEXT:
|
||||
fprintf (Gbl.F.Out,"<table cellpadding=\"2\">");
|
||||
fprintf (Gbl.F.Out,"<table class=\"CELLS_PAD_2\">");
|
||||
for (NumOpt = 0;
|
||||
NumOpt < Gbl.Test.Answer.NumOptions;
|
||||
NumOpt++)
|
||||
|
@ -2886,7 +2886,8 @@ static void Tst_WriteTFAnsAssessExam (unsigned NumQst,MYSQL_RES *mysql_res,
|
|||
}
|
||||
|
||||
/***** Header with the title of each column *****/
|
||||
fprintf (Gbl.F.Out,"<table cellpadding=\"0\"><tr>");
|
||||
fprintf (Gbl.F.Out,"<table>"
|
||||
"<tr>");
|
||||
Tst_WriteHeadUserCorrect ();
|
||||
fprintf (Gbl.F.Out,"</tr>");
|
||||
|
||||
|
@ -2943,7 +2944,7 @@ static void Tst_WriteChoiceAnsSeeExam (unsigned NumQst,long QstCod,bool Shuffle)
|
|||
char ParamName[3+6+1];
|
||||
|
||||
/***** Start of table *****/
|
||||
fprintf (Gbl.F.Out,"<table cellpadding=\"0\">");
|
||||
fprintf (Gbl.F.Out,"<table>");
|
||||
|
||||
/***** Get answers of a question from database *****/
|
||||
Gbl.Test.Answer.NumOptions = Tst_GetAnswersQst (QstCod,&mysql_res,Shuffle); // Result: AnsInd,Answer,Correct
|
||||
|
@ -3103,7 +3104,7 @@ static void Tst_WriteChoiceAnsAssessExam (unsigned NumQst,MYSQL_RES *mysql_res,
|
|||
}
|
||||
|
||||
/***** Start of table *****/
|
||||
fprintf (Gbl.F.Out,"<table cellpadding=\"0\">"
|
||||
fprintf (Gbl.F.Out,"<table>"
|
||||
"<tr>");
|
||||
Tst_WriteHeadUserCorrect ();
|
||||
fprintf (Gbl.F.Out,"<td align=\"left\"></td>"
|
||||
|
@ -3293,7 +3294,7 @@ static void Tst_WriteTextAnsAssessExam (unsigned NumQst,MYSQL_RES *mysql_res,
|
|||
}
|
||||
|
||||
/***** Header with the title of each column *****/
|
||||
fprintf (Gbl.F.Out,"<table cellpadding=\"0\">"
|
||||
fprintf (Gbl.F.Out,"<table>"
|
||||
"<tr>");
|
||||
Tst_WriteHeadUserCorrect ();
|
||||
fprintf (Gbl.F.Out,"</tr>");
|
||||
|
@ -3340,7 +3341,7 @@ static void Tst_WriteTextAnsAssessExam (unsigned NumQst,MYSQL_RES *mysql_res,
|
|||
Gbl.Test.Config.FeedbackType == Tst_FEEDBACK_FULL_FEEDBACK)
|
||||
{
|
||||
fprintf (Gbl.F.Out,"<td align=\"center\" valign=\"top\">"
|
||||
"<table cellpadding=\"0\">");
|
||||
"<table>");
|
||||
for (NumOpt = 0;
|
||||
NumOpt < Gbl.Test.Answer.NumOptions;
|
||||
NumOpt++)
|
||||
|
@ -3436,7 +3437,7 @@ static void Tst_WriteIntAnsAssessExam (unsigned NumQst,MYSQL_RES *mysql_res,
|
|||
Lay_ShowErrorAndExit ("Wrong integer answer.");
|
||||
|
||||
/***** Header with the title of each column *****/
|
||||
fprintf (Gbl.F.Out,"<table cellpadding=\"0\">"
|
||||
fprintf (Gbl.F.Out,"<table>"
|
||||
"<tr>");
|
||||
Tst_WriteHeadUserCorrect ();
|
||||
fprintf (Gbl.F.Out,"</tr>");
|
||||
|
@ -3551,7 +3552,7 @@ static void Tst_WriteFloatAnsAssessExam (unsigned NumQst,MYSQL_RES *mysql_res,
|
|||
}
|
||||
|
||||
/***** Header with the title of each column *****/
|
||||
fprintf (Gbl.F.Out,"<table cellpadding=\"0\">"
|
||||
fprintf (Gbl.F.Out,"<table>"
|
||||
"<tr>");
|
||||
Tst_WriteHeadUserCorrect ();
|
||||
fprintf (Gbl.F.Out,"</tr>");
|
||||
|
@ -3711,7 +3712,7 @@ static void Tst_GetAndWriteTagsQst (long QstCod)
|
|||
if ((NumRows = Tst_GetTagsQst (QstCod,&mysql_res))) // Result: TagTxt
|
||||
{
|
||||
/***** Write the tags *****/
|
||||
fprintf (Gbl.F.Out,"<table cellpadding=\"0\">");
|
||||
fprintf (Gbl.F.Out,"<table>");
|
||||
for (NumRow = 0;
|
||||
NumRow < NumRows;
|
||||
NumRow++)
|
||||
|
@ -4105,7 +4106,7 @@ static void Tst_PutFormEditOneQst (char *Stem,char *Feedback)
|
|||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td align=\"right\" valign=\"top\" class=\"%s\">%s:</td>"
|
||||
"<td align=\"left\" valign=\"top\">"
|
||||
"<table cellpadding=\"0\">",
|
||||
"<table>",
|
||||
The_ClassFormul[Gbl.Prefs.Theme],Txt_Tags);
|
||||
for (NumTag = 0;
|
||||
NumTag < Tst_MAX_TAGS_PER_QUESTION;
|
||||
|
@ -4247,7 +4248,7 @@ static void Tst_PutFormEditOneQst (char *Stem,char *Feedback)
|
|||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td align=\"left\"></td>"
|
||||
"<td align=\"left\" valign=\"top\">"
|
||||
"<table cellpadding=\"0\">"
|
||||
"<table>"
|
||||
"<tr>"
|
||||
"<td align=\"left\" valign=\"top\" class=\"%s\">"
|
||||
"<input type=\"radio\" name=\"AnsTF\" value=\"T\"",
|
||||
|
@ -4288,7 +4289,7 @@ static void Tst_PutFormEditOneQst (char *Stem,char *Feedback)
|
|||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td align=\"left\"></td>"
|
||||
"<td align=\"left\" valign=\"top\">"
|
||||
"<table cellpadding=\"0\">"
|
||||
"<table>"
|
||||
"<tr>"
|
||||
"<td></td>"
|
||||
"<td align=\"left\" class=\"%s\">%s</td>"
|
||||
|
@ -4833,13 +4834,13 @@ double Tst_GetFloatAnsFromStr (char *Str)
|
|||
Str_ConvertStrFloatCommaToStrFloatPoint (Str);
|
||||
|
||||
/***** The string is "scanned" in floating point (it must have a point, not a colon as decimal separator) *****/
|
||||
setlocale (LC_NUMERIC,"en_US.iso88591"); // To get decimal point
|
||||
setlocale (LC_NUMERIC,"en_US.utf8"); // To get decimal point
|
||||
if (sscanf (Str,"%lg",&DoubleNum) != 1) // If the string does not hold a valid floating point number...
|
||||
{
|
||||
DoubleNum = 0.0; // ...the number is reset to 0
|
||||
Str[0] = '\0'; // ...and the string is reset to ""
|
||||
}
|
||||
setlocale (LC_NUMERIC,"es_ES.iso88591"); // Return to spanish system (TODO: this should be internationalized!!!!!!!)
|
||||
setlocale (LC_NUMERIC,"es_ES.utf8"); // Return to spanish system (TODO: this should be internationalized!!!!!!!)
|
||||
|
||||
return DoubleNum;
|
||||
}
|
||||
|
@ -5152,7 +5153,7 @@ static void Tst_InsertAnswersIntoDB (void)
|
|||
DB_QueryINSERT (Query,"can not create answer");
|
||||
break;
|
||||
case Tst_ANS_FLOAT:
|
||||
setlocale (LC_NUMERIC,"en_US.iso88591"); // To print the floating point as a dot
|
||||
setlocale (LC_NUMERIC,"en_US.utf8"); // To print the floating point as a dot
|
||||
for (i = 0;
|
||||
i < 2;
|
||||
i++)
|
||||
|
@ -5163,7 +5164,7 @@ static void Tst_InsertAnswersIntoDB (void)
|
|||
Gbl.Test.Answer.FloatingPoint[i]);
|
||||
DB_QueryINSERT (Query,"can not create answer");
|
||||
}
|
||||
setlocale (LC_NUMERIC,"es_ES.iso88591"); // Return to spanish system (TODO: this should be internationalized!!!!!!!)
|
||||
setlocale (LC_NUMERIC,"es_ES.utf8"); // Return to spanish system (TODO: this should be internationalized!!!!!!!)
|
||||
break;
|
||||
case Tst_ANS_TRUE_FALSE:
|
||||
sprintf (Query,"INSERT INTO tst_answers (QstCod,AnsInd,Answer,Feedback,Correct)"
|
||||
|
@ -5437,10 +5438,10 @@ static unsigned Tst_GetNumTstQuestions (Sco_Scope_t Scope,Tst_AnswerType_t AnsTy
|
|||
if (sscanf (row[1],"%lu",&(Stats->NumHits)) != 1)
|
||||
Lay_ShowErrorAndExit ("Error when getting total number of hits in test questions.");
|
||||
|
||||
setlocale (LC_NUMERIC,"en_US.iso88591"); // To get decimal point
|
||||
setlocale (LC_NUMERIC,"en_US.utf8"); // To get decimal point
|
||||
if (sscanf (row[2],"%lf",&(Stats->TotalScore)) != 1)
|
||||
Lay_ShowErrorAndExit ("Error when getting total score in test questions.");
|
||||
setlocale (LC_NUMERIC,"es_ES.iso88591"); // Return to spanish system (TODO: this should be internationalized!!!!!!!)
|
||||
setlocale (LC_NUMERIC,"es_ES.utf8"); // Return to spanish system (TODO: this should be internationalized!!!!!!!)
|
||||
}
|
||||
else
|
||||
{
|
||||
|
@ -5738,7 +5739,7 @@ void Tst_SelUsrsToSeeUsrsTstExams (void)
|
|||
Act_FormStart (ActSeeUsrTstExa);
|
||||
Grp_PutParamsCodGrps ();
|
||||
fprintf (Gbl.F.Out,"<div align=\"center\">"
|
||||
"<table cellpadding=\"0\" style=\"border-spacing:4px;\">"
|
||||
"<table style=\"border-spacing:4px;\">"
|
||||
"<tr>"
|
||||
"<td colspan=\"2\" align=\"left\">");
|
||||
|
||||
|
@ -5787,7 +5788,7 @@ void Tst_SelDatesToSeeMyTstExams (void)
|
|||
|
||||
/***** Starting and ending dates in the search *****/
|
||||
fprintf (Gbl.F.Out,"<div align=\"center\">"
|
||||
"<table cellpadding=\"2\">");
|
||||
"<table class=\"CELLS_PAD_2\">");
|
||||
Dat_WriteFormIniEndDates ();
|
||||
fprintf (Gbl.F.Out,"</table>"
|
||||
"</div>");
|
||||
|
@ -5826,13 +5827,13 @@ static void Tst_StoreScoreOfTestExamInDB (long TstCod,
|
|||
char Query[256];
|
||||
|
||||
/***** Update score in test exam *****/
|
||||
setlocale (LC_NUMERIC,"en_US.iso88591"); // To print the floating point as a dot
|
||||
setlocale (LC_NUMERIC,"en_US.utf8"); // To print the floating point as a dot
|
||||
sprintf (Query,"UPDATE tst_exams"
|
||||
" SET NumQstsNotBlank='%u',Score='%lf'"
|
||||
" WHERE TstCod='%ld'",
|
||||
NumQstsNotBlank,Score,
|
||||
TstCod);
|
||||
setlocale (LC_NUMERIC,"es_ES.iso88591"); // Return to spanish system (TODO: this should be internationalized!!!!!!!)
|
||||
setlocale (LC_NUMERIC,"es_ES.utf8"); // Return to spanish system (TODO: this should be internationalized!!!!!!!)
|
||||
DB_QueryUPDATE (Query,"can not update result of test exam");
|
||||
}
|
||||
|
||||
|
@ -6040,7 +6041,7 @@ static void Tst_ShowResultsOfTestExams (struct UsrData *UsrDat)
|
|||
NumQstsNotBlankInThisExam = 0;
|
||||
|
||||
/* Get score (row[5]) */
|
||||
setlocale (LC_NUMERIC,"en_US.iso88591"); // To get decimal point
|
||||
setlocale (LC_NUMERIC,"en_US.utf8"); // To get decimal point
|
||||
if (sscanf (row[5],"%lf",&ScoreInThisExam) == 1)
|
||||
{
|
||||
if (Gbl.Test.AllowTeachers)
|
||||
|
@ -6048,7 +6049,7 @@ static void Tst_ShowResultsOfTestExams (struct UsrData *UsrDat)
|
|||
}
|
||||
else
|
||||
ScoreInThisExam = 0.0;
|
||||
setlocale (LC_NUMERIC,"es_ES.iso88591"); // Return to spanish system (TODO: this should be internationalized!!!!!!!)
|
||||
setlocale (LC_NUMERIC,"es_ES.utf8"); // Return to spanish system (TODO: this should be internationalized!!!!!!!)
|
||||
|
||||
/* Write number of questions */
|
||||
fprintf (Gbl.F.Out,"<td align=\"right\" valign=\"top\" bgcolor=\"%s\" class=\"%s\">",
|
||||
|
@ -6544,10 +6545,10 @@ static void Tst_GetExamDataByTstCod (long TstCod,char *TstTime,unsigned *NumQsts
|
|||
*NumQstsNotBlank = 0;
|
||||
|
||||
/* Get score (row[5]) */
|
||||
setlocale (LC_NUMERIC,"en_US.iso88591"); // To get decimal point
|
||||
setlocale (LC_NUMERIC,"en_US.utf8"); // To get decimal point
|
||||
if (sscanf (row[5],"%lf",Score) != 1)
|
||||
*Score = 0.0;
|
||||
setlocale (LC_NUMERIC,"es_ES.iso88591"); // Return to spanish system (TODO: this should be internationalized!!!!!!!)
|
||||
setlocale (LC_NUMERIC,"es_ES.utf8"); // Return to spanish system (TODO: this should be internationalized!!!!!!!)
|
||||
}
|
||||
|
||||
/***** Free structure that stores the query result *****/
|
||||
|
@ -6570,7 +6571,7 @@ static void Tst_StoreOneExamQstInDB (long TstCod,long QstCod,unsigned NumQst,dou
|
|||
Par_ReplaceSeparatorMultipleByComma (Gbl.Test.StrAnswersOneQst[NumQst],Answers);
|
||||
|
||||
/***** Insert question and user's answers into database *****/
|
||||
setlocale (LC_NUMERIC,"en_US.iso88591"); // To print the floating point as a dot
|
||||
setlocale (LC_NUMERIC,"en_US.utf8"); // To print the floating point as a dot
|
||||
sprintf (Query,"INSERT INTO tst_exam_questions"
|
||||
" (TstCod,QstCod,QstInd,Score,Indexes,Answers)"
|
||||
" VALUES ('%ld','%ld','%u','%lf','%s','%s')",
|
||||
|
@ -6579,7 +6580,7 @@ static void Tst_StoreOneExamQstInDB (long TstCod,long QstCod,unsigned NumQst,dou
|
|||
Score,
|
||||
Indexes,
|
||||
Answers);
|
||||
setlocale (LC_NUMERIC,"es_ES.iso88591"); // Return to spanish system (TODO: this should be internationalized!!!!!!!)
|
||||
setlocale (LC_NUMERIC,"es_ES.utf8"); // Return to spanish system (TODO: this should be internationalized!!!!!!!)
|
||||
DB_QueryINSERT (Query,"can not insert a question of an exam");
|
||||
}
|
||||
|
||||
|
|
|
@ -1028,7 +1028,7 @@ static void TsI_WriteRowImportedQst (struct XMLElement *StemElem,
|
|||
if (Gbl.Test.NumTags)
|
||||
{
|
||||
/***** Write the tags *****/
|
||||
fprintf (Gbl.F.Out,"<table cellpadding=\"0\">");
|
||||
fprintf (Gbl.F.Out,"<table>");
|
||||
for (NumTag = 0;
|
||||
NumTag < Gbl.Test.NumTags;
|
||||
NumTag++)
|
||||
|
@ -1089,7 +1089,7 @@ static void TsI_WriteRowImportedQst (struct XMLElement *StemElem,
|
|||
case Tst_ANS_UNIQUE_CHOICE:
|
||||
case Tst_ANS_MULTIPLE_CHOICE:
|
||||
case Tst_ANS_TEXT:
|
||||
fprintf (Gbl.F.Out,"<table cellpadding=\"0\">");
|
||||
fprintf (Gbl.F.Out,"<table>");
|
||||
for (NumOpt = 0;
|
||||
NumOpt < Gbl.Test.Answer.NumOptions;
|
||||
NumOpt++)
|
||||
|
|
|
@ -232,7 +232,7 @@ void The_PutIconsToSelectTheme (void)
|
|||
{
|
||||
The_Theme_t Theme;
|
||||
|
||||
fprintf (Gbl.F.Out,"<table cellpadding=\"1\">"
|
||||
fprintf (Gbl.F.Out,"<table class=\"CELLS_PAD_1\">"
|
||||
"<tr>");
|
||||
for (Theme = (The_Theme_t) 0;
|
||||
Theme < The_NUM_THEMES;
|
||||
|
|
|
@ -779,8 +779,7 @@ static void TT_DrawTimeTable (void)
|
|||
}
|
||||
|
||||
/***** Table start *****/
|
||||
fprintf (Gbl.F.Out,"<table cellpadding=\"0\""
|
||||
" style=\"min-width:520px;\">");
|
||||
fprintf (Gbl.F.Out,"<table style=\"min-width:520px;\">");
|
||||
|
||||
/***** Top row used for column adjustement *****/
|
||||
TT_TimeTableDrawAdjustRow ();
|
||||
|
|
|
@ -5071,7 +5071,7 @@ void Usr_ListAllDataGsts (void)
|
|||
|
||||
/***** Start table with list of guests *****/
|
||||
/* Start row */
|
||||
fprintf (Gbl.F.Out,"<table cellpadding=\"0\" width=\"100%%\">"
|
||||
fprintf (Gbl.F.Out,"<table width=\"100%%\">"
|
||||
"<tr>");
|
||||
|
||||
/* Columns for the data */
|
||||
|
@ -5203,7 +5203,7 @@ void Usr_ListAllDataStds (void)
|
|||
Lay_ShowErrorAndExit ("Not enough memory to store names of groups.");
|
||||
|
||||
/***** Start table with list of students *****/
|
||||
fprintf (Gbl.F.Out,"<table cellpadding=\"0\" width=\"100%%\">");
|
||||
fprintf (Gbl.F.Out,"<table width=\"100%%\">");
|
||||
if (!Gbl.Usrs.ClassPhoto.AllGroups)
|
||||
{
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
|
@ -5431,7 +5431,7 @@ void Usr_ListAllDataTchs (void)
|
|||
|
||||
/***** Start table with list of teachers *****/
|
||||
/* Start row */
|
||||
fprintf (Gbl.F.Out,"<table cellpadding=\"0\" width=\"100%%\">"
|
||||
fprintf (Gbl.F.Out,"<table width=\"100%%\">"
|
||||
"<tr>");
|
||||
for (NumCol = (Gbl.Usrs.Listing.WithPhotos ? 0 :
|
||||
1);
|
||||
|
|
|
@ -532,7 +532,7 @@ static void ZIP_ShowLinkToDownloadZIP (const char *FileName,const char *URL,
|
|||
Lay_StartRoundFrameTable10Shadow (NULL,0);
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td align=\"center\">"
|
||||
"<table cellpadding=\"2\">");
|
||||
"<table class=\"CELLS_PAD_2\">");
|
||||
|
||||
/***** Link to download the file *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
|
|
Loading…
Reference in New Issue