mirror of https://github.com/acanas/swad-core.git
Version19.169.3
This commit is contained in:
parent
808aea27cc
commit
ca39e3aa52
|
@ -2740,7 +2740,7 @@ void Att_ReqListUsrsAttendanceCrs (void *TypeOfView)
|
||||||
extern const char *Txt_View_attendance;
|
extern const char *Txt_View_attendance;
|
||||||
struct Att_Events Events;
|
struct Att_Events Events;
|
||||||
|
|
||||||
switch (*(Att_TypeOfView_t *) TypeOfView)
|
switch (*((Att_TypeOfView_t *) TypeOfView))
|
||||||
{
|
{
|
||||||
case Att_VIEW_SEL_USR:
|
case Att_VIEW_SEL_USR:
|
||||||
case Att_PRNT_SEL_USR:
|
case Att_PRNT_SEL_USR:
|
||||||
|
@ -2896,7 +2896,7 @@ static void Att_ListOrPrintUsrsAttendanceCrs (void *TypeOfView)
|
||||||
long *LstSelectedUsrCods;
|
long *LstSelectedUsrCods;
|
||||||
unsigned NumAttEvent;
|
unsigned NumAttEvent;
|
||||||
|
|
||||||
switch (*(Att_TypeOfView_t *) TypeOfView)
|
switch (*((Att_TypeOfView_t *) TypeOfView))
|
||||||
{
|
{
|
||||||
case Att_VIEW_SEL_USR:
|
case Att_VIEW_SEL_USR:
|
||||||
case Att_PRNT_SEL_USR:
|
case Att_PRNT_SEL_USR:
|
||||||
|
@ -2934,7 +2934,7 @@ static void Att_ListOrPrintUsrsAttendanceCrs (void *TypeOfView)
|
||||||
Att_GetListSelectedAttCods (&Events);
|
Att_GetListSelectedAttCods (&Events);
|
||||||
|
|
||||||
/***** Begin box *****/
|
/***** Begin box *****/
|
||||||
switch (*(Att_TypeOfView_t *) TypeOfView)
|
switch (*((Att_TypeOfView_t *) TypeOfView))
|
||||||
{
|
{
|
||||||
case Att_VIEW_SEL_USR:
|
case Att_VIEW_SEL_USR:
|
||||||
Box_BoxBegin (NULL,Txt_Attendance_list,
|
Box_BoxBegin (NULL,Txt_Attendance_list,
|
||||||
|
@ -2951,13 +2951,14 @@ static void Att_ListOrPrintUsrsAttendanceCrs (void *TypeOfView)
|
||||||
}
|
}
|
||||||
|
|
||||||
/***** List events to select *****/
|
/***** List events to select *****/
|
||||||
Att_ListEventsToSelect (&Events,*(Att_TypeOfView_t *) TypeOfView);
|
Att_ListEventsToSelect (&Events,*((Att_TypeOfView_t *) TypeOfView));
|
||||||
|
|
||||||
/***** Get my preference about photos in users' list for current course *****/
|
/***** Get my preference about photos in users' list for current course *****/
|
||||||
Usr_GetMyPrefAboutListWithPhotosFromDB ();
|
Usr_GetMyPrefAboutListWithPhotosFromDB ();
|
||||||
|
|
||||||
/***** Show table with attendances for every student in list *****/
|
/***** Show table with attendances for every student in list *****/
|
||||||
Att_ListUsrsAttendanceTable (&Events,*(Att_TypeOfView_t *) TypeOfView,NumUsrsInList,LstSelectedUsrCods);
|
Att_ListUsrsAttendanceTable (&Events,*((Att_TypeOfView_t *) TypeOfView),
|
||||||
|
NumUsrsInList,LstSelectedUsrCods);
|
||||||
|
|
||||||
/***** Show details or put button to show details *****/
|
/***** Show details or put button to show details *****/
|
||||||
if (Events.ShowDetails)
|
if (Events.ShowDetails)
|
||||||
|
|
|
@ -1581,7 +1581,7 @@ static void Ctr_ShowAlertAndButtonToGoToCtr (void)
|
||||||
static void Ctr_PutParamGoToCtr (void *CtrCod)
|
static void Ctr_PutParamGoToCtr (void *CtrCod)
|
||||||
{
|
{
|
||||||
if (CtrCod)
|
if (CtrCod)
|
||||||
Ctr_PutParamCtrCod (*(long *) CtrCod);
|
Ctr_PutParamCtrCod (*((long *) CtrCod));
|
||||||
}
|
}
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
|
@ -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.2 (2020-04-08)"
|
#define Log_PLATFORM_VERSION "SWAD 19.169.3 (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.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)
|
||||||
Version 19.169.1: Apr 08, 2020 Mark some parameters as unused. (284999 lines)
|
Version 19.169.1: Apr 08, 2020 Mark some parameters as unused. (284999 lines)
|
||||||
Version 19.169: Apr 08, 2020 Code refactoring in games and matches. (285024 lines)
|
Version 19.169: Apr 08, 2020 Code refactoring in games and matches. (285024 lines)
|
||||||
|
|
|
@ -1588,7 +1588,7 @@ static void Cty_PutParamGoToCty (void *CtyCod)
|
||||||
{
|
{
|
||||||
if (CtyCod)
|
if (CtyCod)
|
||||||
/***** Put parameter *****/
|
/***** Put parameter *****/
|
||||||
Cty_PutParamCtyCod (*(long *) CtyCod);
|
Cty_PutParamCtyCod (*((long *) CtyCod));
|
||||||
}
|
}
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
|
@ -79,12 +79,12 @@ static void Deg_CreateDegree (unsigned Status);
|
||||||
|
|
||||||
static void Deg_ListDegrees (void);
|
static void Deg_ListDegrees (void);
|
||||||
static bool Deg_CheckIfICanCreateDegrees (void);
|
static bool Deg_CheckIfICanCreateDegrees (void);
|
||||||
static void Deg_PutIconsListingDegrees (void *Args);
|
static void Deg_PutIconsListingDegrees (__attribute__((unused)) void *Args);
|
||||||
static void Deg_PutIconToEditDegrees (void);
|
static void Deg_PutIconToEditDegrees (void);
|
||||||
static void Deg_ListOneDegreeForSeeing (struct Degree *Deg,unsigned NumDeg);
|
static void Deg_ListOneDegreeForSeeing (struct Degree *Deg,unsigned NumDeg);
|
||||||
|
|
||||||
static void Deg_EditDegreesInternal (void);
|
static void Deg_EditDegreesInternal (void);
|
||||||
static void Deg_PutIconsEditingDegrees (void *Args);
|
static void Deg_PutIconsEditingDegrees (__attribute__((unused)) void *Args);
|
||||||
|
|
||||||
static void Deg_RecFormRequestOrCreateDeg (unsigned Status);
|
static void Deg_RecFormRequestOrCreateDeg (unsigned Status);
|
||||||
static void Deg_PutParamOtherDegCod (long DegCod);
|
static void Deg_PutParamOtherDegCod (long DegCod);
|
||||||
|
@ -94,7 +94,7 @@ static void Deg_GetDataOfDegreeFromRow (struct Degree *Deg,MYSQL_ROW row);
|
||||||
static void Deg_UpdateDegNameDB (long DegCod,const char *FieldName,const char *NewDegName);
|
static void Deg_UpdateDegNameDB (long DegCod,const char *FieldName,const char *NewDegName);
|
||||||
|
|
||||||
static void Deg_ShowAlertAndButtonToGoToDeg (void);
|
static void Deg_ShowAlertAndButtonToGoToDeg (void);
|
||||||
static void Deg_PutParamGoToDeg (void *Args);
|
static void Deg_PutParamGoToDeg (void *DegCod);
|
||||||
|
|
||||||
static void Deg_EditingDegreeConstructor (void);
|
static void Deg_EditingDegreeConstructor (void);
|
||||||
static void Deg_EditingDegreeDestructor (void);
|
static void Deg_EditingDegreeDestructor (void);
|
||||||
|
@ -767,7 +767,7 @@ static void Deg_ListDegrees (void)
|
||||||
/***** Begin box *****/
|
/***** Begin box *****/
|
||||||
Box_BoxBegin (NULL,Str_BuildStringStr (Txt_Degrees_of_CENTRE_X,
|
Box_BoxBegin (NULL,Str_BuildStringStr (Txt_Degrees_of_CENTRE_X,
|
||||||
Gbl.Hierarchy.Ctr.ShrtName),
|
Gbl.Hierarchy.Ctr.ShrtName),
|
||||||
Deg_PutIconsListingDegrees,&Gbl,
|
Deg_PutIconsListingDegrees,NULL,
|
||||||
Hlp_CENTRE_Degrees,Box_NOT_CLOSABLE);
|
Hlp_CENTRE_Degrees,Box_NOT_CLOSABLE);
|
||||||
Str_FreeString ();
|
Str_FreeString ();
|
||||||
|
|
||||||
|
@ -815,20 +815,17 @@ static bool Deg_CheckIfICanCreateDegrees (void)
|
||||||
/***************** Put contextual icons in list of degrees *******************/
|
/***************** Put contextual icons in list of degrees *******************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
static void Deg_PutIconsListingDegrees (void *Args)
|
static void Deg_PutIconsListingDegrees (__attribute__((unused)) void *Args)
|
||||||
{
|
{
|
||||||
if (Args)
|
/***** Put icon to edit degrees *****/
|
||||||
{
|
if (Deg_CheckIfICanCreateDegrees ())
|
||||||
/***** Put icon to edit degrees *****/
|
Deg_PutIconToEditDegrees ();
|
||||||
if (Deg_CheckIfICanCreateDegrees ())
|
|
||||||
Deg_PutIconToEditDegrees ();
|
|
||||||
|
|
||||||
/***** Put icon to view degree types *****/
|
/***** Put icon to view degree types *****/
|
||||||
DT_PutIconToViewDegreeTypes ();
|
DT_PutIconToViewDegreeTypes ();
|
||||||
|
|
||||||
/***** Put icon to show a figure *****/
|
/***** Put icon to show a figure *****/
|
||||||
Fig_PutIconToShowFigure (Fig_HIERARCHY);
|
Fig_PutIconToShowFigure (Fig_HIERARCHY);
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
@ -953,7 +950,7 @@ static void Deg_EditDegreesInternal (void)
|
||||||
/***** Begin box *****/
|
/***** Begin box *****/
|
||||||
Box_BoxBegin (NULL,Str_BuildStringStr (Txt_Degrees_of_CENTRE_X,
|
Box_BoxBegin (NULL,Str_BuildStringStr (Txt_Degrees_of_CENTRE_X,
|
||||||
Gbl.Hierarchy.Ctr.ShrtName),
|
Gbl.Hierarchy.Ctr.ShrtName),
|
||||||
Deg_PutIconsEditingDegrees,&Gbl,
|
Deg_PutIconsEditingDegrees,NULL,
|
||||||
Hlp_CENTRE_Degrees,Box_NOT_CLOSABLE);
|
Hlp_CENTRE_Degrees,Box_NOT_CLOSABLE);
|
||||||
Str_FreeString ();
|
Str_FreeString ();
|
||||||
|
|
||||||
|
@ -990,19 +987,16 @@ static void Deg_EditDegreesInternal (void)
|
||||||
/**************** Put contextual icons in edition of degrees *****************/
|
/**************** Put contextual icons in edition of degrees *****************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
static void Deg_PutIconsEditingDegrees (void *Args)
|
static void Deg_PutIconsEditingDegrees (__attribute__((unused)) void *Args)
|
||||||
{
|
{
|
||||||
if (Args)
|
/***** Put icon to view degrees *****/
|
||||||
{
|
Deg_PutIconToViewDegrees ();
|
||||||
/***** Put icon to view degrees *****/
|
|
||||||
Deg_PutIconToViewDegrees ();
|
|
||||||
|
|
||||||
/***** Put icon to view types of degree *****/
|
/***** Put icon to view types of degree *****/
|
||||||
DT_PutIconToViewDegreeTypes ();
|
DT_PutIconToViewDegreeTypes ();
|
||||||
|
|
||||||
/***** Put icon to show a figure *****/
|
/***** Put icon to show a figure *****/
|
||||||
Fig_PutIconToShowFigure (Fig_HIERARCHY);
|
Fig_PutIconToShowFigure (Fig_HIERARCHY);
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
@ -1809,7 +1803,7 @@ static void Deg_ShowAlertAndButtonToGoToDeg (void)
|
||||||
{
|
{
|
||||||
/***** Alert with button to go to degree *****/
|
/***** Alert with button to go to degree *****/
|
||||||
Ale_ShowLastAlertAndButton (ActSeeCrs,NULL,NULL,
|
Ale_ShowLastAlertAndButton (ActSeeCrs,NULL,NULL,
|
||||||
Deg_PutParamGoToDeg,&Gbl,
|
Deg_PutParamGoToDeg,&Deg_EditingDeg->DegCod,
|
||||||
Btn_CONFIRM_BUTTON,
|
Btn_CONFIRM_BUTTON,
|
||||||
Hie_BuildGoToMsg (Deg_EditingDeg->ShrtName));
|
Hie_BuildGoToMsg (Deg_EditingDeg->ShrtName));
|
||||||
Hie_FreeGoToMsg ();
|
Hie_FreeGoToMsg ();
|
||||||
|
@ -1819,10 +1813,10 @@ static void Deg_ShowAlertAndButtonToGoToDeg (void)
|
||||||
Ale_ShowAlerts (NULL);
|
Ale_ShowAlerts (NULL);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void Deg_PutParamGoToDeg (void *Args)
|
static void Deg_PutParamGoToDeg (void *DegCod)
|
||||||
{
|
{
|
||||||
if (Args)
|
if (DegCod)
|
||||||
Deg_PutParamDegCod (Deg_EditingDeg->DegCod);
|
Deg_PutParamDegCod (*((long *) DegCod));
|
||||||
}
|
}
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
|
@ -59,7 +59,7 @@ extern struct Globals Gbl;
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
static void DegCfg_Configuration (bool PrintView);
|
static void DegCfg_Configuration (bool PrintView);
|
||||||
static void DegCfg_PutIconsToPrintAndUpload (void *Args);
|
static void DegCfg_PutIconsToPrintAndUpload (__attribute__((unused)) void *Args);
|
||||||
static void DegCfg_Title (bool PutLink);
|
static void DegCfg_Title (bool PutLink);
|
||||||
static void DegCfg_Centre (bool PrintView,bool PutForm);
|
static void DegCfg_Centre (bool PrintView,bool PutForm);
|
||||||
static void DegCfg_FullName (bool PutForm);
|
static void DegCfg_FullName (bool PutForm);
|
||||||
|
@ -122,7 +122,7 @@ static void DegCfg_Configuration (bool PrintView)
|
||||||
NULL,Box_NOT_CLOSABLE);
|
NULL,Box_NOT_CLOSABLE);
|
||||||
else
|
else
|
||||||
Box_BoxBegin (NULL,NULL,
|
Box_BoxBegin (NULL,NULL,
|
||||||
DegCfg_PutIconsToPrintAndUpload,&Gbl,
|
DegCfg_PutIconsToPrintAndUpload,NULL,
|
||||||
Hlp_DEGREE_Information,Box_NOT_CLOSABLE);
|
Hlp_DEGREE_Information,Box_NOT_CLOSABLE);
|
||||||
|
|
||||||
/***** Title *****/
|
/***** Title *****/
|
||||||
|
@ -176,20 +176,17 @@ static void DegCfg_Configuration (bool PrintView)
|
||||||
/************ Put contextual icons in configuration of a degree **************/
|
/************ Put contextual icons in configuration of a degree **************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
static void DegCfg_PutIconsToPrintAndUpload (void *Args)
|
static void DegCfg_PutIconsToPrintAndUpload (__attribute__((unused)) void *Args)
|
||||||
{
|
{
|
||||||
if (Args)
|
/***** Link to print info about degree *****/
|
||||||
{
|
Ico_PutContextualIconToPrint (ActPrnDegInf,
|
||||||
/***** Link to print info about degree *****/
|
NULL,NULL);
|
||||||
Ico_PutContextualIconToPrint (ActPrnDegInf,
|
|
||||||
NULL,NULL);
|
|
||||||
|
|
||||||
if (Gbl.Usrs.Me.Role.Logged >= Rol_DEG_ADM)
|
if (Gbl.Usrs.Me.Role.Logged >= Rol_DEG_ADM)
|
||||||
// Only degree admins, centre admins, institution admins and system admins
|
// Only degree admins, centre admins, institution admins and system admins
|
||||||
// have permission to upload logo of the degree
|
// have permission to upload logo of the degree
|
||||||
/***** Link to upload logo of degree *****/
|
/***** Link to upload logo of degree *****/
|
||||||
Lgo_PutIconToChangeLogo (Hie_DEG);
|
Lgo_PutIconToChangeLogo (Hie_DEG);
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
|
@ -75,7 +75,7 @@ static void DT_ListDegreeTypes (Act_Action_t NextAction,
|
||||||
DT_Order_t SelectedOrder);
|
DT_Order_t SelectedOrder);
|
||||||
|
|
||||||
static void DT_EditDegreeTypesInternal (void);
|
static void DT_EditDegreeTypesInternal (void);
|
||||||
static void DT_PutIconsEditingDegreeTypes (void *Args);
|
static void DT_PutIconsEditingDegreeTypes (__attribute__((unused)) void *Args);
|
||||||
|
|
||||||
static void DT_ListDegreeTypesForSeeing (void);
|
static void DT_ListDegreeTypesForSeeing (void);
|
||||||
static void DT_PutIconsListingDegTypes (__attribute__((unused)) void *Args);
|
static void DT_PutIconsListingDegTypes (__attribute__((unused)) void *Args);
|
||||||
|
@ -265,7 +265,7 @@ static void DT_EditDegreeTypesInternal (void)
|
||||||
|
|
||||||
/***** Begin box *****/
|
/***** Begin box *****/
|
||||||
Box_BoxBegin (NULL,Txt_Types_of_degree,
|
Box_BoxBegin (NULL,Txt_Types_of_degree,
|
||||||
DT_PutIconsEditingDegreeTypes,&Gbl,
|
DT_PutIconsEditingDegreeTypes,NULL,
|
||||||
Hlp_CENTRE_DegreeTypes_edit,Box_NOT_CLOSABLE);
|
Hlp_CENTRE_DegreeTypes_edit,Box_NOT_CLOSABLE);
|
||||||
|
|
||||||
/***** Put a form to create a new degree type *****/
|
/***** Put a form to create a new degree type *****/
|
||||||
|
@ -286,19 +286,16 @@ static void DT_EditDegreeTypesInternal (void)
|
||||||
/************ Put contextual icons when editing degree types *****************/
|
/************ Put contextual icons when editing degree types *****************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
static void DT_PutIconsEditingDegreeTypes (void *Args)
|
static void DT_PutIconsEditingDegreeTypes (__attribute__((unused)) void *Args)
|
||||||
{
|
{
|
||||||
if (Args)
|
/***** Put icon to view degree types *****/
|
||||||
{
|
DT_PutIconToViewDegreeTypes ();
|
||||||
/***** Put icon to view degree types *****/
|
|
||||||
DT_PutIconToViewDegreeTypes ();
|
|
||||||
|
|
||||||
/***** Put icon to view degrees *****/
|
/***** Put icon to view degrees *****/
|
||||||
Deg_PutIconToViewDegrees ();
|
Deg_PutIconToViewDegrees ();
|
||||||
|
|
||||||
/***** Put icon to show a figure *****/
|
/***** Put icon to show a figure *****/
|
||||||
Fig_PutIconToShowFigure (Fig_DEGREE_TYPES);
|
Fig_PutIconToShowFigure (Fig_DEGREE_TYPES);
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
|
@ -67,7 +67,7 @@ static struct Department *Dpt_EditingDpt = NULL; // Static variable to keep the
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
static void Dpt_GetParamDptOrder (void);
|
static void Dpt_GetParamDptOrder (void);
|
||||||
static void Dpt_PutIconToEditDpts (void *Args);
|
static void Dpt_PutIconToEditDpts (__attribute__((unused)) void *Args);
|
||||||
static void Dpt_EditDepartmentsInternal (void);
|
static void Dpt_EditDepartmentsInternal (void);
|
||||||
static void Dpt_ListDepartmentsForEdition (void);
|
static void Dpt_ListDepartmentsForEdition (void);
|
||||||
static void Dpt_PutParamDptCod (long DptCod);
|
static void Dpt_PutParamDptCod (long DptCod);
|
||||||
|
@ -114,7 +114,7 @@ void Dpt_SeeDepts (void)
|
||||||
if (Gbl.Usrs.Me.Role.Logged == Rol_SYS_ADM)
|
if (Gbl.Usrs.Me.Role.Logged == Rol_SYS_ADM)
|
||||||
Box_BoxTableBegin (NULL,Str_BuildStringStr (Txt_Departments_of_INSTITUTION_X,
|
Box_BoxTableBegin (NULL,Str_BuildStringStr (Txt_Departments_of_INSTITUTION_X,
|
||||||
Gbl.Hierarchy.Ins.FullName),
|
Gbl.Hierarchy.Ins.FullName),
|
||||||
Dpt_PutIconToEditDpts,&Gbl,
|
Dpt_PutIconToEditDpts,NULL,
|
||||||
Hlp_INSTITUTION_Departments,Box_NOT_CLOSABLE,2);
|
Hlp_INSTITUTION_Departments,Box_NOT_CLOSABLE,2);
|
||||||
else
|
else
|
||||||
Box_BoxTableBegin (NULL,Str_BuildStringStr (Txt_Departments_of_INSTITUTION_X,
|
Box_BoxTableBegin (NULL,Str_BuildStringStr (Txt_Departments_of_INSTITUTION_X,
|
||||||
|
@ -230,11 +230,10 @@ static void Dpt_GetParamDptOrder (void)
|
||||||
/************************ Put icon to edit departments ***********************/
|
/************************ Put icon to edit departments ***********************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
static void Dpt_PutIconToEditDpts (void *Args)
|
static void Dpt_PutIconToEditDpts (__attribute__((unused)) void *Args)
|
||||||
{
|
{
|
||||||
if (Args)
|
Ico_PutContextualIconToEdit (ActEdiDpt,NULL,
|
||||||
Ico_PutContextualIconToEdit (ActEdiDpt,NULL,
|
NULL,NULL);
|
||||||
NULL,NULL);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
82
swad_exam.c
82
swad_exam.c
|
@ -77,7 +77,7 @@ static long Exa_GetParamsExamAnnouncement (void);
|
||||||
static void Exa_AllocMemExamAnnouncement (void);
|
static void Exa_AllocMemExamAnnouncement (void);
|
||||||
static void Exa_UpdateNumUsrsNotifiedByEMailAboutExamAnnouncement (long ExaCod,unsigned NumUsrsToBeNotifiedByEMail);
|
static void Exa_UpdateNumUsrsNotifiedByEMailAboutExamAnnouncement (long ExaCod,unsigned NumUsrsToBeNotifiedByEMail);
|
||||||
static void Exa_ListExamAnnouncements (Exa_TypeViewExamAnnouncement_t TypeViewExamAnnouncement);
|
static void Exa_ListExamAnnouncements (Exa_TypeViewExamAnnouncement_t TypeViewExamAnnouncement);
|
||||||
static void Exa_PutIconToCreateNewExamAnnouncement (void *Args);
|
static void Exa_PutIconToCreateNewExamAnnouncement (__attribute__((unused)) void *Args);
|
||||||
static void Exa_PutButtonToCreateNewExamAnnouncement (void);
|
static void Exa_PutButtonToCreateNewExamAnnouncement (void);
|
||||||
|
|
||||||
static long Exa_AddExamAnnouncementToDB (void);
|
static long Exa_AddExamAnnouncementToDB (void);
|
||||||
|
@ -86,8 +86,8 @@ static void Exa_GetDataExamAnnouncementFromDB (long ExaCod);
|
||||||
static void Exa_ShowExamAnnouncement (long ExaCod,
|
static void Exa_ShowExamAnnouncement (long ExaCod,
|
||||||
Exa_TypeViewExamAnnouncement_t TypeViewExamAnnouncement,
|
Exa_TypeViewExamAnnouncement_t TypeViewExamAnnouncement,
|
||||||
bool HighLight);
|
bool HighLight);
|
||||||
static void Exa_PutIconsExamAnnouncement (void *Args);
|
static void Exa_PutIconsExamAnnouncement (__attribute__((unused)) void *Args);
|
||||||
static void Exa_PutParamExaCodToEdit (void *Args);
|
static void Exa_PutParamExaCodToEdit (void *ExaCod);
|
||||||
static long Exa_GetParamExaCod (void);
|
static long Exa_GetParamExaCod (void);
|
||||||
|
|
||||||
static void Exa_GetNotifContentExamAnnouncement (char **ContentStr);
|
static void Exa_GetNotifContentExamAnnouncement (char **ContentStr);
|
||||||
|
@ -395,7 +395,7 @@ void Exa_ReqRemoveExamAnnouncement (void)
|
||||||
/* End alert */
|
/* End alert */
|
||||||
|
|
||||||
Ale_ShowAlertAndButton2 (ActRemExaAnn,NULL,NULL,
|
Ale_ShowAlertAndButton2 (ActRemExaAnn,NULL,NULL,
|
||||||
Exa_PutParamExaCodToEdit,NULL,
|
Exa_PutParamExaCodToEdit,&Gbl.ExamAnns.ExaCod,
|
||||||
Btn_REMOVE_BUTTON,Txt_Remove);
|
Btn_REMOVE_BUTTON,Txt_Remove);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -577,7 +577,7 @@ static void Exa_ListExamAnnouncements (Exa_TypeViewExamAnnouncement_t TypeViewEx
|
||||||
/***** Begin box *****/
|
/***** Begin box *****/
|
||||||
if (ICanEdit)
|
if (ICanEdit)
|
||||||
Box_BoxBegin (NULL,Txt_Announcements_of_exams,
|
Box_BoxBegin (NULL,Txt_Announcements_of_exams,
|
||||||
Exa_PutIconToCreateNewExamAnnouncement,&Gbl,
|
Exa_PutIconToCreateNewExamAnnouncement,NULL,
|
||||||
Hlp_ASSESSMENT_Announcements,Box_NOT_CLOSABLE);
|
Hlp_ASSESSMENT_Announcements,Box_NOT_CLOSABLE);
|
||||||
else
|
else
|
||||||
Box_BoxBegin (NULL,Txt_Announcements_of_exams,
|
Box_BoxBegin (NULL,Txt_Announcements_of_exams,
|
||||||
|
@ -638,14 +638,13 @@ static void Exa_ListExamAnnouncements (Exa_TypeViewExamAnnouncement_t TypeViewEx
|
||||||
/***************** Put icon to create a new exam announcement ****************/
|
/***************** Put icon to create a new exam announcement ****************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
static void Exa_PutIconToCreateNewExamAnnouncement (void *Args)
|
static void Exa_PutIconToCreateNewExamAnnouncement (__attribute__((unused)) void *Args)
|
||||||
{
|
{
|
||||||
extern const char *Txt_New_announcement_OF_EXAM;
|
extern const char *Txt_New_announcement_OF_EXAM;
|
||||||
|
|
||||||
if (Args)
|
Ico_PutContextualIconToAdd (ActEdiExaAnn,NULL,
|
||||||
Ico_PutContextualIconToAdd (ActEdiExaAnn,NULL,
|
NULL,NULL,
|
||||||
NULL,NULL,
|
Txt_New_announcement_OF_EXAM);
|
||||||
Txt_New_announcement_OF_EXAM);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
@ -1010,7 +1009,7 @@ static void Exa_ShowExamAnnouncement (long ExaCod,
|
||||||
|
|
||||||
/* Start highlighted box */
|
/* Start highlighted box */
|
||||||
Box_BoxShadowBegin (Width,NULL,
|
Box_BoxShadowBegin (Width,NULL,
|
||||||
FunctionToDrawContextualIcons,&Gbl,
|
FunctionToDrawContextualIcons,NULL,
|
||||||
HelpLink);
|
HelpLink);
|
||||||
}
|
}
|
||||||
else // Don't highlight
|
else // Don't highlight
|
||||||
|
@ -1493,51 +1492,48 @@ static void Exa_ShowExamAnnouncement (long ExaCod,
|
||||||
/********* Put icons to remove / edit / print an exam announcement ***********/
|
/********* Put icons to remove / edit / print an exam announcement ***********/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
static void Exa_PutIconsExamAnnouncement (void *Args)
|
static void Exa_PutIconsExamAnnouncement (__attribute__((unused)) void *Args)
|
||||||
{
|
{
|
||||||
if (Args)
|
if (Gbl.Usrs.Me.Role.Logged == Rol_TCH ||
|
||||||
|
Gbl.Usrs.Me.Role.Logged == Rol_SYS_ADM)
|
||||||
{
|
{
|
||||||
if (Gbl.Usrs.Me.Role.Logged == Rol_TCH ||
|
/***** Link to remove this exam announcement *****/
|
||||||
Gbl.Usrs.Me.Role.Logged == Rol_SYS_ADM)
|
Ico_PutContextualIconToRemove (ActReqRemExaAnn,
|
||||||
|
Exa_PutParamExaCodToEdit,&Gbl.ExamAnns.ExaCod);
|
||||||
|
|
||||||
|
/***** Put form to hide/show exam announement *****/
|
||||||
|
switch (Gbl.ExamAnns.ExaDat.Status)
|
||||||
{
|
{
|
||||||
/***** Link to remove this exam announcement *****/
|
case Exa_VISIBLE_EXAM_ANNOUNCEMENT:
|
||||||
Ico_PutContextualIconToRemove (ActReqRemExaAnn,
|
Ico_PutContextualIconToHide (ActHidExaAnn,Gbl.ExamAnns.Anchor,
|
||||||
Exa_PutParamExaCodToEdit,NULL);
|
Exa_PutParamExaCodToEdit,&Gbl.ExamAnns.ExaCod);
|
||||||
|
break;
|
||||||
/***** Put form to hide/show exam announement *****/
|
case Exa_HIDDEN_EXAM_ANNOUNCEMENT:
|
||||||
switch (Gbl.ExamAnns.ExaDat.Status)
|
Ico_PutContextualIconToUnhide (ActShoExaAnn,Gbl.ExamAnns.Anchor,
|
||||||
{
|
Exa_PutParamExaCodToEdit,&Gbl.ExamAnns.ExaCod);
|
||||||
case Exa_VISIBLE_EXAM_ANNOUNCEMENT:
|
break;
|
||||||
Ico_PutContextualIconToHide (ActHidExaAnn,Gbl.ExamAnns.Anchor,
|
case Exa_DELETED_EXAM_ANNOUNCEMENT: // Not applicable here
|
||||||
Exa_PutParamExaCodToEdit,NULL);
|
break;
|
||||||
break;
|
|
||||||
case Exa_HIDDEN_EXAM_ANNOUNCEMENT:
|
|
||||||
Ico_PutContextualIconToUnhide (ActShoExaAnn,Gbl.ExamAnns.Anchor,
|
|
||||||
Exa_PutParamExaCodToEdit,NULL);
|
|
||||||
break;
|
|
||||||
case Exa_DELETED_EXAM_ANNOUNCEMENT: // Not applicable here
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
|
|
||||||
/***** Link to edit this exam announcement *****/
|
|
||||||
Ico_PutContextualIconToEdit (ActEdiExaAnn,NULL,
|
|
||||||
Exa_PutParamExaCodToEdit,NULL);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/***** Link to print view *****/
|
/***** Link to edit this exam announcement *****/
|
||||||
Ico_PutContextualIconToPrint (ActPrnExaAnn,
|
Ico_PutContextualIconToEdit (ActEdiExaAnn,NULL,
|
||||||
Exa_PutParamExaCodToEdit,NULL);
|
Exa_PutParamExaCodToEdit,&Gbl.ExamAnns.ExaCod);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/***** Link to print view *****/
|
||||||
|
Ico_PutContextualIconToPrint (ActPrnExaAnn,
|
||||||
|
Exa_PutParamExaCodToEdit,&Gbl.ExamAnns.ExaCod);
|
||||||
}
|
}
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
/*************** Param with the code of an exam announcement *****************/
|
/*************** Param with the code of an exam announcement *****************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
static void Exa_PutParamExaCodToEdit (void *Args)
|
static void Exa_PutParamExaCodToEdit (void *ExaCod)
|
||||||
{
|
{
|
||||||
if (Args)
|
if (ExaCod)
|
||||||
Exa_PutHiddenParamExaCod (Gbl.ExamAnns.ExaCod);
|
Exa_PutHiddenParamExaCod (*((long *) ExaCod));
|
||||||
}
|
}
|
||||||
|
|
||||||
void Exa_PutHiddenParamExaCod (long ExaCod)
|
void Exa_PutHiddenParamExaCod (long ExaCod)
|
||||||
|
|
|
@ -1285,7 +1285,7 @@ static void Brw_GetSelectedGroupData (struct GroupData *GrpDat,bool AbortOnError
|
||||||
static void Brw_ShowDataOwnerAsgWrk (struct UsrData *UsrDat);
|
static void Brw_ShowDataOwnerAsgWrk (struct UsrData *UsrDat);
|
||||||
static void Brw_ShowFileBrowserOrWorksInternal (__attribute__((unused)) void *Args);
|
static void Brw_ShowFileBrowserOrWorksInternal (__attribute__((unused)) void *Args);
|
||||||
static void Brw_ShowFileBrowser (void);
|
static void Brw_ShowFileBrowser (void);
|
||||||
static void Brw_PutIconsFileBrowser (void *Args);
|
static void Brw_PutIconsFileBrowser (__attribute__((unused)) void *Args);
|
||||||
static void Brw_PutIconShowFigure (__attribute__((unused)) void *Args);
|
static void Brw_PutIconShowFigure (__attribute__((unused)) void *Args);
|
||||||
static void Brw_PutButtonToShowEdit (void);
|
static void Brw_PutButtonToShowEdit (void);
|
||||||
static void Brw_WriteTopBeforeShowingFileBrowser (void);
|
static void Brw_WriteTopBeforeShowingFileBrowser (void);
|
||||||
|
@ -3696,7 +3696,7 @@ static void Brw_ShowFileBrowser (void)
|
||||||
Gbl.FileBrowser.Id);
|
Gbl.FileBrowser.Id);
|
||||||
HTM_SECTION_Begin (FileBrowserSectionId);
|
HTM_SECTION_Begin (FileBrowserSectionId);
|
||||||
Box_BoxBegin ("100%",Brw_TitleOfFileBrowser[Gbl.FileBrowser.Type],
|
Box_BoxBegin ("100%",Brw_TitleOfFileBrowser[Gbl.FileBrowser.Type],
|
||||||
Brw_PutIconsFileBrowser,&Gbl,
|
Brw_PutIconsFileBrowser,NULL,
|
||||||
Brw_HelpOfFileBrowser[Gbl.FileBrowser.Type],Box_NOT_CLOSABLE);
|
Brw_HelpOfFileBrowser[Gbl.FileBrowser.Type],Box_NOT_CLOSABLE);
|
||||||
|
|
||||||
/***** Subtitle *****/
|
/***** Subtitle *****/
|
||||||
|
@ -3734,37 +3734,34 @@ static void Brw_ShowFileBrowser (void)
|
||||||
/******************* Put contextual icons in file browser ********************/
|
/******************* Put contextual icons in file browser ********************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
static void Brw_PutIconsFileBrowser (void *Args)
|
static void Brw_PutIconsFileBrowser (__attribute__((unused)) void *Args)
|
||||||
{
|
{
|
||||||
if (Args)
|
/***** Put icon to view / edit file browser *****/
|
||||||
|
switch (Gbl.FileBrowser.IconViewEdit)
|
||||||
{
|
{
|
||||||
/***** Put icon to view / edit file browser *****/
|
case Brw_ICON_NONE:
|
||||||
switch (Gbl.FileBrowser.IconViewEdit)
|
break;
|
||||||
{
|
case Brw_ICON_VIEW:
|
||||||
case Brw_ICON_NONE:
|
Ico_PutContextualIconToView (Brw_ActFromAdmToSee[Gbl.FileBrowser.Type],
|
||||||
break;
|
Brw_PutHiddenParamFullTreeIfSelected,&Gbl.FileBrowser.FullTree);
|
||||||
case Brw_ICON_VIEW:
|
break;
|
||||||
Ico_PutContextualIconToView (Brw_ActFromAdmToSee[Gbl.FileBrowser.Type],
|
case Brw_ICON_EDIT:
|
||||||
Brw_PutHiddenParamFullTreeIfSelected,&Gbl.FileBrowser.FullTree);
|
Ico_PutContextualIconToEdit (Brw_ActFromSeeToAdm[Gbl.FileBrowser.Type],NULL,
|
||||||
break;
|
Brw_PutHiddenParamFullTreeIfSelected,&Gbl.FileBrowser.FullTree);
|
||||||
case Brw_ICON_EDIT:
|
break;
|
||||||
Ico_PutContextualIconToEdit (Brw_ActFromSeeToAdm[Gbl.FileBrowser.Type],NULL,
|
}
|
||||||
Brw_PutHiddenParamFullTreeIfSelected,&Gbl.FileBrowser.FullTree);
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
|
|
||||||
/***** Put icon to show a figure *****/
|
/***** Put icon to show a figure *****/
|
||||||
switch (Gbl.FileBrowser.Type)
|
switch (Gbl.FileBrowser.Type)
|
||||||
{
|
{
|
||||||
case Brw_ADMI_WRK_CRS:
|
case Brw_ADMI_WRK_CRS:
|
||||||
case Brw_ADMI_ASG_CRS:
|
case Brw_ADMI_ASG_CRS:
|
||||||
case Brw_ADMI_DOC_PRJ:
|
case Brw_ADMI_DOC_PRJ:
|
||||||
case Brw_ADMI_ASS_PRJ:
|
case Brw_ADMI_ASS_PRJ:
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
Brw_PutIconShowFigure (NULL);
|
Brw_PutIconShowFigure (NULL);
|
||||||
break;
|
break;
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -79,7 +79,7 @@ static unsigned long Fol_GetUsrsToFollow (unsigned long MaxUsrsToShow,
|
||||||
Fol_WhichUsersSuggestToFollowThem_t WhichUsersSuggestToFollowThem,
|
Fol_WhichUsersSuggestToFollowThem_t WhichUsersSuggestToFollowThem,
|
||||||
MYSQL_RES **mysql_res);
|
MYSQL_RES **mysql_res);
|
||||||
|
|
||||||
static void Fol_PutIconsWhoToFollow (void *Args);
|
static void Fol_PutIconsWhoToFollow (__attribute__((unused)) void *Args);
|
||||||
static void Fol_PutIconToUpdateWhoToFollow (void);
|
static void Fol_PutIconToUpdateWhoToFollow (void);
|
||||||
|
|
||||||
static void Fol_ShowNumberOfFollowingOrFollowers (const struct UsrData *UsrDat,
|
static void Fol_ShowNumberOfFollowingOrFollowers (const struct UsrData *UsrDat,
|
||||||
|
@ -98,7 +98,7 @@ static void Fol_PutIconToUnfollow (struct UsrData *UsrDat);
|
||||||
|
|
||||||
static void Fol_RequestFollowUsrs (Act_Action_t NextAction);
|
static void Fol_RequestFollowUsrs (Act_Action_t NextAction);
|
||||||
static void Fol_RequestUnfollowUsrs (Act_Action_t NextAction);
|
static void Fol_RequestUnfollowUsrs (Act_Action_t NextAction);
|
||||||
static void Fol_PutHiddenParSelectedUsrsCods (void *Args);
|
static void Fol_PutHiddenParSelectedUsrsCods (void *SelectedUsrs);
|
||||||
static void Fol_GetFollowedFromSelectedUsrs (unsigned *NumFollowed,
|
static void Fol_GetFollowedFromSelectedUsrs (unsigned *NumFollowed,
|
||||||
unsigned *NumNotFollowed);
|
unsigned *NumNotFollowed);
|
||||||
|
|
||||||
|
@ -149,7 +149,7 @@ void Fol_SuggestUsrsToFollowMainZone (void)
|
||||||
{
|
{
|
||||||
/***** Begin box and table *****/
|
/***** Begin box and table *****/
|
||||||
Box_BoxTableBegin ("560px",Txt_Who_to_follow,
|
Box_BoxTableBegin ("560px",Txt_Who_to_follow,
|
||||||
Fol_PutIconsWhoToFollow,&Gbl,
|
Fol_PutIconsWhoToFollow,NULL,
|
||||||
Hlp_START_Profiles_who_to_follow,Box_NOT_CLOSABLE,2);
|
Hlp_START_Profiles_who_to_follow,Box_NOT_CLOSABLE,2);
|
||||||
|
|
||||||
/***** Initialize structure with user's data *****/
|
/***** Initialize structure with user's data *****/
|
||||||
|
@ -419,16 +419,13 @@ static unsigned long Fol_GetUsrsToFollow (unsigned long MaxUsrsToShow,
|
||||||
/****************** Put contextual icons in "who to follow" ******************/
|
/****************** Put contextual icons in "who to follow" ******************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
static void Fol_PutIconsWhoToFollow (void *Args)
|
static void Fol_PutIconsWhoToFollow (__attribute__((unused)) void *Args)
|
||||||
{
|
{
|
||||||
if (Args)
|
/***** Put icon to update who to follow *****/
|
||||||
{
|
Fol_PutIconToUpdateWhoToFollow ();
|
||||||
/***** Put icon to update who to follow *****/
|
|
||||||
Fol_PutIconToUpdateWhoToFollow ();
|
|
||||||
|
|
||||||
/***** Put icon to show a figure *****/
|
/***** Put icon to show a figure *****/
|
||||||
Fig_PutIconToShowFigure (Fig_FOLLOW);
|
Fig_PutIconToShowFigure (Fig_FOLLOW);
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
@ -1083,12 +1080,12 @@ static void Fol_RequestFollowUsrs (Act_Action_t NextAction)
|
||||||
{
|
{
|
||||||
if (NumNotFollowed == 1)
|
if (NumNotFollowed == 1)
|
||||||
Ale_ShowAlertAndButton (NextAction,NULL,NULL,
|
Ale_ShowAlertAndButton (NextAction,NULL,NULL,
|
||||||
Fol_PutHiddenParSelectedUsrsCods,&Gbl,
|
Fol_PutHiddenParSelectedUsrsCods,&Gbl.Usrs.Selected,
|
||||||
Btn_CREATE_BUTTON,Txt_Follow,
|
Btn_CREATE_BUTTON,Txt_Follow,
|
||||||
Ale_QUESTION,Txt_Do_you_want_to_follow_the_selected_user_whom_you_do_not_follow_yet);
|
Ale_QUESTION,Txt_Do_you_want_to_follow_the_selected_user_whom_you_do_not_follow_yet);
|
||||||
else
|
else
|
||||||
Ale_ShowAlertAndButton (NextAction,NULL,NULL,
|
Ale_ShowAlertAndButton (NextAction,NULL,NULL,
|
||||||
Fol_PutHiddenParSelectedUsrsCods,&Gbl,
|
Fol_PutHiddenParSelectedUsrsCods,&Gbl.Usrs.Selected,
|
||||||
Btn_CREATE_BUTTON,Txt_Follow,
|
Btn_CREATE_BUTTON,Txt_Follow,
|
||||||
Ale_QUESTION,Txt_Do_you_want_to_follow_the_X_selected_users_whom_you_do_not_follow_yet,
|
Ale_QUESTION,Txt_Do_you_want_to_follow_the_X_selected_users_whom_you_do_not_follow_yet,
|
||||||
NumNotFollowed);
|
NumNotFollowed);
|
||||||
|
@ -1127,12 +1124,12 @@ static void Fol_RequestUnfollowUsrs (Act_Action_t NextAction)
|
||||||
{
|
{
|
||||||
if (NumFollowed == 1)
|
if (NumFollowed == 1)
|
||||||
Ale_ShowAlertAndButton (NextAction,NULL,NULL,
|
Ale_ShowAlertAndButton (NextAction,NULL,NULL,
|
||||||
Fol_PutHiddenParSelectedUsrsCods,&Gbl,
|
Fol_PutHiddenParSelectedUsrsCods,&Gbl.Usrs.Selected,
|
||||||
Btn_CREATE_BUTTON,Txt_Unfollow,
|
Btn_CREATE_BUTTON,Txt_Unfollow,
|
||||||
Ale_QUESTION,Txt_Do_you_want_to_stop_following_the_selected_user_whom_you_follow);
|
Ale_QUESTION,Txt_Do_you_want_to_stop_following_the_selected_user_whom_you_follow);
|
||||||
else
|
else
|
||||||
Ale_ShowAlertAndButton (NextAction,NULL,NULL,
|
Ale_ShowAlertAndButton (NextAction,NULL,NULL,
|
||||||
Fol_PutHiddenParSelectedUsrsCods,&Gbl,
|
Fol_PutHiddenParSelectedUsrsCods,&Gbl.Usrs.Selected,
|
||||||
Btn_CREATE_BUTTON,Txt_Unfollow,
|
Btn_CREATE_BUTTON,Txt_Unfollow,
|
||||||
Ale_QUESTION,Txt_Do_you_want_to_stop_following_the_X_selected_users_whom_you_follow,
|
Ale_QUESTION,Txt_Do_you_want_to_stop_following_the_X_selected_users_whom_you_follow,
|
||||||
NumFollowed);
|
NumFollowed);
|
||||||
|
@ -1142,10 +1139,10 @@ static void Fol_RequestUnfollowUsrs (Act_Action_t NextAction)
|
||||||
Usr_FreeListsSelectedEncryptedUsrsCods (&Gbl.Usrs.Selected);
|
Usr_FreeListsSelectedEncryptedUsrsCods (&Gbl.Usrs.Selected);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void Fol_PutHiddenParSelectedUsrsCods (void *Args)
|
static void Fol_PutHiddenParSelectedUsrsCods (void *SelectedUsrs)
|
||||||
{
|
{
|
||||||
if (Args)
|
if (SelectedUsrs)
|
||||||
Usr_PutHiddenParSelectedUsrsCods (&Gbl.Usrs.Selected);
|
Usr_PutHiddenParSelectedUsrsCods ((struct SelectedUsrs *) SelectedUsrs);
|
||||||
}
|
}
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
|
@ -611,29 +611,7 @@ struct Globals
|
||||||
Dat_StartEndTime_t SelectedOrder;
|
Dat_StartEndTime_t SelectedOrder;
|
||||||
unsigned CurrentPage;
|
unsigned CurrentPage;
|
||||||
} Svys;
|
} Svys;
|
||||||
struct
|
struct Sta_Stats Stat;
|
||||||
{
|
|
||||||
Sta_ClicksGroupedBy_t ClicksGroupedBy;
|
|
||||||
Sta_Role_t Role;
|
|
||||||
Sta_CountType_t CountType;
|
|
||||||
Act_Action_t NumAction;
|
|
||||||
unsigned long FirstRow;
|
|
||||||
unsigned long LastRow;
|
|
||||||
unsigned RowsPerPage;
|
|
||||||
long DegTypCod;
|
|
||||||
long DptCod;
|
|
||||||
char StrIndicatorsSelected[Ind_MAX_SIZE_INDICATORS_SELECTED + 1];
|
|
||||||
bool IndicatorsSelected[1 + Ind_NUM_INDICATORS];
|
|
||||||
struct
|
|
||||||
{
|
|
||||||
Pho_AvgPhotoTypeOfAverage_t TypeOfAverage;
|
|
||||||
Pho_HowComputePhotoSize_t HowComputePhotoSize;
|
|
||||||
Pho_HowOrderDegrees_t HowOrderDegrees;
|
|
||||||
int MaxStds;
|
|
||||||
int MaxStdsWithPhoto;
|
|
||||||
double MaxPercent;
|
|
||||||
} DegPhotos;
|
|
||||||
} Stat;
|
|
||||||
|
|
||||||
/* Cache */
|
/* Cache */
|
||||||
struct
|
struct
|
||||||
|
|
124
swad_group.c
124
swad_group.c
|
@ -97,7 +97,7 @@ static void Grp_ReqEditGroupsInternal2 (Ale_AlertType_t AlertTypeGroups,
|
||||||
|
|
||||||
static void Grp_EditGroupTypes (void);
|
static void Grp_EditGroupTypes (void);
|
||||||
static void Grp_EditGroups (void);
|
static void Grp_EditGroups (void);
|
||||||
static void Grp_PutIconsEditingGroups (void *Args);
|
static void Grp_PutIconsEditingGroups (__attribute__((unused)) void *Args);
|
||||||
static void Grp_PutIconToCreateNewGroup (void);
|
static void Grp_PutIconToCreateNewGroup (void);
|
||||||
|
|
||||||
static void Grp_PutCheckboxAllGrps (Grp_WhichGroups_t GroupsSelectableByStdsOrNETs);
|
static void Grp_PutCheckboxAllGrps (Grp_WhichGroups_t GroupsSelectableByStdsOrNETs);
|
||||||
|
@ -111,14 +111,14 @@ static void Grp_RemoveUsrFromGroup (long UsrCod,long GrpCod);
|
||||||
static void Grp_AddUsrToGroup (struct UsrData *UsrDat,long GrpCod);
|
static void Grp_AddUsrToGroup (struct UsrData *UsrDat,long GrpCod);
|
||||||
|
|
||||||
static void Grp_ListGroupTypesForEdition (void);
|
static void Grp_ListGroupTypesForEdition (void);
|
||||||
static void Grp_PutIconsEditingGroupTypes (void *Args);
|
static void Grp_PutIconsEditingGroupTypes (__attribute__((unused)) void *Args);
|
||||||
static void Grp_PutIconToViewGroups (void);
|
static void Grp_PutIconToViewGroups (void);
|
||||||
static void Grp_PutIconToCreateNewGroupType (void);
|
static void Grp_PutIconToCreateNewGroupType (void);
|
||||||
static void Grp_WriteHeadingGroupTypes (void);
|
static void Grp_WriteHeadingGroupTypes (void);
|
||||||
|
|
||||||
static void Grp_ListGroupsForEdition (void);
|
static void Grp_ListGroupsForEdition (void);
|
||||||
static void Grp_WriteHeadingGroups (void);
|
static void Grp_WriteHeadingGroups (void);
|
||||||
static void Grp_PutIconToEditGroups (void *Args);
|
static void Grp_PutIconToEditGroups (__attribute__((unused)) void *Args);
|
||||||
|
|
||||||
static void Grp_ShowWarningToStdsToChangeGrps (void);
|
static void Grp_ShowWarningToStdsToChangeGrps (void);
|
||||||
static bool Grp_ListGrpsForChangeMySelection (struct GroupType *GrpTyp,
|
static bool Grp_ListGrpsForChangeMySelection (struct GroupType *GrpTyp,
|
||||||
|
@ -146,9 +146,9 @@ static void Grp_CreateGroupType (void);
|
||||||
static void Grp_CreateGroup (void);
|
static void Grp_CreateGroup (void);
|
||||||
|
|
||||||
static void Grp_AskConfirmRemGrpTypWithGrps (unsigned NumGrps);
|
static void Grp_AskConfirmRemGrpTypWithGrps (unsigned NumGrps);
|
||||||
static void Grp_PutParamRemGrpTyp (void *Args);
|
static void Grp_PutParamRemGrpTyp (void *GrpTypCod);
|
||||||
static void Grp_AskConfirmRemGrp (void);
|
static void Grp_AskConfirmRemGrp (void);
|
||||||
static void Grp_PutParamRemGrp (void *Args);
|
static void Grp_PutParamRemGrp (void *GrpCod);
|
||||||
static void Grp_RemoveGroupTypeCompletely (void);
|
static void Grp_RemoveGroupTypeCompletely (void);
|
||||||
static void Grp_RemoveGroupCompletely (void);
|
static void Grp_RemoveGroupCompletely (void);
|
||||||
|
|
||||||
|
@ -287,7 +287,7 @@ static void Grp_EditGroupTypes (void)
|
||||||
|
|
||||||
/***** Begin box *****/
|
/***** Begin box *****/
|
||||||
Box_BoxBegin (NULL,Txt_Types_of_group,
|
Box_BoxBegin (NULL,Txt_Types_of_group,
|
||||||
Grp_PutIconsEditingGroupTypes,&Gbl,
|
Grp_PutIconsEditingGroupTypes,NULL,
|
||||||
Hlp_USERS_Groups,Box_NOT_CLOSABLE);
|
Hlp_USERS_Groups,Box_NOT_CLOSABLE);
|
||||||
|
|
||||||
/***** Put a form to create a new group type *****/
|
/***** Put a form to create a new group type *****/
|
||||||
|
@ -316,7 +316,7 @@ static void Grp_EditGroups (void)
|
||||||
|
|
||||||
/***** Begin box *****/
|
/***** Begin box *****/
|
||||||
Box_BoxBegin (NULL,Txt_Groups,
|
Box_BoxBegin (NULL,Txt_Groups,
|
||||||
Grp_PutIconsEditingGroups,&Gbl,
|
Grp_PutIconsEditingGroups,NULL,
|
||||||
Hlp_USERS_Groups,Box_NOT_CLOSABLE);
|
Hlp_USERS_Groups,Box_NOT_CLOSABLE);
|
||||||
|
|
||||||
/***** Put a form to create a new group *****/
|
/***** Put a form to create a new group *****/
|
||||||
|
@ -337,16 +337,13 @@ static void Grp_EditGroups (void)
|
||||||
/**************** Put contextual icons in edition of groups ******************/
|
/**************** Put contextual icons in edition of groups ******************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
static void Grp_PutIconsEditingGroups (void *Args)
|
static void Grp_PutIconsEditingGroups (__attribute__((unused)) void *Args)
|
||||||
{
|
{
|
||||||
if (Args)
|
/***** Put icon to view groups *****/
|
||||||
{
|
Grp_PutIconToViewGroups ();
|
||||||
/***** Put icon to view groups *****/
|
|
||||||
Grp_PutIconToViewGroups ();
|
|
||||||
|
|
||||||
/***** Put icon to create a new group *****/
|
/***** Put icon to create a new group *****/
|
||||||
Grp_PutIconToCreateNewGroup ();
|
Grp_PutIconToCreateNewGroup ();
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
static void Grp_PutIconToCreateNewGroup (void)
|
static void Grp_PutIconToCreateNewGroup (void)
|
||||||
|
@ -383,7 +380,7 @@ void Grp_ShowFormToSelectSeveralGroups (void (*FuncParams) (void *Args),void *Ar
|
||||||
Gbl.Usrs.Me.Role.Logged == Rol_SYS_ADM);
|
Gbl.Usrs.Me.Role.Logged == Rol_SYS_ADM);
|
||||||
if (ICanEdit)
|
if (ICanEdit)
|
||||||
Box_BoxBegin (NULL,Txt_Groups,
|
Box_BoxBegin (NULL,Txt_Groups,
|
||||||
Grp_PutIconToEditGroups,&Gbl,
|
Grp_PutIconToEditGroups,NULL,
|
||||||
Hlp_USERS_Groups,Box_CLOSABLE);
|
Hlp_USERS_Groups,Box_CLOSABLE);
|
||||||
else
|
else
|
||||||
Box_BoxBegin (NULL,Txt_Groups,
|
Box_BoxBegin (NULL,Txt_Groups,
|
||||||
|
@ -1413,16 +1410,13 @@ static void Grp_ListGroupTypesForEdition (void)
|
||||||
/************ Put contextual icons in edition of types of group **************/
|
/************ Put contextual icons in edition of types of group **************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
static void Grp_PutIconsEditingGroupTypes (void *Args)
|
static void Grp_PutIconsEditingGroupTypes (__attribute__((unused)) void *Args)
|
||||||
{
|
{
|
||||||
if (Args)
|
/***** Put icon to view groups *****/
|
||||||
{
|
Grp_PutIconToViewGroups ();
|
||||||
/***** Put icon to view groups *****/
|
|
||||||
Grp_PutIconToViewGroups ();
|
|
||||||
|
|
||||||
/***** Put icon to create a new type of group *****/
|
/***** Put icon to create a new type of group *****/
|
||||||
Grp_PutIconToCreateNewGroupType ();
|
Grp_PutIconToCreateNewGroupType ();
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
static void Grp_PutIconToViewGroups (void)
|
static void Grp_PutIconToViewGroups (void)
|
||||||
|
@ -1792,7 +1786,7 @@ void Grp_ShowLstGrpsToChgMyGrps (void)
|
||||||
/***** Begin box *****/
|
/***** Begin box *****/
|
||||||
if (ICanEdit)
|
if (ICanEdit)
|
||||||
Box_BoxBegin (NULL,Txt_My_groups,
|
Box_BoxBegin (NULL,Txt_My_groups,
|
||||||
Grp_PutIconToEditGroups,&Gbl,
|
Grp_PutIconToEditGroups,NULL,
|
||||||
Hlp_USERS_Groups,Box_NOT_CLOSABLE);
|
Hlp_USERS_Groups,Box_NOT_CLOSABLE);
|
||||||
else
|
else
|
||||||
Box_BoxBegin (NULL,Txt_My_groups,
|
Box_BoxBegin (NULL,Txt_My_groups,
|
||||||
|
@ -1853,11 +1847,10 @@ void Grp_ShowLstGrpsToChgMyGrps (void)
|
||||||
/*************************** Put icon to edit groups *************************/
|
/*************************** Put icon to edit groups *************************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
static void Grp_PutIconToEditGroups (void *Args)
|
static void Grp_PutIconToEditGroups (__attribute__((unused)) void *Args)
|
||||||
{
|
{
|
||||||
if (Args)
|
Ico_PutContextualIconToEdit (ActReqEdiGrp,NULL,
|
||||||
Ico_PutContextualIconToEdit (ActReqEdiGrp,NULL,
|
NULL,NULL);
|
||||||
NULL,NULL);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
@ -3958,13 +3951,13 @@ static void Grp_AskConfirmRemGrpTypWithGrps (unsigned NumGrps)
|
||||||
/***** Show question and button to remove type of group *****/
|
/***** Show question and button to remove type of group *****/
|
||||||
if (NumGrps == 1)
|
if (NumGrps == 1)
|
||||||
Ale_ShowAlertAndButton (ActRemGrpTyp,Grp_GROUP_TYPES_SECTION_ID,NULL,
|
Ale_ShowAlertAndButton (ActRemGrpTyp,Grp_GROUP_TYPES_SECTION_ID,NULL,
|
||||||
Grp_PutParamRemGrpTyp,&Gbl,
|
Grp_PutParamRemGrpTyp,&Gbl.Crs.Grps.GrpTyp.GrpTypCod,
|
||||||
Btn_REMOVE_BUTTON,Txt_Remove_type_of_group,
|
Btn_REMOVE_BUTTON,Txt_Remove_type_of_group,
|
||||||
Ale_QUESTION,Txt_Do_you_really_want_to_remove_the_type_of_group_X_1_group_,
|
Ale_QUESTION,Txt_Do_you_really_want_to_remove_the_type_of_group_X_1_group_,
|
||||||
Gbl.Crs.Grps.GrpTyp.GrpTypName);
|
Gbl.Crs.Grps.GrpTyp.GrpTypName);
|
||||||
else
|
else
|
||||||
Ale_ShowAlertAndButton (ActRemGrpTyp,Grp_GROUP_TYPES_SECTION_ID,NULL,
|
Ale_ShowAlertAndButton (ActRemGrpTyp,Grp_GROUP_TYPES_SECTION_ID,NULL,
|
||||||
Grp_PutParamRemGrpTyp,&Gbl,
|
Grp_PutParamRemGrpTyp,&Gbl.Crs.Grps.GrpTyp.GrpTypCod,
|
||||||
Btn_REMOVE_BUTTON,Txt_Remove_type_of_group,
|
Btn_REMOVE_BUTTON,Txt_Remove_type_of_group,
|
||||||
Ale_QUESTION,Txt_Do_you_really_want_to_remove_the_type_of_group_X_Y_groups_,
|
Ale_QUESTION,Txt_Do_you_really_want_to_remove_the_type_of_group_X_Y_groups_,
|
||||||
Gbl.Crs.Grps.GrpTyp.GrpTypName,NumGrps);
|
Gbl.Crs.Grps.GrpTyp.GrpTypName,NumGrps);
|
||||||
|
@ -3978,10 +3971,10 @@ static void Grp_AskConfirmRemGrpTypWithGrps (unsigned NumGrps)
|
||||||
/**************** Put parameter to remove a type of group ********************/
|
/**************** Put parameter to remove a type of group ********************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
static void Grp_PutParamRemGrpTyp (void *Args)
|
static void Grp_PutParamRemGrpTyp (void *GrpTypCod)
|
||||||
{
|
{
|
||||||
if (Args)
|
if (GrpTypCod)
|
||||||
Grp_PutParamGrpTypCod (Gbl.Crs.Grps.GrpTyp.GrpTypCod);
|
Grp_PutParamGrpTypCod (*((long *) GrpTypCod));
|
||||||
}
|
}
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
@ -4011,19 +4004,19 @@ static void Grp_AskConfirmRemGrp (void)
|
||||||
/***** Show question and button to remove group *****/
|
/***** Show question and button to remove group *****/
|
||||||
if (NumStds == 0)
|
if (NumStds == 0)
|
||||||
Ale_ShowAlertAndButton (ActRemGrp,Grp_GROUPS_SECTION_ID,NULL,
|
Ale_ShowAlertAndButton (ActRemGrp,Grp_GROUPS_SECTION_ID,NULL,
|
||||||
Grp_PutParamRemGrp,&Gbl,
|
Grp_PutParamRemGrp,&Gbl.Crs.Grps.GrpCod,
|
||||||
Btn_REMOVE_BUTTON,Txt_Remove_group,
|
Btn_REMOVE_BUTTON,Txt_Remove_group,
|
||||||
Ale_QUESTION,Txt_Do_you_really_want_to_remove_the_group_X,
|
Ale_QUESTION,Txt_Do_you_really_want_to_remove_the_group_X,
|
||||||
GrpDat.GrpName);
|
GrpDat.GrpName);
|
||||||
else if (NumStds == 1)
|
else if (NumStds == 1)
|
||||||
Ale_ShowAlertAndButton (ActRemGrp,Grp_GROUPS_SECTION_ID,NULL,
|
Ale_ShowAlertAndButton (ActRemGrp,Grp_GROUPS_SECTION_ID,NULL,
|
||||||
Grp_PutParamRemGrp,&Gbl,
|
Grp_PutParamRemGrp,&Gbl.Crs.Grps.GrpCod,
|
||||||
Btn_REMOVE_BUTTON,Txt_Remove_group,
|
Btn_REMOVE_BUTTON,Txt_Remove_group,
|
||||||
Ale_QUESTION,Txt_Do_you_really_want_to_remove_the_group_X_1_student_,
|
Ale_QUESTION,Txt_Do_you_really_want_to_remove_the_group_X_1_student_,
|
||||||
GrpDat.GrpName);
|
GrpDat.GrpName);
|
||||||
else
|
else
|
||||||
Ale_ShowAlertAndButton (ActRemGrp,Grp_GROUPS_SECTION_ID,NULL,
|
Ale_ShowAlertAndButton (ActRemGrp,Grp_GROUPS_SECTION_ID,NULL,
|
||||||
Grp_PutParamRemGrp,&Gbl,
|
Grp_PutParamRemGrp,&Gbl.Crs.Grps.GrpCod,
|
||||||
Btn_REMOVE_BUTTON,Txt_Remove_group,
|
Btn_REMOVE_BUTTON,Txt_Remove_group,
|
||||||
Ale_QUESTION,Txt_Do_you_really_want_to_remove_the_group_X_Y_students_,
|
Ale_QUESTION,Txt_Do_you_really_want_to_remove_the_group_X_Y_students_,
|
||||||
GrpDat.GrpName,NumStds);
|
GrpDat.GrpName,NumStds);
|
||||||
|
@ -4036,10 +4029,10 @@ static void Grp_AskConfirmRemGrp (void)
|
||||||
/*********************** Put parameter to remove a group *********************/
|
/*********************** Put parameter to remove a group *********************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
static void Grp_PutParamRemGrp (void *Args)
|
static void Grp_PutParamRemGrp (void *GrpCod)
|
||||||
{
|
{
|
||||||
if (Args)
|
if (GrpCod)
|
||||||
Grp_PutParamGrpCod (Gbl.Crs.Grps.GrpCod);
|
Grp_PutParamGrpCod (*((long *) GrpCod));
|
||||||
}
|
}
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
@ -4959,9 +4952,9 @@ void Grp_PutParamAllGroups (void)
|
||||||
void Grp_PutParamWhichGroups (void *WhichGrps)
|
void Grp_PutParamWhichGroups (void *WhichGrps)
|
||||||
{
|
{
|
||||||
if (WhichGrps)
|
if (WhichGrps)
|
||||||
if (*(Grp_WhichGroups_t *) WhichGrps != Grp_WHICH_GROUPS_DEFAULT)
|
if (*((Grp_WhichGroups_t *) WhichGrps) != Grp_WHICH_GROUPS_DEFAULT)
|
||||||
Par_PutHiddenParamUnsigned (NULL,"WhichGrps",
|
Par_PutHiddenParamUnsigned (NULL,"WhichGrps",
|
||||||
(unsigned) *(Grp_WhichGroups_t *) WhichGrps);
|
(unsigned) *((Grp_WhichGroups_t *) WhichGrps));
|
||||||
}
|
}
|
||||||
|
|
||||||
void Grp_PutParamWhichGrpsOnlyMyGrps (void)
|
void Grp_PutParamWhichGrpsOnlyMyGrps (void)
|
||||||
|
@ -4984,33 +4977,30 @@ void Grp_ShowFormToSelWhichGrps (Act_Action_t Action,
|
||||||
extern const char *Txt_GROUP_WHICH_GROUPS[2];
|
extern const char *Txt_GROUP_WHICH_GROUPS[2];
|
||||||
Grp_WhichGroups_t WhichGrps;
|
Grp_WhichGroups_t WhichGrps;
|
||||||
|
|
||||||
if (Args)
|
/***** Start setting selector *****/
|
||||||
|
Set_StartOneSettingSelector ();
|
||||||
|
|
||||||
|
/***** Put icons to select which groups *****/
|
||||||
|
for (WhichGrps = Grp_MY_GROUPS;
|
||||||
|
WhichGrps <= Grp_ALL_GROUPS;
|
||||||
|
WhichGrps++)
|
||||||
{
|
{
|
||||||
/***** Start setting selector *****/
|
HTM_DIV_Begin ("class=\"%s\"",
|
||||||
Set_StartOneSettingSelector ();
|
WhichGrps == Gbl.Crs.Grps.WhichGrps ? "PREF_ON" :
|
||||||
|
"PREF_OFF");
|
||||||
/***** Put icons to select which groups *****/
|
Frm_StartForm (Action);
|
||||||
for (WhichGrps = Grp_MY_GROUPS;
|
Par_PutHiddenParamUnsigned (NULL,"WhichGrps",(unsigned) WhichGrps);
|
||||||
WhichGrps <= Grp_ALL_GROUPS;
|
if (FuncParams) // Extra parameters depending on the action
|
||||||
WhichGrps++)
|
FuncParams (Args);
|
||||||
{
|
Ico_PutSettingIconLink (WhichGrps == Grp_MY_GROUPS ? "mysitemap.png" :
|
||||||
HTM_DIV_Begin ("class=\"%s\"",
|
"sitemap.svg",
|
||||||
WhichGrps == Gbl.Crs.Grps.WhichGrps ? "PREF_ON" :
|
Txt_GROUP_WHICH_GROUPS[WhichGrps]);
|
||||||
"PREF_OFF");
|
Frm_EndForm ();
|
||||||
Frm_StartForm (Action);
|
HTM_DIV_End ();
|
||||||
Par_PutHiddenParamUnsigned (NULL,"WhichGrps",(unsigned) WhichGrps);
|
|
||||||
if (FuncParams) // Extra parameters depending on the action
|
|
||||||
FuncParams (Args);
|
|
||||||
Ico_PutSettingIconLink (WhichGrps == Grp_MY_GROUPS ? "mysitemap.png" :
|
|
||||||
"sitemap.svg",
|
|
||||||
Txt_GROUP_WHICH_GROUPS[WhichGrps]);
|
|
||||||
Frm_EndForm ();
|
|
||||||
HTM_DIV_End ();
|
|
||||||
}
|
|
||||||
|
|
||||||
/***** End setting selector *****/
|
|
||||||
Set_EndOneSettingSelector ();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/***** End setting selector *****/
|
||||||
|
Set_EndOneSettingSelector ();
|
||||||
}
|
}
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
|
@ -64,7 +64,7 @@ static struct Holiday *Hld_EditingHld = NULL; // Static variable to keep the hol
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
static void Hld_GetParamHldOrder (void);
|
static void Hld_GetParamHldOrder (void);
|
||||||
static void Hld_PutIconsSeeHolidays (void *Args);
|
static void Hld_PutIconsSeeHolidays (__attribute__((unused)) void *Args);
|
||||||
|
|
||||||
static void Hld_EditHolidaysInternal (void);
|
static void Hld_EditHolidaysInternal (void);
|
||||||
|
|
||||||
|
@ -111,7 +111,7 @@ void Hld_SeeHolidays (void)
|
||||||
|
|
||||||
/***** Table head *****/
|
/***** Table head *****/
|
||||||
Box_BoxBegin (NULL,Txt_Holidays,
|
Box_BoxBegin (NULL,Txt_Holidays,
|
||||||
Hld_PutIconsSeeHolidays,&Gbl,
|
Hld_PutIconsSeeHolidays,NULL,
|
||||||
Hlp_INSTITUTION_Holidays,Box_NOT_CLOSABLE);
|
Hlp_INSTITUTION_Holidays,Box_NOT_CLOSABLE);
|
||||||
if (Gbl.Hlds.Num)
|
if (Gbl.Hlds.Num)
|
||||||
{
|
{
|
||||||
|
@ -221,18 +221,15 @@ static void Hld_GetParamHldOrder (void)
|
||||||
/******************** Put contextual icons in calendar ***********************/
|
/******************** Put contextual icons in calendar ***********************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
static void Hld_PutIconsSeeHolidays (void *Args)
|
static void Hld_PutIconsSeeHolidays (__attribute__((unused)) void *Args)
|
||||||
{
|
{
|
||||||
if (Args)
|
/***** Edit holidays calendar *****/
|
||||||
{
|
if (Gbl.Usrs.Me.Role.Logged >= Rol_INS_ADM)
|
||||||
/***** Edit holidays calendar *****/
|
Ico_PutContextualIconToEdit (ActEdiHld,NULL,
|
||||||
if (Gbl.Usrs.Me.Role.Logged >= Rol_INS_ADM)
|
NULL,NULL);
|
||||||
Ico_PutContextualIconToEdit (ActEdiHld,NULL,
|
|
||||||
NULL,NULL);
|
|
||||||
|
|
||||||
/***** View calendar *****/
|
/***** View calendar *****/
|
||||||
Cal_PutIconToSeeCalendar (NULL);
|
Cal_PutIconToSeeCalendar (NULL);
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
|
@ -68,7 +68,7 @@ static void Ind_GetParamNumIndicators (void);
|
||||||
static unsigned Ind_GetTableOfCourses (MYSQL_RES **mysql_res);
|
static unsigned Ind_GetTableOfCourses (MYSQL_RES **mysql_res);
|
||||||
static bool Ind_GetIfShowBigList (unsigned NumCrss);
|
static bool Ind_GetIfShowBigList (unsigned NumCrss);
|
||||||
static void Ind_PutButtonToConfirmIWantToSeeBigList (unsigned NumCrss);
|
static void Ind_PutButtonToConfirmIWantToSeeBigList (unsigned NumCrss);
|
||||||
static void Ind_PutParamsConfirmIWantToSeeBigList (void *Args);
|
static void Ind_PutParamsConfirmIWantToSeeBigList (void *Stats);
|
||||||
|
|
||||||
static void Ind_GetNumCoursesWithIndicators (unsigned NumCrssWithIndicatorYes[1 + Ind_NUM_INDICATORS],
|
static void Ind_GetNumCoursesWithIndicators (unsigned NumCrssWithIndicatorYes[1 + Ind_NUM_INDICATORS],
|
||||||
unsigned NumCrss,MYSQL_RES *mysql_res);
|
unsigned NumCrss,MYSQL_RES *mysql_res);
|
||||||
|
@ -566,21 +566,21 @@ static void Ind_PutButtonToConfirmIWantToSeeBigList (unsigned NumCrss)
|
||||||
|
|
||||||
/***** Show alert and button to confirm that I want to see the big list *****/
|
/***** Show alert and button to confirm that I want to see the big list *****/
|
||||||
Ale_ShowAlertAndButton (Gbl.Action.Act,NULL,NULL,
|
Ale_ShowAlertAndButton (Gbl.Action.Act,NULL,NULL,
|
||||||
Ind_PutParamsConfirmIWantToSeeBigList,&Gbl,
|
Ind_PutParamsConfirmIWantToSeeBigList,&Gbl.Stat,
|
||||||
Btn_CONFIRM_BUTTON,Txt_Show_anyway,
|
Btn_CONFIRM_BUTTON,Txt_Show_anyway,
|
||||||
Ale_WARNING,Txt_The_list_of_X_courses_is_too_large_to_be_displayed,
|
Ale_WARNING,Txt_The_list_of_X_courses_is_too_large_to_be_displayed,
|
||||||
NumCrss);
|
NumCrss);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void Ind_PutParamsConfirmIWantToSeeBigList (void *Args)
|
static void Ind_PutParamsConfirmIWantToSeeBigList (void *Stats)
|
||||||
{
|
{
|
||||||
if (Args)
|
if (Stats)
|
||||||
{
|
{
|
||||||
Sco_PutParamScope ("ScopeInd",Gbl.Scope.Current);
|
Sco_PutParamScope ("ScopeInd",Gbl.Scope.Current);
|
||||||
Par_PutHiddenParamLong (NULL,"OthDegTypCod",Gbl.Stat.DegTypCod);
|
Par_PutHiddenParamLong (NULL,"OthDegTypCod",((struct Sta_Stats *) Stats)->DegTypCod);
|
||||||
Par_PutHiddenParamLong (NULL,Dpt_PARAM_DPT_COD_NAME,Gbl.Stat.DptCod);
|
Par_PutHiddenParamLong (NULL,Dpt_PARAM_DPT_COD_NAME,((struct Sta_Stats *) Stats)->DptCod);
|
||||||
if (Gbl.Stat.StrIndicatorsSelected[0])
|
if (((struct Sta_Stats *) Stats)->StrIndicatorsSelected[0])
|
||||||
Par_PutHiddenParamString (NULL,"Indicators",Gbl.Stat.StrIndicatorsSelected);
|
Par_PutHiddenParamString (NULL,"Indicators",((struct Sta_Stats *) Stats)->StrIndicatorsSelected);
|
||||||
Par_PutHiddenParamChar ("ShowBigList",'Y');
|
Par_PutHiddenParamChar ("ShowBigList",'Y');
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
24
swad_info.c
24
swad_info.c
|
@ -269,7 +269,7 @@ extern const char *Hlp_ASSESSMENT_System_edit;
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
static void Inf_PutButtonToEditInfo (void);
|
static void Inf_PutButtonToEditInfo (void);
|
||||||
static void Inf_PutIconToViewInfo (void *Args);
|
static void Inf_PutIconToViewInfo (void *Type);
|
||||||
static void Inf_PutCheckboxForceStdsToReadInfo (bool MustBeRead,bool Disabled);
|
static void Inf_PutCheckboxForceStdsToReadInfo (bool MustBeRead,bool Disabled);
|
||||||
static void Inf_PutCheckboxConfirmIHaveReadInfo (void);
|
static void Inf_PutCheckboxConfirmIHaveReadInfo (void);
|
||||||
static bool Inf_CheckIfIHaveReadInfo (void);
|
static bool Inf_CheckIfIHaveReadInfo (void);
|
||||||
|
@ -414,7 +414,7 @@ void Inf_ShowInfo (void)
|
||||||
{
|
{
|
||||||
if (ICanEdit)
|
if (ICanEdit)
|
||||||
Box_BoxBegin ("100%",Txt_INFO_TITLE[Gbl.Crs.Info.Type],
|
Box_BoxBegin ("100%",Txt_INFO_TITLE[Gbl.Crs.Info.Type],
|
||||||
Inf_PutIconToEditInfo,&Gbl,
|
Inf_PutIconToEditInfo,&Gbl.Crs.Info.Type,
|
||||||
Help[Gbl.Crs.Info.Type],Box_NOT_CLOSABLE);
|
Help[Gbl.Crs.Info.Type],Box_NOT_CLOSABLE);
|
||||||
else
|
else
|
||||||
Box_BoxBegin ("100%",Txt_INFO_TITLE[Gbl.Crs.Info.Type],
|
Box_BoxBegin ("100%",Txt_INFO_TITLE[Gbl.Crs.Info.Type],
|
||||||
|
@ -444,17 +444,17 @@ static void Inf_PutButtonToEditInfo (void)
|
||||||
/************************ Put icon to edit course info ***********************/
|
/************************ Put icon to edit course info ***********************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
static void Inf_PutIconToViewInfo (void *Args)
|
static void Inf_PutIconToViewInfo (void *Type)
|
||||||
{
|
{
|
||||||
if (Args)
|
if (Type)
|
||||||
Ico_PutContextualIconToView (Inf_ActionsSeeInfo[Gbl.Crs.Info.Type],
|
Ico_PutContextualIconToView (Inf_ActionsSeeInfo[*((Inf_InfoType_t *) Type)],
|
||||||
NULL,NULL);
|
NULL,NULL);
|
||||||
}
|
}
|
||||||
|
|
||||||
void Inf_PutIconToEditInfo (void *Args)
|
void Inf_PutIconToEditInfo (void *Type)
|
||||||
{
|
{
|
||||||
if (Args)
|
if (Type)
|
||||||
Ico_PutContextualIconToEdit (Inf_ActionsEditInfo[Gbl.Crs.Info.Type],NULL,
|
Ico_PutContextualIconToEdit (Inf_ActionsEditInfo[*((Inf_InfoType_t *) Type)],NULL,
|
||||||
NULL,NULL);
|
NULL,NULL);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -942,7 +942,7 @@ static void Inf_ShowPage (const char *URL)
|
||||||
/***** Begin box *****/
|
/***** Begin box *****/
|
||||||
if (ICanEdit)
|
if (ICanEdit)
|
||||||
Box_BoxBegin (NULL,Txt_INFO_TITLE[Gbl.Crs.Info.Type],
|
Box_BoxBegin (NULL,Txt_INFO_TITLE[Gbl.Crs.Info.Type],
|
||||||
Inf_PutIconToEditInfo,&Gbl,
|
Inf_PutIconToEditInfo,&Gbl.Crs.Info.Type,
|
||||||
Help[Gbl.Crs.Info.Type],Box_NOT_CLOSABLE);
|
Help[Gbl.Crs.Info.Type],Box_NOT_CLOSABLE);
|
||||||
else
|
else
|
||||||
Box_BoxBegin (NULL,Txt_INFO_TITLE[Gbl.Crs.Info.Type],
|
Box_BoxBegin (NULL,Txt_INFO_TITLE[Gbl.Crs.Info.Type],
|
||||||
|
@ -1030,7 +1030,7 @@ void Inf_FormsToSelSendInfo (void)
|
||||||
/***** Form to choice between alternatives *****/
|
/***** Form to choice between alternatives *****/
|
||||||
/* Begin box and table */
|
/* Begin box and table */
|
||||||
Box_BoxTableBegin (NULL,Txt_Source_of_information,
|
Box_BoxTableBegin (NULL,Txt_Source_of_information,
|
||||||
Inf_PutIconToViewInfo,&Gbl,
|
Inf_PutIconToViewInfo,&Gbl.Crs.Info.Type,
|
||||||
HelpEdit[Gbl.Crs.Info.Type],Box_NOT_CLOSABLE,4);
|
HelpEdit[Gbl.Crs.Info.Type],Box_NOT_CLOSABLE,4);
|
||||||
|
|
||||||
/* Options */
|
/* Options */
|
||||||
|
@ -1691,7 +1691,7 @@ static bool Inf_CheckAndShowPlainTxt (void)
|
||||||
/***** Begin box *****/
|
/***** Begin box *****/
|
||||||
if (ICanEdit)
|
if (ICanEdit)
|
||||||
Box_BoxBegin (NULL,Txt_INFO_TITLE[Gbl.Crs.Info.Type],
|
Box_BoxBegin (NULL,Txt_INFO_TITLE[Gbl.Crs.Info.Type],
|
||||||
Inf_PutIconToEditInfo,&Gbl,
|
Inf_PutIconToEditInfo,&Gbl.Crs.Info.Type,
|
||||||
Help[Gbl.Crs.Info.Type],Box_NOT_CLOSABLE);
|
Help[Gbl.Crs.Info.Type],Box_NOT_CLOSABLE);
|
||||||
else
|
else
|
||||||
Box_BoxBegin (NULL,Txt_INFO_TITLE[Gbl.Crs.Info.Type],
|
Box_BoxBegin (NULL,Txt_INFO_TITLE[Gbl.Crs.Info.Type],
|
||||||
|
@ -1779,7 +1779,7 @@ static bool Inf_CheckAndShowRichTxt (void)
|
||||||
/***** Begin box *****/
|
/***** Begin box *****/
|
||||||
if (ICanEdit)
|
if (ICanEdit)
|
||||||
Box_BoxBegin (NULL,Txt_INFO_TITLE[Gbl.Crs.Info.Type],
|
Box_BoxBegin (NULL,Txt_INFO_TITLE[Gbl.Crs.Info.Type],
|
||||||
Inf_PutIconToEditInfo,&Gbl,
|
Inf_PutIconToEditInfo,&Gbl.Crs.Info.Type,
|
||||||
Help[Gbl.Crs.Info.Type],Box_NOT_CLOSABLE);
|
Help[Gbl.Crs.Info.Type],Box_NOT_CLOSABLE);
|
||||||
else
|
else
|
||||||
Box_BoxBegin (NULL,Txt_INFO_TITLE[Gbl.Crs.Info.Type],
|
Box_BoxBegin (NULL,Txt_INFO_TITLE[Gbl.Crs.Info.Type],
|
||||||
|
|
|
@ -68,7 +68,7 @@ typedef enum
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
void Inf_ShowInfo (void);
|
void Inf_ShowInfo (void);
|
||||||
void Inf_PutIconToEditInfo (void *Args);
|
void Inf_PutIconToEditInfo (void *Type);
|
||||||
void Inf_WriteMsgYouMustReadInfo (void);
|
void Inf_WriteMsgYouMustReadInfo (void);
|
||||||
void Inf_ChangeForceReadInfo (void);
|
void Inf_ChangeForceReadInfo (void);
|
||||||
void Inf_ChangeIHaveReadInfo (void);
|
void Inf_ChangeIHaveReadInfo (void);
|
||||||
|
|
|
@ -63,14 +63,14 @@ static struct Instit *Ins_EditingIns = NULL; // Static variable to keep the inst
|
||||||
|
|
||||||
static void Ins_ListInstitutions (void);
|
static void Ins_ListInstitutions (void);
|
||||||
static bool Ins_CheckIfICanCreateInstitutions (void);
|
static bool Ins_CheckIfICanCreateInstitutions (void);
|
||||||
static void Ins_PutIconsListingInstitutions (void *Args);
|
static void Ins_PutIconsListingInstitutions (__attribute__((unused)) void *Args);
|
||||||
static void Ins_PutIconToEditInstitutions (void);
|
static void Ins_PutIconToEditInstitutions (void);
|
||||||
static void Ins_ListOneInstitutionForSeeing (struct Instit *Ins,unsigned NumIns);
|
static void Ins_ListOneInstitutionForSeeing (struct Instit *Ins,unsigned NumIns);
|
||||||
static void Ins_PutHeadInstitutionsForSeeing (bool OrderSelectable);
|
static void Ins_PutHeadInstitutionsForSeeing (bool OrderSelectable);
|
||||||
static void Ins_GetParamInsOrder (void);
|
static void Ins_GetParamInsOrder (void);
|
||||||
|
|
||||||
static void Ins_EditInstitutionsInternal (void);
|
static void Ins_EditInstitutionsInternal (void);
|
||||||
static void Ins_PutIconsEditingInstitutions (void *Args);
|
static void Ins_PutIconsEditingInstitutions (__attribute__((unused)) void *Args);
|
||||||
static void Ins_PutIconToViewInstitutions (void);
|
static void Ins_PutIconToViewInstitutions (void);
|
||||||
|
|
||||||
static void Ins_GetDataOfInstitFromRow (struct Instit *Ins,MYSQL_ROW row);
|
static void Ins_GetDataOfInstitFromRow (struct Instit *Ins,MYSQL_ROW row);
|
||||||
|
@ -89,7 +89,7 @@ static long Ins_GetParamOtherInsCod (void);
|
||||||
static void Ins_UpdateInsNameDB (long InsCod,const char *FieldName,const char *NewInsName);
|
static void Ins_UpdateInsNameDB (long InsCod,const char *FieldName,const char *NewInsName);
|
||||||
|
|
||||||
static void Ins_ShowAlertAndButtonToGoToIns (void);
|
static void Ins_ShowAlertAndButtonToGoToIns (void);
|
||||||
static void Ins_PutParamGoToIns (void *Args);
|
static void Ins_PutParamGoToIns (void *InsCod);
|
||||||
|
|
||||||
static void Ins_PutFormToCreateInstitution (void);
|
static void Ins_PutFormToCreateInstitution (void);
|
||||||
static void Ins_PutHeadInstitutionsForEdition (void);
|
static void Ins_PutHeadInstitutionsForEdition (void);
|
||||||
|
@ -302,7 +302,7 @@ static void Ins_ListInstitutions (void)
|
||||||
/***** Begin box *****/
|
/***** Begin box *****/
|
||||||
Box_BoxBegin (NULL,Str_BuildStringStr (Txt_Institutions_of_COUNTRY_X,
|
Box_BoxBegin (NULL,Str_BuildStringStr (Txt_Institutions_of_COUNTRY_X,
|
||||||
Gbl.Hierarchy.Cty.Name[Gbl.Prefs.Language]),
|
Gbl.Hierarchy.Cty.Name[Gbl.Prefs.Language]),
|
||||||
Ins_PutIconsListingInstitutions,&Gbl,
|
Ins_PutIconsListingInstitutions,NULL,
|
||||||
Hlp_COUNTRY_Institutions,Box_NOT_CLOSABLE);
|
Hlp_COUNTRY_Institutions,Box_NOT_CLOSABLE);
|
||||||
Str_FreeString ();
|
Str_FreeString ();
|
||||||
|
|
||||||
|
@ -349,17 +349,14 @@ static bool Ins_CheckIfICanCreateInstitutions (void)
|
||||||
/*************** Put contextual icons in list of institutions ****************/
|
/*************** Put contextual icons in list of institutions ****************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
static void Ins_PutIconsListingInstitutions (void *Args)
|
static void Ins_PutIconsListingInstitutions (__attribute__((unused)) void *Args)
|
||||||
{
|
{
|
||||||
if (Args)
|
/***** Put icon to edit institutions *****/
|
||||||
{
|
if (Ins_CheckIfICanCreateInstitutions ())
|
||||||
/***** Put icon to edit institutions *****/
|
Ins_PutIconToEditInstitutions ();
|
||||||
if (Ins_CheckIfICanCreateInstitutions ())
|
|
||||||
Ins_PutIconToEditInstitutions ();
|
|
||||||
|
|
||||||
/***** Put icon to show a figure *****/
|
/***** Put icon to show a figure *****/
|
||||||
Fig_PutIconToShowFigure (Fig_INSTITS);
|
Fig_PutIconToShowFigure (Fig_INSTITS);
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
@ -564,7 +561,7 @@ static void Ins_EditInstitutionsInternal (void)
|
||||||
/***** Begin box *****/
|
/***** Begin box *****/
|
||||||
Box_BoxBegin (NULL,Str_BuildStringStr (Txt_Institutions_of_COUNTRY_X,
|
Box_BoxBegin (NULL,Str_BuildStringStr (Txt_Institutions_of_COUNTRY_X,
|
||||||
Gbl.Hierarchy.Cty.Name[Gbl.Prefs.Language]),
|
Gbl.Hierarchy.Cty.Name[Gbl.Prefs.Language]),
|
||||||
Ins_PutIconsEditingInstitutions,&Gbl,
|
Ins_PutIconsEditingInstitutions,NULL,
|
||||||
Hlp_COUNTRY_Institutions,Box_NOT_CLOSABLE);
|
Hlp_COUNTRY_Institutions,Box_NOT_CLOSABLE);
|
||||||
Str_FreeString ();
|
Str_FreeString ();
|
||||||
|
|
||||||
|
@ -586,16 +583,13 @@ static void Ins_EditInstitutionsInternal (void)
|
||||||
/************ Put contextual icons in edition of institutions ****************/
|
/************ Put contextual icons in edition of institutions ****************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
static void Ins_PutIconsEditingInstitutions (void *Args)
|
static void Ins_PutIconsEditingInstitutions (__attribute__((unused)) void *Args)
|
||||||
{
|
{
|
||||||
if (Args)
|
/***** Put icon to view institutions *****/
|
||||||
{
|
Ins_PutIconToViewInstitutions ();
|
||||||
/***** Put icon to view institutions *****/
|
|
||||||
Ins_PutIconToViewInstitutions ();
|
|
||||||
|
|
||||||
/***** Put icon to show a figure *****/
|
/***** Put icon to show a figure *****/
|
||||||
Fig_PutIconToShowFigure (Fig_INSTITS);
|
Fig_PutIconToShowFigure (Fig_INSTITS);
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
@ -1298,10 +1292,10 @@ static Ins_Status_t Ins_GetStatusBitsFromStatusTxt (Ins_StatusTxt_t StatusTxt)
|
||||||
/************* Write parameter with code of current institution **************/
|
/************* Write parameter with code of current institution **************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
void Ins_PutParamCurrentInsCod (void *Args)
|
void Ins_PutParamCurrentInsCod (void *InsCod)
|
||||||
{
|
{
|
||||||
if (Args)
|
if (InsCod)
|
||||||
Ins_PutParamInsCod (Gbl.Hierarchy.Ins.InsCod);
|
Ins_PutParamInsCod (*((long *) InsCod));
|
||||||
}
|
}
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
@ -1678,7 +1672,7 @@ static void Ins_ShowAlertAndButtonToGoToIns (void)
|
||||||
{
|
{
|
||||||
/***** Alert with button to go to institution *****/
|
/***** Alert with button to go to institution *****/
|
||||||
Ale_ShowLastAlertAndButton (ActSeeCtr,NULL,NULL,
|
Ale_ShowLastAlertAndButton (ActSeeCtr,NULL,NULL,
|
||||||
Ins_PutParamGoToIns,&Gbl,
|
Ins_PutParamGoToIns,&Ins_EditingIns->InsCod,
|
||||||
Btn_CONFIRM_BUTTON,
|
Btn_CONFIRM_BUTTON,
|
||||||
Hie_BuildGoToMsg (Ins_EditingIns->ShrtName));
|
Hie_BuildGoToMsg (Ins_EditingIns->ShrtName));
|
||||||
Hie_FreeGoToMsg ();
|
Hie_FreeGoToMsg ();
|
||||||
|
@ -1688,11 +1682,11 @@ static void Ins_ShowAlertAndButtonToGoToIns (void)
|
||||||
Ale_ShowAlerts (NULL);
|
Ale_ShowAlerts (NULL);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void Ins_PutParamGoToIns (void *Args)
|
static void Ins_PutParamGoToIns (void *InsCod)
|
||||||
{
|
{
|
||||||
if (Args)
|
if (InsCod)
|
||||||
/***** Put parameter *****/
|
/***** Put parameter *****/
|
||||||
Ins_PutParamInsCod (Ins_EditingIns->InsCod);
|
Ins_PutParamInsCod (*((long *) InsCod));
|
||||||
}
|
}
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
@ -2128,7 +2122,7 @@ static void Ins_FormToGoToMap (struct Instit *Ins)
|
||||||
{
|
{
|
||||||
Ins_EditingIns = Ins; // Used to pass parameter with the code of the institution
|
Ins_EditingIns = Ins; // Used to pass parameter with the code of the institution
|
||||||
Lay_PutContextualLinkOnlyIcon (ActSeeInsInf,NULL,
|
Lay_PutContextualLinkOnlyIcon (ActSeeInsInf,NULL,
|
||||||
Ins_PutParamGoToIns,&Gbl,
|
Ins_PutParamGoToIns,&Ins_EditingIns->InsCod,
|
||||||
"map-marker-alt.svg",
|
"map-marker-alt.svg",
|
||||||
Txt_Map);
|
Txt_Map);
|
||||||
}
|
}
|
||||||
|
|
|
@ -110,7 +110,7 @@ void Ins_FlushCacheFullNameAndCtyOfInstitution (void);
|
||||||
|
|
||||||
void Ins_FreeListInstitutions (void);
|
void Ins_FreeListInstitutions (void);
|
||||||
void Ins_WriteSelectorOfInstitution (void);
|
void Ins_WriteSelectorOfInstitution (void);
|
||||||
void Ins_PutParamCurrentInsCod (void *Args);
|
void Ins_PutParamCurrentInsCod (void *InsCod);
|
||||||
void Ins_PutParamInsCod (long InsCod);
|
void Ins_PutParamInsCod (long InsCod);
|
||||||
long Ins_GetAndCheckParamOtherInsCod (long MinCodAllowed);
|
long Ins_GetAndCheckParamOtherInsCod (long MinCodAllowed);
|
||||||
void Ins_RemoveInstitution (void);
|
void Ins_RemoveInstitution (void);
|
||||||
|
|
|
@ -63,7 +63,7 @@ extern struct Globals Gbl;
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
static void InsCfg_Configuration (bool PrintView);
|
static void InsCfg_Configuration (bool PrintView);
|
||||||
static void InsCfg_PutIconsToPrintAndUpload (void *Args);
|
static void InsCfg_PutIconsToPrintAndUpload (__attribute__((unused)) void *Args);
|
||||||
static void InsCfg_Title (bool PutLink);
|
static void InsCfg_Title (bool PutLink);
|
||||||
static void InsCfg_GetCoordAndZoom (struct Coordinates *Coord,unsigned *Zoom);
|
static void InsCfg_GetCoordAndZoom (struct Coordinates *Coord,unsigned *Zoom);
|
||||||
static void InsCfg_Map (void);
|
static void InsCfg_Map (void);
|
||||||
|
@ -132,7 +132,7 @@ static void InsCfg_Configuration (bool PrintView)
|
||||||
NULL,Box_NOT_CLOSABLE);
|
NULL,Box_NOT_CLOSABLE);
|
||||||
else
|
else
|
||||||
Box_BoxBegin (NULL,NULL,
|
Box_BoxBegin (NULL,NULL,
|
||||||
InsCfg_PutIconsToPrintAndUpload,&Gbl,
|
InsCfg_PutIconsToPrintAndUpload,NULL,
|
||||||
Hlp_INSTITUTION_Information,Box_NOT_CLOSABLE);
|
Hlp_INSTITUTION_Information,Box_NOT_CLOSABLE);
|
||||||
|
|
||||||
|
|
||||||
|
@ -211,21 +211,18 @@ static void InsCfg_Configuration (bool PrintView)
|
||||||
/********* Put contextual icons in configuration of an institution ***********/
|
/********* Put contextual icons in configuration of an institution ***********/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
static void InsCfg_PutIconsToPrintAndUpload (void *Args)
|
static void InsCfg_PutIconsToPrintAndUpload (__attribute__((unused)) void *Args)
|
||||||
{
|
{
|
||||||
if (Args)
|
/***** Icon to print info about institution *****/
|
||||||
{
|
Ico_PutContextualIconToPrint (ActPrnInsInf,
|
||||||
/***** Icon to print info about institution *****/
|
NULL,NULL);
|
||||||
Ico_PutContextualIconToPrint (ActPrnInsInf,
|
|
||||||
NULL,NULL);
|
|
||||||
|
|
||||||
if (Gbl.Usrs.Me.Role.Logged >= Rol_INS_ADM)
|
if (Gbl.Usrs.Me.Role.Logged >= Rol_INS_ADM)
|
||||||
/***** Icon to upload logo of institution *****/
|
/***** Icon to upload logo of institution *****/
|
||||||
Lgo_PutIconToChangeLogo (Hie_INS);
|
Lgo_PutIconToChangeLogo (Hie_INS);
|
||||||
|
|
||||||
/***** Put icon to view places *****/
|
/***** Put icon to view places *****/
|
||||||
Plc_PutIconToViewPlaces ();
|
Plc_PutIconToViewPlaces ();
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
|
@ -1229,8 +1229,8 @@ static void Mch_PutParamsPlay (void *MchCod)
|
||||||
{
|
{
|
||||||
if (MchCod)
|
if (MchCod)
|
||||||
{
|
{
|
||||||
if (*(long *) MchCod > 0)
|
if (*((long *) MchCod) > 0)
|
||||||
Mch_PutParamMchCod (*(long *) MchCod);
|
Mch_PutParamMchCod (*((long *) MchCod));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -330,7 +330,7 @@ void Plc_PutIconToViewPlaces (void)
|
||||||
extern const char *Txt_Places;
|
extern const char *Txt_Places;
|
||||||
|
|
||||||
Lay_PutContextualLinkOnlyIcon (ActSeePlc,NULL,
|
Lay_PutContextualLinkOnlyIcon (ActSeePlc,NULL,
|
||||||
Ins_PutParamCurrentInsCod,&Gbl,
|
Ins_PutParamCurrentInsCod,&Gbl.Hierarchy.Ins.InsCod,
|
||||||
"map-marker-alt.svg",
|
"map-marker-alt.svg",
|
||||||
Txt_Places);
|
Txt_Places);
|
||||||
}
|
}
|
||||||
|
|
|
@ -27,6 +27,8 @@
|
||||||
/********************************* Headers ***********************************/
|
/********************************* Headers ***********************************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
|
#include "swad_indicator.h"
|
||||||
|
#include "swad_photo.h"
|
||||||
#include "swad_user.h"
|
#include "swad_user.h"
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
@ -126,6 +128,30 @@ struct Sta_Hits
|
||||||
double Total;
|
double Total;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
struct Sta_Stats
|
||||||
|
{
|
||||||
|
Sta_ClicksGroupedBy_t ClicksGroupedBy;
|
||||||
|
Sta_Role_t Role;
|
||||||
|
Sta_CountType_t CountType;
|
||||||
|
Act_Action_t NumAction;
|
||||||
|
unsigned long FirstRow;
|
||||||
|
unsigned long LastRow;
|
||||||
|
unsigned RowsPerPage;
|
||||||
|
long DegTypCod;
|
||||||
|
long DptCod;
|
||||||
|
char StrIndicatorsSelected[Ind_MAX_SIZE_INDICATORS_SELECTED + 1];
|
||||||
|
bool IndicatorsSelected[1 + Ind_NUM_INDICATORS];
|
||||||
|
struct
|
||||||
|
{
|
||||||
|
Pho_AvgPhotoTypeOfAverage_t TypeOfAverage;
|
||||||
|
Pho_HowComputePhotoSize_t HowComputePhotoSize;
|
||||||
|
Pho_HowOrderDegrees_t HowOrderDegrees;
|
||||||
|
int MaxStds;
|
||||||
|
int MaxStdsWithPhoto;
|
||||||
|
double MaxPercent;
|
||||||
|
} DegPhotos;
|
||||||
|
};
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
/***************************** Public prototypes *****************************/
|
/***************************** Public prototypes *****************************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
|
@ -512,7 +512,7 @@ static void Syl_ShowSyllabus (bool PutIconToEdit)
|
||||||
/***** Begin box and table *****/
|
/***** Begin box and table *****/
|
||||||
if (PutIconToEdit)
|
if (PutIconToEdit)
|
||||||
Box_BoxTableBegin (NULL,Txt_INFO_TITLE[Gbl.Crs.Info.Type],
|
Box_BoxTableBegin (NULL,Txt_INFO_TITLE[Gbl.Crs.Info.Type],
|
||||||
Inf_PutIconToEditInfo,&Gbl,
|
Inf_PutIconToEditInfo,&Gbl.Crs.Info.Type,
|
||||||
Gbl.Syllabus.EditionIsActive ? Hlp_COURSE_Syllabus_edit :
|
Gbl.Syllabus.EditionIsActive ? Hlp_COURSE_Syllabus_edit :
|
||||||
Hlp_COURSE_Syllabus,
|
Hlp_COURSE_Syllabus,
|
||||||
Box_NOT_CLOSABLE,0);
|
Box_NOT_CLOSABLE,0);
|
||||||
|
|
|
@ -9328,7 +9328,7 @@ unsigned Usr_GetTotalNumberOfUsersInPlatform (void)
|
||||||
/******* Get total number of users of one or several roles in courses ********/
|
/******* Get total number of users of one or several roles in courses ********/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
#define Usr_MAX_BYTES_SUBQUERY_ROLES (Rol_NUM_ROLES*(10+1)-1)
|
#define Usr_MAX_BYTES_SUBQUERY_ROLES (Rol_NUM_ROLES * (10 + 1) - 1)
|
||||||
|
|
||||||
unsigned Usr_GetNumUsrsInCrss (Hie_Level_t Scope,long Cod,unsigned Roles)
|
unsigned Usr_GetNumUsrsInCrss (Hie_Level_t Scope,long Cod,unsigned Roles)
|
||||||
{
|
{
|
||||||
|
|
Loading…
Reference in New Issue