mirror of
https://github.com/acanas/swad-core.git
synced 2024-09-20 00:02:42 +02:00
Version19.169.5
This commit is contained in:
parent
505fb31312
commit
4a01070ca3
|
@ -497,7 +497,7 @@ enscript -2 --landscape --color --file-align=2 --highlight --line-numbers -o - *
|
||||||
En OpenSWAD:
|
En OpenSWAD:
|
||||||
ps2pdf source.ps destination.pdf
|
ps2pdf source.ps destination.pdf
|
||||||
*/
|
*/
|
||||||
#define Log_PLATFORM_VERSION "SWAD 19.169.4 (2020-04-08)"
|
#define Log_PLATFORM_VERSION "SWAD 19.169.5 (2020-04-08)"
|
||||||
#define CSS_FILE "swad19.146.css"
|
#define CSS_FILE "swad19.146.css"
|
||||||
#define JS_FILE "swad19.153.js"
|
#define JS_FILE "swad19.153.js"
|
||||||
/*
|
/*
|
||||||
|
@ -548,6 +548,7 @@ Funci
|
||||||
// TODO: Oresti Baños: cambiar ojos por candados en descriptores para prohibir/permitir y dejar los ojos para poder elegir descriptores
|
// TODO: Oresti Baños: cambiar ojos por candados en descriptores para prohibir/permitir y dejar los ojos para poder elegir descriptores
|
||||||
// TODO: Integrar pull requests con traducciones del alemán del usuario eruedin en GitHub
|
// TODO: Integrar pull requests con traducciones del alemán del usuario eruedin en GitHub
|
||||||
|
|
||||||
|
Version 19.169.5: Apr 08, 2020 Mark some parameters as unused (functions from O to R). (284854 lines)
|
||||||
Version 19.169.4: Apr 08, 2020 Mark some parameters as unused (functions from I to N). (284903 lines)
|
Version 19.169.4: Apr 08, 2020 Mark some parameters as unused (functions from I to N). (284903 lines)
|
||||||
Version 19.169.3: Apr 08, 2020 Mark some parameters as unused (functions from D to I). (284929 lines)
|
Version 19.169.3: Apr 08, 2020 Mark some parameters as unused (functions from D to I). (284929 lines)
|
||||||
Version 19.169.2: Apr 08, 2020 Mark some parameters as unused (functions from A to C). (284969 lines)
|
Version 19.169.2: Apr 08, 2020 Mark some parameters as unused (functions from A to C). (284969 lines)
|
||||||
|
|
|
@ -3143,7 +3143,7 @@ static void Brw_ShowFileBrowserNormal (void)
|
||||||
static void Brw_ShowFileBrowserProject (void)
|
static void Brw_ShowFileBrowserProject (void)
|
||||||
{
|
{
|
||||||
extern const char *Hlp_ASSESSMENT_Projects;
|
extern const char *Hlp_ASSESSMENT_Projects;
|
||||||
struct Project Prj;
|
struct Prj_Project Prj;
|
||||||
unsigned MyRolesInProject;
|
unsigned MyRolesInProject;
|
||||||
|
|
||||||
/***** Allocate memory for the project *****/
|
/***** Allocate memory for the project *****/
|
||||||
|
@ -6839,7 +6839,7 @@ static void Brw_WriteCurrentClipboard (void)
|
||||||
struct Degree Deg;
|
struct Degree Deg;
|
||||||
struct Course Crs;
|
struct Course Crs;
|
||||||
struct GroupData GrpDat;
|
struct GroupData GrpDat;
|
||||||
struct Project Prj;
|
struct Prj_Project Prj;
|
||||||
struct UsrData UsrDat;
|
struct UsrData UsrDat;
|
||||||
char TxtClipboardZone[1024 +
|
char TxtClipboardZone[1024 +
|
||||||
Hie_MAX_BYTES_SHRT_NAME +
|
Hie_MAX_BYTES_SHRT_NAME +
|
||||||
|
|
|
@ -519,20 +519,7 @@ struct Globals
|
||||||
char TmpDir[NAME_MAX + 1];
|
char TmpDir[NAME_MAX + 1];
|
||||||
} ZIP;
|
} ZIP;
|
||||||
} FileBrowser; // Struct used for a file browser
|
} FileBrowser; // Struct used for a file browser
|
||||||
struct
|
struct Prj_Projects Prjs;
|
||||||
{
|
|
||||||
struct
|
|
||||||
{
|
|
||||||
bool Editable;
|
|
||||||
} Config;
|
|
||||||
struct Prj_Filter Filter;
|
|
||||||
bool LstIsRead; // Is the list already read from database, or it needs to be read?
|
|
||||||
unsigned Num; // Number of projects
|
|
||||||
long *LstPrjCods; // List of project codes
|
|
||||||
Prj_Order_t SelectedOrder;
|
|
||||||
unsigned CurrentPage;
|
|
||||||
long PrjCod; // Current project
|
|
||||||
} Prjs;
|
|
||||||
struct
|
struct
|
||||||
{
|
{
|
||||||
Usr_Who_t Who;
|
Usr_Who_t Who;
|
||||||
|
|
|
@ -74,7 +74,7 @@ const char *Pwd_PASSWORD_SECTION_ID = "password_section";
|
||||||
|
|
||||||
static void Pwd_CheckAndUpdateNewPwd (struct UsrData *UsrDat);
|
static void Pwd_CheckAndUpdateNewPwd (struct UsrData *UsrDat);
|
||||||
|
|
||||||
static void Pwd_PutLinkToSendNewPasswdParams (void *Args);
|
static void Pwd_PutLinkToSendNewPasswdParams (void *UsrIdLogin);
|
||||||
|
|
||||||
static void Pwd_CreateANewPassword (char PlainPassword[Pwd_MAX_BYTES_PLAIN_PASSWORD + 1]);
|
static void Pwd_CreateANewPassword (char PlainPassword[Pwd_MAX_BYTES_PLAIN_PASSWORD + 1]);
|
||||||
|
|
||||||
|
@ -248,15 +248,15 @@ void Pwd_PutLinkToSendNewPasswd (void)
|
||||||
extern const char *Txt_Forgotten_password;
|
extern const char *Txt_Forgotten_password;
|
||||||
|
|
||||||
Lay_PutContextualLinkIconText (ActReqSndNewPwd,NULL,
|
Lay_PutContextualLinkIconText (ActReqSndNewPwd,NULL,
|
||||||
Pwd_PutLinkToSendNewPasswdParams,&Gbl,
|
Pwd_PutLinkToSendNewPasswdParams,Gbl.Usrs.Me.UsrIdLogin,
|
||||||
"key.svg",
|
"key.svg",
|
||||||
Txt_Forgotten_password);
|
Txt_Forgotten_password);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void Pwd_PutLinkToSendNewPasswdParams (void *Args)
|
static void Pwd_PutLinkToSendNewPasswdParams (void *UsrIdLogin)
|
||||||
{
|
{
|
||||||
if (Args)
|
if (UsrIdLogin)
|
||||||
Par_PutHiddenParamString (NULL,"UsrId",Gbl.Usrs.Me.UsrIdLogin);
|
Par_PutHiddenParamString (NULL,"UsrId",(char *) Gbl.Usrs.Me.UsrIdLogin);
|
||||||
}
|
}
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
39
swad_photo.c
39
swad_photo.c
|
@ -91,8 +91,8 @@ static const char *Pho_StrAvgPhotoPrograms[Pho_NUM_AVERAGE_PHOTO_TYPES] =
|
||||||
/***************************** Private prototypes ****************************/
|
/***************************** Private prototypes ****************************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
static void Pho_PutIconToRequestRemoveMyPhoto (void *Args);
|
static void Pho_PutIconToRequestRemoveMyPhoto (__attribute__((unused)) void *Args);
|
||||||
static void Pho_PutIconToRequestRemoveOtherUsrPhoto (void *Args);
|
static void Pho_PutIconToRequestRemoveOtherUsrPhoto (__attribute__((unused)) void *Args);
|
||||||
static void Pho_ReqOtherUsrPhoto (void);
|
static void Pho_ReqOtherUsrPhoto (void);
|
||||||
|
|
||||||
static void Pho_ReqPhoto (const struct UsrData *UsrDat);
|
static void Pho_ReqPhoto (const struct UsrData *UsrDat);
|
||||||
|
@ -116,8 +116,8 @@ static Pho_HowComputePhotoSize_t Pho_GetHowComputePhotoSizeFromForm (void);
|
||||||
static void Pho_PutSelectorForHowOrderDegrees (void);
|
static void Pho_PutSelectorForHowOrderDegrees (void);
|
||||||
static Pho_HowOrderDegrees_t Pho_GetHowOrderDegreesFromForm (void);
|
static Pho_HowOrderDegrees_t Pho_GetHowOrderDegreesFromForm (void);
|
||||||
|
|
||||||
static void Pho_PutIconToPrintDegreeStats (void *Args);
|
static void Pho_PutIconToPrintDegreeStats (__attribute__((unused)) void *Args);
|
||||||
static void Pho_PutLinkToPrintViewOfDegreeStatsParams (void *Args);
|
static void Pho_PutLinkToPrintViewOfDegreeStatsParams (__attribute__((unused)) void *Args);
|
||||||
|
|
||||||
static void Pho_PutLinkToCalculateDegreeStats (void);
|
static void Pho_PutLinkToCalculateDegreeStats (void);
|
||||||
static void Pho_GetMaxStdsPerDegree (void);
|
static void Pho_GetMaxStdsPerDegree (void);
|
||||||
|
@ -218,11 +218,10 @@ void Pho_PutIconToChangeUsrPhoto (void)
|
||||||
/************** Put a link to request the removal of my photo ****************/
|
/************** Put a link to request the removal of my photo ****************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
static void Pho_PutIconToRequestRemoveMyPhoto (void *Args)
|
static void Pho_PutIconToRequestRemoveMyPhoto (__attribute__((unused)) void *Args)
|
||||||
{
|
{
|
||||||
extern const char *Txt_Remove_photo;
|
extern const char *Txt_Remove_photo;
|
||||||
|
|
||||||
if (Args)
|
|
||||||
/***** Link to request the removal of my photo *****/
|
/***** Link to request the removal of my photo *****/
|
||||||
if (Gbl.Usrs.Me.MyPhotoExists)
|
if (Gbl.Usrs.Me.MyPhotoExists)
|
||||||
Lay_PutContextualLinkOnlyIcon (ActReqRemMyPho,NULL,
|
Lay_PutContextualLinkOnlyIcon (ActReqRemMyPho,NULL,
|
||||||
|
@ -235,15 +234,13 @@ static void Pho_PutIconToRequestRemoveMyPhoto (void *Args)
|
||||||
/********** Put a link to request the removal of a user's photo **************/
|
/********** Put a link to request the removal of a user's photo **************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
static void Pho_PutIconToRequestRemoveOtherUsrPhoto (void *Args)
|
static void Pho_PutIconToRequestRemoveOtherUsrPhoto (__attribute__((unused)) void *Args)
|
||||||
{
|
{
|
||||||
extern const char *Txt_Remove_photo;
|
extern const char *Txt_Remove_photo;
|
||||||
char PhotoURL[PATH_MAX + 1];
|
char PhotoURL[PATH_MAX + 1];
|
||||||
bool PhotoExists;
|
bool PhotoExists;
|
||||||
Act_Action_t NextAction;
|
Act_Action_t NextAction;
|
||||||
|
|
||||||
if (Args)
|
|
||||||
{
|
|
||||||
/***** Link to request the removal of another user's photo *****/
|
/***** Link to request the removal of another user's photo *****/
|
||||||
PhotoExists = Pho_BuildLinkToPhoto (&Gbl.Usrs.Other.UsrDat,PhotoURL);
|
PhotoExists = Pho_BuildLinkToPhoto (&Gbl.Usrs.Other.UsrDat,PhotoURL);
|
||||||
if (PhotoExists)
|
if (PhotoExists)
|
||||||
|
@ -267,7 +264,6 @@ static void Pho_PutIconToRequestRemoveOtherUsrPhoto (void *Args)
|
||||||
Txt_Remove_photo);
|
Txt_Remove_photo);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
/************************ Form for sending my photo **************************/
|
/************************ Form for sending my photo **************************/
|
||||||
|
@ -313,7 +309,7 @@ static void Pho_ReqPhoto (const struct UsrData *UsrDat)
|
||||||
/***** Begin box *****/
|
/***** Begin box *****/
|
||||||
Box_BoxBegin (NULL,Txt_Photo,
|
Box_BoxBegin (NULL,Txt_Photo,
|
||||||
ItsMe ? Pho_PutIconToRequestRemoveMyPhoto :
|
ItsMe ? Pho_PutIconToRequestRemoveMyPhoto :
|
||||||
Pho_PutIconToRequestRemoveOtherUsrPhoto,&Gbl,
|
Pho_PutIconToRequestRemoveOtherUsrPhoto,NULL,
|
||||||
Hlp_PROFILE_Photo,Box_NOT_CLOSABLE);
|
Hlp_PROFILE_Photo,Box_NOT_CLOSABLE);
|
||||||
|
|
||||||
/***** Begin form *****/
|
/***** Begin form *****/
|
||||||
|
@ -1731,7 +1727,7 @@ void Pho_ShowOrPrintPhotoDegree (Pho_AvgPhotoSeeOrPrint_t SeeOrPrint)
|
||||||
case Pho_DEGREES_SEE:
|
case Pho_DEGREES_SEE:
|
||||||
/***** Begin box *****/
|
/***** Begin box *****/
|
||||||
Box_BoxBegin (NULL,Txt_Degrees,
|
Box_BoxBegin (NULL,Txt_Degrees,
|
||||||
Pho_PutIconToPrintDegreeStats,&Gbl,
|
Pho_PutIconToPrintDegreeStats,NULL,
|
||||||
Hlp_ANALYTICS_Degrees,Box_NOT_CLOSABLE);
|
Hlp_ANALYTICS_Degrees,Box_NOT_CLOSABLE);
|
||||||
HTM_TABLE_BeginCenterPadding (2);
|
HTM_TABLE_BeginCenterPadding (2);
|
||||||
|
|
||||||
|
@ -1784,15 +1780,12 @@ void Pho_ShowOrPrintPhotoDegree (Pho_AvgPhotoSeeOrPrint_t SeeOrPrint)
|
||||||
/**************** Put parameter for degree average photos ********************/
|
/**************** Put parameter for degree average photos ********************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
void Pho_PutParamsDegPhoto (void *Args)
|
void Pho_PutParamsDegPhoto (__attribute__((unused)) void *Args)
|
||||||
{
|
|
||||||
if (Args)
|
|
||||||
{
|
{
|
||||||
Pho_PutHiddenParamTypeOfAvg ();
|
Pho_PutHiddenParamTypeOfAvg ();
|
||||||
Pho_PutHiddenParamPhotoSize ();
|
Pho_PutHiddenParamPhotoSize ();
|
||||||
Pho_PutHiddenParamOrderDegrees ();
|
Pho_PutHiddenParamOrderDegrees ();
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
/******************* Put a selector for the type of average ******************/
|
/******************* Put a selector for the type of average ******************/
|
||||||
|
@ -1990,23 +1983,19 @@ static Pho_HowOrderDegrees_t Pho_GetHowOrderDegreesFromForm (void)
|
||||||
/*************** Put icon to print view the stats of degrees ***************/
|
/*************** Put icon to print view the stats of degrees ***************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
static void Pho_PutIconToPrintDegreeStats (void *Args)
|
static void Pho_PutIconToPrintDegreeStats (__attribute__((unused)) void *Args)
|
||||||
{
|
{
|
||||||
if (Args)
|
|
||||||
Ico_PutContextualIconToPrint (ActPrnPhoDeg,
|
Ico_PutContextualIconToPrint (ActPrnPhoDeg,
|
||||||
Pho_PutLinkToPrintViewOfDegreeStatsParams,&Gbl);
|
Pho_PutLinkToPrintViewOfDegreeStatsParams,NULL);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void Pho_PutLinkToPrintViewOfDegreeStatsParams (void *Args)
|
static void Pho_PutLinkToPrintViewOfDegreeStatsParams (__attribute__((unused)) void *Args)
|
||||||
{
|
|
||||||
if (Args)
|
|
||||||
{
|
{
|
||||||
Pho_PutHiddenParamTypeOfAvg ();
|
Pho_PutHiddenParamTypeOfAvg ();
|
||||||
Pho_PutHiddenParamPhotoSize ();
|
Pho_PutHiddenParamPhotoSize ();
|
||||||
Pho_PutHiddenParamOrderDegrees ();
|
Pho_PutHiddenParamOrderDegrees ();
|
||||||
Usr_PutParamsPrefsAboutUsrList ();
|
Usr_PutParamsPrefsAboutUsrList ();
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
/*************** Put a link to calculate the stats of degrees ****************/
|
/*************** Put a link to calculate the stats of degrees ****************/
|
||||||
|
@ -2159,7 +2148,7 @@ static void Pho_ShowOrPrintClassPhotoDegrees (Pho_AvgPhotoSeeOrPrint_t SeeOrPrin
|
||||||
{
|
{
|
||||||
/***** Form to select type of list used to display degree photos *****/
|
/***** Form to select type of list used to display degree photos *****/
|
||||||
if (SeeOrPrint == Pho_DEGREES_SEE)
|
if (SeeOrPrint == Pho_DEGREES_SEE)
|
||||||
Usr_ShowFormsToSelectUsrListType (Pho_PutParamsDegPhoto,&Gbl);
|
Usr_ShowFormsToSelectUsrListType (Pho_PutParamsDegPhoto,NULL);
|
||||||
HTM_TABLE_BeginCenter ();
|
HTM_TABLE_BeginCenter ();
|
||||||
|
|
||||||
/***** Get and print degrees *****/
|
/***** Get and print degrees *****/
|
||||||
|
@ -2240,7 +2229,7 @@ static void Pho_ShowOrPrintListDegrees (Pho_AvgPhotoSeeOrPrint_t SeeOrPrint)
|
||||||
/***** Class photo start *****/
|
/***** Class photo start *****/
|
||||||
if (SeeOrPrint == Pho_DEGREES_SEE)
|
if (SeeOrPrint == Pho_DEGREES_SEE)
|
||||||
/***** Form to select type of list used to display degree photos *****/
|
/***** Form to select type of list used to display degree photos *****/
|
||||||
Usr_ShowFormsToSelectUsrListType (Pho_PutParamsDegPhoto,&Gbl);
|
Usr_ShowFormsToSelectUsrListType (Pho_PutParamsDegPhoto,NULL);
|
||||||
|
|
||||||
/***** Write heading *****/
|
/***** Write heading *****/
|
||||||
HTM_TABLE_BeginCenterPadding (2);
|
HTM_TABLE_BeginCenterPadding (2);
|
||||||
|
|
|
@ -121,7 +121,7 @@ void Pho_ShowPhotoDegree (void);
|
||||||
void Pho_PrintPhotoDegree (void);
|
void Pho_PrintPhotoDegree (void);
|
||||||
void Pho_ShowOrPrintPhotoDegree (Pho_AvgPhotoSeeOrPrint_t SeeOrPrint);
|
void Pho_ShowOrPrintPhotoDegree (Pho_AvgPhotoSeeOrPrint_t SeeOrPrint);
|
||||||
|
|
||||||
void Pho_PutParamsDegPhoto (void *Args);
|
void Pho_PutParamsDegPhoto (__attribute__((unused)) void *Args);
|
||||||
void Pho_PutHiddenParamTypeOfAvg (void);
|
void Pho_PutHiddenParamTypeOfAvg (void);
|
||||||
void Pho_PutHiddenParamPhotoSize (void);
|
void Pho_PutHiddenParamPhotoSize (void);
|
||||||
void Pho_PutHiddenParamOrderDegrees (void);
|
void Pho_PutHiddenParamOrderDegrees (void);
|
||||||
|
|
18
swad_place.c
18
swad_place.c
|
@ -65,10 +65,10 @@ static struct Place *Plc_EditingPlc = NULL; // Static variable to keep the place
|
||||||
|
|
||||||
static void Plc_GetParamPlcOrder (void);
|
static void Plc_GetParamPlcOrder (void);
|
||||||
static bool Plc_CheckIfICanCreatePlaces (void);
|
static bool Plc_CheckIfICanCreatePlaces (void);
|
||||||
static void Plc_PutIconsListingPlaces (void *Args);
|
static void Plc_PutIconsListingPlaces (__attribute__((unused)) void *Args);
|
||||||
static void Plc_PutIconToEditPlaces (void);
|
static void Plc_PutIconToEditPlaces (void);
|
||||||
static void Plc_EditPlacesInternal (void);
|
static void Plc_EditPlacesInternal (void);
|
||||||
static void Plc_PutIconsEditingPlaces (void *Args);
|
static void Plc_PutIconsEditingPlaces (__attribute__((unused)) void *Args);
|
||||||
|
|
||||||
static void Plc_ListPlacesForEdition (void);
|
static void Plc_ListPlacesForEdition (void);
|
||||||
static void Plc_PutParamPlcCod (long PlcCod);
|
static void Plc_PutParamPlcCod (long PlcCod);
|
||||||
|
@ -112,7 +112,7 @@ void Plc_SeePlaces (void)
|
||||||
|
|
||||||
/***** Table head *****/
|
/***** Table head *****/
|
||||||
Box_BoxBegin (NULL,Txt_Places,
|
Box_BoxBegin (NULL,Txt_Places,
|
||||||
Plc_PutIconsListingPlaces,&Gbl,
|
Plc_PutIconsListingPlaces,NULL,
|
||||||
Hlp_INSTITUTION_Places,Box_NOT_CLOSABLE);
|
Hlp_INSTITUTION_Places,Box_NOT_CLOSABLE);
|
||||||
HTM_TABLE_BeginWideMarginPadding (2);
|
HTM_TABLE_BeginWideMarginPadding (2);
|
||||||
HTM_TR_Begin (NULL);
|
HTM_TR_Begin (NULL);
|
||||||
|
@ -238,9 +238,7 @@ static bool Plc_CheckIfICanCreatePlaces (void)
|
||||||
/****************** Put contextual icons in list of places *******************/
|
/****************** Put contextual icons in list of places *******************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
static void Plc_PutIconsListingPlaces (void *Args)
|
static void Plc_PutIconsListingPlaces (__attribute__((unused)) void *Args)
|
||||||
{
|
|
||||||
if (Args)
|
|
||||||
{
|
{
|
||||||
/***** Put icon to edit places *****/
|
/***** Put icon to edit places *****/
|
||||||
if (Plc_CheckIfICanCreatePlaces ())
|
if (Plc_CheckIfICanCreatePlaces ())
|
||||||
|
@ -249,7 +247,6 @@ static void Plc_PutIconsListingPlaces (void *Args)
|
||||||
/***** Put icon to view centres *****/
|
/***** Put icon to view centres *****/
|
||||||
Ctr_PutIconToViewCentres ();
|
Ctr_PutIconToViewCentres ();
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
/********************** Put a link (form) to edit places *********************/
|
/********************** Put a link (form) to edit places *********************/
|
||||||
|
@ -287,7 +284,7 @@ static void Plc_EditPlacesInternal (void)
|
||||||
|
|
||||||
/***** Begin box *****/
|
/***** Begin box *****/
|
||||||
Box_BoxBegin (NULL,Txt_Places,
|
Box_BoxBegin (NULL,Txt_Places,
|
||||||
Plc_PutIconsEditingPlaces,&Gbl,
|
Plc_PutIconsEditingPlaces,NULL,
|
||||||
Hlp_INSTITUTION_Places_edit,Box_NOT_CLOSABLE);
|
Hlp_INSTITUTION_Places_edit,Box_NOT_CLOSABLE);
|
||||||
|
|
||||||
/***** Put a form to create a new place *****/
|
/***** Put a form to create a new place *****/
|
||||||
|
@ -309,9 +306,7 @@ static void Plc_EditPlacesInternal (void)
|
||||||
/**************** Put contextual icons in edition of places *****************/
|
/**************** Put contextual icons in edition of places *****************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
static void Plc_PutIconsEditingPlaces (void *Args)
|
static void Plc_PutIconsEditingPlaces (__attribute__((unused)) void *Args)
|
||||||
{
|
|
||||||
if (Args)
|
|
||||||
{
|
{
|
||||||
/***** Put icon to view places *****/
|
/***** Put icon to view places *****/
|
||||||
Plc_PutIconToViewPlaces ();
|
Plc_PutIconToViewPlaces ();
|
||||||
|
@ -319,7 +314,6 @@ static void Plc_PutIconsEditingPlaces (void *Args)
|
||||||
/***** Put icon to view centres *****/
|
/***** Put icon to view centres *****/
|
||||||
Ctr_PutIconToViewCentres ();
|
Ctr_PutIconToViewCentres ();
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
/************************** Put icon to view places **************************/
|
/************************** Put icon to view places **************************/
|
||||||
|
|
|
@ -71,7 +71,7 @@ static struct Plugin *Plg_EditingPlg = NULL; // Static variable to keep the plug
|
||||||
/***************************** Private prototypes ****************************/
|
/***************************** Private prototypes ****************************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
static void Plg_PutIconToEditPlugins (void *Args);
|
static void Plg_PutIconToEditPlugins (__attribute__((unused)) void *Args);
|
||||||
static void Plg_EditPluginsInternal (void);
|
static void Plg_EditPluginsInternal (void);
|
||||||
static void Plg_ListPluginsForEdition (void);
|
static void Plg_ListPluginsForEdition (void);
|
||||||
static void Plg_PutParamPlgCod (long PlgCod);
|
static void Plg_PutParamPlgCod (long PlgCod);
|
||||||
|
@ -109,7 +109,7 @@ void Plg_ListPlugins (void)
|
||||||
/***** Begin box and table *****/
|
/***** Begin box and table *****/
|
||||||
if (Gbl.Usrs.Me.Role.Logged == Rol_SYS_ADM)
|
if (Gbl.Usrs.Me.Role.Logged == Rol_SYS_ADM)
|
||||||
Box_BoxTableBegin (NULL,Txt_Plugins,
|
Box_BoxTableBegin (NULL,Txt_Plugins,
|
||||||
Plg_PutIconToEditPlugins,&Gbl,
|
Plg_PutIconToEditPlugins,NULL,
|
||||||
NULL,Box_NOT_CLOSABLE,2);
|
NULL,Box_NOT_CLOSABLE,2);
|
||||||
else
|
else
|
||||||
Box_BoxTableBegin (NULL,Txt_Plugins,
|
Box_BoxTableBegin (NULL,Txt_Plugins,
|
||||||
|
@ -171,9 +171,8 @@ void Plg_ListPlugins (void)
|
||||||
/*************************** Put icon to edit plugins ************************/
|
/*************************** Put icon to edit plugins ************************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
static void Plg_PutIconToEditPlugins (void *Args)
|
static void Plg_PutIconToEditPlugins (__attribute__((unused)) void *Args)
|
||||||
{
|
{
|
||||||
if (Args)
|
|
||||||
Ico_PutContextualIconToEdit (ActEdiPlg,NULL,
|
Ico_PutContextualIconToEdit (ActEdiPlg,NULL,
|
||||||
NULL,NULL);
|
NULL,NULL);
|
||||||
}
|
}
|
||||||
|
|
|
@ -130,7 +130,6 @@ static struct
|
||||||
} List;
|
} List;
|
||||||
unsigned MaxLevel; // Maximum level of items
|
unsigned MaxLevel; // Maximum level of items
|
||||||
struct Level *Levels; // Numbers and hidden for each level from 1 to maximum level
|
struct Level *Levels; // Numbers and hidden for each level from 1 to maximum level
|
||||||
long CurrentItmCod; // Used as parameter in contextual links
|
|
||||||
} Prg_Gbl =
|
} Prg_Gbl =
|
||||||
{
|
{
|
||||||
.List =
|
.List =
|
||||||
|
@ -140,8 +139,7 @@ static struct
|
||||||
.Items = NULL,
|
.Items = NULL,
|
||||||
},
|
},
|
||||||
.MaxLevel = 0,
|
.MaxLevel = 0,
|
||||||
.Levels = NULL,
|
.Levels = NULL
|
||||||
.CurrentItmCod = -1L
|
|
||||||
};
|
};
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
@ -153,11 +151,11 @@ static void Prg_ShowAllItems (Prg_CreateOrChangeItem_t CreateOrChangeItem,
|
||||||
const struct ItemRange *ToHighlight,
|
const struct ItemRange *ToHighlight,
|
||||||
long ParentItmCod,long ItmCodBeforeForm,unsigned FormLevel);
|
long ParentItmCod,long ItmCodBeforeForm,unsigned FormLevel);
|
||||||
static bool Prg_CheckIfICanCreateItems (void);
|
static bool Prg_CheckIfICanCreateItems (void);
|
||||||
static void Prg_PutIconsListItems (void *Args);
|
static void Prg_PutIconsListItems (__attribute__((unused)) void *Args);
|
||||||
static void Prg_PutIconToCreateNewItem (void);
|
static void Prg_PutIconToCreateNewItem (void);
|
||||||
static void Prg_PutButtonToCreateNewItem (void);
|
static void Prg_PutButtonToCreateNewItem (void);
|
||||||
|
|
||||||
static void Prg_WriteRowItem (unsigned NumItem,const struct ProgramItem *Item,
|
static void Prg_WriteRowItem (unsigned NumItem,struct ProgramItem *Item,
|
||||||
bool PrintView);
|
bool PrintView);
|
||||||
static void Prg_WriteRowWithItemForm (Prg_CreateOrChangeItem_t CreateOrChangeItem,
|
static void Prg_WriteRowWithItemForm (Prg_CreateOrChangeItem_t CreateOrChangeItem,
|
||||||
long ItmCod,unsigned FormLevel);
|
long ItmCod,unsigned FormLevel);
|
||||||
|
@ -179,15 +177,13 @@ static bool Prg_GetHiddenLevel (unsigned Level);
|
||||||
static bool Prg_CheckIfAnyHigherLevelIsHidden (unsigned CurrentLevel);
|
static bool Prg_CheckIfAnyHigherLevelIsHidden (unsigned CurrentLevel);
|
||||||
|
|
||||||
static void Prg_PutFormsToRemEditOneItem (unsigned NumItem,
|
static void Prg_PutFormsToRemEditOneItem (unsigned NumItem,
|
||||||
const struct ProgramItem *Item);
|
struct ProgramItem *Item);
|
||||||
static bool Prg_CheckIfMoveUpIsAllowed (unsigned NumItem);
|
static bool Prg_CheckIfMoveUpIsAllowed (unsigned NumItem);
|
||||||
static bool Prg_CheckIfMoveDownIsAllowed (unsigned NumItem);
|
static bool Prg_CheckIfMoveDownIsAllowed (unsigned NumItem);
|
||||||
static bool Prg_CheckIfMoveLeftIsAllowed (unsigned NumItem);
|
static bool Prg_CheckIfMoveLeftIsAllowed (unsigned NumItem);
|
||||||
static bool Prg_CheckIfMoveRightIsAllowed (unsigned NumItem);
|
static bool Prg_CheckIfMoveRightIsAllowed (unsigned NumItem);
|
||||||
|
|
||||||
static void Prg_SetCurrentItmCod (long ItmCod);
|
static void Prg_PutParams (void *ItmCod);
|
||||||
static long Prg_GetCurrentItmCod (void);
|
|
||||||
static void Prg_PutParams (void *Args);
|
|
||||||
|
|
||||||
static void Prg_GetListItems (void);
|
static void Prg_GetListItems (void);
|
||||||
static void Prg_GetDataOfItemByCod (struct ProgramItem *Item);
|
static void Prg_GetDataOfItemByCod (struct ProgramItem *Item);
|
||||||
|
@ -271,7 +267,7 @@ static void Prg_ShowAllItems (Prg_CreateOrChangeItem_t CreateOrChangeItem,
|
||||||
|
|
||||||
/***** Begin box *****/
|
/***** Begin box *****/
|
||||||
Box_BoxBegin ("100%",Txt_Course_program,
|
Box_BoxBegin ("100%",Txt_Course_program,
|
||||||
Prg_PutIconsListItems,&Gbl,
|
Prg_PutIconsListItems,NULL,
|
||||||
Hlp_COURSE_Program,Box_NOT_CLOSABLE);
|
Hlp_COURSE_Program,Box_NOT_CLOSABLE);
|
||||||
|
|
||||||
/***** Table *****/
|
/***** Table *****/
|
||||||
|
@ -367,9 +363,7 @@ static bool Prg_CheckIfICanCreateItems (void)
|
||||||
/************** Put contextual icons in list of program items ****************/
|
/************** Put contextual icons in list of program items ****************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
static void Prg_PutIconsListItems (void *Args)
|
static void Prg_PutIconsListItems (__attribute__((unused)) void *Args)
|
||||||
{
|
|
||||||
if (Args)
|
|
||||||
{
|
{
|
||||||
/***** Put icon to create a new program item *****/
|
/***** Put icon to create a new program item *****/
|
||||||
if (Prg_CheckIfICanCreateItems ())
|
if (Prg_CheckIfICanCreateItems ())
|
||||||
|
@ -378,7 +372,6 @@ static void Prg_PutIconsListItems (void *Args)
|
||||||
/***** Put icon to show a figure *****/
|
/***** Put icon to show a figure *****/
|
||||||
Fig_PutIconToShowFigure (Fig_COURSE_PROGRAMS);
|
Fig_PutIconToShowFigure (Fig_COURSE_PROGRAMS);
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
/****************** Put icon to create a new program item ********************/
|
/****************** Put icon to create a new program item ********************/
|
||||||
|
@ -387,11 +380,11 @@ static void Prg_PutIconsListItems (void *Args)
|
||||||
static void Prg_PutIconToCreateNewItem (void)
|
static void Prg_PutIconToCreateNewItem (void)
|
||||||
{
|
{
|
||||||
extern const char *Txt_New_item;
|
extern const char *Txt_New_item;
|
||||||
|
long ItmCod = -1L;
|
||||||
|
|
||||||
/***** Put form to create a new program item *****/
|
/***** Put form to create a new program item *****/
|
||||||
Prg_SetCurrentItmCod (-1L);
|
|
||||||
Ico_PutContextualIconToAdd (ActFrmNewPrgItm,"item_form",
|
Ico_PutContextualIconToAdd (ActFrmNewPrgItm,"item_form",
|
||||||
Prg_PutParams,&Gbl,
|
Prg_PutParams,&ItmCod,
|
||||||
Txt_New_item);
|
Txt_New_item);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -402,10 +395,10 @@ static void Prg_PutIconToCreateNewItem (void)
|
||||||
static void Prg_PutButtonToCreateNewItem (void)
|
static void Prg_PutButtonToCreateNewItem (void)
|
||||||
{
|
{
|
||||||
extern const char *Txt_New_item;
|
extern const char *Txt_New_item;
|
||||||
|
long ItmCod = -1L;
|
||||||
|
|
||||||
Prg_SetCurrentItmCod (-1L);
|
|
||||||
Frm_StartFormAnchor (ActFrmNewPrgItm,"item_form");
|
Frm_StartFormAnchor (ActFrmNewPrgItm,"item_form");
|
||||||
Prg_PutParams (&Gbl);
|
Prg_PutParams (&ItmCod);
|
||||||
Btn_PutConfirmButton (Txt_New_item);
|
Btn_PutConfirmButton (Txt_New_item);
|
||||||
Frm_EndForm ();
|
Frm_EndForm ();
|
||||||
}
|
}
|
||||||
|
@ -414,7 +407,7 @@ static void Prg_PutButtonToCreateNewItem (void)
|
||||||
/************************** Show one program item ****************************/
|
/************************** Show one program item ****************************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
static void Prg_WriteRowItem (unsigned NumItem,const struct ProgramItem *Item,
|
static void Prg_WriteRowItem (unsigned NumItem,struct ProgramItem *Item,
|
||||||
bool PrintView)
|
bool PrintView)
|
||||||
{
|
{
|
||||||
static unsigned UniqueId = 0;
|
static unsigned UniqueId = 0;
|
||||||
|
@ -774,7 +767,7 @@ static bool Prg_CheckIfAnyHigherLevelIsHidden (unsigned CurrentLevel)
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
static void Prg_PutFormsToRemEditOneItem (unsigned NumItem,
|
static void Prg_PutFormsToRemEditOneItem (unsigned NumItem,
|
||||||
const struct ProgramItem *Item)
|
struct ProgramItem *Item)
|
||||||
{
|
{
|
||||||
extern const char *Txt_New_item;
|
extern const char *Txt_New_item;
|
||||||
extern const char *Txt_Move_up_X;
|
extern const char *Txt_Move_up_X;
|
||||||
|
@ -784,8 +777,6 @@ static void Prg_PutFormsToRemEditOneItem (unsigned NumItem,
|
||||||
extern const char *Txt_Movement_not_allowed;
|
extern const char *Txt_Movement_not_allowed;
|
||||||
char StrItemIndex[Cns_MAX_DECIMAL_DIGITS_UINT + 1];
|
char StrItemIndex[Cns_MAX_DECIMAL_DIGITS_UINT + 1];
|
||||||
|
|
||||||
Prg_SetCurrentItmCod (Item->Hierarchy.ItmCod); // Used as parameter in contextual links
|
|
||||||
|
|
||||||
/***** Initialize item index string *****/
|
/***** Initialize item index string *****/
|
||||||
snprintf (StrItemIndex,sizeof (StrItemIndex),
|
snprintf (StrItemIndex,sizeof (StrItemIndex),
|
||||||
"%u",
|
"%u",
|
||||||
|
@ -797,23 +788,23 @@ static void Prg_PutFormsToRemEditOneItem (unsigned NumItem,
|
||||||
case Rol_SYS_ADM:
|
case Rol_SYS_ADM:
|
||||||
/***** Put form to remove program item *****/
|
/***** Put form to remove program item *****/
|
||||||
Ico_PutContextualIconToRemove (ActReqRemPrgItm,
|
Ico_PutContextualIconToRemove (ActReqRemPrgItm,
|
||||||
Prg_PutParams,&Gbl);
|
Prg_PutParams,&Item->Hierarchy.ItmCod);
|
||||||
|
|
||||||
/***** Put form to hide/show program item *****/
|
/***** Put form to hide/show program item *****/
|
||||||
if (Item->Hierarchy.Hidden)
|
if (Item->Hierarchy.Hidden)
|
||||||
Ico_PutContextualIconToUnhide (ActShoPrgItm,"prg_highlighted",
|
Ico_PutContextualIconToUnhide (ActShoPrgItm,"prg_highlighted",
|
||||||
Prg_PutParams,&Gbl);
|
Prg_PutParams,&Item->Hierarchy.ItmCod);
|
||||||
else
|
else
|
||||||
Ico_PutContextualIconToHide (ActHidPrgItm,"prg_highlighted",
|
Ico_PutContextualIconToHide (ActHidPrgItm,"prg_highlighted",
|
||||||
Prg_PutParams,&Gbl);
|
Prg_PutParams,&Item->Hierarchy.ItmCod);
|
||||||
|
|
||||||
/***** Put form to edit program item *****/
|
/***** Put form to edit program item *****/
|
||||||
Ico_PutContextualIconToEdit (ActFrmChgPrgItm,"item_form",
|
Ico_PutContextualIconToEdit (ActFrmChgPrgItm,"item_form",
|
||||||
Prg_PutParams,&Gbl);
|
Prg_PutParams,&Item->Hierarchy.ItmCod);
|
||||||
|
|
||||||
/***** Put form to add a new child item inside this item *****/
|
/***** Put form to add a new child item inside this item *****/
|
||||||
Ico_PutContextualIconToAdd (ActFrmNewPrgItm,"item_form",
|
Ico_PutContextualIconToAdd (ActFrmNewPrgItm,"item_form",
|
||||||
Prg_PutParams,&Gbl,
|
Prg_PutParams,&Item->Hierarchy.ItmCod,
|
||||||
Txt_New_item);
|
Txt_New_item);
|
||||||
|
|
||||||
HTM_BR ();
|
HTM_BR ();
|
||||||
|
@ -822,7 +813,7 @@ static void Prg_PutFormsToRemEditOneItem (unsigned NumItem,
|
||||||
if (Prg_CheckIfMoveUpIsAllowed (NumItem))
|
if (Prg_CheckIfMoveUpIsAllowed (NumItem))
|
||||||
{
|
{
|
||||||
Lay_PutContextualLinkOnlyIcon (ActUp_PrgItm,"prg_highlighted",
|
Lay_PutContextualLinkOnlyIcon (ActUp_PrgItm,"prg_highlighted",
|
||||||
Prg_PutParams,&Gbl,
|
Prg_PutParams,&Item->Hierarchy.ItmCod,
|
||||||
"arrow-up.svg",
|
"arrow-up.svg",
|
||||||
Str_BuildStringStr (Txt_Move_up_X,
|
Str_BuildStringStr (Txt_Move_up_X,
|
||||||
StrItemIndex));
|
StrItemIndex));
|
||||||
|
@ -835,7 +826,7 @@ static void Prg_PutFormsToRemEditOneItem (unsigned NumItem,
|
||||||
if (Prg_CheckIfMoveDownIsAllowed (NumItem))
|
if (Prg_CheckIfMoveDownIsAllowed (NumItem))
|
||||||
{
|
{
|
||||||
Lay_PutContextualLinkOnlyIcon (ActDwnPrgItm,"prg_highlighted",
|
Lay_PutContextualLinkOnlyIcon (ActDwnPrgItm,"prg_highlighted",
|
||||||
Prg_PutParams,&Gbl,
|
Prg_PutParams,&Item->Hierarchy.ItmCod,
|
||||||
"arrow-down.svg",
|
"arrow-down.svg",
|
||||||
Str_BuildStringStr (Txt_Move_down_X,
|
Str_BuildStringStr (Txt_Move_down_X,
|
||||||
StrItemIndex));
|
StrItemIndex));
|
||||||
|
@ -848,7 +839,7 @@ static void Prg_PutFormsToRemEditOneItem (unsigned NumItem,
|
||||||
if (Prg_CheckIfMoveLeftIsAllowed (NumItem))
|
if (Prg_CheckIfMoveLeftIsAllowed (NumItem))
|
||||||
{
|
{
|
||||||
Lay_PutContextualLinkOnlyIcon (ActLftPrgItm,"prg_highlighted",
|
Lay_PutContextualLinkOnlyIcon (ActLftPrgItm,"prg_highlighted",
|
||||||
Prg_PutParams,&Gbl,
|
Prg_PutParams,&Item->Hierarchy.ItmCod,
|
||||||
"arrow-left.svg",
|
"arrow-left.svg",
|
||||||
Str_BuildStringStr (Txt_Increase_level_of_X,
|
Str_BuildStringStr (Txt_Increase_level_of_X,
|
||||||
StrItemIndex));
|
StrItemIndex));
|
||||||
|
@ -861,7 +852,7 @@ static void Prg_PutFormsToRemEditOneItem (unsigned NumItem,
|
||||||
if (Prg_CheckIfMoveRightIsAllowed (NumItem))
|
if (Prg_CheckIfMoveRightIsAllowed (NumItem))
|
||||||
{
|
{
|
||||||
Lay_PutContextualLinkOnlyIcon (ActRgtPrgItm,"prg_highlighted",
|
Lay_PutContextualLinkOnlyIcon (ActRgtPrgItm,"prg_highlighted",
|
||||||
Prg_PutParams,&Gbl,
|
Prg_PutParams,&Item->Hierarchy.ItmCod,
|
||||||
"arrow-right.svg",
|
"arrow-right.svg",
|
||||||
Str_BuildStringStr (Txt_Decrease_level_of_X,
|
Str_BuildStringStr (Txt_Decrease_level_of_X,
|
||||||
StrItemIndex));
|
StrItemIndex));
|
||||||
|
@ -948,34 +939,15 @@ static bool Prg_CheckIfMoveRightIsAllowed (unsigned NumItem)
|
||||||
Prg_Gbl.List.Items[NumItem ].Level;
|
Prg_Gbl.List.Items[NumItem ].Level;
|
||||||
}
|
}
|
||||||
|
|
||||||
/*****************************************************************************/
|
|
||||||
/**************** Access to variables used to pass parameter *****************/
|
|
||||||
/*****************************************************************************/
|
|
||||||
|
|
||||||
static void Prg_SetCurrentItmCod (long ItmCod)
|
|
||||||
{
|
|
||||||
Prg_Gbl.CurrentItmCod = ItmCod;
|
|
||||||
}
|
|
||||||
|
|
||||||
static long Prg_GetCurrentItmCod (void)
|
|
||||||
{
|
|
||||||
return Prg_Gbl.CurrentItmCod;
|
|
||||||
}
|
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
/******************** Params used to edit a program item *********************/
|
/******************** Params used to edit a program item *********************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
static void Prg_PutParams (void *Args)
|
static void Prg_PutParams (void *ItmCod)
|
||||||
{
|
{
|
||||||
long CurrentItmCod;
|
if (ItmCod)
|
||||||
|
if (*((long *) ItmCod) > 0)
|
||||||
if (Args)
|
Prg_PutParamItmCod (*((long *) ItmCod));
|
||||||
{
|
|
||||||
CurrentItmCod = Prg_GetCurrentItmCod ();
|
|
||||||
if (CurrentItmCod > 0)
|
|
||||||
Prg_PutParamItmCod (CurrentItmCod);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
@ -1284,9 +1256,8 @@ void Prg_ReqRemItem (void)
|
||||||
Lay_ShowErrorAndExit ("Wrong item code.");
|
Lay_ShowErrorAndExit ("Wrong item code.");
|
||||||
|
|
||||||
/***** Show question and button to remove the program item *****/
|
/***** Show question and button to remove the program item *****/
|
||||||
Prg_SetCurrentItmCod (Item.Hierarchy.ItmCod);
|
|
||||||
Ale_ShowAlertAndButton (ActRemPrgItm,NULL,NULL,
|
Ale_ShowAlertAndButton (ActRemPrgItm,NULL,NULL,
|
||||||
Prg_PutParams,&Gbl,
|
Prg_PutParams,&Item.Hierarchy.ItmCod,
|
||||||
Btn_REMOVE_BUTTON,Txt_Remove_item,
|
Btn_REMOVE_BUTTON,Txt_Remove_item,
|
||||||
Ale_QUESTION,Txt_Do_you_really_want_to_remove_the_item_X,
|
Ale_QUESTION,Txt_Do_you_really_want_to_remove_the_item_X,
|
||||||
Item.Title);
|
Item.Title);
|
||||||
|
|
275
swad_project.c
275
swad_project.c
|
@ -146,10 +146,10 @@ struct Prj_Faults
|
||||||
/***************************** Private prototypes ****************************/
|
/***************************** Private prototypes ****************************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
static void Prj_ReqUsrsToSelect (void *Args);
|
static void Prj_ReqUsrsToSelect (void *Projects);
|
||||||
static void Prj_GetSelectedUsrsAndShowTheirPrjs (void);
|
static void Prj_GetSelectedUsrsAndShowTheirPrjs (void);
|
||||||
static void Prj_ShowProjects (void);
|
static void Prj_ShowProjects (void);
|
||||||
static void Prj_ShowPrjsInCurrentPage (void *Args);
|
static void Prj_ShowPrjsInCurrentPage (void *Projects);
|
||||||
|
|
||||||
static void Prj_ShowFormToFilterByMy_All (void);
|
static void Prj_ShowFormToFilterByMy_All (void);
|
||||||
static void Prj_ShowFormToFilterByAssign (void);
|
static void Prj_ShowFormToFilterByAssign (void);
|
||||||
|
@ -157,7 +157,7 @@ static void Prj_ShowFormToFilterByHidden (void);
|
||||||
static void Prj_ShowFormToFilterByWarning (void);
|
static void Prj_ShowFormToFilterByWarning (void);
|
||||||
static void Prj_ShowFormToFilterByDpt (void);
|
static void Prj_ShowFormToFilterByDpt (void);
|
||||||
|
|
||||||
static void Prj_PutCurrentParams (void *Args);
|
static void Prj_PutCurrentParams (void *Projects);
|
||||||
static void Prj_PutHiddenParamAssign (unsigned Assign);
|
static void Prj_PutHiddenParamAssign (unsigned Assign);
|
||||||
static void Prj_PutHiddenParamHidden (unsigned Hidden);
|
static void Prj_PutHiddenParamHidden (unsigned Hidden);
|
||||||
static void Prj_PutHiddenParamFaulti (unsigned Faulti);
|
static void Prj_PutHiddenParamFaulti (unsigned Faulti);
|
||||||
|
@ -172,38 +172,38 @@ static void Prj_GetParamWho (void);
|
||||||
static void Prj_ShowProjectsHead (Prj_ProjectView_t ProjectView);
|
static void Prj_ShowProjectsHead (Prj_ProjectView_t ProjectView);
|
||||||
static void Prj_ShowTableAllProjectsHead (void);
|
static void Prj_ShowTableAllProjectsHead (void);
|
||||||
static bool Prj_CheckIfICanCreateProjects (void);
|
static bool Prj_CheckIfICanCreateProjects (void);
|
||||||
static void Prj_PutIconsListProjects (void *Args);
|
static void Prj_PutIconsListProjects (void *Projects);
|
||||||
static void Prj_PutIconToCreateNewPrj (void);
|
static void Prj_PutIconToCreateNewPrj (void);
|
||||||
static void Prj_PutButtonToCreateNewPrj (void);
|
static void Prj_PutButtonToCreateNewPrj (void);
|
||||||
static void Prj_PutIconToShowAllData (void);
|
static void Prj_PutIconToShowAllData (void);
|
||||||
|
|
||||||
static void Prj_ShowOneProject (unsigned NumIndex,struct Project *Prj,
|
static void Prj_ShowOneProject (unsigned NumIndex,struct Prj_Project *Prj,
|
||||||
Prj_ProjectView_t ProjectView);
|
Prj_ProjectView_t ProjectView);
|
||||||
static bool Prj_CheckIfPrjIsFaulty (long PrjCod,struct Prj_Faults *Faults);
|
static bool Prj_CheckIfPrjIsFaulty (long PrjCod,struct Prj_Faults *Faults);
|
||||||
static void Prj_PutWarningIcon (void);
|
static void Prj_PutWarningIcon (void);
|
||||||
static void Prj_PutIconToToggleProject (unsigned UniqueId,
|
static void Prj_PutIconToToggleProject (unsigned UniqueId,
|
||||||
const char *Icon,const char *Text);
|
const char *Icon,const char *Text);
|
||||||
static void Prj_ShowTableAllProjectsOneRow (struct Project *Prj);
|
static void Prj_ShowTableAllProjectsOneRow (struct Prj_Project *Prj);
|
||||||
static void Prj_ShowOneProjectDepartment (const struct Project *Prj,
|
static void Prj_ShowOneProjectDepartment (const struct Prj_Project *Prj,
|
||||||
Prj_ProjectView_t ProjectView);
|
Prj_ProjectView_t ProjectView);
|
||||||
static void Prj_ShowTableAllProjectsDepartment (const struct Project *Prj);
|
static void Prj_ShowTableAllProjectsDepartment (const struct Prj_Project *Prj);
|
||||||
static void Prj_ShowOneProjectTxtField (struct Project *Prj,
|
static void Prj_ShowOneProjectTxtField (struct Prj_Project *Prj,
|
||||||
Prj_ProjectView_t ProjectView,
|
Prj_ProjectView_t ProjectView,
|
||||||
const char *id,unsigned UniqueId,
|
const char *id,unsigned UniqueId,
|
||||||
const char *Label,char *TxtField,
|
const char *Label,char *TxtField,
|
||||||
bool Warning);
|
bool Warning);
|
||||||
static void Prj_ShowTableAllProjectsTxtField (struct Project *Prj,
|
static void Prj_ShowTableAllProjectsTxtField (struct Prj_Project *Prj,
|
||||||
char *TxtField);
|
char *TxtField);
|
||||||
static void Prj_ShowOneProjectURL (const struct Project *Prj,
|
static void Prj_ShowOneProjectURL (const struct Prj_Project *Prj,
|
||||||
Prj_ProjectView_t ProjectView,
|
Prj_ProjectView_t ProjectView,
|
||||||
const char *id,unsigned UniqueId);
|
const char *id,unsigned UniqueId);
|
||||||
static void Prj_ShowTableAllProjectsURL (const struct Project *Prj);
|
static void Prj_ShowTableAllProjectsURL (const struct Prj_Project *Prj);
|
||||||
static void Prj_ShowOneProjectMembers (struct Project *Prj,
|
static void Prj_ShowOneProjectMembers (struct Prj_Project *Prj,
|
||||||
Prj_ProjectView_t ProjectView);
|
Prj_ProjectView_t ProjectView);
|
||||||
static void Prj_ShowOneProjectMembersWithARole (const struct Project *Prj,
|
static void Prj_ShowOneProjectMembersWithARole (const struct Prj_Project *Prj,
|
||||||
Prj_ProjectView_t ProjectView,
|
Prj_ProjectView_t ProjectView,
|
||||||
Prj_RoleInProject_t RoleInProject);
|
Prj_RoleInProject_t RoleInProject);
|
||||||
static void Prj_ShowTableAllProjectsMembersWithARole (const struct Project *Prj,
|
static void Prj_ShowTableAllProjectsMembersWithARole (const struct Prj_Project *Prj,
|
||||||
Prj_RoleInProject_t RoleInProject);
|
Prj_RoleInProject_t RoleInProject);
|
||||||
|
|
||||||
static unsigned Prj_GetNumUsrsInPrj (long PrjCod,Prj_RoleInProject_t RoleInProject);
|
static unsigned Prj_GetNumUsrsInPrj (long PrjCod,Prj_RoleInProject_t RoleInProject);
|
||||||
|
@ -212,34 +212,37 @@ static unsigned Prj_GetUsrsInPrj (long PrjCod,Prj_RoleInProject_t RoleInProject,
|
||||||
|
|
||||||
static Prj_RoleInProject_t Prj_ConvertUnsignedStrToRoleInProject (const char *UnsignedStr);
|
static Prj_RoleInProject_t Prj_ConvertUnsignedStrToRoleInProject (const char *UnsignedStr);
|
||||||
|
|
||||||
static void Prj_ReqAddUsrs (Prj_RoleInProject_t RoleInProject);
|
static void Prj_FormToSelectStds (__attribute__((unused)) void *Args);
|
||||||
static void Prj_AddStds (void *Args);
|
static void Prj_FormToSelectTuts (__attribute__((unused)) void *Args);
|
||||||
static void Prj_AddTuts (void *Args);
|
static void Prj_FormToSelectEvls (__attribute__((unused)) void *Args);
|
||||||
static void Prj_AddEvls (void *Args);
|
static void Prj_FormToSelectUsrs (Prj_RoleInProject_t RoleInProject);
|
||||||
|
static void Prj_AddStds (__attribute__((unused)) void *Args);
|
||||||
|
static void Prj_AddTuts (__attribute__((unused)) void *Args);
|
||||||
|
static void Prj_AddEvls (__attribute__((unused)) void *Args);
|
||||||
static void Prj_AddUsrsToProject (Prj_RoleInProject_t RoleInProject);
|
static void Prj_AddUsrsToProject (Prj_RoleInProject_t RoleInProject);
|
||||||
static void Prj_ReqRemUsrFromPrj (Prj_RoleInProject_t RoleInProject);
|
static void Prj_ReqRemUsrFromPrj (Prj_RoleInProject_t RoleInProject);
|
||||||
static void Prj_RemUsrFromPrj (Prj_RoleInProject_t RoleInProject);
|
static void Prj_RemUsrFromPrj (Prj_RoleInProject_t RoleInProject);
|
||||||
|
|
||||||
static void Prj_GetParamPrjOrder (void);
|
static void Prj_GetParamPrjOrder (void);
|
||||||
|
|
||||||
static void Prj_PutFormsToRemEditOnePrj (const struct Project *Prj,
|
static void Prj_PutFormsToRemEditOnePrj (const struct Prj_Project *Prj,
|
||||||
const char *Anchor,
|
const char *Anchor,
|
||||||
bool ICanViewProjectFiles);
|
bool ICanViewProjectFiles);
|
||||||
|
|
||||||
static bool Prj_CheckIfICanEditProject (const struct Project *Prj);
|
static bool Prj_CheckIfICanEditProject (const struct Prj_Project *Prj);
|
||||||
|
|
||||||
static void Prj_GetListProjects (void);
|
static void Prj_GetListProjects (void);
|
||||||
|
|
||||||
static void Prj_ResetProject (struct Project *Prj);
|
static void Prj_ResetProject (struct Prj_Project *Prj);
|
||||||
|
|
||||||
static void Prj_RequestCreatOrEditPrj (long PrjCod);
|
static void Prj_RequestCreatOrEditPrj (long PrjCod);
|
||||||
static void Prj_PutFormProject (struct Project *Prj,bool ItsANewProject);
|
static void Prj_PutFormProject (struct Prj_Project *Prj,bool ItsANewProject);
|
||||||
static void Prj_EditOneProjectTxtArea (const char *Id,
|
static void Prj_EditOneProjectTxtArea (const char *Id,
|
||||||
const char *Label,char *TxtField,
|
const char *Label,char *TxtField,
|
||||||
unsigned NumRows,bool Required);
|
unsigned NumRows,bool Required);
|
||||||
|
|
||||||
static void Prj_CreateProject (struct Project *Prj);
|
static void Prj_CreateProject (struct Prj_Project *Prj);
|
||||||
static void Prj_UpdateProject (struct Project *Prj);
|
static void Prj_UpdateProject (struct Prj_Project *Prj);
|
||||||
|
|
||||||
static bool Prj_CheckIfICanConfigAllProjects (void);
|
static bool Prj_CheckIfICanConfigAllProjects (void);
|
||||||
static void Prj_GetConfigPrjFromDB (void);
|
static void Prj_GetConfigPrjFromDB (void);
|
||||||
|
@ -247,8 +250,8 @@ static void Prj_GetConfigFromRow (MYSQL_ROW row);
|
||||||
static bool Prj_GetEditableFromForm (void);
|
static bool Prj_GetEditableFromForm (void);
|
||||||
static void Prj_PutIconsToLockUnlockAllProjects (void);
|
static void Prj_PutIconsToLockUnlockAllProjects (void);
|
||||||
|
|
||||||
static void Prj_FormLockUnlock (const struct Project *Prj);
|
static void Prj_FormLockUnlock (const struct Prj_Project *Prj);
|
||||||
static void Prj_PutIconOffLockedUnlocked (const struct Project *Prj);
|
static void Prj_PutIconOffLockedUnlocked (const struct Prj_Project *Prj);
|
||||||
|
|
||||||
static void Prj_LockProjectEditionInDB (long PrjCod);
|
static void Prj_LockProjectEditionInDB (long PrjCod);
|
||||||
static void Prj_UnlockProjectEditionInDB (long PrjCod);
|
static void Prj_UnlockProjectEditionInDB (long PrjCod);
|
||||||
|
@ -263,20 +266,19 @@ void Prj_ListUsrsToSelect (void)
|
||||||
Prj_GetParams ();
|
Prj_GetParams ();
|
||||||
|
|
||||||
/***** Show list of users to select some of them *****/
|
/***** Show list of users to select some of them *****/
|
||||||
Prj_ReqUsrsToSelect (&Gbl);
|
Prj_ReqUsrsToSelect (&Gbl.Prjs);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void Prj_ReqUsrsToSelect (void *Args)
|
static void Prj_ReqUsrsToSelect (void *Projects)
|
||||||
{
|
{
|
||||||
extern const char *Hlp_ASSESSMENT_Projects;
|
extern const char *Hlp_ASSESSMENT_Projects;
|
||||||
extern const char *Txt_Projects;
|
extern const char *Txt_Projects;
|
||||||
extern const char *Txt_View_projects;
|
extern const char *Txt_View_projects;
|
||||||
|
|
||||||
if (Args)
|
|
||||||
/***** List users to select some of them *****/
|
/***** List users to select some of them *****/
|
||||||
Usr_PutFormToSelectUsrsToGoToAct (&Gbl.Usrs.Selected,
|
Usr_PutFormToSelectUsrsToGoToAct (&Gbl.Usrs.Selected,
|
||||||
ActSeePrj,
|
ActSeePrj,
|
||||||
Prj_PutCurrentParams,&Gbl,
|
Prj_PutCurrentParams,Projects,
|
||||||
Txt_Projects,
|
Txt_Projects,
|
||||||
Hlp_ASSESSMENT_Projects,
|
Hlp_ASSESSMENT_Projects,
|
||||||
Txt_View_projects,
|
Txt_View_projects,
|
||||||
|
@ -307,7 +309,7 @@ static void Prj_ShowProjects (void)
|
||||||
case Usr_WHO_ME:
|
case Usr_WHO_ME:
|
||||||
case Usr_WHO_ALL:
|
case Usr_WHO_ALL:
|
||||||
/* Show my projects / all projects */
|
/* Show my projects / all projects */
|
||||||
Prj_ShowPrjsInCurrentPage (&Gbl);
|
Prj_ShowPrjsInCurrentPage (&Gbl.Prjs);
|
||||||
break;
|
break;
|
||||||
case Usr_WHO_SELECTED:
|
case Usr_WHO_SELECTED:
|
||||||
/* Get selected users and show their projects */
|
/* Get selected users and show their projects */
|
||||||
|
@ -325,8 +327,8 @@ static void Prj_ShowProjects (void)
|
||||||
static void Prj_GetSelectedUsrsAndShowTheirPrjs (void)
|
static void Prj_GetSelectedUsrsAndShowTheirPrjs (void)
|
||||||
{
|
{
|
||||||
Usr_GetSelectedUsrsAndGoToAct (&Gbl.Usrs.Selected,
|
Usr_GetSelectedUsrsAndGoToAct (&Gbl.Usrs.Selected,
|
||||||
Prj_ShowPrjsInCurrentPage,&Gbl, // when user(s) selected
|
Prj_ShowPrjsInCurrentPage,&Gbl.Prjs, // when user(s) selected
|
||||||
Prj_ReqUsrsToSelect,&Gbl); // when no user selected
|
Prj_ReqUsrsToSelect,&Gbl.Prjs); // when no user selected
|
||||||
}
|
}
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
@ -337,7 +339,7 @@ void Prj_ShowTableSelectedPrjs (void)
|
||||||
{
|
{
|
||||||
extern const char *Txt_No_projects;
|
extern const char *Txt_No_projects;
|
||||||
unsigned NumPrj;
|
unsigned NumPrj;
|
||||||
struct Project Prj;
|
struct Prj_Project Prj;
|
||||||
|
|
||||||
/***** Get parameters *****/
|
/***** Get parameters *****/
|
||||||
Prj_GetParams ();
|
Prj_GetParams ();
|
||||||
|
@ -380,7 +382,7 @@ void Prj_ShowTableSelectedPrjs (void)
|
||||||
/****************** Show the projects in current page ************************/
|
/****************** Show the projects in current page ************************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
static void Prj_ShowPrjsInCurrentPage (void *Args)
|
static void Prj_ShowPrjsInCurrentPage (void *Projects)
|
||||||
{
|
{
|
||||||
extern const char *Hlp_ASSESSMENT_Projects;
|
extern const char *Hlp_ASSESSMENT_Projects;
|
||||||
extern const char *Txt_Projects;
|
extern const char *Txt_Projects;
|
||||||
|
@ -388,23 +390,22 @@ static void Prj_ShowPrjsInCurrentPage (void *Args)
|
||||||
struct Pagination Pagination;
|
struct Pagination Pagination;
|
||||||
unsigned NumPrj;
|
unsigned NumPrj;
|
||||||
unsigned NumIndex;
|
unsigned NumIndex;
|
||||||
struct Project Prj;
|
struct Prj_Project Prj;
|
||||||
|
|
||||||
if (!Args)
|
|
||||||
return;
|
|
||||||
|
|
||||||
|
if (Projects)
|
||||||
|
{
|
||||||
/***** Get list of projects *****/
|
/***** Get list of projects *****/
|
||||||
Prj_GetListProjects ();
|
Prj_GetListProjects ();
|
||||||
|
|
||||||
/***** Compute variables related to pagination *****/
|
/***** Compute variables related to pagination *****/
|
||||||
Pagination.NumItems = Gbl.Prjs.Num;
|
Pagination.NumItems = ((struct Prj_Projects *) Projects)->Num;
|
||||||
Pagination.CurrentPage = (int) Gbl.Prjs.CurrentPage;
|
Pagination.CurrentPage = (int) ((struct Prj_Projects *) Projects)->CurrentPage;
|
||||||
Pag_CalculatePagination (&Pagination);
|
Pag_CalculatePagination (&Pagination);
|
||||||
Gbl.Prjs.CurrentPage = (unsigned) Pagination.CurrentPage;
|
((struct Prj_Projects *) Projects)->CurrentPage = (unsigned) Pagination.CurrentPage;
|
||||||
|
|
||||||
/***** Begin box *****/
|
/***** Begin box *****/
|
||||||
Box_BoxBegin ("100%",Txt_Projects,
|
Box_BoxBegin ("100%",Txt_Projects,
|
||||||
Prj_PutIconsListProjects,&Gbl,
|
Prj_PutIconsListProjects,Projects,
|
||||||
Hlp_ASSESSMENT_Projects,Box_NOT_CLOSABLE);
|
Hlp_ASSESSMENT_Projects,Box_NOT_CLOSABLE);
|
||||||
|
|
||||||
/***** Put forms to choice which projects to show *****/
|
/***** Put forms to choice which projects to show *****/
|
||||||
|
@ -458,7 +459,7 @@ static void Prj_ShowPrjsInCurrentPage (void *Args)
|
||||||
case Prj_ORDER_START_TIME:
|
case Prj_ORDER_START_TIME:
|
||||||
case Prj_ORDER_END_TIME:
|
case Prj_ORDER_END_TIME:
|
||||||
// NumPrj: 1, 2, 3 ==> NumIndex = 3, 2, 1
|
// NumPrj: 1, 2, 3 ==> NumIndex = 3, 2, 1
|
||||||
NumIndex = Gbl.Prjs.Num + 1 - NumPrj;
|
NumIndex = ((struct Prj_Projects *) Projects)->Num + 1 - NumPrj;
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
// NumPrj: 1, 2, 3 ==> NumIndex = 1, 2, 3
|
// NumPrj: 1, 2, 3 ==> NumIndex = 1, 2, 3
|
||||||
|
@ -479,7 +480,7 @@ static void Prj_ShowPrjsInCurrentPage (void *Args)
|
||||||
/***** Write again links to pages *****/
|
/***** Write again links to pages *****/
|
||||||
Pag_WriteLinksToPagesCentered (Pag_PROJECTS,
|
Pag_WriteLinksToPagesCentered (Pag_PROJECTS,
|
||||||
&Pagination,
|
&Pagination,
|
||||||
(unsigned) Gbl.Prjs.SelectedOrder,
|
(unsigned) ((struct Prj_Projects *) Projects)->SelectedOrder,
|
||||||
NULL,0);
|
NULL,0);
|
||||||
}
|
}
|
||||||
else // No projects created
|
else // No projects created
|
||||||
|
@ -495,6 +496,7 @@ static void Prj_ShowPrjsInCurrentPage (void *Args)
|
||||||
/***** Free list of projects *****/
|
/***** Free list of projects *****/
|
||||||
Prj_FreeListProjects ();
|
Prj_FreeListProjects ();
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
/*** Show form to choice whether to show only my projects or all projects ****/
|
/*** Show form to choice whether to show only my projects or all projects ****/
|
||||||
|
@ -692,13 +694,13 @@ static void Prj_ShowFormToFilterByDpt (void)
|
||||||
/********************** Put parameters used in projects **********************/
|
/********************** Put parameters used in projects **********************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
static void Prj_PutCurrentParams (void *Args)
|
static void Prj_PutCurrentParams (void *Projects)
|
||||||
{
|
{
|
||||||
if (Args)
|
if (Projects)
|
||||||
Prj_PutParams (&Gbl.Prjs.Filter,
|
Prj_PutParams (&((struct Prj_Projects *) Projects)->Filter,
|
||||||
Gbl.Prjs.SelectedOrder,
|
((struct Prj_Projects *) Projects)->SelectedOrder,
|
||||||
Gbl.Prjs.CurrentPage,
|
((struct Prj_Projects *) Projects)->CurrentPage,
|
||||||
Gbl.Prjs.PrjCod);
|
((struct Prj_Projects *) Projects)->PrjCod);
|
||||||
}
|
}
|
||||||
|
|
||||||
/* The following function is called
|
/* The following function is called
|
||||||
|
@ -992,11 +994,11 @@ static bool Prj_CheckIfICanCreateProjects (void)
|
||||||
/***************** Put contextual icons in list of projects ******************/
|
/***************** Put contextual icons in list of projects ******************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
static void Prj_PutIconsListProjects (void *Args)
|
static void Prj_PutIconsListProjects (void *Projects)
|
||||||
{
|
{
|
||||||
bool ICanConfigAllProjects;
|
bool ICanConfigAllProjects;
|
||||||
|
|
||||||
if (Args)
|
if (Projects)
|
||||||
{
|
{
|
||||||
ICanConfigAllProjects = Prj_CheckIfICanConfigAllProjects ();
|
ICanConfigAllProjects = Prj_CheckIfICanConfigAllProjects ();
|
||||||
|
|
||||||
|
@ -1004,7 +1006,7 @@ static void Prj_PutIconsListProjects (void *Args)
|
||||||
if (Prj_CheckIfICanCreateProjects ())
|
if (Prj_CheckIfICanCreateProjects ())
|
||||||
Prj_PutIconToCreateNewPrj ();
|
Prj_PutIconToCreateNewPrj ();
|
||||||
|
|
||||||
if (Gbl.Prjs.Num)
|
if (((struct Prj_Projects *) Projects)->Num)
|
||||||
{
|
{
|
||||||
/***** Put icon to show all data in a table *****/
|
/***** Put icon to show all data in a table *****/
|
||||||
Prj_PutIconToShowAllData ();
|
Prj_PutIconToShowAllData ();
|
||||||
|
@ -1036,7 +1038,7 @@ static void Prj_PutIconToCreateNewPrj (void)
|
||||||
/***** Put form to create a new project *****/
|
/***** Put form to create a new project *****/
|
||||||
Gbl.Prjs.PrjCod = -1L;
|
Gbl.Prjs.PrjCod = -1L;
|
||||||
Ico_PutContextualIconToAdd (ActFrmNewPrj,NULL,
|
Ico_PutContextualIconToAdd (ActFrmNewPrj,NULL,
|
||||||
Prj_PutCurrentParams,&Gbl,
|
Prj_PutCurrentParams,&Gbl.Prjs,
|
||||||
Txt_New_project);
|
Txt_New_project);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1050,7 +1052,7 @@ static void Prj_PutButtonToCreateNewPrj (void)
|
||||||
|
|
||||||
Gbl.Prjs.PrjCod = -1L;
|
Gbl.Prjs.PrjCod = -1L;
|
||||||
Frm_StartForm (ActFrmNewPrj);
|
Frm_StartForm (ActFrmNewPrj);
|
||||||
Prj_PutCurrentParams (&Gbl);
|
Prj_PutCurrentParams (&Gbl.Prjs);
|
||||||
Btn_PutConfirmButton (Txt_New_project);
|
Btn_PutConfirmButton (Txt_New_project);
|
||||||
Frm_EndForm ();
|
Frm_EndForm ();
|
||||||
}
|
}
|
||||||
|
@ -1064,7 +1066,7 @@ static void Prj_PutIconToShowAllData (void)
|
||||||
extern const char *Txt_Show_all_data_in_a_table;
|
extern const char *Txt_Show_all_data_in_a_table;
|
||||||
|
|
||||||
Lay_PutContextualLinkOnlyIcon (ActSeeTblAllPrj,NULL,
|
Lay_PutContextualLinkOnlyIcon (ActSeeTblAllPrj,NULL,
|
||||||
Prj_PutCurrentParams,&Gbl,
|
Prj_PutCurrentParams,&Gbl.Prjs,
|
||||||
"table.svg",
|
"table.svg",
|
||||||
Txt_Show_all_data_in_a_table);
|
Txt_Show_all_data_in_a_table);
|
||||||
}
|
}
|
||||||
|
@ -1073,7 +1075,7 @@ static void Prj_PutIconToShowAllData (void)
|
||||||
/***************** View / edit file browser of one project *******************/
|
/***************** View / edit file browser of one project *******************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
void Prj_ShowOneUniqueProject (struct Project *Prj)
|
void Prj_ShowOneUniqueProject (struct Prj_Project *Prj)
|
||||||
{
|
{
|
||||||
/***** Begin table *****/
|
/***** Begin table *****/
|
||||||
HTM_TABLE_BeginWidePadding (2);
|
HTM_TABLE_BeginWidePadding (2);
|
||||||
|
@ -1094,7 +1096,7 @@ void Prj_ShowOneUniqueProject (struct Project *Prj)
|
||||||
|
|
||||||
void Prj_PrintOneProject (void)
|
void Prj_PrintOneProject (void)
|
||||||
{
|
{
|
||||||
struct Project Prj;
|
struct Prj_Project Prj;
|
||||||
|
|
||||||
/***** Allocate memory for the project *****/
|
/***** Allocate memory for the project *****/
|
||||||
Prj_AllocMemProject (&Prj);
|
Prj_AllocMemProject (&Prj);
|
||||||
|
@ -1127,7 +1129,7 @@ void Prj_PrintOneProject (void)
|
||||||
/***************************** Show one project ******************************/
|
/***************************** Show one project ******************************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
static void Prj_ShowOneProject (unsigned NumIndex,struct Project *Prj,
|
static void Prj_ShowOneProject (unsigned NumIndex,struct Prj_Project *Prj,
|
||||||
Prj_ProjectView_t ProjectView)
|
Prj_ProjectView_t ProjectView)
|
||||||
{
|
{
|
||||||
extern const char *Txt_Project_files;
|
extern const char *Txt_Project_files;
|
||||||
|
@ -1271,7 +1273,7 @@ static void Prj_ShowOneProject (unsigned NumIndex,struct Project *Prj,
|
||||||
if (ICanViewProjectFiles)
|
if (ICanViewProjectFiles)
|
||||||
{
|
{
|
||||||
Frm_StartForm (ActAdmDocPrj);
|
Frm_StartForm (ActAdmDocPrj);
|
||||||
Prj_PutCurrentParams (&Gbl);
|
Prj_PutCurrentParams (&Gbl.Prjs);
|
||||||
HTM_BUTTON_SUBMIT_Begin (Txt_Project_files,ClassLink,NULL);
|
HTM_BUTTON_SUBMIT_Begin (Txt_Project_files,ClassLink,NULL);
|
||||||
HTM_Txt (Prj->Title);
|
HTM_Txt (Prj->Title);
|
||||||
HTM_BUTTON_End ();
|
HTM_BUTTON_End ();
|
||||||
|
@ -1578,7 +1580,7 @@ static void Prj_PutIconToToggleProject (unsigned UniqueId,
|
||||||
/***************** Show one row of table with all projects *******************/
|
/***************** Show one row of table with all projects *******************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
static void Prj_ShowTableAllProjectsOneRow (struct Project *Prj)
|
static void Prj_ShowTableAllProjectsOneRow (struct Prj_Project *Prj)
|
||||||
{
|
{
|
||||||
extern const char *Txt_Yes;
|
extern const char *Txt_Yes;
|
||||||
extern const char *Txt_No;
|
extern const char *Txt_No;
|
||||||
|
@ -1680,7 +1682,7 @@ static void Prj_ShowTableAllProjectsOneRow (struct Project *Prj)
|
||||||
/****************** Show department associated to project ********************/
|
/****************** Show department associated to project ********************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
static void Prj_ShowOneProjectDepartment (const struct Project *Prj,
|
static void Prj_ShowOneProjectDepartment (const struct Prj_Project *Prj,
|
||||||
Prj_ProjectView_t ProjectView)
|
Prj_ProjectView_t ProjectView)
|
||||||
{
|
{
|
||||||
struct Department Dpt;
|
struct Department Dpt;
|
||||||
|
@ -1719,7 +1721,7 @@ static void Prj_ShowOneProjectDepartment (const struct Project *Prj,
|
||||||
HTM_TR_End ();
|
HTM_TR_End ();
|
||||||
}
|
}
|
||||||
|
|
||||||
static void Prj_ShowTableAllProjectsDepartment (const struct Project *Prj)
|
static void Prj_ShowTableAllProjectsDepartment (const struct Prj_Project *Prj)
|
||||||
{
|
{
|
||||||
struct Department Dpt;
|
struct Department Dpt;
|
||||||
const char *ClassData;
|
const char *ClassData;
|
||||||
|
@ -1742,7 +1744,7 @@ static void Prj_ShowTableAllProjectsDepartment (const struct Project *Prj)
|
||||||
/********************** Show text field about a project **********************/
|
/********************** Show text field about a project **********************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
static void Prj_ShowOneProjectTxtField (struct Project *Prj,
|
static void Prj_ShowOneProjectTxtField (struct Prj_Project *Prj,
|
||||||
Prj_ProjectView_t ProjectView,
|
Prj_ProjectView_t ProjectView,
|
||||||
const char *id,unsigned UniqueId,
|
const char *id,unsigned UniqueId,
|
||||||
const char *Label,char *TxtField,
|
const char *Label,char *TxtField,
|
||||||
|
@ -1812,7 +1814,7 @@ static void Prj_ShowOneProjectTxtField (struct Project *Prj,
|
||||||
HTM_TR_End ();
|
HTM_TR_End ();
|
||||||
}
|
}
|
||||||
|
|
||||||
static void Prj_ShowTableAllProjectsTxtField (struct Project *Prj,
|
static void Prj_ShowTableAllProjectsTxtField (struct Prj_Project *Prj,
|
||||||
char *TxtField)
|
char *TxtField)
|
||||||
{
|
{
|
||||||
const char *ClassData;
|
const char *ClassData;
|
||||||
|
@ -1835,7 +1837,7 @@ static void Prj_ShowTableAllProjectsTxtField (struct Project *Prj,
|
||||||
/********************** Show URL associated to project ***********************/
|
/********************** Show URL associated to project ***********************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
static void Prj_ShowOneProjectURL (const struct Project *Prj,
|
static void Prj_ShowOneProjectURL (const struct Prj_Project *Prj,
|
||||||
Prj_ProjectView_t ProjectView,
|
Prj_ProjectView_t ProjectView,
|
||||||
const char *id,unsigned UniqueId)
|
const char *id,unsigned UniqueId)
|
||||||
{
|
{
|
||||||
|
@ -1895,7 +1897,7 @@ static void Prj_ShowOneProjectURL (const struct Project *Prj,
|
||||||
HTM_TR_End ();
|
HTM_TR_End ();
|
||||||
}
|
}
|
||||||
|
|
||||||
static void Prj_ShowTableAllProjectsURL (const struct Project *Prj)
|
static void Prj_ShowTableAllProjectsURL (const struct Prj_Project *Prj)
|
||||||
{
|
{
|
||||||
const char *ClassData;
|
const char *ClassData;
|
||||||
|
|
||||||
|
@ -1913,7 +1915,7 @@ static void Prj_ShowTableAllProjectsURL (const struct Project *Prj)
|
||||||
/************** Show projects members when showing one project ***************/
|
/************** Show projects members when showing one project ***************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
static void Prj_ShowOneProjectMembers (struct Project *Prj,
|
static void Prj_ShowOneProjectMembers (struct Prj_Project *Prj,
|
||||||
Prj_ProjectView_t ProjectView)
|
Prj_ProjectView_t ProjectView)
|
||||||
{
|
{
|
||||||
unsigned NumRoleToShow;
|
unsigned NumRoleToShow;
|
||||||
|
@ -1929,7 +1931,7 @@ static void Prj_ShowOneProjectMembers (struct Project *Prj,
|
||||||
/************************* Show users row in a project ***********************/
|
/************************* Show users row in a project ***********************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
static void Prj_ShowOneProjectMembersWithARole (const struct Project *Prj,
|
static void Prj_ShowOneProjectMembersWithARole (const struct Prj_Project *Prj,
|
||||||
Prj_ProjectView_t ProjectView,
|
Prj_ProjectView_t ProjectView,
|
||||||
Prj_RoleInProject_t RoleInProject)
|
Prj_RoleInProject_t RoleInProject)
|
||||||
{
|
{
|
||||||
|
@ -2044,7 +2046,7 @@ static void Prj_ShowOneProjectMembersWithARole (const struct Project *Prj,
|
||||||
{
|
{
|
||||||
HTM_TD_Begin ("class=\"PRJ_MEMBER_ICO\"");
|
HTM_TD_Begin ("class=\"PRJ_MEMBER_ICO\"");
|
||||||
Lay_PutContextualLinkOnlyIcon (ActionReqRemUsr[RoleInProject],NULL,
|
Lay_PutContextualLinkOnlyIcon (ActionReqRemUsr[RoleInProject],NULL,
|
||||||
Prj_PutCurrentParams,&Gbl,
|
Prj_PutCurrentParams,&Gbl.Prjs,
|
||||||
"trash.svg",
|
"trash.svg",
|
||||||
Txt_Remove);
|
Txt_Remove);
|
||||||
HTM_TD_End ();
|
HTM_TD_End ();
|
||||||
|
@ -2076,7 +2078,7 @@ static void Prj_ShowOneProjectMembersWithARole (const struct Project *Prj,
|
||||||
HTM_TD_Begin ("class=\"PRJ_MEMBER_ICO\"");
|
HTM_TD_Begin ("class=\"PRJ_MEMBER_ICO\"");
|
||||||
Gbl.Prjs.PrjCod = Prj->PrjCod; // Used to pass project code as a parameter
|
Gbl.Prjs.PrjCod = Prj->PrjCod; // Used to pass project code as a parameter
|
||||||
Ico_PutContextualIconToAdd (ActionReqAddUsr[RoleInProject],NULL,
|
Ico_PutContextualIconToAdd (ActionReqAddUsr[RoleInProject],NULL,
|
||||||
Prj_PutCurrentParams,&Gbl,
|
Prj_PutCurrentParams,&Gbl.Prjs,
|
||||||
Str_BuildStringStr (Txt_Add_USERS,
|
Str_BuildStringStr (Txt_Add_USERS,
|
||||||
Txt_PROJECT_ROLES_PLURAL_abc[RoleInProject]));
|
Txt_PROJECT_ROLES_PLURAL_abc[RoleInProject]));
|
||||||
Str_FreeString ();
|
Str_FreeString ();
|
||||||
|
@ -2106,7 +2108,7 @@ static void Prj_ShowOneProjectMembersWithARole (const struct Project *Prj,
|
||||||
DB_FreeMySQLResult (&mysql_res);
|
DB_FreeMySQLResult (&mysql_res);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void Prj_ShowTableAllProjectsMembersWithARole (const struct Project *Prj,
|
static void Prj_ShowTableAllProjectsMembersWithARole (const struct Prj_Project *Prj,
|
||||||
Prj_RoleInProject_t RoleInProject)
|
Prj_RoleInProject_t RoleInProject)
|
||||||
{
|
{
|
||||||
MYSQL_RES *mysql_res;
|
MYSQL_RES *mysql_res;
|
||||||
|
@ -2264,25 +2266,37 @@ static Prj_RoleInProject_t Prj_ConvertUnsignedStrToRoleInProject (const char *Un
|
||||||
/******************* Request users to be added to project ********************/
|
/******************* Request users to be added to project ********************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
void Prj_ReqAddStds (void *Args)
|
void Prj_ReqAddStds (void)
|
||||||
{
|
{
|
||||||
if (Args)
|
Prj_FormToSelectStds (NULL);
|
||||||
Prj_ReqAddUsrs (Prj_ROLE_STD);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void Prj_ReqAddTuts (void *Args)
|
void Prj_ReqAddTuts (void)
|
||||||
{
|
{
|
||||||
if (Args)
|
Prj_FormToSelectTuts (NULL);
|
||||||
Prj_ReqAddUsrs (Prj_ROLE_TUT);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void Prj_ReqAddEvls (void *Args)
|
void Prj_ReqAddEvls (void)
|
||||||
{
|
{
|
||||||
if (Args)
|
Prj_FormToSelectEvls (NULL);
|
||||||
Prj_ReqAddUsrs (Prj_ROLE_EVL);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
static void Prj_ReqAddUsrs (Prj_RoleInProject_t RoleInProject)
|
static void Prj_FormToSelectStds (__attribute__((unused)) void *Args)
|
||||||
|
{
|
||||||
|
Prj_FormToSelectUsrs (Prj_ROLE_STD);
|
||||||
|
}
|
||||||
|
|
||||||
|
static void Prj_FormToSelectTuts (__attribute__((unused)) void *Args)
|
||||||
|
{
|
||||||
|
Prj_FormToSelectUsrs (Prj_ROLE_TUT);
|
||||||
|
}
|
||||||
|
|
||||||
|
static void Prj_FormToSelectEvls (__attribute__((unused)) void *Args)
|
||||||
|
{
|
||||||
|
Prj_FormToSelectUsrs (Prj_ROLE_EVL);
|
||||||
|
}
|
||||||
|
|
||||||
|
static void Prj_FormToSelectUsrs (Prj_RoleInProject_t RoleInProject)
|
||||||
{
|
{
|
||||||
extern const char *Hlp_ASSESSMENT_Projects_add_user;
|
extern const char *Hlp_ASSESSMENT_Projects_add_user;
|
||||||
extern const char *Txt_Add_USERS;
|
extern const char *Txt_Add_USERS;
|
||||||
|
@ -2307,7 +2321,7 @@ static void Prj_ReqAddUsrs (Prj_RoleInProject_t RoleInProject)
|
||||||
Lay_NotEnoughMemoryExit ();
|
Lay_NotEnoughMemoryExit ();
|
||||||
Usr_PutFormToSelectUsrsToGoToAct (&Prj_MembersToAdd,
|
Usr_PutFormToSelectUsrsToGoToAct (&Prj_MembersToAdd,
|
||||||
ActionAddUsr[RoleInProject],
|
ActionAddUsr[RoleInProject],
|
||||||
Prj_PutCurrentParams,&Gbl,
|
Prj_PutCurrentParams,&Gbl.Prjs,
|
||||||
TxtButton,
|
TxtButton,
|
||||||
Hlp_ASSESSMENT_Projects_add_user,
|
Hlp_ASSESSMENT_Projects_add_user,
|
||||||
TxtButton,
|
TxtButton,
|
||||||
|
@ -2325,43 +2339,40 @@ static void Prj_ReqAddUsrs (Prj_RoleInProject_t RoleInProject)
|
||||||
void Prj_GetSelectedUsrsAndAddStds (void)
|
void Prj_GetSelectedUsrsAndAddStds (void)
|
||||||
{
|
{
|
||||||
Usr_GetSelectedUsrsAndGoToAct (&Prj_MembersToAdd,
|
Usr_GetSelectedUsrsAndGoToAct (&Prj_MembersToAdd,
|
||||||
Prj_AddStds,&Gbl, // when user(s) selected
|
Prj_AddStds,NULL, // when user(s) selected
|
||||||
Prj_ReqAddStds,&Gbl); // when no user selected
|
Prj_FormToSelectStds,NULL); // when no user selected
|
||||||
}
|
}
|
||||||
|
|
||||||
void Prj_GetSelectedUsrsAndAddTuts (void)
|
void Prj_GetSelectedUsrsAndAddTuts (void)
|
||||||
{
|
{
|
||||||
Usr_GetSelectedUsrsAndGoToAct (&Prj_MembersToAdd,
|
Usr_GetSelectedUsrsAndGoToAct (&Prj_MembersToAdd,
|
||||||
Prj_AddTuts,&Gbl, // when user(s) selected
|
Prj_AddTuts,NULL, // when user(s) selected
|
||||||
Prj_ReqAddTuts,&Gbl); // when no user selected
|
Prj_FormToSelectTuts,NULL); // when no user selected
|
||||||
}
|
}
|
||||||
|
|
||||||
void Prj_GetSelectedUsrsAndAddEvls (void)
|
void Prj_GetSelectedUsrsAndAddEvls (void)
|
||||||
{
|
{
|
||||||
Usr_GetSelectedUsrsAndGoToAct (&Prj_MembersToAdd,
|
Usr_GetSelectedUsrsAndGoToAct (&Prj_MembersToAdd,
|
||||||
Prj_AddEvls,&Gbl, // when user(s) selected
|
Prj_AddEvls,NULL, // when user(s) selected
|
||||||
Prj_ReqAddEvls,&Gbl); // when no user selected
|
Prj_FormToSelectEvls,NULL); // when no user selected
|
||||||
}
|
}
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
/**************************** Add users to project ***************************/
|
/**************************** Add users to project ***************************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
static void Prj_AddStds (void *Args)
|
static void Prj_AddStds (__attribute__((unused)) void *Args)
|
||||||
{
|
{
|
||||||
if (Args)
|
|
||||||
Prj_AddUsrsToProject (Prj_ROLE_STD);
|
Prj_AddUsrsToProject (Prj_ROLE_STD);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void Prj_AddTuts (void *Args)
|
static void Prj_AddTuts (__attribute__((unused)) void *Args)
|
||||||
{
|
{
|
||||||
if (Args)
|
|
||||||
Prj_AddUsrsToProject (Prj_ROLE_TUT);
|
Prj_AddUsrsToProject (Prj_ROLE_TUT);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void Prj_AddEvls (void *Args)
|
static void Prj_AddEvls (__attribute__((unused)) void *Args)
|
||||||
{
|
{
|
||||||
if (Args)
|
|
||||||
Prj_AddUsrsToProject (Prj_ROLE_EVL);
|
Prj_AddUsrsToProject (Prj_ROLE_EVL);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -2449,7 +2460,7 @@ static void Prj_ReqRemUsrFromPrj (Prj_RoleInProject_t RoleInProject)
|
||||||
[Prj_ROLE_TUT] = ActRemTutPrj, // Tutor
|
[Prj_ROLE_TUT] = ActRemTutPrj, // Tutor
|
||||||
[Prj_ROLE_EVL] = ActRemEvlPrj, // Evaluator
|
[Prj_ROLE_EVL] = ActRemEvlPrj, // Evaluator
|
||||||
};
|
};
|
||||||
struct Project Prj;
|
struct Prj_Project Prj;
|
||||||
bool ItsMe;
|
bool ItsMe;
|
||||||
|
|
||||||
/***** Allocate memory for the project *****/
|
/***** Allocate memory for the project *****/
|
||||||
|
@ -2483,7 +2494,7 @@ static void Prj_ReqRemUsrFromPrj (Prj_RoleInProject_t RoleInProject)
|
||||||
/* Show form to request confirmation */
|
/* Show form to request confirmation */
|
||||||
Frm_StartForm (ActionRemUsr[RoleInProject]);
|
Frm_StartForm (ActionRemUsr[RoleInProject]);
|
||||||
Gbl.Prjs.PrjCod = Prj.PrjCod;
|
Gbl.Prjs.PrjCod = Prj.PrjCod;
|
||||||
Prj_PutCurrentParams (&Gbl);
|
Prj_PutCurrentParams (&Gbl.Prjs);
|
||||||
Btn_PutRemoveButton (Str_BuildStringStr (Txt_Remove_USER_from_this_project,
|
Btn_PutRemoveButton (Str_BuildStringStr (Txt_Remove_USER_from_this_project,
|
||||||
Txt_PROJECT_ROLES_SINGUL_abc[RoleInProject][Gbl.Usrs.Other.UsrDat.Sex]));
|
Txt_PROJECT_ROLES_SINGUL_abc[RoleInProject][Gbl.Usrs.Other.UsrDat.Sex]));
|
||||||
Str_FreeString ();
|
Str_FreeString ();
|
||||||
|
@ -2530,7 +2541,7 @@ static void Prj_RemUsrFromPrj (Prj_RoleInProject_t RoleInProject)
|
||||||
{
|
{
|
||||||
extern const char *Txt_THE_USER_X_has_been_removed_as_a_Y_from_the_project_Z;
|
extern const char *Txt_THE_USER_X_has_been_removed_as_a_Y_from_the_project_Z;
|
||||||
extern const char *Txt_PROJECT_ROLES_SINGUL_abc[Prj_NUM_ROLES_IN_PROJECT][Usr_NUM_SEXS];
|
extern const char *Txt_PROJECT_ROLES_SINGUL_abc[Prj_NUM_ROLES_IN_PROJECT][Usr_NUM_SEXS];
|
||||||
struct Project Prj;
|
struct Prj_Project Prj;
|
||||||
bool ItsMe;
|
bool ItsMe;
|
||||||
|
|
||||||
/***** Allocate memory for the project *****/
|
/***** Allocate memory for the project *****/
|
||||||
|
@ -2608,7 +2619,7 @@ void Prj_PutHiddenParamPrjOrder (void)
|
||||||
/****************** Put a link (form) to edit one project ********************/
|
/****************** Put a link (form) to edit one project ********************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
static void Prj_PutFormsToRemEditOnePrj (const struct Project *Prj,
|
static void Prj_PutFormsToRemEditOnePrj (const struct Prj_Project *Prj,
|
||||||
const char *Anchor,
|
const char *Anchor,
|
||||||
bool ICanViewProjectFiles)
|
bool ICanViewProjectFiles)
|
||||||
{
|
{
|
||||||
|
@ -2618,34 +2629,34 @@ static void Prj_PutFormsToRemEditOnePrj (const struct Project *Prj,
|
||||||
{
|
{
|
||||||
/***** Put form to remove project *****/
|
/***** Put form to remove project *****/
|
||||||
Ico_PutContextualIconToRemove (ActReqRemPrj,
|
Ico_PutContextualIconToRemove (ActReqRemPrj,
|
||||||
Prj_PutCurrentParams,&Gbl);
|
Prj_PutCurrentParams,&Gbl.Prjs);
|
||||||
|
|
||||||
/***** Put form to hide/show project *****/
|
/***** Put form to hide/show project *****/
|
||||||
switch (Prj->Hidden)
|
switch (Prj->Hidden)
|
||||||
{
|
{
|
||||||
case Prj_HIDDEN:
|
case Prj_HIDDEN:
|
||||||
Ico_PutContextualIconToUnhide (ActShoPrj,Anchor,
|
Ico_PutContextualIconToUnhide (ActShoPrj,Anchor,
|
||||||
Prj_PutCurrentParams,&Gbl);
|
Prj_PutCurrentParams,&Gbl.Prjs);
|
||||||
break;
|
break;
|
||||||
case Prj_VISIBL:
|
case Prj_VISIBL:
|
||||||
Ico_PutContextualIconToHide (ActHidPrj,Anchor,
|
Ico_PutContextualIconToHide (ActHidPrj,Anchor,
|
||||||
Prj_PutCurrentParams,&Gbl);
|
Prj_PutCurrentParams,&Gbl.Prjs);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
/***** Put form to edit project *****/
|
/***** Put form to edit project *****/
|
||||||
Ico_PutContextualIconToEdit (ActEdiOnePrj,NULL,
|
Ico_PutContextualIconToEdit (ActEdiOnePrj,NULL,
|
||||||
Prj_PutCurrentParams,&Gbl);
|
Prj_PutCurrentParams,&Gbl.Prjs);
|
||||||
}
|
}
|
||||||
|
|
||||||
/***** Put form to admin project documents *****/
|
/***** Put form to admin project documents *****/
|
||||||
if (ICanViewProjectFiles)
|
if (ICanViewProjectFiles)
|
||||||
Ico_PutContextualIconToViewFiles (ActAdmDocPrj,
|
Ico_PutContextualIconToViewFiles (ActAdmDocPrj,
|
||||||
Prj_PutCurrentParams,&Gbl);
|
Prj_PutCurrentParams,&Gbl.Prjs);
|
||||||
|
|
||||||
/***** Put form to print project *****/
|
/***** Put form to print project *****/
|
||||||
Ico_PutContextualIconToPrint (ActPrnOnePrj,
|
Ico_PutContextualIconToPrint (ActPrnOnePrj,
|
||||||
Prj_PutCurrentParams,&Gbl);
|
Prj_PutCurrentParams,&Gbl.Prjs);
|
||||||
|
|
||||||
/***** Locked/unlocked project edition *****/
|
/***** Locked/unlocked project edition *****/
|
||||||
if (Prj_CheckIfICanConfigAllProjects ())
|
if (Prj_CheckIfICanConfigAllProjects ())
|
||||||
|
@ -2683,7 +2694,7 @@ bool Prj_CheckIfICanViewProjectFiles (unsigned MyRolesInProject)
|
||||||
/************************ Can I edit a given project? ************************/
|
/************************ Can I edit a given project? ************************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
static bool Prj_CheckIfICanEditProject (const struct Project *Prj)
|
static bool Prj_CheckIfICanEditProject (const struct Prj_Project *Prj)
|
||||||
{
|
{
|
||||||
switch (Gbl.Usrs.Me.Role.Logged)
|
switch (Gbl.Usrs.Me.Role.Logged)
|
||||||
{
|
{
|
||||||
|
@ -3029,7 +3040,7 @@ long Prj_GetCourseOfProject (long PrjCod)
|
||||||
/********************* Get project data using its code ***********************/
|
/********************* Get project data using its code ***********************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
void Prj_GetDataOfProjectByCod (struct Project *Prj)
|
void Prj_GetDataOfProjectByCod (struct Prj_Project *Prj)
|
||||||
{
|
{
|
||||||
MYSQL_RES *mysql_res;
|
MYSQL_RES *mysql_res;
|
||||||
MYSQL_ROW row;
|
MYSQL_ROW row;
|
||||||
|
@ -3145,7 +3156,7 @@ void Prj_GetDataOfProjectByCod (struct Project *Prj)
|
||||||
/************************** Clear all project data ***************************/
|
/************************** Clear all project data ***************************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
static void Prj_ResetProject (struct Project *Prj)
|
static void Prj_ResetProject (struct Prj_Project *Prj)
|
||||||
{
|
{
|
||||||
if (Prj->PrjCod <= 0) // If > 0 ==> keep value
|
if (Prj->PrjCod <= 0) // If > 0 ==> keep value
|
||||||
Prj->PrjCod = -1L;
|
Prj->PrjCod = -1L;
|
||||||
|
@ -3208,7 +3219,7 @@ void Prj_ReqRemProject (void)
|
||||||
{
|
{
|
||||||
extern const char *Txt_Do_you_really_want_to_remove_the_project_X;
|
extern const char *Txt_Do_you_really_want_to_remove_the_project_X;
|
||||||
extern const char *Txt_Remove_project;
|
extern const char *Txt_Remove_project;
|
||||||
struct Project Prj;
|
struct Prj_Project Prj;
|
||||||
|
|
||||||
/***** Allocate memory for the project *****/
|
/***** Allocate memory for the project *****/
|
||||||
Prj_AllocMemProject (&Prj);
|
Prj_AllocMemProject (&Prj);
|
||||||
|
@ -3226,7 +3237,7 @@ void Prj_ReqRemProject (void)
|
||||||
/***** Show question and button to remove the project *****/
|
/***** Show question and button to remove the project *****/
|
||||||
Gbl.Prjs.PrjCod = Prj.PrjCod;
|
Gbl.Prjs.PrjCod = Prj.PrjCod;
|
||||||
Ale_ShowAlertAndButton (ActRemPrj,NULL,NULL,
|
Ale_ShowAlertAndButton (ActRemPrj,NULL,NULL,
|
||||||
Prj_PutCurrentParams,&Gbl,
|
Prj_PutCurrentParams,&Gbl.Prjs,
|
||||||
Btn_REMOVE_BUTTON,Txt_Remove_project,
|
Btn_REMOVE_BUTTON,Txt_Remove_project,
|
||||||
Ale_QUESTION,Txt_Do_you_really_want_to_remove_the_project_X,
|
Ale_QUESTION,Txt_Do_you_really_want_to_remove_the_project_X,
|
||||||
Prj.Title);
|
Prj.Title);
|
||||||
|
@ -3248,7 +3259,7 @@ void Prj_ReqRemProject (void)
|
||||||
void Prj_RemoveProject (void)
|
void Prj_RemoveProject (void)
|
||||||
{
|
{
|
||||||
extern const char *Txt_Project_X_removed;
|
extern const char *Txt_Project_X_removed;
|
||||||
struct Project Prj;
|
struct Prj_Project Prj;
|
||||||
char PathRelPrj[PATH_MAX + 1];
|
char PathRelPrj[PATH_MAX + 1];
|
||||||
|
|
||||||
/***** Allocate memory for the project *****/
|
/***** Allocate memory for the project *****/
|
||||||
|
@ -3310,7 +3321,7 @@ void Prj_RemoveProject (void)
|
||||||
|
|
||||||
void Prj_HideProject (void)
|
void Prj_HideProject (void)
|
||||||
{
|
{
|
||||||
struct Project Prj;
|
struct Prj_Project Prj;
|
||||||
|
|
||||||
/***** Allocate memory for the project *****/
|
/***** Allocate memory for the project *****/
|
||||||
Prj_AllocMemProject (&Prj);
|
Prj_AllocMemProject (&Prj);
|
||||||
|
@ -3345,7 +3356,7 @@ void Prj_HideProject (void)
|
||||||
|
|
||||||
void Prj_UnhideProject (void)
|
void Prj_UnhideProject (void)
|
||||||
{
|
{
|
||||||
struct Project Prj;
|
struct Prj_Project Prj;
|
||||||
|
|
||||||
/***** Allocate memory for the project *****/
|
/***** Allocate memory for the project *****/
|
||||||
Prj_AllocMemProject (&Prj);
|
Prj_AllocMemProject (&Prj);
|
||||||
|
@ -3398,7 +3409,7 @@ void Prj_RequestEditPrj (void)
|
||||||
|
|
||||||
static void Prj_RequestCreatOrEditPrj (long PrjCod)
|
static void Prj_RequestCreatOrEditPrj (long PrjCod)
|
||||||
{
|
{
|
||||||
struct Project Prj;
|
struct Prj_Project Prj;
|
||||||
bool ItsANewProject;
|
bool ItsANewProject;
|
||||||
|
|
||||||
/***** Allocate memory for the project *****/
|
/***** Allocate memory for the project *****/
|
||||||
|
@ -3431,7 +3442,7 @@ static void Prj_RequestCreatOrEditPrj (long PrjCod)
|
||||||
Prj_ShowProjects ();
|
Prj_ShowProjects ();
|
||||||
}
|
}
|
||||||
|
|
||||||
static void Prj_PutFormProject (struct Project *Prj,bool ItsANewProject)
|
static void Prj_PutFormProject (struct Prj_Project *Prj,bool ItsANewProject)
|
||||||
{
|
{
|
||||||
extern const char *Hlp_ASSESSMENT_Projects_new_project;
|
extern const char *Hlp_ASSESSMENT_Projects_new_project;
|
||||||
extern const char *Hlp_ASSESSMENT_Projects_edit_project;
|
extern const char *Hlp_ASSESSMENT_Projects_edit_project;
|
||||||
|
@ -3494,7 +3505,7 @@ static void Prj_PutFormProject (struct Project *Prj,bool ItsANewProject)
|
||||||
/* Start data form */
|
/* Start data form */
|
||||||
Frm_StartForm (ItsANewProject ? ActNewPrj :
|
Frm_StartForm (ItsANewProject ? ActNewPrj :
|
||||||
ActChgPrj);
|
ActChgPrj);
|
||||||
Prj_PutCurrentParams (&Gbl);
|
Prj_PutCurrentParams (&Gbl.Prjs);
|
||||||
|
|
||||||
/* Begin box and table */
|
/* Begin box and table */
|
||||||
Box_BoxTableBegin (NULL,Txt_Data,
|
Box_BoxTableBegin (NULL,Txt_Data,
|
||||||
|
@ -3666,7 +3677,7 @@ static void Prj_EditOneProjectTxtArea (const char *Id,
|
||||||
/*** Allocate memory for those parameters of a project with a lot of text ****/
|
/*** Allocate memory for those parameters of a project with a lot of text ****/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
void Prj_AllocMemProject (struct Project *Prj)
|
void Prj_AllocMemProject (struct Prj_Project *Prj)
|
||||||
{
|
{
|
||||||
if ((Prj->Description = (char *) malloc (Cns_MAX_BYTES_TEXT + 1)) == NULL)
|
if ((Prj->Description = (char *) malloc (Cns_MAX_BYTES_TEXT + 1)) == NULL)
|
||||||
Lay_NotEnoughMemoryExit ();
|
Lay_NotEnoughMemoryExit ();
|
||||||
|
@ -3682,7 +3693,7 @@ void Prj_AllocMemProject (struct Project *Prj)
|
||||||
/****** Free memory of those parameters of a project with a lot of text ******/
|
/****** Free memory of those parameters of a project with a lot of text ******/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
void Prj_FreeMemProject (struct Project *Prj)
|
void Prj_FreeMemProject (struct Prj_Project *Prj)
|
||||||
{
|
{
|
||||||
if (Prj->Description)
|
if (Prj->Description)
|
||||||
{
|
{
|
||||||
|
@ -3710,7 +3721,7 @@ void Prj_RecFormProject (void)
|
||||||
extern const char *Txt_You_must_specify_the_title_of_the_project;
|
extern const char *Txt_You_must_specify_the_title_of_the_project;
|
||||||
extern const char *Txt_Created_new_project_X;
|
extern const char *Txt_Created_new_project_X;
|
||||||
extern const char *Txt_The_project_has_been_modified;
|
extern const char *Txt_The_project_has_been_modified;
|
||||||
struct Project Prj; // Project data received from form
|
struct Prj_Project Prj; // Project data received from form
|
||||||
bool ItsANewProject;
|
bool ItsANewProject;
|
||||||
bool ICanEditProject;
|
bool ICanEditProject;
|
||||||
bool NewProjectIsCorrect = true;
|
bool NewProjectIsCorrect = true;
|
||||||
|
@ -3816,7 +3827,7 @@ void Prj_RecFormProject (void)
|
||||||
/************************** Create a new project *****************************/
|
/************************** Create a new project *****************************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
static void Prj_CreateProject (struct Project *Prj)
|
static void Prj_CreateProject (struct Prj_Project *Prj)
|
||||||
{
|
{
|
||||||
/***** Set dates to now *****/
|
/***** Set dates to now *****/
|
||||||
Prj->CreatTime =
|
Prj->CreatTime =
|
||||||
|
@ -3867,7 +3878,7 @@ static void Prj_CreateProject (struct Project *Prj)
|
||||||
/*********************** Update an existing project **************************/
|
/*********************** Update an existing project **************************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
static void Prj_UpdateProject (struct Project *Prj)
|
static void Prj_UpdateProject (struct Prj_Project *Prj)
|
||||||
{
|
{
|
||||||
/***** Adjust date of last edition to now *****/
|
/***** Adjust date of last edition to now *****/
|
||||||
Prj->ModifTime = Gbl.StartExecutionTimeUTC;
|
Prj->ModifTime = Gbl.StartExecutionTimeUTC;
|
||||||
|
@ -3937,7 +3948,7 @@ void Prj_ShowFormConfig (void)
|
||||||
|
|
||||||
/***** Begin box *****/
|
/***** Begin box *****/
|
||||||
Box_BoxBegin (NULL,Txt_Configure_projects,
|
Box_BoxBegin (NULL,Txt_Configure_projects,
|
||||||
Prj_PutIconsListProjects,&Gbl,
|
Prj_PutIconsListProjects,&Gbl.Prjs,
|
||||||
Hlp_ASSESSMENT_Projects,Box_NOT_CLOSABLE);
|
Hlp_ASSESSMENT_Projects,Box_NOT_CLOSABLE);
|
||||||
|
|
||||||
/***** Begin form *****/
|
/***** Begin form *****/
|
||||||
|
@ -4060,13 +4071,13 @@ static void Prj_PutIconsToLockUnlockAllProjects (void)
|
||||||
|
|
||||||
/***** Put icon to lock all projects *****/
|
/***** Put icon to lock all projects *****/
|
||||||
Lay_PutContextualLinkOnlyIcon (ActReqLckAllPrj,NULL,
|
Lay_PutContextualLinkOnlyIcon (ActReqLckAllPrj,NULL,
|
||||||
Prj_PutCurrentParams,&Gbl,
|
Prj_PutCurrentParams,&Gbl.Prjs,
|
||||||
"lock.svg",
|
"lock.svg",
|
||||||
Txt_Lock_editing);
|
Txt_Lock_editing);
|
||||||
|
|
||||||
/***** Put icon to unlock all projects *****/
|
/***** Put icon to unlock all projects *****/
|
||||||
Lay_PutContextualLinkOnlyIcon (ActReqUnlAllPrj,NULL,
|
Lay_PutContextualLinkOnlyIcon (ActReqUnlAllPrj,NULL,
|
||||||
Prj_PutCurrentParams,&Gbl,
|
Prj_PutCurrentParams,&Gbl.Prjs,
|
||||||
"unlock.svg",
|
"unlock.svg",
|
||||||
Txt_Unlock_editing);
|
Txt_Unlock_editing);
|
||||||
}
|
}
|
||||||
|
@ -4093,7 +4104,7 @@ void Prj_ReqLockSelectedPrjsEdition (void)
|
||||||
/* Show question and button */
|
/* Show question and button */
|
||||||
if (Gbl.Prjs.Num)
|
if (Gbl.Prjs.Num)
|
||||||
Ale_ShowAlertAndButton (ActLckAllPrj,NULL,NULL,
|
Ale_ShowAlertAndButton (ActLckAllPrj,NULL,NULL,
|
||||||
Prj_PutCurrentParams,&Gbl,
|
Prj_PutCurrentParams,&Gbl.Prjs,
|
||||||
Btn_REMOVE_BUTTON,Txt_Lock_editing,
|
Btn_REMOVE_BUTTON,Txt_Lock_editing,
|
||||||
Ale_QUESTION,Txt_Do_you_want_to_lock_the_editing_of_the_X_selected_projects,
|
Ale_QUESTION,Txt_Do_you_want_to_lock_the_editing_of_the_X_selected_projects,
|
||||||
Gbl.Prjs.Num);
|
Gbl.Prjs.Num);
|
||||||
|
@ -4128,7 +4139,7 @@ void Prj_ReqUnloSelectedPrjsEdition (void)
|
||||||
/* Show question and button */
|
/* Show question and button */
|
||||||
if (Gbl.Prjs.Num)
|
if (Gbl.Prjs.Num)
|
||||||
Ale_ShowAlertAndButton (ActUnlAllPrj,NULL,NULL,
|
Ale_ShowAlertAndButton (ActUnlAllPrj,NULL,NULL,
|
||||||
Prj_PutCurrentParams,&Gbl,
|
Prj_PutCurrentParams,&Gbl.Prjs,
|
||||||
Btn_CREATE_BUTTON,Txt_Unlock_editing,
|
Btn_CREATE_BUTTON,Txt_Unlock_editing,
|
||||||
Ale_QUESTION,Txt_Do_you_want_to_unlock_the_editing_of_the_X_selected_projects,
|
Ale_QUESTION,Txt_Do_you_want_to_unlock_the_editing_of_the_X_selected_projects,
|
||||||
Gbl.Prjs.Num);
|
Gbl.Prjs.Num);
|
||||||
|
@ -4219,7 +4230,7 @@ void Prj_UnloSelectedPrjsEdition (void)
|
||||||
/******************** Form to lock/unlock project edition ********************/
|
/******************** Form to lock/unlock project edition ********************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
static void Prj_FormLockUnlock (const struct Project *Prj)
|
static void Prj_FormLockUnlock (const struct Prj_Project *Prj)
|
||||||
{
|
{
|
||||||
extern const char *Txt_LOCKED_UNLOCKED[Prj_NUM_LOCKED_UNLOCKED];
|
extern const char *Txt_LOCKED_UNLOCKED[Prj_NUM_LOCKED_UNLOCKED];
|
||||||
char *OnSubmit;
|
char *OnSubmit;
|
||||||
|
@ -4256,7 +4267,7 @@ static void Prj_FormLockUnlock (const struct Project *Prj)
|
||||||
/********* Put icon to inform about locked/unlocked project edition **********/
|
/********* Put icon to inform about locked/unlocked project edition **********/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
static void Prj_PutIconOffLockedUnlocked (const struct Project *Prj)
|
static void Prj_PutIconOffLockedUnlocked (const struct Prj_Project *Prj)
|
||||||
{
|
{
|
||||||
extern const char *Txt_LOCKED_UNLOCKED[Prj_NUM_LOCKED_UNLOCKED];
|
extern const char *Txt_LOCKED_UNLOCKED[Prj_NUM_LOCKED_UNLOCKED];
|
||||||
|
|
||||||
|
@ -4270,7 +4281,7 @@ static void Prj_PutIconOffLockedUnlocked (const struct Project *Prj)
|
||||||
|
|
||||||
void Prj_LockProjectEdition (void)
|
void Prj_LockProjectEdition (void)
|
||||||
{
|
{
|
||||||
struct Project Prj;
|
struct Prj_Project Prj;
|
||||||
|
|
||||||
/***** Allocate memory for the project *****/
|
/***** Allocate memory for the project *****/
|
||||||
Prj_AllocMemProject (&Prj);
|
Prj_AllocMemProject (&Prj);
|
||||||
|
@ -4313,7 +4324,7 @@ static void Prj_LockProjectEditionInDB (long PrjCod)
|
||||||
|
|
||||||
void Prj_UnloProjectEdition (void)
|
void Prj_UnloProjectEdition (void)
|
||||||
{
|
{
|
||||||
struct Project Prj;
|
struct Prj_Project Prj;
|
||||||
|
|
||||||
/***** Allocate memory for the project *****/
|
/***** Allocate memory for the project *****/
|
||||||
Prj_AllocMemProject (&Prj);
|
Prj_AllocMemProject (&Prj);
|
||||||
|
|
|
@ -132,8 +132,24 @@ typedef enum
|
||||||
Prj_ROLE_EVL = 3, // Evaluator
|
Prj_ROLE_EVL = 3, // Evaluator
|
||||||
} Prj_RoleInProject_t;
|
} Prj_RoleInProject_t;
|
||||||
|
|
||||||
|
/***** Struct to store context/status of projects *****/
|
||||||
|
struct Prj_Projects
|
||||||
|
{
|
||||||
|
struct
|
||||||
|
{
|
||||||
|
bool Editable;
|
||||||
|
} Config;
|
||||||
|
struct Prj_Filter Filter;
|
||||||
|
bool LstIsRead; // Is the list already read from database, or it needs to be read?
|
||||||
|
unsigned Num; // Number of projects
|
||||||
|
long *LstPrjCods; // List of project codes
|
||||||
|
Prj_Order_t SelectedOrder;
|
||||||
|
unsigned CurrentPage;
|
||||||
|
long PrjCod; // Current project
|
||||||
|
};
|
||||||
|
|
||||||
/***** Struct to store a project *****/
|
/***** Struct to store a project *****/
|
||||||
struct Project
|
struct Prj_Project
|
||||||
{
|
{
|
||||||
long PrjCod;
|
long PrjCod;
|
||||||
long CrsCod;
|
long CrsCod;
|
||||||
|
@ -165,16 +181,16 @@ void Prj_PutParams (struct Prj_Filter *Filter,
|
||||||
unsigned NumPage,
|
unsigned NumPage,
|
||||||
long PrjCod);
|
long PrjCod);
|
||||||
|
|
||||||
void Prj_ShowOneUniqueProject (struct Project *Prj);
|
void Prj_ShowOneUniqueProject (struct Prj_Project *Prj);
|
||||||
|
|
||||||
void Prj_PrintOneProject (void);
|
void Prj_PrintOneProject (void);
|
||||||
|
|
||||||
void Prj_FlushCacheMyRolesInProject (void);
|
void Prj_FlushCacheMyRolesInProject (void);
|
||||||
Prj_RoleInProject_t Prj_GetMyRolesInProject (long PrjCod);
|
Prj_RoleInProject_t Prj_GetMyRolesInProject (long PrjCod);
|
||||||
|
|
||||||
void Prj_ReqAddStds (void *Args);
|
void Prj_ReqAddStds (void);
|
||||||
void Prj_ReqAddTuts (void *Args);
|
void Prj_ReqAddTuts (void);
|
||||||
void Prj_ReqAddEvls (void *Args);
|
void Prj_ReqAddEvls (void);
|
||||||
|
|
||||||
void Prj_GetSelectedUsrsAndAddStds (void);
|
void Prj_GetSelectedUsrsAndAddStds (void);
|
||||||
void Prj_GetSelectedUsrsAndAddTuts (void);
|
void Prj_GetSelectedUsrsAndAddTuts (void);
|
||||||
|
@ -195,10 +211,10 @@ bool Prj_CheckIfICanViewProjectFiles (unsigned MyRolesInProject);
|
||||||
void Prj_RequestCreatePrj (void);
|
void Prj_RequestCreatePrj (void);
|
||||||
void Prj_RequestEditPrj (void);
|
void Prj_RequestEditPrj (void);
|
||||||
|
|
||||||
void Prj_AllocMemProject (struct Project *Prj);
|
void Prj_AllocMemProject (struct Prj_Project *Prj);
|
||||||
void Prj_FreeMemProject (struct Project *Prj);
|
void Prj_FreeMemProject (struct Prj_Project *Prj);
|
||||||
|
|
||||||
void Prj_GetDataOfProjectByCod (struct Project *Prj);
|
void Prj_GetDataOfProjectByCod (struct Prj_Project *Prj);
|
||||||
long Prj_GetCourseOfProject (long PrjCod);
|
long Prj_GetCourseOfProject (long PrjCod);
|
||||||
void Prj_FreeListProjects (void);
|
void Prj_FreeListProjects (void);
|
||||||
|
|
||||||
|
|
|
@ -78,7 +78,7 @@ extern struct Globals Gbl;
|
||||||
|
|
||||||
static void Rec_WriteHeadingRecordFields (void);
|
static void Rec_WriteHeadingRecordFields (void);
|
||||||
|
|
||||||
static void Rec_PutParamFielCod (void *Args);
|
static void Rec_PutParamFieldCod (void *FieldCod);
|
||||||
static void Rec_GetFieldByCod (long FieldCod,char Name[Rec_MAX_BYTES_NAME_FIELD + 1],
|
static void Rec_GetFieldByCod (long FieldCod,char Name[Rec_MAX_BYTES_NAME_FIELD + 1],
|
||||||
unsigned *NumLines,Rec_VisibilityRecordFields_t *Visibility);
|
unsigned *NumLines,Rec_VisibilityRecordFields_t *Visibility);
|
||||||
|
|
||||||
|
@ -103,12 +103,12 @@ static void Rec_ShowCrsRecord (Rec_CourseRecordViewType_t TypeOfView,
|
||||||
static void Rec_ShowMyCrsRecordUpdated (void);
|
static void Rec_ShowMyCrsRecordUpdated (void);
|
||||||
static bool Rec_CheckIfICanEditField (Rec_VisibilityRecordFields_t Visibility);
|
static bool Rec_CheckIfICanEditField (Rec_VisibilityRecordFields_t Visibility);
|
||||||
|
|
||||||
static void Rec_PutIconsCommands (void *Args);
|
static void Rec_PutIconsCommands (__attribute__((unused)) void *Args);
|
||||||
static void Rec_PutParamsMyTsts (void *Args);
|
static void Rec_PutParamsMyTsts (__attribute__((unused)) void *Args);
|
||||||
static void Rec_PutParamsStdTsts (void *Args);
|
static void Rec_PutParamsStdTsts (__attribute__((unused)) void *Args);
|
||||||
static void Rec_PutParamsWorks (void *Args);
|
static void Rec_PutParamsWorks (__attribute__((unused)) void *Args);
|
||||||
static void Rec_PutParamsStudent (void *Args);
|
static void Rec_PutParamsStudent (__attribute__((unused)) void *Args);
|
||||||
static void Rec_PutParamsMsgUsr (void *Args);
|
static void Rec_PutParamsMsgUsr (__attribute__((unused)) void *Args);
|
||||||
static void Rec_ShowInstitutionInHead (struct Instit *Ins,bool PutFormLinks);
|
static void Rec_ShowInstitutionInHead (struct Instit *Ins,bool PutFormLinks);
|
||||||
static void Rec_ShowPhoto (struct UsrData *UsrDat);
|
static void Rec_ShowPhoto (struct UsrData *UsrDat);
|
||||||
static void Rec_ShowFullName (struct UsrData *UsrDat);
|
static void Rec_ShowFullName (struct UsrData *UsrDat);
|
||||||
|
@ -608,7 +608,7 @@ void Rec_AskConfirmRemFieldWithRecords (unsigned NumRecords)
|
||||||
|
|
||||||
/***** Show question and button to remove my photo *****/
|
/***** Show question and button to remove my photo *****/
|
||||||
Ale_ShowAlertAndButton (ActRemFie,NULL,NULL,
|
Ale_ShowAlertAndButton (ActRemFie,NULL,NULL,
|
||||||
Rec_PutParamFielCod,&Gbl,
|
Rec_PutParamFieldCod,&Gbl.Crs.Records.Field.FieldCod,
|
||||||
Btn_REMOVE_BUTTON,Txt_Remove_record_field,
|
Btn_REMOVE_BUTTON,Txt_Remove_record_field,
|
||||||
Ale_QUESTION,Txt_Do_you_really_want_to_remove_the_field_X_from_the_records_of_Y_Z_,
|
Ale_QUESTION,Txt_Do_you_really_want_to_remove_the_field_X_from_the_records_of_Y_Z_,
|
||||||
Gbl.Crs.Records.Field.Name,Gbl.Hierarchy.Crs.FullName,
|
Gbl.Crs.Records.Field.Name,Gbl.Hierarchy.Crs.FullName,
|
||||||
|
@ -654,10 +654,10 @@ void Rec_RemoveFieldFromDB (void)
|
||||||
/********************** Put parameter with field code ************************/
|
/********************** Put parameter with field code ************************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
static void Rec_PutParamFielCod (void *Args)
|
static void Rec_PutParamFieldCod (void *FieldCod)
|
||||||
{
|
{
|
||||||
if (Args)
|
if (FieldCod)
|
||||||
Par_PutHiddenParamLong (NULL,"FieldCod",Gbl.Crs.Records.Field.FieldCod);
|
Par_PutHiddenParamLong (NULL,"FieldCod",*((long *) FieldCod));
|
||||||
}
|
}
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
@ -2219,7 +2219,7 @@ void Rec_ShowSharedUsrRecord (Rec_SharedRecordViewType_t TypeOfView,
|
||||||
Rec_RecordHelp[TypeOfView],Box_NOT_CLOSABLE,2);
|
Rec_RecordHelp[TypeOfView],Box_NOT_CLOSABLE,2);
|
||||||
else
|
else
|
||||||
Box_BoxTableBegin (StrRecordWidth,NULL,
|
Box_BoxTableBegin (StrRecordWidth,NULL,
|
||||||
Rec_PutIconsCommands,&Gbl,
|
Rec_PutIconsCommands,NULL,
|
||||||
Rec_RecordHelp[TypeOfView],Box_NOT_CLOSABLE,2);
|
Rec_RecordHelp[TypeOfView],Box_NOT_CLOSABLE,2);
|
||||||
|
|
||||||
/***** Institution and user's photo *****/
|
/***** Institution and user's photo *****/
|
||||||
|
@ -2418,7 +2418,7 @@ void Rec_ShowSharedUsrRecord (Rec_SharedRecordViewType_t TypeOfView,
|
||||||
/*********** Show commands (icon to make actions) in record card *************/
|
/*********** Show commands (icon to make actions) in record card *************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
static void Rec_PutIconsCommands (void *Args)
|
static void Rec_PutIconsCommands (__attribute__((unused)) void *Args)
|
||||||
{
|
{
|
||||||
extern const char *Txt_Edit_my_personal_data;
|
extern const char *Txt_Edit_my_personal_data;
|
||||||
extern const char *Txt_My_public_profile;
|
extern const char *Txt_My_public_profile;
|
||||||
|
@ -2438,8 +2438,6 @@ static void Rec_PutIconsCommands (void *Args)
|
||||||
bool RecipientHasBannedMe;
|
bool RecipientHasBannedMe;
|
||||||
Act_Action_t NextAction;
|
Act_Action_t NextAction;
|
||||||
|
|
||||||
if (Args)
|
|
||||||
{
|
|
||||||
if (!Gbl.Form.Inside && // Only if not inside another form
|
if (!Gbl.Form.Inside && // Only if not inside another form
|
||||||
Act_GetBrowserTab (Gbl.Action.Act) == Act_BRW_1ST_TAB && // Only in main browser tab
|
Act_GetBrowserTab (Gbl.Action.Act) == Act_BRW_1ST_TAB && // Only in main browser tab
|
||||||
Gbl.Usrs.Me.Logged) // Only if I am logged
|
Gbl.Usrs.Me.Logged) // Only if I am logged
|
||||||
|
@ -2527,12 +2525,12 @@ static void Rec_PutIconsCommands (void *Args)
|
||||||
{
|
{
|
||||||
if (ItsMe)
|
if (ItsMe)
|
||||||
Lay_PutContextualLinkOnlyIcon (ActSeeMyTstRes,NULL,
|
Lay_PutContextualLinkOnlyIcon (ActSeeMyTstRes,NULL,
|
||||||
Rec_PutParamsMyTsts,&Gbl,
|
Rec_PutParamsMyTsts,NULL,
|
||||||
"check.svg",
|
"check.svg",
|
||||||
Txt_View_test_results);
|
Txt_View_test_results);
|
||||||
else // Not me
|
else // Not me
|
||||||
Lay_PutContextualLinkOnlyIcon (ActSeeUsrTstRes,NULL,
|
Lay_PutContextualLinkOnlyIcon (ActSeeUsrTstRes,NULL,
|
||||||
Rec_PutParamsStdTsts,&Gbl,
|
Rec_PutParamsStdTsts,NULL,
|
||||||
"check.svg",
|
"check.svg",
|
||||||
Txt_View_test_results);
|
Txt_View_test_results);
|
||||||
}
|
}
|
||||||
|
@ -2547,7 +2545,7 @@ static void Rec_PutIconsCommands (void *Args)
|
||||||
Txt_View_homework);
|
Txt_View_homework);
|
||||||
else // Not me, I am not a student in current course
|
else // Not me, I am not a student in current course
|
||||||
Lay_PutContextualLinkOnlyIcon (ActAdmAsgWrkCrs,NULL,
|
Lay_PutContextualLinkOnlyIcon (ActAdmAsgWrkCrs,NULL,
|
||||||
Rec_PutParamsWorks,&Gbl,
|
Rec_PutParamsWorks,NULL,
|
||||||
"folder-open.svg",
|
"folder-open.svg",
|
||||||
Txt_View_homework);
|
Txt_View_homework);
|
||||||
}
|
}
|
||||||
|
@ -2562,7 +2560,7 @@ static void Rec_PutIconsCommands (void *Args)
|
||||||
Txt_View_attendance);
|
Txt_View_attendance);
|
||||||
else // Not me
|
else // Not me
|
||||||
Lay_PutContextualLinkOnlyIcon (ActSeeLstUsrAtt,NULL,
|
Lay_PutContextualLinkOnlyIcon (ActSeeLstUsrAtt,NULL,
|
||||||
Rec_PutParamsStudent,&Gbl,
|
Rec_PutParamsStudent,NULL,
|
||||||
"calendar-check.svg",
|
"calendar-check.svg",
|
||||||
Txt_View_attendance);
|
Txt_View_attendance);
|
||||||
}
|
}
|
||||||
|
@ -2578,7 +2576,7 @@ static void Rec_PutIconsCommands (void *Args)
|
||||||
Gbl.Record.UsrDat->UsrCod); // To:
|
Gbl.Record.UsrDat->UsrCod); // To:
|
||||||
if (!RecipientHasBannedMe)
|
if (!RecipientHasBannedMe)
|
||||||
Lay_PutContextualLinkOnlyIcon (ActReqMsgUsr,NULL,
|
Lay_PutContextualLinkOnlyIcon (ActReqMsgUsr,NULL,
|
||||||
Rec_PutParamsMsgUsr,&Gbl,
|
Rec_PutParamsMsgUsr,NULL,
|
||||||
"envelope.svg",
|
"envelope.svg",
|
||||||
Txt_Write_a_message);
|
Txt_Write_a_message);
|
||||||
|
|
||||||
|
@ -2609,62 +2607,45 @@ static void Rec_PutIconsCommands (void *Args)
|
||||||
HTM_DIV_End ();
|
HTM_DIV_End ();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
||||||
void Rec_PutParamUsrCodEncrypted (void *Args)
|
void Rec_PutParamUsrCodEncrypted (__attribute__((unused)) void *Args)
|
||||||
{
|
{
|
||||||
if (Args)
|
|
||||||
Usr_PutParamUsrCodEncrypted (Gbl.Record.UsrDat->EncryptedUsrCod);
|
Usr_PutParamUsrCodEncrypted (Gbl.Record.UsrDat->EncryptedUsrCod);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void Rec_PutParamsMyTsts (void *Args)
|
static void Rec_PutParamsMyTsts (__attribute__((unused)) void *Args)
|
||||||
{
|
|
||||||
if (Args)
|
|
||||||
{
|
{
|
||||||
Dat_SetIniEndDates ();
|
Dat_SetIniEndDates ();
|
||||||
Dat_WriteParamsIniEndDates ();
|
Dat_WriteParamsIniEndDates ();
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
||||||
static void Rec_PutParamsStdTsts (void *Args)
|
static void Rec_PutParamsStdTsts (__attribute__((unused)) void *Args)
|
||||||
{
|
{
|
||||||
if (Args)
|
Rec_PutParamsStudent (NULL);
|
||||||
{
|
|
||||||
Rec_PutParamsStudent (&Gbl);
|
|
||||||
Dat_SetIniEndDates ();
|
Dat_SetIniEndDates ();
|
||||||
Dat_WriteParamsIniEndDates ();
|
Dat_WriteParamsIniEndDates ();
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
||||||
static void Rec_PutParamsWorks (void *Args)
|
static void Rec_PutParamsWorks (__attribute__((unused)) void *Args)
|
||||||
{
|
{
|
||||||
if (Args)
|
Rec_PutParamsStudent (NULL);
|
||||||
{
|
|
||||||
Rec_PutParamsStudent (&Gbl);
|
|
||||||
Par_PutHiddenParamChar ("FullTree",'Y'); // By default, show all files
|
Par_PutHiddenParamChar ("FullTree",'Y'); // By default, show all files
|
||||||
Gbl.FileBrowser.FullTree = true;
|
Gbl.FileBrowser.FullTree = true;
|
||||||
Brw_PutHiddenParamFullTreeIfSelected (&Gbl.FileBrowser.FullTree);
|
Brw_PutHiddenParamFullTreeIfSelected (&Gbl.FileBrowser.FullTree);
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
||||||
static void Rec_PutParamsStudent (void *Args)
|
static void Rec_PutParamsStudent (__attribute__((unused)) void *Args)
|
||||||
{
|
|
||||||
if (Args)
|
|
||||||
{
|
{
|
||||||
Par_PutHiddenParamString (NULL,"UsrCodStd",Gbl.Record.UsrDat->EncryptedUsrCod);
|
Par_PutHiddenParamString (NULL,"UsrCodStd",Gbl.Record.UsrDat->EncryptedUsrCod);
|
||||||
Grp_PutParamAllGroups ();
|
Grp_PutParamAllGroups ();
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
||||||
static void Rec_PutParamsMsgUsr (void *Args)
|
static void Rec_PutParamsMsgUsr (__attribute__((unused)) void *Args)
|
||||||
{
|
{
|
||||||
if (Args)
|
Rec_PutParamUsrCodEncrypted (NULL);
|
||||||
{
|
|
||||||
Rec_PutParamUsrCodEncrypted (Args);
|
|
||||||
Grp_PutParamAllGroups ();
|
Grp_PutParamAllGroups ();
|
||||||
Par_PutHiddenParamChar ("ShowOnlyOneRecipient",'Y');
|
Par_PutHiddenParamChar ("ShowOnlyOneRecipient",'Y');
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
/*********************** Show institution in record card *********************/
|
/*********************** Show institution in record card *********************/
|
||||||
|
|
|
@ -167,7 +167,7 @@ void Rec_ShowSharedRecordUnmodifiable (struct UsrData *UsrDat);
|
||||||
void Rec_ShowPublicSharedRecordOtherUsr (void);
|
void Rec_ShowPublicSharedRecordOtherUsr (void);
|
||||||
void Rec_ShowSharedUsrRecord (Rec_SharedRecordViewType_t TypeOfView,
|
void Rec_ShowSharedUsrRecord (Rec_SharedRecordViewType_t TypeOfView,
|
||||||
struct UsrData *UsrDat,const char *Anchor);
|
struct UsrData *UsrDat,const char *Anchor);
|
||||||
void Rec_PutParamUsrCodEncrypted (void *Args);
|
void Rec_PutParamUsrCodEncrypted (__attribute__((unused)) void *Args);
|
||||||
|
|
||||||
void Rec_UpdateMyRecord (void);
|
void Rec_UpdateMyRecord (void);
|
||||||
Rol_Role_t Rec_GetRoleFromRecordForm (void);
|
Rol_Role_t Rec_GetRoleFromRecordForm (void);
|
||||||
|
|
Loading…
Reference in New Issue
Block a user