mirror of https://github.com/acanas/swad-core.git
Version19.31.1
This commit is contained in:
parent
7ecc561d2d
commit
d74bc65409
14
swad_ID.c
14
swad_ID.c
|
@ -602,14 +602,16 @@ static void ID_ShowFormChangeUsrID (const struct UsrData *UsrDat,
|
|||
NumID++)
|
||||
{
|
||||
if (NumID == 0)
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"REC_C1_BOT RIGHT_TOP\">"
|
||||
{
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"REC_C1_BOT RIGHT_TOP\">"
|
||||
"<label for=\"UsrID\" class=\"%s\">"
|
||||
"%s:"
|
||||
"</label>"
|
||||
"</td>"
|
||||
"<td class=\"REC_C2_BOT LEFT_TOP USR_ID\">",
|
||||
The_ClassFormInBox[Gbl.Prefs.Theme],Txt_ID);
|
||||
}
|
||||
else // NumID >= 1
|
||||
fprintf (Gbl.F.Out,"<br />");
|
||||
|
||||
|
@ -669,15 +671,15 @@ static void ID_ShowFormChangeUsrID (const struct UsrData *UsrDat,
|
|||
if (UsrDat->IDs.Num < ID_MAX_IDS_PER_USER)
|
||||
{
|
||||
/***** Write help text *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td colspan=\"2\" class=\"DAT CENTER_MIDDLE\">");
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td colspan=\"2\" class=\"DAT CENTER_MIDDLE\">");
|
||||
Ale_ShowAlert (Ale_INFO,Txt_The_ID_is_used_in_order_to_facilitate_);
|
||||
fprintf (Gbl.F.Out,"</td>"
|
||||
"</tr>");
|
||||
|
||||
/***** Form to enter new user's ID *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"REC_C1_BOT RIGHT_TOP\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"REC_C1_BOT RIGHT_TOP\">"
|
||||
"<label for=\"NewID\" class=\"%s\">%s:</label>"
|
||||
"</td>"
|
||||
"<td class=\"REC_C2_BOT LEFT_TOP DAT\">",
|
||||
|
|
|
@ -32,6 +32,7 @@
|
|||
#include "swad_global.h"
|
||||
#include "swad_parameter.h"
|
||||
#include "swad_role.h"
|
||||
#include "swad_table.h"
|
||||
|
||||
/*****************************************************************************/
|
||||
/****************************** Public constants *****************************/
|
||||
|
|
|
@ -487,12 +487,13 @@ enscript -2 --landscape --color --file-align=2 --highlight --line-numbers -o - *
|
|||
En OpenSWAD:
|
||||
ps2pdf source.ps destination.pdf
|
||||
*/
|
||||
#define Log_PLATFORM_VERSION "SWAD 19.31 (2019-10-04)"
|
||||
#define Log_PLATFORM_VERSION "SWAD 19.31.1 (2019-10-04)"
|
||||
#define CSS_FILE "swad19.29.css"
|
||||
#define JS_FILE "swad19.30.js"
|
||||
/*
|
||||
// TODO: Perico: poner un candado de bloqueo de creación/edición de proyectos (por ejemplo en asignaturas obsoletas)
|
||||
|
||||
Version 19.31.1: Oct 04, 2019 Code refactoring in HTML tables. (247022 lines)
|
||||
Version 19.31 : Oct 04, 2019 Code refactoring in HTML tables. (246967 lines)
|
||||
Version 19.30.6: Oct 03, 2019 Code refactoring in HTML tables. (246928 lines)
|
||||
Version 19.30.5: Oct 03, 2019 Code refactoring in HTML tables. (246922 lines)
|
||||
|
|
12
swad_date.c
12
swad_date.c
|
@ -428,8 +428,8 @@ void Dat_PutFormStartEndClientLocalDateTimesWithYesterdayToday (bool SetHMS00000
|
|||
extern const char *Txt_Today;
|
||||
|
||||
/***** Start date-time *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"RIGHT_MIDDLE\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"RIGHT_MIDDLE\">"
|
||||
"<label class=\"%s\">%s:</label>"
|
||||
"</td>"
|
||||
"<td class=\"LEFT_MIDDLE\">",
|
||||
|
@ -460,8 +460,8 @@ void Dat_PutFormStartEndClientLocalDateTimesWithYesterdayToday (bool SetHMS00000
|
|||
Txt_Today);
|
||||
|
||||
/***** End date-time *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"RIGHT_MIDDLE\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"RIGHT_MIDDLE\">"
|
||||
"<label class=\"%s\">%s:</label>"
|
||||
"</td>"
|
||||
"<td class=\"LEFT_MIDDLE\">",
|
||||
|
@ -502,8 +502,8 @@ void Dat_PutFormStartEndClientLocalDateTimes (time_t TimeUTC[2],
|
|||
StartEndTime++)
|
||||
{
|
||||
/* Date-time */
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"RIGHT_MIDDLE\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"RIGHT_MIDDLE\">"
|
||||
"<label class=\"%s\">%s:</label>"
|
||||
"</td>"
|
||||
"<td class=\"LEFT_MIDDLE\">",
|
||||
|
|
|
@ -185,8 +185,8 @@ void Deg_SeeDegWithPendingCrss (void)
|
|||
Hlp_SYSTEM_Hierarchy_pending,Box_NOT_CLOSABLE,2);
|
||||
|
||||
/***** Write heading *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<th class=\"LEFT_MIDDLE\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<th class=\"LEFT_MIDDLE\">"
|
||||
"%s"
|
||||
"</th>"
|
||||
"<th class=\"RIGHT_MIDDLE\">"
|
||||
|
@ -213,8 +213,8 @@ void Deg_SeeDegWithPendingCrss (void)
|
|||
Deg_GetDataOfDegreeByCod (&Deg);
|
||||
|
||||
/* Degree logo and full name */
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"LEFT_MIDDLE %s\">",
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"LEFT_MIDDLE %s\">",
|
||||
BgColor);
|
||||
Deg_DrawDegreeLogoAndNameWithLink (&Deg,ActSeeCrs,
|
||||
"DAT_NOBR","CENTER_MIDDLE");
|
||||
|
@ -342,8 +342,8 @@ static void Deg_Configuration (bool PrintView)
|
|||
Tbl_StartTableWidePadding (2);
|
||||
|
||||
/***** Centre *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"RIGHT_MIDDLE\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"RIGHT_MIDDLE\">"
|
||||
"<label for=\"OthCtrCod\" class=\"%s\">%s:</label>"
|
||||
"</td>"
|
||||
"<td class=\"DAT_N LEFT_MIDDLE\">",
|
||||
|
@ -384,8 +384,8 @@ static void Deg_Configuration (bool PrintView)
|
|||
"</tr>");
|
||||
|
||||
/***** Degree full name *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"RIGHT_MIDDLE\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"RIGHT_MIDDLE\">"
|
||||
"<label for=\"FullName\" class=\"%s\">%s:</label>"
|
||||
"</td>"
|
||||
"<td class=\"DAT_N LEFT_MIDDLE\">",
|
||||
|
@ -414,8 +414,8 @@ static void Deg_Configuration (bool PrintView)
|
|||
"</tr>");
|
||||
|
||||
/***** Degree short name *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"RIGHT_MIDDLE\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"RIGHT_MIDDLE\">"
|
||||
"<label for=\"ShortName\" class=\"%s\">%s:</label>"
|
||||
"</td>"
|
||||
"<td class=\"DAT_N LEFT_MIDDLE\">",
|
||||
|
@ -444,8 +444,8 @@ static void Deg_Configuration (bool PrintView)
|
|||
"</tr>");
|
||||
|
||||
/***** Degree WWW *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"RIGHT_MIDDLE\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"RIGHT_MIDDLE\">"
|
||||
"<label for=\"WWW\" class=\"%s\">%s:</label>"
|
||||
"</td>"
|
||||
"<td class=\"DAT LEFT_MIDDLE\">",
|
||||
|
@ -479,8 +479,8 @@ static void Deg_Configuration (bool PrintView)
|
|||
"</tr>");
|
||||
|
||||
/***** Shortcut to the degree *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"%s RIGHT_MIDDLE\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"%s RIGHT_MIDDLE\">"
|
||||
"%s:"
|
||||
"</td>"
|
||||
"<td class=\"DAT LEFT_MIDDLE\">"
|
||||
|
@ -501,8 +501,8 @@ static void Deg_Configuration (bool PrintView)
|
|||
if (PrintView)
|
||||
{
|
||||
/***** QR code with link to the degree *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"%s RIGHT_MIDDLE\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"%s RIGHT_MIDDLE\">"
|
||||
"%s:"
|
||||
"</td>"
|
||||
"<td class=\"DAT LEFT_MIDDLE\">",
|
||||
|
@ -515,8 +515,8 @@ static void Deg_Configuration (bool PrintView)
|
|||
else
|
||||
{
|
||||
/***** Number of courses *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"%s RIGHT_MIDDLE\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"%s RIGHT_MIDDLE\">"
|
||||
"%s:"
|
||||
"</td>"
|
||||
"<td class=\"LEFT_MIDDLE\">",
|
||||
|
@ -577,8 +577,8 @@ static void Deg_ShowNumUsrsInCrssOfDeg (Rol_Role_t Role)
|
|||
extern const char *Txt_Users_in_courses;
|
||||
extern const char *Txt_ROLES_PLURAL_Abc[Rol_NUM_ROLES][Usr_NUM_SEXS];
|
||||
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"%s RIGHT_MIDDLE\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"%s RIGHT_MIDDLE\">"
|
||||
"%s:"
|
||||
"</td>"
|
||||
"<td class=\"DAT LEFT_MIDDLE\">"
|
||||
|
@ -720,8 +720,8 @@ static void Deg_ListDegreesForEdition (void)
|
|||
ICanEdit = Deg_CheckIfICanEditADegree (Deg);
|
||||
|
||||
/* Put icon to remove degree */
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"BM\">");
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"BM\">");
|
||||
if (NumCrss || // Degree has courses ==> deletion forbidden
|
||||
!ICanEdit)
|
||||
Ico_PutIconRemovalNotAllowed ();
|
||||
|
@ -965,8 +965,8 @@ static void Deg_PutFormToCreateDegree (void)
|
|||
Deg_PutHeadDegreesForEdition ();
|
||||
|
||||
/***** Column to remove degree, disabled here *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"BM\"></td>");
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"BM\"></td>");
|
||||
|
||||
/***** Degree code *****/
|
||||
fprintf (Gbl.F.Out,"<td class=\"CODE\"></td>");
|
||||
|
@ -1052,8 +1052,8 @@ static void Deg_PutHeadDegreesForSeeing (void)
|
|||
extern const char *Txt_Type;
|
||||
extern const char *Txt_Courses_ABBREVIATION;
|
||||
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<th class=\"BM\"></th>"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<th class=\"BM\"></th>"
|
||||
"<th></th>"
|
||||
"<th class=\"LEFT_MIDDLE\">"
|
||||
"%s"
|
||||
|
@ -1086,8 +1086,8 @@ static void Deg_PutHeadDegreesForEdition (void)
|
|||
extern const char *Txt_Courses_ABBREVIATION;
|
||||
extern const char *Txt_Requester;
|
||||
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<th class=\"BM\"></th>"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<th class=\"BM\"></th>"
|
||||
"<th class=\"RIGHT_MIDDLE\">"
|
||||
"%s"
|
||||
"</th>"
|
||||
|
@ -1285,8 +1285,8 @@ static void Deg_ListOneDegreeForSeeing (struct Degree *Deg,unsigned NumDeg)
|
|||
Gbl.ColorRows[Gbl.RowEvenOdd];
|
||||
|
||||
/***** Put tip if degree has courses *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"%s CENTER_MIDDLE %s\" title=\"%s\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"%s CENTER_MIDDLE %s\" title=\"%s\">"
|
||||
"%s"
|
||||
"</td>",
|
||||
TxtClassNormal,BgColor,
|
||||
|
@ -2522,8 +2522,8 @@ void Hie_GetAndWriteInsCtrDegAdminBy (long UsrCod,unsigned ColSpan)
|
|||
NumRow++)
|
||||
{
|
||||
/***** Indent *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"RIGHT_TOP COLOR%u\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"RIGHT_TOP COLOR%u\">"
|
||||
"<img src=\"%s/%s20x20.gif\""
|
||||
" alt=\"\" title=\"\""
|
||||
" class=\"ICO25x25\" />"
|
||||
|
|
|
@ -331,8 +331,8 @@ static void DT_ListDegreeTypesForSeeing (void)
|
|||
Gbl.ColorRows[Gbl.RowEvenOdd];
|
||||
|
||||
/* Number of degree type in this list */
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"DAT_N RIGHT_MIDDLE %s\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"DAT_N RIGHT_MIDDLE %s\">"
|
||||
"%u"
|
||||
"</td>",
|
||||
BgColor,NumDegTyp + 1);
|
||||
|
@ -400,8 +400,8 @@ static void DT_ListDegreeTypesForEdition (void)
|
|||
NumDegTyp++)
|
||||
{
|
||||
/* Put icon to remove degree type */
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"BM\">");
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"BM\">");
|
||||
if (Gbl.DegTypes.Lst[NumDegTyp].NumDegs) // Degree type has degrees => deletion forbidden
|
||||
Ico_PutIconRemovalNotAllowed ();
|
||||
else
|
||||
|
@ -474,8 +474,8 @@ static void DT_PutFormToCreateDegreeType (void)
|
|||
DT_PutHeadDegreeTypesForEdition ();
|
||||
|
||||
/***** Column to remove degree type, disabled here *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"BM\"></td>");
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"BM\"></td>");
|
||||
|
||||
/***** Degree type code *****/
|
||||
fprintf (Gbl.F.Out,"<td class=\"CODE\"></td>");
|
||||
|
@ -511,8 +511,8 @@ static void DT_PutHeadDegreeTypesForSeeing (Act_Action_t NextAction,DT_Order_t S
|
|||
extern const char *Txt_DEGREE_TYPES_ORDER[DT_NUM_ORDERS];
|
||||
DT_Order_t Order;
|
||||
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<th></th>");
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<th></th>");
|
||||
for (Order = DT_ORDER_BY_DEGREE_TYPE;
|
||||
Order <= DT_ORDER_BY_NUM_DEGREES;
|
||||
Order++)
|
||||
|
@ -553,8 +553,8 @@ static void DT_PutHeadDegreeTypesForEdition (void)
|
|||
extern const char *Txt_Type_of_degree;
|
||||
extern const char *Txt_Degrees;
|
||||
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<th class=\"BM\"></th>"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<th class=\"BM\"></th>"
|
||||
"<th class=\"CENTER_MIDDLE\">"
|
||||
"%s"
|
||||
"</th>"
|
||||
|
|
|
@ -146,8 +146,8 @@ void Dpt_SeeDepts (void)
|
|||
NumDpt++)
|
||||
{
|
||||
/* Write data of this department */
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"LEFT_MIDDLE\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"LEFT_MIDDLE\">"
|
||||
"<a href=\"%s\" target=\"_blank\" class=\"DAT\">"
|
||||
"%s"
|
||||
"</a>"
|
||||
|
@ -166,16 +166,16 @@ void Dpt_SeeDepts (void)
|
|||
}
|
||||
|
||||
/***** Separation row *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td colspan=\"3\" class=\"DAT\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td colspan=\"3\" class=\"DAT\">"
|
||||
" "
|
||||
"</td>"
|
||||
"</tr>");
|
||||
|
||||
/***** Write teachers with other department *****/
|
||||
NumTchsInOtherDpts = Usr_GetNumTchsCurrentInsInDepartment (0);
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"DAT LEFT_MIDDLE\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"DAT LEFT_MIDDLE\">"
|
||||
"%s"
|
||||
"</td>"
|
||||
"<td class=\"DAT RIGHT_MIDDLE\">"
|
||||
|
@ -186,8 +186,8 @@ void Dpt_SeeDepts (void)
|
|||
NumTchsInsWithDpt += NumTchsInOtherDpts;
|
||||
|
||||
/***** Write teachers with no department *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"DAT LEFT_MIDDLE\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"DAT LEFT_MIDDLE\">"
|
||||
"%s"
|
||||
"</td>"
|
||||
"<td class=\"DAT RIGHT_MIDDLE\">"
|
||||
|
@ -509,8 +509,8 @@ static void Dpt_ListDepartmentsForEdition (void)
|
|||
Ins_GetDataOfInstitutionByCod (&Ins,Ins_GET_BASIC_DATA);
|
||||
|
||||
/* Put icon to remove department */
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"BM\">");
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"BM\">");
|
||||
if (Dpt->NumTchs) // Department has teachers ==> deletion forbidden
|
||||
Ico_PutIconRemovalNotAllowed ();
|
||||
else
|
||||
|
@ -907,8 +907,8 @@ static void Dpt_PutFormToCreateDepartment (void)
|
|||
NULL,Box_NOT_CLOSABLE,2);
|
||||
|
||||
/***** Write heading *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<th class=\"LEFT_MIDDLE\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<th class=\"LEFT_MIDDLE\">"
|
||||
"%s"
|
||||
"</th>"
|
||||
"<th class=\"LEFT_MIDDLE\">"
|
||||
|
@ -927,8 +927,8 @@ static void Dpt_PutFormToCreateDepartment (void)
|
|||
Txt_WWW);
|
||||
|
||||
/***** Institution *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"CENTER_MIDDLE\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"CENTER_MIDDLE\">"
|
||||
"<select name=\"OthInsCod\" style=\"width:62px;\">"
|
||||
"<option value=\"0\"");
|
||||
if (Dpt_EditingDpt->InsCod == 0)
|
||||
|
@ -993,8 +993,8 @@ static void Dpt_PutHeadDepartments (void)
|
|||
extern const char *Txt_WWW;
|
||||
extern const char *Txt_ROLES_PLURAL_BRIEF_Abc[Rol_NUM_ROLES];
|
||||
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<th class=\"CENTER_MIDDLE\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<th class=\"CENTER_MIDDLE\">"
|
||||
"</th>"
|
||||
"<th class=\"RIGHT_MIDDLE\">"
|
||||
"%s"
|
||||
|
|
|
@ -185,8 +185,8 @@ void Dup_ListDuplicateUsrs (void)
|
|||
/* Write data of this user */
|
||||
Usr_WriteRowUsrMainData (NumUsrs - NumUsr,&UsrDat,false,Rol_UNK);
|
||||
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td colspan=\"2\" class=\"COLOR%u\"></td>"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td colspan=\"2\" class=\"COLOR%u\"></td>"
|
||||
"<td colspan=\"%u\""
|
||||
" class=\"DAT LEFT_MIDDLE COLOR%u\">",
|
||||
Gbl.RowEvenOdd,
|
||||
|
@ -318,8 +318,8 @@ static void Dup_ListSimilarUsrs (void)
|
|||
/* Write data of this user */
|
||||
Usr_WriteRowUsrMainData (NumUsrs - NumUsr,&UsrDat,false,Rol_UNK);
|
||||
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td colspan=\"2\" class=\"COLOR%u\"></td>"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td colspan=\"2\" class=\"COLOR%u\"></td>"
|
||||
"<td colspan=\"%u\" class=\"COLOR%u\">",
|
||||
Gbl.RowEvenOdd,
|
||||
Usr_NUM_MAIN_FIELDS_DATA_USR-2,
|
||||
|
@ -336,8 +336,8 @@ static void Dup_ListSimilarUsrs (void)
|
|||
fprintf (Gbl.F.Out,"</td>"
|
||||
"</tr>");
|
||||
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td colspan=\"2\" class=\"COLOR%u\"></td>"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td colspan=\"2\" class=\"COLOR%u\"></td>"
|
||||
"<td colspan=\"%u\" class=\"LEFT_TOP COLOR%u\""
|
||||
" style=\"padding-bottom:20px;\">",
|
||||
Gbl.RowEvenOdd,
|
||||
|
|
|
@ -928,8 +928,8 @@ static void Enr_PutAreaToEnterUsrsIDs (void)
|
|||
|
||||
/***** Text area for users' IDs *****/
|
||||
Tbl_StartTableCenterPadding (2);
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"RIGHT_TOP\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"RIGHT_TOP\">"
|
||||
"<label for=\"UsrsIDs\" class=\"%s\">%s:</label>"
|
||||
"</td>"
|
||||
"<td class=\"LEFT_TOP\">"
|
||||
|
@ -2294,8 +2294,8 @@ static void Enr_ShowEnrolmentRequestsGivenRoles (unsigned RolesSelected)
|
|||
Tbl_StartTableWideMarginPadding (2);
|
||||
|
||||
/* Scope (whole platform, current centre, current degree or current course) */
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"RIGHT_MIDDLE\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"RIGHT_MIDDLE\">"
|
||||
"<label for=\"ScopeEnr\" class=\"%s\">%s:</label>"
|
||||
"</td>"
|
||||
"<td class=\"LEFT_MIDDLE\">",
|
||||
|
@ -2305,8 +2305,8 @@ static void Enr_ShowEnrolmentRequestsGivenRoles (unsigned RolesSelected)
|
|||
"</tr>");
|
||||
|
||||
/* Users' roles in listing */
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"RIGHT_TOP\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"RIGHT_TOP\">"
|
||||
"<label class=\"%s\">%s:</label>"
|
||||
"</td>"
|
||||
"<td class=\"DAT LEFT_MIDDLE\">",
|
||||
|
@ -2861,8 +2861,8 @@ static void Enr_ShowEnrolmentRequestsGivenRoles (unsigned RolesSelected)
|
|||
DesiredRole == Rol_TCH))
|
||||
{
|
||||
/***** Number *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"DAT RIGHT_TOP\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"DAT RIGHT_TOP\">"
|
||||
"%lu"
|
||||
"</td>",
|
||||
NumReqs - NumReq);
|
||||
|
|
68
swad_exam.c
68
swad_exam.c
|
@ -1044,8 +1044,8 @@ static void Exa_ShowExamAnnouncement (long ExaCod,
|
|||
ClassExaAnnouncement[TypeViewExamAnnouncement][Gbl.ExamAnns.ExaDat.Status]);
|
||||
|
||||
/***** Institution logo *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td colspan=\"2\" class=\"CENTER_MIDDLE\">");
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td colspan=\"2\" class=\"CENTER_MIDDLE\">");
|
||||
if (TypeViewExamAnnouncement == Exa_PRINT_VIEW)
|
||||
fprintf (Gbl.F.Out,"<span class=\"%s\">",StyleTitle);
|
||||
else
|
||||
|
@ -1060,8 +1060,8 @@ static void Exa_ShowExamAnnouncement (long ExaCod,
|
|||
"</a>");
|
||||
|
||||
/***** Degree *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td colspan=\"2\" class=\"%s CENTER_MIDDLE\">",
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td colspan=\"2\" class=\"%s CENTER_MIDDLE\">",
|
||||
StyleTitle);
|
||||
if (TypeViewExamAnnouncement == Exa_NORMAL_VIEW)
|
||||
fprintf (Gbl.F.Out,"<a href=\"%s\" target=\"_blank\" class=\"%s\">",
|
||||
|
@ -1073,23 +1073,23 @@ static void Exa_ShowExamAnnouncement (long ExaCod,
|
|||
"</tr>");
|
||||
|
||||
/***** Title *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td colspan=\"2\" class=\"%s CENTER_MIDDLE\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td colspan=\"2\" class=\"%s CENTER_MIDDLE\">"
|
||||
" <br />"
|
||||
"<strong>%s</strong>"
|
||||
"</td>"
|
||||
"</tr>",
|
||||
StyleNormal,Txt_EXAM_ANNOUNCEMENT);
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td colspan=\"2\" class=\"%s LEFT_MIDDLE\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td colspan=\"2\" class=\"%s LEFT_MIDDLE\">"
|
||||
" "
|
||||
"</td>"
|
||||
"</tr>",
|
||||
StyleNormal);
|
||||
|
||||
/***** Name of the course *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"RIGHT_BOTTOM\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"RIGHT_BOTTOM\">"
|
||||
"<label for=\"CrsName\" class=\"%s\">%s:</label>"
|
||||
"</td>"
|
||||
"<td class=\"%s LEFT_BOTTOM\">",
|
||||
|
@ -1109,8 +1109,8 @@ static void Exa_ShowExamAnnouncement (long ExaCod,
|
|||
"</tr>");
|
||||
|
||||
/***** Year/semester (N.A., 1º, 2º, 3º, 4º, 5º...) *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"RIGHT_BOTTOM\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"RIGHT_BOTTOM\">"
|
||||
"<label for=\"Year\" class=\"%s\">%s:</label>"
|
||||
"</td>"
|
||||
"<td class=\"%s LEFT_BOTTOM\">",
|
||||
|
@ -1141,8 +1141,8 @@ static void Exa_ShowExamAnnouncement (long ExaCod,
|
|||
"</tr>");
|
||||
|
||||
/***** Exam session *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"RIGHT_BOTTOM\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"RIGHT_BOTTOM\">"
|
||||
"<label for=\"ExamSession\" class=\"%s\">%s:</label>"
|
||||
"</td>"
|
||||
"<td class=\"%s LEFT_BOTTOM\">",
|
||||
|
@ -1160,8 +1160,8 @@ static void Exa_ShowExamAnnouncement (long ExaCod,
|
|||
"</tr>");
|
||||
|
||||
/***** Date of the exam *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"%s RIGHT_BOTTOM\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"%s RIGHT_BOTTOM\">"
|
||||
"%s:"
|
||||
"</td>",
|
||||
StyleForm,
|
||||
|
@ -1188,8 +1188,8 @@ static void Exa_ShowExamAnnouncement (long ExaCod,
|
|||
fprintf (Gbl.F.Out,"</tr>");
|
||||
|
||||
/***** Start time *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"%s RIGHT_BOTTOM\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"%s RIGHT_BOTTOM\">"
|
||||
"%s:"
|
||||
"</td>"
|
||||
"<td class=\"%s LEFT_BOTTOM\">",
|
||||
|
@ -1234,8 +1234,8 @@ static void Exa_ShowExamAnnouncement (long ExaCod,
|
|||
"</tr>");
|
||||
|
||||
/***** Approximate duration of the exam *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"%s RIGHT_BOTTOM\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"%s RIGHT_BOTTOM\">"
|
||||
"%s:"
|
||||
"</td>"
|
||||
"<td class=\"%s LEFT_BOTTOM\">",
|
||||
|
@ -1300,8 +1300,8 @@ static void Exa_ShowExamAnnouncement (long ExaCod,
|
|||
"</tr>");
|
||||
|
||||
/***** Place where the exam will be made *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"RIGHT_TOP\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"RIGHT_TOP\">"
|
||||
"<label for=\"Place\" class=\"%s\">%s:</label>"
|
||||
"</td>"
|
||||
"<td class=\"%s LEFT_TOP\">",
|
||||
|
@ -1325,8 +1325,8 @@ static void Exa_ShowExamAnnouncement (long ExaCod,
|
|||
"</tr>");
|
||||
|
||||
/***** Exam mode *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"RIGHT_TOP\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"RIGHT_TOP\">"
|
||||
"<label for=\"ExamMode\" class=\"%s\">%s:</label>"
|
||||
"</td>"
|
||||
"<td class=\"%s LEFT_TOP\">",
|
||||
|
@ -1350,8 +1350,8 @@ static void Exa_ShowExamAnnouncement (long ExaCod,
|
|||
"</tr>");
|
||||
|
||||
/***** Structure of the exam *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"RIGHT_TOP\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"RIGHT_TOP\">"
|
||||
"<label for=\"Structure\" class=\"%s\">%s:</label>"
|
||||
"</td>"
|
||||
"<td class=\"%s LEFT_TOP\">",
|
||||
|
@ -1375,8 +1375,8 @@ static void Exa_ShowExamAnnouncement (long ExaCod,
|
|||
"</tr>");
|
||||
|
||||
/***** Documentation required *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"RIGHT_TOP\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"RIGHT_TOP\">"
|
||||
"<label for=\"DocRequired\" class=\"%s\">%s:</label>"
|
||||
"</td>"
|
||||
"<td class=\"%s LEFT_TOP\">",
|
||||
|
@ -1400,8 +1400,8 @@ static void Exa_ShowExamAnnouncement (long ExaCod,
|
|||
"</tr>");
|
||||
|
||||
/***** Material required *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"RIGHT_TOP\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"RIGHT_TOP\">"
|
||||
"<label for=\"MatRequired\" class=\"%s\">%s:</label>"
|
||||
"</td>"
|
||||
"<td class=\"%s LEFT_TOP\">",
|
||||
|
@ -1425,8 +1425,8 @@ static void Exa_ShowExamAnnouncement (long ExaCod,
|
|||
"</tr>");
|
||||
|
||||
/***** Material allowed *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"RIGHT_TOP\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"RIGHT_TOP\">"
|
||||
"<label for=\"MatAllowed\" class=\"%s\">%s:</label>"
|
||||
"</td>"
|
||||
"<td class=\"%s LEFT_TOP\">",
|
||||
|
@ -1450,8 +1450,8 @@ static void Exa_ShowExamAnnouncement (long ExaCod,
|
|||
"</tr>");
|
||||
|
||||
/***** Other information to students *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"RIGHT_TOP\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"RIGHT_TOP\">"
|
||||
"<label for=\"OtherInfo\" class=\"%s\">%s:</label>"
|
||||
"</td>"
|
||||
"<td class=\"%s LEFT_TOP\">",
|
||||
|
|
286
swad_figure.c
286
swad_figure.c
|
@ -371,8 +371,8 @@ static void Fig_GetAndShowUsersStats (void)
|
|||
Hlp_ANALYTICS_Figures_users,Box_NOT_CLOSABLE,2);
|
||||
|
||||
/***** Write heading *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<th class=\"RIGHT_MIDDLE\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<th class=\"RIGHT_MIDDLE\">"
|
||||
"%s"
|
||||
"</th>"
|
||||
"<th class=\"RIGHT_MIDDLE\">"
|
||||
|
@ -394,8 +394,8 @@ static void Fig_GetAndShowUsersStats (void)
|
|||
Fig_GetAndShowNumUsrsInCrss (Rol_NET); // Non-editing teachers
|
||||
Fig_GetAndShowNumUsrsInCrss (Rol_TCH); // Teachers
|
||||
Fig_GetAndShowNumUsrsInCrss (Rol_UNK); // Any user in courses
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<th colspan=\"4\" style=\"height:10px;\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<th colspan=\"4\" style=\"height:10px;\">"
|
||||
"</tr>");
|
||||
Fig_GetAndShowNumUsrsNotBelongingToAnyCrs (); // Users not beloging to any course
|
||||
|
||||
|
@ -433,8 +433,8 @@ static void Fig_GetAndShowNumUsrsInCrss (Rol_Role_t Role)
|
|||
NumUsrsPerCrs = Usr_GetNumUsrsPerCrs (Role);
|
||||
|
||||
/***** Write the total number of users *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"%s\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"%s\">"
|
||||
"%s"
|
||||
"</td>"
|
||||
"<td class=\"%s\">"
|
||||
|
@ -464,8 +464,8 @@ static void Fig_GetAndShowNumUsrsNotBelongingToAnyCrs (void)
|
|||
char *Class = "DAT RIGHT_BOTTOM";
|
||||
|
||||
/***** Write the total number of users not belonging to any course *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"%s\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"%s\">"
|
||||
"%s"
|
||||
"</td>"
|
||||
"<td class=\"%s\">"
|
||||
|
@ -505,8 +505,8 @@ static void Fig_GetAndShowUsersRanking (void)
|
|||
Hlp_ANALYTICS_Figures_ranking,Box_NOT_CLOSABLE,2);
|
||||
|
||||
/***** Write heading *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<th class=\"CENTER_MIDDLE\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<th class=\"CENTER_MIDDLE\">"
|
||||
"%s"
|
||||
"</th>"
|
||||
"<th class=\"CENTER_MIDDLE\">"
|
||||
|
@ -537,8 +537,8 @@ static void Fig_GetAndShowUsersRanking (void)
|
|||
Txt_Messages);
|
||||
|
||||
/***** Rankings *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"DAT LEFT_TOP\">");
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"DAT LEFT_TOP\">");
|
||||
Prf_GetAndShowRankingClicks ();
|
||||
fprintf (Gbl.F.Out,"</td>"
|
||||
"<td class=\"DAT LEFT_TOP\">");
|
||||
|
@ -607,8 +607,8 @@ static void Fig_WriteHeadHierarchy (void)
|
|||
extern const char *Txt_Degrees;
|
||||
extern const char *Txt_Courses;
|
||||
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<th></th>"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<th></th>"
|
||||
"<th class=\"RIGHT_MIDDLE\">"
|
||||
"<img src=\"%s/globe.svg\""
|
||||
" alt=\"%s\" title=\"%s\""
|
||||
|
@ -999,8 +999,8 @@ static void Fig_ShowHierarchyRow (const char *Text1,const char *Text2,
|
|||
int NumCrss) // < 0 ==> do not show number
|
||||
{
|
||||
/***** Start row and write text *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"%s RIGHT_MIDDLE\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"%s RIGHT_MIDDLE\">"
|
||||
"%s%s"
|
||||
"</td>",
|
||||
ClassTxt,Text1,Text2);
|
||||
|
@ -1468,8 +1468,8 @@ static void Fig_ShowInss (MYSQL_RES **mysql_res,unsigned NumInss,
|
|||
break;
|
||||
case Usr_LIST_AS_LISTING:
|
||||
/***** Draw institutions as a list *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<th></th>"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<th></th>"
|
||||
"<th class=\"LEFT_MIDDLE\">"
|
||||
"%s"
|
||||
"</th>"
|
||||
|
@ -1490,8 +1490,8 @@ static void Fig_ShowInss (MYSQL_RES **mysql_res,unsigned NumInss,
|
|||
/***** Number of order *****/
|
||||
if (NumberThisRow != NumberLastRow)
|
||||
NumOrder = NumIns;
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"DAT RIGHT_MIDDLE\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"DAT RIGHT_MIDDLE\">"
|
||||
"%u"
|
||||
"</td>",
|
||||
NumOrder);
|
||||
|
@ -2499,8 +2499,8 @@ static void Fig_WriteStatsExpTreesTableHead1 (void)
|
|||
extern const char *Txt_Files;
|
||||
extern const char *Txt_Size;
|
||||
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<th class=\"LEFT_MIDDLE\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<th class=\"LEFT_MIDDLE\">"
|
||||
"%s"
|
||||
"</th>"
|
||||
"<th class=\"RIGHT_MIDDLE\">"
|
||||
|
@ -2543,8 +2543,8 @@ static void Fig_WriteStatsExpTreesTableHead2 (void)
|
|||
extern const char *Txt_Size;
|
||||
extern const char *Txt_course;
|
||||
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<th class=\"LEFT_MIDDLE\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<th class=\"LEFT_MIDDLE\">"
|
||||
"%s"
|
||||
"</th>"
|
||||
"<th class=\"RIGHT_MIDDLE\">"
|
||||
|
@ -2571,8 +2571,8 @@ static void Fig_WriteStatsExpTreesTableHead3 (void)
|
|||
extern const char *Txt_Size;
|
||||
extern const char *Txt_user[Usr_NUM_SEXS];
|
||||
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<th class=\"LEFT_MIDDLE\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<th class=\"LEFT_MIDDLE\">"
|
||||
"%s"
|
||||
"</th>"
|
||||
"<th class=\"RIGHT_MIDDLE\">"
|
||||
|
@ -2632,8 +2632,8 @@ static void Fig_WriteRowStatsFileBrowsers1 (const char *NameOfFileZones,
|
|||
"%d",
|
||||
SizeOfFileZones->NumUsrs);
|
||||
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"%s LEFT_MIDDLE\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"%s LEFT_MIDDLE\">"
|
||||
"%s"
|
||||
"</td>"
|
||||
"<td class=\"%s RIGHT_MIDDLE\">"
|
||||
|
@ -2706,8 +2706,8 @@ static void Fig_WriteRowStatsFileBrowsers2 (const char *NameOfFileZones,
|
|||
FileSizePerCrsStr);
|
||||
}
|
||||
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"%s LEFT_MIDDLE\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"%s LEFT_MIDDLE\">"
|
||||
"%s"
|
||||
"</td>"
|
||||
"<td class=\"%s RIGHT_MIDDLE\">"
|
||||
|
@ -2764,8 +2764,8 @@ static void Fig_WriteRowStatsFileBrowsers3 (const char *NameOfFileZones,
|
|||
FileSizePerUsrStr);
|
||||
}
|
||||
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"%s LEFT_MIDDLE\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"%s LEFT_MIDDLE\">"
|
||||
"%s"
|
||||
"</td>"
|
||||
"<td class=\"%s RIGHT_MIDDLE\">"
|
||||
|
@ -2804,8 +2804,8 @@ static void Fig_GetAndShowOERsStats (void)
|
|||
Hlp_ANALYTICS_Figures_open_educational_resources_oer,Box_NOT_CLOSABLE,2);
|
||||
|
||||
/***** Write table heading *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<th class=\"LEFT_MIDDLE\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<th class=\"LEFT_MIDDLE\">"
|
||||
"%s"
|
||||
"</th>"
|
||||
"<th class=\"RIGHT_MIDDLE\">"
|
||||
|
@ -2825,8 +2825,8 @@ static void Fig_GetAndShowOERsStats (void)
|
|||
{
|
||||
Fig_GetNumberOfOERsFromDB (Gbl.Scope.Current,License,NumFiles);
|
||||
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"DAT LEFT_MIDDLE\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"DAT LEFT_MIDDLE\">"
|
||||
"%s"
|
||||
"</td>"
|
||||
"<td class=\"DAT RIGHT_MIDDLE\">"
|
||||
|
@ -3004,8 +3004,8 @@ static void Fig_GetAndShowAssignmentsStats (void)
|
|||
Hlp_ANALYTICS_Figures_assignments,Box_NOT_CLOSABLE,2);
|
||||
|
||||
/***** Write table heading *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<th class=\"RIGHT_MIDDLE\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<th class=\"RIGHT_MIDDLE\">"
|
||||
"%s"
|
||||
"</th>"
|
||||
"<th class=\"RIGHT_MIDDLE\">"
|
||||
|
@ -3024,8 +3024,8 @@ static void Fig_GetAndShowAssignmentsStats (void)
|
|||
Txt_Number_of_BR_notifications);
|
||||
|
||||
/***** Write number of assignments *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"DAT RIGHT_MIDDLE\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"DAT RIGHT_MIDDLE\">"
|
||||
"%u"
|
||||
"</td>"
|
||||
"<td class=\"DAT RIGHT_MIDDLE\">"
|
||||
|
@ -3072,8 +3072,8 @@ static void Fig_GetAndShowProjectsStats (void)
|
|||
Hlp_ANALYTICS_Figures_projects,Box_NOT_CLOSABLE,2);
|
||||
|
||||
/***** Write table heading *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<th class=\"RIGHT_MIDDLE\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<th class=\"RIGHT_MIDDLE\">"
|
||||
"%s"
|
||||
"</th>"
|
||||
"<th class=\"RIGHT_MIDDLE\">"
|
||||
|
@ -3088,8 +3088,8 @@ static void Fig_GetAndShowProjectsStats (void)
|
|||
Txt_Average_number_BR_of_projects_BR_per_course);
|
||||
|
||||
/***** Write number of projects *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"DAT RIGHT_MIDDLE\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"DAT RIGHT_MIDDLE\">"
|
||||
"%u"
|
||||
"</td>"
|
||||
"<td class=\"DAT RIGHT_MIDDLE\">"
|
||||
|
@ -3134,8 +3134,8 @@ static void Fig_GetAndShowTestsStats (void)
|
|||
Hlp_ANALYTICS_Figures_tests,Box_NOT_CLOSABLE,2);
|
||||
|
||||
/***** Write table heading *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<th class=\"LEFT_MIDDLE\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<th class=\"LEFT_MIDDLE\">"
|
||||
"%s"
|
||||
"</th>"
|
||||
"<th class=\"RIGHT_MIDDLE\">"
|
||||
|
@ -3181,8 +3181,8 @@ static void Fig_GetAndShowTestsStats (void)
|
|||
Tst_GetTestStats (AnsType,&Stats);
|
||||
|
||||
/***** Write number of assignments *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"DAT LEFT_MIDDLE\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"DAT LEFT_MIDDLE\">"
|
||||
"%s"
|
||||
"</td>"
|
||||
"<td class=\"DAT RIGHT_MIDDLE\">"
|
||||
|
@ -3228,8 +3228,8 @@ static void Fig_GetAndShowTestsStats (void)
|
|||
Tst_GetTestStats (Tst_ANS_ALL,&Stats);
|
||||
|
||||
/***** Write number of assignments *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"DAT_N_LINE_TOP LEFT_MIDDLE\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"DAT_N_LINE_TOP LEFT_MIDDLE\">"
|
||||
"%s"
|
||||
"</td>"
|
||||
"<td class=\"DAT_N_LINE_TOP RIGHT_MIDDLE\">"
|
||||
|
@ -3299,8 +3299,8 @@ static void Fig_GetAndShowGamesStats (void)
|
|||
Hlp_ANALYTICS_Figures_games,Box_NOT_CLOSABLE,2);
|
||||
|
||||
/***** Write table heading *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<th class=\"RIGHT_MIDDLE\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<th class=\"RIGHT_MIDDLE\">"
|
||||
"%s"
|
||||
"</th>"
|
||||
"<th class=\"RIGHT_MIDDLE\">"
|
||||
|
@ -3315,8 +3315,8 @@ static void Fig_GetAndShowGamesStats (void)
|
|||
Txt_Average_number_BR_of_games_BR_per_course);
|
||||
|
||||
/***** Write number of games *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"DAT RIGHT_MIDDLE\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"DAT RIGHT_MIDDLE\">"
|
||||
"%u"
|
||||
"</td>"
|
||||
"<td class=\"DAT RIGHT_MIDDLE\">"
|
||||
|
@ -3362,8 +3362,8 @@ static void Fig_GetAndShowSocialActivityStats (void)
|
|||
Hlp_ANALYTICS_Figures_timeline,Box_NOT_CLOSABLE,2);
|
||||
|
||||
/***** Heading row *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<th class=\"LEFT_MIDDLE\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<th class=\"LEFT_MIDDLE\">"
|
||||
"%s"
|
||||
"</th>"
|
||||
"<th class=\"RIGHT_MIDDLE\">"
|
||||
|
@ -3499,8 +3499,8 @@ static void Fig_GetAndShowSocialActivityStats (void)
|
|||
DB_FreeMySQLResult (&mysql_res);
|
||||
|
||||
/***** Write number of social notes and number of users *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"DAT LEFT_MIDDLE\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"DAT LEFT_MIDDLE\">"
|
||||
"%s"
|
||||
"</td>"
|
||||
"<td class=\"DAT RIGHT_MIDDLE\">"
|
||||
|
@ -3617,8 +3617,8 @@ static void Fig_GetAndShowSocialActivityStats (void)
|
|||
DB_FreeMySQLResult (&mysql_res);
|
||||
|
||||
/* Write totals */
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"DAT_N_LINE_TOP LEFT_MIDDLE\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"DAT_N_LINE_TOP LEFT_MIDDLE\">"
|
||||
"%s"
|
||||
"</td>"
|
||||
"<td class=\"DAT_N_LINE_TOP RIGHT_MIDDLE\">"
|
||||
|
@ -3677,8 +3677,8 @@ static void Fig_GetAndShowFollowStats (void)
|
|||
Hlp_ANALYTICS_Figures_followed_followers,Box_NOT_CLOSABLE,2);
|
||||
|
||||
/***** Heading row *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<th class=\"LEFT_MIDDLE\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<th class=\"LEFT_MIDDLE\">"
|
||||
"%s"
|
||||
"</th>"
|
||||
"<th class=\"RIGHT_MIDDLE\">"
|
||||
|
@ -3790,8 +3790,8 @@ static void Fig_GetAndShowFollowStats (void)
|
|||
}
|
||||
|
||||
/***** Write number of followed / followers *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"DAT LEFT_MIDDLE\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"DAT LEFT_MIDDLE\">"
|
||||
"%s"
|
||||
"</td>"
|
||||
"<td class=\"DAT RIGHT_MIDDLE\">"
|
||||
|
@ -3919,8 +3919,8 @@ static void Fig_GetAndShowFollowStats (void)
|
|||
DB_FreeMySQLResult (&mysql_res);
|
||||
|
||||
/***** Write number of followed per follower *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"DAT LEFT_MIDDLE\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"DAT LEFT_MIDDLE\">"
|
||||
"%s"
|
||||
"</td>"
|
||||
"<td class=\"DAT RIGHT_MIDDLE\">"
|
||||
|
@ -3967,8 +3967,8 @@ static void Fig_GetAndShowForumStats (void)
|
|||
Hlp_ANALYTICS_Figures_forums,Box_NOT_CLOSABLE,2);
|
||||
|
||||
/***** Write table heading *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<th class=\"LEFT_TOP\" style=\"width:20px;\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<th class=\"LEFT_TOP\" style=\"width:20px;\">"
|
||||
"<img src=\"%s/comments.svg\""
|
||||
" alt=\"%s\" title=\"%s\""
|
||||
" class=\"ICO16x16\" />"
|
||||
|
@ -4195,8 +4195,8 @@ static void Fig_WriteForumTitleAndStats (For_ForumType_t ForumType,
|
|||
FiguresForum->NumUsrsToBeNotifiedByEMail += NumUsrsToBeNotifiedByEMail;
|
||||
|
||||
/***** Write forum name and stats *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"LEFT_TOP\" style=\"width:20px;\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"LEFT_TOP\" style=\"width:20px;\">"
|
||||
"<img src=\"%s/%s\""
|
||||
" alt=\"%s%s\" title=\"%s%s\""
|
||||
" class=\"ICO16x16\" />"
|
||||
|
@ -4254,8 +4254,8 @@ static void Fig_WriteForumTotalStats (struct Fig_FiguresForum *FiguresForum)
|
|||
0.0);
|
||||
|
||||
/***** Write forum name and stats *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"DAT_N_LINE_TOP\" style=\"width:20px;\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"DAT_N_LINE_TOP\" style=\"width:20px;\">"
|
||||
"</td>"
|
||||
"<td class=\"DAT_N_LINE_TOP LEFT_MIDDLE\">"
|
||||
"%s"
|
||||
|
@ -4324,8 +4324,8 @@ static void Fig_GetAndShowNumUsrsPerNotifyEvent (void)
|
|||
Hlp_ANALYTICS_Figures_notifications,Box_NOT_CLOSABLE,2);
|
||||
|
||||
/***** Heading row *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<th class=\"LEFT_MIDDLE\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<th class=\"LEFT_MIDDLE\">"
|
||||
"%s"
|
||||
"</th>"
|
||||
"<th class=\"RIGHT_MIDDLE\">"
|
||||
|
@ -4470,8 +4470,9 @@ static void Fig_GetAndShowNumUsrsPerNotifyEvent (void)
|
|||
for (NotifyEvent = (Ntf_NotifyEvent_t) 1;
|
||||
NotifyEvent < Ntf_NUM_NOTIFY_EVENTS;
|
||||
NotifyEvent++) // 0 is reserved for Ntf_EVENT_UNKNOWN
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"DAT LEFT_MIDDLE\">"
|
||||
{
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"DAT LEFT_MIDDLE\">"
|
||||
"%s"
|
||||
"</td>"
|
||||
"<td class=\"DAT RIGHT_MIDDLE\">"
|
||||
|
@ -4494,10 +4495,11 @@ static void Fig_GetAndShowNumUsrsPerNotifyEvent (void)
|
|||
0.0,
|
||||
NumEvents[NotifyEvent],
|
||||
NumMails[NotifyEvent]);
|
||||
}
|
||||
|
||||
/***** Write total number of users who want to be notified by email on some event *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"DAT_N_LINE_TOP LEFT_MIDDLE\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"DAT_N_LINE_TOP LEFT_MIDDLE\">"
|
||||
"%s"
|
||||
"</td>"
|
||||
"<td class=\"DAT_N_LINE_TOP RIGHT_MIDDLE\">"
|
||||
|
@ -4563,8 +4565,8 @@ static void Fig_GetAndShowNoticesStats (void)
|
|||
Hlp_ANALYTICS_Figures_notices,Box_NOT_CLOSABLE,2);
|
||||
|
||||
/***** Write table heading *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<th class=\"RIGHT_MIDDLE\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<th class=\"RIGHT_MIDDLE\">"
|
||||
"%s"
|
||||
"</th>"
|
||||
"<th class=\"RIGHT_MIDDLE\">"
|
||||
|
@ -4587,8 +4589,8 @@ static void Fig_GetAndShowNoticesStats (void)
|
|||
Txt_Number_of_BR_notifications);
|
||||
|
||||
/***** Write number of notices *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"DAT RIGHT_MIDDLE\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"DAT RIGHT_MIDDLE\">"
|
||||
"%u"
|
||||
"</td>"
|
||||
"<td class=\"DAT RIGHT_MIDDLE\">"
|
||||
|
@ -4646,8 +4648,8 @@ static void Fig_GetAndShowMsgsStats (void)
|
|||
Hlp_ANALYTICS_Figures_messages,Box_NOT_CLOSABLE,2);
|
||||
|
||||
/***** Write table heading *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<th class=\"LEFT_MIDDLE\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<th class=\"LEFT_MIDDLE\">"
|
||||
"%s"
|
||||
"</th>"
|
||||
"<th class=\"RIGHT_MIDDLE\">"
|
||||
|
@ -4670,8 +4672,8 @@ static void Fig_GetAndShowMsgsStats (void)
|
|||
Txt_Number_of_BR_notifications);
|
||||
|
||||
/***** Write number of messages *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"DAT LEFT_MIDDLE\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"DAT LEFT_MIDDLE\">"
|
||||
"%s"
|
||||
"</td>"
|
||||
"<td class=\"DAT RIGHT_MIDDLE\">"
|
||||
|
@ -4686,9 +4688,14 @@ static void Fig_GetAndShowMsgsStats (void)
|
|||
"<td class=\"DAT RIGHT_MIDDLE\">"
|
||||
"-"
|
||||
"</td>"
|
||||
"</tr>"
|
||||
"<tr>"
|
||||
"<td class=\"DAT LEFT_MIDDLE\">"
|
||||
"</tr>",
|
||||
Txt_MSGS_Sent,
|
||||
NumMsgsSentNotDeleted,
|
||||
NumMsgsSentDeleted,
|
||||
NumMsgsSentNotDeleted + NumMsgsSentDeleted);
|
||||
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"DAT LEFT_MIDDLE\">"
|
||||
"%s"
|
||||
"</td>"
|
||||
"<td class=\"DAT RIGHT_MIDDLE\">"
|
||||
|
@ -4704,10 +4711,7 @@ static void Fig_GetAndShowMsgsStats (void)
|
|||
"%u"
|
||||
"</td>"
|
||||
"</tr>",
|
||||
Txt_MSGS_Sent,
|
||||
NumMsgsSentNotDeleted,
|
||||
NumMsgsSentDeleted,
|
||||
NumMsgsSentNotDeleted + NumMsgsSentDeleted,
|
||||
|
||||
Txt_MSGS_Received,
|
||||
NumMsgsReceivedNotDeleted,
|
||||
NumMsgsReceivedAndDeleted,
|
||||
|
@ -4750,8 +4754,8 @@ static void Fig_GetAndShowSurveysStats (void)
|
|||
Hlp_ANALYTICS_Figures_surveys,Box_NOT_CLOSABLE,2);
|
||||
|
||||
/***** Write table heading *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<th class=\"RIGHT_MIDDLE\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<th class=\"RIGHT_MIDDLE\">"
|
||||
"%s"
|
||||
"</th>"
|
||||
"<th class=\"RIGHT_MIDDLE\">"
|
||||
|
@ -4774,8 +4778,8 @@ static void Fig_GetAndShowSurveysStats (void)
|
|||
Txt_Number_of_BR_notifications);
|
||||
|
||||
/***** Write number of surveys *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"DAT RIGHT_MIDDLE\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"DAT RIGHT_MIDDLE\">"
|
||||
"%u"
|
||||
"</td>"
|
||||
"<td class=\"DAT RIGHT_MIDDLE\">"
|
||||
|
@ -4852,8 +4856,8 @@ static void Fig_GetAndShowNumUsrsPerPrivacyForAnObject (const char *TxtObject,
|
|||
unsigned NumUsrsTotal = 0;
|
||||
|
||||
/***** Heading row *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<th class=\"LEFT_MIDDLE\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<th class=\"LEFT_MIDDLE\">"
|
||||
"%s"
|
||||
"</th>"
|
||||
"<th class=\"RIGHT_MIDDLE\">"
|
||||
|
@ -4889,8 +4893,9 @@ static void Fig_GetAndShowNumUsrsPerPrivacyForAnObject (const char *TxtObject,
|
|||
Visibility < Pri_NUM_OPTIONS_PRIVACY;
|
||||
Visibility++)
|
||||
if (MaskAllowedVisibility & (1 << Visibility))
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"DAT LEFT_MIDDLE\">"
|
||||
{
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"DAT LEFT_MIDDLE\">"
|
||||
"%s"
|
||||
"</td>"
|
||||
"<td class=\"DAT RIGHT_MIDDLE\">"
|
||||
|
@ -4904,6 +4909,7 @@ static void Fig_GetAndShowNumUsrsPerPrivacyForAnObject (const char *TxtObject,
|
|||
NumUsrsTotal ? (float) NumUsrs[Visibility] * 100.0 /
|
||||
(float) NumUsrsTotal :
|
||||
0);
|
||||
}
|
||||
}
|
||||
|
||||
/*****************************************************************************/
|
||||
|
@ -4943,8 +4949,8 @@ static void Fig_GetAndShowNumUsrsPerCookies (void)
|
|||
Hlp_ANALYTICS_Figures_cookies,Box_NOT_CLOSABLE,2);
|
||||
|
||||
/***** Heading row *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<th class=\"LEFT_MIDDLE\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<th class=\"LEFT_MIDDLE\">"
|
||||
"%s"
|
||||
"</th>"
|
||||
"<th class=\"RIGHT_MIDDLE\">"
|
||||
|
@ -4978,8 +4984,9 @@ static void Fig_GetAndShowNumUsrsPerCookies (void)
|
|||
for (i = 0;
|
||||
i < 2;
|
||||
i++)
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"%s CENTER_MIDDLE\">"
|
||||
{
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"%s CENTER_MIDDLE\">"
|
||||
"%s"
|
||||
"</td>"
|
||||
"<td class=\"DAT RIGHT_MIDDLE\">"
|
||||
|
@ -4995,6 +5002,7 @@ static void Fig_GetAndShowNumUsrsPerCookies (void)
|
|||
NumUsrsTotal ? (float) NumUsrs[i] * 100.0 /
|
||||
(float) NumUsrsTotal :
|
||||
0);
|
||||
}
|
||||
|
||||
/***** End table and box *****/
|
||||
Box_EndBoxTable ();
|
||||
|
@ -5023,8 +5031,8 @@ static void Fig_GetAndShowNumUsrsPerLanguage (void)
|
|||
Hlp_ANALYTICS_Figures_language,Box_NOT_CLOSABLE,2);
|
||||
|
||||
/***** Heading row *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<th class=\"LEFT_MIDDLE\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<th class=\"LEFT_MIDDLE\">"
|
||||
"%s"
|
||||
"</th>"
|
||||
"<th class=\"RIGHT_MIDDLE\">"
|
||||
|
@ -5058,8 +5066,9 @@ static void Fig_GetAndShowNumUsrsPerLanguage (void)
|
|||
for (Lan = (Lan_Language_t) 1;
|
||||
Lan <= Lan_NUM_LANGUAGES;
|
||||
Lan++)
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"DAT LEFT_MIDDLE\">"
|
||||
{
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"DAT LEFT_MIDDLE\">"
|
||||
"%s"
|
||||
"</td>"
|
||||
"<td class=\"DAT RIGHT_MIDDLE\">"
|
||||
|
@ -5073,6 +5082,7 @@ static void Fig_GetAndShowNumUsrsPerLanguage (void)
|
|||
NumUsrsTotal ? (float) NumUsrs[Lan] * 100.0 /
|
||||
(float) NumUsrsTotal :
|
||||
0);
|
||||
}
|
||||
|
||||
/***** End table and box *****/
|
||||
Box_EndBoxTable ();
|
||||
|
@ -5102,8 +5112,8 @@ static void Fig_GetAndShowNumUsrsPerFirstDayOfWeek (void)
|
|||
Hlp_ANALYTICS_Figures_calendar,Box_NOT_CLOSABLE,2);
|
||||
|
||||
/***** Heading row *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<th class=\"LEFT_MIDDLE\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<th class=\"LEFT_MIDDLE\">"
|
||||
"%s"
|
||||
"</th>"
|
||||
"<th class=\"RIGHT_MIDDLE\">"
|
||||
|
@ -5139,8 +5149,9 @@ static void Fig_GetAndShowNumUsrsPerFirstDayOfWeek (void)
|
|||
FirstDayOfWeek <= 6; // Sunday
|
||||
FirstDayOfWeek++)
|
||||
if (Cal_DayIsValidAsFirstDayOfWeek[FirstDayOfWeek])
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"CENTER_MIDDLE\">"
|
||||
{
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"CENTER_MIDDLE\">"
|
||||
"<img src=\"%s/first-day-of-week-%u.png\""
|
||||
" alt=\"%s\" title=\"%s: %s\""
|
||||
" class=\"ICO40x40\" />"
|
||||
|
@ -5159,6 +5170,7 @@ static void Fig_GetAndShowNumUsrsPerFirstDayOfWeek (void)
|
|||
NumUsrsTotal ? (float) NumUsrs[FirstDayOfWeek] * 100.0 /
|
||||
(float) NumUsrsTotal :
|
||||
0);
|
||||
}
|
||||
|
||||
/***** End table and box *****/
|
||||
Box_EndBoxTable ();
|
||||
|
@ -5185,8 +5197,8 @@ static void Fig_GetAndShowNumUsrsPerDateFormat (void)
|
|||
Hlp_ANALYTICS_Figures_dates,Box_NOT_CLOSABLE,2);
|
||||
|
||||
/***** Heading row *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<th class=\"LEFT_MIDDLE\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<th class=\"LEFT_MIDDLE\">"
|
||||
"%s"
|
||||
"</th>"
|
||||
"<th class=\"RIGHT_MIDDLE\">"
|
||||
|
@ -5221,8 +5233,8 @@ static void Fig_GetAndShowNumUsrsPerDateFormat (void)
|
|||
Format <= (Dat_Format_t) (Dat_NUM_OPTIONS_FORMAT - 1);
|
||||
Format++)
|
||||
{
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"DAT_N LEFT_MIDDLE\">");
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"DAT_N LEFT_MIDDLE\">");
|
||||
Dat_PutSpanDateFormat (Format);
|
||||
Dat_PutScriptDateFormat (Format);
|
||||
fprintf (Gbl.F.Out,"</td>"
|
||||
|
@ -5266,8 +5278,8 @@ static void Fig_GetAndShowNumUsrsPerIconSet (void)
|
|||
Hlp_ANALYTICS_Figures_icons,Box_NOT_CLOSABLE,2);
|
||||
|
||||
/***** Heading row *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<th class=\"LEFT_MIDDLE\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<th class=\"LEFT_MIDDLE\">"
|
||||
"%s"
|
||||
"</th>"
|
||||
"<th class=\"RIGHT_MIDDLE\">"
|
||||
|
@ -5301,8 +5313,9 @@ static void Fig_GetAndShowNumUsrsPerIconSet (void)
|
|||
for (IconSet = (Ico_IconSet_t) 0;
|
||||
IconSet < Ico_NUM_ICON_SETS;
|
||||
IconSet++)
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"LEFT_MIDDLE\">"
|
||||
{
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"LEFT_MIDDLE\">"
|
||||
"<img src=\"%s/%s/cog.svg\""
|
||||
" alt=\"%s\" title=\"%s\""
|
||||
" class=\"ICO40x40\" />"
|
||||
|
@ -5322,6 +5335,7 @@ static void Fig_GetAndShowNumUsrsPerIconSet (void)
|
|||
NumUsrsTotal ? (float) NumUsrs[IconSet] * 100.0 /
|
||||
(float) NumUsrsTotal :
|
||||
0);
|
||||
}
|
||||
|
||||
/***** End table and box *****/
|
||||
Box_EndBoxTable ();
|
||||
|
@ -5350,8 +5364,8 @@ static void Fig_GetAndShowNumUsrsPerMenu (void)
|
|||
Hlp_ANALYTICS_Figures_menu,Box_NOT_CLOSABLE,2);
|
||||
|
||||
/***** Heading row *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<th class=\"LEFT_MIDDLE\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<th class=\"LEFT_MIDDLE\">"
|
||||
"%s"
|
||||
"</th>"
|
||||
"<th class=\"RIGHT_MIDDLE\">"
|
||||
|
@ -5385,8 +5399,9 @@ static void Fig_GetAndShowNumUsrsPerMenu (void)
|
|||
for (Menu = (Mnu_Menu_t) 0;
|
||||
Menu < Mnu_NUM_MENUS;
|
||||
Menu++)
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"CENTER_MIDDLE\">"
|
||||
{
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"CENTER_MIDDLE\">"
|
||||
"<img src=\"%s/%s\""
|
||||
" alt=\"%s\" title=\"%s\""
|
||||
" class=\"ICO40x40\" />"
|
||||
|
@ -5405,6 +5420,7 @@ static void Fig_GetAndShowNumUsrsPerMenu (void)
|
|||
NumUsrsTotal ? (float) NumUsrs[Menu] * 100.0 /
|
||||
(float) NumUsrsTotal :
|
||||
0);
|
||||
}
|
||||
|
||||
/***** End table and box *****/
|
||||
Box_EndBoxTable ();
|
||||
|
@ -5433,8 +5449,8 @@ static void Fig_GetAndShowNumUsrsPerTheme (void)
|
|||
Hlp_ANALYTICS_Figures_theme,Box_NOT_CLOSABLE,2);
|
||||
|
||||
/***** Heading row *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<th class=\"LEFT_MIDDLE\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<th class=\"LEFT_MIDDLE\">"
|
||||
"%s"
|
||||
"</th>"
|
||||
"<th class=\"RIGHT_MIDDLE\">"
|
||||
|
@ -5468,8 +5484,9 @@ static void Fig_GetAndShowNumUsrsPerTheme (void)
|
|||
for (Theme = (The_Theme_t) 0;
|
||||
Theme < The_NUM_THEMES;
|
||||
Theme++)
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"CENTER_MIDDLE\">"
|
||||
{
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"CENTER_MIDDLE\">"
|
||||
"<img src=\"%s/%s/theme_32x20.gif\""
|
||||
" alt=\"%s\" title=\"%s\""
|
||||
" style=\"width:40px; height:25px;\" />"
|
||||
|
@ -5488,6 +5505,7 @@ static void Fig_GetAndShowNumUsrsPerTheme (void)
|
|||
NumUsrsTotal ? (float) NumUsrs[Theme] * 100.0 /
|
||||
(float) NumUsrsTotal :
|
||||
0);
|
||||
}
|
||||
|
||||
/***** End table and box *****/
|
||||
Box_EndBoxTable ();
|
||||
|
@ -5515,8 +5533,8 @@ static void Fig_GetAndShowNumUsrsPerSideColumns (void)
|
|||
Hlp_ANALYTICS_Figures_columns,Box_NOT_CLOSABLE,2);
|
||||
|
||||
/***** Heading row *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<th class=\"CENTER_MIDDLE\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<th class=\"CENTER_MIDDLE\">"
|
||||
"%s"
|
||||
"</th>"
|
||||
"<th class=\"RIGHT_MIDDLE\">"
|
||||
|
@ -5550,8 +5568,9 @@ static void Fig_GetAndShowNumUsrsPerSideColumns (void)
|
|||
for (SideCols = 0;
|
||||
SideCols <= Lay_SHOW_BOTH_COLUMNS;
|
||||
SideCols++)
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"CENTER_MIDDLE\">"
|
||||
{
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"CENTER_MIDDLE\">"
|
||||
"<img src=\"%s/layout%u%u_32x20.gif\""
|
||||
" alt=\"%s\" title=\"%s\""
|
||||
" style=\"width:40px; height:25px;\" />"
|
||||
|
@ -5570,6 +5589,7 @@ static void Fig_GetAndShowNumUsrsPerSideColumns (void)
|
|||
NumUsrsTotal ? (float) NumUsrs[SideCols] * 100.0 /
|
||||
(float) NumUsrsTotal :
|
||||
0);
|
||||
}
|
||||
|
||||
/***** End table and box *****/
|
||||
Box_EndBoxTable ();
|
||||
|
|
|
@ -8507,8 +8507,8 @@ static void Brw_PutFormToCreateALink (const char *FileNameToShow)
|
|||
|
||||
/***** URL *****/
|
||||
Tbl_StartTable ();
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"RIGHT_MIDDLE\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"RIGHT_MIDDLE\">"
|
||||
"<label for=\"NewLinkURL\" class=\"%s\">"
|
||||
"%s: "
|
||||
"</label>"
|
||||
|
@ -8524,8 +8524,8 @@ static void Brw_PutFormToCreateALink (const char *FileNameToShow)
|
|||
PATH_MAX);
|
||||
|
||||
/***** Link name *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"RIGHT_MIDDLE\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"RIGHT_MIDDLE\">"
|
||||
"<label for=\"NewLinkName\" class=\"%s\">"
|
||||
"%s (%s): "
|
||||
"</label>"
|
||||
|
@ -9494,16 +9494,16 @@ void Brw_ShowFileMetadata (void)
|
|||
Box_StartBoxTableShadow (NULL,NULL,NULL,NULL,2);
|
||||
|
||||
/***** Link to download the file *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td colspan=\"2\""
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td colspan=\"2\""
|
||||
" class=\"FILENAME_TXT CENTER_MIDDLE\">");
|
||||
Brw_WriteBigLinkToDownloadFile (URL,&FileMetadata,FileNameToShow);
|
||||
fprintf (Gbl.F.Out,"</td>"
|
||||
"</tr>");
|
||||
|
||||
/***** Filename *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"%s RIGHT_MIDDLE\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"%s RIGHT_MIDDLE\">"
|
||||
"%s:"
|
||||
"</td>"
|
||||
"<td class=\"DAT LEFT_MIDDLE\">",
|
||||
|
@ -9513,8 +9513,8 @@ void Brw_ShowFileMetadata (void)
|
|||
"</tr>");
|
||||
|
||||
/***** Publisher's data *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"%s RIGHT_MIDDLE\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"%s RIGHT_MIDDLE\">"
|
||||
"%s:"
|
||||
"</td>"
|
||||
"<td class=\"DAT LEFT_MIDDLE\">",
|
||||
|
@ -9543,8 +9543,8 @@ void Brw_ShowFileMetadata (void)
|
|||
|
||||
/***** Write the file size *****/
|
||||
Fil_WriteFileSizeFull ((double) FileMetadata.Size,FileSizeStr);
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"%s RIGHT_MIDDLE\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"%s RIGHT_MIDDLE\">"
|
||||
"%s:"
|
||||
"</td>"
|
||||
"<td class=\"DAT LEFT_MIDDLE\">"
|
||||
|
@ -9556,8 +9556,8 @@ void Brw_ShowFileMetadata (void)
|
|||
FileSizeStr);
|
||||
|
||||
/***** Write the date *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"%s RIGHT_MIDDLE\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"%s RIGHT_MIDDLE\">"
|
||||
"%s:"
|
||||
"</td>"
|
||||
"<td id=\"filedate\" class=\"DAT LEFT_MIDDLE\">"
|
||||
|
@ -9573,8 +9573,8 @@ void Brw_ShowFileMetadata (void)
|
|||
(unsigned) Gbl.Prefs.DateFormat,Txt_Today);
|
||||
|
||||
/***** Private or public? *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"RIGHT_MIDDLE\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"RIGHT_MIDDLE\">"
|
||||
"<label for=\"PublicFile\" class=\"%s\">"
|
||||
"%s:"
|
||||
"</label>"
|
||||
|
@ -9605,8 +9605,8 @@ void Brw_ShowFileMetadata (void)
|
|||
"</tr>");
|
||||
|
||||
/***** License *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"RIGHT_MIDDLE\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"RIGHT_MIDDLE\">"
|
||||
"<label for=\"License\" class=\"%s\">%s:</label>"
|
||||
"</td>"
|
||||
"<td class=\"DAT LEFT_MIDDLE\">",
|
||||
|
@ -9633,8 +9633,9 @@ void Brw_ShowFileMetadata (void)
|
|||
|
||||
/***** Write my number of views *****/
|
||||
if (Gbl.Usrs.Me.Logged)
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"%s RIGHT_MIDDLE\">"
|
||||
{
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"%s RIGHT_MIDDLE\">"
|
||||
"%s:"
|
||||
"</td>"
|
||||
"<td class=\"DAT LEFT_MIDDLE\">"
|
||||
|
@ -9643,10 +9644,11 @@ void Brw_ShowFileMetadata (void)
|
|||
"</tr>",
|
||||
The_ClassFormInBox[Gbl.Prefs.Theme],Txt_My_views,
|
||||
FileMetadata.NumMyViews);
|
||||
}
|
||||
|
||||
/***** Write number of identificated views *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"%s RIGHT_MIDDLE\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"%s RIGHT_MIDDLE\">"
|
||||
"%s:"
|
||||
"</td>"
|
||||
"<td class=\"DAT LEFT_MIDDLE\">"
|
||||
|
@ -9660,8 +9662,8 @@ void Brw_ShowFileMetadata (void)
|
|||
Txt_users[Usr_SEX_UNKNOWN]);
|
||||
|
||||
/***** Write number of public views *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"%s RIGHT_MIDDLE\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"%s RIGHT_MIDDLE\">"
|
||||
"%s:"
|
||||
"</td>"
|
||||
"<td class=\"DAT LEFT_MIDDLE\">"
|
||||
|
@ -11781,8 +11783,8 @@ void Brw_ListDocsFound (MYSQL_RES **mysql_res,unsigned long NumDocs,
|
|||
NULL,Box_NOT_CLOSABLE,2);
|
||||
|
||||
/***** Write heading *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<th class=\"BM\"></th>"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<th class=\"BM\"></th>"
|
||||
"<th class=\"LEFT_MIDDLE\">"
|
||||
"%s"
|
||||
"</th>"
|
||||
|
@ -11823,8 +11825,8 @@ void Brw_ListDocsFound (MYSQL_RES **mysql_res,unsigned long NumDocs,
|
|||
|
||||
/***** Write footer *****/
|
||||
/* Number of documents not hidden found */
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<th colspan=\"7\" class=\"CENTER_MIDDLE\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<th colspan=\"7\" class=\"CENTER_MIDDLE\">"
|
||||
"(");
|
||||
NumDocsHidden = NumDocs - NumDocsNotHidden;
|
||||
if (NumDocsHidden == 1)
|
||||
|
@ -11918,8 +11920,8 @@ static void Brw_WriteRowDocData (unsigned long *NumDocsNotHidden,MYSQL_ROW row)
|
|||
Gbl.ColorRows[Gbl.RowEvenOdd];
|
||||
|
||||
/***** Write number of document in this search *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"DAT RIGHT_TOP %s\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"DAT RIGHT_TOP %s\">"
|
||||
"%lu"
|
||||
"</td>",
|
||||
BgColor,++(*NumDocsNotHidden));
|
||||
|
|
|
@ -898,8 +898,8 @@ static void Fol_WriteRowUsrToFollowOnRightColumn (struct UsrData *UsrDat)
|
|||
bool ItsMe = Usr_ItsMe (UsrDat->UsrCod);
|
||||
|
||||
/***** Show user's photo *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"CON_PHOTO COLOR%u\">",
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"CON_PHOTO COLOR%u\">",
|
||||
Gbl.RowEvenOdd);
|
||||
if (Visible)
|
||||
{
|
||||
|
|
24
swad_forum.c
24
swad_forum.c
|
@ -1175,8 +1175,8 @@ static void For_ShowAForumPost (unsigned PstNum,long PstCod,
|
|||
Cns_MAX_BYTES_SUBJECT);
|
||||
|
||||
/***** Put an icon with post status *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"CONTEXT_COL %s\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"CONTEXT_COL %s\">"
|
||||
"<img src=\"%s/%s\""
|
||||
" alt=\"%s\" title=\"%s\""
|
||||
" class=\"ICO16x16\" />"
|
||||
|
@ -1215,8 +1215,8 @@ static void For_ShowAForumPost (unsigned PstNum,long PstCod,
|
|||
"</tr>");
|
||||
|
||||
/***** Form to ban/unban post *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"CONTEXT_COL\">");
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"CONTEXT_COL\">");
|
||||
if (ICanModerateForum)
|
||||
{
|
||||
Frm_StartFormAnchor (Enabled ? For_ActionsDisPstFor[Gbl.Forum.ForumSelected.Type] :
|
||||
|
@ -2560,8 +2560,8 @@ static void For_ShowForumThreadsHighlightingOneThread (long ThrCodHighlighted,
|
|||
|
||||
/***** Heading row *****/
|
||||
Tbl_StartTableWideMarginPadding (2);
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<th style=\"width:20px;\"></th>"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<th style=\"width:20px;\"></th>"
|
||||
"<th class=\"CONTEXT_COL\"></th>" // Column for contextual icons
|
||||
"<th class=\"LEFT_MIDDLE\">%s</th>",
|
||||
Txt_MSG_Subject);
|
||||
|
@ -3403,8 +3403,8 @@ static void For_ListForumThrs (long ThrCods[Pag_ITEMS_PER_PAGE],
|
|||
Gbl.ColorRows[Gbl.RowEvenOdd]);
|
||||
|
||||
/***** Show my photo if I have any posts in this thread *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"CENTER_TOP %s\" style=\"width:20px;\">",
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"CENTER_TOP %s\" style=\"width:20px;\">",
|
||||
BgColor);
|
||||
if (Thr.NumMyPosts)
|
||||
{
|
||||
|
@ -3962,8 +3962,8 @@ static void For_WriteFormForumPst (bool IsReply,const char *Subject)
|
|||
|
||||
// If writing a reply to a message of an existing thread ==> write subject
|
||||
/* Subject */
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"RIGHT_MIDDLE\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"RIGHT_MIDDLE\">"
|
||||
"<label for=\"Subject\" class=\"%s\">%s:</label>"
|
||||
"</td>"
|
||||
"<td class=\"LEFT_MIDDLE\">"
|
||||
|
@ -3979,8 +3979,8 @@ static void For_WriteFormForumPst (bool IsReply,const char *Subject)
|
|||
"");
|
||||
|
||||
/* Content */
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"RIGHT_TOP\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"RIGHT_TOP\">"
|
||||
"<label for=\"Content\" class=\"%s\">%s:</label>"
|
||||
"</td>"
|
||||
"<td class=\"LEFT_TOP\">"
|
||||
|
|
16
swad_game.c
16
swad_game.c
|
@ -1135,8 +1135,8 @@ static void Gam_PutFormsEditionGame (struct Game *Game,bool ItsANewGame)
|
|||
Hlp_ASSESSMENT_Games_edit_game,Box_NOT_CLOSABLE,2);
|
||||
|
||||
/***** Game title *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"RIGHT_MIDDLE\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"RIGHT_MIDDLE\">"
|
||||
"<label for=\"Title\" class=\"%s\">%s:</label>"
|
||||
"</td>"
|
||||
"<td class=\"LEFT_MIDDLE\">"
|
||||
|
@ -1150,8 +1150,8 @@ static void Gam_PutFormsEditionGame (struct Game *Game,bool ItsANewGame)
|
|||
Gam_MAX_CHARS_TITLE,Game->Title);
|
||||
|
||||
/***** Game text *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"RIGHT_TOP\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"RIGHT_TOP\">"
|
||||
"<label for=\"Txt\" class=\"%s\">%s:</label>"
|
||||
"</td>"
|
||||
"<td class=\"LEFT_TOP\">"
|
||||
|
@ -1634,8 +1634,8 @@ static void Gam_ListOneOrMoreQuestionsForEdition (long GamCod,unsigned NumQsts,
|
|||
|
||||
/***** Write the heading *****/
|
||||
Tbl_StartTableWideMarginPadding (2);
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<th></th>"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<th></th>"
|
||||
"<th class=\"CENTER_TOP\">"
|
||||
"%s"
|
||||
"</th>"
|
||||
|
@ -1685,8 +1685,8 @@ static void Gam_ListOneOrMoreQuestionsForEdition (long GamCod,unsigned NumQsts,
|
|||
/***** Icons *****/
|
||||
Gam_SetParamCurrentGamCod (GamCod); // Used to pass parameter
|
||||
Gam_CurrentQstInd = QstInd;
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"BT%u\">",Gbl.RowEvenOdd);
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"BT%u\">",Gbl.RowEvenOdd);
|
||||
|
||||
/* Put icon to remove the question */
|
||||
if (ICanEditQuestions)
|
||||
|
|
56
swad_group.c
56
swad_group.c
|
@ -1294,8 +1294,8 @@ static void Grp_ListGroupTypesForEdition (void)
|
|||
NumGrpTyp++, UniqueId++)
|
||||
{
|
||||
/* Put icon to remove group type */
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"BM\">");
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"BM\">");
|
||||
Frm_StartFormAnchor (ActReqRemGrpTyp,Grp_GROUP_TYPES_SECTION_ID);
|
||||
Grp_PutParamGrpTypCod (Gbl.Crs.Grps.GrpTypes.LstGrpTypes[NumGrpTyp].GrpTypCod);
|
||||
Ico_PutIconRemove ();
|
||||
|
@ -1364,8 +1364,8 @@ static void Grp_ListGroupTypesForEdition (void)
|
|||
Frm_StartFormAnchor (ActChgTimGrpTyp,Grp_GROUP_TYPES_SECTION_ID);
|
||||
Grp_PutParamGrpTypCod (Gbl.Crs.Grps.GrpTypes.LstGrpTypes[NumGrpTyp].GrpTypCod);
|
||||
Tbl_StartTableCenterPadding (2);
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"LEFT_MIDDLE\" style=\"width:16px;\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"LEFT_MIDDLE\" style=\"width:16px;\">"
|
||||
"<img src=\"%s/clock.svg\""
|
||||
" alt=\"%s\" title=\"%s\""
|
||||
" class=\"%sCONTEXT_ICO_16x16\" />"
|
||||
|
@ -1447,8 +1447,8 @@ static void Grp_WriteHeadingGroupTypes (void)
|
|||
extern const char *Txt_Opening_of_groups;
|
||||
extern const char *Txt_No_of_BR_groups;
|
||||
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<th class=\"BM\"></th>"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<th class=\"BM\"></th>"
|
||||
"<th class=\"CENTER_MIDDLE\">"
|
||||
"%s<br />(%s)"
|
||||
"</th>"
|
||||
|
@ -1510,8 +1510,8 @@ static void Grp_ListGroupsForEdition (void)
|
|||
Grp = &(GrpTyp->LstGrps[NumGrpThisType]);
|
||||
|
||||
/***** Icon to remove group *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"BM\">");
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"BM\">");
|
||||
Frm_StartFormAnchor (ActReqRemGrp,Grp_GROUPS_SECTION_ID);
|
||||
Grp_PutParamGrpCod (Grp->GrpCod);
|
||||
Ico_PutIconRemove ();
|
||||
|
@ -1670,8 +1670,8 @@ static void Grp_WriteHeadingGroups (void)
|
|||
extern const char *Txt_Max_BR_students;
|
||||
Rol_Role_t Role;
|
||||
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<th class=\"BM\"></th>"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<th class=\"BM\"></th>"
|
||||
"<th class=\"BM\"></th>"
|
||||
"<th class=\"BM\"></th>"
|
||||
"<th class=\"CENTER_MIDDLE\">"
|
||||
|
@ -1730,8 +1730,8 @@ void Grp_ListGrpsToEditAsgAttSvyMch (struct GroupType *GrpTyp,long Cod,
|
|||
IBelongToThisGroup = Grp_CheckIfGrpIsInList (Grp->GrpCod,&LstGrpsIBelong);
|
||||
|
||||
/* Put checkbox to select the group */
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"LEFT_MIDDLE");
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"LEFT_MIDDLE");
|
||||
if (IBelongToThisGroup)
|
||||
fprintf (Gbl.F.Out," LIGHT_BLUE");
|
||||
fprintf (Gbl.F.Out,"\">"
|
||||
|
@ -2016,8 +2016,8 @@ static bool Grp_ListGrpsForChangeMySelection (struct GroupType *GrpTyp,
|
|||
IBelongToThisGroup = Grp_CheckIfGrpIsInList (Grp->GrpCod,&LstGrpsIBelong);
|
||||
|
||||
/* Put radio item or checkbox to select the group */
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"LEFT_MIDDLE");
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"LEFT_MIDDLE");
|
||||
if (IBelongToThisGroup)
|
||||
fprintf (Gbl.F.Out," LIGHT_BLUE");
|
||||
fprintf (Gbl.F.Out,"\">");
|
||||
|
@ -2236,8 +2236,8 @@ static void Grp_ListGrpsForMultipleSelection (struct GroupType *GrpTyp,
|
|||
}
|
||||
|
||||
/* Put checkbox to select the group */
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"LEFT_MIDDLE");
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"LEFT_MIDDLE");
|
||||
if (IBelongToThisGroup)
|
||||
fprintf (Gbl.F.Out," LIGHT_BLUE");
|
||||
fprintf (Gbl.F.Out,"\">"
|
||||
|
@ -2274,8 +2274,8 @@ static void Grp_ListGrpsForMultipleSelection (struct GroupType *GrpTyp,
|
|||
/* To get the students who don't belong to a type of group, use group code -(GrpTyp->GrpTypCod) */
|
||||
/* Write checkbox to select the group */
|
||||
ICanSelUnselGroup = (Gbl.Usrs.Me.Role.Logged >= Rol_STD);
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"LEFT_MIDDLE\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"LEFT_MIDDLE\">"
|
||||
"<input type=\"checkbox\" id=\"Grp%ld\" name=\"GrpCods\""
|
||||
" value=\"%ld\"",
|
||||
-(GrpTyp->GrpTypCod),
|
||||
|
@ -2345,8 +2345,8 @@ static void Grp_WriteGrpHead (struct GroupType *GrpTyp)
|
|||
Rol_Role_t Role;
|
||||
|
||||
/***** Name of group type *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td colspan=\"9\" class=\"GRP_TITLE LEFT_MIDDLE\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td colspan=\"9\" class=\"GRP_TITLE LEFT_MIDDLE\">"
|
||||
"<br />%s",
|
||||
GrpTyp->GrpTypName);
|
||||
if (GrpTyp->MustBeOpened)
|
||||
|
@ -2367,8 +2367,8 @@ static void Grp_WriteGrpHead (struct GroupType *GrpTyp)
|
|||
"</tr>");
|
||||
|
||||
/***** Head row with title of each column *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<th colspan=\"2\"></th>"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<th colspan=\"2\"></th>"
|
||||
"<th class=\"LEFT_MIDDLE\">"
|
||||
"%s"
|
||||
"</th>"
|
||||
|
@ -2506,8 +2506,8 @@ static void Grp_PutFormToCreateGroupType (void)
|
|||
Grp_WriteHeadingGroupTypes ();
|
||||
|
||||
/***** Column to remove group type, disabled here *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"BM\"></td>");
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"BM\"></td>");
|
||||
|
||||
/***** Name of group type *****/
|
||||
fprintf (Gbl.F.Out,"<td class=\"LEFT_MIDDLE\">"
|
||||
|
@ -2554,8 +2554,8 @@ static void Grp_PutFormToCreateGroupType (void)
|
|||
/***** Open time *****/
|
||||
fprintf (Gbl.F.Out,"<td class=\"LEFT_MIDDLE\">");
|
||||
Tbl_StartTablePadding (2);
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"LEFT_MIDDLE\" style=\"width:20px;\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"LEFT_MIDDLE\" style=\"width:20px;\">"
|
||||
"<img src=\"%s/clock.svg\""
|
||||
" alt=\"%s\" title=\"%s\""
|
||||
" class=\"%sCONTEXT_ICO_16x16\" />"
|
||||
|
@ -2623,8 +2623,8 @@ static void Grp_PutFormToCreateGroup (void)
|
|||
Grp_WriteHeadingGroups ();
|
||||
|
||||
/***** Empty column to remove *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"BM\"></td>");
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"BM\"></td>");
|
||||
|
||||
/***** Disabled icon to open group *****/
|
||||
fprintf (Gbl.F.Out,"<td class=\"BM\">");
|
||||
|
|
|
@ -33,6 +33,7 @@
|
|||
#include "swad_form.h"
|
||||
#include "swad_global.h"
|
||||
#include "swad_help.h"
|
||||
#include "swad_table.h"
|
||||
#include "swad_user.h"
|
||||
|
||||
/*****************************************************************************/
|
||||
|
@ -270,8 +271,8 @@ static void Hlp_ShowRowHelpWhatWouldYouLikeToDo (const char *Description,
|
|||
const char *TxtButton)
|
||||
{
|
||||
/***** Description *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"DAT RIGHT_MIDDLE\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"DAT RIGHT_MIDDLE\">"
|
||||
"%s:"
|
||||
"</td>",
|
||||
Description);
|
||||
|
|
|
@ -103,8 +103,8 @@ void Hie_WriteMenuHierarchy (void)
|
|||
|
||||
/***** Write a 1st selector
|
||||
with all the countries *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"RIGHT_MIDDLE\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"RIGHT_MIDDLE\">"
|
||||
"<label for=\"cty\" class=\"%s\">%s:</label>"
|
||||
"</td>"
|
||||
"<td class=\"LEFT_MIDDLE\">",
|
||||
|
@ -117,8 +117,8 @@ void Hie_WriteMenuHierarchy (void)
|
|||
{
|
||||
/***** Write a 2nd selector
|
||||
with the institutions of selected country *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"RIGHT_MIDDLE\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"RIGHT_MIDDLE\">"
|
||||
"<label for=\"ins\" class=\"%s\">%s:</label>"
|
||||
"</td>"
|
||||
"<td class=\"LEFT_MIDDLE\">",
|
||||
|
@ -131,8 +131,8 @@ void Hie_WriteMenuHierarchy (void)
|
|||
{
|
||||
/***** Write a 3rd selector
|
||||
with all the centres of selected institution *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"RIGHT_MIDDLE\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"RIGHT_MIDDLE\">"
|
||||
"<label for=\"ctr\" class=\"%s\">%s:</label>"
|
||||
"</td>"
|
||||
"<td class=\"LEFT_MIDDLE\">",
|
||||
|
@ -145,8 +145,8 @@ void Hie_WriteMenuHierarchy (void)
|
|||
{
|
||||
/***** Write a 4th selector
|
||||
with all the degrees of selected centre *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"RIGHT_MIDDLE\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"RIGHT_MIDDLE\">"
|
||||
"<label for=\"deg\" class=\"%s\">%s:</label>"
|
||||
"</td>"
|
||||
"<td class=\"LEFT_MIDDLE\">",
|
||||
|
@ -159,8 +159,8 @@ void Hie_WriteMenuHierarchy (void)
|
|||
{
|
||||
/***** Write a 5th selector
|
||||
with all the courses of selected degree *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"RIGHT_MIDDLE\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"RIGHT_MIDDLE\">"
|
||||
"<label for=\"crs\" class=\"%s\">%s:</label>"
|
||||
"</td>"
|
||||
"<td class=\"LEFT_MIDDLE\">",
|
||||
|
|
|
@ -149,8 +149,8 @@ void Hld_SeeHolidays (void)
|
|||
NumHld++)
|
||||
{
|
||||
/* Write data of this holiday */
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"DAT LEFT_MIDDLE\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"DAT LEFT_MIDDLE\">"
|
||||
"%s"
|
||||
"</td>",
|
||||
Gbl.Hlds.Lst[NumHld].PlcCod <= 0 ? Txt_All_places :
|
||||
|
@ -562,8 +562,8 @@ static void Hld_ListHolidaysForEdition (void)
|
|||
Hld = &Gbl.Hlds.Lst[NumHld];
|
||||
|
||||
/* Put icon to remove holiday */
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"BM\">");
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"BM\">");
|
||||
Frm_StartForm (ActRemHld);
|
||||
Hld_PutParamHldCod (Hld->HldCod);
|
||||
Ico_PutIconRemove ();
|
||||
|
@ -969,8 +969,8 @@ static void Hld_PutFormToCreateHoliday (void)
|
|||
Hlp_INSTITUTION_Holidays_edit,Box_NOT_CLOSABLE,2);
|
||||
|
||||
/***** Write heading *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<th class=\"LEFT_MIDDLE\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<th class=\"LEFT_MIDDLE\">"
|
||||
"%s"
|
||||
"</th>"
|
||||
"<th class=\"LEFT_MIDDLE\">"
|
||||
|
@ -993,8 +993,8 @@ static void Hld_PutFormToCreateHoliday (void)
|
|||
Txt_Holiday);
|
||||
|
||||
/***** Holiday place *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"CENTER_MIDDLE\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"CENTER_MIDDLE\">"
|
||||
"<select name=\"PlcCod\" style=\"width:62px;\">"
|
||||
"<option value=\"-1\"");
|
||||
if (Hld_EditingHld->PlcCod <= 0)
|
||||
|
@ -1072,8 +1072,8 @@ static void Hld_PutHeadHolidays (void)
|
|||
extern const char *Txt_START_END_TIME[Dat_NUM_START_END_TIME];
|
||||
extern const char *Txt_Holiday;
|
||||
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<th class=\"BM\"></th>"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<th class=\"BM\"></th>"
|
||||
"<th class=\"RIGHT_MIDDLE\">"
|
||||
"%s"
|
||||
"</th>"
|
||||
|
|
112
swad_indicator.c
112
swad_indicator.c
|
@ -120,8 +120,8 @@ void Ind_ReqIndicatorsCourses (void)
|
|||
Tbl_StartTableWidePadding (2);
|
||||
|
||||
/* Scope */
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"RIGHT_MIDDLE\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"RIGHT_MIDDLE\">"
|
||||
"<label for=\"ScopeInd\" class=\"%s\">%s:</label>"
|
||||
"</td>"
|
||||
"<td class=\"LEFT_MIDDLE\">",
|
||||
|
@ -131,8 +131,8 @@ void Ind_ReqIndicatorsCourses (void)
|
|||
"</tr>");
|
||||
|
||||
/* Compute stats for a type of degree */
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"RIGHT_MIDDLE\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"RIGHT_MIDDLE\">"
|
||||
"<label for=\"OthDegTypCod\" class=\"%s\">%s:</label>"
|
||||
"</td>"
|
||||
"<td class=\"DAT LEFT_MIDDLE\">",
|
||||
|
@ -145,8 +145,8 @@ void Ind_ReqIndicatorsCourses (void)
|
|||
"</tr>");
|
||||
|
||||
/* Compute stats for courses with teachers belonging to any department or to a particular departament? */
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"RIGHT_MIDDLE\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"RIGHT_MIDDLE\">"
|
||||
"<label for=\"%s\" class=\"%s\">%s:</label>"
|
||||
"</td>"
|
||||
"<td class=\"LEFT_MIDDLE\">",
|
||||
|
@ -173,8 +173,8 @@ void Ind_ReqIndicatorsCourses (void)
|
|||
Ind_GetNumCoursesWithIndicators (NumCrssWithIndicatorYes,NumCrss,mysql_res);
|
||||
|
||||
/* Selection of the number of indicators */
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"RIGHT_TOP %s\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"RIGHT_TOP %s\">"
|
||||
"%s:"
|
||||
"</td>"
|
||||
"<td class=\"LEFT_TOP\">",
|
||||
|
@ -753,8 +753,8 @@ static void Ind_ShowTableOfCoursesWithIndicators (Ind_IndicatorsLayout_t Indicat
|
|||
switch (IndicatorsLayout)
|
||||
{
|
||||
case Ind_INDICATORS_BRIEF:
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<th rowspan=\"3\" class=\"LEFT_MIDDLE COLOR0\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<th rowspan=\"3\" class=\"LEFT_MIDDLE COLOR0\">"
|
||||
"%s"
|
||||
"</th>"
|
||||
"<th rowspan=\"3\" class=\"LEFT_MIDDLE COLOR0\">"
|
||||
|
@ -769,9 +769,15 @@ static void Ind_ShowTableOfCoursesWithIndicators (Ind_IndicatorsLayout_t Indicat
|
|||
"<th colspan=\"11\" class=\"CENTER_MIDDLE COLOR0\">"
|
||||
"%s"
|
||||
"</th>"
|
||||
"</tr>"
|
||||
"<tr>"
|
||||
"<th rowspan=\"2\" class=\"CENTER_TOP COLOR0\">"
|
||||
"</tr>",
|
||||
Txt_Degree,
|
||||
Txt_Course,
|
||||
Txt_Institutional_BR_code,
|
||||
Txt_Web_page_of_the_course,
|
||||
Txt_Indicators);
|
||||
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<th rowspan=\"2\" class=\"CENTER_TOP COLOR0\">"
|
||||
"%s"
|
||||
"</th>"
|
||||
"<th colspan=\"2\" class=\"CENTER_TOP COLOR0\">"
|
||||
|
@ -789,9 +795,16 @@ static void Ind_ShowTableOfCoursesWithIndicators (Ind_IndicatorsLayout_t Indicat
|
|||
"<th colspan=\"2\" class=\"CENTER_TOP COLOR0\">"
|
||||
"(E) %s"
|
||||
"</th>"
|
||||
"</tr>"
|
||||
"<tr>"
|
||||
"<th class=\"CENTER_MIDDLE COLOR0\">"
|
||||
"</tr>",
|
||||
Txt_No_INDEX,
|
||||
Txt_Syllabus_of_the_course,
|
||||
Txt_Guided_academic_assignments,
|
||||
Txt_Online_tutoring,
|
||||
Txt_Materials,
|
||||
Txt_Assessment_criteria);
|
||||
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<th class=\"CENTER_MIDDLE COLOR0\">"
|
||||
"%s"
|
||||
"</th>"
|
||||
"<th class=\"CENTER_MIDDLE COLOR0\">"
|
||||
|
@ -822,19 +835,6 @@ static void Ind_ShowTableOfCoursesWithIndicators (Ind_IndicatorsLayout_t Indicat
|
|||
"%s"
|
||||
"</th>"
|
||||
"</tr>",
|
||||
Txt_Degree,
|
||||
Txt_Course,
|
||||
Txt_Institutional_BR_code,
|
||||
Txt_Web_page_of_the_course,
|
||||
Txt_Indicators,
|
||||
|
||||
Txt_No_INDEX,
|
||||
Txt_Syllabus_of_the_course,
|
||||
Txt_Guided_academic_assignments,
|
||||
Txt_Online_tutoring,
|
||||
Txt_Materials,
|
||||
Txt_Assessment_criteria,
|
||||
|
||||
Txt_YES,
|
||||
Txt_NO,
|
||||
|
||||
|
@ -851,8 +851,8 @@ static void Ind_ShowTableOfCoursesWithIndicators (Ind_IndicatorsLayout_t Indicat
|
|||
Txt_NO);
|
||||
break;
|
||||
case Ind_INDICATORS_FULL:
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<th rowspan=\"3\" class=\"LEFT_MIDDLE COLOR0\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<th rowspan=\"3\" class=\"LEFT_MIDDLE COLOR0\">"
|
||||
"%s"
|
||||
"</th>"
|
||||
"<th rowspan=\"3\" class=\"LEFT_MIDDLE COLOR0\">"
|
||||
|
@ -873,9 +873,17 @@ static void Ind_ShowTableOfCoursesWithIndicators (Ind_IndicatorsLayout_t Indicat
|
|||
"<th colspan=\"24\" class=\"CENTER_MIDDLE COLOR0\">"
|
||||
"%s"
|
||||
"</th>"
|
||||
"</tr>"
|
||||
"<tr>"
|
||||
"<th rowspan=\"2\" class=\"CENTER_TOP COLOR0\">"
|
||||
"</tr>",
|
||||
Txt_Degree,
|
||||
Txt_Course,
|
||||
Txt_Institutional_BR_code,
|
||||
Txt_Web_page_of_the_course,
|
||||
Txt_ROLES_PLURAL_BRIEF_Abc[Rol_TCH],
|
||||
Txt_ROLES_PLURAL_BRIEF_Abc[Rol_STD],
|
||||
Txt_Indicators);
|
||||
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<th rowspan=\"2\" class=\"CENTER_TOP COLOR0\">"
|
||||
"%s"
|
||||
"</th>"
|
||||
"<th colspan=\"5\" class=\"CENTER_TOP COLOR0\">"
|
||||
|
@ -893,9 +901,16 @@ static void Ind_ShowTableOfCoursesWithIndicators (Ind_IndicatorsLayout_t Indicat
|
|||
"<th colspan=\"4\" class=\"CENTER_TOP COLOR0\">"
|
||||
"(E) %s"
|
||||
"</th>"
|
||||
"</tr>"
|
||||
"<tr>"
|
||||
"<th class=\"CENTER_MIDDLE COLOR0\">"
|
||||
"</tr>",
|
||||
Txt_No_INDEX,
|
||||
Txt_Syllabus_of_the_course,
|
||||
Txt_Guided_academic_assignments,
|
||||
Txt_Online_tutoring,
|
||||
Txt_Materials,
|
||||
Txt_Assessment_criteria);
|
||||
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<th class=\"CENTER_MIDDLE COLOR0\">"
|
||||
"%s"
|
||||
"</th>"
|
||||
"<th class=\"CENTER_MIDDLE COLOR0\">"
|
||||
|
@ -965,21 +980,6 @@ static void Ind_ShowTableOfCoursesWithIndicators (Ind_IndicatorsLayout_t Indicat
|
|||
"%s"
|
||||
"</th>"
|
||||
"</tr>",
|
||||
Txt_Degree,
|
||||
Txt_Course,
|
||||
Txt_Institutional_BR_code,
|
||||
Txt_Web_page_of_the_course,
|
||||
Txt_ROLES_PLURAL_BRIEF_Abc[Rol_TCH],
|
||||
Txt_ROLES_PLURAL_BRIEF_Abc[Rol_STD],
|
||||
Txt_Indicators,
|
||||
|
||||
Txt_No_INDEX,
|
||||
Txt_Syllabus_of_the_course,
|
||||
Txt_Guided_academic_assignments,
|
||||
Txt_Online_tutoring,
|
||||
Txt_Materials,
|
||||
Txt_Assessment_criteria,
|
||||
|
||||
Txt_YES,
|
||||
Txt_NO,
|
||||
Txt_INFO_TITLE[Inf_LECTURES],
|
||||
|
@ -1039,8 +1039,8 @@ static void Ind_ShowTableOfCoursesWithIndicators (Ind_IndicatorsLayout_t Indicat
|
|||
switch (IndicatorsLayout)
|
||||
{
|
||||
case Ind_INDICATORS_BRIEF:
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"%s LEFT_MIDDLE COLOR%u\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"%s LEFT_MIDDLE COLOR%u\">"
|
||||
"%s"
|
||||
"</td>"
|
||||
"<td class=\"%s LEFT_MIDDLE COLOR%u\">"
|
||||
|
@ -1159,8 +1159,8 @@ static void Ind_ShowTableOfCoursesWithIndicators (Ind_IndicatorsLayout_t Indicat
|
|||
NumTchs = Usr_GetNumUsrsInCrs (Rol_NET,CrsCod) + // Non-editing teachers
|
||||
Usr_GetNumUsrsInCrs (Rol_TCH,CrsCod); // Teachers
|
||||
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"%s LEFT_MIDDLE COLOR%u\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"%s LEFT_MIDDLE COLOR%u\">"
|
||||
"%s"
|
||||
"</td>"
|
||||
"<td class=\"%s LEFT_MIDDLE COLOR%u\">"
|
||||
|
|
|
@ -41,6 +41,7 @@
|
|||
#include "swad_info.h"
|
||||
#include "swad_parameter.h"
|
||||
#include "swad_string.h"
|
||||
#include "swad_table.h"
|
||||
|
||||
/*****************************************************************************/
|
||||
/************** External global variables from others modules ****************/
|
||||
|
@ -1134,8 +1135,8 @@ void Inf_FormsToSelSendInfo (void)
|
|||
InfoSrc++)
|
||||
{
|
||||
/* Select info source */
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"DAT LEFT_TOP");
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"DAT LEFT_TOP");
|
||||
if (InfoSrc == InfoSrcSelected)
|
||||
fprintf (Gbl.F.Out," LIGHT_BLUE");
|
||||
fprintf (Gbl.F.Out,"\">");
|
||||
|
|
|
@ -173,8 +173,8 @@ void Ins_SeeInsWithPendingCtrs (void)
|
|||
Hlp_SYSTEM_Hierarchy_pending,Box_NOT_CLOSABLE,2);
|
||||
|
||||
/***** Write heading *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<th class=\"LEFT_MIDDLE\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<th class=\"LEFT_MIDDLE\">"
|
||||
"%s"
|
||||
"</th>"
|
||||
"<th class=\"RIGHT_MIDDLE\">"
|
||||
|
@ -201,8 +201,8 @@ void Ins_SeeInsWithPendingCtrs (void)
|
|||
Ins_GetDataOfInstitutionByCod (&Ins,Ins_GET_BASIC_DATA);
|
||||
|
||||
/* Institution logo and name */
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"LEFT_MIDDLE %s\">",
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"LEFT_MIDDLE %s\">",
|
||||
BgColor);
|
||||
Ins_DrawInstitutionLogoAndNameWithLink (&Ins,ActSeeCtr,
|
||||
"DAT_NOBR","CENTER_MIDDLE");
|
||||
|
@ -356,8 +356,8 @@ static void Ins_Configuration (bool PrintView)
|
|||
Tbl_StartTableWidePadding (2);
|
||||
|
||||
/***** Country *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"RIGHT_MIDDLE\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"RIGHT_MIDDLE\">"
|
||||
"<label for=\"OthCtyCod\" class=\"%s\">%s:</label>"
|
||||
"</td>"
|
||||
"<td class=\"DAT LEFT_MIDDLE\">",
|
||||
|
@ -398,8 +398,8 @@ static void Ins_Configuration (bool PrintView)
|
|||
"</tr>");
|
||||
|
||||
/***** Institution full name *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"RIGHT_MIDDLE\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"RIGHT_MIDDLE\">"
|
||||
"<label for=\"FullName\" class=\"%s\">%s:</label>"
|
||||
"</td>"
|
||||
"<td class=\"DAT_N LEFT_MIDDLE\">",
|
||||
|
@ -427,8 +427,8 @@ static void Ins_Configuration (bool PrintView)
|
|||
"</tr>");
|
||||
|
||||
/***** Institution short name *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"RIGHT_MIDDLE\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"RIGHT_MIDDLE\">"
|
||||
"<label for=\"ShortName\" class=\"%s\">%s:</label>"
|
||||
"</td>"
|
||||
"<td class=\"DAT_N LEFT_MIDDLE\">",
|
||||
|
@ -456,8 +456,8 @@ static void Ins_Configuration (bool PrintView)
|
|||
"</tr>");
|
||||
|
||||
/***** Institution WWW *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"RIGHT_MIDDLE\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"RIGHT_MIDDLE\">"
|
||||
"<label for=\"WWW\" class=\"%s\">%s:</label>"
|
||||
"</td>"
|
||||
"<td class=\"DAT LEFT_MIDDLE\">",
|
||||
|
@ -491,8 +491,8 @@ static void Ins_Configuration (bool PrintView)
|
|||
"</tr>");
|
||||
|
||||
/***** Shortcut to the institution *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"%s RIGHT_MIDDLE\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"%s RIGHT_MIDDLE\">"
|
||||
"%s:"
|
||||
"</td>"
|
||||
"<td class=\"LEFT_MIDDLE\">"
|
||||
|
@ -513,8 +513,8 @@ static void Ins_Configuration (bool PrintView)
|
|||
if (PrintView)
|
||||
{
|
||||
/***** QR code with link to the institution *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"%s RIGHT_MIDDLE\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"%s RIGHT_MIDDLE\">"
|
||||
"%s:"
|
||||
"</td>"
|
||||
"<td class=\"LEFT_MIDDLE\">",
|
||||
|
@ -527,8 +527,8 @@ static void Ins_Configuration (bool PrintView)
|
|||
else
|
||||
{
|
||||
/***** Number of users who claim to belong to this institution *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"%s RIGHT_MIDDLE\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"%s RIGHT_MIDDLE\">"
|
||||
"%s:"
|
||||
"</td>"
|
||||
"<td class=\"DAT LEFT_MIDDLE\">"
|
||||
|
@ -540,8 +540,8 @@ static void Ins_Configuration (bool PrintView)
|
|||
Usr_GetNumUsrsWhoClaimToBelongToIns (Gbl.Hierarchy.Ins.InsCod));
|
||||
|
||||
/***** Number of centres *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"%s RIGHT_MIDDLE\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"%s RIGHT_MIDDLE\">"
|
||||
"%s:"
|
||||
"</td>"
|
||||
"<td class=\"LEFT_MIDDLE\">",
|
||||
|
@ -563,8 +563,8 @@ static void Ins_Configuration (bool PrintView)
|
|||
"</tr>");
|
||||
|
||||
/***** Number of degrees *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"%s RIGHT_MIDDLE\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"%s RIGHT_MIDDLE\">"
|
||||
"%s:"
|
||||
"</td>"
|
||||
"<td class=\"DAT LEFT_MIDDLE\">"
|
||||
|
@ -576,8 +576,8 @@ static void Ins_Configuration (bool PrintView)
|
|||
Deg_GetNumDegsInIns (Gbl.Hierarchy.Ins.InsCod));
|
||||
|
||||
/***** Number of courses *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"%s RIGHT_MIDDLE\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"%s RIGHT_MIDDLE\">"
|
||||
"%s:"
|
||||
"</td>"
|
||||
"<td class=\"DAT LEFT_MIDDLE\">"
|
||||
|
@ -589,8 +589,8 @@ static void Ins_Configuration (bool PrintView)
|
|||
Crs_GetNumCrssInIns (Gbl.Hierarchy.Ins.InsCod));
|
||||
|
||||
/***** Number of departments *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"%s RIGHT_MIDDLE\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"%s RIGHT_MIDDLE\">"
|
||||
"%s:"
|
||||
"</td>"
|
||||
"<td class=\"DAT LEFT_MIDDLE\">"
|
||||
|
@ -642,8 +642,8 @@ static void Ins_ShowNumUsrsInCrssOfIns (Rol_Role_t Role)
|
|||
extern const char *Txt_Users_in_courses;
|
||||
extern const char *Txt_ROLES_PLURAL_Abc[Rol_NUM_ROLES][Usr_NUM_SEXS];
|
||||
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"%s RIGHT_MIDDLE\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"%s RIGHT_MIDDLE\">"
|
||||
"%s:"
|
||||
"</td>"
|
||||
"<td class=\"DAT LEFT_MIDDLE\">"
|
||||
|
@ -790,8 +790,8 @@ static void Ins_ListOneInstitutionForSeeing (struct Instit *Ins,unsigned NumIns)
|
|||
Gbl.ColorRows[Gbl.RowEvenOdd];
|
||||
|
||||
/***** Number of institution in this list *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"%s RIGHT_MIDDLE %s\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"%s RIGHT_MIDDLE %s\">"
|
||||
"%u"
|
||||
"</td>",
|
||||
TxtClassNormal,BgColor,
|
||||
|
@ -867,8 +867,8 @@ static void Ins_PutHeadInstitutionsForSeeing (bool OrderSelectable)
|
|||
extern const char *Txt_Departments_ABBREVIATION;
|
||||
Ins_Order_t Order;
|
||||
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<th></th>");
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<th></th>");
|
||||
for (Order = Ins_ORDER_BY_INSTITUTION;
|
||||
Order <= Ins_ORDER_BY_NUM_USRS;
|
||||
Order++)
|
||||
|
@ -1483,8 +1483,8 @@ static void Ins_ListInstitutionsForEdition (void)
|
|||
ICanEdit = Ins_CheckIfICanEdit (Ins);
|
||||
|
||||
/* Put icon to remove institution */
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"BM\">");
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"BM\">");
|
||||
if (Ins->Ctrs.Num ||
|
||||
Ins->NumUsrsWhoClaimToBelongToIns ||
|
||||
Ins->NumUsrs || // Institution has centres or users ==> deletion forbidden
|
||||
|
@ -2240,8 +2240,8 @@ static void Ins_PutFormToCreateInstitution (void)
|
|||
Ins_PutHeadInstitutionsForEdition ();
|
||||
|
||||
/***** Column to remove institution, disabled here *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"BM\"></td>");
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"BM\"></td>");
|
||||
|
||||
/***** Institution code *****/
|
||||
fprintf (Gbl.F.Out,"<td class=\"CODE\"></td>");
|
||||
|
@ -2325,8 +2325,8 @@ static void Ins_PutHeadInstitutionsForEdition (void)
|
|||
extern const char *Txt_ROLES_PLURAL_BRIEF_Abc[Rol_NUM_ROLES];
|
||||
extern const char *Txt_Requester;
|
||||
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<th></th>"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<th></th>"
|
||||
"<th class=\"RIGHT_MIDDLE\">"
|
||||
"%s"
|
||||
"</th>"
|
||||
|
|
|
@ -1705,8 +1705,8 @@ void Lay_AdvertisementMobile (void)
|
|||
NULL,Box_NOT_CLOSABLE,8);
|
||||
|
||||
/***** Show advertisement *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"DAT CENTER_MIDDLE\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"DAT CENTER_MIDDLE\">"
|
||||
"<a href=\"https://play.google.com/store/apps/details?id=es.ugr.swad.swadroid\""
|
||||
" class=\"DAT\">"
|
||||
"%s<br /><br />"
|
||||
|
|
12
swad_link.c
12
swad_link.c
|
@ -423,8 +423,8 @@ static void Lnk_ListLinksForEdition (void)
|
|||
Lnk = &Gbl.Links.Lst[NumLnk];
|
||||
|
||||
/* Put icon to remove link */
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"BM\">");
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"BM\">");
|
||||
Frm_StartForm (ActRemLnk);
|
||||
Lnk_PutParamLnkCod (Lnk->LnkCod);
|
||||
Ico_PutIconRemove ();
|
||||
|
@ -746,8 +746,8 @@ static void Lnk_PutFormToCreateLink (void)
|
|||
Lnk_PutHeadLinks ();
|
||||
|
||||
/***** Link code *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"BM\"></td>"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"BM\"></td>"
|
||||
"<td></td>");
|
||||
|
||||
/***** Link short name *****/
|
||||
|
@ -796,8 +796,8 @@ static void Lnk_PutHeadLinks (void)
|
|||
extern const char *Txt_Full_name;
|
||||
extern const char *Txt_WWW;
|
||||
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<th class=\"BM\"></th>"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<th class=\"BM\"></th>"
|
||||
"<th class=\"RIGHT_MIDDLE\">"
|
||||
"%s"
|
||||
"</th>"
|
||||
|
|
32
swad_mail.c
32
swad_mail.c
|
@ -152,9 +152,10 @@ void Mai_SeeMailDomains (void)
|
|||
for (NumMai = 0;
|
||||
NumMai < Gbl.Mails.Num;
|
||||
NumMai++)
|
||||
{
|
||||
/* Write data of this mail domain */
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"DAT LEFT_TOP\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"DAT LEFT_TOP\">"
|
||||
"%s"
|
||||
"</td>"
|
||||
"<td class=\"DAT LEFT_TOP\">"
|
||||
|
@ -167,6 +168,7 @@ void Mai_SeeMailDomains (void)
|
|||
Gbl.Mails.Lst[NumMai].Domain,
|
||||
Gbl.Mails.Lst[NumMai].Info,
|
||||
Gbl.Mails.Lst[NumMai].NumUsrs);
|
||||
}
|
||||
|
||||
/***** End table and box *****/
|
||||
Box_EndBoxTable ();
|
||||
|
@ -483,8 +485,8 @@ static void Mai_ListMailDomainsForEdition (void)
|
|||
Mai = &Gbl.Mails.Lst[NumMai];
|
||||
|
||||
/* Put icon to remove mail */
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"BM\">");
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"BM\">");
|
||||
Frm_StartForm (ActRemMai);
|
||||
Mai_PutParamMaiCod (Mai->MaiCod);
|
||||
Ico_PutIconRemove ();
|
||||
|
@ -749,8 +751,8 @@ static void Mai_PutFormToCreateMailDomain (void)
|
|||
Hlp_START_Domains_edit,Box_NOT_CLOSABLE,2);
|
||||
|
||||
/***** Write heading *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<th class=\"LEFT_MIDDLE\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<th class=\"LEFT_MIDDLE\">"
|
||||
"%s"
|
||||
"</th>"
|
||||
"<th class=\"LEFT_MIDDLE\">"
|
||||
|
@ -761,8 +763,8 @@ static void Mai_PutFormToCreateMailDomain (void)
|
|||
Txt_EMAIL_DOMAIN_ORDER[Mai_ORDER_BY_INFO ]);
|
||||
|
||||
/***** Mail domain *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"CENTER_MIDDLE\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"CENTER_MIDDLE\">"
|
||||
"<input type=\"text\" name=\"Domain\""
|
||||
" size=\"15\" maxlength=\"%u\" value=\"%s\""
|
||||
" required=\"required\" />"
|
||||
|
@ -796,8 +798,8 @@ static void Mai_PutHeadMailDomains (void)
|
|||
extern const char *Txt_Code;
|
||||
extern const char *Txt_EMAIL_DOMAIN_ORDER[3];
|
||||
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<th class=\"BM\"></th>"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<th class=\"BM\"></th>"
|
||||
"<th class=\"RIGHT_MIDDLE\">"
|
||||
"%s"
|
||||
"</th>"
|
||||
|
@ -1270,9 +1272,10 @@ static void Mai_ShowFormChangeUsrEmail (const struct UsrData *UsrDat,bool ItsMe,
|
|||
Confirmed = (row[1][0] == 'Y');
|
||||
|
||||
if (NumEmail == 1)
|
||||
{
|
||||
/* The first mail is the current one */
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"REC_C1_BOT RIGHT_TOP\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"REC_C1_BOT RIGHT_TOP\">"
|
||||
"<label for=\"Email\" class=\"%s\">"
|
||||
"%s:"
|
||||
"</label>"
|
||||
|
@ -1280,6 +1283,7 @@ static void Mai_ShowFormChangeUsrEmail (const struct UsrData *UsrDat,bool ItsMe,
|
|||
"<td class=\"REC_C2_BOT LEFT_TOP USR_ID\">",
|
||||
The_ClassFormInBox[Gbl.Prefs.Theme],
|
||||
Txt_Current_email);
|
||||
}
|
||||
else // NumEmail >= 2
|
||||
{
|
||||
Tbl_StartRow ();
|
||||
|
@ -1375,8 +1379,8 @@ static void Mai_ShowFormChangeUsrEmail (const struct UsrData *UsrDat,bool ItsMe,
|
|||
}
|
||||
|
||||
/***** Form to enter new email *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"REC_C1_BOT RIGHT_TOP\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"REC_C1_BOT RIGHT_TOP\">"
|
||||
"<label for=\"NewEmail\" class=\"%s\">%s:</label>"
|
||||
"</td>"
|
||||
"<td class=\"REC_C2_BOT LEFT_TOP DAT\">",
|
||||
|
|
12
swad_match.c
12
swad_match.c
|
@ -1194,8 +1194,8 @@ static void Mch_PutFormNewMatch (struct Game *Game)
|
|||
Hlp_ASSESSMENT_Games_matches,Box_NOT_CLOSABLE,2);
|
||||
|
||||
/***** Match title *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"RIGHT_MIDDLE\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"RIGHT_MIDDLE\">"
|
||||
"<label for=\"Title\" class=\"%s\">%s:</label>"
|
||||
"</td>"
|
||||
"<td class=\"LEFT_MIDDLE\">"
|
||||
|
@ -1249,8 +1249,8 @@ static void Mch_ShowLstGrpsToCreateMatch (void)
|
|||
if (Gbl.Crs.Grps.GrpTypes.Num)
|
||||
{
|
||||
/***** Start box and table *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"%s RIGHT_TOP\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"%s RIGHT_TOP\">"
|
||||
"%s:"
|
||||
"</td>"
|
||||
"<td class=\"LEFT_TOP\">",
|
||||
|
@ -1260,8 +1260,8 @@ static void Mch_ShowLstGrpsToCreateMatch (void)
|
|||
NULL,Box_NOT_CLOSABLE,0);
|
||||
|
||||
/***** First row: checkbox to select the whole course *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td colspan=\"7\" class=\"DAT LEFT_MIDDLE\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td colspan=\"7\" class=\"DAT LEFT_MIDDLE\">"
|
||||
"<label>"
|
||||
"<input type=\"checkbox\""
|
||||
" id=\"WholeCrs\" name=\"WholeCrs\" value=\"Y\""
|
||||
|
|
|
@ -205,8 +205,8 @@ void McR_SelUsrsToViewUsrsMchResults (void)
|
|||
|
||||
/***** Put list of users to select some of them *****/
|
||||
Tbl_StartTableCenterPadding (2);
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"%s RIGHT_TOP\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"%s RIGHT_TOP\">"
|
||||
"%s:"
|
||||
"</td>"
|
||||
"<td colspan=\"2\" class=\"%s LEFT_TOP\">",
|
||||
|
@ -325,8 +325,8 @@ static void McR_ShowHeaderMchResults (Usr_MeOrOther_t MeOrOther)
|
|||
extern const char *Txt_Score;
|
||||
extern const char *Txt_out_of_PART_OF_A_SCORE;
|
||||
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<th colspan=\"2\" class=\"CENTER_TOP\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<th colspan=\"2\" class=\"CENTER_TOP\">"
|
||||
"%s"
|
||||
"</th>"
|
||||
"<th class=\"LEFT_TOP\">"
|
||||
|
@ -783,8 +783,8 @@ void McR_ShowOneMchResult (void)
|
|||
Act_NoPermissionExit ();
|
||||
|
||||
/* User */
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"DAT_N RIGHT_TOP\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"DAT_N RIGHT_TOP\">"
|
||||
"%s:"
|
||||
"</td>"
|
||||
"<td class=\"DAT LEFT_TOP\">",
|
||||
|
@ -810,8 +810,9 @@ void McR_ShowOneMchResult (void)
|
|||
for (StartEndTime = (Dat_StartEndTime_t) 0;
|
||||
StartEndTime <= (Dat_StartEndTime_t) (Dat_NUM_START_END_TIME - 1);
|
||||
StartEndTime++)
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"DAT_N RIGHT_TOP\">"
|
||||
{
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"DAT_N RIGHT_TOP\">"
|
||||
"%s:"
|
||||
"</td>"
|
||||
"<td id=\"match_%u\" class=\"DAT LEFT_TOP\">"
|
||||
|
@ -826,10 +827,11 @@ void McR_ShowOneMchResult (void)
|
|||
(unsigned) StartEndTime,
|
||||
TimeUTC[StartEndTime],
|
||||
(unsigned) Gbl.Prefs.DateFormat,Txt_Today);
|
||||
}
|
||||
|
||||
/* Number of questions */
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"DAT_N RIGHT_TOP\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"DAT_N RIGHT_TOP\">"
|
||||
"%s:"
|
||||
"</td>"
|
||||
"<td class=\"DAT LEFT_TOP\">"
|
||||
|
@ -840,8 +842,8 @@ void McR_ShowOneMchResult (void)
|
|||
NumQsts,NumQstsNotBlank,Txt_non_blank_QUESTIONS);
|
||||
|
||||
/* Score */
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"DAT_N RIGHT_TOP\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"DAT_N RIGHT_TOP\">"
|
||||
"%s:"
|
||||
"</td>"
|
||||
"<td class=\"DAT LEFT_TOP\">",
|
||||
|
@ -858,8 +860,8 @@ void McR_ShowOneMchResult (void)
|
|||
Txt_out_of_PART_OF_A_SCORE,Tst_SCORE_MAX);
|
||||
|
||||
/* Tags present in this result */
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"DAT_N RIGHT_TOP\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"DAT_N RIGHT_TOP\">"
|
||||
"%s:"
|
||||
"</td>"
|
||||
"<td class=\"DAT LEFT_TOP\">",
|
||||
|
|
|
@ -290,8 +290,8 @@ static void Msg_PutFormMsgUsrs (char Content[Cns_MAX_BYTES_LONG_TEXT + 1])
|
|||
Tbl_StartTableCenterPadding (2);
|
||||
|
||||
/***** "To:" section (recipients) *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"%s RIGHT_TOP\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"%s RIGHT_TOP\">"
|
||||
"%s:"
|
||||
"</td>"
|
||||
"<td class=\"LEFT_TOP\">",
|
||||
|
@ -479,8 +479,8 @@ static void Msg_WriteFormUsrsIDsOrNicksOtherRecipients (void)
|
|||
Colspan = 1;
|
||||
|
||||
/***** Title *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<th");
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<th");
|
||||
if (Colspan > 1)
|
||||
fprintf (Gbl.F.Out," colspan=\"%u\"",Colspan);
|
||||
fprintf (Gbl.F.Out," class=\"LEFT_MIDDLE LIGHT_BLUE\">"
|
||||
|
@ -491,8 +491,8 @@ static void Msg_WriteFormUsrsIDsOrNicksOtherRecipients (void)
|
|||
Txt_Recipients);
|
||||
|
||||
/***** Textarea with users' @nicknames, emails or IDs *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td");
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td");
|
||||
if (Colspan > 1)
|
||||
fprintf (Gbl.F.Out," colspan=\"%u\"",Colspan);
|
||||
fprintf (Gbl.F.Out," class=\"LEFT_MIDDLE\">"
|
||||
|
@ -532,8 +532,8 @@ static void Msg_WriteFormSubjectAndContentMsgToUsrs (char Content[Cns_MAX_BYTES_
|
|||
MsgCod = Msg_GetParamMsgCod ();
|
||||
|
||||
/***** Message subject *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"RIGHT_TOP\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"RIGHT_TOP\">"
|
||||
"<label for=\"MsgSubject\" class=\"%s\">"
|
||||
"%s:"
|
||||
"</label>"
|
||||
|
@ -582,8 +582,8 @@ static void Msg_WriteFormSubjectAndContentMsgToUsrs (char Content[Cns_MAX_BYTES_
|
|||
Gbl.Msg.Subject);
|
||||
|
||||
/***** Message content *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"RIGHT_TOP\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"RIGHT_TOP\">"
|
||||
"<label for=\"MsgContent\" class=\"%s\">"
|
||||
"%s:"
|
||||
"</label>"
|
||||
|
@ -614,8 +614,8 @@ static void Msg_WriteFormSubjectAndContentMsgToUsrs (char Content[Cns_MAX_BYTES_
|
|||
Gbl.Msg.Subject);
|
||||
|
||||
/***** Message content *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"RIGHT_TOP\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"RIGHT_TOP\">"
|
||||
"<label for=\"MsgContent\" class=\"%s\">"
|
||||
"%s:"
|
||||
"</label>"
|
||||
|
@ -2645,8 +2645,8 @@ void Msg_ShowFormToFilterMsgs (void)
|
|||
Tbl_StartTableCenterPadding (2);
|
||||
|
||||
/***** Filter authors/recipients *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"LEFT_MIDDLE\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"LEFT_MIDDLE\">"
|
||||
"<label class=\"%s\">"
|
||||
"%s: "
|
||||
"<input type=\"search\" name=\"FilterFromTo\""
|
||||
|
@ -2951,8 +2951,8 @@ static void Msg_ShowASentOrReceivedMessage (long MsgNum,long MsgCod)
|
|||
break;
|
||||
}
|
||||
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"CONTEXT_COL %s\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"CONTEXT_COL %s\">"
|
||||
"<img src=\"%s/%s\""
|
||||
" alt=\"%s\" title=\"%s\""
|
||||
" class=\"ICO16x16\" />",
|
||||
|
@ -2997,20 +2997,20 @@ static void Msg_ShowASentOrReceivedMessage (long MsgNum,long MsgCod)
|
|||
|
||||
if (Expanded)
|
||||
{
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td rowspan=\"3\" colspan=\"2\" class=\"LEFT_TOP\">");
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td rowspan=\"3\" colspan=\"2\" class=\"LEFT_TOP\">");
|
||||
Tbl_StartTablePadding (2);
|
||||
|
||||
/***** Write course origin of message *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"LEFT_MIDDLE\">");
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"LEFT_MIDDLE\">");
|
||||
FromThisCrs = Msg_WriteCrsOrgMsg (CrsCod);
|
||||
fprintf (Gbl.F.Out,"</td>"
|
||||
"</tr>");
|
||||
|
||||
/***** Form to reply message *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"LEFT_MIDDLE\">");
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"LEFT_MIDDLE\">");
|
||||
if (Gbl.Msg.TypeOfMessages == Msg_MESSAGES_RECEIVED &&
|
||||
Gbl.Usrs.Me.Role.Logged >= Rol_USR)
|
||||
// Guests (users without courses) can read messages but not reply them
|
||||
|
@ -3032,8 +3032,8 @@ static void Msg_ShowASentOrReceivedMessage (long MsgNum,long MsgCod)
|
|||
"</tr>");
|
||||
|
||||
/***** Write "To:" *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"RIGHT_TOP MSG_TIT\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"RIGHT_TOP MSG_TIT\">"
|
||||
"%s: "
|
||||
"</td>"
|
||||
"<td colspan=\"2\" class=\"LEFT_TOP\">",
|
||||
|
@ -3043,8 +3043,8 @@ static void Msg_ShowASentOrReceivedMessage (long MsgNum,long MsgCod)
|
|||
"</tr>");
|
||||
|
||||
/***** Write "Content:" *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"RIGHT_TOP MSG_TIT\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"RIGHT_TOP MSG_TIT\">"
|
||||
"%s: "
|
||||
"</td>",
|
||||
Txt_MSG_Content);
|
||||
|
@ -3194,8 +3194,8 @@ void Msg_WriteMsgAuthor (struct UsrData *UsrDat,bool Enabled,const char *BgColor
|
|||
Tbl_StartTablePadding (2);
|
||||
|
||||
/***** Start first column *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"CENTER_TOP");
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"CENTER_TOP");
|
||||
if (BgColor)
|
||||
fprintf (Gbl.F.Out," %s",BgColor);
|
||||
fprintf (Gbl.F.Out,"\" style=\"width:30px;\">");
|
||||
|
@ -3350,8 +3350,8 @@ static void Msg_WriteMsgFrom (struct UsrData *UsrDat,bool Deleted)
|
|||
|
||||
/***** Put an icon to show if user has read the message *****/
|
||||
Tbl_StartTable ();
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"LEFT_MIDDLE\" style=\"width:20px;\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"LEFT_MIDDLE\" style=\"width:20px;\">"
|
||||
"<img src=\"%s/%s\""
|
||||
" alt=\"%s\" title=\"%s\""
|
||||
" class=\"ICO16x16\" />"
|
||||
|
@ -3511,8 +3511,8 @@ static void Msg_WriteMsgTo (long MsgCod)
|
|||
Txt_MSG_Open) :
|
||||
(Deleted ? Txt_MSG_Deleted_without_opening :
|
||||
Txt_MSG_Unopened);
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"LEFT_MIDDLE\" style=\"width:20px;\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"LEFT_MIDDLE\" style=\"width:20px;\">"
|
||||
"<img src=\"%s/%s\""
|
||||
" alt=\"%s\" title=\"%s\""
|
||||
" class=\"ICO16x16\" />"
|
||||
|
@ -3547,9 +3547,10 @@ static void Msg_WriteMsgTo (long MsgCod)
|
|||
|
||||
/***** If any recipients are unknown *****/
|
||||
if ((NumRecipientsUnknown = NumRecipientsTotal - NumRecipientsKnown))
|
||||
{
|
||||
/***** Start form to show all the users *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td colspan=\"3\" class=\"AUTHOR_TXT LEFT_MIDDLE\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td colspan=\"3\" class=\"AUTHOR_TXT LEFT_MIDDLE\">"
|
||||
"[%u %s]"
|
||||
"</td>"
|
||||
"</tr>",
|
||||
|
@ -3557,13 +3558,14 @@ static void Msg_WriteMsgTo (long MsgCod)
|
|||
(NumRecipientsUnknown == 1) ?
|
||||
Txt_unknown_recipient :
|
||||
Txt_unknown_recipients);
|
||||
}
|
||||
|
||||
/***** If any known recipient is not listed *****/
|
||||
if (NumRecipientsToShow < NumRecipientsKnown)
|
||||
{
|
||||
/***** Start form to show all the users *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td colspan=\"3\" class=\"AUTHOR_TXT LEFT_MIDDLE\">");
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td colspan=\"3\" class=\"AUTHOR_TXT LEFT_MIDDLE\">");
|
||||
Frm_StartForm (ActionSee[Gbl.Msg.TypeOfMessages]);
|
||||
Gbl.Msg.MsgCod = MsgCod; // Message to be expanded with all recipients visible
|
||||
Msg_PutHiddenParamsOneMsg ();
|
||||
|
@ -3849,8 +3851,8 @@ void Msg_ListBannedUsrs (void)
|
|||
if (Usr_ChkUsrCodAndGetAllUsrDataFromUsrCod (&UsrDat,Usr_DONT_GET_PREFS))
|
||||
{
|
||||
/* Put form to unban user */
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"BM\">");
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"BM\">");
|
||||
Frm_StartForm (ActUnbUsrLst);
|
||||
Usr_PutParamUsrCodEncrypted (UsrDat.EncryptedUsrCod);
|
||||
Ico_PutIconLink ("lock.svg",Txt_Sender_banned_click_to_unban_him);
|
||||
|
|
|
@ -323,9 +323,9 @@ void Net_ShowFormMyWebsAndSocialNets (void)
|
|||
DB_FreeMySQLResult (&mysql_res);
|
||||
|
||||
/***** Row for this web / social network *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
Tbl_StartRow ();
|
||||
|
||||
"<td class=\"REC_C1_BOT LEFT_MIDDLE\">"
|
||||
fprintf (Gbl.F.Out,"<td class=\"REC_C1_BOT LEFT_MIDDLE\">"
|
||||
"<label for=\"URL%u\" class=\"%s\">"
|
||||
"<img src=\"%s/%s\""
|
||||
" alt=\"%s\" title=\"%s\""
|
||||
|
@ -555,8 +555,8 @@ void Net_ShowWebAndSocialNetworksStats (void)
|
|||
Hlp_ANALYTICS_Figures_webs_social_networks,Box_NOT_CLOSABLE,2);
|
||||
|
||||
/***** Write heading *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<th class=\"LEFT_MIDDLE\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<th class=\"LEFT_MIDDLE\">"
|
||||
"%s"
|
||||
"</th>"
|
||||
"<th class=\"RIGHT_MIDDLE\">"
|
||||
|
@ -592,8 +592,8 @@ void Net_ShowWebAndSocialNetworksStats (void)
|
|||
if (sscanf (row[1],"%u",&NumUsrs) != 1)
|
||||
Lay_ShowErrorAndExit ("Error when getting number of files.");
|
||||
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"DAT LEFT_MIDDLE\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"DAT LEFT_MIDDLE\">"
|
||||
"<img src=\"%s/%s\""
|
||||
" alt=\"%s\" title=\"%s\""
|
||||
" class=\"CONTEXT_ICO_16x16\""
|
||||
|
|
|
@ -269,9 +269,10 @@ static void Nck_ShowFormChangeUsrNickname (const struct UsrData *UsrDat,bool Its
|
|||
row = mysql_fetch_row (mysql_res);
|
||||
|
||||
if (NumNick == 1)
|
||||
{
|
||||
/* The first nickname is the current one */
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"REC_C1_BOT RIGHT_TOP\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"REC_C1_BOT RIGHT_TOP\">"
|
||||
"<label for=\"Nick\" class=\"%s\">"
|
||||
"%s:"
|
||||
"</label>"
|
||||
|
@ -279,6 +280,7 @@ static void Nck_ShowFormChangeUsrNickname (const struct UsrData *UsrDat,bool Its
|
|||
"<td class=\"REC_C2_BOT LEFT_TOP USR_ID\">",
|
||||
The_ClassFormInBox[Gbl.Prefs.Theme],
|
||||
Txt_Current_nickname);
|
||||
}
|
||||
else // NumNick >= 2
|
||||
{
|
||||
Tbl_StartRow ();
|
||||
|
@ -365,8 +367,8 @@ static void Nck_ShowFormChangeUsrNickname (const struct UsrData *UsrDat,bool Its
|
|||
}
|
||||
|
||||
/***** Form to enter new nickname *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"REC_C1_BOT RIGHT_TOP\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"REC_C1_BOT RIGHT_TOP\">"
|
||||
"<label for=\"NewNick\" class=\"%s\">"
|
||||
"%s:"
|
||||
"</label>"
|
||||
|
|
|
@ -394,8 +394,8 @@ void Ntf_ShowMyNotifications (void)
|
|||
|
||||
/***** Start table *****/
|
||||
Tbl_StartTableWideMarginPadding (2);
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<th colspan=\"2\" class=\"LEFT_MIDDLE\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<th colspan=\"2\" class=\"LEFT_MIDDLE\">"
|
||||
"%s"
|
||||
"</th>"
|
||||
"<th class=\"LEFT_MIDDLE\">"
|
||||
|
@ -492,8 +492,8 @@ void Ntf_ShowMyNotifications (void)
|
|||
|
||||
/***** Write row for this notification *****/
|
||||
/* Write event icon */
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"%s LEFT_TOP\" style=\"width:25px;\">",
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"%s LEFT_TOP\" style=\"width:25px;\">",
|
||||
ClassBackground);
|
||||
if (PutLink)
|
||||
PutLink = Ntf_StartFormGoToAction (NotifyEvent,Crs.CrsCod,&UsrDat,Cod);
|
||||
|
@ -602,8 +602,8 @@ void Ntf_ShowMyNotifications (void)
|
|||
Ntf_GetNotifSummaryAndContent (SummaryStr,&ContentStr,NotifyEvent,
|
||||
Cod,Crs.CrsCod,Gbl.Usrs.Me.UsrDat.UsrCod,
|
||||
false);
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td colspan=\"2\"></td>"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td colspan=\"2\"></td>"
|
||||
"<td colspan=\"4\" class=\"DAT LEFT_TOP\""
|
||||
" style=\"padding-bottom:12px;\">"
|
||||
"%s"
|
||||
|
@ -1939,8 +1939,8 @@ void Ntf_PutFormChangeNotifSentByEMail (void)
|
|||
|
||||
/***** List of notifications *****/
|
||||
Tbl_StartTableCenterPadding (2);
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<th></th>"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<th></th>"
|
||||
"<th class=\"CENTER_MIDDLE\">"
|
||||
"%s"
|
||||
"</th>"
|
||||
|
@ -1957,8 +1957,8 @@ void Ntf_PutFormChangeNotifSentByEMail (void)
|
|||
NotifyEvent < Ntf_NUM_NOTIFY_EVENTS;
|
||||
NotifyEvent++) // O is reserved for Ntf_EVENT_UNKNOWN
|
||||
{
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"%s RIGHT_MIDDLE\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"%s RIGHT_MIDDLE\">"
|
||||
"%s:"
|
||||
"</td>"
|
||||
"<td class=\"CENTER_MIDDLE\">"
|
||||
|
|
|
@ -684,8 +684,9 @@ void Pwd_ShowFormChgMyPwd (void)
|
|||
|
||||
/***** Current password *****/
|
||||
if (IHaveAPasswordInDB) // If I have a password in database...
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"REC_C1_BOT RIGHT_MIDDLE\">"
|
||||
{
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"REC_C1_BOT RIGHT_MIDDLE\">"
|
||||
"<label for=\"UsrPwd\" class=\"%s\">%s:</label>"
|
||||
"</td>"
|
||||
"<td class=\"REC_C2_BOT LEFT_MIDDLE\">"
|
||||
|
@ -698,10 +699,11 @@ void Pwd_ShowFormChgMyPwd (void)
|
|||
The_ClassFormInBox[Gbl.Prefs.Theme],
|
||||
Txt_Current_password,
|
||||
Pwd_MAX_CHARS_PLAIN_PASSWORD);
|
||||
}
|
||||
|
||||
/***** Help message *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td colspan=\"2\">");
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td colspan=\"2\">");
|
||||
Ale_ShowAlert (Ale_INFO,Txt_Your_password_must_be_at_least_X_characters_and_can_not_contain_spaces_,
|
||||
Pwd_MIN_CHARS_PLAIN_PASSWORD);
|
||||
fprintf (Gbl.F.Out,"</td>"
|
||||
|
@ -733,8 +735,8 @@ void Pwd_PutFormToGetNewPasswordOnce (void)
|
|||
extern const char *Txt_HELP_password;
|
||||
|
||||
/***** Start form element ****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"RIGHT_MIDDLE\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"RIGHT_MIDDLE\">"
|
||||
"<label for=\"Passwd\" class=\"%s\">%s:</label>"
|
||||
"</td>"
|
||||
"<td class=\"LEFT_MIDDLE\">"
|
||||
|
@ -768,8 +770,8 @@ void Pwd_PutFormToGetNewPasswordTwice (void)
|
|||
|
||||
/***** 1st password *****/
|
||||
/* Start form element */
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"REC_C1_BOT RIGHT_MIDDLE\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"REC_C1_BOT RIGHT_MIDDLE\">"
|
||||
"<label for=\"Paswd1\" class=\"%s\">%s:</label>"
|
||||
"</td>"
|
||||
"<td class=\"REC_C2_BOT LEFT_MIDDLE\">"
|
||||
|
@ -791,8 +793,8 @@ void Pwd_PutFormToGetNewPasswordTwice (void)
|
|||
|
||||
/***** 2nd password *****/
|
||||
/* Start form element */
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"REC_C1_BOT RIGHT_MIDDLE\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"REC_C1_BOT RIGHT_MIDDLE\">"
|
||||
"<label for=\"Paswd2\" class=\"%s\">%s:</label>"
|
||||
"</td>"
|
||||
"<td class=\"REC_C2_BOT LEFT_MIDDLE\">"
|
||||
|
|
20
swad_photo.c
20
swad_photo.c
|
@ -1786,8 +1786,8 @@ static void Pho_PutSelectorForTypeOfAvg (void)
|
|||
extern const char *Txt_AVERAGE_PHOTO_TYPES[Pho_NUM_AVERAGE_PHOTO_TYPES];
|
||||
Pho_AvgPhotoTypeOfAverage_t TypeOfAvg;
|
||||
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"RIGHT_MIDDLE\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"RIGHT_MIDDLE\">"
|
||||
"<label for=\"AvgType\" class=\"%s\">%s:</label>"
|
||||
"</td>"
|
||||
"<td class=\"LEFT_MIDDLE\">",
|
||||
|
@ -1847,8 +1847,8 @@ static void Pho_PutSelectorForHowComputePhotoSize (void)
|
|||
extern const char *Txt_STAT_DEGREE_PHOTO_SIZE[Pho_NUM_HOW_COMPUTE_PHOTO_SIZES];
|
||||
Pho_HowComputePhotoSize_t PhoSi;
|
||||
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"RIGHT_MIDDLE\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"RIGHT_MIDDLE\">"
|
||||
"<label for=\"PhotoSize\" class=\"%s\">%s:</label>"
|
||||
"</td>"
|
||||
"<td class=\"LEFT_MIDDLE\">",
|
||||
|
@ -1908,8 +1908,8 @@ static void Pho_PutSelectorForHowOrderDegrees (void)
|
|||
extern const char *Txt_STAT_DEGREE_PHOTO_ORDER[Pho_NUM_HOW_ORDER_DEGREES];
|
||||
Pho_HowOrderDegrees_t Order;
|
||||
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"RIGHT_MIDDLE\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"RIGHT_MIDDLE\">"
|
||||
"<label for=\"Order\" class=\"%s\">%s:</label>"
|
||||
"</td>"
|
||||
"<td class=\"LEFT_MIDDLE\">",
|
||||
|
@ -2205,8 +2205,8 @@ static void Pho_ShowOrPrintListDegrees (Pho_AvgPhotoSeeOrPrint_t SeeOrPrint)
|
|||
|
||||
/***** Write heading *****/
|
||||
Tbl_StartTableCenterPadding (2);
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<th class=\"RIGHT_TOP\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<th class=\"RIGHT_TOP\">"
|
||||
"%s"
|
||||
"</th>"
|
||||
"<th class=\"CENTER_TOP\">"
|
||||
|
@ -2239,8 +2239,8 @@ static void Pho_ShowOrPrintListDegrees (Pho_AvgPhotoSeeOrPrint_t SeeOrPrint)
|
|||
Deg_GetDataOfDegreeByCod (&Deg);
|
||||
|
||||
/***** Show logo and name of this degree *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"DAT RIGHT_MIDDLE COLOR%u\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"DAT RIGHT_MIDDLE COLOR%u\">"
|
||||
"%u"
|
||||
"</td>",
|
||||
Gbl.RowEvenOdd,++NumDegsNotEmpty);
|
||||
|
|
28
swad_place.c
28
swad_place.c
|
@ -140,8 +140,8 @@ void Plc_SeePlaces (void)
|
|||
NumPlc++)
|
||||
{
|
||||
/* Write data of this place */
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"DAT LEFT_MIDDLE\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"DAT LEFT_MIDDLE\">"
|
||||
"%s"
|
||||
"</td>"
|
||||
"<td class=\"DAT RIGHT_MIDDLE\">"
|
||||
|
@ -154,16 +154,16 @@ void Plc_SeePlaces (void)
|
|||
}
|
||||
|
||||
/***** Separation row *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td colspan=\"2\" class=\"DAT\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td colspan=\"2\" class=\"DAT\">"
|
||||
" "
|
||||
"</td>"
|
||||
"</tr>");
|
||||
|
||||
/***** Write centres (of the current institution) with other place *****/
|
||||
NumCtrsInOtherPlcs = Ctr_GetNumCtrsInPlc (0);
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"DAT LEFT_MIDDLE\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"DAT LEFT_MIDDLE\">"
|
||||
"%s"
|
||||
"</td>"
|
||||
"<td class=\"DAT RIGHT_MIDDLE\">"
|
||||
|
@ -174,8 +174,8 @@ void Plc_SeePlaces (void)
|
|||
NumCtrsWithPlc += NumCtrsInOtherPlcs;
|
||||
|
||||
/***** Write centres (of the current institution) with no place *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"DAT LEFT_MIDDLE\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"DAT LEFT_MIDDLE\">"
|
||||
"%s"
|
||||
"</td>"
|
||||
"<td class=\"DAT RIGHT_MIDDLE\">"
|
||||
|
@ -523,8 +523,8 @@ static void Plc_ListPlacesForEdition (void)
|
|||
Plc = &Gbl.Plcs.Lst[NumPlc];
|
||||
|
||||
/* Put icon to remove place */
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"BM\">");
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"BM\">");
|
||||
if (Plc->NumCtrs) // Place has centres ==> deletion forbidden
|
||||
Ico_PutIconRemovalNotAllowed ();
|
||||
else
|
||||
|
@ -805,8 +805,8 @@ static void Plc_PutFormToCreatePlace (void)
|
|||
Plc_PutHeadPlaces ();
|
||||
|
||||
/***** Column to remove place, disabled here *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"BM\"></td>");
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"BM\"></td>");
|
||||
|
||||
/***** Place code *****/
|
||||
fprintf (Gbl.F.Out,"<td class=\"CODE\"></td>");
|
||||
|
@ -853,8 +853,8 @@ static void Plc_PutHeadPlaces (void)
|
|||
extern const char *Txt_Full_name;
|
||||
extern const char *Txt_Centres;
|
||||
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<th class=\"BM\"></th>"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<th class=\"BM\"></th>"
|
||||
"<th class=\"RIGHT_MIDDLE\">"
|
||||
"%s"
|
||||
"</th>"
|
||||
|
|
|
@ -114,8 +114,8 @@ void Plg_ListPlugins (void)
|
|||
NULL,Box_NOT_CLOSABLE,2);
|
||||
|
||||
/***** Write table heading *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<th style=\"width:40px;\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<th style=\"width:40px;\">"
|
||||
"</th>"
|
||||
"<th class=\"LEFT_MIDDLE\">"
|
||||
"%s"
|
||||
|
@ -136,8 +136,8 @@ void Plg_ListPlugins (void)
|
|||
|
||||
/* Plugin logo */
|
||||
// TODO: Change plugin icons to 32x32
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"DAT LEFT_MIDDLE\" style=\"width:45px;\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"DAT LEFT_MIDDLE\" style=\"width:45px;\">"
|
||||
"<a href=\"%s\" title=\"%s\" class=\"DAT\" target=\"_blank\">"
|
||||
"<img src=\"%s/%s24x24.gif\""
|
||||
" alt=\"%s\" title=\"%s\""
|
||||
|
@ -393,8 +393,8 @@ static void Plg_ListPluginsForEdition (void)
|
|||
Plg = &Gbl.Plugins.Lst[NumPlg];
|
||||
|
||||
/* Put icon to remove plugin */
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"BM\">");
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"BM\">");
|
||||
Frm_StartForm (ActRemPlg);
|
||||
Plg_PutParamPlgCod (Plg->PlgCod);
|
||||
Ico_PutIconRemove ();
|
||||
|
@ -889,8 +889,8 @@ static void Plg_PutFormToCreatePlugin (void)
|
|||
NULL,Box_NOT_CLOSABLE,2);
|
||||
|
||||
/***** Write heading *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<th class=\"LEFT_MIDDLE\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<th class=\"LEFT_MIDDLE\">"
|
||||
"%s"
|
||||
"</th>"
|
||||
"<th class=\"LEFT_MIDDLE\">"
|
||||
|
@ -986,8 +986,8 @@ static void Plg_PutHeadPlugins (void)
|
|||
extern const char *Txt_URL;
|
||||
extern const char *Txt_IP;
|
||||
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<th></th>"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<th></th>"
|
||||
"<th class=\"RIGHT_MIDDLE\">"
|
||||
"%s"
|
||||
"</th>"
|
||||
|
|
|
@ -33,6 +33,7 @@
|
|||
#include "swad_global.h"
|
||||
#include "swad_parameter.h"
|
||||
#include "swad_privacy.h"
|
||||
#include "swad_table.h"
|
||||
#include "swad_theme.h"
|
||||
|
||||
/*****************************************************************************/
|
||||
|
@ -155,8 +156,8 @@ static void Pri_PutFormVisibility (const char *TxtLabel,
|
|||
Pri_Visibility_t Visibility;
|
||||
|
||||
/***** Select visibility *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"%s RIGHT_TOP\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"%s RIGHT_TOP\">"
|
||||
"%s:"
|
||||
"</td>"
|
||||
"<td class=\"LEFT_TOP\">",
|
||||
|
|
|
@ -1208,8 +1208,9 @@ static void Prj_ShowOneProject (unsigned NumIndex,struct Project *Prj,
|
|||
UniqueId);
|
||||
break;
|
||||
default:
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td colspan=\"2\" class=\"RIGHT_TOP");
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td colspan=\"2\" class=\"RIGHT_TOP");
|
||||
break;
|
||||
}
|
||||
fprintf (Gbl.F.Out," %s\">"
|
||||
"%s:"
|
||||
|
@ -1474,8 +1475,8 @@ static void Prj_ShowOneProjectTxtField (struct Project *Prj,
|
|||
id,UniqueId);
|
||||
break;
|
||||
case Prj_PRINT_ONE_PROJECT:
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td colspan=\"2\" class=\"RIGHT_TOP");
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td colspan=\"2\" class=\"RIGHT_TOP");
|
||||
break;
|
||||
default:
|
||||
// Not applicable
|
||||
|
@ -1543,8 +1544,8 @@ static void Prj_ShowOneProjectURL (const struct Project *Prj,
|
|||
id,UniqueId);
|
||||
break;
|
||||
case Prj_PRINT_ONE_PROJECT:
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td colspan=\"2\" class=\"RIGHT_TOP");
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td colspan=\"2\" class=\"RIGHT_TOP");
|
||||
break;
|
||||
default:
|
||||
// Not applicable
|
||||
|
@ -1751,8 +1752,8 @@ static void Prj_ShowOneProjectMembersWithARole (const struct Project *Prj,
|
|||
switch (ProjectView)
|
||||
{
|
||||
case Prj_EDIT_ONE_PROJECT:
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"PRJ_MEMBER_ICO\">");
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"PRJ_MEMBER_ICO\">");
|
||||
Gbl.Prjs.PrjCod = Prj->PrjCod; // Used to pass project code as a parameter
|
||||
snprintf (Gbl.Title,sizeof (Gbl.Title),
|
||||
Txt_Add_USERS,
|
||||
|
@ -3334,8 +3335,8 @@ static void Prj_PutFormProject (struct Project *Prj,bool ItsANewProject)
|
|||
NULL,Box_NOT_CLOSABLE,2);
|
||||
|
||||
/* Project title */
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"RIGHT_MIDDLE\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"RIGHT_MIDDLE\">"
|
||||
"<label for=\"Title\" class=\"%s\">%s:</label>"
|
||||
"</td>"
|
||||
"<td class=\"LEFT_MIDDLE\">"
|
||||
|
@ -3348,8 +3349,8 @@ static void Prj_PutFormProject (struct Project *Prj,bool ItsANewProject)
|
|||
Prj_MAX_CHARS_PROJECT_TITLE,Prj->Title);
|
||||
|
||||
/* Department */
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"RIGHT_MIDDLE\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"RIGHT_MIDDLE\">"
|
||||
"<label for=\"%s\" class=\"%s\">%s:</label>"
|
||||
"</td>"
|
||||
"<td class=\"LEFT_MIDDLE\">",
|
||||
|
@ -3365,8 +3366,8 @@ static void Prj_PutFormProject (struct Project *Prj,bool ItsANewProject)
|
|||
"</tr>");
|
||||
|
||||
/* Preassigned? */
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"%s RIGHT_MIDDLE\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"%s RIGHT_MIDDLE\">"
|
||||
"%s:"
|
||||
"</td>"
|
||||
"<td class=\"LEFT_MIDDLE\">"
|
||||
|
@ -3389,8 +3390,8 @@ static void Prj_PutFormProject (struct Project *Prj,bool ItsANewProject)
|
|||
"</tr>");
|
||||
|
||||
/* Number of students */
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"%s RIGHT_MIDDLE\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"%s RIGHT_MIDDLE\">"
|
||||
"%s:"
|
||||
"</td>"
|
||||
"<td class=\"LEFT_MIDDLE\">"
|
||||
|
@ -3403,8 +3404,8 @@ static void Prj_PutFormProject (struct Project *Prj,bool ItsANewProject)
|
|||
Prj->NumStds);
|
||||
|
||||
/* Proposal */
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"%s RIGHT_MIDDLE\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"%s RIGHT_MIDDLE\">"
|
||||
"%s:"
|
||||
"</td>"
|
||||
"<td class=\"LEFT_MIDDLE\">"
|
||||
|
@ -3438,8 +3439,8 @@ static void Prj_PutFormProject (struct Project *Prj,bool ItsANewProject)
|
|||
Prj->Materials,4);
|
||||
|
||||
/* URL for additional info */
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"RIGHT_MIDDLE\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"RIGHT_MIDDLE\">"
|
||||
"<label for=\"WWW\" class=\"%s\">%s:</label>"
|
||||
"</td>"
|
||||
"<td class=\"DAT LEFT_MIDDLE\">"
|
||||
|
@ -3474,8 +3475,8 @@ static void Prj_EditOneProjectTxtArea (const char *Id,
|
|||
{
|
||||
extern const char *The_ClassFormInBox[The_NUM_THEMES];
|
||||
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"RIGHT_TOP\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"RIGHT_TOP\">"
|
||||
"<label for=\"%s\" class=\"%s\">%s:</label>"
|
||||
"</td>"
|
||||
"<td class=\"LEFT_TOP\">"
|
||||
|
|
134
swad_record.c
134
swad_record.c
|
@ -377,8 +377,8 @@ void Rec_ShowFormCreateRecordField (void)
|
|||
Rec_WriteHeadingRecordFields ();
|
||||
|
||||
/***** Write disabled icon to remove the field *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"BM\">");
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"BM\">");
|
||||
Ico_PutIconRemovalNotAllowed ();
|
||||
fprintf (Gbl.F.Out,"</td>");
|
||||
|
||||
|
@ -433,8 +433,8 @@ static void Rec_WriteHeadingRecordFields (void)
|
|||
extern const char *Txt_No_of_BR_lines;
|
||||
extern const char *Txt_Visible_by_BR_the_student;
|
||||
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<th></th>"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<th></th>"
|
||||
"<th class=\"CENTER_MIDDLE\">"
|
||||
"%s"
|
||||
"</th>"
|
||||
|
@ -1747,11 +1747,11 @@ static void Rec_ShowCrsRecord (Rec_CourseRecordViewType_t TypeOfView,
|
|||
Rec_RecordHelp[TypeOfView],Box_NOT_CLOSABLE,2);
|
||||
|
||||
/***** Write heading *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td colspan=\"2\" class=\"LEFT_TOP\">");
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td colspan=\"2\" class=\"LEFT_TOP\">");
|
||||
Tbl_StartTableWide ();
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"LEFT_MIDDLE\" style=\"width:%upx;\">",
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"LEFT_MIDDLE\" style=\"width:%upx;\">",
|
||||
Rec_DEGREE_LOGO_SIZE);
|
||||
Log_DrawLogo (Hie_DEG,Gbl.Hierarchy.Deg.DegCod,
|
||||
Gbl.Hierarchy.Deg.ShrtName,Rec_DEGREE_LOGO_SIZE,NULL,true);
|
||||
|
@ -1795,8 +1795,8 @@ static void Rec_ShowCrsRecord (Rec_CourseRecordViewType_t TypeOfView,
|
|||
}
|
||||
|
||||
/* Name of the field */
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"REC_C1_BOT %s RIGHT_TOP COLOR%u\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"REC_C1_BOT %s RIGHT_TOP COLOR%u\">"
|
||||
"%s:",
|
||||
ICanEditThisField ? The_ClassFormInBox[Gbl.Prefs.Theme] :
|
||||
"REC_DAT_SMALL",
|
||||
|
@ -2285,8 +2285,8 @@ void Rec_ShowSharedUsrRecord (Rec_SharedRecordViewType_t TypeOfView,
|
|||
ShowAddressRows ||
|
||||
ShowTeacherRows)
|
||||
{
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td colspan=\"3\">");
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td colspan=\"3\">");
|
||||
|
||||
/***** Show email and user's IDs *****/
|
||||
if (ShowIDRows)
|
||||
|
@ -2834,8 +2834,8 @@ static void Rec_ShowEmail (struct UsrData *UsrDat,const char *ClassForm)
|
|||
{
|
||||
extern const char *Txt_Email;
|
||||
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"REC_C1_BOT RIGHT_MIDDLE %s\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"REC_C1_BOT RIGHT_MIDDLE %s\">"
|
||||
"%s:"
|
||||
"</td>"
|
||||
"<td class=\"REC_C2_BOT REC_DAT_BOLD LEFT_MIDDLE\">",
|
||||
|
@ -2866,8 +2866,8 @@ static void Rec_ShowUsrIDs (struct UsrData *UsrDat,const char *ClassForm,
|
|||
{
|
||||
extern const char *Txt_ID;
|
||||
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"REC_C1_BOT RIGHT_TOP %s\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"REC_C1_BOT RIGHT_TOP %s\">"
|
||||
"%s:"
|
||||
"</td>"
|
||||
"<td class=\"REC_C2_BOT REC_DAT_BOLD LEFT_TOP\">",
|
||||
|
@ -2904,8 +2904,8 @@ static void Rec_ShowRole (struct UsrData *UsrDat,
|
|||
/* Get user's roles if not got */
|
||||
Rol_GetRolesInAllCrssIfNotYetGot (UsrDat);
|
||||
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"REC_C1_BOT RIGHT_MIDDLE\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"REC_C1_BOT RIGHT_MIDDLE\">"
|
||||
"<label for=\"Role\" class=\"%s\">%s:</label>"
|
||||
"</td>"
|
||||
"<td class=\"REC_C2_BOT REC_DAT_BOLD LEFT_MIDDLE\">",
|
||||
|
@ -3103,8 +3103,8 @@ static void Rec_ShowRole (struct UsrData *UsrDat,
|
|||
else if (SexForm)
|
||||
{
|
||||
/***** Form to select a sex *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"REC_C1_BOT RIGHT_MIDDLE %s\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"REC_C1_BOT RIGHT_MIDDLE %s\">"
|
||||
"%s*:</td>"
|
||||
"<td class=\"REC_C2_BOT LEFT_MIDDLE\">",
|
||||
ClassForm,Txt_Sex);
|
||||
|
@ -3126,9 +3126,10 @@ static void Rec_ShowRole (struct UsrData *UsrDat,
|
|||
"</tr>");
|
||||
}
|
||||
else // RoleForm == false, SexForm == false
|
||||
{
|
||||
/***** No form, only text *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"REC_C1_BOT RIGHT_MIDDLE %s\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"REC_C1_BOT RIGHT_MIDDLE %s\">"
|
||||
"%s:"
|
||||
"</td>"
|
||||
"<td class=\"REC_C2_BOT REC_DAT_BOLD LEFT_MIDDLE\">"
|
||||
|
@ -3138,6 +3139,7 @@ static void Rec_ShowRole (struct UsrData *UsrDat,
|
|||
ClassForm,
|
||||
Txt_Role,
|
||||
Txt_ROLES_SINGUL_Abc[UsrDat->Roles.InCurrentCrs.Role][UsrDat->Sex]);
|
||||
}
|
||||
}
|
||||
|
||||
/*****************************************************************************/
|
||||
|
@ -3151,8 +3153,8 @@ static void Rec_ShowSurname1 (struct UsrData *UsrDat,
|
|||
{
|
||||
extern const char *Txt_Surname_1;
|
||||
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"REC_C1_BOT RIGHT_MIDDLE\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"REC_C1_BOT RIGHT_MIDDLE\">"
|
||||
"<label for=\"Surname1\" class=\"%s\">"
|
||||
"%s",
|
||||
ClassForm,Txt_Surname_1);
|
||||
|
@ -3191,8 +3193,8 @@ static void Rec_ShowSurname2 (struct UsrData *UsrDat,
|
|||
{
|
||||
extern const char *Txt_Surname_2;
|
||||
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"REC_C1_BOT RIGHT_MIDDLE\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"REC_C1_BOT RIGHT_MIDDLE\">"
|
||||
"<label for=\"Surname2\" class=\"%s\">"
|
||||
"%s:"
|
||||
"</label>"
|
||||
|
@ -3223,8 +3225,8 @@ static void Rec_ShowFirstName (struct UsrData *UsrDat,
|
|||
{
|
||||
extern const char *Txt_First_name;
|
||||
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"REC_C1_BOT RIGHT_MIDDLE\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"REC_C1_BOT RIGHT_MIDDLE\">"
|
||||
"<label for=\"FirstName\" class=\"%s\">"
|
||||
"%s",
|
||||
ClassForm,Txt_First_name);
|
||||
|
@ -3272,8 +3274,8 @@ static void Rec_ShowCountry (struct UsrData *UsrDat,
|
|||
Cty_GetListCountries (Cty_GET_BASIC_DATA);
|
||||
}
|
||||
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"REC_C1_BOT RIGHT_MIDDLE\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"REC_C1_BOT RIGHT_MIDDLE\">"
|
||||
"<label for=\"OthCtyCod\" class=\"%s\">%s",
|
||||
ClassForm,Txt_Country);
|
||||
if (TypeOfView == Rec_SHA_MY_RECORD_FORM)
|
||||
|
@ -3318,8 +3320,8 @@ static void Rec_ShowOriginPlace (struct UsrData *UsrDat,
|
|||
{
|
||||
extern const char *Txt_Place_of_origin;
|
||||
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"REC_C1_BOT RIGHT_MIDDLE\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"REC_C1_BOT RIGHT_MIDDLE\">"
|
||||
"<label for=\"OriginPlace\" class=\"%s\">"
|
||||
"%s:"
|
||||
"</label>"
|
||||
|
@ -3352,8 +3354,8 @@ static void Rec_ShowDateOfBirth (struct UsrData *UsrDat,
|
|||
{
|
||||
extern const char *Txt_Date_of_birth;
|
||||
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"REC_C1_BOT RIGHT_MIDDLE %s\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"REC_C1_BOT RIGHT_MIDDLE %s\">"
|
||||
"%s:"
|
||||
"</td>"
|
||||
"<td class=\"REC_C2_BOT REC_DAT_BOLD LEFT_MIDDLE\">",
|
||||
|
@ -3383,8 +3385,8 @@ static void Rec_ShowLocalAddress (struct UsrData *UsrDat,
|
|||
{
|
||||
extern const char *Txt_Local_address;
|
||||
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"REC_C1_BOT RIGHT_MIDDLE\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"REC_C1_BOT RIGHT_MIDDLE\">"
|
||||
"<label for=\"LocalAddress\" class=\"%s\">"
|
||||
"%s:"
|
||||
"</label>"
|
||||
|
@ -3417,8 +3419,8 @@ static void Rec_ShowLocalPhone (struct UsrData *UsrDat,
|
|||
{
|
||||
extern const char *Txt_Phone;
|
||||
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"REC_C1_BOT RIGHT_MIDDLE\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"REC_C1_BOT RIGHT_MIDDLE\">"
|
||||
"<label for=\"LocalPhone\" class=\"%s\">"
|
||||
"%s:"
|
||||
"</label>"
|
||||
|
@ -3453,8 +3455,8 @@ static void Rec_ShowFamilyAddress (struct UsrData *UsrDat,
|
|||
{
|
||||
extern const char *Txt_Family_address;
|
||||
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"REC_C1_BOT RIGHT_MIDDLE\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"REC_C1_BOT RIGHT_MIDDLE\">"
|
||||
"<label for=\"FamilyAddress\" class=\"%s\">"
|
||||
"%s:"
|
||||
"</label>"
|
||||
|
@ -3487,8 +3489,8 @@ static void Rec_ShowFamilyPhone (struct UsrData *UsrDat,
|
|||
{
|
||||
extern const char *Txt_Phone;
|
||||
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"REC_C1_BOT RIGHT_MIDDLE\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"REC_C1_BOT RIGHT_MIDDLE\">"
|
||||
"<label for=\"FamilyPhone\" class=\"%s\">"
|
||||
"%s:"
|
||||
"</label>"
|
||||
|
@ -3523,8 +3525,8 @@ static void Rec_ShowComments (struct UsrData *UsrDat,
|
|||
{
|
||||
extern const char *Txt_USER_comments;
|
||||
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"REC_C1_BOT RIGHT_TOP\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"REC_C1_BOT RIGHT_TOP\">"
|
||||
"<label for=\"Comments\" class=\"%s\">%s:</label>"
|
||||
"</td>"
|
||||
"<td class=\"REC_C2_BOT REC_DAT_BOLD LEFT_TOP\">",
|
||||
|
@ -3581,8 +3583,8 @@ static void Rec_ShowInstitution (struct Instit *Ins,
|
|||
{
|
||||
extern const char *Txt_Institution;
|
||||
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"REC_C1_BOT RIGHT_MIDDLE %s\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"REC_C1_BOT RIGHT_MIDDLE %s\">"
|
||||
"%s:"
|
||||
"</td>"
|
||||
"<td class=\"REC_C2_BOT REC_DAT_BOLD LEFT_MIDDLE\">",
|
||||
|
@ -3612,8 +3614,8 @@ static void Rec_ShowCentre (struct UsrData *UsrDat,
|
|||
extern const char *Txt_Centre;
|
||||
struct Centre Ctr;
|
||||
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"REC_C1_BOT RIGHT_MIDDLE %s\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"REC_C1_BOT RIGHT_MIDDLE %s\">"
|
||||
"%s:"
|
||||
"</td>"
|
||||
"<td class=\"REC_C2_BOT REC_DAT_BOLD LEFT_MIDDLE\">",
|
||||
|
@ -3647,8 +3649,8 @@ static void Rec_ShowDepartment (struct UsrData *UsrDat,
|
|||
extern const char *Txt_Department;
|
||||
struct Department Dpt;
|
||||
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"REC_C1_BOT RIGHT_MIDDLE %s\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"REC_C1_BOT RIGHT_MIDDLE %s\">"
|
||||
"%s:"
|
||||
"</td>"
|
||||
"<td class=\"REC_C2_BOT REC_DAT_BOLD LEFT_MIDDLE\">",
|
||||
|
@ -3681,8 +3683,8 @@ static void Rec_ShowOffice (struct UsrData *UsrDat,
|
|||
{
|
||||
extern const char *Txt_Office;
|
||||
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"REC_C1_BOT RIGHT_MIDDLE %s\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"REC_C1_BOT RIGHT_MIDDLE %s\">"
|
||||
"%s:"
|
||||
"</td>"
|
||||
"<td class=\"REC_C2_BOT REC_DAT_BOLD LEFT_MIDDLE\">",
|
||||
|
@ -3702,8 +3704,8 @@ static void Rec_ShowOfficePhone (struct UsrData *UsrDat,
|
|||
{
|
||||
extern const char *Txt_Phone;
|
||||
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"REC_C1_BOT RIGHT_MIDDLE %s\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"REC_C1_BOT RIGHT_MIDDLE %s\">"
|
||||
"%s:"
|
||||
"</td>"
|
||||
"<td class=\"REC_C2_BOT REC_DAT_BOLD LEFT_MIDDLE\">",
|
||||
|
@ -3987,8 +3989,8 @@ static void Rec_ShowFormMyInsCtrDpt (bool IAmATeacher)
|
|||
Hlp_PROFILE_Institution,Box_NOT_CLOSABLE,2);
|
||||
|
||||
/***** Country *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"REC_C1_BOT RIGHT_MIDDLE\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"REC_C1_BOT RIGHT_MIDDLE\">"
|
||||
"<label for=\"OthCtyCod\" class=\"%s\">%s*:</label>"
|
||||
"</td>"
|
||||
"<td class=\"REC_C2_BOT LEFT_MIDDLE\">",
|
||||
|
@ -4028,8 +4030,8 @@ static void Rec_ShowFormMyInsCtrDpt (bool IAmATeacher)
|
|||
"</tr>");
|
||||
|
||||
/***** Institution *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"REC_C1_BOT RIGHT_MIDDLE\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"REC_C1_BOT RIGHT_MIDDLE\">"
|
||||
"<label for=\"OthInsCod\" class=\"%s\">%s*:</label>"
|
||||
"</td>"
|
||||
"<td class=\"REC_C2_BOT LEFT_MIDDLE\">",
|
||||
|
@ -4074,8 +4076,8 @@ static void Rec_ShowFormMyInsCtrDpt (bool IAmATeacher)
|
|||
if (IAmATeacher)
|
||||
{
|
||||
/***** Centre *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"REC_C1_BOT RIGHT_MIDDLE\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"REC_C1_BOT RIGHT_MIDDLE\">"
|
||||
"<label for=\"OthCtrCod\" class=\"%s\">%s*:</label>"
|
||||
"</td>"
|
||||
"<td class=\"REC_C2_BOT LEFT_MIDDLE\">",
|
||||
|
@ -4118,8 +4120,8 @@ static void Rec_ShowFormMyInsCtrDpt (bool IAmATeacher)
|
|||
"</tr>");
|
||||
|
||||
/***** Department *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"REC_C1_BOT RIGHT_MIDDLE\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"REC_C1_BOT RIGHT_MIDDLE\">"
|
||||
"<label for=\"%s\" class=\"%s\">%s*:</label>"
|
||||
"</td>"
|
||||
"<td class=\"REC_C2_BOT LEFT_MIDDLE\">",
|
||||
|
@ -4136,8 +4138,8 @@ static void Rec_ShowFormMyInsCtrDpt (bool IAmATeacher)
|
|||
"</tr>");
|
||||
|
||||
/***** Office *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"REC_C1_BOT RIGHT_MIDDLE\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"REC_C1_BOT RIGHT_MIDDLE\">"
|
||||
"<label for=\"Office\" class=\"%s\">"
|
||||
"%s:"
|
||||
"</label>"
|
||||
|
@ -4157,8 +4159,8 @@ static void Rec_ShowFormMyInsCtrDpt (bool IAmATeacher)
|
|||
"</tr>");
|
||||
|
||||
/***** Phone *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"REC_C1_BOT RIGHT_MIDDLE\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"REC_C1_BOT RIGHT_MIDDLE\">"
|
||||
"<label for=\"OfficePhone\" class=\"%s\">"
|
||||
"%s:"
|
||||
"</label>"
|
||||
|
|
220
swad_statistic.c
220
swad_statistic.c
|
@ -375,8 +375,8 @@ void Sta_AskShowCrsHits (void)
|
|||
|
||||
/***** Put list of users to select some of them *****/
|
||||
Tbl_StartTableCenterPadding (2);
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"RIGHT_TOP %s\">%s:"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"RIGHT_TOP %s\">%s:"
|
||||
"</td>"
|
||||
"<td colspan=\"2\" class=\"%s LEFT_TOP\">",
|
||||
The_ClassFormInBox[Gbl.Prefs.Theme],Txt_Users,
|
||||
|
@ -396,8 +396,8 @@ void Sta_AskShowCrsHits (void)
|
|||
Sta_WriteSelectorAction ();
|
||||
|
||||
/***** Option a) Listing of clicks distributed by some metric *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"RIGHT_MIDDLE %s\">%s:</td>"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"RIGHT_MIDDLE %s\">%s:</td>"
|
||||
"<td colspan=\"2\" class=\"LEFT_MIDDLE\">",
|
||||
The_ClassFormInBox[Gbl.Prefs.Theme],Txt_Show);
|
||||
|
||||
|
@ -537,8 +537,8 @@ void Sta_AskShowGblHits (void)
|
|||
Dat_PutFormStartEndClientLocalDateTimesWithYesterdayToday (Gbl.Action.Act == ActReqAccGbl);
|
||||
|
||||
/***** Users' roles whose accesses we want to see *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"RIGHT_MIDDLE\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"RIGHT_MIDDLE\">"
|
||||
"<label for=\"Role\" class=\"%s\">%s:</label>"
|
||||
"</td>"
|
||||
"<td colspan=\"2\" class=\"LEFT_MIDDLE\">"
|
||||
|
@ -561,8 +561,8 @@ void Sta_AskShowGblHits (void)
|
|||
Sta_WriteSelectorAction ();
|
||||
|
||||
/***** Clicks made from anywhere, current centre, current degree or current course *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"RIGHT_MIDDLE\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"RIGHT_MIDDLE\">"
|
||||
"<label for=\"ScopeSta\" class=\"%s\">%s:</label>"
|
||||
"</td>"
|
||||
"<td colspan=\"2\" class=\"LEFT_MIDDLE\">",
|
||||
|
@ -580,8 +580,8 @@ void Sta_AskShowGblHits (void)
|
|||
"</tr>");
|
||||
|
||||
/***** Count type for the statistic *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"RIGHT_MIDDLE\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"RIGHT_MIDDLE\">"
|
||||
"<label for=\"CountType\" class=\"%s\">%s:</label>"
|
||||
"</td>"
|
||||
"<td colspan=\"2\" class=\"LEFT_MIDDLE\">",
|
||||
|
@ -697,8 +697,8 @@ static void Sta_WriteSelectorAction (void)
|
|||
Tab_Tab_t Tab;
|
||||
char ActTxt[Act_MAX_BYTES_ACTION_TXT + 1];
|
||||
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"RIGHT_MIDDLE\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"RIGHT_MIDDLE\">"
|
||||
"<label for=\"StatAct\" class=\"%s\">%s:</label>"
|
||||
"</td>"
|
||||
"<td colspan=\"2\" class=\"LEFT_MIDDLE\">"
|
||||
|
@ -1575,8 +1575,8 @@ static void Sta_ShowDetailedAccessesList (unsigned long NumRows,MYSQL_RES *mysql
|
|||
NumPagsTotal = NumPagesBefore + 1 + NumPagesAfter;
|
||||
|
||||
/***** Put heading with backward and forward buttons *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td colspan=\"7\" class=\"LEFT_MIDDLE\">");
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td colspan=\"7\" class=\"LEFT_MIDDLE\">");
|
||||
Tbl_StartTableWidePadding (2);
|
||||
Tbl_StartRow ();
|
||||
|
||||
|
@ -1649,8 +1649,8 @@ static void Sta_ShowDetailedAccessesList (unsigned long NumRows,MYSQL_RES *mysql
|
|||
"</tr>");
|
||||
|
||||
/***** Write heading *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<th class=\"RIGHT_TOP\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<th class=\"RIGHT_TOP\">"
|
||||
"%s"
|
||||
"</th>"
|
||||
"<th class=\"CENTER_TOP\">"
|
||||
|
@ -1700,8 +1700,8 @@ static void Sta_ShowDetailedAccessesList (unsigned long NumRows,MYSQL_RES *mysql
|
|||
Rol_WrongRoleExit ();
|
||||
|
||||
/* Write the number of row */
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"LOG RIGHT_TOP COLOR%u\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"LOG RIGHT_TOP COLOR%u\">"
|
||||
"%ld "
|
||||
"</td>",
|
||||
Gbl.RowEvenOdd,NumRow);
|
||||
|
@ -1812,8 +1812,8 @@ static void Sta_ShowNumHitsPerUsr (unsigned long NumRows,MYSQL_RES *mysql_res)
|
|||
Usr_UsrDataConstructor (&UsrDat);
|
||||
|
||||
/***** Write heading *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<th class=\"RIGHT_TOP\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<th class=\"RIGHT_TOP\">"
|
||||
"%s"
|
||||
"</th>"
|
||||
"<th class=\"CENTER_TOP\">"
|
||||
|
@ -1851,8 +1851,8 @@ static void Sta_ShowNumHitsPerUsr (unsigned long NumRows,MYSQL_RES *mysql_res)
|
|||
Usr_ChkUsrCodAndGetAllUsrDataFromUsrCod (&UsrDat,Usr_DONT_GET_PREFS); // Get the data of the user from the database
|
||||
|
||||
/* Write the number of row */
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"LOG RIGHT_TOP COLOR%u\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"LOG RIGHT_TOP COLOR%u\">"
|
||||
"%ld "
|
||||
"</td>",
|
||||
Gbl.RowEvenOdd,NumRow);
|
||||
|
@ -1943,8 +1943,8 @@ static void Sta_ShowNumHitsPerDay (unsigned long NumRows,MYSQL_RES *mysql_res)
|
|||
Dat_AssignDate (&LastDate,&Gbl.DateRange.DateEnd.Date);
|
||||
|
||||
/***** Write heading *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<th class=\"CENTER_TOP\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<th class=\"CENTER_TOP\">"
|
||||
"%s"
|
||||
"</th>"
|
||||
"<th class=\"LEFT_TOP\">"
|
||||
|
@ -1988,8 +1988,8 @@ static void Sta_ShowNumHitsPerDay (unsigned long NumRows,MYSQL_RES *mysql_res)
|
|||
|
||||
/* Write the date */
|
||||
Dat_ConvDateToDateStr (&Date,StrDate);
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"%s RIGHT_TOP\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"%s RIGHT_TOP\">"
|
||||
"%s "
|
||||
"</td>",
|
||||
NumDayWeek == 6 ? "LOG_R" :
|
||||
|
@ -2028,8 +2028,8 @@ static void Sta_ShowNumHitsPerDay (unsigned long NumRows,MYSQL_RES *mysql_res)
|
|||
|
||||
/* Write the date */
|
||||
Dat_ConvDateToDateStr (&Date,StrDate);
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"%s RIGHT_TOP\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"%s RIGHT_TOP\">"
|
||||
"%s "
|
||||
"</td>",
|
||||
NumDayWeek == 6 ? "LOG_R" :
|
||||
|
@ -2092,8 +2092,8 @@ static void Sta_ShowDistrAccessesPerDayAndHour (unsigned long NumRows,MYSQL_RES
|
|||
SelectedColorType = Sta_GetStatColorType ();
|
||||
|
||||
/***** Put a selector for the type of color *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td colspan=\"26\" class=\"CENTER_MIDDLE\">");
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td colspan=\"26\" class=\"CENTER_MIDDLE\">");
|
||||
|
||||
Frm_StartFormAnchor (Gbl.Action.Act,Sta_STAT_RESULTS_SECTION_ID);
|
||||
Dat_WriteParamsIniEndDates ();
|
||||
|
@ -2142,8 +2142,8 @@ static void Sta_ShowDistrAccessesPerDayAndHour (unsigned long NumRows,MYSQL_RES
|
|||
NumAccPerHour[Hour] = NumAccPerHourZero[Hour] = 0.0;
|
||||
|
||||
/***** Write heading *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<th rowspan=\"3\" class=\"CENTER_TOP\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<th rowspan=\"3\" class=\"CENTER_TOP\">"
|
||||
"%s"
|
||||
"</th>"
|
||||
"<th rowspan=\"3\" class=\"LEFT_TOP\">"
|
||||
|
@ -2158,14 +2158,14 @@ static void Sta_ShowDistrAccessesPerDayAndHour (unsigned long NumRows,MYSQL_RES
|
|||
Txt_Day,
|
||||
GRAPH_DISTRIBUTION_PER_HOUR_TOTAL_WIDTH,
|
||||
Txt_STAT_TYPE_COUNT_CAPS[Gbl.Stat.CountType]);
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td colspan=\"24\" class=\"LEFT_TOP\""
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td colspan=\"24\" class=\"LEFT_TOP\""
|
||||
" style=\"width:%upx;\">",
|
||||
GRAPH_DISTRIBUTION_PER_HOUR_TOTAL_WIDTH);
|
||||
Sta_DrawBarColors (SelectedColorType,Hits.Max);
|
||||
fprintf (Gbl.F.Out,"</td>"
|
||||
"</tr>"
|
||||
"<tr>");
|
||||
"</tr>");
|
||||
Tbl_StartRow ();
|
||||
for (Hour = 0;
|
||||
Hour < 24;
|
||||
Hour++)
|
||||
|
@ -2216,8 +2216,8 @@ static void Sta_ShowDistrAccessesPerDayAndHour (unsigned long NumRows,MYSQL_RES
|
|||
|
||||
/* Write the date */
|
||||
Dat_ConvDateToDateStr (&Date,StrDate);
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"%s RIGHT_TOP\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"%s RIGHT_TOP\">"
|
||||
"%s "
|
||||
"</td>",
|
||||
NumDayWeek == 6 ? "LOG_R" :
|
||||
|
@ -2267,8 +2267,8 @@ static void Sta_ShowDistrAccessesPerDayAndHour (unsigned long NumRows,MYSQL_RES
|
|||
|
||||
/* Write the date */
|
||||
Dat_ConvDateToDateStr (&Date,StrDate);
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"%s RIGHT_TOP\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"%s RIGHT_TOP\">"
|
||||
"%s "
|
||||
"</td>",
|
||||
NumDayWeek == 6 ? "LOG_R" :
|
||||
|
@ -2306,8 +2306,8 @@ static void Sta_ShowDistrAccessesPerDayAndHour (unsigned long NumRows,MYSQL_RES
|
|||
|
||||
/* Write the date */
|
||||
Dat_ConvDateToDateStr (&Date,StrDate);
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"%s RIGHT_TOP\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"%s RIGHT_TOP\">"
|
||||
"%s "
|
||||
"</td>",
|
||||
NumDayWeek == 6 ? "LOG_R" :
|
||||
|
@ -2367,8 +2367,8 @@ static void Sta_DrawBarColors (Sta_ColorType_t ColorType,float HitsMax)
|
|||
|
||||
/***** Write numbers from 0 to Hits.Max *****/
|
||||
Tbl_StartTableWide ();
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td colspan=\"%u\" class=\"LOG LEFT_BOTTOM\""
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td colspan=\"%u\" class=\"LOG LEFT_BOTTOM\""
|
||||
" style=\"width:%upx;\">"
|
||||
"0"
|
||||
"</td>",
|
||||
|
@ -2391,8 +2391,8 @@ static void Sta_DrawBarColors (Sta_ColorType_t ColorType,float HitsMax)
|
|||
(GRAPH_DISTRIBUTION_PER_HOUR_TOTAL_WIDTH/5)/2);
|
||||
Str_WriteFloatNum (Gbl.F.Out,HitsMax);
|
||||
fprintf (Gbl.F.Out,"</td>"
|
||||
"</tr>"
|
||||
"<tr>");
|
||||
"</tr>");
|
||||
Tbl_StartRow ();
|
||||
|
||||
/***** Draw colors *****/
|
||||
for (NumColor = 0;
|
||||
|
@ -2535,8 +2535,8 @@ static void Sta_ShowNumHitsPerWeek (unsigned long NumRows,
|
|||
Dat_AssignDate (&LastDate,&Gbl.DateRange.DateEnd.Date);
|
||||
|
||||
/***** Write heading *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<th class=\"LEFT_TOP\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<th class=\"LEFT_TOP\">"
|
||||
"%s"
|
||||
"</th>"
|
||||
"<th class=\"LEFT_TOP\">"
|
||||
|
@ -2571,8 +2571,8 @@ static void Sta_ShowNumHitsPerWeek (unsigned long NumRows,
|
|||
W++)
|
||||
{
|
||||
/* Write week */
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"LOG LEFT_TOP\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"LOG LEFT_TOP\">"
|
||||
"%04u-%02u "
|
||||
"</td>",
|
||||
Date.Year,Date.Week);
|
||||
|
@ -2598,8 +2598,8 @@ static void Sta_ShowNumHitsPerWeek (unsigned long NumRows,
|
|||
W++)
|
||||
{
|
||||
/* Write week */
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"LOG LEFT_TOP\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"LOG LEFT_TOP\">"
|
||||
"%04u-%02u "
|
||||
"</td>",
|
||||
Date.Year,Date.Week);
|
||||
|
@ -2635,8 +2635,8 @@ static void Sta_ShowNumHitsPerMonth (unsigned long NumRows,
|
|||
Dat_AssignDate (&LastDate,&Gbl.DateRange.DateEnd.Date);
|
||||
|
||||
/***** Write heading *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<th class=\"LEFT_TOP\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<th class=\"LEFT_TOP\">"
|
||||
"%s"
|
||||
"</th>"
|
||||
"<th class=\"LEFT_TOP\">"
|
||||
|
@ -2672,8 +2672,8 @@ static void Sta_ShowNumHitsPerMonth (unsigned long NumRows,
|
|||
M++)
|
||||
{
|
||||
/* Write the month */
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"LOG LEFT_TOP\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"LOG LEFT_TOP\">"
|
||||
"%04u-%02u "
|
||||
"</td>",
|
||||
Date.Year,Date.Month);
|
||||
|
@ -2698,8 +2698,8 @@ static void Sta_ShowNumHitsPerMonth (unsigned long NumRows,
|
|||
M++)
|
||||
{
|
||||
/* Write the month */
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"LOG LEFT_TOP\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"LOG LEFT_TOP\">"
|
||||
"%04u-%02u "
|
||||
"</td>",
|
||||
Date.Year,Date.Month);
|
||||
|
@ -2735,8 +2735,8 @@ static void Sta_ShowNumHitsPerYear (unsigned long NumRows,
|
|||
Dat_AssignDate (&LastDate,&Gbl.DateRange.DateEnd.Date);
|
||||
|
||||
/***** Write heading *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<th class=\"LEFT_TOP\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<th class=\"LEFT_TOP\">"
|
||||
"%s"
|
||||
"</th>"
|
||||
"<th class=\"LEFT_TOP\">"
|
||||
|
@ -2772,8 +2772,8 @@ static void Sta_ShowNumHitsPerYear (unsigned long NumRows,
|
|||
Y++)
|
||||
{
|
||||
/* Write the year */
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"LOG LEFT_TOP\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"LOG LEFT_TOP\">"
|
||||
"%04u "
|
||||
"</td>",
|
||||
Date.Year);
|
||||
|
@ -2798,8 +2798,8 @@ static void Sta_ShowNumHitsPerYear (unsigned long NumRows,
|
|||
Y++)
|
||||
{
|
||||
/* Write the year */
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"LOG LEFT_TOP\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"LOG LEFT_TOP\">"
|
||||
"%04u "
|
||||
"</td>",
|
||||
Date.Year);
|
||||
|
@ -2999,8 +2999,8 @@ static void Sta_ShowAverageAccessesPerMinute (unsigned long NumRows,MYSQL_RES *m
|
|||
|
||||
/***** X axis *****/
|
||||
/* First division (left) */
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"LEFT_MIDDLE\" style=\"width:%upx;\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"LEFT_MIDDLE\" style=\"width:%upx;\">"
|
||||
"<img src=\"%s/ejexizq24x1.gif\""
|
||||
" alt=\"\" title=\"\""
|
||||
" style=\"display:block; width:%upx; height:1px;\" />"
|
||||
|
@ -3147,8 +3147,8 @@ static void Sta_ShowNumHitsPerAction (unsigned long NumRows,
|
|||
char ActTxt[Act_MAX_BYTES_ACTION_TXT + 1];
|
||||
|
||||
/***** Write heading *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<th class=\"RIGHT_TOP\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<th class=\"RIGHT_TOP\">"
|
||||
"%s"
|
||||
"</th>"
|
||||
"<th class=\"LEFT_TOP\">"
|
||||
|
@ -3173,16 +3173,20 @@ static void Sta_ShowNumHitsPerAction (unsigned long NumRows,
|
|||
ActCod = Str_ConvertStrCodToLongCod (row[0]);
|
||||
|
||||
if (ActCod >= 0)
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"LOG RIGHT_TOP\">"
|
||||
{
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"LOG RIGHT_TOP\">"
|
||||
"%s "
|
||||
"</td>",
|
||||
Act_GetActionTextFromDB (ActCod,ActTxt));
|
||||
}
|
||||
else
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"LOG RIGHT_TOP\">"
|
||||
{
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"LOG RIGHT_TOP\">"
|
||||
"? "
|
||||
"</td>");
|
||||
}
|
||||
|
||||
/* Draw bar proportional to number of hits */
|
||||
Hits.Num = Str_GetFloatNumFromStr (row[1]);
|
||||
|
@ -3206,8 +3210,8 @@ static void Sta_ShowNumHitsPerPlugin (unsigned long NumRows,
|
|||
struct Plugin Plg;
|
||||
|
||||
/***** Write heading *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<th class=\"RIGHT_TOP\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<th class=\"RIGHT_TOP\">"
|
||||
"%s"
|
||||
"</th>"
|
||||
"<th class=\"LEFT_TOP\">"
|
||||
|
@ -3231,8 +3235,8 @@ static void Sta_ShowNumHitsPerPlugin (unsigned long NumRows,
|
|||
/* Write the plugin */
|
||||
if (sscanf (row[0],"%ld",&Plg.PlgCod) != 1)
|
||||
Lay_ShowErrorAndExit ("Wrong plugin code.");
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"LOG RIGHT_TOP\">");
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"LOG RIGHT_TOP\">");
|
||||
if (Plg_GetDataOfPluginByCod (&Plg))
|
||||
fprintf (Gbl.F.Out,"%s",Plg.Name);
|
||||
else
|
||||
|
@ -3261,8 +3265,8 @@ static void Sta_ShowNumHitsPerWSFunction (unsigned long NumRows,
|
|||
long FunCod;
|
||||
|
||||
/***** Write heading *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<th class=\"LEFT_TOP\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<th class=\"LEFT_TOP\">"
|
||||
"%s"
|
||||
"</th>"
|
||||
"<th class=\"LEFT_TOP\">"
|
||||
|
@ -3286,8 +3290,8 @@ static void Sta_ShowNumHitsPerWSFunction (unsigned long NumRows,
|
|||
/* Write the plugin */
|
||||
if (sscanf (row[0],"%ld",&FunCod) != 1)
|
||||
Lay_ShowErrorAndExit ("Wrong function code.");
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"LOG LEFT_TOP\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"LOG LEFT_TOP\">"
|
||||
"%s "
|
||||
"</td>",
|
||||
API_GetFunctionNameFromFunCod (FunCod));
|
||||
|
@ -3316,8 +3320,8 @@ static void Sta_ShowNumHitsPerBanner (unsigned long NumRows,
|
|||
struct Banner Ban;
|
||||
|
||||
/***** Write heading *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<th class=\"CENTER_TOP\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<th class=\"CENTER_TOP\">"
|
||||
"%s"
|
||||
"</th>"
|
||||
"<th class=\"LEFT_TOP\">"
|
||||
|
@ -3353,8 +3357,8 @@ static void Sta_ShowNumHitsPerBanner (unsigned long NumRows,
|
|||
if (sscanf (row[0],"%ld",&(Ban.BanCod)) != 1)
|
||||
Lay_ShowErrorAndExit ("Wrong banner code.");
|
||||
Ban_GetDataOfBannerByCod (&Ban);
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"LOG LEFT_TOP\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"LOG LEFT_TOP\">"
|
||||
"<a href=\"%s\" title=\"%s\" class=\"DAT\" target=\"_blank\">"
|
||||
"<img src=\"%s/%s\""
|
||||
" alt=\"%s\" title=\"%s\""
|
||||
|
@ -3392,8 +3396,8 @@ static void Sta_ShowNumHitsPerCountry (unsigned long NumRows,
|
|||
long CtyCod;
|
||||
|
||||
/***** Write heading *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<th class=\"CENTER_TOP\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<th class=\"CENTER_TOP\">"
|
||||
"%s"
|
||||
"</th>"
|
||||
"<th class=\"CENTER_TOP\">"
|
||||
|
@ -3421,8 +3425,8 @@ static void Sta_ShowNumHitsPerCountry (unsigned long NumRows,
|
|||
CtyCod = Str_ConvertStrCodToLongCod (row[0]);
|
||||
|
||||
/* Write ranking of this country */
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"LOG RIGHT_MIDDLE\">");
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"LOG RIGHT_MIDDLE\">");
|
||||
if (CtyCod > 0)
|
||||
fprintf (Gbl.F.Out,"%lu",++Ranking);
|
||||
fprintf (Gbl.F.Out," "
|
||||
|
@ -3486,8 +3490,8 @@ static void Sta_ShowNumHitsPerInstitution (unsigned long NumRows,
|
|||
long InsCod;
|
||||
|
||||
/***** Write heading *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<th class=\"CENTER_TOP\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<th class=\"CENTER_TOP\">"
|
||||
"%s"
|
||||
"</th>"
|
||||
"<th class=\"CENTER_TOP\">"
|
||||
|
@ -3515,8 +3519,8 @@ static void Sta_ShowNumHitsPerInstitution (unsigned long NumRows,
|
|||
InsCod = Str_ConvertStrCodToLongCod (row[0]);
|
||||
|
||||
/* Write ranking of this institution */
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"LOG RIGHT_TOP\">");
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"LOG RIGHT_TOP\">");
|
||||
if (InsCod > 0)
|
||||
fprintf (Gbl.F.Out,"%lu",++Ranking);
|
||||
fprintf (Gbl.F.Out," "
|
||||
|
@ -3582,8 +3586,8 @@ static void Sta_ShowNumHitsPerCentre (unsigned long NumRows,
|
|||
long CtrCod;
|
||||
|
||||
/***** Write heading *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<th class=\"CENTER_TOP\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<th class=\"CENTER_TOP\">"
|
||||
"%s"
|
||||
"</th>"
|
||||
"<th class=\"CENTER_TOP\">"
|
||||
|
@ -3611,8 +3615,8 @@ static void Sta_ShowNumHitsPerCentre (unsigned long NumRows,
|
|||
CtrCod = Str_ConvertStrCodToLongCod (row[0]);
|
||||
|
||||
/* Write ranking of this centre */
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"LOG RIGHT_TOP\">");
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"LOG RIGHT_TOP\">");
|
||||
if (CtrCod > 0)
|
||||
fprintf (Gbl.F.Out,"%lu",++Ranking);
|
||||
fprintf (Gbl.F.Out," "
|
||||
|
@ -3678,8 +3682,8 @@ static void Sta_ShowNumHitsPerDegree (unsigned long NumRows,
|
|||
long DegCod;
|
||||
|
||||
/***** Write heading *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<th class=\"CENTER_TOP\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<th class=\"CENTER_TOP\">"
|
||||
"%s"
|
||||
"</th>"
|
||||
"<th class=\"CENTER_TOP\">"
|
||||
|
@ -3707,8 +3711,8 @@ static void Sta_ShowNumHitsPerDegree (unsigned long NumRows,
|
|||
DegCod = Str_ConvertStrCodToLongCod (row[0]);
|
||||
|
||||
/* Write ranking of this degree */
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"LOG RIGHT_TOP\">");
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"LOG RIGHT_TOP\">");
|
||||
if (DegCod > 0)
|
||||
fprintf (Gbl.F.Out,"%lu",++Ranking);
|
||||
fprintf (Gbl.F.Out," "
|
||||
|
@ -3779,8 +3783,8 @@ static void Sta_ShowNumHitsPerCourse (unsigned long NumRows,
|
|||
struct Course Crs;
|
||||
|
||||
/***** Write heading *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<th class=\"CENTER_TOP\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<th class=\"CENTER_TOP\">"
|
||||
"%s"
|
||||
"</th>"
|
||||
"<th class=\"CENTER_TOP\">"
|
||||
|
@ -3821,8 +3825,8 @@ static void Sta_ShowNumHitsPerCourse (unsigned long NumRows,
|
|||
CrsOK = Crs_GetDataOfCourseByCod (&Crs);
|
||||
|
||||
/* Write ranking of this course */
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"LOG RIGHT_TOP\">");
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"LOG RIGHT_TOP\">");
|
||||
if (CrsOK)
|
||||
fprintf (Gbl.F.Out,"%lu",++Ranking);
|
||||
fprintf (Gbl.F.Out," </td>");
|
||||
|
@ -4120,8 +4124,8 @@ void Sta_GetAndShowLastClicks (void)
|
|||
|
||||
/***** Write list of connected users *****/
|
||||
Tbl_StartTableCenterPadding (1);
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<th class=\"LEFT_MIDDLE\""
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<th class=\"LEFT_MIDDLE\""
|
||||
" style=\"width:85px;\">"
|
||||
"%s" // Click
|
||||
"</th>"
|
||||
|
@ -4201,8 +4205,8 @@ void Sta_GetAndShowLastClicks (void)
|
|||
Deg_GetShortNameOfDegreeByCod (&Deg);
|
||||
|
||||
/* Print table row */
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"%s LEFT_MIDDLE\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"%s LEFT_MIDDLE\">"
|
||||
"%s" // Click
|
||||
"</td>"
|
||||
"<td class=\"%s RIGHT_MIDDLE\">" // Elapsed time
|
||||
|
|
|
@ -245,8 +245,8 @@ static void Svy_ListAllSurveys (struct SurveyQuestion *SvyQst)
|
|||
{
|
||||
/***** Table head *****/
|
||||
Tbl_StartTableWideMarginPadding (2);
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<th class=\"CONTEXT_COL\"></th>"); // Column for contextual icons
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<th class=\"CONTEXT_COL\"></th>"); // Column for contextual icons
|
||||
for (Order = Svy_ORDER_BY_START_DATE;
|
||||
Order <= Svy_ORDER_BY_END_DATE;
|
||||
Order++)
|
||||
|
@ -460,8 +460,8 @@ static void Svy_ShowOneSurvey (long SvyCod,struct SurveyQuestion *SvyQst,
|
|||
|
||||
/***** Write first row of data of this assignment *****/
|
||||
/* Forms to remove/edit this assignment */
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td rowspan=\"2\" class=\"CONTEXT_COL");
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td rowspan=\"2\" class=\"CONTEXT_COL");
|
||||
if (!ShowOnlyThisSvyComplete)
|
||||
fprintf (Gbl.F.Out," COLOR%u",Gbl.RowEvenOdd);
|
||||
fprintf (Gbl.F.Out,"\">");
|
||||
|
@ -580,8 +580,8 @@ static void Svy_ShowOneSurvey (long SvyCod,struct SurveyQuestion *SvyQst,
|
|||
"</tr>");
|
||||
|
||||
/***** Write second row of data of this survey *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td colspan=\"2\" class=\"LEFT_TOP");
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td colspan=\"2\" class=\"LEFT_TOP");
|
||||
if (!ShowOnlyThisSvyComplete)
|
||||
fprintf (Gbl.F.Out," COLOR%u",Gbl.RowEvenOdd);
|
||||
fprintf (Gbl.F.Out,"\">");
|
||||
|
@ -664,8 +664,8 @@ static void Svy_ShowOneSurvey (long SvyCod,struct SurveyQuestion *SvyQst,
|
|||
/***** Write questions of this survey *****/
|
||||
if (ShowOnlyThisSvyComplete)
|
||||
{
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td colspan=\"5\">");
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td colspan=\"5\">");
|
||||
Svy_ListSvyQuestions (&Svy,SvyQst);
|
||||
fprintf (Gbl.F.Out,"</td>"
|
||||
"</tr>");
|
||||
|
@ -1857,8 +1857,8 @@ void Svy_RequestCreatOrEditSvy (void)
|
|||
Hlp_ASSESSMENT_Surveys_edit_survey,Box_NOT_CLOSABLE,2);
|
||||
|
||||
/***** Scope of the survey *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"RIGHT_MIDDLE\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"RIGHT_MIDDLE\">"
|
||||
"<label for=\"ScopeSvy\" class=\"%s\">%s:</label>"
|
||||
"</td>"
|
||||
"<td class=\"LEFT_MIDDLE\">",
|
||||
|
@ -1871,8 +1871,8 @@ void Svy_RequestCreatOrEditSvy (void)
|
|||
"</tr>");
|
||||
|
||||
/***** Survey title *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"RIGHT_MIDDLE\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"RIGHT_MIDDLE\">"
|
||||
"<label for=\"Title\" class=\"%s\">%s:</label>"
|
||||
"</td>"
|
||||
"<td class=\"LEFT_MIDDLE\">"
|
||||
|
@ -1889,8 +1889,8 @@ void Svy_RequestCreatOrEditSvy (void)
|
|||
Dat_PutFormStartEndClientLocalDateTimes (Svy.TimeUTC,Dat_FORM_SECONDS_ON);
|
||||
|
||||
/***** Survey text *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"RIGHT_TOP\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"RIGHT_TOP\">"
|
||||
"<label for=\"Txt\" class=\"%s\">%s:</label>"
|
||||
"</td>"
|
||||
"<td class=\"LEFT_TOP\">"
|
||||
|
@ -1905,8 +1905,8 @@ void Svy_RequestCreatOrEditSvy (void)
|
|||
"</tr>");
|
||||
|
||||
/***** Users' roles who can answer the survey *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"RIGHT_TOP %s\">%s:"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"RIGHT_TOP %s\">%s:"
|
||||
"</td>"
|
||||
"<td class=\"DAT LEFT_MIDDLE\">",
|
||||
The_ClassFormInBox[Gbl.Prefs.Theme],
|
||||
|
@ -2035,8 +2035,8 @@ static void Svy_ShowLstGrpsToEditSurvey (long SvyCod)
|
|||
if (Gbl.Crs.Grps.GrpTypes.Num)
|
||||
{
|
||||
/***** Start box and table *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"%s RIGHT_TOP\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"%s RIGHT_TOP\">"
|
||||
"%s:"
|
||||
"</td>"
|
||||
"<td class=\"LEFT_TOP\">",
|
||||
|
@ -2046,8 +2046,8 @@ static void Svy_ShowLstGrpsToEditSurvey (long SvyCod)
|
|||
NULL,Box_NOT_CLOSABLE,0);
|
||||
|
||||
/***** First row: checkbox to select the whole course *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td colspan=\"7\" class=\"DAT LEFT_MIDDLE\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td colspan=\"7\" class=\"DAT LEFT_MIDDLE\">"
|
||||
"<label>"
|
||||
"<input type=\"checkbox\""
|
||||
" id=\"WholeCrs\" name=\"WholeCrs\" value=\"Y\"");
|
||||
|
@ -2678,8 +2678,8 @@ static void Svy_ShowFormEditOneQst (long SvyCod,struct SurveyQuestion *SvyQst,
|
|||
Tbl_StartTableWidePadding (2);
|
||||
|
||||
/***** Stem *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"RIGHT_TOP\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"RIGHT_TOP\">"
|
||||
"<label for=\"Txt\" class=\"%s\">%s:</label>"
|
||||
"</td>"
|
||||
"<td class=\"LEFT_TOP\">"
|
||||
|
@ -2693,8 +2693,8 @@ static void Svy_ShowFormEditOneQst (long SvyCod,struct SurveyQuestion *SvyQst,
|
|||
Txt);
|
||||
|
||||
/***** Type of answer *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"%s RIGHT_TOP\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"%s RIGHT_TOP\">"
|
||||
"%s:"
|
||||
"</td>"
|
||||
"<td class=\"%s LEFT_TOP\">",
|
||||
|
@ -2721,8 +2721,8 @@ static void Svy_ShowFormEditOneQst (long SvyCod,struct SurveyQuestion *SvyQst,
|
|||
|
||||
/***** Answers *****/
|
||||
/* Unique or multiple choice answers */
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td></td>"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td></td>"
|
||||
"<td class=\"LEFT_TOP\">");
|
||||
Tbl_StartTablePadding (2);
|
||||
for (NumAns = 0;
|
||||
|
@ -2730,8 +2730,8 @@ static void Svy_ShowFormEditOneQst (long SvyCod,struct SurveyQuestion *SvyQst,
|
|||
NumAns++)
|
||||
{
|
||||
/* Label with the number of the answer */
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"RIGHT_TOP\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"RIGHT_TOP\">"
|
||||
"<label for=\"AnsStr%u\" class=\"%s\">%u)</label>"
|
||||
"</td>",
|
||||
NumAns,The_ClassFormInBox[Gbl.Prefs.Theme],NumAns + 1);
|
||||
|
|
174
swad_test.c
174
swad_test.c
|
@ -353,8 +353,8 @@ void Tst_ShowFormAskTst (void)
|
|||
Tst_ShowFormAnswerTypes (1);
|
||||
|
||||
/***** Number of questions to generate ****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"RIGHT_MIDDLE\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"RIGHT_MIDDLE\">"
|
||||
"<label for=\"NumQst\" class=\"%s\">"
|
||||
"%s:"
|
||||
"</label>"
|
||||
|
@ -990,9 +990,10 @@ static void Tst_ShowTestResultAfterAssess (long TstCod,unsigned *NumQstsNotBlank
|
|||
Tst_UpdateScoreQst (QstCod,ScoreThisQst,AnswerIsNotBlank);
|
||||
}
|
||||
else
|
||||
{
|
||||
/***** Question does not exists *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"BIG_INDEX RIGHT_TOP COLOR%u\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"BIG_INDEX RIGHT_TOP COLOR%u\">"
|
||||
"%u"
|
||||
"</td>"
|
||||
"<td class=\"DAT_LIGHT LEFT_TOP COLOR%u\">"
|
||||
|
@ -1001,6 +1002,7 @@ static void Tst_ShowTestResultAfterAssess (long TstCod,unsigned *NumQstsNotBlank
|
|||
"</tr>",
|
||||
Gbl.RowEvenOdd,NumQst + 1,
|
||||
Gbl.RowEvenOdd,Txt_Question_removed);
|
||||
}
|
||||
|
||||
/***** Free structure that stores the query result *****/
|
||||
DB_FreeMySQLResult (&mysql_res);
|
||||
|
@ -1035,8 +1037,8 @@ static void Tst_WriteQstAndAnsTest (Tst_ActionToDoWithQuestions_t ActionToDoWith
|
|||
Gbl.Test.QstCod = QstCod;
|
||||
|
||||
/***** Write number of question *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"RIGHT_TOP COLOR%u\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"RIGHT_TOP COLOR%u\">"
|
||||
"<div class=\"BIG_INDEX\">%u</div>",
|
||||
Gbl.RowEvenOdd,
|
||||
NumQst + 1);
|
||||
|
@ -1693,8 +1695,8 @@ static void Tst_ShowFormSelTags (unsigned long NumRows,MYSQL_RES *mysql_res,
|
|||
*/
|
||||
|
||||
/***** Label *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"RIGHT_TOP %s\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"RIGHT_TOP %s\">"
|
||||
"%s:"
|
||||
"</td>",
|
||||
The_ClassFormInBox[Gbl.Prefs.Theme],Txt_Tags);
|
||||
|
@ -1910,8 +1912,8 @@ static void Tst_ShowFormConfigTst (void)
|
|||
|
||||
/***** Tests are visible from plugins? *****/
|
||||
Tbl_StartTablePadding (2);
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"%s RIGHT_TOP\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"%s RIGHT_TOP\">"
|
||||
"%s:"
|
||||
"</td>"
|
||||
"<td class=\"LEFT_BOTTOM\">",
|
||||
|
@ -1935,8 +1937,8 @@ static void Tst_ShowFormConfigTst (void)
|
|||
"</tr>");
|
||||
|
||||
/***** Number of questions *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"%s RIGHT_TOP\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"%s RIGHT_TOP\">"
|
||||
"%s:"
|
||||
"</td>"
|
||||
"<td class=\"LEFT_BOTTOM\">",
|
||||
|
@ -1954,8 +1956,8 @@ static void Tst_ShowFormConfigTst (void)
|
|||
"</tr>");
|
||||
|
||||
/***** Minimum time between consecutive tests, per question *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"RIGHT_TOP\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"RIGHT_TOP\">"
|
||||
"<label for=\"MinTimeNxtTstPerQst\" class=\"%s\">"
|
||||
"%s:"
|
||||
"</label>"
|
||||
|
@ -1972,8 +1974,8 @@ static void Tst_ShowFormConfigTst (void)
|
|||
Gbl.Test.Config.MinTimeNxtTstPerQst);
|
||||
|
||||
/***** Feedback to students *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"%s RIGHT_TOP\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"%s RIGHT_TOP\">"
|
||||
"%s:"
|
||||
"</td>"
|
||||
"<td class=\"LEFT_BOTTOM\">",
|
||||
|
@ -2013,8 +2015,8 @@ static void Tst_ShowFormConfigTst (void)
|
|||
static void Tst_PutInputFieldNumQst (const char *Field,const char *Label,
|
||||
unsigned Value)
|
||||
{
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"RIGHT_MIDDLE\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"RIGHT_MIDDLE\">"
|
||||
"<label for=\"%s\" class=\"DAT\">%s</label>"
|
||||
"</td>"
|
||||
"<td class=\"LEFT_MIDDLE\">"
|
||||
|
@ -2312,8 +2314,8 @@ static void Tst_ShowFormAnswerTypes (unsigned NumCols)
|
|||
const char *Ptr;
|
||||
|
||||
/***** Label *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"RIGHT_TOP %s\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"RIGHT_TOP %s\">"
|
||||
"%s:"
|
||||
"</td>",
|
||||
The_ClassFormInBox[Gbl.Prefs.Theme],Txt_Types_of_answers);
|
||||
|
@ -2324,8 +2326,8 @@ static void Tst_ShowFormAnswerTypes (unsigned NumCols)
|
|||
fprintf (Gbl.F.Out," colspan=\"%u\"",NumCols);
|
||||
fprintf (Gbl.F.Out," class=\"LEFT_TOP\">");
|
||||
Tbl_StartTablePadding (2);
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"LEFT_MIDDLE\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"LEFT_MIDDLE\">"
|
||||
"<label class=\"%s\">"
|
||||
"<input type=\"checkbox\" name=\"AllAnsTypes\" value=\"Y\"",
|
||||
The_ClassFormInBox[Gbl.Prefs.Theme]);
|
||||
|
@ -2343,8 +2345,8 @@ static void Tst_ShowFormAnswerTypes (unsigned NumCols)
|
|||
AnsType < Tst_NUM_ANS_TYPES;
|
||||
AnsType++)
|
||||
{
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"LEFT_MIDDLE\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"LEFT_MIDDLE\">"
|
||||
"<label class=\"DAT\">"
|
||||
"<input type=\"checkbox\" name=\"AnswerType\" value=\"%u\"",
|
||||
(unsigned) AnsType);
|
||||
|
@ -2803,8 +2805,8 @@ static void Tst_ListOneOrMoreQuestionsForEdition (unsigned long NumRows,
|
|||
|
||||
/***** Write the heading *****/
|
||||
Tbl_StartTableWideMarginPadding (2);
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<th></th>"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<th></th>"
|
||||
"<th class=\"CENTER_TOP\">"
|
||||
"%s"
|
||||
"</th>"
|
||||
|
@ -2885,8 +2887,8 @@ static void Tst_ListOneOrMoreQuestionsForEdition (unsigned long NumRows,
|
|||
Lay_ShowErrorAndExit ("Wrong code of question.");
|
||||
|
||||
/***** Icons *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"BT%u\">",Gbl.RowEvenOdd);
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"BT%u\">",Gbl.RowEvenOdd);
|
||||
|
||||
/* Write icon to remove the question */
|
||||
Frm_StartForm (ActReqRemTstQst);
|
||||
|
@ -3079,8 +3081,8 @@ static void Tst_ListOneOrMoreQuestionsForSelection (unsigned long NumRows,
|
|||
|
||||
/***** Write the heading *****/
|
||||
Tbl_StartTableWideMarginPadding (2);
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<th></th>"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<th></th>"
|
||||
"<th class=\"CENTER_TOP\">"
|
||||
"%s"
|
||||
"</th>"
|
||||
|
@ -3139,8 +3141,8 @@ static void Tst_ListOneOrMoreQuestionsForSelection (unsigned long NumRows,
|
|||
Lay_ShowErrorAndExit ("Wrong code of question.");
|
||||
|
||||
/***** Icons *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"BT%u\">",Gbl.RowEvenOdd);
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"BT%u\">",Gbl.RowEvenOdd);
|
||||
|
||||
/* Write checkbox to select the question */
|
||||
fprintf (Gbl.F.Out,"<input type=\"checkbox\" name=\"QstCods\""
|
||||
|
@ -3412,8 +3414,8 @@ void Tst_WriteAnswersEdit (long QstCod)
|
|||
|
||||
/* Put an icon that indicates whether the answer
|
||||
is correct or wrong (row[4]) */
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"BT%u\">",
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"BT%u\">",
|
||||
Gbl.RowEvenOdd);
|
||||
if (row[4][0] == 'Y')
|
||||
fprintf (Gbl.F.Out,"<img src=\"%s/check.svg\""
|
||||
|
@ -3659,8 +3661,8 @@ static void Tst_WriteTFAnsAssessTest (struct UsrData *UsrDat,
|
|||
fprintf (Gbl.F.Out,"</tr>");
|
||||
|
||||
/***** Write the user answer *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"%s CENTER_MIDDLE\">",
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"%s CENTER_MIDDLE\">",
|
||||
(Gbl.Test.Config.Feedback == Tst_FEEDBACK_EACH_GOOD_BAD ||
|
||||
Gbl.Test.Config.Feedback == Tst_FEEDBACK_FULL_FEEDBACK) ?
|
||||
(AnsTF == row[1][0] ? "ANS_OK" :
|
||||
|
@ -3760,8 +3762,8 @@ static void Tst_WriteChoiceAnsViewTest (unsigned NumQst,long QstCod,bool Shuffle
|
|||
Med_GetMediaDataByCod (&Gbl.Test.Answer.Options[NumOpt].Media);
|
||||
|
||||
/***** Write selectors and letter of this option *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"LEFT_TOP\">");
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"LEFT_TOP\">");
|
||||
snprintf (ParamName,sizeof (ParamName),
|
||||
"Ind%06u",
|
||||
NumQst);
|
||||
|
@ -4320,8 +4322,8 @@ static void Tst_WriteTextAnsAssessTest (struct UsrData *UsrDat,
|
|||
fprintf (Gbl.F.Out,"</tr>");
|
||||
|
||||
/***** Write the user answer *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td");
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td");
|
||||
if (Gbl.Test.StrAnswersOneQst[NumQst][0]) // If user has answered the question
|
||||
{
|
||||
/* Filter the user answer */
|
||||
|
@ -4483,8 +4485,8 @@ static void Tst_WriteIntAnsAssessTest (struct UsrData *UsrDat,
|
|||
fprintf (Gbl.F.Out,"</tr>");
|
||||
|
||||
/***** Write the user answer *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td");
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td");
|
||||
if (Gbl.Test.StrAnswersOneQst[NumQst][0]) // If user has answered the question
|
||||
{
|
||||
if (sscanf (Gbl.Test.StrAnswersOneQst[NumQst],"%ld",&IntAnswerUsr) == 1)
|
||||
|
@ -4608,8 +4610,8 @@ static void Tst_WriteFloatAnsAssessTest (struct UsrData *UsrDat,
|
|||
fprintf (Gbl.F.Out,"</tr>");
|
||||
|
||||
/***** Write the user answer *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td");
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td");
|
||||
if (Gbl.Test.StrAnswersOneQst[NumQst][0]) // If user has answered the question
|
||||
{
|
||||
FloatAnsUsr = Tst_GetFloatAnsFromStr (Gbl.Test.StrAnswersOneQst[NumQst]);
|
||||
|
@ -4702,8 +4704,8 @@ static void Tst_WriteScoreStart (unsigned ColSpan)
|
|||
{
|
||||
extern const char *Txt_Score;
|
||||
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td colspan=\"%u\" class=\"DAT_SMALL LEFT_MIDDLE\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td colspan=\"%u\" class=\"DAT_SMALL LEFT_MIDDLE\">"
|
||||
"%s: <span class=\"",
|
||||
ColSpan,Txt_Score);
|
||||
}
|
||||
|
@ -5070,8 +5072,8 @@ static void Tst_PutFormEditOneQst (char Stem[Cns_MAX_BYTES_TEXT + 1],
|
|||
Tbl_StartTablePadding (2); // Table for this question
|
||||
|
||||
/***** Help for text editor *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td colspan=\"2\">");
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td colspan=\"2\">");
|
||||
Lay_HelpPlainEditor ();
|
||||
fprintf (Gbl.F.Out,"</td>"
|
||||
"</tr>");
|
||||
|
@ -5080,8 +5082,8 @@ static void Tst_PutFormEditOneQst (char Stem[Cns_MAX_BYTES_TEXT + 1],
|
|||
NumRows = Tst_GetAllTagsFromCurrentCrs (&mysql_res);
|
||||
|
||||
/***** Write the tags *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"RIGHT_TOP %s\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"RIGHT_TOP %s\">"
|
||||
"%s:"
|
||||
"</td>"
|
||||
"<td class=\"LEFT_TOP\">",
|
||||
|
@ -5148,8 +5150,8 @@ static void Tst_PutFormEditOneQst (char Stem[Cns_MAX_BYTES_TEXT + 1],
|
|||
DB_FreeMySQLResult (&mysql_res);
|
||||
|
||||
/***** Stem and image *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"RIGHT_TOP\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"RIGHT_TOP\">"
|
||||
"<label for=\"Stem\" class=\"%s\">%s:</label>"
|
||||
"</td>"
|
||||
"<td class=\"LEFT_TOP\">"
|
||||
|
@ -5179,8 +5181,8 @@ static void Tst_PutFormEditOneQst (char Stem[Cns_MAX_BYTES_TEXT + 1],
|
|||
"</tr>");
|
||||
|
||||
/***** Type of answer *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"RIGHT_TOP %s\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"RIGHT_TOP %s\">"
|
||||
"%s:"
|
||||
"</td>"
|
||||
"<td class=\"%s LEFT_TOP\">",
|
||||
|
@ -5206,8 +5208,8 @@ static void Tst_PutFormEditOneQst (char Stem[Cns_MAX_BYTES_TEXT + 1],
|
|||
|
||||
/***** Answers *****/
|
||||
/* Integer answer */
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"RIGHT_TOP %s\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"RIGHT_TOP %s\">"
|
||||
"%s:"
|
||||
"</td>"
|
||||
"<td class=\"LEFT_TOP\">"
|
||||
|
@ -5226,8 +5228,8 @@ static void Tst_PutFormEditOneQst (char Stem[Cns_MAX_BYTES_TEXT + 1],
|
|||
"</tr>");
|
||||
|
||||
/* Floating point answer */
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td></td>"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td></td>"
|
||||
"<td class=\"LEFT_TOP\">");
|
||||
Tst_PutFloatInputField (Txt_Real_number_between_A_and_B_1,"AnsFloatMin",
|
||||
Gbl.Test.Answer.FloatingPoint[0]);
|
||||
|
@ -5237,8 +5239,8 @@ static void Tst_PutFormEditOneQst (char Stem[Cns_MAX_BYTES_TEXT + 1],
|
|||
"</tr>");
|
||||
|
||||
/* T/F answer */
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td></td>"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td></td>"
|
||||
"<td class=\"LEFT_TOP\">");
|
||||
Tst_PutTFInputField (Txt_TF_QST[0],'T');
|
||||
Tst_PutTFInputField (Txt_TF_QST[1],'F');
|
||||
|
@ -5246,8 +5248,8 @@ static void Tst_PutFormEditOneQst (char Stem[Cns_MAX_BYTES_TEXT + 1],
|
|||
"</tr>");
|
||||
|
||||
/* Questions can be shuffled? */
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td></td>"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td></td>"
|
||||
"<td class=\"LEFT_TOP\">"
|
||||
"<label class=\"%s\">"
|
||||
"<input type=\"checkbox\" name=\"Shuffle\" value=\"Y\"",
|
||||
|
@ -5265,8 +5267,8 @@ static void Tst_PutFormEditOneQst (char Stem[Cns_MAX_BYTES_TEXT + 1],
|
|||
Txt_Shuffle);
|
||||
|
||||
/* Simple or multiple choice answers */
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td></td>"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td></td>"
|
||||
"<td class=\"LEFT_TOP\">");
|
||||
Tbl_StartTablePadding (2); // Table with choice answers
|
||||
|
||||
|
@ -5288,8 +5290,8 @@ static void Tst_PutFormEditOneQst (char Stem[Cns_MAX_BYTES_TEXT + 1],
|
|||
AnswerHasContent;
|
||||
|
||||
/***** Left column: selectors *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"TEST_EDI_ANS_LEFT_COL COLOR%u\">",
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"TEST_EDI_ANS_LEFT_COL COLOR%u\">",
|
||||
Gbl.RowEvenOdd);
|
||||
|
||||
/* Radio selector for unique choice answers */
|
||||
|
@ -7452,8 +7454,8 @@ void Tst_SelUsrsToViewUsrsTstResults (void)
|
|||
|
||||
/***** Put list of users to select some of them *****/
|
||||
Tbl_StartTableCenterPadding (2);
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"%s RIGHT_TOP\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"%s RIGHT_TOP\">"
|
||||
"%s:"
|
||||
"</td>"
|
||||
"<td colspan=\"2\" class=\"%s LEFT_TOP\">",
|
||||
|
@ -7661,8 +7663,8 @@ static void Tst_ShowHeaderTestResults (void)
|
|||
extern const char *Txt_Score;
|
||||
extern const char *Txt_out_of_PART_OF_A_SCORE;
|
||||
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<th colspan=\"2\" class=\"CENTER_TOP\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<th colspan=\"2\" class=\"CENTER_TOP\">"
|
||||
"%s"
|
||||
"</th>"
|
||||
"<th class=\"RIGHT_TOP\">"
|
||||
|
@ -8115,8 +8117,8 @@ void Tst_ShowOneTstResult (void)
|
|||
Act_NoPermissionExit ();
|
||||
|
||||
/* User */
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"DAT_N RIGHT_TOP\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"DAT_N RIGHT_TOP\">"
|
||||
"%s:"
|
||||
"</td>"
|
||||
"<td class=\"DAT LEFT_TOP\">",
|
||||
|
@ -8139,8 +8141,8 @@ void Tst_ShowOneTstResult (void)
|
|||
"</tr>");
|
||||
|
||||
/* Test date */
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"DAT_N RIGHT_TOP\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"DAT_N RIGHT_TOP\">"
|
||||
"%s:"
|
||||
"</td>"
|
||||
"<td id=\"test\" class=\"DAT LEFT_TOP\">"
|
||||
|
@ -8154,8 +8156,8 @@ void Tst_ShowOneTstResult (void)
|
|||
(unsigned) Gbl.Prefs.DateFormat,Txt_Today);
|
||||
|
||||
/* Number of questions */
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"DAT_N RIGHT_TOP\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"DAT_N RIGHT_TOP\">"
|
||||
"%s:"
|
||||
"</td>"
|
||||
"<td class=\"DAT LEFT_TOP\">"
|
||||
|
@ -8166,8 +8168,8 @@ void Tst_ShowOneTstResult (void)
|
|||
Gbl.Test.NumQsts,NumQstsNotBlank,Txt_non_blank_QUESTIONS);
|
||||
|
||||
/* Score */
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"DAT_N RIGHT_TOP\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"DAT_N RIGHT_TOP\">"
|
||||
"%s:"
|
||||
"</td>"
|
||||
"<td class=\"DAT LEFT_TOP\">",
|
||||
|
@ -8184,8 +8186,8 @@ void Tst_ShowOneTstResult (void)
|
|||
Txt_out_of_PART_OF_A_SCORE,Tst_SCORE_MAX);
|
||||
|
||||
/* Tags present in this test */
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"DAT_N RIGHT_TOP\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"DAT_N RIGHT_TOP\">"
|
||||
"%s:"
|
||||
"</td>"
|
||||
"<td class=\"DAT LEFT_TOP\">",
|
||||
|
@ -8261,9 +8263,10 @@ void Tst_ShowTestResult (struct UsrData *UsrDat,
|
|||
ThisQuestionHasBeenEdited = true;
|
||||
|
||||
if (ThisQuestionHasBeenEdited)
|
||||
{
|
||||
/***** Question has been edited *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"BIG_INDEX RIGHT_TOP COLOR%u\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"BIG_INDEX RIGHT_TOP COLOR%u\">"
|
||||
"%u"
|
||||
"</td>"
|
||||
"<td class=\"DAT_LIGHT LEFT_TOP COLOR%u\">"
|
||||
|
@ -8272,6 +8275,7 @@ void Tst_ShowTestResult (struct UsrData *UsrDat,
|
|||
"</tr>",
|
||||
Gbl.RowEvenOdd,NumQst + 1,
|
||||
Gbl.RowEvenOdd,Txt_Question_modified);
|
||||
}
|
||||
else
|
||||
{
|
||||
/***** Get the code of question (row[0]) *****/
|
||||
|
@ -8287,9 +8291,10 @@ void Tst_ShowTestResult (struct UsrData *UsrDat,
|
|||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
/***** Question does not exists *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"BIG_INDEX RIGHT_TOP COLOR%u\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"BIG_INDEX RIGHT_TOP COLOR%u\">"
|
||||
"%u"
|
||||
"</td>"
|
||||
"<td class=\"DAT_LIGHT LEFT_TOP COLOR%u\">"
|
||||
|
@ -8298,6 +8303,7 @@ void Tst_ShowTestResult (struct UsrData *UsrDat,
|
|||
"</tr>",
|
||||
Gbl.RowEvenOdd,NumQst + 1,
|
||||
Gbl.RowEvenOdd,Txt_Question_removed);
|
||||
}
|
||||
|
||||
/***** Free structure that stores the query result *****/
|
||||
DB_FreeMySQLResult (&mysql_res);
|
||||
|
|
|
@ -958,8 +958,8 @@ static void TsI_WriteHeadingListImportedQst (void)
|
|||
extern const char *Txt_Question;
|
||||
|
||||
/***** Write the heading *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<th></th>"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<th></th>"
|
||||
"<th class=\"CENTER_TOP\">"
|
||||
"%s"
|
||||
"</th>"
|
||||
|
@ -1017,8 +1017,8 @@ static void TsI_WriteRowImportedQst (struct XMLElement *StemElem,
|
|||
NumQst++;
|
||||
|
||||
/***** Put icon to indicate that a question does not exist in database *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"BT%u CENTER_TOP\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"BT%u CENTER_TOP\">"
|
||||
"<img src=\"%s/%s\""
|
||||
" alt=\"%s\" title=\"%s\""
|
||||
" class=\"CONTEXT_ICO_16x16\" />"
|
||||
|
@ -1049,8 +1049,9 @@ static void TsI_WriteRowImportedQst (struct XMLElement *StemElem,
|
|||
for (NumTag = 0;
|
||||
NumTag < Gbl.Test.Tags.Num;
|
||||
NumTag++)
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"%s LEFT_TOP\">"
|
||||
{
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"%s LEFT_TOP\">"
|
||||
" • "
|
||||
"</td>"
|
||||
"<td class=\"%s LEFT_TOP\">"
|
||||
|
@ -1059,6 +1060,7 @@ static void TsI_WriteRowImportedQst (struct XMLElement *StemElem,
|
|||
"</tr>",
|
||||
ClassData,
|
||||
ClassData,Gbl.Test.Tags.Txt[NumTag]);
|
||||
}
|
||||
Tbl_EndTable ();
|
||||
}
|
||||
else // no tags for this question
|
||||
|
@ -1147,8 +1149,8 @@ static void TsI_WriteRowImportedQst (struct XMLElement *StemElem,
|
|||
}
|
||||
|
||||
/* Put an icon that indicates whether the answer is correct or wrong */
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"BT%u\">",
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"BT%u\">",
|
||||
Gbl.RowEvenOdd);
|
||||
if (Gbl.Test.Answer.Options[NumOpt].Correct)
|
||||
fprintf (Gbl.F.Out,"<img src=\"%s/check.svg\""
|
||||
|
|
|
@ -1132,8 +1132,8 @@ static void TT_DrawTimeTable (void)
|
|||
TT_TimeTableDrawAdjustRow ();
|
||||
|
||||
/***** Row with day names *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td rowspan=\"2\" class=\"TT_HOUR_BIG RIGHT_MIDDLE\""
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td rowspan=\"2\" class=\"TT_HOUR_BIG RIGHT_MIDDLE\""
|
||||
" style=\"width:%u%%;\">"
|
||||
"%02u:00"
|
||||
"</td>",
|
||||
|
@ -1272,8 +1272,8 @@ static void TT_TimeTableDrawAdjustRow (void)
|
|||
unsigned Weekday;
|
||||
unsigned Minicolumn;
|
||||
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"TT_HOURCOL\"></td>");
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"TT_HOURCOL\"></td>");
|
||||
TT_DrawCellAlignTimeTable ();
|
||||
for (Weekday = 0;
|
||||
Weekday < TT_DAYS_PER_WEEK;
|
||||
|
|
20
swad_user.c
20
swad_user.c
|
@ -6311,8 +6311,8 @@ void Usr_PutCheckboxToSelectAllUsers (Rol_Role_t Role)
|
|||
extern const char *Txt_ROLES_PLURAL_Abc[Rol_NUM_ROLES][Usr_NUM_SEXS];
|
||||
Usr_Sex_t Sex;
|
||||
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<th colspan=\"%u\" class=\"LEFT_MIDDLE LIGHT_BLUE\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<th colspan=\"%u\" class=\"LEFT_MIDDLE LIGHT_BLUE\">"
|
||||
"<label>",
|
||||
Usr_GetColumnsForSelectUsrs ());
|
||||
if (Usr_NameSelUnsel[Role] && Usr_ParamUsrCod[Role])
|
||||
|
@ -6554,8 +6554,8 @@ static void Usr_ListMainDataStds (bool PutCheckBoxToSelectUsr)
|
|||
/***** Start table with list of students *****/
|
||||
if (!Gbl.Usrs.ClassPhoto.AllGroups)
|
||||
{
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td colspan=\"%u\" class=\"TIT CENTER_MIDDLE\">",
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td colspan=\"%u\" class=\"TIT CENTER_MIDDLE\">",
|
||||
1 + Usr_NUM_MAIN_FIELDS_DATA_USR);
|
||||
Grp_WriteNamesOfSelectedGrps ();
|
||||
fprintf (Gbl.F.Out,"</td>"
|
||||
|
@ -6883,8 +6883,8 @@ void Usr_ListAllDataStds (void)
|
|||
Tbl_StartTableWide ();
|
||||
if (!Gbl.Usrs.ClassPhoto.AllGroups)
|
||||
{
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td colspan=\"%u\" class=\"TIT CENTER_MIDDLE\">",
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td colspan=\"%u\" class=\"TIT CENTER_MIDDLE\">",
|
||||
NumColumnsTotal);
|
||||
Grp_WriteNamesOfSelectedGrps ();
|
||||
fprintf (Gbl.F.Out,"</td>"
|
||||
|
@ -6931,8 +6931,8 @@ void Usr_ListAllDataStds (void)
|
|||
Gbl.Crs.Records.LstFields.Lst[NumField].Name);
|
||||
|
||||
/* 4. Visibility type for the record fields that depend on the course, in other row */
|
||||
fprintf (Gbl.F.Out,"</tr>"
|
||||
"<tr>");
|
||||
fprintf (Gbl.F.Out,"</tr>");
|
||||
Tbl_StartRow ();
|
||||
for (NumCol = 0;
|
||||
NumCol < NumColumnsCardAndGroups;
|
||||
NumCol++)
|
||||
|
@ -7237,8 +7237,8 @@ unsigned Usr_ListUsrsFound (Rol_Role_t Role,
|
|||
if (Role != Rol_GST && // Guests do not belong to any course
|
||||
Gbl.Usrs.Me.Role.Logged >= Rol_DEG_ADM) // Only admins can view the courses
|
||||
{
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td colspan=\"2\" class=\"COLOR%u\"></td>"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td colspan=\"2\" class=\"COLOR%u\"></td>"
|
||||
"<td colspan=\"%u\" class=\"COLOR%u\">",
|
||||
Gbl.RowEvenOdd,
|
||||
Usr_NUM_MAIN_FIELDS_DATA_USR-2,
|
||||
|
|
13
swad_zip.c
13
swad_zip.c
|
@ -42,6 +42,7 @@
|
|||
#include "swad_ID.h"
|
||||
#include "swad_parameter.h"
|
||||
#include "swad_string.h"
|
||||
#include "swad_table.h"
|
||||
#include "swad_theme.h"
|
||||
|
||||
/*****************************************************************************/
|
||||
|
@ -566,8 +567,8 @@ static void ZIP_ShowLinkToDownloadZIP (const char *FileName,const char *URL,
|
|||
Box_StartBoxTableShadow (NULL,NULL,NULL,NULL,2);
|
||||
|
||||
/***** Link to download the file *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td colspan=\"2\" class=\"FILENAME_TXT CENTER_MIDDLE\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td colspan=\"2\" class=\"FILENAME_TXT CENTER_MIDDLE\">"
|
||||
"<a href=\"%s\" class=\"FILENAME_TXT\" title=\"%s\" target=\"_blank\">"
|
||||
"<img src=\"%s32x32/zip32x32.gif\""
|
||||
" alt=\"%s\" title=\"%s\""
|
||||
|
@ -589,8 +590,8 @@ static void ZIP_ShowLinkToDownloadZIP (const char *FileName,const char *URL,
|
|||
Txt_Download);
|
||||
|
||||
/***** Filename *****/
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"%s RIGHT_MIDDLE\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"%s RIGHT_MIDDLE\">"
|
||||
"%s:"
|
||||
"</td>"
|
||||
"<td class=\"DAT LEFT_MIDDLE\">"
|
||||
|
@ -602,8 +603,8 @@ static void ZIP_ShowLinkToDownloadZIP (const char *FileName,const char *URL,
|
|||
|
||||
/***** Write the file size *****/
|
||||
Fil_WriteFileSizeFull ((double) FileSize,FileSizeStr);
|
||||
fprintf (Gbl.F.Out,"<tr>"
|
||||
"<td class=\"%s RIGHT_MIDDLE\">"
|
||||
Tbl_StartRow ();
|
||||
fprintf (Gbl.F.Out,"<td class=\"%s RIGHT_MIDDLE\">"
|
||||
"%s:"
|
||||
"</td>"
|
||||
"<td class=\"DAT LEFT_MIDDLE\">"
|
||||
|
|
Loading…
Reference in New Issue