Version19.42.2

This commit is contained in:
Antonio Cañas Vargas 2019-10-23 21:12:40 +02:00
parent d3ab3b9297
commit 8824f0ba48
44 changed files with 337 additions and 400 deletions

View File

@ -105,13 +105,12 @@ void QR_PrintQRCode (void)
void QR_ImageQRCode (const char *QRString)
{
fprintf (Gbl.F.Out,"<div class=\"CM\""
" style=\"margin:0 auto; width:%upx;\">"
"<img src=\"https://chart.googleapis.com/chart?cht=qr&amp;chs=%ux%u&amp;chl=%s\""
fprintf (Gbl.F.Out,"<div class=\"CM\" style=\"margin:0 auto; width:%upx;\">",
QR_CODE_SIZE);
fprintf (Gbl.F.Out,"<img src=\"https://chart.googleapis.com/chart?cht=qr&amp;chs=%ux%u&amp;chl=%s\""
" alt=\"%s\" title=\"%s\""
" style=\"width:%upx; height:%upx;"
" border:1px dashed silver;\" />",
QR_CODE_SIZE,
QR_CODE_SIZE,QR_CODE_SIZE,
QRString,
QRString,
@ -150,8 +149,8 @@ void QR_ExamAnnnouncement (void)
extern const char *Txt_Link_to_announcement_of_exam;
/***** Show QR code with direct link to the exam announcement *****/
fprintf (Gbl.F.Out,"<div class=\"CM\">"
"<img src=\"https://chart.googleapis.com/chart?cht=qr&amp;chs=%ux%u&amp;chl=%s/?crs=%ld%%26act=%ld\""
fprintf (Gbl.F.Out,"<div class=\"CM\">");
fprintf (Gbl.F.Out,"<img src=\"https://chart.googleapis.com/chart?cht=qr&amp;chs=%ux%u&amp;chl=%s/?crs=%ld%%26act=%ld\""
" alt=\"%s\" title=\"%s\""
" style=\"width:250px; height:250px;\" />",
300,300,

View File

@ -412,14 +412,14 @@ static void Ale_ShowFixAlertAndButton1 (Ale_AlertType_t AlertType,const char *Tx
Frm_SetUniqueId (IdAlert);
fprintf (Gbl.F.Out," id=\"%s\"",IdAlert);
}
fprintf (Gbl.F.Out," class=\"CM\">"
"<div class=\"ALERT\">");
fprintf (Gbl.F.Out," class=\"CM\">");
fprintf (Gbl.F.Out,"<div class=\"ALERT\">");
/***** Icon to close the alert *****/
if (AlertClosable[AlertType])
{
fprintf (Gbl.F.Out,"<div class=\"ALERT_CLOSE\">"
"<a href=\"\""
fprintf (Gbl.F.Out,"<div class=\"ALERT_CLOSE\">");
fprintf (Gbl.F.Out,"<a href=\"\""
" onclick=\"toggleDisplay('%s');return false;\" />"
"<img src=\"%s/close.svg\""
" alt=\"%s\" title=\"%s\""
@ -436,8 +436,8 @@ static void Ale_ShowFixAlertAndButton1 (Ale_AlertType_t AlertType,const char *Tx
if (AlertType != Ale_NONE)
fprintf (Gbl.F.Out," style=\"background-image:url('%s/%s');\"",
Cfg_URL_ICON_PUBLIC,Ale_AlertIcons[AlertType]);
fprintf (Gbl.F.Out,">%s",
Txt);
fprintf (Gbl.F.Out,">");
fprintf (Gbl.F.Out,"%s",Txt);
HTM_DIV_End ();
}

View File

@ -324,15 +324,13 @@ static void Ann_DrawAnAnnouncement (long AnnCod,Ann_Status_t Status,
}
/***** Write the subject of the announcement *****/
fprintf (Gbl.F.Out,"<div class=\"%s\">"
"%s",
SubjectClass[Status],Subject);
fprintf (Gbl.F.Out,"<div class=\"%s\">",SubjectClass[Status]);
fprintf (Gbl.F.Out,"%s",Subject);
HTM_DIV_End ();
/***** Write the content of the announcement *****/
fprintf (Gbl.F.Out,"<div class=\"%s\">"
"%s",
ContentClass[Status],Content);
fprintf (Gbl.F.Out,"<div class=\"%s\">",ContentClass[Status]);
fprintf (Gbl.F.Out,"%s",Content);
HTM_DIV_End ();
/***** Write form *****/

View File

@ -443,11 +443,10 @@ static void Asg_ShowOneAssignment (long AsgCod,bool PrintView)
HTM_TD_Begin ("colspan=\"2\" class=\"LT COLOR%u\"",Gbl.RowEvenOdd);
if (Gbl.Crs.Grps.NumGrps)
Asg_GetAndWriteNamesOfGrpsAssociatedToAsg (&Asg);
fprintf (Gbl.F.Out,"<div class=\"PAR %s\">"
"%s",
fprintf (Gbl.F.Out,"<div class=\"PAR %s\">",
Asg.Hidden ? "DAT_LIGHT" :
"DAT",
Txt);
"DAT");
fprintf (Gbl.F.Out,"%s",Txt);
HTM_DIV_End ();
HTM_TD_End ();
@ -1633,9 +1632,10 @@ static void Asg_GetAndWriteNamesOfGrpsAssociatedToAsg (struct Assignment *Asg)
Asg->AsgCod);
/***** Write heading *****/
fprintf (Gbl.F.Out,"<div class=\"%s\">%s: ",
fprintf (Gbl.F.Out,"<div class=\"%s\">",
Asg->Hidden ? "ASG_GRP_LIGHT" :
"ASG_GRP",
"ASG_GRP");
fprintf (Gbl.F.Out,"%s: ",
(NumRows == 1) ? Txt_Group :
Txt_Groups);

View File

@ -481,11 +481,10 @@ static void Att_ShowOneAttEvent (struct AttendanceEvent *Att,bool ShowOnlyThisAt
HTM_TD_Begin ("colspan=\"2\" class=\"LT COLOR%u\"",Gbl.RowEvenOdd);
if (Gbl.Crs.Grps.NumGrps)
Att_GetAndWriteNamesOfGrpsAssociatedToAttEvent (Att);
fprintf (Gbl.F.Out,"<div class=\"%s\">"
"%s",
fprintf (Gbl.F.Out,"<div class=\"%s\">",
Att->Hidden ? "DAT_LIGHT" :
"DAT",
Description);
"DAT");
fprintf (Gbl.F.Out,"%s",Description);
HTM_DIV_End ();
HTM_TD_End ();
@ -1524,9 +1523,10 @@ static void Att_GetAndWriteNamesOfGrpsAssociatedToAttEvent (struct AttendanceEve
Att->AttCod);
/***** Write heading *****/
fprintf (Gbl.F.Out,"<div class=\"%s\">%s: ",
fprintf (Gbl.F.Out,"<div class=\"%s\">",
Att->Hidden ? "ASG_GRP_LIGHT" :
"ASG_GRP",
"ASG_GRP");
fprintf (Gbl.F.Out,"%s: ",
(NumGrps == 1) ? Txt_Group :
Txt_Groups);

View File

@ -195,11 +195,10 @@ static void Box_StartBoxInternal (const char *Width,const char *Title,
/***** Frame title *****/
if (Title)
{
fprintf (Gbl.F.Out,"<div class=\"FRAME_TITLE %s\">"
"%s",
fprintf (Gbl.F.Out,"<div class=\"FRAME_TITLE %s\">",
Gbl.Box.Nested ? "FRAME_TITLE_SMALL" :
"FRAME_TITLE_BIG",
Title);
"FRAME_TITLE_BIG");
fprintf (Gbl.F.Out,"%s",Title);
HTM_DIV_End ();
}
}

View File

@ -99,8 +99,8 @@ void Btn_PutButtonInline (Btn_Button_t Button,const char *TxtButton)
void Btn_PutCreateButton (const char *TxtButton)
{
fprintf (Gbl.F.Out,"<div class=\"CM\">"
"<button type=\"submit\" class=\"BT_SUBMIT BT_CREATE\">"
fprintf (Gbl.F.Out,"<div class=\"CM\">");
fprintf (Gbl.F.Out,"<button type=\"submit\" class=\"BT_SUBMIT BT_CREATE\">"
"%s"
"</button>",
TxtButton);
@ -117,8 +117,8 @@ void Btn_PutCreateButtonInline (const char *TxtButton)
void Btn_PutConfirmButton (const char *TxtButton)
{
fprintf (Gbl.F.Out,"<div class=\"CM\">"
"<button type=\"submit\" class=\"BT_SUBMIT BT_CONFIRM\">"
fprintf (Gbl.F.Out,"<div class=\"CM\">");
fprintf (Gbl.F.Out,"<button type=\"submit\" class=\"BT_SUBMIT BT_CONFIRM\">"
"%s"
"</button>",
TxtButton);
@ -135,8 +135,8 @@ void Btn_PutConfirmButtonInline (const char *TxtButton)
void Btn_PutRemoveButton (const char *TxtButton)
{
fprintf (Gbl.F.Out,"<div class=\"CM\">"
"<button type=\"submit\" class=\"BT_SUBMIT BT_REMOVE\">"
fprintf (Gbl.F.Out,"<div class=\"CM\">");
fprintf (Gbl.F.Out,"<button type=\"submit\" class=\"BT_SUBMIT BT_REMOVE\">"
"%s"
"</button>",
TxtButton);

View File

@ -391,9 +391,8 @@ static void Ctr_Configuration (bool PrintView)
}
else if (PhotoAttribution)
{
fprintf (Gbl.F.Out,"<div class=\"ATTRIBUTION\">"
"%s",
PhotoAttribution);
fprintf (Gbl.F.Out,"<div class=\"ATTRIBUTION\">");
fprintf (Gbl.F.Out,"%s",PhotoAttribution);
HTM_DIV_End ();
}
@ -587,8 +586,8 @@ static void Ctr_Configuration (bool PrintView)
}
else // I can not change centre WWW
{
fprintf (Gbl.F.Out,"<div class=\"EXTERNAL_WWW_LONG\">"
"<a href=\"%s\" target=\"_blank\" class=\"DAT\">"
fprintf (Gbl.F.Out,"<div class=\"EXTERNAL_WWW_LONG\">");
fprintf (Gbl.F.Out,"<a href=\"%s\" target=\"_blank\" class=\"DAT\">"
"%s"
"</a>",
Gbl.Hierarchy.Ctr.WWW,
@ -1606,8 +1605,8 @@ static void Ctr_ListCentresForEdition (void)
{
Str_Copy (WWW,Ctr->WWW,
Cns_MAX_BYTES_WWW);
fprintf (Gbl.F.Out,"<div class=\"EXTERNAL_WWW_SHORT\">"
"<a href=\"%s\" target=\"_blank\""
fprintf (Gbl.F.Out,"<div class=\"EXTERNAL_WWW_SHORT\">");
fprintf (Gbl.F.Out,"<a href=\"%s\" target=\"_blank\""
" class=\"DAT\" title=\"%s\">"
"%s"
"</a>",

View File

@ -487,7 +487,7 @@ enscript -2 --landscape --color --file-align=2 --highlight --line-numbers -o - *
En OpenSWAD:
ps2pdf source.ps destination.pdf
*/
#define Log_PLATFORM_VERSION "SWAD 19.42.1 (2019-10-23)"
#define Log_PLATFORM_VERSION "SWAD 19.42.2 (2019-10-23)"
#define CSS_FILE "swad19.41.3.css"
#define JS_FILE "swad19.39.js"
/*
@ -495,6 +495,7 @@ ps2pdf source.ps destination.pdf
// TODO: Hacer un nuevo rol en los TFG: tutor externo (profesor de áreas no vinculadas con el centro, profesionales de empresas, etc.)
// TODO: Change icon to upload file in timeline to photo-video.svg
Version 19.42.2: Oct 23, 2019 Code refactoring in HTML divs. (246025 lines)
Version 19.42.1: Oct 23, 2019 Code refactoring in HTML divs. (246088 lines)
Version 19.42: Oct 23, 2019 Module swad_table is renamed as swad_HTML. (245956 lines)
Version 19.41.4: Oct 23, 2019 Number of cols in match in range [1...4]. (245955 lines)

View File

@ -268,9 +268,8 @@ static void Con_ShowConnectedUsrsBelongingToLocation (void)
/***** Number of connected users who belong to scope *****/
Con_GetNumConnectedUsrsWithARoleBelongingCurrentLocation (Rol_UNK,&Usrs);
fprintf (Gbl.F.Out,"<div class=\"CONNECTED_TXT\">%u %s ",
Usrs.NumUsrs,
Txt_from);
fprintf (Gbl.F.Out,"<div class=\"CONNECTED_TXT\">");
fprintf (Gbl.F.Out,"%u %s ",Usrs.NumUsrs,Txt_from);
/* Put form to change scope */
Frm_StartForm (ActLstCon);

View File

@ -308,9 +308,8 @@ static void Cty_Configuration (bool PrintView)
}
else if (MapAttribution)
{
fprintf (Gbl.F.Out,"<div class=\"ATTRIBUTION\">"
"%s",
MapAttribution);
fprintf (Gbl.F.Out,"<div class=\"ATTRIBUTION\">");
fprintf (Gbl.F.Out,"%s",MapAttribution);
HTM_DIV_End ();
}

View File

@ -471,8 +471,8 @@ static void Deg_Configuration (bool PrintView)
}
else // I can not change degree WWW
{
fprintf (Gbl.F.Out,"<div class=\"EXTERNAL_WWW_LONG\">"
"<a href=\"%s\" target=\"_blank\" class=\"DAT\">"
fprintf (Gbl.F.Out,"<div class=\"EXTERNAL_WWW_LONG\">");
fprintf (Gbl.F.Out,"<a href=\"%s\" target=\"_blank\" class=\"DAT\">"
"%s"
"</a>",
Gbl.Hierarchy.Deg.WWW,
@ -835,8 +835,8 @@ static void Deg_ListDegreesForEdition (void)
{
Str_Copy (WWW,Deg->WWW,
Cns_MAX_BYTES_WWW);
fprintf (Gbl.F.Out,"<div class=\"EXTERNAL_WWW_SHORT\">"
"<a href=\"%s\" target=\"_blank\""
fprintf (Gbl.F.Out,"<div class=\"EXTERNAL_WWW_SHORT\">");
fprintf (Gbl.F.Out,"<a href=\"%s\" target=\"_blank\""
" class=\"DAT\" title=\"%s\">"
"%s"
"</a>",

View File

@ -728,28 +728,22 @@ static void Enr_ShowFormRegRemSeveralUsrs (Rol_Role_t Role)
Hlp_USERS_Administration_administer_multiple_users,Box_NOT_CLOSABLE);
/***** Step 1: List of students to be enroled / removed *****/
fprintf (Gbl.F.Out,"<div class=\"%s LM\">"
"%s",
The_ClassTitle[Gbl.Prefs.Theme],
Txt_Step_1_Provide_a_list_of_users);
fprintf (Gbl.F.Out,"<div class=\"%s LM\">",The_ClassTitle[Gbl.Prefs.Theme]);
fprintf (Gbl.F.Out,"%s",Txt_Step_1_Provide_a_list_of_users);
HTM_DIV_End ();
Ale_ShowAlert (Ale_INFO,Txt_Type_or_paste_a_list_of_IDs_nicks_or_emails_);
Enr_PutAreaToEnterUsrsIDs ();
/***** Step 2: Put different actions to register/remove users to/from current course *****/
fprintf (Gbl.F.Out,"<div class=\"%s LM\">"
"%s",
The_ClassTitle[Gbl.Prefs.Theme],
Txt_Step_2_Select_the_desired_action);
fprintf (Gbl.F.Out,"<div class=\"%s LM\">",The_ClassTitle[Gbl.Prefs.Theme]);
fprintf (Gbl.F.Out,"%s",Txt_Step_2_Select_the_desired_action);
HTM_DIV_End ();
Enr_PutActionsRegRemSeveralUsrs ();
/***** Step 3: Select groups in which register / remove users *****/
fprintf (Gbl.F.Out,"<div class=\"%s LM\">"
"%s",
The_ClassTitle[Gbl.Prefs.Theme],
Txt_Step_3_Optionally_select_groups);
fprintf (Gbl.F.Out,"<div class=\"%s LM\">",The_ClassTitle[Gbl.Prefs.Theme]);
fprintf (Gbl.F.Out,"%s",Txt_Step_3_Optionally_select_groups);
HTM_DIV_End ();
if (Gbl.Hierarchy.Level == Hie_CRS) // Course selected
{
@ -765,10 +759,8 @@ static void Enr_ShowFormRegRemSeveralUsrs (Rol_Role_t Role)
}
/***** Step 4: Confirm register / remove students *****/
fprintf (Gbl.F.Out,"<div class=\"%s LM\">"
"%s",
The_ClassTitle[Gbl.Prefs.Theme],
Txt_Step_4_Confirm_the_enrolment_removing);
fprintf (Gbl.F.Out,"<div class=\"%s LM\">",The_ClassTitle[Gbl.Prefs.Theme]);
fprintf (Gbl.F.Out,"%s",Txt_Step_4_Confirm_the_enrolment_removing);
HTM_DIV_End ();
Pwd_AskForConfirmationOnDangerousAction ();

View File

@ -3372,7 +3372,7 @@ static void Brw_ShowDataOwnerAsgWrk (struct UsrData *UsrDat)
/***** Begin form to send a message to this user *****/
HTM_TD_Begin ("class=\"LT\"");
fprintf (Gbl.F.Out,"<div class=\"OWNER_WORKS_DATA AUTHOR_TXT\"");
fprintf (Gbl.F.Out,"<div class=\"OWNER_WORKS_DATA AUTHOR_TXT\">");
switch (UsrDat->Roles.InCurrentCrs.Role)
{
@ -4069,9 +4069,8 @@ static void Brw_WriteSubtitleOfFileBrowser (void)
}
if (Subtitle[0])
{
fprintf (Gbl.F.Out,"<div class=\"BROWSER_SUBTITLE\">"
"%s",
Subtitle);
fprintf (Gbl.F.Out,"<div class=\"BROWSER_SUBTITLE\">");
fprintf (Gbl.F.Out,"%s",Subtitle);
HTM_DIV_End ();
}
}
@ -6306,8 +6305,8 @@ static void Brw_WriteFileName (unsigned Level,bool IsPublic)
HTM_TD_Begin ("class=\"%s LM\" style=\"width:99%%;\"",
Gbl.FileBrowser.TxtStyle);
fprintf (Gbl.F.Out,"&nbsp;"
"<div class=\"FILENAME\">");
fprintf (Gbl.F.Out,"&nbsp;");
fprintf (Gbl.F.Out,"<div class=\"FILENAME\">");
Frm_StartForm (Brw_ActDowFile[Gbl.FileBrowser.Type]);
Brw_PutImplicitParamsFileBrowser ();
@ -8405,8 +8404,8 @@ static void Brw_PutFormToUploadFilesUsingDropzone (const char *FileNameToShow)
Par_PutHiddenParamString ("ses",Gbl.Session.Id);
Brw_PutImplicitParamsFileBrowser ();
fprintf (Gbl.F.Out,"<div class=\"dz-message\">"
"<span class=\"DAT_LIGHT\">%s</span>",
fprintf (Gbl.F.Out,"<div class=\"dz-message\">");
fprintf (Gbl.F.Out,"<span class=\"DAT_LIGHT\">%s</span>",
Txt_Select_one_or_more_files_from_your_computer_or_drag_and_drop_here);
HTM_DIV_End ();
Frm_EndForm ();

View File

@ -518,8 +518,8 @@ void Fol_ShowFollowingAndFollowers (const struct UsrData *UsrDat,
Lay_StartSection (Fol_FOLLOW_SECTION_ID);
/***** Followed users *****/
fprintf (Gbl.F.Out,"<div id=\"following_side\">"
"<div class=\"FOLLOW_SIDE\">");
fprintf (Gbl.F.Out,"<div id=\"following_side\">");
fprintf (Gbl.F.Out,"<div class=\"FOLLOW_SIDE\">");
/* User follows me? */
fprintf (Gbl.F.Out,"<div id=\"follows_me\" class=\"DAT_LIGHT\">");
@ -537,8 +537,8 @@ void Fol_ShowFollowingAndFollowers (const struct UsrData *UsrDat,
HTM_DIV_End ();
/***** Followers *****/
fprintf (Gbl.F.Out,"<div id=\"followers_side\">"
"<div class=\"FOLLOW_SIDE\">");
fprintf (Gbl.F.Out,"<div id=\"followers_side\">");
fprintf (Gbl.F.Out,"<div class=\"FOLLOW_SIDE\">");
/* Number of followers */
Fol_ShowNumberOfFollowingOrFollowers (UsrDat,
@ -556,8 +556,8 @@ void Fol_ShowFollowingAndFollowers (const struct UsrData *UsrDat,
Usr_PutParamUsrCodEncrypted (UsrDat->EncryptedUsrCod);
Frm_LinkFormSubmit (Txt_Following_unfollow,"REC_DAT_BOLD",NULL);
fprintf (Gbl.F.Out,"<div class=\"ICO_HIGHLIGHT\""
" style=\"display:inline;\" >"
"<img src=\"%s/user-check.svg\""
" style=\"display:inline;\" >");
fprintf (Gbl.F.Out,"<img src=\"%s/user-check.svg\""
" alt=\"%s\" title=\"%s\""
" class=\"ICO40x40\" />",
Cfg_URL_ICON_PUBLIC,
@ -572,8 +572,8 @@ void Fol_ShowFollowingAndFollowers (const struct UsrData *UsrDat,
Usr_PutParamUsrCodEncrypted (UsrDat->EncryptedUsrCod);
Frm_LinkFormSubmit (Txt_Follow,"REC_DAT_BOLD",NULL);
fprintf (Gbl.F.Out,"<div class=\"ICO_HIGHLIGHT\""
" style=\"display:inline;\" >"
"<img src=\"%s/user-plus.svg\""
" style=\"display:inline;\" >");
fprintf (Gbl.F.Out,"<img src=\"%s/user-plus.svg\""
" alt=\"%s\" title=\"%s\""
" class=\"ICO40x40\" />",
Cfg_URL_ICON_PUBLIC,
@ -954,10 +954,8 @@ static void Fol_WriteRowUsrToFollowOnRightColumn (struct UsrData *UsrDat)
static void Fol_PutInactiveIconToFollowUnfollow (void)
{
/***** Inactive icon to follow/unfollow *****/
fprintf (Gbl.F.Out,"<div class=\"FOLLOW_USR_ICO ICO_HIDDEN\">"
"<img src=\"%s/user.svg\""
" alt=\"\""
" class=\"ICO16x16\" />",
fprintf (Gbl.F.Out,"<div class=\"FOLLOW_USR_ICO ICO_HIDDEN\">");
fprintf (Gbl.F.Out,"<img src=\"%s/user.svg\" alt=\"\" class=\"ICO16x16\" />",
Cfg_URL_ICON_PUBLIC);
HTM_DIV_End ();
}
@ -974,10 +972,9 @@ static void Fol_PutIconToFollow (struct UsrData *UsrDat)
Frm_StartForm (ActFolUsr);
Usr_PutParamUsrCodEncrypted (UsrDat->EncryptedUsrCod);
Frm_LinkFormSubmit (Txt_Follow,NULL,NULL);
fprintf (Gbl.F.Out,"<div class=\"FOLLOW_USR_ICO ICO_HIGHLIGHT\">"
"<img src=\"%s/user-plus.svg\""
" alt=\"%s\" title=\"%s\""
" class=\"ICO16x16\" />",
fprintf (Gbl.F.Out,"<div class=\"FOLLOW_USR_ICO ICO_HIGHLIGHT\">");
fprintf (Gbl.F.Out,"<img src=\"%s/user-plus.svg\""
" alt=\"%s\" title=\"%s\" class=\"ICO16x16\" />",
Cfg_URL_ICON_PUBLIC,
Txt_Follow,Txt_Follow);
HTM_DIV_End ();
@ -997,10 +994,9 @@ static void Fol_PutIconToUnfollow (struct UsrData *UsrDat)
Frm_StartForm (ActUnfUsr);
Usr_PutParamUsrCodEncrypted (UsrDat->EncryptedUsrCod);
Frm_LinkFormSubmit (Txt_Unfollow,NULL,NULL);
fprintf (Gbl.F.Out,"<div class=\"FOLLOW_USR_ICO ICO_HIGHLIGHT\">"
"<img src=\"%s/user-check.svg\""
" alt=\"%s\" title=\"%s\""
" class=\"ICO16x16\" />",
fprintf (Gbl.F.Out,"<div class=\"FOLLOW_USR_ICO ICO_HIGHLIGHT\">");
fprintf (Gbl.F.Out,"<img src=\"%s/user-check.svg\""
" alt=\"%s\" title=\"%s\" class=\"ICO16x16\" />",
Cfg_URL_ICON_PUBLIC,
Txt_Unfollow,Txt_Unfollow);
HTM_DIV_End ();

View File

@ -1757,8 +1757,8 @@ static void For_PutFormWhichForums (void)
- only the forums of current institution/degree/course *****/
Frm_StartForm (ActSeeFor);
For_PutParamForumOrder (Gbl.Forum.ThreadsOrder);
fprintf (Gbl.F.Out,"<div class=\"SEL_BELOW_TITLE\">"
"<ul>");
fprintf (Gbl.F.Out,"<div class=\"SEL_BELOW_TITLE\">");
fprintf (Gbl.F.Out,"<ul>");
for (ForumSet = (For_ForumSet_t) 0;
ForumSet < For_NUM_FORUM_SETS;

View File

@ -461,12 +461,10 @@ void Gam_ShowOneGame (long GamCod,
Lay_EndArticle ();
/* Number of questions */
fprintf (Gbl.F.Out,"<div class=\"%s\">"
"%s: %u",
fprintf (Gbl.F.Out,"<div class=\"%s\">",
Game.Hidden ? "ASG_GRP_LIGHT" :
"ASG_GRP",
Txt_No_of_questions,
Game.NumQsts);
"ASG_GRP");
fprintf (Gbl.F.Out,"%s: %u",Txt_No_of_questions,Game.NumQsts);
HTM_DIV_End ();
HTM_TD_End ();
@ -513,11 +511,10 @@ void Gam_ShowOneGame (long GamCod,
Str_ChangeFormat (Str_FROM_HTML,Str_TO_RIGOROUS_HTML,
Txt,Cns_MAX_BYTES_TEXT,false); // Convert from HTML to rigorous HTML
Str_InsertLinks (Txt,Cns_MAX_BYTES_TEXT,60); // Insert links
fprintf (Gbl.F.Out,"<div class=\"PAR %s\">"
"%s",
fprintf (Gbl.F.Out,"<div class=\"PAR %s\">",
Game.Hidden ? "DAT_LIGHT" :
"DAT",
Txt);
"DAT");
fprintf (Gbl.F.Out,"%s",Txt);
HTM_DIV_End ();
HTM_TD_End ();
@ -1741,15 +1738,14 @@ static void Gam_ListOneOrMoreQuestionsForEdition (long GamCod,unsigned NumQsts,
HTM_TD_Begin ("class=\"RT COLOR%u\"",Gbl.RowEvenOdd);
/* Write number of question */
fprintf (Gbl.F.Out,"<div class=\"BIG_INDEX\">"
"%s",
StrQstInd);
fprintf (Gbl.F.Out,"<div class=\"BIG_INDEX\">");
fprintf (Gbl.F.Out,"%s",StrQstInd);
HTM_DIV_End ();
/* Write answer type (row[2]) */
Gbl.Test.AnswerType = Tst_ConvertFromStrAnsTypDBToAnsTyp (row[2]);
fprintf (Gbl.F.Out,"<div class=\"DAT_SMALL\">%s",
Txt_TST_STR_ANSWER_TYPES[Gbl.Test.AnswerType]);
fprintf (Gbl.F.Out,"<div class=\"DAT_SMALL\">");
fprintf (Gbl.F.Out,"%s",Txt_TST_STR_ANSWER_TYPES[Gbl.Test.AnswerType]);
HTM_DIV_End ();
HTM_TD_End ();

View File

@ -410,8 +410,7 @@ void Grp_ShowFormToSelectSeveralGroups (void (*FuncParams) (void),
Grp_FreeListGrpTypesAndGrps ();
/***** Submit button *****/
fprintf (Gbl.F.Out,"<div class=\"CM\""
" style=\"padding-top:12px;\">");
fprintf (Gbl.F.Out,"<div class=\"CM\" style=\"padding-top:12px;\">");
Frm_LinkFormSubmitAnimated (Txt_Update_users,
The_ClassFormInBoxBold[Gbl.Prefs.Theme],
"CopyMessageToHiddenFields();");
@ -453,8 +452,8 @@ static void Grp_PutCheckboxAllGrps (Grp_WhichGroups_t GroupsSelectableByStdsOrNE
break;
}
fprintf (Gbl.F.Out,"<div class=\"CONTEXT_OPT\">"
"<input type=\"checkbox\""
fprintf (Gbl.F.Out,"<div class=\"CONTEXT_OPT\">");
fprintf (Gbl.F.Out,"<input type=\"checkbox\""
" id=\"AllGroups\" name=\"AllGroups\" value=\"Y\"");
if (ICanSelUnselGroup)
{

View File

@ -207,7 +207,8 @@ void Hie_WriteHierarchyInBreadcrumb (void)
const char *ClassTxt = The_ClassBreadcrumb[Gbl.Prefs.Theme];
/***** Form to go to the system *****/
fprintf (Gbl.F.Out,"<div class=\"BC %s\">&nbsp;",ClassTxt);
fprintf (Gbl.F.Out,"<div class=\"BC %s\">",ClassTxt);
fprintf (Gbl.F.Out,"&nbsp;");
Frm_StartFormGoTo (ActMnu);
Par_PutHiddenParamUnsigned ("NxtTab",(unsigned) TabSys);
@ -439,19 +440,19 @@ void Hie_WriteBigNameCtyInsCtrDegCrs (void)
fprintf (Gbl.F.Out,"<div id=\"big_name_container\">");
if (Gbl.Hierarchy.Cty.CtyCod > 0)
{
fprintf (Gbl.F.Out,"<div id=\"big_full_name\">"
"%s", // Full name
fprintf (Gbl.F.Out,"<div id=\"big_full_name\">");
fprintf (Gbl.F.Out,"%s", // Full name
(Gbl.Hierarchy.Level == Hie_CRS) ? Gbl.Hierarchy.Crs.FullName :
((Gbl.Hierarchy.Level == Hie_DEG) ? Gbl.Hierarchy.Deg.FullName :
((Gbl.Hierarchy.Level == Hie_CTR) ? Gbl.Hierarchy.Ctr.FullName :
((Gbl.Hierarchy.Level == Hie_INS) ? Gbl.Hierarchy.Ins.FullName :
Gbl.Hierarchy.Cty.Name[Gbl.Prefs.Language]))));
HTM_DIV_End ();
fprintf (Gbl.F.Out,"<div class=\"NOT_SHOWN\">"
" / "); // To separate
fprintf (Gbl.F.Out,"<div class=\"NOT_SHOWN\">");
fprintf (Gbl.F.Out," / "); // To separate
HTM_DIV_End ();
fprintf (Gbl.F.Out,"<div id=\"big_short_name\">"
"%s", // Short name
fprintf (Gbl.F.Out,"<div id=\"big_short_name\">");
fprintf (Gbl.F.Out,"%s", // Short name
(Gbl.Hierarchy.Level == Hie_CRS) ? Gbl.Hierarchy.Crs.ShrtName :
((Gbl.Hierarchy.Level == Hie_DEG) ? Gbl.Hierarchy.Deg.ShrtName :
((Gbl.Hierarchy.Level == Hie_CTR) ? Gbl.Hierarchy.Ctr.ShrtName :
@ -461,15 +462,15 @@ void Hie_WriteBigNameCtyInsCtrDegCrs (void)
}
else // No country specified ==> home page
{
fprintf (Gbl.F.Out,"<div id=\"big_full_name\">"
"%s: %s", // Full name
fprintf (Gbl.F.Out,"<div id=\"big_full_name\">");
fprintf (Gbl.F.Out,"%s: %s", // Full name
Cfg_PLATFORM_SHORT_NAME,Txt_TAGLINE);
HTM_DIV_End ();
fprintf (Gbl.F.Out,"<div class=\"NOT_SHOWN\">"
" / "); // To separate
fprintf (Gbl.F.Out,"<div class=\"NOT_SHOWN\">");
fprintf (Gbl.F.Out," / "); // To separate
HTM_DIV_End ();
fprintf (Gbl.F.Out,"<div id=\"big_short_name\">"
"%s", // Short name
fprintf (Gbl.F.Out,"<div id=\"big_short_name\">");
fprintf (Gbl.F.Out,"%s", // Short name
Cfg_PLATFORM_SHORT_NAME);
HTM_DIV_End ();
}

View File

@ -332,11 +332,9 @@ void Ico_PutContextualIconToZIP (Act_Action_t NextAction,void (*FuncParams) (voi
void Ico_PutDivIcon (const char *DivClass,const char *Icon,const char *Title)
{
fprintf (Gbl.F.Out,"<div class=\"%s\">"
"<img src=\"%s/%s\""
" alt=\"%s\" title=\"%s\""
fprintf (Gbl.F.Out,"<div class=\"%s\">",DivClass);
fprintf (Gbl.F.Out,"<img src=\"%s/%s\" alt=\"%s\" title=\"%s\""
" class=\"CONTEXT_ICO_16x16\" />",
DivClass,
Cfg_URL_ICON_PUBLIC,Icon,
Title,Title);
HTM_DIV_End ();
@ -373,8 +371,8 @@ void Ico_PutIconLink (const char *Icon,const char *Title)
void Ico_PutIconTextLink (const char *Icon,const char *Text)
{
/***** Print icon and optional text *****/
fprintf (Gbl.F.Out,"<div class=\"CONTEXT_OPT ICO_HIGHLIGHT\">"
"<img src=\"%s/%s\" alt=\"%s\" title=\"%s\""
fprintf (Gbl.F.Out,"<div class=\"CONTEXT_OPT ICO_HIGHLIGHT\">");
fprintf (Gbl.F.Out,"<img src=\"%s/%s\" alt=\"%s\" title=\"%s\""
" class=\"CONTEXT_ICO_x16\" />"
"&nbsp;%s",
Cfg_URL_ICON_PUBLIC,Icon,Text,Text,
@ -413,8 +411,8 @@ void Ico_PutIconOff (const char *Icon,const char *Title)
void Ico_PutCalculateIcon (const char *Title)
{
fprintf (Gbl.F.Out,"<div class=\"CONTEXT_OPT ICO_HIGHLIGHT\">"
"<img id=\"update_%d\" src=\"%s/recycle16x16.gif\"" // TODO: change name and resolution to refresh64x64.png
fprintf (Gbl.F.Out,"<div class=\"CONTEXT_OPT ICO_HIGHLIGHT\">");
fprintf (Gbl.F.Out,"<img id=\"update_%d\" src=\"%s/recycle16x16.gif\"" // TODO: change name and resolution to refresh64x64.png
" alt=\"%s\" title=\"%s\""
" class=\"CONTEXT_ICO_16x16\" />"
"<img id=\"updating_%d\" src=\"%s/working16x16.gif\"" // TODO: change name and resolution to refreshing64x64.gif
@ -435,8 +433,8 @@ void Ico_PutCalculateIcon (const char *Title)
void Ico_PutCalculateIconWithText (const char *Text)
{
fprintf (Gbl.F.Out,"<div class=\"ICO_HIGHLIGHT\""
" style=\"margin:0 6px 0 0; display:inline;\">"
"<img id=\"update_%d\" src=\"%s/recycle16x16.gif\""
" style=\"margin:0 6px 0 0; display:inline;\">");
fprintf (Gbl.F.Out,"<img id=\"update_%d\" src=\"%s/recycle16x16.gif\""
" alt=\"%s\" title=\"%s\""
" class=\"ICO20x20\" />"
"<img id=\"updating_%d\" src=\"%s/working16x16.gif\""

View File

@ -599,8 +599,8 @@ void Inf_WriteMsgYouMustReadInfo (void)
Ale_ShowAlert (Ale_WARNING,Txt_You_should_read_the_following_information);
/***** Write every information I must read *****/
fprintf (Gbl.F.Out,"<div class=\"CM\">"
"<ul class=\"LIST_LEFT\""
fprintf (Gbl.F.Out,"<div class=\"CM\">");
fprintf (Gbl.F.Out,"<ul class=\"LIST_LEFT\""
" style=\"list-style-type:initial;\">");
for (InfoType = (Inf_InfoType_t) 0;
InfoType < Inf_NUM_INFO_TYPES;
@ -1272,8 +1272,8 @@ void Inf_FormToSendPage (Inf_InfoSrc_t InfoSrc)
Frm_StartForm (Inf_ActionsInfo[InfoSrc][Gbl.Crs.Info.Type]);
/***** File *****/
fprintf (Gbl.F.Out,"<div class=\"CM\">"
"<label class=\"%s\">"
fprintf (Gbl.F.Out,"<div class=\"CM\">");
fprintf (Gbl.F.Out,"<label class=\"%s\">"
"%s:&nbsp;"
"<input type=\"file\" name=\"%s\" />"
"</label>",
@ -1307,8 +1307,8 @@ void Inf_FormToSendURL (Inf_InfoSrc_t InfoSrc)
Frm_StartForm (Inf_ActionsInfo[InfoSrc][Gbl.Crs.Info.Type]);
/***** Link *****/
fprintf (Gbl.F.Out,"<div class=\"CM\">"
"<label class=\"%s\">"
fprintf (Gbl.F.Out,"<div class=\"CM\">");
fprintf (Gbl.F.Out,"<label class=\"%s\">"
"%s:&nbsp;"
"<input type=\"url\" name=\"InfoSrcURL\""
" size=\"50\" maxlength=\"256\" value=\"",

View File

@ -485,8 +485,8 @@ static void Ins_Configuration (bool PrintView)
}
else // I can not change institution WWW
{
fprintf (Gbl.F.Out,"<div class=\"EXTERNAL_WWW_LONG\">"
"<a href=\"%s\" target=\"_blank\" class=\"DAT\">"
fprintf (Gbl.F.Out,"<div class=\"EXTERNAL_WWW_LONG\">");
fprintf (Gbl.F.Out,"<a href=\"%s\" target=\"_blank\" class=\"DAT\">"
"%s"
"</a>",
Gbl.Hierarchy.Ins.WWW,
@ -1555,8 +1555,8 @@ static void Ins_ListInstitutionsForEdition (void)
{
Str_Copy (WWW,Ins->WWW,
Cns_MAX_BYTES_WWW);
fprintf (Gbl.F.Out,"<div class=\"EXTERNAL_WWW_SHORT\">"
"<a href=\"%s\" target=\"_blank\""
fprintf (Gbl.F.Out,"<div class=\"EXTERNAL_WWW_SHORT\">");
fprintf (Gbl.F.Out,"<a href=\"%s\" target=\"_blank\""
" class=\"DAT\" title=\"%s\">"
"%s"
"</a>",

View File

@ -270,13 +270,13 @@ void Lay_WriteStartOfPage (void)
switch (BrowserTab)
{
case Act_BRW_1ST_TAB:
fprintf (Gbl.F.Out,"<body onload=\"init();\">\n"
"<div id=\"zoomLyr\" class=\"ZOOM\">"
"<img id=\"zoomImg\" src=\"%s/usr_bl.jpg\""
fprintf (Gbl.F.Out,"<body onload=\"init();\">\n");
fprintf (Gbl.F.Out,"<div id=\"zoomLyr\" class=\"ZOOM\">");
fprintf (Gbl.F.Out,"<img id=\"zoomImg\" src=\"%s/usr_bl.jpg\""
" alt=\"\" title=\"\""
" class=\"IMG_USR\" />"
"<div id=\"zoomTxt\" class=\"CM\">",
" class=\"IMG_USR\" />",
Cfg_URL_ICON_PUBLIC);
fprintf (Gbl.F.Out,"<div id=\"zoomTxt\" class=\"CM\">");
HTM_DIV_End ();
HTM_DIV_End ();
break;
@ -1046,17 +1046,17 @@ static void Lay_WriteTitleAction (void)
Act_GetIcon (Act_GetSuperAction (Gbl.Action.Act)));
/***** Title *****/
fprintf (Gbl.F.Out,"<div class=\"%s\">"
"%s &gt; %s",
The_ClassTitleAction[Gbl.Prefs.Theme],
fprintf (Gbl.F.Out,"<div class=\"%s\">",
The_ClassTitleAction[Gbl.Prefs.Theme]);
fprintf (Gbl.F.Out,"%s &gt; %s",
Txt_TABS_TXT[Act_GetTab (Gbl.Action.Act)],
Act_GetTitleAction (Gbl.Action.Act));
HTM_DIV_End ();
/***** Subtitle *****/
fprintf (Gbl.F.Out,"<div class=\"%s\">"
"%s",
The_ClassSubtitleAction[Gbl.Prefs.Theme],
fprintf (Gbl.F.Out,"<div class=\"%s\">",
The_ClassSubtitleAction[Gbl.Prefs.Theme]);
fprintf (Gbl.F.Out,"%s",
Act_GetSubtitleAction (Gbl.Action.Act));
HTM_DIV_End ();
@ -1162,8 +1162,8 @@ static void Lay_ShowRightColumn (void)
if (!Gbl.Usrs.Me.Logged)
{
/***** SWADroid advertisement *****/
fprintf (Gbl.F.Out,"<div class=\"LEFT_RIGHT_CELL\">"
"<a href=\"https://play.google.com/store/apps/details?id=es.ugr.swad.swadroid\""
fprintf (Gbl.F.Out,"<div class=\"LEFT_RIGHT_CELL\">");
fprintf (Gbl.F.Out,"<a href=\"https://play.google.com/store/apps/details?id=es.ugr.swad.swadroid\""
" target=\"_blank\" title=\"%s\">"
"<img src=\"%s/SWADroid120x200.png\""
" alt=\"SWADroid\" title=\"SWADroid\""
@ -1286,12 +1286,12 @@ void Lay_PutContextualCheckbox (Act_Action_t NextAction,
FuncParams ();
/***** Start container and label *****/
fprintf (Gbl.F.Out,"<div class=\"CONTEXT_OPT %s %s\" title=\"%s\">"
"<label>",
fprintf (Gbl.F.Out,"<div class=\"CONTEXT_OPT %s %s\" title=\"%s\">",
Checked ? "CHECKBOX_CHECKED" :
"CHECKBOX_UNCHECKED",
The_ClassFormOutBoxBold[Gbl.Prefs.Theme],
Title);
fprintf (Gbl.F.Out,"<label>");
/****** Checkbox and text *****/
fprintf (Gbl.F.Out,"<input type=\"checkbox\" name=\"%s\" value=\"Y\"",
@ -1472,20 +1472,19 @@ static void Lay_WriteAboutZone (void)
fprintf (Gbl.F.Out,"<a href=\"%s\" class=\"ABOUT\" target=\"_blank\">"
"<img src=\"%s/%s\""
" alt=\"%s\" title=\"%s\""
" style=\"width:%upx; height:%upx;\" />"
"<div>"
"%s",
" style=\"width:%upx; height:%upx;\" />",
Cfg_ABOUT_URL,
Cfg_URL_ICON_PUBLIC,Cfg_ABOUT_LOGO,
Cfg_ABOUT_NAME,Cfg_ABOUT_NAME,
Cfg_ABOUT_LOGO_WIDTH,Cfg_ABOUT_LOGO_HEIGHT,
Cfg_ABOUT_NAME);
Cfg_ABOUT_LOGO_WIDTH,Cfg_ABOUT_LOGO_HEIGHT);
fprintf (Gbl.F.Out,"<div>");
fprintf (Gbl.F.Out,"%s",Cfg_ABOUT_NAME);
HTM_DIV_End ();
fprintf (Gbl.F.Out,"</a>");
/***** Questions and problems *****/
fprintf (Gbl.F.Out,"<div>"
"%s: "
fprintf (Gbl.F.Out,"<div>");
fprintf (Gbl.F.Out,"%s: "
"<a href=\"mailto:%s\" class=\"ABOUT\" target=\"_blank\">%s</a>",
Txt_Questions_and_problems,
Cfg_PLATFORM_RESPONSIBLE_EMAIL,Cfg_PLATFORM_RESPONSIBLE_EMAIL);
@ -1802,8 +1801,8 @@ static void Lay_HelpTextEditor (const char *Text,const char *InlineMath,const ch
extern const char *Txt_Inline_math;
extern const char *Txt_Equation_centered;
fprintf (Gbl.F.Out,"<div class=\"HELP_EDIT\">"
"%s: %s"
fprintf (Gbl.F.Out,"<div class=\"HELP_EDIT\">");
fprintf (Gbl.F.Out,"%s: %s"
" "
"%s: <code>%s</code>"
" "

View File

@ -990,8 +990,8 @@ static void Mai_ListEmails (void)
HTM_DIV_End ();
/***** Icon to open the client email program *****/
fprintf (Gbl.F.Out,"<div class=\"CONTEXT_MENU\">"
"<a href=\"mailto:%s?subject=%s&cc=%s&bcc=%s\""
fprintf (Gbl.F.Out,"<div class=\"CONTEXT_MENU\">");
fprintf (Gbl.F.Out,"<a href=\"mailto:%s?subject=%s&cc=%s&bcc=%s\""
" title=\"%s\" class=\"%s\">",
Gbl.Usrs.Me.UsrDat.Email,
Gbl.Hierarchy.Crs.FullName,

View File

@ -609,7 +609,8 @@ static void Mch_GetAndWriteNamesOfGrpsAssociatedToMatch (const struct Match *Mat
Match->MchCod);
/***** Write heading *****/
fprintf (Gbl.F.Out,"<div class=\"ASG_GRP\">%s: ",
fprintf (Gbl.F.Out,"<div class=\"ASG_GRP\">");
fprintf (Gbl.F.Out,"%s: ",
NumRows == 1 ? Txt_Group :
Txt_Groups);
@ -674,9 +675,8 @@ static void Mch_ListOneOrMoreMatchesStatus (const struct Match *Match,unsigned N
if (Match->Status.QstInd < Mch_AFTER_LAST_QUESTION) // Unfinished match
{
/* Current question index / total of questions */
fprintf (Gbl.F.Out,"<div class=\"DAT\">"
"%u/%u",
Match->Status.QstInd,NumQsts);
fprintf (Gbl.F.Out,"<div class=\"DAT\">");
fprintf (Gbl.F.Out,"%u/%u",Match->Status.QstInd,NumQsts);
HTM_DIV_End ();
}
@ -2168,8 +2168,8 @@ static void Mch_ShowRefreshablePartTch (struct Match *Match)
/***** Number of users who have answered this question *****/
NumAnswerersQst = Mch_GetNumUsrsWhoHaveAnswerQst (Match->MchCod,
Match->Status.QstInd);
fprintf (Gbl.F.Out,"<div class=\"MCH_NUM_ANSWERERS\">"
"%s<br />"
fprintf (Gbl.F.Out,"<div class=\"MCH_NUM_ANSWERERS\">");
fprintf (Gbl.F.Out,"%s<br />"
"<strong>",
Txt_MATCH_respond);
if (Match->Status.QstInd > 0 &&
@ -2442,9 +2442,8 @@ static void Mch_ShowFormViewResult (struct Match *Match)
static void Mch_ShowMatchTitle (struct Match *Match)
{
/***** Match title *****/
fprintf (Gbl.F.Out,"<div class=\"MCH_TOP\">"
"%s",
Match->Title);
fprintf (Gbl.F.Out,"<div class=\"MCH_TOP\">");
fprintf (Gbl.F.Out,"%s",Match->Title);
HTM_DIV_End ();
}
@ -2869,8 +2868,8 @@ static void Mch_PutBigButton (Act_Action_t NextAction,const char *Id,
Mch_PutParamMchCod (MchCod);
/***** Put icon with link *****/
fprintf (Gbl.F.Out,"<div class=\"MCH_BUTTON_CONTAINER\">"
"<a href=\"\" class=\"MCH_BUTTON_ON\" title=\"%s\" "
fprintf (Gbl.F.Out,"<div class=\"MCH_BUTTON_CONTAINER\">");
fprintf (Gbl.F.Out,"<a href=\"\" class=\"MCH_BUTTON_ON\" title=\"%s\" "
" onclick=\"document.getElementById('%s').submit();"
" return false;\">"
"<i class=\"%s\"></i>"
@ -2887,10 +2886,9 @@ static void Mch_PutBigButton (Act_Action_t NextAction,const char *Id,
static void Mch_PutBigButtonOff (const char *Icon)
{
/***** Put inactive icon *****/
fprintf (Gbl.F.Out,"<div class=\"MCH_BUTTON_CONTAINER\">"
"<div class=\"MCH_BUTTON_OFF\">"
"<i class=\"%s\"></i>",
Icon);
fprintf (Gbl.F.Out,"<div class=\"MCH_BUTTON_CONTAINER\">");
fprintf (Gbl.F.Out,"<div class=\"MCH_BUTTON_OFF\">");
fprintf (Gbl.F.Out,"<i class=\"%s\"></i>",Icon);
HTM_DIV_End ();
HTM_DIV_End ();
}
@ -2900,8 +2898,8 @@ static void Mch_PutBigButtonClose (void)
extern const char *Txt_Close;
/***** Put icon with link *****/
fprintf (Gbl.F.Out,"<div class=\"MCH_BUTTON_CONTAINER\">"
"<a href=\"\" class=\"MCH_BUTTON_ON\" title=\"%s\" "
fprintf (Gbl.F.Out,"<div class=\"MCH_BUTTON_CONTAINER\">");
fprintf (Gbl.F.Out,"<a href=\"\" class=\"MCH_BUTTON_ON\" title=\"%s\" "
" onclick=\"window.close();"
" return false;\"\">"
"<i class=\"%s\"></i>"
@ -2916,10 +2914,9 @@ static void Mch_PutBigButtonClose (void)
static void Mch_ShowWaitImage (const char *Txt)
{
fprintf (Gbl.F.Out,"<div class=\"MCH_WAIT_CONTAINER\">"
"<img src=\"%s/wait.gif\""
" alt=\"%s\" title=\"%s\""
" class=\"MCH_WAIT_IMG\" />",
fprintf (Gbl.F.Out,"<div class=\"MCH_WAIT_CONTAINER\">");
fprintf (Gbl.F.Out,"<img src=\"%s/wait.gif\""
" alt=\"%s\" title=\"%s\" class=\"MCH_WAIT_IMG\" />",
Cfg_URL_ICON_PUBLIC,
Txt,
Txt);

View File

@ -354,14 +354,14 @@ void Med_PutMediaUploader (int NumMediaInForm,const char *ClassInput)
fprintf (Gbl.F.Out,"<div class=\"MED_UPLOADER\">"); // container
/***** Icon 'clip' *****/
fprintf (Gbl.F.Out,"<div id=\"%s_med_ico\">" // <id>_med_ico
"<a href=\"\""
fprintf (Gbl.F.Out,"<div id=\"%s_med_ico\">",Id); // <id>_med_ico
fprintf (Gbl.F.Out,"<a href=\"\""
" onclick=\"mediaActivateMediaUploader('%s');return false;\">"
"<img src=\"%s/paperclip.svg\""
" alt=\"%s\" title=\"%s\""
" class=\"ICO_HIGHLIGHT ICOx16\" />"
"</a>",
Id,Id,
Id,
Cfg_URL_ICON_PUBLIC,
Txt_Multimedia,Txt_Multimedia);
HTM_DIV_End (); // <id>_med_ico
@ -380,8 +380,8 @@ void Med_PutMediaUploader (int NumMediaInForm,const char *ClassInput)
/***** Icons *****/
/* Start icons */
fprintf (Gbl.F.Out,"<div class=\"PREF_CONTAINERS\">" // icons containers
"<div class=\"PREF_CONTAINER\">"); // icons container
fprintf (Gbl.F.Out,"<div class=\"PREF_CONTAINERS\">"); // icons containers
fprintf (Gbl.F.Out,"<div class=\"PREF_CONTAINER\">"); // icons container
/* Upload icon */
Med_PutIconMediaUploader (Id,"ico_upl", // <id>_ico_upl
@ -420,8 +420,8 @@ void Med_PutMediaUploader (int NumMediaInForm,const char *ClassInput)
/***** Media file *****/
fprintf (Gbl.F.Out,"<div>"
"<input id=\"%s_fil\" type=\"file\"" // <id>_fil
fprintf (Gbl.F.Out,"<div>");
fprintf (Gbl.F.Out,"<input id=\"%s_fil\" type=\"file\"" // <id>_fil
" name=\"%s\" accept=\"image/,video/\""
" class=\"%s\" disabled=\"disabled\""
" style=\"display:none;\" />",
@ -431,8 +431,8 @@ void Med_PutMediaUploader (int NumMediaInForm,const char *ClassInput)
HTM_DIV_End (); // <id>_fil
/***** Media URL *****/
fprintf (Gbl.F.Out,"<div>"
"<input id=\"%s_url\" type=\"url\"" // <id>_url
fprintf (Gbl.F.Out,"<div>");
fprintf (Gbl.F.Out,"<input id=\"%s_url\" type=\"url\"" // <id>_url
" name=\"%s\" placeholder=\"%s\""
" class=\"%s\" maxlength=\"%u\" value=\"\""
" disabled=\"disabled\""
@ -443,8 +443,8 @@ void Med_PutMediaUploader (int NumMediaInForm,const char *ClassInput)
HTM_DIV_End (); // <id>_url
/***** Media title *****/
fprintf (Gbl.F.Out,"<div>"
"<input id=\"%s_tit\" type=\"text\"" // <id>_tit
fprintf (Gbl.F.Out,"<div>");
fprintf (Gbl.F.Out,"<input id=\"%s_tit\" type=\"text\"" // <id>_tit
" name=\"%s\" placeholder=\"%s\""
" class=\"%s\" maxlength=\"%u\" value=\"\""
" disabled=\"disabled\""
@ -475,12 +475,12 @@ static void Med_PutIconMediaUploader (const char UniqueId[Frm_MAX_BYTES_ID + 1],
const char *Title)
{
/***** Icon to activate form in media uploader *****/
fprintf (Gbl.F.Out,"<div id=\"%s_%s\" class=\"PREF_OFF\">" // <id>_IdSuffix
"<a href=\"\" onclick=\"%s('%s');return false;\">"
fprintf (Gbl.F.Out,"<div id=\"%s_%s\" class=\"PREF_OFF\">", // <id>_IdSuffix
UniqueId,IdSuffix);
fprintf (Gbl.F.Out,"<a href=\"\" onclick=\"%s('%s');return false;\">"
"<img src=\"%s/%s\" alt=\"%s\" title=\"%s\""
" class=\"ICO_HIGHLIGHT ICOx16\" />"
"</a>",
UniqueId,IdSuffix,
FunctionName,UniqueId,
Cfg_URL_ICON_PUBLIC,Icon,Title,Title);
HTM_DIV_End (); // <id>_IdSuffix
@ -1723,8 +1723,8 @@ static void Med_ShowYoutube (struct Media *Media,const char *ClassMedia)
// allow="accelerometer; autoplay; encrypted-media;
// gyroscope; picture-in-picture" allowfullscreen>
// </iframe>
fprintf (Gbl.F.Out,"<div class=\"MED_VIDEO_CONT\">"
"<iframe src=\"https://www.youtube.com/embed/%s\""
fprintf (Gbl.F.Out,"<div class=\"MED_VIDEO_CONT\">");
fprintf (Gbl.F.Out,"<iframe src=\"https://www.youtube.com/embed/%s\""
" frameborder=\"0\""
" allow=\"accelerometer; autoplay; encrypted-media;"
" gyroscope; picture-in-picture\""
@ -1763,8 +1763,8 @@ static void Med_ShowEmbed (struct Media *Media,const char *ClassMedia)
// style="border:1px solid #CCC; border-width:1px; margin-bottom:5px; max-width: 100%;"
// allowfullscreen>
// </iframe>
fprintf (Gbl.F.Out,"<div class=\"MED_EMBED_CONT\">"
"<iframe src=\"%s\""
fprintf (Gbl.F.Out,"<div class=\"MED_EMBED_CONT\">");
fprintf (Gbl.F.Out,"<iframe src=\"%s\""
" frameborder=\"0\""
" marginwidth=\"0\" marginheight=\"0\" scrolling=\"no\""
" allowfullscreen=\"allowfullscreen\""

View File

@ -375,10 +375,9 @@ void Mnu_WriteMenuThisTab (void)
Act_GetIcon (NumAct));
/***** Text *****/
fprintf (Gbl.F.Out,"<div class=\"MENU_TEXT %s\">"
"%s",
The_ClassTxtMenu[Gbl.Prefs.Theme],
Txt_MENU_TITLE[Gbl.Action.Tab][NumOptInMenu]);
fprintf (Gbl.F.Out,"<div class=\"MENU_TEXT %s\">",
The_ClassTxtMenu[Gbl.Prefs.Theme]);
fprintf (Gbl.F.Out,"%s",Txt_MENU_TITLE[Gbl.Action.Tab][NumOptInMenu]);
HTM_DIV_End ();
/***** End link and form *****/

View File

@ -449,11 +449,10 @@ static void Msg_ShowOneUniqueRecipient (void)
HTM_DIV_End ();
/***** Write user's name *****/
fprintf (Gbl.F.Out,"<div class=\"MSG_TO_ONE_RCP %s\">"
"%s",
fprintf (Gbl.F.Out,"<div class=\"MSG_TO_ONE_RCP %s\">",
Gbl.Usrs.Other.UsrDat.Accepted ? "DAT_SMALL_NOBR_N" :
"DAT_SMALL_NOBR",
Gbl.Usrs.Other.UsrDat.FullName);
"DAT_SMALL_NOBR");
fprintf (Gbl.F.Out,"%s",Gbl.Usrs.Other.UsrDat.FullName);
HTM_DIV_End ();
/***** Hidden parameter with user's nickname *****/
@ -3283,9 +3282,8 @@ bool Msg_WriteCrsOrgMsg (long CrsCod)
ThereIsOrgCrs = true;
if ((FromThisCrs = (CrsCod == Gbl.Hierarchy.Crs.CrsCod))) // Message sent from current course
{
fprintf (Gbl.F.Out,"<div class=\"AUTHOR_TXT\">"
"(%s)",
Txt_from_this_course);
fprintf (Gbl.F.Out,"<div class=\"AUTHOR_TXT\">");
fprintf (Gbl.F.Out,"(%s)",Txt_from_this_course);
HTM_DIV_End ();
}
else // Message sent from another course
@ -3293,8 +3291,8 @@ bool Msg_WriteCrsOrgMsg (long CrsCod)
/* Write course, including link */
Frm_StartFormGoTo (ActSeeCrsInf);
Crs_PutParamCrsCod (Crs.CrsCod);
fprintf (Gbl.F.Out,"<div class=\"AUTHOR_TXT\">"
"(");
fprintf (Gbl.F.Out,"<div class=\"AUTHOR_TXT\">");
fprintf (Gbl.F.Out,"(");
snprintf (Gbl.Title,sizeof (Gbl.Title),
Txt_Go_to_X,
Crs.FullName);
@ -3308,9 +3306,8 @@ bool Msg_WriteCrsOrgMsg (long CrsCod)
}
if (!ThereIsOrgCrs) // It's an old message without origin source specified, or is a message sent from none course
{
fprintf (Gbl.F.Out,"<div class=\"AUTHOR_TXT\">"
"(%s)",
Txt_no_course_of_origin);
fprintf (Gbl.F.Out,"<div class=\"AUTHOR_TXT\">");
fprintf (Gbl.F.Out,"(%s)",Txt_no_course_of_origin);
HTM_DIV_End ();
}

View File

@ -251,9 +251,8 @@ static void Net_ShowAWebOrSocialNet (const char *URL,
const char *Icon,const char *Title)
{
/***** Write link and icon *****/
fprintf (Gbl.F.Out,"<div class=\"ICO_HIGHLIGHT\""
" style=\"display:inline;\">"
"<a href=\"%s\" target=\"_blank\" title=\"%s\">"
fprintf (Gbl.F.Out,"<div class=\"ICO_HIGHLIGHT\" style=\"display:inline;\">");
fprintf (Gbl.F.Out,"<a href=\"%s\" target=\"_blank\" title=\"%s\">"
"<img src=\"%s/%s\""
" alt=\"%s\" title=\"%s\""
" class=\"ICO16x16\" />"

View File

@ -469,8 +469,8 @@ void Not_ShowNotices (Not_Listing_t TypeNoticesListing,long HighlightNotCod)
RSS_UpdateRSSFileForACrs (&Gbl.Hierarchy.Crs);
/* Put a link to the RSS file */
fprintf (Gbl.F.Out,"<div class=\"CM\">"
"<a href=\"");
fprintf (Gbl.F.Out,"<div class=\"CM\">");
fprintf (Gbl.F.Out,"<a href=\"");
RSS_WriteRSSLink (Gbl.F.Out,Gbl.Hierarchy.Crs.CrsCod);
fprintf (Gbl.F.Out,"\" target=\"_blank\">"
"<img src=\"%s/rss-square.svg\""
@ -712,9 +712,8 @@ static void Not_DrawANotice (Not_Listing_t TypeNoticesListing,
/***** Write the content of the notice *****/
if (TypeNoticesListing == Not_LIST_BRIEF_NOTICES)
{
fprintf (Gbl.F.Out,"<div class=\"NOTICE_TEXT_BRIEF\">"
"%s",
Content);
fprintf (Gbl.F.Out,"<div class=\"NOTICE_TEXT_BRIEF\">");
fprintf (Gbl.F.Out,"%s",Content);
HTM_DIV_End ();
/* Put form to view full notice */
@ -727,9 +726,8 @@ static void Not_DrawANotice (Not_Listing_t TypeNoticesListing,
}
else
{
fprintf (Gbl.F.Out,"<div class=\"%s\">"
"%s",
TextClass[Status],Content);
fprintf (Gbl.F.Out,"<div class=\"%s\">",TextClass[Status]);
fprintf (Gbl.F.Out,"%s",Content);
HTM_DIV_End ();
}

View File

@ -888,8 +888,8 @@ void Pwd_AskForConfirmationOnDangerousAction (void)
extern const char *Txt_I_understand_that_this_action_can_not_be_undone;
extern const char *Txt_For_security_enter_your_password;
fprintf (Gbl.F.Out,"<div class=\"CM\" style=\"margin:12px;\">"
"<label class=\"%s\">"
fprintf (Gbl.F.Out,"<div class=\"CM\" style=\"margin:12px;\">");
fprintf (Gbl.F.Out,"<label class=\"%s\">"
"<input type=\"checkbox\" name=\"Consent\" value=\"Y\" />"
"%s"
"</label>"

View File

@ -784,8 +784,8 @@ static bool Pho_ReceivePhotoAndDetectFaces (bool ItsMe,const struct UsrData *Usr
"%s/%s_map.jpg",
Cfg_PATH_PHOTO_TMP_PUBLIC,
Gbl.UniqueNameEncrypted);
fprintf (Gbl.F.Out,"<div class=\"TIT CM\">"
"<img src=\"%s/%s_map.jpg\""
fprintf (Gbl.F.Out,"<div class=\"TIT CM\">");
fprintf (Gbl.F.Out,"<img src=\"%s/%s_map.jpg\""
" usemap=\"#faces_map\""
" alt=\"%s\" title=\"%s\" />",
Cfg_URL_PHOTO_TMP_PUBLIC,
@ -1218,9 +1218,8 @@ void Pho_ShowUsrPhoto (const struct UsrData *UsrDat,const char *PhotoURL,
/* Nickname */
if (UsrDat->Nickname[0])
{
fprintf (Gbl.F.Out,"<div class=\"ZOOM_TXT_LINE DAT_SMALL_N\">"
"@%s",
UsrDat->Nickname);
fprintf (Gbl.F.Out,"<div class=\"ZOOM_TXT_LINE DAT_SMALL_N\">");
fprintf (Gbl.F.Out,"@%s",UsrDat->Nickname);
HTM_DIV_End ();
}
@ -1244,11 +1243,11 @@ void Pho_ShowUsrPhoto (const struct UsrData *UsrDat,const char *PhotoURL,
Usr_GetMainDeg (UsrDat->UsrCod,MainDegreeShrtName,&MaxRole);
if (MainDegreeShrtName[0])
{
fprintf (Gbl.F.Out,"<div class=\"ZOOM_TXT_LINE DAT_SMALL\">"
"<div class=\"ZOOM_DEG\""
" style=\"background-image:url('%s/%s');\">"
"%s",
Cfg_URL_ICON_PUBLIC,Rol_Icons[MaxRole],
fprintf (Gbl.F.Out,"<div class=\"ZOOM_TXT_LINE DAT_SMALL\">");
fprintf (Gbl.F.Out,"<div class=\"ZOOM_DEG\""
" style=\"background-image:url('%s/%s');\">",
Cfg_URL_ICON_PUBLIC,Rol_Icons[MaxRole]);
fprintf (Gbl.F.Out,"%s",
MainDegreeShrtName);
HTM_DIV_End ();
HTM_DIV_End ();
@ -1258,8 +1257,8 @@ void Pho_ShowUsrPhoto (const struct UsrData *UsrDat,const char *PhotoURL,
if (UsrDat->Nickname[0]) // Get social data only if nickname is retrieved (in some actions)
{
Fol_GetNumFollow (UsrDat->UsrCod,&NumFollowing,&NumFollowers);
fprintf (Gbl.F.Out,"<div class=\"ZOOM_TXT_LINE\">"
"<span class=\"DAT_N_BOLD\">%u</span>"
fprintf (Gbl.F.Out,"<div class=\"ZOOM_TXT_LINE\">");
fprintf (Gbl.F.Out,"<span class=\"DAT_N_BOLD\">%u</span>"
"<span class=\"DAT_SMALL\">&nbsp;%s&nbsp;</span>"
"<span class=\"DAT_N_BOLD\">%u</span>"
"<span class=\"DAT_SMALL\">&nbsp;%s</span>",
@ -2491,10 +2490,9 @@ static void Pho_ShowDegreeAvgPhotoAndStat (struct Degree *Deg,
NumStds > 0 ? (int) (((NumStdsWithPhoto * 100.0) / NumStds) + 0.5) :
0);
Frm_SetUniqueId (IdCaption);
fprintf (Gbl.F.Out,"<div id=\"%s\" class=\"NOT_SHOWN\">"
"<div class=\"ZOOM_TXT_LINE DAT_N\">"
"%s",
IdCaption,PhotoCaption);
fprintf (Gbl.F.Out,"<div id=\"%s\" class=\"NOT_SHOWN\">",IdCaption);
fprintf (Gbl.F.Out,"<div class=\"ZOOM_TXT_LINE DAT_N\">");
fprintf (Gbl.F.Out,"%s",PhotoCaption);
HTM_DIV_End ();
HTM_DIV_End ();
}
@ -2519,8 +2517,8 @@ static void Pho_ShowDegreeAvgPhotoAndStat (struct Degree *Deg,
PhotoWidth,PhotoHeight);
/***** Caption *****/
fprintf (Gbl.F.Out,"<div class=\"CLASSPHOTO_CAPTION\">"
"%s<br />"
fprintf (Gbl.F.Out,"<div class=\"CLASSPHOTO_CAPTION\">");
fprintf (Gbl.F.Out,"%s<br />"
"%d&nbsp;%s<br />"
"%d&nbsp;%s<br />"
"(%d%%)",

View File

@ -404,8 +404,8 @@ void Prf_ShowDetailsUserProfile (const struct UsrData *UsrDat)
/***** Left list *****/
/* Start left list */
fprintf (Gbl.F.Out,"<div class=\"PRF_FIG_LEFT_CONTAINER\">"
"<ul class=\"PRF_FIG_UL DAT_NOBR_N\">");
fprintf (Gbl.F.Out,"<div class=\"PRF_FIG_LEFT_CONTAINER\">");
fprintf (Gbl.F.Out,"<ul class=\"PRF_FIG_UL DAT_NOBR_N\">");
/* Time since first click */
Prf_ShowTimeSinceFirstClick (UsrDat,&UsrFigures);

View File

@ -3765,8 +3765,8 @@ static void Rec_WriteLinkToDataProtectionClause (void)
{
extern const char *Txt_DATA_PROTECTION_CLAUSE;
fprintf (Gbl.F.Out,"<div class=\"CM\">"
"<a class=\"TIT\" href=\"%s/\" target=\"_blank\">%s</a>",
fprintf (Gbl.F.Out,"<div class=\"CM\">");
fprintf (Gbl.F.Out,"<a class=\"TIT\" href=\"%s/\" target=\"_blank\">%s</a>",
Cfg_URL_DATA_PROTECTION_PUBLIC,
Txt_DATA_PROTECTION_CLAUSE);
HTM_DIV_End ();

View File

@ -274,8 +274,8 @@ static void Rep_PutLinkToMyUsageReport (struct Rep_Report *Report)
Rep_TitleReport (&Report->CurrentTimeUTC);
/***** Put anchor and report filename *****/
fprintf (Gbl.F.Out,"<div class=\"FILENAME_TXT CM\">"
"<a href=\"%s\" class=\"FILENAME_TXT\""
fprintf (Gbl.F.Out,"<div class=\"FILENAME_TXT CM\">");
fprintf (Gbl.F.Out,"<a href=\"%s\" class=\"FILENAME_TXT\""
" title=\"%s\" target=\"_blank\">"
"<img src=\"%s/file-alt.svg\" alt=\"%s\""
" class=\"ICO64x64\" /><br />"
@ -287,8 +287,8 @@ static void Rep_PutLinkToMyUsageReport (struct Rep_Report *Report)
Txt_Report,
Report->FilenameReport);
HTM_DIV_End ();
fprintf (Gbl.F.Out,"<div class=\"DAT_LIGHT\">"
"%s",
fprintf (Gbl.F.Out,"<div class=\"DAT_LIGHT\">");
fprintf (Gbl.F.Out,"%s",
Txt_This_link_will_remain_active_as_long_as_your_user_s_account_exists);
HTM_DIV_End ();

View File

@ -143,8 +143,8 @@ static void Sch_PutFormToSearchWithWhatToSearchAndScope (Act_Action_t Action,Hie
/***** Scope (whole platform, current country, current institution,
current centre, current degree or current course) *****/
fprintf (Gbl.F.Out,"<div class=\"CM\">"
"<label class=\"%s\">%s:&nbsp;",
fprintf (Gbl.F.Out,"<div class=\"CM\">");
fprintf (Gbl.F.Out,"<label class=\"%s\">%s:&nbsp;",
The_ClassFormInBox[Gbl.Prefs.Theme],Txt_Scope);
Gbl.Scope.Allowed = 1 << Hie_SYS |
1 << Hie_CTY |

View File

@ -4013,7 +4013,7 @@ void Sta_ShowLastClicks (void)
fprintf (Gbl.F.Out,"<div id=\"lastclicks\"" // Used for AJAX based refresh
" class=\"CM\">");
Sta_GetAndShowLastClicks ();
HTM_DIV_End (); // Used for AJAX based refresh
HTM_DIV_End (); // Used for AJAX based refresh
/***** End box *****/
Box_EndBox ();

View File

@ -537,10 +537,10 @@ static void Svy_ShowOneSurvey (long SvyCod,struct SurveyQuestion *SvyQst,
Lay_EndArticle ();
/* Number of questions and number of distinct users who have already answered this survey */
fprintf (Gbl.F.Out,"<div class=\"%s\">"
"%s: %u; %s: %u",
fprintf (Gbl.F.Out,"<div class=\"%s\">",
Svy.Status.Visible ? "ASG_GRP" :
"ASG_GRP_LIGHT",
"ASG_GRP_LIGHT");
fprintf (Gbl.F.Out,"%s: %u; %s: %u",
Txt_No_of_questions,
Svy.NumQsts,
Txt_No_of_users,
@ -610,10 +610,10 @@ static void Svy_ShowOneSurvey (long SvyCod,struct SurveyQuestion *SvyQst,
HTM_TD_Begin ("class=\"LT COLOR%u\"",Gbl.RowEvenOdd);
/* Scope of the survey */
fprintf (Gbl.F.Out,"<div class=\"%s\">%s: ",
fprintf (Gbl.F.Out,"<div class=\"%s\">",
Svy.Status.Visible ? "ASG_GRP" :
"ASG_GRP_LIGHT",
Txt_Scope);
"ASG_GRP_LIGHT");
fprintf (Gbl.F.Out,"%s: ",Txt_Scope);
switch (Svy.Scope)
{
case Hie_UNK: // Unknown
@ -641,10 +641,10 @@ static void Svy_ShowOneSurvey (long SvyCod,struct SurveyQuestion *SvyQst,
HTM_DIV_End ();
/* Users' roles who can answer the survey */
fprintf (Gbl.F.Out,"<div class=\"%s\">%s:<br />",
fprintf (Gbl.F.Out,"<div class=\"%s\">",
Svy.Status.Visible ? "ASG_GRP" :
"ASG_GRP_LIGHT",
Txt_Users);
"ASG_GRP_LIGHT");
fprintf (Gbl.F.Out,"%s:<br />",Txt_Users);
Rol_WriteSelectorRoles (1 << Rol_STD |
1 << Rol_NET |
1 << Rol_TCH,
@ -662,11 +662,10 @@ static void Svy_ShowOneSurvey (long SvyCod,struct SurveyQuestion *SvyQst,
Str_ChangeFormat (Str_FROM_HTML,Str_TO_RIGOROUS_HTML,
Txt,Cns_MAX_BYTES_TEXT,false); // Convert from HTML to rigorous HTML
Str_InsertLinks (Txt,Cns_MAX_BYTES_TEXT,60); // Insert links
fprintf (Gbl.F.Out,"<div class=\"PAR %s\">"
"%s",
fprintf (Gbl.F.Out,"<div class=\"PAR %s\">",
Svy.Status.Visible ? "DAT" :
"DAT_LIGHT",
Txt);
"DAT_LIGHT");
fprintf (Gbl.F.Out,"%s",Txt);
HTM_DIV_End ();
HTM_TD_End ();
@ -2446,11 +2445,11 @@ static void Svy_GetAndWriteNamesOfGrpsAssociatedToSvy (struct Survey *Svy)
Svy->SvyCod);
/***** Write heading *****/
fprintf (Gbl.F.Out,"<div class=\"%s\">%s: ",
fprintf (Gbl.F.Out,"<div class=\"%s\">",
Svy->Status.Visible ? "ASG_GRP" :
"ASG_GRP_LIGHT",
NumRows == 1 ? Txt_Group :
Txt_Groups);
"ASG_GRP_LIGHT");
fprintf (Gbl.F.Out,"%s: ",NumRows == 1 ? Txt_Group :
Txt_Groups);
/***** Write groups *****/
if (NumRows) // Groups found...

View File

@ -141,8 +141,8 @@ void Syl_PutFormWhichSyllabus (void)
/***** Form to select which syllabus I want to see (lectures/practicals) *****/
Frm_StartForm (ActSeeSyl);
fprintf (Gbl.F.Out,"<div class=\"CM\">"
"<ul class=\"LIST_LEFT\">");
fprintf (Gbl.F.Out,"<div class=\"CM\">");
fprintf (Gbl.F.Out,"<ul class=\"LIST_LEFT\">");
for (WhichSyllabus = (Syl_WhichSyllabus_t) 0;
WhichSyllabus < For_NUM_FORUM_SETS;

View File

@ -99,10 +99,9 @@ void Tab_DrawTabs (void)
};
/***** Start tabs container *****/
fprintf (Gbl.F.Out,"<div class=\"%s\">"
"<nav id=\"tabs\">"
"<ul class=\"LIST_TABS\">",
ClassHeadRow3[Gbl.Prefs.Theme]);
fprintf (Gbl.F.Out,"<div class=\"%s\">",ClassHeadRow3[Gbl.Prefs.Theme]);
fprintf (Gbl.F.Out,"<nav id=\"tabs\">"
"<ul class=\"LIST_TABS\">");
/***** Draw the tabs *****/
for (NumTab = (Tab_Tab_t) 1;
@ -138,16 +137,15 @@ void Tab_DrawTabs (void)
NumTab == Gbl.Action.Tab ? The_ClassTxtTabOn[Gbl.Prefs.Theme] :
The_ClassTxtTabOff[Gbl.Prefs.Theme],NULL);
fprintf (Gbl.F.Out,"<img src=\"%s/%s\" alt=\"%s\" title=\"%s\""
" class=\"TAB_ICO\" />"
"<div class=\"TAB_TXT %s\">"
"%s",
" class=\"TAB_ICO\" />",
Gbl.Prefs.URLIconSet,
Tab_GetIcon (NumTab),
Txt_TABS_TXT[NumTab],
Txt_TABS_TXT[NumTab],
NumTab == Gbl.Action.Tab ? The_ClassTxtTabOn[Gbl.Prefs.Theme] :
The_ClassTxtTabOff[Gbl.Prefs.Theme],
Txt_TABS_TXT[NumTab]);
fprintf (Gbl.F.Out,"<div class=\"TAB_TXT %s\">",
NumTab == Gbl.Action.Tab ? The_ClassTxtTabOn[Gbl.Prefs.Theme] :
The_ClassTxtTabOff[Gbl.Prefs.Theme]);
fprintf (Gbl.F.Out,"%s",Txt_TABS_TXT[NumTab]);
HTM_DIV_End ();
fprintf (Gbl.F.Out,"</a>");
Frm_EndForm ();

View File

@ -469,8 +469,8 @@ void Tst_ShowNewTest (void)
HTM_TABLE_End ();
/***** Test result will be saved? *****/
fprintf (Gbl.F.Out,"<div class=\"CM\">"
"<label class=\"%s\">"
fprintf (Gbl.F.Out,"<div class=\"CM\">");
fprintf (Gbl.F.Out,"<label class=\"%s\">"
"<input type=\"checkbox\" name=\"Save\""
" value=\"Y\"",
The_ClassFormInBox[Gbl.Prefs.Theme]);
@ -641,8 +641,8 @@ void Tst_ShowTstTotalMark (unsigned NumQsts,double TotalScore)
double TotalScoreOverSCORE_MAX = TotalScore * Tst_SCORE_MAX / (double) NumQsts;
/***** Write total mark ****/
fprintf (Gbl.F.Out,"<div class=\"DAT CM\">"
"%s: <span class=\"%s\">%.2lf (%.2lf %s %u)</span>",
fprintf (Gbl.F.Out,"<div class=\"DAT CM\">");
fprintf (Gbl.F.Out,"%s: <span class=\"%s\">%.2lf (%.2lf %s %u)</span>",
Txt_Score,
(TotalScoreOverSCORE_MAX >= (double) TotalScoreOverSCORE_MAX / 2.0) ? "ANS_OK" :
"ANS_BAD",
@ -1039,16 +1039,14 @@ static void Tst_WriteQstAndAnsTest (Tst_ActionToDoWithQuestions_t ActionToDoWith
HTM_TD_Begin ("class=\"RT COLOR%u\"",Gbl.RowEvenOdd);
/***** Write number of question *****/
fprintf (Gbl.F.Out,"<div class=\"BIG_INDEX\">"
"%u",
NumQst + 1);
fprintf (Gbl.F.Out,"<div class=\"BIG_INDEX\">");
fprintf (Gbl.F.Out,"%u",NumQst + 1);
HTM_DIV_End ();
/***** Write answer type (row[2]) *****/
Gbl.Test.AnswerType = Tst_ConvertFromStrAnsTypDBToAnsTyp (row[2]);
fprintf (Gbl.F.Out,"<div class=\"DAT_SMALL\">"
"%s",
Txt_TST_STR_ANSWER_TYPES[Gbl.Test.AnswerType]);
fprintf (Gbl.F.Out,"<div class=\"DAT_SMALL\">");
fprintf (Gbl.F.Out,"%s",Txt_TST_STR_ANSWER_TYPES[Gbl.Test.AnswerType]);
HTM_DIV_End ();
HTM_TD_End ();
@ -1107,9 +1105,8 @@ void Tst_WriteQstStem (const char *Stem,const char *ClassStem)
StemRigorousHTML,StemLength,false);
/***** Write the stem *****/
fprintf (Gbl.F.Out,"<div class=\"%s\">"
"%s",
ClassStem,StemRigorousHTML);
fprintf (Gbl.F.Out,"<div class=\"%s\">",ClassStem);
fprintf (Gbl.F.Out,"%s",StemRigorousHTML);
HTM_DIV_End ();
/***** Free memory allocated for the stem *****/
@ -1212,9 +1209,8 @@ void Tst_WriteQstFeedback (const char *Feedback,const char *ClassFeedback)
FeedbackRigorousHTML,FeedbackLength,false);
/***** Write the feedback *****/
fprintf (Gbl.F.Out,"<div class=\"%s\">"
"%s",
ClassFeedback,FeedbackRigorousHTML);
fprintf (Gbl.F.Out,"<div class=\"%s\">",ClassFeedback);
fprintf (Gbl.F.Out,"%s",FeedbackRigorousHTML);
HTM_DIV_End ();
/***** Free memory allocated for the feedback *****/
@ -2921,16 +2917,14 @@ static void Tst_ListOneOrMoreQuestionsForEdition (unsigned long NumRows,
HTM_TD_Begin ("class=\"RT COLOR%u\"",Gbl.RowEvenOdd);
/* Write number of question */
fprintf (Gbl.F.Out,"<div class=\"BIG_INDEX\">"
"%lu",
NumRow + 1);
fprintf (Gbl.F.Out,"<div class=\"BIG_INDEX\">");
fprintf (Gbl.F.Out,"%lu",NumRow + 1);
HTM_DIV_End ();
/* Write answer type (row[2]) */
Gbl.Test.AnswerType = Tst_ConvertFromStrAnsTypDBToAnsTyp (row[2]);
fprintf (Gbl.F.Out,"<div class=\"DAT_SMALL\">"
"%s",
Txt_TST_STR_ANSWER_TYPES[Gbl.Test.AnswerType]);
fprintf (Gbl.F.Out,"<div class=\"DAT_SMALL\">");
fprintf (Gbl.F.Out,"%s",Txt_TST_STR_ANSWER_TYPES[Gbl.Test.AnswerType]);
HTM_DIV_End ();
HTM_TD_End ();
@ -3418,9 +3412,8 @@ void Tst_WriteAnswersEdit (long QstCod)
HTM_TD_Begin ("class=\"LT\"");
/* Write the text of the answer and the media */
fprintf (Gbl.F.Out,"<div class=\"TEST_EDI\">"
"%s",
Answer);
fprintf (Gbl.F.Out,"<div class=\"TEST_EDI\">");
fprintf (Gbl.F.Out,"%s",Answer);
Med_ShowMedia (&Gbl.Test.Answer.Options[NumOpt].Media,
"TEST_MED_EDIT_LIST_CONTAINER",
"TEST_MED_EDIT_LIST");
@ -3888,9 +3881,8 @@ static void Tst_WriteChoiceAnsAssessTest (struct UsrData *UsrDat,
/* Answer text and feedback */
HTM_TD_Begin ("class=\"LT\"");
fprintf (Gbl.F.Out,"<div class=\"ANS_TXT\">"
"%s",
Gbl.Test.Answer.Options[Indexes[NumOpt]].Text);
fprintf (Gbl.F.Out,"<div class=\"ANS_TXT\">");
fprintf (Gbl.F.Out,"%s",Gbl.Test.Answer.Options[Indexes[NumOpt]].Text);
Med_ShowMedia (&Gbl.Test.Answer.Options[Indexes[NumOpt]].Media,
"TEST_MED_SHOW_CONTAINER",
"TEST_MED_SHOW");
@ -3899,9 +3891,8 @@ static void Tst_WriteChoiceAnsAssessTest (struct UsrData *UsrDat,
if (Gbl.Test.Answer.Options[Indexes[NumOpt]].Feedback)
if (Gbl.Test.Answer.Options[Indexes[NumOpt]].Feedback[0])
{
fprintf (Gbl.F.Out,"<div class=\"TEST_EXA_LIGHT\">"
"%s",
Gbl.Test.Answer.Options[Indexes[NumOpt]].Feedback);
fprintf (Gbl.F.Out,"<div class=\"TEST_EXA_LIGHT\">");
fprintf (Gbl.F.Out,"%s",Gbl.Test.Answer.Options[Indexes[NumOpt]].Feedback);
HTM_DIV_End ();
}
HTM_TD_End ();
@ -4201,10 +4192,9 @@ void Tst_WriteChoiceAnsViewMatch (long MchCod,unsigned QstInd,long QstCod,
/***** Write letter for this option *****/
HTM_TD_Begin ("class=\"MCH_TCH_BUTTON_TD\"");
fprintf (Gbl.F.Out,"<div class=\"MCH_TCH_BUTTON BT_%c\">"
"%c",
'A' + (char) NumOpt,
'a' + (char) NumOpt);
fprintf (Gbl.F.Out,"<div class=\"MCH_TCH_BUTTON BT_%c\">",
'A' + (char) NumOpt);
fprintf (Gbl.F.Out,"%c",'a' + (char) NumOpt);
HTM_DIV_End ();
HTM_TD_End ();
@ -4383,17 +4373,15 @@ static void Tst_WriteTextAnsAssessTest (struct UsrData *UsrDat,
/* Answer text and feedback */
HTM_TD_Begin ("class=\"LT\"");
fprintf (Gbl.F.Out,"<div class=\"ANS_0\">"
"%s",
Gbl.Test.Answer.Options[NumOpt].Text);
fprintf (Gbl.F.Out,"<div class=\"ANS_0\">");
fprintf (Gbl.F.Out,"%s",Gbl.Test.Answer.Options[NumOpt].Text);
HTM_DIV_End ();
if (Gbl.Test.Config.Feedback == Tst_FEEDBACK_FULL_FEEDBACK)
if (Gbl.Test.Answer.Options[NumOpt].Feedback)
if (Gbl.Test.Answer.Options[NumOpt].Feedback[0])
{
fprintf (Gbl.F.Out,"<div class=\"TEST_EXA_LIGHT\">"
"%s",
Gbl.Test.Answer.Options[NumOpt].Feedback);
fprintf (Gbl.F.Out,"<div class=\"TEST_EXA_LIGHT\">");
fprintf (Gbl.F.Out,"%s",Gbl.Test.Answer.Options[NumOpt].Feedback);
HTM_DIV_End ();
}
HTM_TD_End ();

View File

@ -509,8 +509,8 @@ static void TsI_ImportQuestionsFromXMLBuffer (const char *XMLBuffer)
Hlp_ASSESSMENT_Tests,Box_NOT_CLOSABLE);
/***** Print XML tree *****/
fprintf (Gbl.F.Out,"<div class=\"TEST_FILE_CONTENT\">"
"<textarea title=\"%s\" cols=\"60\" rows=\"5\""
fprintf (Gbl.F.Out,"<div class=\"TEST_FILE_CONTENT\">");
fprintf (Gbl.F.Out,"<textarea title=\"%s\" cols=\"60\" rows=\"5\""
" spellcheck=\"false\" readonly>",
Txt_XML_file_content);
XML_PrintTree (RootElem);
@ -1152,15 +1152,13 @@ static void TsI_WriteRowImportedQst (struct XMLElement *StemElem,
/* Write the text and the feedback of the answer */
HTM_TD_Begin ("class=\"LT\"");
fprintf (Gbl.F.Out,"<div class=\"%s\">"
"%s",
ClassStem,AnswerText);
fprintf (Gbl.F.Out,"<div class=\"%s\">",ClassStem);
fprintf (Gbl.F.Out,"%s",AnswerText);
HTM_DIV_End ();
if (AnswerFeedbackLength)
{
fprintf (Gbl.F.Out,"<div class=\"TEST_EDI_LIGHT\">"
"%s",
AnswerFeedback);
fprintf (Gbl.F.Out,"<div class=\"TEST_EDI_LIGHT\">");
fprintf (Gbl.F.Out,"%s",AnswerFeedback);
HTM_DIV_End ();
}
HTM_TD_End ();

View File

@ -1394,8 +1394,8 @@ static void TL_PutLinkToViewNewPublications (void)
// div is hidden. When new posts arrive to the client via AJAX, div is shown
fprintf (Gbl.F.Out,"<div id=\"view_new_posts_container\""
" class=\"TL_WIDTH TL_SEP VERY_LIGHT_BLUE\""
" style=\"display:none;\">"
"<a href=\"\" class=\"%s\""
" style=\"display:none;\">");
fprintf (Gbl.F.Out,"<a href=\"\" class=\"%s\""
" onclick=\"moveNewTimelineToTimeline(); return false;\" />"
"%s (<span id=\"view_new_posts_count\">0</span>)"
"</a>",
@ -1415,8 +1415,8 @@ static void TL_PutLinkToViewOldPublications (void)
/***** Animated link to view old publications *****/
fprintf (Gbl.F.Out,"<div id=\"view_old_posts_container\""
" class=\"TL_WIDTH TL_SEP VERY_LIGHT_BLUE\">"
"<a href=\"\" class=\"%s\" onclick=\""
" class=\"TL_WIDTH TL_SEP VERY_LIGHT_BLUE\">");
fprintf (Gbl.F.Out,"<a href=\"\" class=\"%s\" onclick=\""
"document.getElementById('get_old_timeline').style.display='none';" // Icon to be hidden on click
"document.getElementById('getting_old_timeline').style.display='';" // Icon to be shown on click
"refreshOldTimeline();"
@ -1578,25 +1578,22 @@ static void TL_WriteNote (const struct TL_Note *SocNot,
case TL_NOTE_INS_DOC_PUB_FILE:
case TL_NOTE_INS_SHA_PUB_FILE:
/* Write location (institution) in hierarchy */
fprintf (Gbl.F.Out,"<div class=\"TL_LOC\">"
"%s: %s",
Txt_Institution,Ins.ShrtName);
fprintf (Gbl.F.Out,"<div class=\"TL_LOC\">");
fprintf (Gbl.F.Out,"%s: %s",Txt_Institution,Ins.ShrtName);
HTM_DIV_End ();
break;
case TL_NOTE_CTR_DOC_PUB_FILE:
case TL_NOTE_CTR_SHA_PUB_FILE:
/* Write location (centre) in hierarchy */
fprintf (Gbl.F.Out,"<div class=\"TL_LOC\">"
"%s: %s",
Txt_Centre,Ctr.ShrtName);
fprintf (Gbl.F.Out,"<div class=\"TL_LOC\">");
fprintf (Gbl.F.Out,"%s: %s",Txt_Centre,Ctr.ShrtName);
HTM_DIV_End ();
break;
case TL_NOTE_DEG_DOC_PUB_FILE:
case TL_NOTE_DEG_SHA_PUB_FILE:
/* Write location (degree) in hierarchy */
fprintf (Gbl.F.Out,"<div class=\"TL_LOC\">"
"%s: %s",
Txt_Degree,Deg.ShrtName);
fprintf (Gbl.F.Out,"<div class=\"TL_LOC\">");
fprintf (Gbl.F.Out,"%s: %s",Txt_Degree,Deg.ShrtName);
HTM_DIV_End ();
break;
case TL_NOTE_CRS_DOC_PUB_FILE:
@ -1604,16 +1601,14 @@ static void TL_WriteNote (const struct TL_Note *SocNot,
case TL_NOTE_EXAM_ANNOUNCEMENT:
case TL_NOTE_NOTICE:
/* Write location (course) in hierarchy */
fprintf (Gbl.F.Out,"<div class=\"TL_LOC\">"
"%s: %s",
Txt_Course,Crs.ShrtName);
fprintf (Gbl.F.Out,"<div class=\"TL_LOC\">");
fprintf (Gbl.F.Out,"%s: %s",Txt_Course,Crs.ShrtName);
HTM_DIV_End ();
break;
case TL_NOTE_FORUM_POST:
/* Write forum name */
fprintf (Gbl.F.Out,"<div class=\"TL_LOC\">"
"%s: %s",
Txt_Forum,ForumName);
fprintf (Gbl.F.Out,"<div class=\"TL_LOC\">");
fprintf (Gbl.F.Out,"%s: %s",Txt_Forum,ForumName);
HTM_DIV_End ();
break;
default:
@ -1622,9 +1617,8 @@ static void TL_WriteNote (const struct TL_Note *SocNot,
/* Write note summary */
TL_GetNoteSummary (SocNot,SummaryStr);
fprintf (Gbl.F.Out,"<div class=\"TL_TXT\">"
"%s",
SummaryStr);
fprintf (Gbl.F.Out,"<div class=\"TL_TXT\">");
fprintf (Gbl.F.Out,"%s",SummaryStr);
HTM_DIV_End ();
}
@ -1954,9 +1948,8 @@ static void TL_PutFormGoToAction (const struct TL_Note *SocNot)
Gbl.Form.Inside) // Inside another form
{
/***** Do not put form *****/
fprintf (Gbl.F.Out,"<div class=\"TL_FORM_OFF\">"
"%s",
Txt_TIMELINE_NOTE[SocNot->NoteType]);
fprintf (Gbl.F.Out,"<div class=\"TL_FORM_OFF\">");
fprintf (Gbl.F.Out,"%s",Txt_TIMELINE_NOTE[SocNot->NoteType]);
if (SocNot->Unavailable)
fprintf (Gbl.F.Out," (%s)",Txt_not_available);
HTM_DIV_End ();
@ -2339,8 +2332,8 @@ static void TL_PutFormToWriteNewPost (void)
fprintf (Gbl.F.Out,"<div class=\"TL_RIGHT_CONT TL_RIGHT_WIDTH\">");
/* Write author's full name and nickname */
fprintf (Gbl.F.Out,"<div class=\"TL_RIGHT_AUTHOR TL_RIGHT_AUTHOR_WIDTH\">"
"<span class=\"DAT_N_BOLD\">%s</span>"
fprintf (Gbl.F.Out,"<div class=\"TL_RIGHT_AUTHOR TL_RIGHT_AUTHOR_WIDTH\">");
fprintf (Gbl.F.Out,"<span class=\"DAT_N_BOLD\">%s</span>"
"<span class=\"DAT_LIGHT\"> @%s</span>",
Gbl.Usrs.Me.UsrDat.FullName,Gbl.Usrs.Me.UsrDat.Nickname);
HTM_DIV_End ();
@ -2507,13 +2500,13 @@ static void TL_PutIconToToggleCommentNote (const char UniqueId[Frm_MAX_BYTES_ID
extern const char *Txt_Comment;
/***** Link to toggle on/off the form to comment a note *****/
fprintf (Gbl.F.Out,"<div id=\"%s_ico\" class=\"TL_ICO_COM_OFF\">"
"<a href=\"\""
fprintf (Gbl.F.Out,"<div id=\"%s_ico\" class=\"TL_ICO_COM_OFF\">",UniqueId);
fprintf (Gbl.F.Out,"<a href=\"\""
" onclick=\"toggleNewComment ('%s');return false;\">"
"<img src=\"%s/edit.svg\" alt=\"%s\" title=\"%s\""
" class=\"CONTEXT_ICO_16x16\" />"
"</a>",
UniqueId,UniqueId,
UniqueId,
Cfg_URL_ICON_PUBLIC,
Txt_Comment,Txt_Comment);
HTM_DIV_End ();
@ -2528,8 +2521,8 @@ static void TL_PutIconCommentDisabled (void)
extern const char *Txt_Comment;
/***** Disabled icon to comment a note *****/
fprintf (Gbl.F.Out,"<div class=\"TL_ICO_COM_OFF TL_ICO_DISABLED\">"
"<img src=\"%s/edit.svg\""
fprintf (Gbl.F.Out,"<div class=\"TL_ICO_COM_OFF TL_ICO_DISABLED\">");
fprintf (Gbl.F.Out,"<img src=\"%s/edit.svg\""
" alt=\"%s\" title=\"%s\""
" class=\"ICO16x16\" />",
Cfg_URL_ICON_PUBLIC,
@ -2752,8 +2745,8 @@ static void TL_WriteComment (struct TL_Comment *SocCom,
fprintf (Gbl.F.Out,"<div class=\"TL_LEFT_PHOTO\">");
HTM_DIV_End ();
fprintf (Gbl.F.Out,"<div class=\"TL_RIGHT_CONT TL_RIGHT_WIDTH\">"
"<ul class=\"LIST_LEFT\">");
fprintf (Gbl.F.Out,"<div class=\"TL_RIGHT_CONT TL_RIGHT_WIDTH\">");
fprintf (Gbl.F.Out,"<ul class=\"LIST_LEFT\">");
}
/***** Start list item *****/

View File

@ -2608,8 +2608,8 @@ void Usr_WriteFormLogin (Act_Action_t NextAction,void (*FuncParams) (void))
Hlp_PROFILE_LogIn,Box_NOT_CLOSABLE,2);
/***** User's ID/nickname *****/
fprintf (Gbl.F.Out,"<div class=\"LM\">"
"<label for=\"UsrId\">"
fprintf (Gbl.F.Out,"<div class=\"LM\">");
fprintf (Gbl.F.Out,"<label for=\"UsrId\">"
"<img src=\"%s/user.svg\" alt=\"%s\" title=\"%s\""
" class=\"CONTEXT_ICO_16x16\" />"
"</label>"
@ -2626,8 +2626,8 @@ void Usr_WriteFormLogin (Act_Action_t NextAction,void (*FuncParams) (void))
HTM_DIV_End ();
/***** User's password *****/
fprintf (Gbl.F.Out,"<div class=\"LM\">"
"<label for=\"UsrPwd\">"
fprintf (Gbl.F.Out,"<div class=\"LM\">");
fprintf (Gbl.F.Out,"<label for=\"UsrPwd\">"
"<img src=\"%s/key.svg\" alt=\"%s\" title=\"%s\""
" class=\"CONTEXT_ICO_16x16\" />"
"</label>"
@ -7365,8 +7365,8 @@ void Usr_ListDataAdms (void)
if (Gbl.Usrs.LstUsrs[Rol_DEG_ADM].NumUsrs)
{
/****** Show photos? *****/
fprintf (Gbl.F.Out,"<div class=\"PREF_CONTAINER\">"
"<div class=\"PREF_OFF\">");
fprintf (Gbl.F.Out,"<div class=\"PREF_CONTAINER\">");
fprintf (Gbl.F.Out,"<div class=\"PREF_OFF\">");
Frm_StartForm (ActLstOth);
Sco_PutParamCurrentScope ();
Usr_PutCheckboxListWithPhotos ();
@ -9713,11 +9713,10 @@ void Usr_WriteAuthor1Line (long UsrCod,bool Hidden)
"PHOTO15x20",Pho_ZOOM,false);
/***** Write name *****/
fprintf (Gbl.F.Out,"<div class=\"AUTHOR_1_LINE %s\">"
"%s",
fprintf (Gbl.F.Out,"<div class=\"AUTHOR_1_LINE %s\">",
Hidden ? "AUTHOR_TXT_LIGHT" :
"AUTHOR_TXT",
UsrDat.FullName);
"AUTHOR_TXT");
fprintf (Gbl.F.Out,"%s",UsrDat.FullName);
HTM_DIV_End ();
/***** Free memory used for user's data *****/