Version 22.118.11:May 30, 2023 Code refactoring in strings.

This commit is contained in:
acanas 2023-05-30 23:18:59 +02:00
parent de07045184
commit 2279d5cbd8
31 changed files with 105 additions and 71 deletions

View File

@ -1429,7 +1429,7 @@ static int API_WritePlainTextIntoHTMLBuffer (struct soap *soap,
/***** Write plain text into text buffer *****/ /***** Write plain text into text buffer *****/
/* Convert to respectful HTML and insert links */ /* Convert to respectful HTML and insert links */
Str_ChangeFormat (Str_FROM_HTML,Str_TO_RIGOROUS_HTML, Str_ChangeFormat (Str_FROM_HTML,Str_TO_RIGOROUS_HTML,
TxtHTML,Cns_MAX_BYTES_LONG_TEXT,false); // Convert from HTML to recpectful HTML TxtHTML,Cns_MAX_BYTES_LONG_TEXT,Str_DONT_REMOVE_SPACES);
ALn_InsertLinks (TxtHTML,Cns_MAX_BYTES_LONG_TEXT,60); // Insert links ALn_InsertLinks (TxtHTML,Cns_MAX_BYTES_LONG_TEXT,60); // Insert links
/* Write text */ /* Write text */

View File

@ -847,7 +847,7 @@ static void Agd_ShowOneEvent (struct Agd_Agenda *Agenda,
The_GetSuffix ()); The_GetSuffix ());
Agd_DB_GetEventTxt (&AgdEvent,Txt); Agd_DB_GetEventTxt (&AgdEvent,Txt);
Str_ChangeFormat (Str_FROM_HTML,Str_TO_RIGOROUS_HTML, Str_ChangeFormat (Str_FROM_HTML,Str_TO_RIGOROUS_HTML,
Txt,Cns_MAX_BYTES_TEXT,false); // Convert from HTML to recpectful HTML Txt,Cns_MAX_BYTES_TEXT,Str_DONT_REMOVE_SPACES);
ALn_InsertLinks (Txt,Cns_MAX_BYTES_TEXT,60); // Insert links ALn_InsertLinks (Txt,Cns_MAX_BYTES_TEXT,60); // Insert links
HTM_Txt (Txt); HTM_Txt (Txt);
HTM_DIV_End (); HTM_DIV_End ();

View File

@ -391,7 +391,7 @@ void Ann_ReceiveAnnouncement (void)
/* Get the content of the announcement */ /* Get the content of the announcement */
Par_GetParAndChangeFormat ("Content",Content,Cns_MAX_BYTES_TEXT, Par_GetParAndChangeFormat ("Content",Content,Cns_MAX_BYTES_TEXT,
Str_TO_RIGOROUS_HTML,true); Str_TO_RIGOROUS_HTML,Str_REMOVE_SPACES);
/* Get users who can view this announcement */ /* Get users who can view this announcement */
Roles = Rol_GetSelectedRoles (); Roles = Rol_GetSelectedRoles ();

View File

@ -571,7 +571,7 @@ static void Asg_ShowAssignmentRow (struct Asg_Assignments *Assignments,
/* Text of the assignment */ /* Text of the assignment */
Asg_DB_GetAssignmentTxtByCod (Assignments->Asg.AsgCod,Txt); Asg_DB_GetAssignmentTxtByCod (Assignments->Asg.AsgCod,Txt);
Str_ChangeFormat (Str_FROM_HTML,Str_TO_RIGOROUS_HTML, Str_ChangeFormat (Str_FROM_HTML,Str_TO_RIGOROUS_HTML,
Txt,Cns_MAX_BYTES_TEXT,false); // Convert from HTML to recpectful HTML Txt,Cns_MAX_BYTES_TEXT,Str_DONT_REMOVE_SPACES);
ALn_InsertLinks (Txt,Cns_MAX_BYTES_TEXT,60); // Insert links ALn_InsertLinks (Txt,Cns_MAX_BYTES_TEXT,60); // Insert links
if (PrintView) if (PrintView)
HTM_TD_Begin ("colspan=\"2\" class=\"LT\""); HTM_TD_Begin ("colspan=\"2\" class=\"LT\"");

View File

@ -519,7 +519,7 @@ static void Att_ShowOneEventRow (struct Att_Events *Events,
/* Text of the attendance event */ /* Text of the attendance event */
Att_DB_GetEventDescription (Events->Event.AttCod,Description); Att_DB_GetEventDescription (Events->Event.AttCod,Description);
Str_ChangeFormat (Str_FROM_HTML,Str_TO_RIGOROUS_HTML, Str_ChangeFormat (Str_FROM_HTML,Str_TO_RIGOROUS_HTML,
Description,Cns_MAX_BYTES_TEXT,false); // Convert from HTML to recpectful HTML Description,Cns_MAX_BYTES_TEXT,Str_DONT_REMOVE_SPACES);
ALn_InsertLinks (Description,Cns_MAX_BYTES_TEXT,60); // Insert links ALn_InsertLinks (Description,Cns_MAX_BYTES_TEXT,60); // Insert links
if (ShowOnlyThisAttEventComplete) if (ShowOnlyThisAttEventComplete)
HTM_TD_Begin ("colspan=\"2\" class=\"LT\""); HTM_TD_Begin ("colspan=\"2\" class=\"LT\"");
@ -1790,7 +1790,7 @@ static void Att_WriteRowUsrToCallTheRoll (unsigned NumUsr,
else // Show without form else // Show without form
{ {
Str_ChangeFormat (Str_FROM_HTML,Str_TO_RIGOROUS_HTML, Str_ChangeFormat (Str_FROM_HTML,Str_TO_RIGOROUS_HTML,
CommentStd,Cns_MAX_BYTES_TEXT,false); CommentStd,Cns_MAX_BYTES_TEXT,Str_DONT_REMOVE_SPACES);
HTM_Txt (CommentStd); HTM_Txt (CommentStd);
} }
HTM_TD_End (); HTM_TD_End ();
@ -1813,7 +1813,8 @@ static void Att_WriteRowUsrToCallTheRoll (unsigned NumUsr,
else if (Event->CommentTchVisible) // Show without form else if (Event->CommentTchVisible) // Show without form
{ {
Str_ChangeFormat (Str_FROM_HTML,Str_TO_RIGOROUS_HTML, Str_ChangeFormat (Str_FROM_HTML,Str_TO_RIGOROUS_HTML,
CommentTch,Cns_MAX_BYTES_TEXT,false); CommentTch,Cns_MAX_BYTES_TEXT,
Str_DONT_REMOVE_SPACES);
HTM_Txt (CommentTch); HTM_Txt (CommentTch);
} }
HTM_TD_End (); HTM_TD_End ();
@ -3209,7 +3210,8 @@ static void Att_ListAttEventsForAStd (struct Att_Events *Events,
if (ShowCommentStd) if (ShowCommentStd)
{ {
Str_ChangeFormat (Str_FROM_HTML,Str_TO_RIGOROUS_HTML, Str_ChangeFormat (Str_FROM_HTML,Str_TO_RIGOROUS_HTML,
CommentStd,Cns_MAX_BYTES_TEXT,false); CommentStd,Cns_MAX_BYTES_TEXT,
Str_DONT_REMOVE_SPACES);
HTM_DT_Begin (); HTM_DT_Begin ();
HTM_TxtColon (Txt_Student_comment); HTM_TxtColon (Txt_Student_comment);
HTM_DT_End (); HTM_DT_End ();
@ -3220,7 +3222,8 @@ static void Att_ListAttEventsForAStd (struct Att_Events *Events,
if (ShowCommentTch) if (ShowCommentTch)
{ {
Str_ChangeFormat (Str_FROM_HTML,Str_TO_RIGOROUS_HTML, Str_ChangeFormat (Str_FROM_HTML,Str_TO_RIGOROUS_HTML,
CommentTch,Cns_MAX_BYTES_TEXT,false); CommentTch,Cns_MAX_BYTES_TEXT,
Str_DONT_REMOVE_SPACES);
HTM_DT_Begin (); HTM_DT_Begin ();
HTM_TxtColon (Txt_Teachers_comment); HTM_TxtColon (Txt_Teachers_comment);
HTM_DT_End (); HTM_DT_End ();

View File

@ -2147,7 +2147,8 @@ static void Brw_GetParsPathInTreeAndFileName (void)
// File names with heading and trailing spaces are allowed // File names with heading and trailing spaces are allowed
if (Par_GetParAndChangeFormat (Brw_FileTypeParName[FileType], if (Par_GetParAndChangeFormat (Brw_FileTypeParName[FileType],
Gbl.FileBrowser.FilFolLnk.Name, Gbl.FileBrowser.FilFolLnk.Name,
NAME_MAX,Str_TO_TEXT,false)) NAME_MAX,Str_TO_TEXT,
Str_DONT_REMOVE_SPACES))
{ {
Gbl.FileBrowser.FilFolLnk.Type = FileType; Gbl.FileBrowser.FilFolLnk.Type = FileType;

View File

@ -1248,7 +1248,7 @@ static void Cfe_ShowCallForExam (struct Cfe_CallsForExams *CallsForExams,
{ {
Str_ChangeFormat (Str_FROM_HTML,Str_TO_RIGOROUS_HTML, Str_ChangeFormat (Str_FROM_HTML,Str_TO_RIGOROUS_HTML,
CallsForExams->CallForExam.Place, CallsForExams->CallForExam.Place,
Cns_MAX_BYTES_TEXT,false); Cns_MAX_BYTES_TEXT,Str_DONT_REMOVE_SPACES);
HTM_Txt (CallsForExams->CallForExam.Place); HTM_Txt (CallsForExams->CallForExam.Place);
} }
HTM_TD_End (); HTM_TD_End ();
@ -1279,7 +1279,7 @@ static void Cfe_ShowCallForExam (struct Cfe_CallsForExams *CallsForExams,
{ {
Str_ChangeFormat (Str_FROM_HTML,Str_TO_RIGOROUS_HTML, Str_ChangeFormat (Str_FROM_HTML,Str_TO_RIGOROUS_HTML,
CallsForExams->CallForExam.Mode, CallsForExams->CallForExam.Mode,
Cns_MAX_BYTES_TEXT,false); Cns_MAX_BYTES_TEXT,Str_DONT_REMOVE_SPACES);
HTM_Txt (CallsForExams->CallForExam.Mode); HTM_Txt (CallsForExams->CallForExam.Mode);
} }
HTM_TD_End (); HTM_TD_End ();
@ -1311,7 +1311,7 @@ static void Cfe_ShowCallForExam (struct Cfe_CallsForExams *CallsForExams,
{ {
Str_ChangeFormat (Str_FROM_HTML,Str_TO_RIGOROUS_HTML, Str_ChangeFormat (Str_FROM_HTML,Str_TO_RIGOROUS_HTML,
CallsForExams->CallForExam.Structure, CallsForExams->CallForExam.Structure,
Cns_MAX_BYTES_TEXT,false); Cns_MAX_BYTES_TEXT,Str_DONT_REMOVE_SPACES);
HTM_Txt (CallsForExams->CallForExam.Structure); HTM_Txt (CallsForExams->CallForExam.Structure);
} }
HTM_TD_End (); HTM_TD_End ();
@ -1343,7 +1343,7 @@ static void Cfe_ShowCallForExam (struct Cfe_CallsForExams *CallsForExams,
{ {
Str_ChangeFormat (Str_FROM_HTML,Str_TO_RIGOROUS_HTML, Str_ChangeFormat (Str_FROM_HTML,Str_TO_RIGOROUS_HTML,
CallsForExams->CallForExam.DocRequired, CallsForExams->CallForExam.DocRequired,
Cns_MAX_BYTES_TEXT,false); Cns_MAX_BYTES_TEXT,Str_DONT_REMOVE_SPACES);
HTM_Txt (CallsForExams->CallForExam.DocRequired); HTM_Txt (CallsForExams->CallForExam.DocRequired);
} }
HTM_TD_End (); HTM_TD_End ();
@ -1375,7 +1375,7 @@ static void Cfe_ShowCallForExam (struct Cfe_CallsForExams *CallsForExams,
{ {
Str_ChangeFormat (Str_FROM_HTML,Str_TO_RIGOROUS_HTML, Str_ChangeFormat (Str_FROM_HTML,Str_TO_RIGOROUS_HTML,
CallsForExams->CallForExam.MatRequired, CallsForExams->CallForExam.MatRequired,
Cns_MAX_BYTES_TEXT,false); Cns_MAX_BYTES_TEXT,Str_DONT_REMOVE_SPACES);
HTM_Txt (CallsForExams->CallForExam.MatRequired); HTM_Txt (CallsForExams->CallForExam.MatRequired);
} }
HTM_TD_End (); HTM_TD_End ();
@ -1407,7 +1407,7 @@ static void Cfe_ShowCallForExam (struct Cfe_CallsForExams *CallsForExams,
{ {
Str_ChangeFormat (Str_FROM_HTML,Str_TO_RIGOROUS_HTML, Str_ChangeFormat (Str_FROM_HTML,Str_TO_RIGOROUS_HTML,
CallsForExams->CallForExam.MatAllowed, CallsForExams->CallForExam.MatAllowed,
Cns_MAX_BYTES_TEXT,false); Cns_MAX_BYTES_TEXT,Str_DONT_REMOVE_SPACES);
HTM_Txt (CallsForExams->CallForExam.MatAllowed); HTM_Txt (CallsForExams->CallForExam.MatAllowed);
} }
HTM_TD_End (); HTM_TD_End ();
@ -1439,7 +1439,7 @@ static void Cfe_ShowCallForExam (struct Cfe_CallsForExams *CallsForExams,
{ {
Str_ChangeFormat (Str_FROM_HTML,Str_TO_RIGOROUS_HTML, Str_ChangeFormat (Str_FROM_HTML,Str_TO_RIGOROUS_HTML,
CallsForExams->CallForExam.OtherInfo, CallsForExams->CallForExam.OtherInfo,
Cns_MAX_BYTES_TEXT,false); Cns_MAX_BYTES_TEXT,Str_DONT_REMOVE_SPACES);
HTM_Txt (CallsForExams->CallForExam.OtherInfo); HTM_Txt (CallsForExams->CallForExam.OtherInfo);
} }
HTM_TD_End (); HTM_TD_End ();

View File

@ -629,11 +629,12 @@ TODO: Emilce Barrera Mesa: Podr
TODO: Emilce Barrera Mesa: Mis estudiantes presentan muchas dificultades a la hora de poner la foto porque la plataforma es muy exigente respecto al fondo de la imagen. TODO: Emilce Barrera Mesa: Mis estudiantes presentan muchas dificultades a la hora de poner la foto porque la plataforma es muy exigente respecto al fondo de la imagen.
*/ */
#define Log_PLATFORM_VERSION "SWAD 22.118.10 (2023-05-30)" #define Log_PLATFORM_VERSION "SWAD 22.118.11 (2023-05-30)"
#define CSS_FILE "swad22.118.5.css" #define CSS_FILE "swad22.118.5.css"
#define JS_FILE "swad22.49.js" #define JS_FILE "swad22.49.js"
/* /*
Version 22.118.10:May 30, 2023 Draw logo in head even if it does not exist. (337363 lines) Version 22.118.11:May 30, 2023 Code refactoring in strings. (337391 lines)
Version 22.118.10:May 30, 2023 Draw logo in head even if it does not exist. (337359 lines)
Version 22.118.9: May 30, 2023 Code refactoring in user account. (337363 lines) Version 22.118.9: May 30, 2023 Code refactoring in user account. (337363 lines)
Version 22.118.8: May 30, 2023 Fixed bugs in users. (337361 lines) Version 22.118.8: May 30, 2023 Fixed bugs in users. (337361 lines)
Version 22.118.7: May 30, 2023 Fixed bug in photo processing. Reported by Emilio Alemán Carmona. (337364 lines) Version 22.118.7: May 30, 2023 Fixed bug in photo processing. Reported by Emilio Alemán Carmona. (337364 lines)

View File

@ -584,7 +584,7 @@ static void Exa_ShowOneExam (struct Exa_Exams *Exams,bool ShowOnlyThisExam)
The_GetColorRows ()); The_GetColorRows ());
Exa_DB_GetExamTxt (Exams->Exam.ExaCod,Txt); Exa_DB_GetExamTxt (Exams->Exam.ExaCod,Txt);
Str_ChangeFormat (Str_FROM_HTML,Str_TO_RIGOROUS_HTML, Str_ChangeFormat (Str_FROM_HTML,Str_TO_RIGOROUS_HTML,
Txt,Cns_MAX_BYTES_TEXT,false); // Convert from HTML to rigorous HTML Txt,Cns_MAX_BYTES_TEXT,Str_DONT_REMOVE_SPACES);
ALn_InsertLinks (Txt,Cns_MAX_BYTES_TEXT,60); // Insert links ALn_InsertLinks (Txt,Cns_MAX_BYTES_TEXT,60); // Insert links
HTM_DIV_Begin ("class=\"PAR %s_%s\"", HTM_DIV_Begin ("class=\"PAR %s_%s\"",
Exams->Exam.Hidden ? "DAT_LIGHT" : Exams->Exam.Hidden ? "DAT_LIGHT" :

View File

@ -196,7 +196,7 @@ static void ExaLog_LogUsrAgent (long LogCod,long PrnCod)
{ {
Str_Copy (UserAgentDB,UserAgent,MaxBytes); Str_Copy (UserAgentDB,UserAgent,MaxBytes);
Str_ChangeFormat (Str_FROM_TEXT,Str_TO_TEXT, Str_ChangeFormat (Str_FROM_TEXT,Str_TO_TEXT,
UserAgentDB,MaxBytes,true); UserAgentDB,MaxBytes,Str_REMOVE_SPACES);
} }
else else
UserAgentDB[0] = '\0'; UserAgentDB[0] = '\0';

View File

@ -617,8 +617,8 @@ static void ExaPrn_GetAndWriteDescription (long ExaCod)
/***** Get description from database *****/ /***** Get description from database *****/
Exa_DB_GetExamTxt (ExaCod,Txt); Exa_DB_GetExamTxt (ExaCod,Txt);
Str_ChangeFormat (Str_FROM_HTML,Str_TO_RIGOROUS_HTML, // Convert from HTML to rigorous HTML Str_ChangeFormat (Str_FROM_HTML,Str_TO_RIGOROUS_HTML,
Txt,Cns_MAX_BYTES_TEXT,false); Txt,Cns_MAX_BYTES_TEXT,Str_DONT_REMOVE_SPACES);
ALn_InsertLinks (Txt,Cns_MAX_BYTES_TEXT,60); // Insert links ALn_InsertLinks (Txt,Cns_MAX_BYTES_TEXT,60); // Insert links
/***** Write description *****/ /***** Write description *****/

View File

@ -2848,7 +2848,7 @@ void For_ReceiveForumPost (void)
/***** Get message body *****/ /***** Get message body *****/
Par_GetParAndChangeFormat ("Content",Content,Cns_MAX_BYTES_LONG_TEXT, Par_GetParAndChangeFormat ("Content",Content,Cns_MAX_BYTES_LONG_TEXT,
Str_TO_RIGOROUS_HTML,false); Str_TO_RIGOROUS_HTML,Str_DONT_REMOVE_SPACES);
/***** Initialize media *****/ /***** Initialize media *****/
Med_MediaConstructor (&Media); Med_MediaConstructor (&Media);

View File

@ -628,7 +628,7 @@ static void Gam_ShowGameMainData (struct Gam_Games *Games,
The_GetColorRows ()); The_GetColorRows ());
Gam_DB_GetGameTxt (Games->Game.GamCod,Txt); Gam_DB_GetGameTxt (Games->Game.GamCod,Txt);
Str_ChangeFormat (Str_FROM_HTML,Str_TO_RIGOROUS_HTML, Str_ChangeFormat (Str_FROM_HTML,Str_TO_RIGOROUS_HTML,
Txt,Cns_MAX_BYTES_TEXT,false); // Convert from HTML to rigorous HTML Txt,Cns_MAX_BYTES_TEXT,Str_DONT_REMOVE_SPACES);
ALn_InsertLinks (Txt,Cns_MAX_BYTES_TEXT,60); // Insert links ALn_InsertLinks (Txt,Cns_MAX_BYTES_TEXT,60); // Insert links
HTM_DIV_Begin ("class=\"PAR %s_%s\"", HTM_DIV_Begin ("class=\"PAR %s_%s\"",
Games->Game.Hidden ? "DAT_LIGHT" : Games->Game.Hidden ? "DAT_LIGHT" :

View File

@ -1443,7 +1443,8 @@ static bool Inf_CheckAndShowPlainTxt (void)
/***** Convert to respectful HTML and insert links *****/ /***** Convert to respectful HTML and insert links *****/
Str_ChangeFormat (Str_FROM_HTML,Str_TO_RIGOROUS_HTML, Str_ChangeFormat (Str_FROM_HTML,Str_TO_RIGOROUS_HTML,
TxtHTML,Cns_MAX_BYTES_LONG_TEXT,false); // Convert from HTML to recpectful HTML TxtHTML,Cns_MAX_BYTES_LONG_TEXT,
Str_DONT_REMOVE_SPACES);
ALn_InsertLinks (TxtHTML,Cns_MAX_BYTES_LONG_TEXT,60); // Insert links ALn_InsertLinks (TxtHTML,Cns_MAX_BYTES_LONG_TEXT,60); // Insert links
/***** Write text *****/ /***** Write text *****/
@ -1769,9 +1770,9 @@ void Inf_RecAndChangePlainTxtInfo (void)
Cns_MAX_BYTES_LONG_TEXT,NULL); Cns_MAX_BYTES_LONG_TEXT,NULL);
Str_Copy (Txt_MarkdownFormat,Txt_HTMLFormat,sizeof (Txt_MarkdownFormat) - 1); Str_Copy (Txt_MarkdownFormat,Txt_HTMLFormat,sizeof (Txt_MarkdownFormat) - 1);
Str_ChangeFormat (Str_FROM_FORM,Str_TO_HTML, Str_ChangeFormat (Str_FROM_FORM,Str_TO_HTML,
Txt_HTMLFormat,Cns_MAX_BYTES_LONG_TEXT,true); // Store in HTML format (not rigorous) Txt_HTMLFormat,Cns_MAX_BYTES_LONG_TEXT,Str_REMOVE_SPACES);
Str_ChangeFormat (Str_FROM_FORM,Str_TO_MARKDOWN, Str_ChangeFormat (Str_FROM_FORM,Str_TO_MARKDOWN,
Txt_MarkdownFormat,Cns_MAX_BYTES_LONG_TEXT,true); // Store a copy in Markdown format Txt_MarkdownFormat,Cns_MAX_BYTES_LONG_TEXT,Str_REMOVE_SPACES); // Store a copy in Markdown format
/***** Update text of course info in database *****/ /***** Update text of course info in database *****/
Inf_DB_SetInfoTxt (Txt_HTMLFormat,Txt_MarkdownFormat); Inf_DB_SetInfoTxt (Txt_HTMLFormat,Txt_MarkdownFormat);
@ -1808,9 +1809,9 @@ void Inf_RecAndChangeRichTxtInfo (void)
Cns_MAX_BYTES_LONG_TEXT,NULL); Cns_MAX_BYTES_LONG_TEXT,NULL);
Str_Copy (Txt_MarkdownFormat,Txt_HTMLFormat,sizeof (Txt_MarkdownFormat) - 1); Str_Copy (Txt_MarkdownFormat,Txt_HTMLFormat,sizeof (Txt_MarkdownFormat) - 1);
Str_ChangeFormat (Str_FROM_FORM,Str_TO_HTML, Str_ChangeFormat (Str_FROM_FORM,Str_TO_HTML,
Txt_HTMLFormat,Cns_MAX_BYTES_LONG_TEXT,true); // Store in HTML format (not rigorous) Txt_HTMLFormat,Cns_MAX_BYTES_LONG_TEXT,Str_REMOVE_SPACES);
Str_ChangeFormat (Str_FROM_FORM,Str_TO_MARKDOWN, Str_ChangeFormat (Str_FROM_FORM,Str_TO_MARKDOWN,
Txt_MarkdownFormat,Cns_MAX_BYTES_LONG_TEXT,true); // Store a copy in Markdown format Txt_MarkdownFormat,Cns_MAX_BYTES_LONG_TEXT,Str_REMOVE_SPACES); // Store a copy in Markdown format
/***** Update text of course info in database *****/ /***** Update text of course info in database *****/
Inf_DB_SetInfoTxt (Txt_HTMLFormat,Txt_MarkdownFormat); Inf_DB_SetInfoTxt (Txt_HTMLFormat,Txt_MarkdownFormat);

View File

@ -112,7 +112,7 @@ void Log_LogAccess (const char *Comments)
{ {
Str_Copy (CommentsDB,Comments,MaxLength); Str_Copy (CommentsDB,Comments,MaxLength);
Str_ChangeFormat (Str_FROM_TEXT,Str_TO_TEXT, Str_ChangeFormat (Str_FROM_TEXT,Str_TO_TEXT,
CommentsDB,MaxLength,true); // Avoid SQL injection CommentsDB,MaxLength,Str_REMOVE_SPACES); // Avoid SQL injection
Log_DB_LogComments (LogCod,CommentsDB); Log_DB_LogComments (LogCod,CommentsDB);
free (CommentsDB); free (CommentsDB);
} }

View File

@ -205,7 +205,7 @@ void Msg_FormMsgUsrs (void)
/***** Get possible hidden subject and content of the message *****/ /***** Get possible hidden subject and content of the message *****/
Par_GetParHTML ("HiddenSubject",Messages.Subject,Cns_MAX_BYTES_SUBJECT); Par_GetParHTML ("HiddenSubject",Messages.Subject,Cns_MAX_BYTES_SUBJECT);
Par_GetParAndChangeFormat ("HiddenContent",Content,Cns_MAX_BYTES_LONG_TEXT, Par_GetParAndChangeFormat ("HiddenContent",Content,Cns_MAX_BYTES_LONG_TEXT,
Str_TO_TEXT,false); Str_TO_TEXT,Str_DONT_REMOVE_SPACES);
/***** Show a form to compose a message to users *****/ /***** Show a form to compose a message to users *****/
Msg_PutFormMsgUsrs (&Messages,Content); Msg_PutFormMsgUsrs (&Messages,Content);
@ -753,7 +753,7 @@ void Msg_RecMsgFromUsr (void)
/* Get body */ /* Get body */
Par_GetParAndChangeFormat ("Content",Content,Cns_MAX_BYTES_LONG_TEXT, Par_GetParAndChangeFormat ("Content",Content,Cns_MAX_BYTES_LONG_TEXT,
Str_DONT_CHANGE,false); Str_DONT_CHANGE,Str_DONT_REMOVE_SPACES);
/* Get parameter that indicates if the message is a reply to a previous message */ /* Get parameter that indicates if the message is a reply to a previous message */
if ((IsReply = Par_GetParBool ("IsReply"))) if ((IsReply = Par_GetParBool ("IsReply")))
@ -792,7 +792,7 @@ void Msg_RecMsgFromUsr (void)
{ {
/* Show the form again, with the subject and the message filled */ /* Show the form again, with the subject and the message filled */
Str_ChangeFormat (Str_FROM_FORM,Str_TO_TEXT, Str_ChangeFormat (Str_FROM_FORM,Str_TO_TEXT,
Content,Cns_MAX_BYTES_LONG_TEXT,true); Content,Cns_MAX_BYTES_LONG_TEXT,Str_REMOVE_SPACES);
Msg_PutFormMsgUsrs (&Messages,Content); Msg_PutFormMsgUsrs (&Messages,Content);
return; return;
} }
@ -813,7 +813,7 @@ void Msg_RecMsgFromUsr (void)
/***** Loop over the list Gbl.Usrs.Selected.List[Rol_UNK], that holds the list of the /***** Loop over the list Gbl.Usrs.Selected.List[Rol_UNK], that holds the list of the
recipients, creating a received message for each recipient *****/ recipients, creating a received message for each recipient *****/
Str_ChangeFormat (Str_FROM_FORM,Str_TO_RIGOROUS_HTML, Str_ChangeFormat (Str_FROM_FORM,Str_TO_RIGOROUS_HTML,
Content,Cns_MAX_BYTES_LONG_TEXT,false); Content,Cns_MAX_BYTES_LONG_TEXT,Str_DONT_REMOVE_SPACES);
Ptr = Gbl.Usrs.Selected.List[Rol_UNK]; Ptr = Gbl.Usrs.Selected.List[Rol_UNK];
NumRecipients = 0; NumRecipients = 0;
while (*Ptr) while (*Ptr)

View File

@ -148,7 +148,7 @@ void Not_ReceiveNotice (void)
/***** Get the text of the notice *****/ /***** Get the text of the notice *****/
Par_GetParAndChangeFormat ("Content",Content,Cns_MAX_BYTES_TEXT, Par_GetParAndChangeFormat ("Content",Content,Cns_MAX_BYTES_TEXT,
Str_TO_RIGOROUS_HTML,true); Str_TO_RIGOROUS_HTML,Str_REMOVE_SPACES);
/***** Create a new notice in database *****/ /***** Create a new notice in database *****/
NotCod = Not_DB_InsertNotice (Content); NotCod = Not_DB_InsertNotice (Content);

View File

@ -912,7 +912,7 @@ unsigned Par_GetParText (const char *ParName,char *ParValue,size_t MaxBytes)
{ {
return Par_GetParAndChangeFormat (ParName,ParValue,MaxBytes, return Par_GetParAndChangeFormat (ParName,ParValue,MaxBytes,
Str_TO_TEXT, Str_TO_TEXT,
true); // Remove leading and trailing spaces Str_REMOVE_SPACES);
} }
/*****************************************************************************/ /*****************************************************************************/
@ -970,7 +970,7 @@ bool Par_GetParBool (const char *ParName)
unsigned Par_GetParHTML (const char *ParName,char *ParValue,size_t MaxBytes) unsigned Par_GetParHTML (const char *ParName,char *ParValue,size_t MaxBytes)
{ {
return Par_GetParAndChangeFormat (ParName,ParValue,MaxBytes, return Par_GetParAndChangeFormat (ParName,ParValue,MaxBytes,
Str_TO_HTML,true); Str_TO_HTML,Str_REMOVE_SPACES);
} }
/*****************************************************************************/ /*****************************************************************************/
@ -984,7 +984,7 @@ unsigned Par_GetParMultiToText (const char *ParName,char *ParValue,size_t MaxByt
ParValue,MaxBytes,NULL); ParValue,MaxBytes,NULL);
Str_ChangeFormat (Str_FROM_FORM,Str_TO_TEXT, Str_ChangeFormat (Str_FROM_FORM,Str_TO_TEXT,
ParValue,MaxBytes,true); ParValue,MaxBytes,Str_REMOVE_SPACES);
return NumTimes; return NumTimes;
} }
@ -994,7 +994,8 @@ unsigned Par_GetParMultiToText (const char *ParName,char *ParValue,size_t MaxByt
// Return the number of parameters found // Return the number of parameters found
unsigned Par_GetParAndChangeFormat (const char *ParName,char *ParValue,size_t MaxBytes, unsigned Par_GetParAndChangeFormat (const char *ParName,char *ParValue,size_t MaxBytes,
Str_ChangeTo_t ChangeTo,bool RemoveLeadingAndTrailingSpaces) Str_ChangeTo_t ChangeTo,
Str_RemoveSpaces_t RemoveLeadingAndTrailingSpaces)
{ {
unsigned NumTimes = Par_GetPar (Par_PARAM_SINGLE,ParName, unsigned NumTimes = Par_GetPar (Par_PARAM_SINGLE,ParName,
ParValue,MaxBytes,NULL); ParValue,MaxBytes,NULL);

View File

@ -91,7 +91,8 @@ bool Par_GetParBool (const char *ParName);
unsigned Par_GetParHTML (const char *ParName,char *ParValue,size_t MaxBytes); unsigned Par_GetParHTML (const char *ParName,char *ParValue,size_t MaxBytes);
unsigned Par_GetParMultiToText (const char *ParName,char *ParValue,size_t MaxBytes); unsigned Par_GetParMultiToText (const char *ParName,char *ParValue,size_t MaxBytes);
unsigned Par_GetParAndChangeFormat (const char *ParName,char *ParValue,size_t MaxBytes, unsigned Par_GetParAndChangeFormat (const char *ParName,char *ParValue,size_t MaxBytes,
Str_ChangeTo_t ChangeTo,bool RemoveLeadingAndTrailingSpaces); Str_ChangeTo_t ChangeTo,
Str_RemoveSpaces_t RemoveLeadingAndTrailingSpaces);
bool Par_GetNextStrUntilSeparParMult (const char **StrSrc,char *StrDst,size_t LongMax); bool Par_GetNextStrUntilSeparParMult (const char **StrSrc,char *StrDst,size_t LongMax);
bool Par_GetNextStrUntilComma (const char **StrSrc,char *StrDst,size_t LongMax); bool Par_GetNextStrUntilComma (const char **StrSrc,char *StrDst,size_t LongMax);

View File

@ -689,7 +689,7 @@ static void Prg_WriteItemText (long ItmCod,bool IsHidden)
/* Text */ /* Text */
Prg_DB_GetItemTxt (ItmCod,Txt); Prg_DB_GetItemTxt (ItmCod,Txt);
Str_ChangeFormat (Str_FROM_HTML,Str_TO_RIGOROUS_HTML, Str_ChangeFormat (Str_FROM_HTML,Str_TO_RIGOROUS_HTML,
Txt,Cns_MAX_BYTES_TEXT,false); // Convert from HTML to recpectful HTML Txt,Cns_MAX_BYTES_TEXT,Str_DONT_REMOVE_SPACES);
ALn_InsertLinks (Txt,Cns_MAX_BYTES_TEXT,60); // Insert links ALn_InsertLinks (Txt,Cns_MAX_BYTES_TEXT,60); // Insert links
HTM_DIV_Begin ("class=\"PAR PRG_TXT_%s%s\"", HTM_DIV_Begin ("class=\"PAR PRG_TXT_%s%s\"",
The_GetSuffix (), The_GetSuffix (),

View File

@ -1786,7 +1786,8 @@ static void Prj_ShowReviewStatus (struct Prj_Projects *Projects,
{ {
/* Change text format */ /* Change text format */
Str_ChangeFormat (Str_FROM_HTML,Str_TO_RIGOROUS_HTML, Str_ChangeFormat (Str_FROM_HTML,Str_TO_RIGOROUS_HTML,
Projects->Prj.Review.Txt,Cns_MAX_BYTES_TEXT,false); // Convert from HTML to recpectful HTML Projects->Prj.Review.Txt,Cns_MAX_BYTES_TEXT,
Str_DONT_REMOVE_SPACES);
switch (Projects->View) switch (Projects->View)
{ {
case Prj_PRINT_ONE_PROJECT: case Prj_PRINT_ONE_PROJECT:
@ -2280,7 +2281,7 @@ static void Prj_ShowTxtField (const struct Prj_Projects *Projects,
/***** Change text format *****/ /***** Change text format *****/
Str_ChangeFormat (Str_FROM_HTML,Str_TO_RIGOROUS_HTML, Str_ChangeFormat (Str_FROM_HTML,Str_TO_RIGOROUS_HTML,
TxtField,Cns_MAX_BYTES_TEXT,false); // Convert from HTML to recpectful HTML TxtField,Cns_MAX_BYTES_TEXT,Str_DONT_REMOVE_SPACES);
switch (Projects->View) switch (Projects->View)
{ {
case Prj_LIST_PROJECTS: case Prj_LIST_PROJECTS:
@ -2628,7 +2629,7 @@ static void Prj_ShowTableAllProjectsTxtField (struct Prj_Project *Prj,
/***** Change format *****/ /***** Change format *****/
Str_ChangeFormat (Str_FROM_HTML,Str_TO_RIGOROUS_HTML, Str_ChangeFormat (Str_FROM_HTML,Str_TO_RIGOROUS_HTML,
TxtField,Cns_MAX_BYTES_TEXT,false); // Convert from HTML to recpectful HTML TxtField,Cns_MAX_BYTES_TEXT,Str_DONT_REMOVE_SPACES);
/***** Write text *****/ /***** Write text *****/
HTM_TD_Begin ("class=\"LT %s_%s %s\"", HTM_TD_Begin ("class=\"LT %s_%s %s\"",
@ -4565,7 +4566,8 @@ static void Prj_ShowRubricsOfType (struct Prj_Projects *Projects,
HTM_TD_Begin ("colspan=\"8\" class=\"LT PAR DAT_%s %s\"", HTM_TD_Begin ("colspan=\"8\" class=\"LT PAR DAT_%s %s\"",
The_GetSuffix (),The_GetColorRows ()); The_GetSuffix (),The_GetColorRows ());
Str_ChangeFormat (Str_FROM_HTML,Str_TO_RIGOROUS_HTML, Str_ChangeFormat (Str_FROM_HTML,Str_TO_RIGOROUS_HTML,
Rubric.Txt,Cns_MAX_BYTES_TEXT,false); // Convert from HTML to rigorous HTML Rubric.Txt,Cns_MAX_BYTES_TEXT,
Str_DONT_REMOVE_SPACES);
ALn_InsertLinks (Rubric.Txt,Cns_MAX_BYTES_TEXT,60); // Insert links ALn_InsertLinks (Rubric.Txt,Cns_MAX_BYTES_TEXT,60); // Insert links
HTM_Txt (Rubric.Txt); HTM_Txt (Rubric.Txt);
HTM_TD_End (); HTM_TD_End ();

View File

@ -684,7 +684,8 @@ void Qst_WriteQstFeedback (const char *Feedback,const char *ClassFeedback)
Err_NotEnoughMemoryExit (); Err_NotEnoughMemoryExit ();
Str_Copy (FeedbackRigorousHTML,Feedback,FeedbackLength); Str_Copy (FeedbackRigorousHTML,Feedback,FeedbackLength);
Str_ChangeFormat (Str_FROM_HTML,Str_TO_RIGOROUS_HTML, Str_ChangeFormat (Str_FROM_HTML,Str_TO_RIGOROUS_HTML,
FeedbackRigorousHTML,FeedbackLength,false); FeedbackRigorousHTML,FeedbackLength,
Str_DONT_REMOVE_SPACES);
/***** Write the feedback *****/ /***** Write the feedback *****/
HTM_DIV_Begin ("class=\"%s_%s\"", HTM_DIV_Begin ("class=\"%s_%s\"",
@ -1692,7 +1693,8 @@ void Qst_ChangeFormatAnswersText (struct Qst_Question *Question)
if (Question->Answer.Options[NumOpt].Text[0]) if (Question->Answer.Options[NumOpt].Text[0])
Str_ChangeFormat (Str_FROM_HTML,Str_TO_RIGOROUS_HTML, Str_ChangeFormat (Str_FROM_HTML,Str_TO_RIGOROUS_HTML,
Question->Answer.Options[NumOpt].Text, Question->Answer.Options[NumOpt].Text,
Qst_MAX_BYTES_ANSWER_OR_FEEDBACK,false); Qst_MAX_BYTES_ANSWER_OR_FEEDBACK,
Str_DONT_REMOVE_SPACES);
} }
void Qst_ChangeFormatAnswersFeedback (struct Qst_Question *Question) void Qst_ChangeFormatAnswersFeedback (struct Qst_Question *Question)
@ -1708,7 +1710,8 @@ void Qst_ChangeFormatAnswersFeedback (struct Qst_Question *Question)
if (Question->Answer.Options[NumOpt].Feedback[0]) if (Question->Answer.Options[NumOpt].Feedback[0])
Str_ChangeFormat (Str_FROM_HTML,Str_TO_RIGOROUS_HTML, Str_ChangeFormat (Str_FROM_HTML,Str_TO_RIGOROUS_HTML,
Question->Answer.Options[NumOpt].Feedback, Question->Answer.Options[NumOpt].Feedback,
Qst_MAX_BYTES_ANSWER_OR_FEEDBACK,false); Qst_MAX_BYTES_ANSWER_OR_FEEDBACK,
Str_DONT_REMOVE_SPACES);
} }
/*****************************************************************************/ /*****************************************************************************/
@ -2699,7 +2702,8 @@ void Qst_GetQstFromForm (struct Qst_Question *Question)
if (Question->Tags.Txt[NumTag][0]) if (Question->Tags.Txt[NumTag][0])
{ {
Str_ChangeFormat (Str_FROM_FORM,Str_TO_TEXT, Str_ChangeFormat (Str_FROM_FORM,Str_TO_TEXT,
Question->Tags.Txt[NumTag],Tag_MAX_BYTES_TAG,true); Question->Tags.Txt[NumTag],Tag_MAX_BYTES_TAG,
Str_REMOVE_SPACES);
/* Check if not repeated */ /* Check if not repeated */
for (NumTagRead = 0; for (NumTagRead = 0;
NumTagRead < NumTag; NumTagRead < NumTag;

View File

@ -565,7 +565,8 @@ static void QstImp_ImportQuestionsFromXMLBuffer (const char *XMLBuffer)
/* Convert stem from text to HTML (in database stem is stored in HTML) */ /* Convert stem from text to HTML (in database stem is stored in HTML) */
Str_Copy (Question.Stem,StemElem->Content,Cns_MAX_BYTES_TEXT); Str_Copy (Question.Stem,StemElem->Content,Cns_MAX_BYTES_TEXT);
Str_ChangeFormat (Str_FROM_TEXT,Str_TO_HTML, Str_ChangeFormat (Str_FROM_TEXT,Str_TO_HTML,
Question.Stem,Cns_MAX_BYTES_TEXT,true); Question.Stem,Cns_MAX_BYTES_TEXT,
Str_REMOVE_SPACES);
} }
break; // Only first element "stem" break; // Only first element "stem"
} }
@ -581,7 +582,8 @@ static void QstImp_ImportQuestionsFromXMLBuffer (const char *XMLBuffer)
/* Convert feedback from text to HTML (in database feedback is stored in HTML) */ /* Convert feedback from text to HTML (in database feedback is stored in HTML) */
Str_Copy (Question.Feedback,FeedbackElem->Content,Cns_MAX_BYTES_TEXT); Str_Copy (Question.Feedback,FeedbackElem->Content,Cns_MAX_BYTES_TEXT);
Str_ChangeFormat (Str_FROM_TEXT,Str_TO_HTML, Str_ChangeFormat (Str_FROM_TEXT,Str_TO_HTML,
Question.Feedback,Cns_MAX_BYTES_TEXT,true); Question.Feedback,Cns_MAX_BYTES_TEXT,
Str_REMOVE_SPACES);
} }
break; // Only first element "feedback" break; // Only first element "feedback"
} }
@ -772,7 +774,8 @@ static void QstImp_GetAnswerFromXML (struct XMLElement *AnswerElem,
/* Convert answer from text to HTML (in database answer text is stored in HTML) */ /* Convert answer from text to HTML (in database answer text is stored in HTML) */
Str_ChangeFormat (Str_FROM_TEXT,Str_TO_HTML, Str_ChangeFormat (Str_FROM_TEXT,Str_TO_HTML,
Question->Answer.Options[NumOpt].Text, Question->Answer.Options[NumOpt].Text,
Qst_MAX_BYTES_ANSWER_OR_FEEDBACK,true); Qst_MAX_BYTES_ANSWER_OR_FEEDBACK,
Str_REMOVE_SPACES);
} }
break; // Only first element "text" break; // Only first element "text"
} }
@ -791,7 +794,8 @@ static void QstImp_GetAnswerFromXML (struct XMLElement *AnswerElem,
/* Convert feedback from text to HTML (in database answer feedback is stored in HTML) */ /* Convert feedback from text to HTML (in database answer feedback is stored in HTML) */
Str_ChangeFormat (Str_FROM_TEXT,Str_TO_HTML, Str_ChangeFormat (Str_FROM_TEXT,Str_TO_HTML,
Question->Answer.Options[NumOpt].Feedback, Question->Answer.Options[NumOpt].Feedback,
Qst_MAX_BYTES_ANSWER_OR_FEEDBACK,true); Qst_MAX_BYTES_ANSWER_OR_FEEDBACK,
Str_REMOVE_SPACES);
} }
break; // Only first element "feedback" break; // Only first element "feedback"
} }
@ -987,7 +991,8 @@ static void QstImp_WriteRowImportedQst (struct XMLElement *StemElem,
Str_Copy (AnswerText,Question->Answer.Options[NumOpt].Text, Str_Copy (AnswerText,Question->Answer.Options[NumOpt].Text,
AnswerTextLength); AnswerTextLength);
Str_ChangeFormat (Str_FROM_HTML,Str_TO_RIGOROUS_HTML, Str_ChangeFormat (Str_FROM_HTML,Str_TO_RIGOROUS_HTML,
AnswerText,AnswerTextLength,false); AnswerText,AnswerTextLength,
Str_DONT_REMOVE_SPACES);
/* Convert the feedback, that is in HTML, to rigorous HTML */ /* Convert the feedback, that is in HTML, to rigorous HTML */
AnswerFeedbackLength = 0; AnswerFeedbackLength = 0;
@ -1003,7 +1008,8 @@ static void QstImp_WriteRowImportedQst (struct XMLElement *StemElem,
Question->Answer.Options[NumOpt].Feedback, Question->Answer.Options[NumOpt].Feedback,
AnswerFeedbackLength); AnswerFeedbackLength);
Str_ChangeFormat (Str_FROM_HTML,Str_TO_RIGOROUS_HTML, Str_ChangeFormat (Str_FROM_HTML,Str_TO_RIGOROUS_HTML,
AnswerFeedback,AnswerFeedbackLength,false); AnswerFeedback,AnswerFeedbackLength,
Str_DONT_REMOVE_SPACES);
} }
HTM_TR_Begin (NULL); HTM_TR_Begin (NULL);

View File

@ -1754,7 +1754,8 @@ static void Rec_ShowCrsRecord (Rec_CourseRecordViewType_t TypeOfView,
{ {
Str_Copy (Text,row[0],sizeof (Text)); Str_Copy (Text,row[0],sizeof (Text));
Str_ChangeFormat (Str_FROM_HTML,Str_TO_RIGOROUS_HTML, Str_ChangeFormat (Str_FROM_HTML,Str_TO_RIGOROUS_HTML,
Text,Cns_MAX_BYTES_TEXT,false); Text,Cns_MAX_BYTES_TEXT,
Str_DONT_REMOVE_SPACES);
HTM_Txt (Text); HTM_Txt (Text);
} }
else else
@ -3337,8 +3338,9 @@ static void Rec_ShowComments (struct Usr_Data *UsrDat,bool ShowData,bool PutForm
} }
else if (UsrDat->Comments[0]) else if (UsrDat->Comments[0])
{ {
Str_ChangeFormat (Str_FROM_HTML,Str_TO_RIGOROUS_HTML, // Convert from HTML to rigorous HTML Str_ChangeFormat (Str_FROM_HTML,Str_TO_RIGOROUS_HTML,
UsrDat->Comments,Cns_MAX_BYTES_TEXT,false); UsrDat->Comments,Cns_MAX_BYTES_TEXT,
Str_DONT_REMOVE_SPACES);
HTM_Txt (UsrDat->Comments); HTM_Txt (UsrDat->Comments);
} }
} }

View File

@ -441,7 +441,8 @@ void Rub_ShowRubricMainData (struct Rub_Rubrics *Rubrics,
else else
HTM_TD_Begin ("class=\"LT %s\"",The_GetColorRows ()); HTM_TD_Begin ("class=\"LT %s\"",The_GetColorRows ());
Str_ChangeFormat (Str_FROM_HTML,Str_TO_RIGOROUS_HTML, Str_ChangeFormat (Str_FROM_HTML,Str_TO_RIGOROUS_HTML,
Rubrics->Rubric.Txt,Cns_MAX_BYTES_TEXT,false); // Convert from HTML to rigorous HTML Rubrics->Rubric.Txt,Cns_MAX_BYTES_TEXT,
Str_DONT_REMOVE_SPACES);
ALn_InsertLinks (Rubrics->Rubric.Txt,Cns_MAX_BYTES_TEXT,60); // Insert links ALn_InsertLinks (Rubrics->Rubric.Txt,Cns_MAX_BYTES_TEXT,60); // Insert links
HTM_DIV_Begin ("class=\"PAR DAT_%s\"",The_GetSuffix ()); HTM_DIV_Begin ("class=\"PAR DAT_%s\"",The_GetSuffix ());
HTM_Txt (Rubrics->Rubric.Txt); HTM_Txt (Rubrics->Rubric.Txt);

View File

@ -724,7 +724,8 @@ For example the string "Nueva++de+San+Ant%F3n"
#define Str_MAX_BYTES_SPECIAL_CHAR (256 - 1) #define Str_MAX_BYTES_SPECIAL_CHAR (256 - 1)
void Str_ChangeFormat (Str_ChangeFrom_t ChangeFrom,Str_ChangeTo_t ChangeTo, void Str_ChangeFormat (Str_ChangeFrom_t ChangeFrom,Str_ChangeTo_t ChangeTo,
char *Str,size_t MaxLengthStr,bool RemoveLeadingAndTrailingSpaces) char *Str,size_t MaxLengthStr,
Str_RemoveSpaces_t RemoveLeadingAndTrailingSpaces)
{ {
char *StrDst; char *StrDst;
char *PtrSrc; char *PtrSrc;
@ -1185,7 +1186,7 @@ void Str_ChangeFormat (Str_ChangeFrom_t ChangeFrom,Str_ChangeTo_t ChangeTo,
free (StrDst); free (StrDst);
} }
if (RemoveLeadingAndTrailingSpaces) if (RemoveLeadingAndTrailingSpaces == Str_REMOVE_SPACES)
{ {
/***** Remove leading spaces *****/ /***** Remove leading spaces *****/
Str_RemoveLeadingSpacesHTML (Str); Str_RemoveLeadingSpacesHTML (Str);

View File

@ -78,6 +78,13 @@ typedef enum
Str_TO_MARKDOWN, Str_TO_MARKDOWN,
} Str_ChangeTo_t; } Str_ChangeTo_t;
typedef enum
{
Str_DONT_REMOVE_SPACES,
Str_REMOVE_SPACES,
} Str_RemoveSpaces_t;
/*****************************************************************************/ /*****************************************************************************/
/***************************** Public prototypes ****************************/ /***************************** Public prototypes ****************************/
/*****************************************************************************/ /*****************************************************************************/
@ -106,7 +113,8 @@ void Str_SetDecimalPointToLocal (void);
void Str_AddStrToQuery (char *Query,const char *Str,size_t SizeOfQuery); void Str_AddStrToQuery (char *Query,const char *Str,size_t SizeOfQuery);
void Str_ChangeFormat (Str_ChangeFrom_t ChangeFrom,Str_ChangeTo_t ChangeTo, void Str_ChangeFormat (Str_ChangeFrom_t ChangeFrom,Str_ChangeTo_t ChangeTo,
char *Str,size_t MaxLengthStr,bool RemoveLeadingAndTrailingSpaces); char *Str,size_t MaxLengthStr,
Str_RemoveSpaces_t RemoveLeadingAndTrailingSpaces);
void Str_RemoveLeadingSpacesHTML (char *Str); void Str_RemoveLeadingSpacesHTML (char *Str);
void Str_RemoveTrailingSpacesHTML (char *Str); void Str_RemoveTrailingSpacesHTML (char *Str);
void Str_RemoveLeadingZeros (char *Str); void Str_RemoveLeadingZeros (char *Str);

View File

@ -647,7 +647,7 @@ static void Svy_ShowOneSurvey (struct Svy_Surveys *Surveys,
/* Text of the survey */ /* Text of the survey */
Svy_DB_GetSurveyTxt (Surveys->Svy.SvyCod,Txt); Svy_DB_GetSurveyTxt (Surveys->Svy.SvyCod,Txt);
Str_ChangeFormat (Str_FROM_HTML,Str_TO_RIGOROUS_HTML, Str_ChangeFormat (Str_FROM_HTML,Str_TO_RIGOROUS_HTML,
Txt,Cns_MAX_BYTES_TEXT,false); // Convert from HTML to rigorous HTML Txt,Cns_MAX_BYTES_TEXT,Str_DONT_REMOVE_SPACES);
ALn_InsertLinks (Txt,Cns_MAX_BYTES_TEXT,60); // Insert links ALn_InsertLinks (Txt,Cns_MAX_BYTES_TEXT,60); // Insert links
HTM_DIV_Begin ("class=\"PAR %s_%s\"", HTM_DIV_Begin ("class=\"PAR %s_%s\"",
Surveys->Svy.Status.Hidden ? "DAT_LIGHT" : Surveys->Svy.Status.Hidden ? "DAT_LIGHT" :
@ -2881,7 +2881,7 @@ static void Svy_WriteQstStem (const char *Stem)
Err_NotEnoughMemoryExit (); Err_NotEnoughMemoryExit ();
Str_Copy (HeadingRigorousHTML,Stem,Length); Str_Copy (HeadingRigorousHTML,Stem,Length);
Str_ChangeFormat (Str_FROM_HTML,Str_TO_RIGOROUS_HTML, Str_ChangeFormat (Str_FROM_HTML,Str_TO_RIGOROUS_HTML,
HeadingRigorousHTML,Length,false); HeadingRigorousHTML,Length,Str_DONT_REMOVE_SPACES);
/* Write the stem */ /* Write the stem */
HTM_Txt (HeadingRigorousHTML); HTM_Txt (HeadingRigorousHTML);
@ -2935,7 +2935,8 @@ static void Svy_WriteAnswersOfAQst (struct Svy_Survey *Svy,
Str_Copy (SvyQst->AnsChoice[NumAns].Text,row[2],Svy_MAX_BYTES_ANSWER); Str_Copy (SvyQst->AnsChoice[NumAns].Text,row[2],Svy_MAX_BYTES_ANSWER);
Str_ChangeFormat (Str_FROM_HTML,Str_TO_RIGOROUS_HTML, Str_ChangeFormat (Str_FROM_HTML,Str_TO_RIGOROUS_HTML,
SvyQst->AnsChoice[NumAns].Text,Svy_MAX_BYTES_ANSWER,false); SvyQst->AnsChoice[NumAns].Text,Svy_MAX_BYTES_ANSWER,
Str_DONT_REMOVE_SPACES);
/* Selectors and label with the letter of the answer */ /* Selectors and label with the letter of the answer */
HTM_TR_Begin (NULL); HTM_TR_Begin (NULL);
@ -3305,7 +3306,7 @@ static void Svy_ReceiveAndStoreUserAnswersToASurvey (long SvyCod)
/* Get possible parameter with the user's comment */ /* Get possible parameter with the user's comment */
snprintf (ParName,sizeof (ParName),"Com%010u",(unsigned) QstCod); snprintf (ParName,sizeof (ParName),"Com%010u",(unsigned) QstCod);
Par_GetParAndChangeFormat (ParName,Comments,Cns_MAX_BYTES_TEXT, Par_GetParAndChangeFormat (ParName,Comments,Cns_MAX_BYTES_TEXT,
Str_TO_RIGOROUS_HTML,true); Str_TO_RIGOROUS_HTML,Str_REMOVE_SPACES);
if (Comments[0]) if (Comments[0])
Svy_DB_CreateComments (QstCod,Comments); Svy_DB_CreateComments (QstCod,Comments);
} }

View File

@ -779,7 +779,7 @@ static long TmlCom_ReceiveComm (void)
/***** Get the content of the comment *****/ /***** Get the content of the comment *****/
Par_GetParAndChangeFormat ("Txt",Content.Txt,Cns_MAX_BYTES_LONG_TEXT, Par_GetParAndChangeFormat ("Txt",Content.Txt,Cns_MAX_BYTES_LONG_TEXT,
Str_TO_RIGOROUS_HTML,true); Str_TO_RIGOROUS_HTML,Str_REMOVE_SPACES);
/***** Initialize image *****/ /***** Initialize image *****/
Med_MediaConstructor (&Content.Media); Med_MediaConstructor (&Content.Media);

View File

@ -310,7 +310,7 @@ static long TmlPst_ReceivePost (void)
/***** Get the content of the new post *****/ /***** Get the content of the new post *****/
Par_GetParAndChangeFormat ("Txt",Content.Txt,Cns_MAX_BYTES_LONG_TEXT, Par_GetParAndChangeFormat ("Txt",Content.Txt,Cns_MAX_BYTES_LONG_TEXT,
Str_TO_RIGOROUS_HTML,true); Str_TO_RIGOROUS_HTML,Str_REMOVE_SPACES);
/***** Initialize image *****/ /***** Initialize image *****/
Med_MediaConstructor (&Content.Media); Med_MediaConstructor (&Content.Media);

View File

@ -2436,7 +2436,7 @@ static void Usr_WriteRowStdAllData (struct Usr_Data *UsrDat,char *GroupNames)
row = mysql_fetch_row (mysql_res); row = mysql_fetch_row (mysql_res);
Str_Copy (Text,row[0],sizeof (Text) - 1); Str_Copy (Text,row[0],sizeof (Text) - 1);
Str_ChangeFormat (Str_FROM_HTML,Str_TO_RIGOROUS_HTML, Str_ChangeFormat (Str_FROM_HTML,Str_TO_RIGOROUS_HTML,
Text,Cns_MAX_BYTES_TEXT,false); // Se convierte of HTML a HTML respetuoso Text,Cns_MAX_BYTES_TEXT,Str_DONT_REMOVE_SPACES);
} }
else else
Text[0] = '\0'; Text[0] = '\0';
@ -3110,7 +3110,8 @@ void Usr_GetListsSelectedEncryptedUsrsCods (struct Usr_SelectedUsrs *SelectedUsr
Ses_DB_GetPar (ParName,SelectedUsrs->List[Rol_UNK], Ses_DB_GetPar (ParName,SelectedUsrs->List[Rol_UNK],
Usr_MAX_BYTES_LIST_ENCRYPTED_USR_CODS); Usr_MAX_BYTES_LIST_ENCRYPTED_USR_CODS);
Str_ChangeFormat (Str_FROM_FORM,Str_TO_TEXT,SelectedUsrs->List[Rol_UNK], Str_ChangeFormat (Str_FROM_FORM,Str_TO_TEXT,SelectedUsrs->List[Rol_UNK],
Usr_MAX_BYTES_LIST_ENCRYPTED_USR_CODS,true); Usr_MAX_BYTES_LIST_ENCRYPTED_USR_CODS,
Str_REMOVE_SPACES);
} }
else else
Par_GetParMultiToText (ParName,SelectedUsrs->List[Rol_UNK], Par_GetParMultiToText (ParName,SelectedUsrs->List[Rol_UNK],