Version 22.90.1: Apr 04, 2023 Code refactoring in resources.

This commit is contained in:
acanas 2023-04-04 14:32:01 +02:00
parent 9bdfd8d91c
commit 1b77dc4a7a
26 changed files with 192 additions and 112 deletions

View File

@ -79,7 +79,7 @@ void AsgRsc_GetLinkToAssignment (void)
/************************ Write assignment as resource ***********************/ /************************ Write assignment as resource ***********************/
/*****************************************************************************/ /*****************************************************************************/
void AsgRsc_WriteResourceAssignment (long AsgCod,bool PutFormToGo, void AsgRsc_WriteResourceAssignment (long AsgCod,Frm_PutFormToGo_t PutFormToGo,
const char *Icon,const char *IconTitle) const char *Icon,const char *IconTitle)
{ {
extern const char *Txt_Actions[ActLst_NUM_ACTIONS]; extern const char *Txt_Actions[ActLst_NUM_ACTIONS];
@ -90,7 +90,7 @@ void AsgRsc_WriteResourceAssignment (long AsgCod,bool PutFormToGo,
AsgRsc_GetTitleFromAsgCod (AsgCod,Title,sizeof (Title) - 1); AsgRsc_GetTitleFromAsgCod (AsgCod,Title,sizeof (Title) - 1);
/***** Begin form to go to assignment *****/ /***** Begin form to go to assignment *****/
if (PutFormToGo) if (PutFormToGo == Frm_PUT_FORM_TO_GO)
{ {
NextAction = (AsgCod > 0) ? ActSeeOneAsg : // Assignment specified NextAction = (AsgCod > 0) ? ActSeeOneAsg : // Assignment specified
ActSeeAsg; // All assignments ActSeeAsg; // All assignments
@ -104,16 +104,21 @@ void AsgRsc_WriteResourceAssignment (long AsgCod,bool PutFormToGo,
} }
/***** Icon depending on type ******/ /***** Icon depending on type ******/
if (PutFormToGo) switch (PutFormToGo)
Ico_PutIconLink (Icon,Ico_BLACK,NextAction); {
else case Frm_DONT_PUT_FORM_TO_GO:
Ico_PutIconOn (Icon,Ico_BLACK,IconTitle); Ico_PutIconOn (Icon,Ico_BLACK,IconTitle);
break;
case Frm_PUT_FORM_TO_GO:
Ico_PutIconLink (Icon,Ico_BLACK,NextAction);
break;
}
/***** Write assignment title of exam *****/ /***** Write assignment title of exam *****/
HTM_Txt (Title); HTM_Txt (Title);
/***** End form to download file *****/ /***** End form to download file *****/
if (PutFormToGo) if (PutFormToGo == Frm_PUT_FORM_TO_GO)
{ {
HTM_BUTTON_End (); HTM_BUTTON_End ();
Frm_EndForm (); Frm_EndForm ();

View File

@ -30,12 +30,14 @@
#include <stdbool.h> // For boolean type #include <stdbool.h> // For boolean type
#include <stddef.h> // For size_t #include <stddef.h> // For size_t
#include "swad_form.h"
/*****************************************************************************/ /*****************************************************************************/
/***************************** Public prototypes *****************************/ /***************************** Public prototypes *****************************/
/*****************************************************************************/ /*****************************************************************************/
void AsgRsc_GetLinkToAssignment (void); void AsgRsc_GetLinkToAssignment (void);
void AsgRsc_WriteResourceAssignment (long AsgCod,bool PutFormToGo, void AsgRsc_WriteResourceAssignment (long AsgCod,Frm_PutFormToGo_t PutFormToGo,
const char *Icon,const char *IconTitle); const char *Icon,const char *IconTitle);
void AsgRsc_GetTitleFromAsgCod (long AsgCod,char *Title,size_t TitleSize); void AsgRsc_GetTitleFromAsgCod (long AsgCod,char *Title,size_t TitleSize);

View File

@ -65,7 +65,7 @@ void AttRsc_GetLinkToEvent (void)
/****************** Write attendance event as resource ***********************/ /****************** Write attendance event as resource ***********************/
/*****************************************************************************/ /*****************************************************************************/
void AttRsc_WriteResourceEvent (long AttCod,bool PutFormToGo, void AttRsc_WriteResourceEvent (long AttCod,Frm_PutFormToGo_t PutFormToGo,
const char *Icon,const char *IconTitle) const char *Icon,const char *IconTitle)
{ {
extern const char *Txt_Actions[ActLst_NUM_ACTIONS]; extern const char *Txt_Actions[ActLst_NUM_ACTIONS];
@ -76,7 +76,7 @@ void AttRsc_WriteResourceEvent (long AttCod,bool PutFormToGo,
AttRsc_GetTitleFromAttCod (AttCod,Title,sizeof (Title) - 1); AttRsc_GetTitleFromAttCod (AttCod,Title,sizeof (Title) - 1);
/***** Begin form to go to game *****/ /***** Begin form to go to game *****/
if (PutFormToGo) if (PutFormToGo == Frm_PUT_FORM_TO_GO)
{ {
NextAction = (AttCod > 0) ? ActSeeOneAtt : // Attendance events specified NextAction = (AttCod > 0) ? ActSeeOneAtt : // Attendance events specified
ActSeeAtt; // All attendance events ActSeeAtt; // All attendance events
@ -89,16 +89,21 @@ void AttRsc_WriteResourceEvent (long AttCod,bool PutFormToGo,
} }
/***** Icon depending on type ******/ /***** Icon depending on type ******/
if (PutFormToGo) switch (PutFormToGo)
Ico_PutIconLink (Icon,Ico_BLACK,NextAction); {
else case Frm_DONT_PUT_FORM_TO_GO:
Ico_PutIconOn (Icon,Ico_BLACK,IconTitle); Ico_PutIconOn (Icon,Ico_BLACK,IconTitle);
break;
case Frm_PUT_FORM_TO_GO:
Ico_PutIconLink (Icon,Ico_BLACK,NextAction);
break;
}
/***** Write attendance event title *****/ /***** Write attendance event title *****/
HTM_Txt (Title); HTM_Txt (Title);
/***** End form to download file *****/ /***** End form to download file *****/
if (PutFormToGo) if (PutFormToGo == Frm_PUT_FORM_TO_GO)
{ {
HTM_BUTTON_End (); HTM_BUTTON_End ();
Frm_EndForm (); Frm_EndForm ();

View File

@ -29,12 +29,14 @@
#include <stddef.h> // For size_t #include <stddef.h> // For size_t
#include "swad_form.h"
/*****************************************************************************/ /*****************************************************************************/
/***************************** Public prototypes *****************************/ /***************************** Public prototypes *****************************/
/*****************************************************************************/ /*****************************************************************************/
void AttRsc_GetLinkToEvent (void); void AttRsc_GetLinkToEvent (void);
void AttRsc_WriteResourceEvent (long AttCod,bool PutFormToGo, void AttRsc_WriteResourceEvent (long AttCod,Frm_PutFormToGo_t PutFormToGo,
const char *Icon,const char *IconTitle); const char *Icon,const char *IconTitle);
void AttRsc_GetTitleFromAttCod (long AttCod,char *Title,size_t TitleSize); void AttRsc_GetTitleFromAttCod (long AttCod,char *Title,size_t TitleSize);

View File

@ -4716,7 +4716,7 @@ static void Brw_PutIconFileWithLinkToViewMetadata (const struct Brw_FileMetadata
if (FileMetadata->FilFolLnk.Type == Brw_IS_FILE) if (FileMetadata->FilFolLnk.Type == Brw_IS_FILE)
Brw_PutIconFile (FileMetadata->FilFolLnk.Name, Brw_PutIconFile (FileMetadata->FilFolLnk.Name,
"CONTEXT_OPT ICO_HIGHLIGHT CONTEXT_ICO16x16", "CONTEXT_OPT ICO_HIGHLIGHT CONTEXT_ICO16x16",
true); // Put link to view metadata Frm_PUT_FORM_TO_GO); // Put link to view metadata
else else
/* /*
HTM_INPUT_IMAGE (Cfg_URL_ICON_PUBLIC,"up-right-from-square.svg",Txt_Link, HTM_INPUT_IMAGE (Cfg_URL_ICON_PUBLIC,"up-right-from-square.svg",Txt_Link,
@ -4738,7 +4738,7 @@ static void Brw_PutIconFileWithLinkToViewMetadata (const struct Brw_FileMetadata
/*****************************************************************************/ /*****************************************************************************/
void Brw_PutIconFile (const char *FileName, void Brw_PutIconFile (const char *FileName,
const char *Class,bool PutLinkToViewMetadata) const char *Class,Frm_PutFormToGo_t PutFormToGo)
{ {
extern const unsigned Ext_NUM_FILE_EXT_ALLOWED; extern const unsigned Ext_NUM_FILE_EXT_ALLOWED;
extern const char *Ext_FileExtensionsAllowed[]; extern const char *Ext_FileExtensionsAllowed[];
@ -4773,10 +4773,15 @@ void Brw_PutIconFile (const char *FileName,
Err_NotEnoughMemoryExit (); Err_NotEnoughMemoryExit ();
} }
if (PutLinkToViewMetadata) switch (PutFormToGo)
HTM_INPUT_IMAGE (URL,Icon,Title,"class=\"%s\"",Class); {
else case Frm_DONT_PUT_FORM_TO_GO:
HTM_IMG (URL,Icon,Title,"class=\"%s\"",Class); HTM_IMG (URL,Icon,Title,"class=\"%s\"",Class);
break;
case Frm_PUT_FORM_TO_GO:
HTM_INPUT_IMAGE (URL,Icon,Title,"class=\"%s\"",Class);
break;
}
free (Title); free (Title);
free (Icon); free (Icon);
free (URL); free (URL);
@ -8184,7 +8189,7 @@ static void Brw_WriteBigLinkToDownloadFile (const char *URL,
if (FileMetadata->FilFolLnk.Type == Brw_IS_FILE) if (FileMetadata->FilFolLnk.Type == Brw_IS_FILE)
Brw_PutIconFile (FileMetadata->FilFolLnk.Name, Brw_PutIconFile (FileMetadata->FilFolLnk.Name,
"ICO40x40", "ICO40x40",
false); // Don't put link to view metadata Frm_DONT_PUT_FORM_TO_GO); // Don't put link to view metadata
else else
Ico_PutIcon ("up-right-from-square.svg",Ico_BLACK,Txt_Link,"ICO40x40"); Ico_PutIcon ("up-right-from-square.svg",Ico_BLACK,Txt_Link,"ICO40x40");
@ -8209,7 +8214,7 @@ static void Brw_WriteBigLinkToDownloadFile (const char *URL,
if (FileMetadata->FilFolLnk.Type == Brw_IS_FILE) if (FileMetadata->FilFolLnk.Type == Brw_IS_FILE)
Brw_PutIconFile (FileMetadata->FilFolLnk.Name, Brw_PutIconFile (FileMetadata->FilFolLnk.Name,
"ICO40x40", "ICO40x40",
false); // Don't put link to view metadata Frm_DONT_PUT_FORM_TO_GO); // Don't put link to view metadata
else else
Ico_PutIcon ("up-right-from-square.svg",Ico_BLACK,Txt_Link,"ICO40x40"); Ico_PutIcon ("up-right-from-square.svg",Ico_BLACK,Txt_Link,"ICO40x40");
HTM_TxtF ("&nbsp;%s&nbsp;",FileNameToShow); HTM_TxtF ("&nbsp;%s&nbsp;",FileNameToShow);
@ -9681,7 +9686,7 @@ static void Brw_WriteRowDocData (unsigned *NumDocsNotHidden,MYSQL_ROW row)
case Brw_IS_FILE: case Brw_IS_FILE:
Brw_PutIconFile (FileMetadata.FilFolLnk.Name, Brw_PutIconFile (FileMetadata.FilFolLnk.Name,
"CONTEXT_ICO16x16", "CONTEXT_ICO16x16",
false); // Don't put link to view metadata Frm_DONT_PUT_FORM_TO_GO); // Don't put link to view metadata
break; break;
case Brw_IS_FOLDER: case Brw_IS_FOLDER:
Ico_PutIcon ("folder-yellow.png",Ico_UNCHANGED, Ico_PutIcon ("folder-yellow.png",Ico_UNCHANGED,

View File

@ -30,6 +30,7 @@
#include <linux/limits.h> // For PATH_MAX #include <linux/limits.h> // For PATH_MAX
#include "swad_course.h" #include "swad_course.h"
#include "swad_form.h"
#include "swad_group.h" #include "swad_group.h"
#include "swad_notification.h" #include "swad_notification.h"
@ -246,7 +247,7 @@ void Brw_DB_RemoveExpiredExpandedFolders (void);
void Brw_SetFullPathInTree (void); void Brw_SetFullPathInTree (void);
void Brw_PutIconFile (const char *FileName, void Brw_PutIconFile (const char *FileName,
const char *Class,bool PutLinkToViewMetadata); const char *Class,Frm_PutFormToGo_t PutFormToGo);
//----------------------------------------------------------------------------- //-----------------------------------------------------------------------------
void Brw_CreateTmpPublicLinkToPrivateFile (const char *FullPathIncludingFile, void Brw_CreateTmpPublicLinkToPrivateFile (const char *FullPathIncludingFile,

View File

@ -92,7 +92,7 @@ void BrwRsc_GetLinkToFile (void)
/************************ Write document as resource *************************/ /************************ Write document as resource *************************/
/*****************************************************************************/ /*****************************************************************************/
void BrwRsc_WriteResourceDocument (long FilCod,bool PutFormToGo, void BrwRsc_WriteResourceDocument (long FilCod,Frm_PutFormToGo_t PutFormToGo,
const char *Icon,const char *IconTitle) const char *Icon,const char *IconTitle)
{ {
extern const char *Txt_Documents; extern const char *Txt_Documents;
@ -116,7 +116,7 @@ void BrwRsc_WriteResourceDocument (long FilCod,bool PutFormToGo,
Str_Copy (Title,Txt_Documents,sizeof (Title) - 1); Str_Copy (Title,Txt_Documents,sizeof (Title) - 1);
/***** Begin form to go to file data *****/ /***** Begin form to go to file data *****/
if (PutFormToGo) if (PutFormToGo == Frm_PUT_FORM_TO_GO)
{ {
NextAction = (FileMetadata.FilCod > 0) ? ActReqDatSeeDocCrs : // Document specified NextAction = (FileMetadata.FilCod > 0) ? ActReqDatSeeDocCrs : // Document specified
ActSeeAdmDocCrsGrp; // All documents ActSeeAdmDocCrsGrp; // All documents
@ -138,30 +138,39 @@ void BrwRsc_WriteResourceDocument (long FilCod,bool PutFormToGo,
case Brw_IS_FILE: case Brw_IS_FILE:
Brw_PutIconFile (FileMetadata.FilFolLnk.Name, Brw_PutIconFile (FileMetadata.FilFolLnk.Name,
"CONTEXT_OPT ICO_HIGHLIGHT CONTEXT_ICO16x16", "CONTEXT_OPT ICO_HIGHLIGHT CONTEXT_ICO16x16",
PutFormToGo); // Put link to view metadata PutFormToGo); // Put link to view metadata?
break; break;
case Brw_IS_LINK: case Brw_IS_LINK:
if (PutFormToGo) switch (PutFormToGo)
Ico_PutIconLink ("up-right-from-square.svg",Ico_BLACK,NextAction); {
else case Frm_DONT_PUT_FORM_TO_GO:
Ico_PutIconOn ("up-right-from-square.svg",Ico_BLACK,IconTitle); Ico_PutIconOn ("up-right-from-square.svg",Ico_BLACK,IconTitle);
break;
case Frm_PUT_FORM_TO_GO:
Ico_PutIconLink ("up-right-from-square.svg",Ico_BLACK,NextAction);
break;
}
break; break;
default: default:
break; break;
} }
else // Documents zone else // Documents zone
{ switch (PutFormToGo)
if (PutFormToGo) {
Ico_PutIconLink (Icon,Ico_BLACK,NextAction); case Frm_DONT_PUT_FORM_TO_GO:
else Ico_PutIconOn (Icon,Ico_BLACK,IconTitle);
Ico_PutIconOn (Icon,Ico_BLACK,IconTitle); break;
} case Frm_PUT_FORM_TO_GO:
Ico_PutIconLink (Icon,Ico_BLACK,NextAction);
break;
}
/***** Write title *****/ /***** Write title *****/
HTM_Txt (Title); HTM_Txt (Title);
/***** End form to download file *****/ /***** End form to download file *****/
if (PutFormToGo) if (PutFormToGo == Frm_PUT_FORM_TO_GO)
{ {
HTM_BUTTON_End (); HTM_BUTTON_End ();
Frm_EndForm (); Frm_EndForm ();
@ -172,7 +181,7 @@ void BrwRsc_WriteResourceDocument (long FilCod,bool PutFormToGo,
/************************ Write marks file as resource ***********************/ /************************ Write marks file as resource ***********************/
/*****************************************************************************/ /*****************************************************************************/
void BrwRsc_WriteResourceMarksFile (long FilCod,bool PutFormToGo, void BrwRsc_WriteResourceMarksFile (long FilCod,Frm_PutFormToGo_t PutFormToGo,
const char *Icon,const char *IconTitle) const char *Icon,const char *IconTitle)
{ {
extern const char *Txt_Marks_area; extern const char *Txt_Marks_area;
@ -196,7 +205,7 @@ void BrwRsc_WriteResourceMarksFile (long FilCod,bool PutFormToGo,
Str_Copy (Title,Txt_Marks_area,sizeof (Title) - 1); Str_Copy (Title,Txt_Marks_area,sizeof (Title) - 1);
/***** Begin form to go to file data *****/ /***** Begin form to go to file data *****/
if (PutFormToGo) if (PutFormToGo == Frm_PUT_FORM_TO_GO)
{ {
NextAction = (FileMetadata.FilCod > 0) ? ActReqDatSeeMrkCrs : // Marks file specified NextAction = (FileMetadata.FilCod > 0) ? ActReqDatSeeMrkCrs : // Marks file specified
ActSeeAdmMrk; // All marks files ActSeeAdmMrk; // All marks files
@ -212,16 +221,21 @@ void BrwRsc_WriteResourceMarksFile (long FilCod,bool PutFormToGo,
} }
/***** Icon depending on type ******/ /***** Icon depending on type ******/
if (PutFormToGo) switch (PutFormToGo)
Ico_PutIconLink (Icon,Ico_BLACK,NextAction); {
else case Frm_DONT_PUT_FORM_TO_GO:
Ico_PutIconOn (Icon,Ico_BLACK,IconTitle); Ico_PutIconOn (Icon,Ico_BLACK,IconTitle);
break;
case Frm_PUT_FORM_TO_GO:
Ico_PutIconLink (Icon,Ico_BLACK,NextAction);
break;
}
/***** Write filename *****/ /***** Write filename *****/
HTM_Txt (Title); HTM_Txt (Title);
/***** End form to download file *****/ /***** End form to download file *****/
if (PutFormToGo) if (PutFormToGo == Frm_PUT_FORM_TO_GO)
{ {
HTM_BUTTON_End (); HTM_BUTTON_End ();
Frm_EndForm (); Frm_EndForm ();

View File

@ -34,9 +34,9 @@
/*****************************************************************************/ /*****************************************************************************/
void BrwRsc_GetLinkToFile (void); void BrwRsc_GetLinkToFile (void);
void BrwRsc_WriteResourceDocument (long FilCod,bool PutFormToGo, void BrwRsc_WriteResourceDocument (long FilCod,Frm_PutFormToGo_t PutFormToGo,
const char *Icon,const char *IconTitle); const char *Icon,const char *IconTitle);
void BrwRsc_WriteResourceMarksFile (long FilCod,bool PutFormToGo, void BrwRsc_WriteResourceMarksFile (long FilCod,Frm_PutFormToGo_t PutFormToGo,
const char *Icon,const char *IconTitle); const char *Icon,const char *IconTitle);
void BrwRsc_GetTitleFromDocFilCod (long FilCod,char *Title,size_t TitleSize); void BrwRsc_GetTitleFromDocFilCod (long FilCod,char *Title,size_t TitleSize);
void BrwRsc_GetTitleFromMrkFilCod (long FilCod,char *Title,size_t TitleSize); void BrwRsc_GetTitleFromMrkFilCod (long FilCod,char *Title,size_t TitleSize);

View File

@ -70,7 +70,7 @@ void Cfe_GetLinkToCallForExam (void)
/********************** Write call for exam as resource **********************/ /********************** Write call for exam as resource **********************/
/*****************************************************************************/ /*****************************************************************************/
void CfeRsc_WriteResourceCallForExam (long ExaCod,bool PutFormToGo, void CfeRsc_WriteResourceCallForExam (long ExaCod,Frm_PutFormToGo_t PutFormToGo,
const char *Icon,const char *IconTitle) const char *Icon,const char *IconTitle)
{ {
extern const char *Txt_Actions[ActLst_NUM_ACTIONS]; extern const char *Txt_Actions[ActLst_NUM_ACTIONS];
@ -82,7 +82,7 @@ void CfeRsc_WriteResourceCallForExam (long ExaCod,bool PutFormToGo,
CfeRsc_GetTitleFromExaCod (ExaCod,Title,sizeof (Title) - 1); CfeRsc_GetTitleFromExaCod (ExaCod,Title,sizeof (Title) - 1);
/***** Begin form to download file *****/ /***** Begin form to download file *****/
if (PutFormToGo) if (PutFormToGo == Frm_PUT_FORM_TO_GO)
{ {
/* Build anchor string */ /* Build anchor string */
Frm_SetAnchorStr (ExaCod,&Anchor); Frm_SetAnchorStr (ExaCod,&Anchor);
@ -101,16 +101,21 @@ void CfeRsc_WriteResourceCallForExam (long ExaCod,bool PutFormToGo,
} }
/***** Icon depending on type ******/ /***** Icon depending on type ******/
if (PutFormToGo) switch (PutFormToGo)
Ico_PutIconLink (Icon,Ico_BLACK,NextAction); {
else case Frm_DONT_PUT_FORM_TO_GO:
Ico_PutIconOn (Icon,Ico_BLACK,IconTitle); Ico_PutIconOn (Icon,Ico_BLACK,IconTitle);
break;
case Frm_PUT_FORM_TO_GO:
Ico_PutIconLink (Icon,Ico_BLACK,NextAction);
break;
}
/***** Write title of call for exam *****/ /***** Write title of call for exam *****/
HTM_Txt (Title); HTM_Txt (Title);
/***** End form to download file *****/ /***** End form to download file *****/
if (PutFormToGo) if (PutFormToGo == Frm_PUT_FORM_TO_GO)
{ {
HTM_BUTTON_End (); HTM_BUTTON_End ();
Frm_EndForm (); Frm_EndForm ();

View File

@ -29,12 +29,14 @@
#include <stddef.h> // For size_t #include <stddef.h> // For size_t
#include "swad_form.h"
/*****************************************************************************/ /*****************************************************************************/
/***************************** Public prototypes *****************************/ /***************************** Public prototypes *****************************/
/*****************************************************************************/ /*****************************************************************************/
void Cfe_GetLinkToCallForExam (void); void Cfe_GetLinkToCallForExam (void);
void CfeRsc_WriteResourceCallForExam (long ExaCod,bool PutFormToGo, void CfeRsc_WriteResourceCallForExam (long ExaCod,Frm_PutFormToGo_t PutFormToGo,
const char *Icon,const char *IconTitle); const char *Icon,const char *IconTitle);
void CfeRsc_GetTitleFromExaCod (long ExaCod,char *Title,size_t TitleSize); void CfeRsc_GetTitleFromExaCod (long ExaCod,char *Title,size_t TitleSize);

View File

@ -629,10 +629,11 @@ 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.90 (2023-04-04)" #define Log_PLATFORM_VERSION "SWAD 22.90.1 (2023-04-04)"
#define CSS_FILE "swad22.88.css" #define CSS_FILE "swad22.88.css"
#define JS_FILE "swad22.49.js" #define JS_FILE "swad22.49.js"
/* /*
Version 22.90.1: Apr 04, 2023 Code refactoring in resources. (338881 lines)
Version 22.90: Apr 04, 2023 Code refactoring checking user. (338807 lines) Version 22.90: Apr 04, 2023 Code refactoring checking user. (338807 lines)
Version 22.89.1: Apr 04, 2023 Code refactoring in projects configuration. (338622 lines) Version 22.89.1: Apr 04, 2023 Code refactoring in projects configuration. (338622 lines)
Version 22.89: Apr 01, 2023 New module swad_project_config for projects configuration. (338613 lines) Version 22.89: Apr 01, 2023 New module swad_project_config for projects configuration. (338613 lines)

View File

@ -69,7 +69,7 @@ void ExaRsc_GetLinkToExam (void)
/**************************** Write exam as resource *************************/ /**************************** Write exam as resource *************************/
/*****************************************************************************/ /*****************************************************************************/
void ExaRsc_WriteResourceExam (long ExaCod,bool PutFormToGo, void ExaRsc_WriteResourceExam (long ExaCod,Frm_PutFormToGo_t PutFormToGo,
const char *Icon,const char *IconTitle) const char *Icon,const char *IconTitle)
{ {
extern const char *Txt_Actions[ActLst_NUM_ACTIONS]; extern const char *Txt_Actions[ActLst_NUM_ACTIONS];
@ -80,7 +80,7 @@ void ExaRsc_WriteResourceExam (long ExaCod,bool PutFormToGo,
ExaRsc_GetTitleFromExaCod (ExaCod,Title,sizeof (Title) - 1); ExaRsc_GetTitleFromExaCod (ExaCod,Title,sizeof (Title) - 1);
/***** Begin form to go to exam *****/ /***** Begin form to go to exam *****/
if (PutFormToGo) if (PutFormToGo == Frm_PUT_FORM_TO_GO)
{ {
NextAction = (ExaCod > 0) ? ActSeeExa : // Exam specified NextAction = (ExaCod > 0) ? ActSeeExa : // Exam specified
ActSeeAllExa; // All exams ActSeeAllExa; // All exams
@ -92,16 +92,21 @@ void ExaRsc_WriteResourceExam (long ExaCod,bool PutFormToGo,
} }
/***** Icon depending on type ******/ /***** Icon depending on type ******/
if (PutFormToGo) switch (PutFormToGo)
Ico_PutIconLink (Icon,Ico_BLACK,NextAction); {
else case Frm_DONT_PUT_FORM_TO_GO:
Ico_PutIconOn (Icon,Ico_BLACK,IconTitle); Ico_PutIconOn (Icon,Ico_BLACK,IconTitle);
break;
case Frm_PUT_FORM_TO_GO:
Ico_PutIconLink (Icon,Ico_BLACK,NextAction);
break;
}
/***** Write title of exam *****/ /***** Write title of exam *****/
HTM_Txt (Title); HTM_Txt (Title);
/***** End form to download file *****/ /***** End form to download file *****/
if (PutFormToGo) if (PutFormToGo == Frm_PUT_FORM_TO_GO)
{ {
HTM_BUTTON_End (); HTM_BUTTON_End ();
Frm_EndForm (); Frm_EndForm ();

View File

@ -29,12 +29,14 @@
#include <stddef.h> // For size_t #include <stddef.h> // For size_t
#include "swad_form.h"
/*****************************************************************************/ /*****************************************************************************/
/***************************** Public prototypes *****************************/ /***************************** Public prototypes *****************************/
/*****************************************************************************/ /*****************************************************************************/
void ExaRsc_GetLinkToExam (void); void ExaRsc_GetLinkToExam (void);
void ExaRsc_WriteResourceExam (long ExaCod,bool PutFormToGo, void ExaRsc_WriteResourceExam (long ExaCod,Frm_PutFormToGo_t PutFormToGo,
const char *Icon,const char *IconTitle); const char *Icon,const char *IconTitle);
void ExaRsc_GetTitleFromExaCod (long ExaCod,char *Title,size_t TitleSize); void ExaRsc_GetTitleFromExaCod (long ExaCod,char *Title,size_t TitleSize);

View File

@ -32,7 +32,7 @@
#include "swad_cryptography.h" #include "swad_cryptography.h"
/*****************************************************************************/ /*****************************************************************************/
/****************************** Public constants *****************************/ /************************** Public constants and types ***********************/
/*****************************************************************************/ /*****************************************************************************/
#define Frm_MAX_BYTES_ID (32 + Cry_BYTES_ENCRYPTED_STR_SHA256_BASE64 + 10) #define Frm_MAX_BYTES_ID (32 + Cry_BYTES_ENCRYPTED_STR_SHA256_BASE64 + 10)
@ -42,6 +42,12 @@
#define Frm_MAX_BYTES_PARAM_LOCATION 256 #define Frm_MAX_BYTES_PARAM_LOCATION 256
#define Frm_MAX_BYTES_PARAMS_STR (Frm_MAX_BYTES_PARAM_ACTION + Frm_MAX_BYTES_PARAM_SESSION + Frm_MAX_BYTES_PARAM_LOCATION) #define Frm_MAX_BYTES_PARAMS_STR (Frm_MAX_BYTES_PARAM_ACTION + Frm_MAX_BYTES_PARAM_SESSION + Frm_MAX_BYTES_PARAM_LOCATION)
typedef enum
{
Frm_DONT_PUT_FORM_TO_GO,
Frm_PUT_FORM_TO_GO,
} Frm_PutFormToGo_t;
/*****************************************************************************/ /*****************************************************************************/
/***************************** Public prototypes *****************************/ /***************************** Public prototypes *****************************/
/*****************************************************************************/ /*****************************************************************************/

View File

@ -79,7 +79,7 @@ void ForRsc_GetLinkToThread (void)
/************************ Write thread as resource ***************************/ /************************ Write thread as resource ***************************/
/*****************************************************************************/ /*****************************************************************************/
void ForRsc_WriteResourceThread (long ThrCod,bool PutFormToGo, void ForRsc_WriteResourceThread (long ThrCod,Frm_PutFormToGo_t PutFormToGo,
const char *Icon,const char *IconTitle) const char *Icon,const char *IconTitle)
{ {
extern const char *Txt_Actions[ActLst_NUM_ACTIONS]; extern const char *Txt_Actions[ActLst_NUM_ACTIONS];
@ -91,7 +91,7 @@ void ForRsc_WriteResourceThread (long ThrCod,bool PutFormToGo,
ForRsc_GetTitleFromThrCod (ThrCod,Subject,sizeof (Subject) - 1); ForRsc_GetTitleFromThrCod (ThrCod,Subject,sizeof (Subject) - 1);
/***** Begin form to go to survey *****/ /***** Begin form to go to survey *****/
if (PutFormToGo) if (PutFormToGo == Frm_PUT_FORM_TO_GO)
{ {
/***** Set forum and thread *****/ /***** Set forum and thread *****/
For_ResetForums (&Forums); For_ResetForums (&Forums);
@ -112,16 +112,21 @@ void ForRsc_WriteResourceThread (long ThrCod,bool PutFormToGo,
} }
/***** Icon depending on type ******/ /***** Icon depending on type ******/
if (PutFormToGo) switch (PutFormToGo)
Ico_PutIconLink (Icon,Ico_BLACK,NextAction); {
else case Frm_DONT_PUT_FORM_TO_GO:
Ico_PutIconOn (Icon,Ico_BLACK,IconTitle); Ico_PutIconOn (Icon,Ico_BLACK,IconTitle);
break;
case Frm_PUT_FORM_TO_GO:
Ico_PutIconLink (Icon,Ico_BLACK,NextAction);
break;
}
/***** Write title of forum *****/ /***** Write title of forum *****/
HTM_Txt (Subject); HTM_Txt (Subject);
/***** End form to download file *****/ /***** End form to download file *****/
if (PutFormToGo) if (PutFormToGo == Frm_PUT_FORM_TO_GO)
{ {
HTM_BUTTON_End (); HTM_BUTTON_End ();
Frm_EndForm (); Frm_EndForm ();

View File

@ -34,7 +34,7 @@
/*****************************************************************************/ /*****************************************************************************/
void ForRsc_GetLinkToThread (void); void ForRsc_GetLinkToThread (void);
void ForRsc_WriteResourceThread (long ThrCod,bool PutFormToGo, void ForRsc_WriteResourceThread (long ThrCod,Frm_PutFormToGo_t PutFormToGo,
const char *Icon,const char *IconTitle); const char *Icon,const char *IconTitle);
void ForRsc_GetTitleFromThrCod (long ThrCod,char *Title,size_t TitleSize); void ForRsc_GetTitleFromThrCod (long ThrCod,char *Title,size_t TitleSize);

View File

@ -71,7 +71,7 @@ void GamRsc_GetLinkToGame (void)
/************************** Write game as resource ***************************/ /************************** Write game as resource ***************************/
/*****************************************************************************/ /*****************************************************************************/
void GamRsc_WriteResourceGame (long GamCod,bool PutFormToGo, void GamRsc_WriteResourceGame (long GamCod,Frm_PutFormToGo_t PutFormToGo,
const char *Icon,const char *IconTitle) const char *Icon,const char *IconTitle)
{ {
extern const char *Txt_Actions[ActLst_NUM_ACTIONS]; extern const char *Txt_Actions[ActLst_NUM_ACTIONS];
@ -82,7 +82,7 @@ void GamRsc_WriteResourceGame (long GamCod,bool PutFormToGo,
GamRsc_GetTitleFromGamCod (GamCod,Title,sizeof (Title) - 1); GamRsc_GetTitleFromGamCod (GamCod,Title,sizeof (Title) - 1);
/***** Begin form to go to game *****/ /***** Begin form to go to game *****/
if (PutFormToGo) if (PutFormToGo == Frm_PUT_FORM_TO_GO)
{ {
NextAction = (GamCod > 0) ? ActSeeGam : // Game specified NextAction = (GamCod > 0) ? ActSeeGam : // Game specified
ActSeeAllGam; // All games ActSeeAllGam; // All games
@ -94,16 +94,21 @@ void GamRsc_WriteResourceGame (long GamCod,bool PutFormToGo,
} }
/***** Icon depending on type ******/ /***** Icon depending on type ******/
if (PutFormToGo) switch (PutFormToGo)
Ico_PutIconLink (Icon,Ico_BLACK,NextAction); {
else case Frm_DONT_PUT_FORM_TO_GO:
Ico_PutIconOn (Icon,Ico_BLACK,IconTitle); Ico_PutIconOn (Icon,Ico_BLACK,IconTitle);
break;
case Frm_PUT_FORM_TO_GO:
Ico_PutIconLink (Icon,Ico_BLACK,NextAction);
break;
}
/***** Write game title of exam *****/ /***** Write game title of exam *****/
HTM_Txt (Title); HTM_Txt (Title);
/***** End form to go to game *****/ /***** End form to go to game *****/
if (PutFormToGo) if (PutFormToGo == Frm_PUT_FORM_TO_GO)
{ {
HTM_BUTTON_End (); HTM_BUTTON_End ();
Frm_EndForm (); Frm_EndForm ();

View File

@ -34,7 +34,7 @@
/*****************************************************************************/ /*****************************************************************************/
void GamRsc_GetLinkToGame (void); void GamRsc_GetLinkToGame (void);
void GamRsc_WriteResourceGame (long GamCod,bool PutFormToGo, void GamRsc_WriteResourceGame (long GamCod,Frm_PutFormToGo_t PutFormToGo,
const char *Icon,const char *IconTitle); const char *Icon,const char *IconTitle);
void GamRsc_GetTitleFromGamCod (long GamCod,char *Title,size_t TitleSize); void GamRsc_GetTitleFromGamCod (long GamCod,char *Title,size_t TitleSize);

View File

@ -74,7 +74,7 @@ void PrjRsc_GetLinkToProject (void)
/*********************** Write project as resource ************************/ /*********************** Write project as resource ************************/
/*****************************************************************************/ /*****************************************************************************/
void PrjRsc_WriteResourceProject (long PrjCod,bool PutFormToGo, void PrjRsc_WriteResourceProject (long PrjCod,Frm_PutFormToGo_t PutFormToGo,
const char *Icon,const char *IconTitle) const char *Icon,const char *IconTitle)
{ {
extern const char *Txt_Actions[ActLst_NUM_ACTIONS]; extern const char *Txt_Actions[ActLst_NUM_ACTIONS];
@ -85,7 +85,7 @@ void PrjRsc_WriteResourceProject (long PrjCod,bool PutFormToGo,
PrjRsc_GetTitleFromPrjCod (PrjCod,Title,sizeof (Title) - 1); PrjRsc_GetTitleFromPrjCod (PrjCod,Title,sizeof (Title) - 1);
/***** Begin form to go to project *****/ /***** Begin form to go to project *****/
if (PutFormToGo) if (PutFormToGo == Frm_PUT_FORM_TO_GO)
{ {
NextAction = (PrjCod > 0) ? ActSeeOnePrj : // Project specified NextAction = (PrjCod > 0) ? ActSeeOnePrj : // Project specified
ActSeePrj; // All projects ActSeePrj; // All projects
@ -97,16 +97,21 @@ void PrjRsc_WriteResourceProject (long PrjCod,bool PutFormToGo,
} }
/***** Icon depending on type ******/ /***** Icon depending on type ******/
if (PutFormToGo) switch (PutFormToGo)
Ico_PutIconLink (Icon,Ico_BLACK,NextAction); {
else case Frm_DONT_PUT_FORM_TO_GO:
Ico_PutIconOn (Icon,Ico_BLACK,IconTitle); Ico_PutIconOn (Icon,Ico_BLACK,IconTitle);
break;
case Frm_PUT_FORM_TO_GO:
Ico_PutIconLink (Icon,Ico_BLACK,NextAction);
break;
}
/***** Write project title *****/ /***** Write project title *****/
HTM_Txt (Title); HTM_Txt (Title);
/***** End form to go to project *****/ /***** End form to go to project *****/
if (PutFormToGo) if (PutFormToGo == Frm_PUT_FORM_TO_GO)
{ {
HTM_BUTTON_End (); HTM_BUTTON_End ();
Frm_EndForm (); Frm_EndForm ();

View File

@ -34,7 +34,7 @@
/*****************************************************************************/ /*****************************************************************************/
void PrjRsc_GetLinkToProject (void); void PrjRsc_GetLinkToProject (void);
void PrjRsc_WriteResourceProject (long PrjCod,bool PutFormToGo, void PrjRsc_WriteResourceProject (long PrjCod,Frm_PutFormToGo_t PutFormToGo,
const char *Icon,const char *IconTitle); const char *Icon,const char *IconTitle);
void PrjRsc_GetTitleFromPrjCod (long PrjCod,char *Title,size_t TitleSize); void PrjRsc_GetTitleFromPrjCod (long PrjCod,char *Title,size_t TitleSize);

View File

@ -231,10 +231,10 @@ void Rsc_WriteRowClipboard (const struct Rsc_Link *Link,
/************* Write link name (filename, assignment title...) ***************/ /************* Write link name (filename, assignment title...) ***************/
/*****************************************************************************/ /*****************************************************************************/
void Rsc_WriteLinkName (const struct Rsc_Link *Link,bool PutFormToGo, void Rsc_WriteLinkName (const struct Rsc_Link *Link,Frm_PutFormToGo_t PutFormToGo,
const char *Icon,const char *IconTitle) const char *Icon,const char *IconTitle)
{ {
static void (*WriteLinkName[Rsc_NUM_TYPES]) (long Cod,bool PutFormToGo, static void (*WriteLinkName[Rsc_NUM_TYPES]) (long Cod,Frm_PutFormToGo_t PutFormToGo,
const char *Icon, const char *Icon,
const char *IconTitle) = const char *IconTitle) =
{ {
@ -264,7 +264,7 @@ void Rsc_WriteLinkName (const struct Rsc_Link *Link,bool PutFormToGo,
/*****************************************************************************/ /*****************************************************************************/
void Rsc_WriteResourceEmpty (__attribute__((unused)) long Cod, void Rsc_WriteResourceEmpty (__attribute__((unused)) long Cod,
__attribute__((unused)) bool PutFormToGo, __attribute__((unused)) Frm_PutFormToGo_t PutFormToGo,
const char *Icon,const char *IconTitle) const char *Icon,const char *IconTitle)
{ {
extern const char *Txt_RESOURCE_TYPES[Rsc_NUM_TYPES]; extern const char *Txt_RESOURCE_TYPES[Rsc_NUM_TYPES];

View File

@ -77,10 +77,10 @@ void Rsc_ShowClipboard (void);
void Rsc_ShowClipboardToChangeLink (const struct Rsc_Link *CurrentLink); void Rsc_ShowClipboardToChangeLink (const struct Rsc_Link *CurrentLink);
void Rsc_WriteRowClipboard (const struct Rsc_Link *Link, void Rsc_WriteRowClipboard (const struct Rsc_Link *Link,
HTM_SubmitOnClick_t SubmitOnClick,bool Checked); HTM_SubmitOnClick_t SubmitOnClick,bool Checked);
void Rsc_WriteLinkName (const struct Rsc_Link *Link,bool PutFormToGo, void Rsc_WriteLinkName (const struct Rsc_Link *Link,Frm_PutFormToGo_t PutFormToGo,
const char *Icon,const char *IconTitle); const char *Icon,const char *IconTitle);
void Rsc_WriteResourceEmpty (__attribute__((unused)) long Cod, void Rsc_WriteResourceEmpty (__attribute__((unused)) long Cod,
__attribute__((unused)) bool PutFormToGo, __attribute__((unused)) Frm_PutFormToGo_t PutFormToGo,
const char *Icon,const char *IconTitle); const char *Icon,const char *IconTitle);
void Rsc_GetResourceTitleFromLink (struct Rsc_Link *Link, void Rsc_GetResourceTitleFromLink (struct Rsc_Link *Link,

View File

@ -78,7 +78,7 @@ void RubRsc_GetLinkToRubric (void)
/*************************** Write rubric as resource ************************/ /*************************** Write rubric as resource ************************/
/*****************************************************************************/ /*****************************************************************************/
void RubRsc_WriteResourceRubric (long RubCod,bool PutFormToGo, void RubRsc_WriteResourceRubric (long RubCod,Frm_PutFormToGo_t PutFormToGo,
const char *Icon,const char *IconTitle) const char *Icon,const char *IconTitle)
{ {
extern const char *Txt_Actions[ActLst_NUM_ACTIONS]; extern const char *Txt_Actions[ActLst_NUM_ACTIONS];
@ -89,7 +89,7 @@ void RubRsc_WriteResourceRubric (long RubCod,bool PutFormToGo,
RubRsc_GetTitleFromRubCod (RubCod,Title,sizeof (Title) - 1); RubRsc_GetTitleFromRubCod (RubCod,Title,sizeof (Title) - 1);
/***** Begin form to go to rubric *****/ /***** Begin form to go to rubric *****/
if (PutFormToGo) if (PutFormToGo == Frm_PUT_FORM_TO_GO)
{ {
NextAction = (RubCod > 0) ? ActSeeRub : // Rubric specified NextAction = (RubCod > 0) ? ActSeeRub : // Rubric specified
ActSeeAllRub; // All rubrics ActSeeAllRub; // All rubrics
@ -101,16 +101,21 @@ void RubRsc_WriteResourceRubric (long RubCod,bool PutFormToGo,
} }
/***** Icon depending on type ******/ /***** Icon depending on type ******/
if (PutFormToGo) switch (PutFormToGo)
Ico_PutIconLink (Icon,Ico_BLACK,NextAction); {
else case Frm_DONT_PUT_FORM_TO_GO:
Ico_PutIconOn (Icon,Ico_BLACK,IconTitle); Ico_PutIconOn (Icon,Ico_BLACK,IconTitle);
break;
case Frm_PUT_FORM_TO_GO:
Ico_PutIconLink (Icon,Ico_BLACK,NextAction);
break;
}
/***** Write title of rubric *****/ /***** Write title of rubric *****/
HTM_Txt (Title); HTM_Txt (Title);
/***** End form to download file *****/ /***** End form to download file *****/
if (PutFormToGo) if (PutFormToGo == Frm_PUT_FORM_TO_GO)
{ {
HTM_BUTTON_End (); HTM_BUTTON_End ();
Frm_EndForm (); Frm_EndForm ();

View File

@ -34,7 +34,7 @@
/*****************************************************************************/ /*****************************************************************************/
void RubRsc_GetLinkToRubric (void); void RubRsc_GetLinkToRubric (void);
void RubRsc_WriteResourceRubric (long RubCod,bool PutFormToGo, void RubRsc_WriteResourceRubric (long RubCod,Frm_PutFormToGo_t PutFormToGo,
const char *Icon,const char *IconTitle); const char *Icon,const char *IconTitle);
void RubRsc_GetTitleFromRubCod (long RubCod,char *Title,size_t TitleSize); void RubRsc_GetTitleFromRubCod (long RubCod,char *Title,size_t TitleSize);

View File

@ -69,7 +69,7 @@ void SvyRsc_GetLinkToSurvey (void)
/************************* Write survey as resource **************************/ /************************* Write survey as resource **************************/
/*****************************************************************************/ /*****************************************************************************/
void SvyRsc_WriteResourceSurvey (long SvyCod,bool PutFormToGo, void SvyRsc_WriteResourceSurvey (long SvyCod,Frm_PutFormToGo_t PutFormToGo,
const char *Icon,const char *IconTitle) const char *Icon,const char *IconTitle)
{ {
extern const char *Txt_Actions[ActLst_NUM_ACTIONS]; extern const char *Txt_Actions[ActLst_NUM_ACTIONS];
@ -80,7 +80,7 @@ void SvyRsc_WriteResourceSurvey (long SvyCod,bool PutFormToGo,
SvyRsc_GetTitleFromSvyCod (SvyCod,Title,sizeof (Title) - 1); SvyRsc_GetTitleFromSvyCod (SvyCod,Title,sizeof (Title) - 1);
/***** Begin form to go to survey *****/ /***** Begin form to go to survey *****/
if (PutFormToGo) if (PutFormToGo == Frm_PUT_FORM_TO_GO)
{ {
NextAction = (SvyCod > 0) ? ActSeeSvy : // Survey specified NextAction = (SvyCod > 0) ? ActSeeSvy : // Survey specified
ActSeeAllSvy; // All surveys ActSeeAllSvy; // All surveys
@ -92,16 +92,21 @@ void SvyRsc_WriteResourceSurvey (long SvyCod,bool PutFormToGo,
} }
/***** Icon depending on type ******/ /***** Icon depending on type ******/
if (PutFormToGo) switch (PutFormToGo)
Ico_PutIconLink (Icon,Ico_BLACK,NextAction); {
else case Frm_DONT_PUT_FORM_TO_GO:
Ico_PutIconOn (Icon,Ico_BLACK,IconTitle); Ico_PutIconOn (Icon,Ico_BLACK,IconTitle);
break;
case Frm_PUT_FORM_TO_GO:
Ico_PutIconLink (Icon,Ico_BLACK,NextAction);
break;
}
/***** Write title of survey *****/ /***** Write title of survey *****/
HTM_Txt (Title); HTM_Txt (Title);
/***** End form to download file *****/ /***** End form to download file *****/
if (PutFormToGo) if (PutFormToGo == Frm_PUT_FORM_TO_GO)
{ {
HTM_BUTTON_End (); HTM_BUTTON_End ();
Frm_EndForm (); Frm_EndForm ();

View File

@ -34,7 +34,7 @@
/*****************************************************************************/ /*****************************************************************************/
void SvyRsc_GetLinkToSurvey (void); void SvyRsc_GetLinkToSurvey (void);
void SvyRsc_WriteResourceSurvey (long SvyCod,bool PutFormToGo, void SvyRsc_WriteResourceSurvey (long SvyCod,Frm_PutFormToGo_t PutFormToGo,
const char *Icon,const char *IconTitle); const char *Icon,const char *IconTitle);
void SvyRsc_GetTitleFromSvyCod (long SvyCod,char *Title,size_t TitleSize); void SvyRsc_GetTitleFromSvyCod (long SvyCod,char *Title,size_t TitleSize);