mirror of https://github.com/acanas/swad-core.git
Version 21.47.4: Oct 30, 2021 Review of comments.
This commit is contained in:
parent
4177e5cb18
commit
8deffc3112
|
@ -985,10 +985,10 @@ void Acc_CompletelyEliminateAccount (struct UsrData *UsrDat,
|
||||||
/***** Remove user from all his/her projects *****/
|
/***** Remove user from all his/her projects *****/
|
||||||
Prj_RemoveUsrFromProjects (UsrDat->UsrCod);
|
Prj_RemoveUsrFromProjects (UsrDat->UsrCod);
|
||||||
|
|
||||||
/***** Remove user from all the attendance events *****/
|
/***** Remove user from all attendance events *****/
|
||||||
Att_DB_RemoveUsrFromAllAttEvents (UsrDat->UsrCod);
|
Att_DB_RemoveUsrFromAllAttEvents (UsrDat->UsrCod);
|
||||||
|
|
||||||
/***** Remove user from all the groups of all courses *****/
|
/***** Remove user from all groups of all courses *****/
|
||||||
Grp_RemUsrFromAllGrps (UsrDat->UsrCod);
|
Grp_RemUsrFromAllGrps (UsrDat->UsrCod);
|
||||||
|
|
||||||
/***** Remove user's requests for enrolment *****/
|
/***** Remove user's requests for enrolment *****/
|
||||||
|
|
|
@ -409,7 +409,7 @@ void Agd_ShowUsrAgenda (void)
|
||||||
/***** Show the current events in the user's agenda *****/
|
/***** Show the current events in the user's agenda *****/
|
||||||
Agd_ShowEventsToday (&Agenda,Agd_ANOTHER_AGENDA_TODAY);
|
Agd_ShowEventsToday (&Agenda,Agd_ANOTHER_AGENDA_TODAY);
|
||||||
|
|
||||||
/***** Show all the visible events in the user's agenda *****/
|
/***** Show all visible events in the user's agenda *****/
|
||||||
Agd_ShowEvents (&Agenda,Agd_ANOTHER_AGENDA);
|
Agd_ShowEvents (&Agenda,Agd_ANOTHER_AGENDA);
|
||||||
|
|
||||||
/***** End box *****/
|
/***** End box *****/
|
||||||
|
@ -463,7 +463,7 @@ void Agd_ShowOtherAgendaAfterLogIn (void)
|
||||||
/***** Show the current events in the user's agenda *****/
|
/***** Show the current events in the user's agenda *****/
|
||||||
Agd_ShowEventsToday (&Agenda,Agd_ANOTHER_AGENDA_TODAY);
|
Agd_ShowEventsToday (&Agenda,Agd_ANOTHER_AGENDA_TODAY);
|
||||||
|
|
||||||
/***** Show all the visible events in the user's agenda *****/
|
/***** Show all visible events in the user's agenda *****/
|
||||||
Agd_ShowEvents (&Agenda,Agd_ANOTHER_AGENDA);
|
Agd_ShowEvents (&Agenda,Agd_ANOTHER_AGENDA);
|
||||||
|
|
||||||
/***** End box *****/
|
/***** End box *****/
|
||||||
|
@ -524,8 +524,8 @@ static void Agd_ShowEvents (struct Agd_Agenda *Agenda,
|
||||||
/***** Table head *****/
|
/***** Table head *****/
|
||||||
Agd_WriteHeaderListEvents (Agenda,AgendaType);
|
Agd_WriteHeaderListEvents (Agenda,AgendaType);
|
||||||
|
|
||||||
/***** Write all the events *****/
|
/***** Write all events *****/
|
||||||
for (NumEvent = Pagination.FirstItemVisible;
|
for (NumEvent = Pagination.FirstItemVisible;
|
||||||
NumEvent <= Pagination.LastItemVisible;
|
NumEvent <= Pagination.LastItemVisible;
|
||||||
NumEvent++)
|
NumEvent++)
|
||||||
Agd_ShowOneEvent (Agenda,AgendaType,Agenda->LstAgdCods[NumEvent - 1]);
|
Agd_ShowOneEvent (Agenda,AgendaType,Agenda->LstAgdCods[NumEvent - 1]);
|
||||||
|
@ -593,7 +593,7 @@ static void Agd_ShowEventsToday (struct Agd_Agenda *Agenda,
|
||||||
/***** Table head *****/
|
/***** Table head *****/
|
||||||
Agd_WriteHeaderListEvents (Agenda,AgendaType);
|
Agd_WriteHeaderListEvents (Agenda,AgendaType);
|
||||||
|
|
||||||
/***** Write all the events *****/
|
/***** Write all events *****/
|
||||||
for (NumEvent = 0;
|
for (NumEvent = 0;
|
||||||
NumEvent < Agenda->Num;
|
NumEvent < Agenda->Num;
|
||||||
NumEvent++)
|
NumEvent++)
|
||||||
|
|
|
@ -332,12 +332,12 @@ void Agd_DB_MakeEventPrivate (const struct Agd_Event *AgdEvent)
|
||||||
}
|
}
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
/********************** Remove all the events of a user **********************/
|
/************************ Remove all events of a user ************************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
void Agd_DB_RemoveUsrEvents (long UsrCod)
|
void Agd_DB_RemoveUsrEvents (long UsrCod)
|
||||||
{
|
{
|
||||||
DB_QueryDELETE ("can not remove all the events of a user",
|
DB_QueryDELETE ("can not remove all events of a user",
|
||||||
"DELETE FROM agd_agendas"
|
"DELETE FROM agd_agendas"
|
||||||
" WHERE UsrCod=%ld",
|
" WHERE UsrCod=%ld",
|
||||||
UsrCod);
|
UsrCod);
|
||||||
|
|
|
@ -119,7 +119,7 @@ static void Asg_ResetAssignments (struct Asg_Assignments *Assignments)
|
||||||
}
|
}
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
/************************ List all the assignments ***************************/
|
/**************************** List all assignments ***************************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
void Asg_SeeAssignments (void)
|
void Asg_SeeAssignments (void)
|
||||||
|
@ -139,7 +139,7 @@ void Asg_SeeAssignments (void)
|
||||||
}
|
}
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
/************************ Show all the assignments ***************************/
|
/**************************** Show all assignments ***************************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
static void Asg_ShowAllAssignments (struct Asg_Assignments *Assignments)
|
static void Asg_ShowAllAssignments (struct Asg_Assignments *Assignments)
|
||||||
|
@ -185,8 +185,8 @@ static void Asg_ShowAllAssignments (struct Asg_Assignments *Assignments)
|
||||||
/***** Table head *****/
|
/***** Table head *****/
|
||||||
Asg_PutHeadForSeeing (Assignments,false); // Not print view
|
Asg_PutHeadForSeeing (Assignments,false); // Not print view
|
||||||
|
|
||||||
/***** Write all the assignments *****/
|
/***** Write all assignments *****/
|
||||||
for (NumAsg = Pagination.FirstItemVisible;
|
for (NumAsg = Pagination.FirstItemVisible;
|
||||||
NumAsg <= Pagination.LastItemVisible;
|
NumAsg <= Pagination.LastItemVisible;
|
||||||
NumAsg++)
|
NumAsg++)
|
||||||
Asg_ShowOneAssignment (Assignments,
|
Asg_ShowOneAssignment (Assignments,
|
||||||
|
@ -983,11 +983,11 @@ void Asg_RemoveAssignment (void)
|
||||||
/***** Get data of the assignment from database *****/
|
/***** Get data of the assignment from database *****/
|
||||||
Asg_GetDataOfAssignmentByCod (&Asg); // Inside this function, the course is checked to be the current one
|
Asg_GetDataOfAssignmentByCod (&Asg); // Inside this function, the course is checked to be the current one
|
||||||
|
|
||||||
/***** Remove all the folders associated to this assignment *****/
|
/***** Remove all folders associated to this assignment *****/
|
||||||
if (Asg.Folder[0])
|
if (Asg.Folder[0])
|
||||||
Brw_RemoveFoldersAssignmentsIfExistForAllUsrs (Asg.Folder);
|
Brw_RemoveFoldersAssignmentsIfExistForAllUsrs (Asg.Folder);
|
||||||
|
|
||||||
/***** Remove all the groups of this assignment *****/
|
/***** Remove all groups of this assignment *****/
|
||||||
Asg_DB_RemoveGrpsAssociatedToAnAssignment (Asg.AsgCod);
|
Asg_DB_RemoveGrpsAssociatedToAnAssignment (Asg.AsgCod);
|
||||||
|
|
||||||
/***** Remove assignment *****/
|
/***** Remove assignment *****/
|
||||||
|
@ -1557,7 +1557,7 @@ static void Asg_GetAndWriteNamesOfGrpsAssociatedToAsg (struct Asg_Assignment *As
|
||||||
}
|
}
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
/****************** Remove all the assignments of a course *******************/
|
/******************** Remove all assignments from a course *******************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
void Asg_RemoveCrsAssignments (long CrsCod)
|
void Asg_RemoveCrsAssignments (long CrsCod)
|
||||||
|
@ -1594,7 +1594,7 @@ static bool Asg_CheckIfIBelongToCrsOrGrpsThisAssignment (long AsgCod)
|
||||||
/************************ Get number of assignments **************************/
|
/************************ Get number of assignments **************************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
// Returns the number of assignments
|
// Returns the number of assignments
|
||||||
// in this location (all the platform, current degree or current course)
|
// in this location (all the platform, the current degree or the current course)
|
||||||
|
|
||||||
unsigned Asg_GetNumAssignments (HieLvl_Level_t Scope,unsigned *NumNotif)
|
unsigned Asg_GetNumAssignments (HieLvl_Level_t Scope,unsigned *NumNotif)
|
||||||
{
|
{
|
||||||
|
|
|
@ -375,12 +375,11 @@ void Asg_DB_CreateGroup (long AsgCod,long GrpCod)
|
||||||
}
|
}
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
/**************** Remove one group from all the assignments ******************/
|
/******************* Remove one group from all assignments *******************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
void Asg_DB_RemoveGroup (long GrpCod)
|
void Asg_DB_RemoveGroup (long GrpCod)
|
||||||
{
|
{
|
||||||
/***** Remove group from all the assignments *****/
|
|
||||||
DB_QueryDELETE ("can not remove group from the associations"
|
DB_QueryDELETE ("can not remove group from the associations"
|
||||||
" between assignments and groups",
|
" between assignments and groups",
|
||||||
"DELETE FROM asg_groups"
|
"DELETE FROM asg_groups"
|
||||||
|
@ -389,12 +388,12 @@ void Asg_DB_RemoveGroup (long GrpCod)
|
||||||
}
|
}
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
/*********** Remove groups of one type from all the assignments **************/
|
/************* Remove groups of one type from all assignments ****************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
void Asg_DB_RemoveGroupsOfType (long GrpTypCod)
|
void Asg_DB_RemoveGroupsOfType (long GrpTypCod)
|
||||||
{
|
{
|
||||||
/***** Remove group from all the assignments *****/
|
/***** Remove group from all assignments *****/
|
||||||
DB_QueryDELETE ("can not remove groups of a type from the associations"
|
DB_QueryDELETE ("can not remove groups of a type from the associations"
|
||||||
" between assignments and groups",
|
" between assignments and groups",
|
||||||
"DELETE FROM asg_groups"
|
"DELETE FROM asg_groups"
|
||||||
|
@ -434,7 +433,7 @@ void Asg_DB_RemoveGrpsAssociatedToAsgsInCrs (long CrsCod)
|
||||||
}
|
}
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
/****************** Remove all the assignments in a course *******************/
|
/******************** Remove all assignments in a course *********************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
void Asg_DB_RemoveCrsAssignments (long CrsCod)
|
void Asg_DB_RemoveCrsAssignments (long CrsCod)
|
||||||
|
@ -499,7 +498,7 @@ unsigned Asg_DB_GetUsrsFromAssignmentExceptMe (MYSQL_RES **mysql_res,long AsgCod
|
||||||
/****************** Get number of courses with assignments *******************/
|
/****************** Get number of courses with assignments *******************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
// Returns the number of courses with assignments
|
// Returns the number of courses with assignments
|
||||||
// in this location (all the platform, current degree or current course)
|
// in this location (all the platform, the current degree or the current course)
|
||||||
|
|
||||||
unsigned Asg_DB_GetNumCoursesWithAssignments (HieLvl_Level_t Scope)
|
unsigned Asg_DB_GetNumCoursesWithAssignments (HieLvl_Level_t Scope)
|
||||||
{
|
{
|
||||||
|
@ -577,7 +576,7 @@ unsigned Asg_DB_GetNumCoursesWithAssignments (HieLvl_Level_t Scope)
|
||||||
/************************ Get number of assignments **************************/
|
/************************ Get number of assignments **************************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
// Returns the number of assignments
|
// Returns the number of assignments
|
||||||
// in this location (all the platform, current degree or current course)
|
// in this location (all the platform, the current degree or the current course)
|
||||||
|
|
||||||
unsigned Asg_DB_GetNumAssignments (MYSQL_RES **mysql_res,HieLvl_Level_t Scope)
|
unsigned Asg_DB_GetNumAssignments (MYSQL_RES **mysql_res,HieLvl_Level_t Scope)
|
||||||
{
|
{
|
||||||
|
|
|
@ -186,7 +186,7 @@ static void Att_ResetEvents (struct Att_Events *Events)
|
||||||
}
|
}
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
/********************** List all the attendance events ***********************/
|
/************************ List all attendance events *************************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
void Att_SeeAttEvents (void)
|
void Att_SeeAttEvents (void)
|
||||||
|
@ -204,12 +204,12 @@ void Att_SeeAttEvents (void)
|
||||||
/***** Get list of attendance events *****/
|
/***** Get list of attendance events *****/
|
||||||
Att_GetListAttEvents (&Events,Att_NEWEST_FIRST);
|
Att_GetListAttEvents (&Events,Att_NEWEST_FIRST);
|
||||||
|
|
||||||
/***** Show all the attendance events *****/
|
/***** Show all attendance events *****/
|
||||||
Att_ShowAllAttEvents (&Events);
|
Att_ShowAllAttEvents (&Events);
|
||||||
}
|
}
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
/********************** Show all the attendance events ***********************/
|
/************************* Show all attendance events ************************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
static void Att_ShowAllAttEvents (struct Att_Events *Events)
|
static void Att_ShowAllAttEvents (struct Att_Events *Events)
|
||||||
|
@ -292,7 +292,7 @@ static void Att_ShowAllAttEvents (struct Att_Events *Events)
|
||||||
|
|
||||||
HTM_TR_End ();
|
HTM_TR_End ();
|
||||||
|
|
||||||
/***** Write all the attendance events *****/
|
/***** Write all attendance events *****/
|
||||||
for (NumAttEvent = Pagination.FirstItemVisible, Gbl.RowEvenOdd = 0;
|
for (NumAttEvent = Pagination.FirstItemVisible, Gbl.RowEvenOdd = 0;
|
||||||
NumAttEvent <= Pagination.LastItemVisible;
|
NumAttEvent <= Pagination.LastItemVisible;
|
||||||
NumAttEvent++)
|
NumAttEvent++)
|
||||||
|
@ -909,7 +909,7 @@ void Att_RemoveAttEventFromDB (long AttCod)
|
||||||
/***** Remove users registered in the attendance event *****/
|
/***** Remove users registered in the attendance event *****/
|
||||||
Att_DB_RemoveAllUsrsFromAnAttEvent (AttCod);
|
Att_DB_RemoveAllUsrsFromAnAttEvent (AttCod);
|
||||||
|
|
||||||
/***** Remove all the groups of this attendance event *****/
|
/***** Remove all groups of this attendance event *****/
|
||||||
Att_DB_RemoveGrpsAssociatedToAnAttEvent (AttCod);
|
Att_DB_RemoveGrpsAssociatedToAnAttEvent (AttCod);
|
||||||
|
|
||||||
/***** Remove attendance event *****/
|
/***** Remove attendance event *****/
|
||||||
|
@ -1397,7 +1397,7 @@ static void Att_GetAndWriteNamesOfGrpsAssociatedToAttEvent (struct Att_Event *Ev
|
||||||
}
|
}
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
/*************** Remove all the attendance events of a course ****************/
|
/***************** Remove all attendance events of a course ******************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
void Att_RemoveCrsAttEvents (long CrsCod)
|
void Att_RemoveCrsAttEvents (long CrsCod)
|
||||||
|
@ -1416,7 +1416,7 @@ void Att_RemoveCrsAttEvents (long CrsCod)
|
||||||
/********************* Get number of attendance events ***********************/
|
/********************* Get number of attendance events ***********************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
// Returns the number of attendance events
|
// Returns the number of attendance events
|
||||||
// in this location (all the platform, current degree or current course)
|
// in this location (all the platform, the current degree or the current course)
|
||||||
|
|
||||||
unsigned Att_GetNumAttEvents (HieLvl_Level_t Scope,unsigned *NumNotif)
|
unsigned Att_GetNumAttEvents (HieLvl_Level_t Scope,unsigned *NumNotif)
|
||||||
{
|
{
|
||||||
|
@ -1885,7 +1885,8 @@ static void Att_PutParamsCodGrps (long AttCod)
|
||||||
free (GrpCods);
|
free (GrpCods);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
/***** Write the boolean parameter that indicates if all the groups must be listed *****/
|
/***** Write the boolean parameter that indicates
|
||||||
|
if all groups should be listed *****/
|
||||||
Par_PutHiddenParamChar ("AllGroups",'Y');
|
Par_PutHiddenParamChar ("AllGroups",'Y');
|
||||||
|
|
||||||
/***** Free structure that stores the query result *****/
|
/***** Free structure that stores the query result *****/
|
||||||
|
|
|
@ -328,12 +328,12 @@ unsigned Att_DB_GetGroupsAssociatedToEvent (MYSQL_RES **mysql_res,long AttCod)
|
||||||
}
|
}
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
/************* Remove one group from all the attendance events ***************/
|
/*************** Remove one group from all attendance events *****************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
void Att_DB_RemoveGroup (long GrpCod)
|
void Att_DB_RemoveGroup (long GrpCod)
|
||||||
{
|
{
|
||||||
/***** Remove group from all the attendance events *****/
|
/***** Remove group from all attendance events *****/
|
||||||
DB_QueryDELETE ("can not remove group from the associations"
|
DB_QueryDELETE ("can not remove group from the associations"
|
||||||
" between attendance events and groups",
|
" between attendance events and groups",
|
||||||
"DELETE FROM att_groups"
|
"DELETE FROM att_groups"
|
||||||
|
@ -342,12 +342,12 @@ void Att_DB_RemoveGroup (long GrpCod)
|
||||||
}
|
}
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
/******** Remove groups of one type from all the attendance events ***********/
|
/********** Remove groups of one type from all attendance events *************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
void Att_DB_RemoveGroupsOfType (long GrpTypCod)
|
void Att_DB_RemoveGroupsOfType (long GrpTypCod)
|
||||||
{
|
{
|
||||||
/***** Remove group from all the attendance events *****/
|
/***** Remove group from all attendance events *****/
|
||||||
DB_QueryDELETE ("can not remove groups of a type from the associations"
|
DB_QueryDELETE ("can not remove groups of a type from the associations"
|
||||||
" between attendance events and groups",
|
" between attendance events and groups",
|
||||||
"DELETE FROM att_groups"
|
"DELETE FROM att_groups"
|
||||||
|
@ -530,7 +530,7 @@ void Att_DB_RemoveAllUsrsFromAnAttEvent (long AttCod)
|
||||||
}
|
}
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
/* Remove one user from all the attendance events where he/she is registered */
|
/*** Remove one user from all attendance events where he/she is registered ***/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
void Att_DB_RemoveUsrFromAllAttEvents (long UsrCod)
|
void Att_DB_RemoveUsrFromAllAttEvents (long UsrCod)
|
||||||
|
@ -542,7 +542,7 @@ void Att_DB_RemoveUsrFromAllAttEvents (long UsrCod)
|
||||||
}
|
}
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
/*********** Remove one student from all the attendance events ***************/
|
/************* Remove one student from all attendance events *****************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
void Att_DB_RemoveUsrFromCrsAttEvents (long UsrCod,long CrsCod)
|
void Att_DB_RemoveUsrFromCrsAttEvents (long UsrCod,long CrsCod)
|
||||||
|
@ -632,7 +632,7 @@ unsigned Att_DB_GetNumAttEventsInCrs (long CrsCod)
|
||||||
/*************** Get number of courses with attendance events ****************/
|
/*************** Get number of courses with attendance events ****************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
// Returns the number of courses with attendance events
|
// Returns the number of courses with attendance events
|
||||||
// in this location (all the platform, current degree or current course)
|
// in this location (all the platform, the current degree or the current course)
|
||||||
|
|
||||||
unsigned Att_DB_GetNumCoursesWithAttEvents (HieLvl_Level_t Scope)
|
unsigned Att_DB_GetNumCoursesWithAttEvents (HieLvl_Level_t Scope)
|
||||||
{
|
{
|
||||||
|
|
|
@ -177,7 +177,7 @@ static void Ban_WriteListOfBanners (const struct Ban_Banners *Banners)
|
||||||
/***** List start *****/
|
/***** List start *****/
|
||||||
HTM_UL_Begin ("class=\"LIST_LEFT\"");
|
HTM_UL_Begin ("class=\"LIST_LEFT\"");
|
||||||
|
|
||||||
/***** Write all the banners *****/
|
/***** Write all banners *****/
|
||||||
for (NumBan = 0;
|
for (NumBan = 0;
|
||||||
NumBan < Banners->Num;
|
NumBan < Banners->Num;
|
||||||
NumBan++)
|
NumBan++)
|
||||||
|
@ -271,7 +271,7 @@ static void Ban_EditBannersInternal (struct Ban_Banners *Banners,
|
||||||
}
|
}
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
/**************************** List all the banners ***************************/
|
/****************************** List all banners *****************************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
static void Ban_GetListBanners (struct Ban_Banners *Banners,
|
static void Ban_GetListBanners (struct Ban_Banners *Banners,
|
||||||
|
@ -399,7 +399,7 @@ void Ban_PutIconToViewBanners (void)
|
||||||
}
|
}
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
/*************************** List all the banners ****************************/
|
/***************************** List all banners ******************************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
static void Ban_ListBannersForEdition (struct Ban_Banners *Banners)
|
static void Ban_ListBannersForEdition (struct Ban_Banners *Banners)
|
||||||
|
@ -414,7 +414,7 @@ static void Ban_ListBannersForEdition (struct Ban_Banners *Banners)
|
||||||
/***** Table head *****/
|
/***** Table head *****/
|
||||||
Ban_PutHeadBanners ();
|
Ban_PutHeadBanners ();
|
||||||
|
|
||||||
/***** Write all the banners *****/
|
/***** Write all banners *****/
|
||||||
for (NumBan = 0;
|
for (NumBan = 0;
|
||||||
NumBan < Banners->Num;
|
NumBan < Banners->Num;
|
||||||
NumBan++)
|
NumBan++)
|
||||||
|
|
|
@ -2619,7 +2619,7 @@ static void Brw_CreateFoldersAssignmentsIfNotExist (long ZoneUsrCod)
|
||||||
}
|
}
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
/**** Update folders of assignments if exist for all the users in course *****/
|
/****** Update folders of assignments if exist for all users in course *******/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
// Folders are in level 1, just under root folder
|
// Folders are in level 1, just under root folder
|
||||||
|
|
||||||
|
@ -2741,7 +2741,7 @@ bool Brw_UpdateFoldersAssigmentsIfExistForAllUsrs (const char *OldFolderName,con
|
||||||
}
|
}
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
/**** Remove folders of assignments if exist for all the users in course *****/
|
/******* Remove folders of assignments if exist for all users in course ******/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
// Folders are in level 1, just under root folder
|
// Folders are in level 1, just under root folder
|
||||||
|
|
||||||
|
@ -5663,7 +5663,8 @@ void Brw_RemSubtreeInFileBrowser (void)
|
||||||
Fil_RemoveTree (Path);
|
Fil_RemoveTree (Path);
|
||||||
|
|
||||||
/* If a folder is removed,
|
/* If a folder is removed,
|
||||||
it is necessary to remove it from the database and all the files o folders under that folder */
|
it is necessary to remove it from the database
|
||||||
|
and all files or folders under that folder */
|
||||||
Brw_RemoveOneFileOrFolderFromDB (Gbl.FileBrowser.FilFolLnk.Full);
|
Brw_RemoveOneFileOrFolderFromDB (Gbl.FileBrowser.FilFolLnk.Full);
|
||||||
Brw_RemoveChildrenOfFolderFromDB (Gbl.FileBrowser.FilFolLnk.Full);
|
Brw_RemoveChildrenOfFolderFromDB (Gbl.FileBrowser.FilFolLnk.Full);
|
||||||
|
|
||||||
|
@ -6292,7 +6293,7 @@ void Brw_PasteIntoFileBrowser (void)
|
||||||
}
|
}
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
/****** Paste all the content of the clipboard in the current location *******/
|
/************* Paste all clipboard content at current location ***************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
// Source:
|
// Source:
|
||||||
// Type of file browser: Gbl.FileBrowser.Clipboard.FileBrowser
|
// Type of file browser: Gbl.FileBrowser.Clipboard.FileBrowser
|
||||||
|
@ -7226,7 +7227,7 @@ void Brw_RenFolderFileBrowser (void)
|
||||||
else // Success
|
else // Success
|
||||||
{
|
{
|
||||||
/* If a folder is renamed,
|
/* If a folder is renamed,
|
||||||
it is necessary to rename all the entries in the tables of files
|
it is necessary to rename all entries in the tables of files
|
||||||
that belong to the subtree starting at that folder */
|
that belong to the subtree starting at that folder */
|
||||||
Brw_DB_RenameOneFolder (OldPathInTree,
|
Brw_DB_RenameOneFolder (OldPathInTree,
|
||||||
NewPathInTree);
|
NewPathInTree);
|
||||||
|
@ -9444,7 +9445,7 @@ static bool Brw_CheckIfICanCreateIntoFolder (unsigned Level)
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
// Returns true if I can remove or rename Gbl.FileBrowser.FilFolLnk.Full, and false if I have not permission
|
// Returns true if I can remove or rename Gbl.FileBrowser.FilFolLnk.Full, and false if I have not permission
|
||||||
// I can remove or rename a file if I am the publisher
|
// I can remove or rename a file if I am the publisher
|
||||||
// I can remove or rename a folder if I am the unique publisher of all the files and folders in the subtree starting there
|
// I can remove or rename a folder if I am the unique publisher of all files and folders in the subtree starting there
|
||||||
|
|
||||||
static bool Brw_CheckIfICanModifySharedFileOrFolder (void)
|
static bool Brw_CheckIfICanModifySharedFileOrFolder (void)
|
||||||
{
|
{
|
||||||
|
@ -9559,7 +9560,7 @@ static bool Brw_CheckIfICanViewProjectAssessment (long PrjCod)
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
// Returns true if I can remove or rename Gbl.FileBrowser.FilFolLnk.Full, and false if I have not permission
|
// Returns true if I can remove or rename Gbl.FileBrowser.FilFolLnk.Full, and false if I have not permission
|
||||||
// I can remove or rename a file if I am the publisher
|
// I can remove or rename a file if I am the publisher
|
||||||
// I can remove or rename a folder if I am the unique publisher of all the files and folders in the subtree starting there
|
// I can remove or rename a folder if I am the unique publisher of all files and folders in the subtree starting there
|
||||||
|
|
||||||
static bool Brw_CheckIfICanModifyPrjDocFileOrFolder (void)
|
static bool Brw_CheckIfICanModifyPrjDocFileOrFolder (void)
|
||||||
{
|
{
|
||||||
|
@ -9588,7 +9589,7 @@ static bool Brw_CheckIfICanModifyPrjDocFileOrFolder (void)
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
// Returns true if I can remove or rename Gbl.FileBrowser.FilFolLnk.Full, and false if I have not permission
|
// Returns true if I can remove or rename Gbl.FileBrowser.FilFolLnk.Full, and false if I have not permission
|
||||||
// I can remove or rename a file if I am the publisher
|
// I can remove or rename a file if I am the publisher
|
||||||
// I can remove or rename a folder if I am the unique publisher of all the files and folders in the subtree starting there
|
// I can remove or rename a folder if I am the unique publisher of all files and folders in the subtree starting there
|
||||||
|
|
||||||
static bool Brw_CheckIfICanModifyPrjAssFileOrFolder (void)
|
static bool Brw_CheckIfICanModifyPrjAssFileOrFolder (void)
|
||||||
{
|
{
|
||||||
|
@ -9613,7 +9614,7 @@ static bool Brw_CheckIfICanModifyPrjAssFileOrFolder (void)
|
||||||
}
|
}
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
/************* Remove common zones of all the groups of a type ***************/
|
/************* Remove common zones of all groups of a type ***************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
void Brw_RemoveZonesOfGroupsOfType (long GrpTypCod)
|
void Brw_RemoveZonesOfGroupsOfType (long GrpTypCod)
|
||||||
|
|
|
@ -94,7 +94,7 @@ void Bld_ResetBuildings (struct Bld_Buildings *Buildings)
|
||||||
}
|
}
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
/************************** List all the buildings ***************************/
|
/****************************** List all buildings ***************************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
void Bld_SeeBuildings (void)
|
void Bld_SeeBuildings (void)
|
||||||
|
@ -305,7 +305,7 @@ void Bld_PutIconToViewBuildings (void)
|
||||||
}
|
}
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
/************************** List all the buildings ***************************/
|
/***************************** List all buildings ***************************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
void Bld_GetListBuildings (struct Bld_Buildings *Buildings,
|
void Bld_GetListBuildings (struct Bld_Buildings *Buildings,
|
||||||
|
@ -407,7 +407,7 @@ void Bld_FreeListBuildings (struct Bld_Buildings *Buildings)
|
||||||
}
|
}
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
/************************* List all the buildings ****************************/
|
/**************************** List all buildings *****************************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
static void Bld_ListBuildingsForEdition (const struct Bld_Buildings *Buildings)
|
static void Bld_ListBuildingsForEdition (const struct Bld_Buildings *Buildings)
|
||||||
|
@ -422,7 +422,7 @@ static void Bld_ListBuildingsForEdition (const struct Bld_Buildings *Buildings)
|
||||||
/***** Write heading *****/
|
/***** Write heading *****/
|
||||||
Bld_PutHeadBuildings ();
|
Bld_PutHeadBuildings ();
|
||||||
|
|
||||||
/***** Write all the buildings *****/
|
/***** Write all buildings *****/
|
||||||
for (NumBld = 0;
|
for (NumBld = 0;
|
||||||
NumBld < Buildings->Num;
|
NumBld < Buildings->Num;
|
||||||
NumBld++)
|
NumBld++)
|
||||||
|
|
|
@ -537,7 +537,7 @@ void Cfe_UnhideCallForExam (void)
|
||||||
}
|
}
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
/**************** List all the calls for exams to see them *******************/
|
/****************** List all calls for exams to see them *********************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
void Cfe_ListCallsForExamsSee (void)
|
void Cfe_ListCallsForExamsSee (void)
|
||||||
|
@ -557,7 +557,7 @@ void Cfe_ListCallsForExamsSee (void)
|
||||||
}
|
}
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
/************ List all the calls for exams to edit or remove them ************/
|
/************** List all calls for exams to edit or remove them **************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
void Cfe_ListCallsForExamsEdit (void)
|
void Cfe_ListCallsForExamsEdit (void)
|
||||||
|
@ -626,7 +626,7 @@ static void Cfe_GetDateToHighlight (struct Cfe_CallsForExams *CallsForExams)
|
||||||
}
|
}
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
/********************* List all the calls for exams **************************/
|
/*********************** List all calls for exams ****************************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
static void Cfe_ListCallsForExams (struct Cfe_CallsForExams *CallsForExams,
|
static void Cfe_ListCallsForExams (struct Cfe_CallsForExams *CallsForExams,
|
||||||
|
@ -731,7 +731,7 @@ static void Cfe_PutButtonToCreateNewCallForExam (void)
|
||||||
}
|
}
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
/******** Create a list with the dates of all the calls for exams ************/
|
/********** Create a list with the dates of all calls for exams **************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
void Cfe_CreateListCallsForExams (struct Cfe_CallsForExams *CallsForExams)
|
void Cfe_CreateListCallsForExams (struct Cfe_CallsForExams *CallsForExams)
|
||||||
|
|
|
@ -270,7 +270,7 @@ static void Ctr_ListCenters (void)
|
||||||
/***** Write heading *****/
|
/***** Write heading *****/
|
||||||
Ctr_PutHeadCentersForSeeing (true); // Order selectable
|
Ctr_PutHeadCentersForSeeing (true); // Order selectable
|
||||||
|
|
||||||
/***** Write all the centers and their nuber of teachers *****/
|
/***** Write all centers and their nuber of teachers *****/
|
||||||
for (NumCtr = 0;
|
for (NumCtr = 0;
|
||||||
NumCtr < Gbl.Hierarchy.Ctrs.Num;
|
NumCtr < Gbl.Hierarchy.Ctrs.Num;
|
||||||
NumCtr++)
|
NumCtr++)
|
||||||
|
@ -752,7 +752,7 @@ void Ctr_WriteSelectorOfCenter (void)
|
||||||
}
|
}
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
/*************************** List all the centers ****************************/
|
/***************************** List all centers ******************************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
static void Ctr_ListCentersForEdition (const struct Plc_Places *Places)
|
static void Ctr_ListCentersForEdition (const struct Plc_Places *Places)
|
||||||
|
@ -780,7 +780,7 @@ static void Ctr_ListCentersForEdition (const struct Plc_Places *Places)
|
||||||
/***** Write heading *****/
|
/***** Write heading *****/
|
||||||
Ctr_PutHeadCentersForEdition ();
|
Ctr_PutHeadCentersForEdition ();
|
||||||
|
|
||||||
/***** Write all the centers *****/
|
/***** Write all centers *****/
|
||||||
for (NumCtr = 0;
|
for (NumCtr = 0;
|
||||||
NumCtr < Gbl.Hierarchy.Ctrs.Num;
|
NumCtr < Gbl.Hierarchy.Ctrs.Num;
|
||||||
NumCtr++)
|
NumCtr++)
|
||||||
|
@ -1080,7 +1080,7 @@ void Ctr_RemoveCenter (void)
|
||||||
Txt_To_remove_a_center_you_must_first_remove_all_degrees_and_teachers_in_the_center);
|
Txt_To_remove_a_center_you_must_first_remove_all_degrees_and_teachers_in_the_center);
|
||||||
else // Center has no degrees or users ==> remove it
|
else // Center has no degrees or users ==> remove it
|
||||||
{
|
{
|
||||||
/***** Remove all the threads and posts in forums of the center *****/
|
/***** Remove all threads and posts in forums of the center *****/
|
||||||
For_DB_RemoveForums (HieLvl_CTR,Ctr_EditingCtr->CtrCod);
|
For_DB_RemoveForums (HieLvl_CTR,Ctr_EditingCtr->CtrCod);
|
||||||
|
|
||||||
/***** Remove surveys of the center *****/
|
/***** Remove surveys of the center *****/
|
||||||
|
|
|
@ -602,13 +602,14 @@ TODO: FIX BUG, URGENT! En las fechas como par
|
||||||
|
|
||||||
TODO: En las encuestas, que los estudiantes no puedan ver los resultados hasta que no finalice el plazo.
|
TODO: En las encuestas, que los estudiantes no puedan ver los resultados hasta que no finalice el plazo.
|
||||||
*/
|
*/
|
||||||
#define Log_PLATFORM_VERSION "SWAD 21.47.3 (2021-10-29)"
|
#define Log_PLATFORM_VERSION "SWAD 21.47.4 (2021-10-30)"
|
||||||
#define CSS_FILE "swad20.45.css"
|
#define CSS_FILE "swad20.45.css"
|
||||||
#define JS_FILE "swad20.69.1.js"
|
#define JS_FILE "swad20.69.1.js"
|
||||||
/*
|
/*
|
||||||
TODO: Rename CENTRE to CENTER in help wiki.
|
TODO: Rename CENTRE to CENTER in help wiki.
|
||||||
TODO: Rename ASSESSMENT.Announcements to ASSESSMENT.Calls_for_exams
|
TODO: Rename ASSESSMENT.Announcements to ASSESSMENT.Calls_for_exams
|
||||||
|
|
||||||
|
Version 21.47.4: Oct 30, 2021 Review of comments. (321253 lines)
|
||||||
Version 21.47.3: Oct 29, 2021 Queries moved to module swad_questions_database. (321299 lines)
|
Version 21.47.3: Oct 29, 2021 Queries moved to module swad_questions_database. (321299 lines)
|
||||||
Version 21.47.2: Oct 29, 2021 Queries moved to module swad_questions_database. (321259 lines)
|
Version 21.47.2: Oct 29, 2021 Queries moved to module swad_questions_database. (321259 lines)
|
||||||
Version 21.47.1: Oct 28, 2021 Queries moved to module swad_questions_database. (321231 lines)
|
Version 21.47.1: Oct 28, 2021 Queries moved to module swad_questions_database. (321231 lines)
|
||||||
|
|
|
@ -139,7 +139,7 @@ void Cht_ShowListOfAvailableChatRooms (void)
|
||||||
HTM_TxtF (" %s",Txt_Chat_rooms);
|
HTM_TxtF (" %s",Txt_Chat_rooms);
|
||||||
HTM_LI_End ();
|
HTM_LI_End ();
|
||||||
|
|
||||||
/***** Link to chat available for all the users *****/
|
/***** Link to chat available for all users *****/
|
||||||
IsLastItemInLevel[1] = (!Gbl.Usrs.Me.IBelongToCurrentCrs &&
|
IsLastItemInLevel[1] = (!Gbl.Usrs.Me.IBelongToCurrentCrs &&
|
||||||
!Gbl.Usrs.Me.MyDegs.Num);
|
!Gbl.Usrs.Me.MyDegs.Num);
|
||||||
snprintf (ThisRoomFullName,sizeof (ThisRoomFullName),"%s (%s)",
|
snprintf (ThisRoomFullName,sizeof (ThisRoomFullName),"%s (%s)",
|
||||||
|
|
|
@ -79,7 +79,7 @@
|
||||||
#define Cfg_ABOUT_LOGO_WIDTH 125
|
#define Cfg_ABOUT_LOGO_WIDTH 125
|
||||||
#define Cfg_ABOUT_LOGO_HEIGHT 40
|
#define Cfg_ABOUT_LOGO_HEIGHT 40
|
||||||
|
|
||||||
#define Cfg_TIME_TO_SEND_PENDING_NOTIF ((time_t) (30UL * 60UL)) // After these seconds after first pending notification, all the pending notifications are sent by email
|
#define Cfg_TIME_TO_SEND_PENDING_NOTIF ((time_t) (30UL * 60UL)) // After these seconds after first pending notification, all pending notifications are sent by email
|
||||||
|
|
||||||
#define Cfg_GOOGLE_ANALYTICS ""
|
#define Cfg_GOOGLE_ANALYTICS ""
|
||||||
|
|
||||||
|
@ -116,7 +116,7 @@
|
||||||
#define Cfg_ABOUT_LOGO_WIDTH 32
|
#define Cfg_ABOUT_LOGO_WIDTH 32
|
||||||
#define Cfg_ABOUT_LOGO_HEIGHT 32
|
#define Cfg_ABOUT_LOGO_HEIGHT 32
|
||||||
|
|
||||||
#define Cfg_TIME_TO_SEND_PENDING_NOTIF ((time_t) (30UL * 60UL)) // After these seconds after first pending notification, all the pending notifications are sent by email
|
#define Cfg_TIME_TO_SEND_PENDING_NOTIF ((time_t) (30UL * 60UL)) // After these seconds after first pending notification, all pending notifications are sent by email
|
||||||
|
|
||||||
/* Google Analytics without cookies.
|
/* Google Analytics without cookies.
|
||||||
* This code comes from http://stackoverflow.com/a/19995629
|
* This code comes from http://stackoverflow.com/a/19995629
|
||||||
|
@ -174,7 +174,7 @@
|
||||||
#define Cfg_ABOUT_LOGO_WIDTH 100
|
#define Cfg_ABOUT_LOGO_WIDTH 100
|
||||||
#define Cfg_ABOUT_LOGO_HEIGHT 32
|
#define Cfg_ABOUT_LOGO_HEIGHT 32
|
||||||
|
|
||||||
#define Cfg_TIME_TO_SEND_PENDING_NOTIF ((time_t) (30UL * 60UL)) // After these seconds after first pending notification, all the pending notifications are sent by email
|
#define Cfg_TIME_TO_SEND_PENDING_NOTIF ((time_t) (30UL * 60UL)) // After these seconds after first pending notification, all pending notifications are sent by email
|
||||||
|
|
||||||
#define Cfg_GOOGLE_ANALYTICS ""
|
#define Cfg_GOOGLE_ANALYTICS ""
|
||||||
|
|
||||||
|
@ -229,7 +229,7 @@
|
||||||
#define Cfg_ABOUT_LOGO_WIDTH 32
|
#define Cfg_ABOUT_LOGO_WIDTH 32
|
||||||
#define Cfg_ABOUT_LOGO_HEIGHT 32
|
#define Cfg_ABOUT_LOGO_HEIGHT 32
|
||||||
|
|
||||||
#define Cfg_TIME_TO_SEND_PENDING_NOTIF ((time_t) (30UL * 60UL)) // After these seconds after first pending notification, all the pending notifications are sent by email
|
#define Cfg_TIME_TO_SEND_PENDING_NOTIF ((time_t) (30UL * 60UL)) // After these seconds after first pending notification, all pending notifications are sent by email
|
||||||
|
|
||||||
#define Cfg_GOOGLE_ANALYTICS ""
|
#define Cfg_GOOGLE_ANALYTICS ""
|
||||||
|
|
||||||
|
@ -406,10 +406,10 @@
|
||||||
#define Cfg_PATH_ICON_PUBLIC Cfg_PATH_SWAD_PUBLIC "/" Cfg_FOLDER_PUBLIC_ICON
|
#define Cfg_PATH_ICON_PUBLIC Cfg_PATH_SWAD_PUBLIC "/" Cfg_FOLDER_PUBLIC_ICON
|
||||||
#define Cfg_URL_ICON_PUBLIC Cfg_URL_SWAD_PUBLIC "/" Cfg_FOLDER_PUBLIC_ICON
|
#define Cfg_URL_ICON_PUBLIC Cfg_URL_SWAD_PUBLIC "/" Cfg_FOLDER_PUBLIC_ICON
|
||||||
|
|
||||||
#define Cfg_ICON_FOLDER_THEMES "theme" // Directory with all the images for each theme
|
#define Cfg_ICON_FOLDER_THEMES "theme" // Directory with all images for each theme
|
||||||
#define Cfg_URL_ICON_THEMES_PUBLIC Cfg_URL_ICON_PUBLIC "/" Cfg_ICON_FOLDER_THEMES
|
#define Cfg_URL_ICON_THEMES_PUBLIC Cfg_URL_ICON_PUBLIC "/" Cfg_ICON_FOLDER_THEMES
|
||||||
|
|
||||||
#define Cfg_ICON_FOLDER_SETS "iconset" // Directory with all the icons for each icon set
|
#define Cfg_ICON_FOLDER_SETS "iconset" // Directory with all icons for each icon set
|
||||||
#define Cfg_PATH_ICON_SETS_PUBLIC Cfg_PATH_ICON_PUBLIC "/" Cfg_ICON_FOLDER_SETS
|
#define Cfg_PATH_ICON_SETS_PUBLIC Cfg_PATH_ICON_PUBLIC "/" Cfg_ICON_FOLDER_SETS
|
||||||
#define Cfg_URL_ICON_SETS_PUBLIC Cfg_URL_ICON_PUBLIC "/" Cfg_ICON_FOLDER_SETS
|
#define Cfg_URL_ICON_SETS_PUBLIC Cfg_URL_ICON_PUBLIC "/" Cfg_ICON_FOLDER_SETS
|
||||||
|
|
||||||
|
|
|
@ -187,7 +187,7 @@ void Cty_SeeCtyWithPendingInss (void)
|
||||||
}
|
}
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
/*************************** List all the countries **************************/
|
/****************************** List all countries ***************************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
void Cty_ListCountries (void)
|
void Cty_ListCountries (void)
|
||||||
|
@ -197,7 +197,7 @@ void Cty_ListCountries (void)
|
||||||
}
|
}
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
/*************************** List all the countries **************************/
|
/****************************** List all countries ***************************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
void Cty_ListCountries1 (void)
|
void Cty_ListCountries1 (void)
|
||||||
|
@ -228,7 +228,7 @@ void Cty_ListCountries2 (void)
|
||||||
/***** Write heading *****/
|
/***** Write heading *****/
|
||||||
Cty_PutHeadCountriesForSeeing (true); // Order selectable
|
Cty_PutHeadCountriesForSeeing (true); // Order selectable
|
||||||
|
|
||||||
/***** Write all the countries and their number of users and institutions *****/
|
/***** Write all countries and their number of users and institutions *****/
|
||||||
for (NumCty = 0;
|
for (NumCty = 0;
|
||||||
NumCty < Gbl.Hierarchy.Ctys.Num;
|
NumCty < Gbl.Hierarchy.Ctys.Num;
|
||||||
NumCty++)
|
NumCty++)
|
||||||
|
@ -610,7 +610,7 @@ void Cty_WriteScriptGoogleGeochart (void)
|
||||||
Txt_Users_NO_HTML,
|
Txt_Users_NO_HTML,
|
||||||
Txt_Institutions_NO_HTML);
|
Txt_Institutions_NO_HTML);
|
||||||
|
|
||||||
/***** Write all the countries and their number of users and institutions *****/
|
/***** Write all countries and their number of users and institutions *****/
|
||||||
for (NumCty = 0;
|
for (NumCty = 0;
|
||||||
NumCty < Gbl.Hierarchy.Ctys.Num;
|
NumCty < Gbl.Hierarchy.Ctys.Num;
|
||||||
NumCty++)
|
NumCty++)
|
||||||
|
@ -1043,7 +1043,7 @@ void Cty_FreeListCountries (void)
|
||||||
}
|
}
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
/*************************** List all the countries **************************/
|
/***************************** List all countries ****************************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
static void Cty_ListCountriesForEdition (void)
|
static void Cty_ListCountriesForEdition (void)
|
||||||
|
|
|
@ -948,7 +948,7 @@ static bool Crs_ListCoursesOfAYearForSeeing (unsigned Year)
|
||||||
bool ThisYearHasCourses = false;
|
bool ThisYearHasCourses = false;
|
||||||
unsigned NumUsrs[Rol_NUM_ROLES];
|
unsigned NumUsrs[Rol_NUM_ROLES];
|
||||||
|
|
||||||
/***** Write all the courses of this year *****/
|
/***** Write all courses of this year *****/
|
||||||
for (NumCrs = 0;
|
for (NumCrs = 0;
|
||||||
NumCrs < Gbl.Hierarchy.Crss.Num;
|
NumCrs < Gbl.Hierarchy.Crss.Num;
|
||||||
NumCrs++)
|
NumCrs++)
|
||||||
|
@ -1784,10 +1784,10 @@ static void Crs_EmptyCourseCompletely (long CrsCod)
|
||||||
Crs.CrsCod = CrsCod;
|
Crs.CrsCod = CrsCod;
|
||||||
Crs_GetDataOfCourseByCod (&Crs);
|
Crs_GetDataOfCourseByCod (&Crs);
|
||||||
|
|
||||||
/***** Remove all the students in the course *****/
|
/***** Remove all students in the course *****/
|
||||||
Enr_RemAllStdsInCrs (&Crs);
|
Enr_RemAllStdsInCrs (&Crs);
|
||||||
|
|
||||||
/***** Set all the notifications from the course as removed,
|
/***** Set all notifications from the course as removed,
|
||||||
except notifications about new messages *****/
|
except notifications about new messages *****/
|
||||||
Ntf_DB_MarkNotifInCrsAsRemoved (-1L,CrsCod);
|
Ntf_DB_MarkNotifInCrsAsRemoved (-1L,CrsCod);
|
||||||
|
|
||||||
|
@ -1827,7 +1827,7 @@ static void Crs_EmptyCourseCompletely (long CrsCod)
|
||||||
/***** Remove notices in the course *****/
|
/***** Remove notices in the course *****/
|
||||||
Not_DB_RemoveCrsNotices (CrsCod);
|
Not_DB_RemoveCrsNotices (CrsCod);
|
||||||
|
|
||||||
/***** Remove all the threads and posts in forums of the course *****/
|
/***** Remove all threads and posts in forums of the course *****/
|
||||||
For_DB_RemoveForums (HieLvl_CRS,CrsCod);
|
For_DB_RemoveForums (HieLvl_CRS,CrsCod);
|
||||||
|
|
||||||
/***** Remove all surveys in the course *****/
|
/***** Remove all surveys in the course *****/
|
||||||
|
|
|
@ -1013,7 +1013,7 @@ void Deg_PutIconToViewDegrees (void)
|
||||||
}
|
}
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
/********** Create a list with all the degrees that have students ************/
|
/************ Create a list with all degrees that have students **************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
void Deg_GetListAllDegsWithStds (struct ListDegrees *Degs)
|
void Deg_GetListAllDegsWithStds (struct ListDegrees *Degs)
|
||||||
|
@ -1350,7 +1350,7 @@ void Deg_RemoveDegreeCompletely (long DegCod)
|
||||||
/* Free structure that stores the query result */
|
/* Free structure that stores the query result */
|
||||||
DB_FreeMySQLResult (&mysql_res);
|
DB_FreeMySQLResult (&mysql_res);
|
||||||
|
|
||||||
/***** Remove all the threads and posts in forums of the degree *****/
|
/***** Remove all threads and posts in forums of the degree *****/
|
||||||
For_DB_RemoveForums (HieLvl_DEG,DegCod);
|
For_DB_RemoveForums (HieLvl_DEG,DegCod);
|
||||||
|
|
||||||
/***** Remove surveys of the degree *****/
|
/***** Remove surveys of the degree *****/
|
||||||
|
@ -1375,7 +1375,7 @@ void Deg_RemoveDegreeCompletely (long DegCod)
|
||||||
/***** Flush caches *****/
|
/***** Flush caches *****/
|
||||||
Crs_FlushCacheNumCrssInDeg ();
|
Crs_FlushCacheNumCrssInDeg ();
|
||||||
|
|
||||||
/***** Delete all the degrees in sta_degrees table not present in degrees table *****/
|
/***** Delete all degrees in stats table not present in degrees table *****/
|
||||||
Pho_DB_RemoveObsoleteStatDegrees ();
|
Pho_DB_RemoveObsoleteStatDegrees ();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -89,7 +89,7 @@ void Deg_DB_CreateDegree (struct Deg_Degree *Deg,unsigned Status)
|
||||||
}
|
}
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
/**************** Create a list with all the degree types ********************/
|
/****************** Create a list with all degree types **********************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
unsigned Deg_DB_GetDegreeTypes (MYSQL_RES **mysql_res,
|
unsigned Deg_DB_GetDegreeTypes (MYSQL_RES **mysql_res,
|
||||||
|
|
|
@ -580,7 +580,7 @@ static void DegTyp_PutHeadDegreeTypesForEdition (void)
|
||||||
}
|
}
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
/**************** Create a list with all the degree types ********************/
|
/****************** Create a list with all degree types **********************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
void DegTyp_GetListDegreeTypes (HieLvl_Level_t Scope,DegTyp_Order_t Order)
|
void DegTyp_GetListDegreeTypes (HieLvl_Level_t Scope,DegTyp_Order_t Order)
|
||||||
|
|
|
@ -99,7 +99,7 @@ static void Dpt_ResetDepartments (struct Dpt_Departments *Departments)
|
||||||
}
|
}
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
/************************* List all the departments **************************/
|
/*************************** List all departments ****************************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
void Dpt_SeeDepts (void)
|
void Dpt_SeeDepts (void)
|
||||||
|
@ -166,7 +166,7 @@ void Dpt_SeeDepts (void)
|
||||||
}
|
}
|
||||||
HTM_TR_End ();
|
HTM_TR_End ();
|
||||||
|
|
||||||
/***** Write all the Dpt_GetListDepartmentsdepartments and their nuber of teachers *****/
|
/***** Write all departments and their number of teachers *****/
|
||||||
for (NumDpt = 0;
|
for (NumDpt = 0;
|
||||||
NumDpt < Departments.Num;
|
NumDpt < Departments.Num;
|
||||||
NumDpt++)
|
NumDpt++)
|
||||||
|
@ -439,7 +439,7 @@ void Dpt_FreeListDepartments (struct Dpt_Departments *Departments)
|
||||||
}
|
}
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
/************************** List all the departments *************************/
|
/***************************** List all departments **************************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
static void Dpt_ListDepartmentsForEdition (const struct Dpt_Departments *Departments)
|
static void Dpt_ListDepartmentsForEdition (const struct Dpt_Departments *Departments)
|
||||||
|
@ -456,7 +456,7 @@ static void Dpt_ListDepartmentsForEdition (const struct Dpt_Departments *Departm
|
||||||
/***** Write heading *****/
|
/***** Write heading *****/
|
||||||
Dpt_PutHeadDepartments ();
|
Dpt_PutHeadDepartments ();
|
||||||
|
|
||||||
/***** Write all the departments *****/
|
/***** Write all departments *****/
|
||||||
for (NumDpt = 0;
|
for (NumDpt = 0;
|
||||||
NumDpt < Departments->Num;
|
NumDpt < Departments->Num;
|
||||||
NumDpt++)
|
NumDpt++)
|
||||||
|
|
|
@ -303,7 +303,7 @@ static void Dup_ListSimilarUsrs (void)
|
||||||
Gbl.RowEvenOdd);
|
Gbl.RowEvenOdd);
|
||||||
/* Show details of user's profile */
|
/* Show details of user's profile */
|
||||||
Prf_ShowDetailsUserProfile (&UsrDat);
|
Prf_ShowDetailsUserProfile (&UsrDat);
|
||||||
/* Write all the courses this user belongs to */
|
/* Write all courses this user belongs to */
|
||||||
Crs_GetAndWriteCrssOfAUsr (&UsrDat,Rol_TCH);
|
Crs_GetAndWriteCrssOfAUsr (&UsrDat,Rol_TCH);
|
||||||
Crs_GetAndWriteCrssOfAUsr (&UsrDat,Rol_NET);
|
Crs_GetAndWriteCrssOfAUsr (&UsrDat,Rol_NET);
|
||||||
Crs_GetAndWriteCrssOfAUsr (&UsrDat,Rol_STD);
|
Crs_GetAndWriteCrssOfAUsr (&UsrDat,Rol_STD);
|
||||||
|
|
|
@ -586,7 +586,7 @@ static void Enr_ShowFormRegRemSeveralUsrs (Rol_Role_t Role)
|
||||||
/* Put link to go to admin student */
|
/* Put link to go to admin student */
|
||||||
Enr_PutLinkToAdminOneUsr (ActReqMdfOneStd);
|
Enr_PutLinkToAdminOneUsr (ActReqMdfOneStd);
|
||||||
|
|
||||||
/* Put link to remove all the students in the current course */
|
/* Put link to remove all students in the current course */
|
||||||
if (Usr_GetNumUsrsInCrss (HieLvl_CRS,Gbl.Hierarchy.Crs.CrsCod,
|
if (Usr_GetNumUsrsInCrss (HieLvl_CRS,Gbl.Hierarchy.Crs.CrsCod,
|
||||||
1 << Rol_STD)) // This course has students
|
1 << Rol_STD)) // This course has students
|
||||||
Enr_PutLinkToRemAllStdsThisCrs ();
|
Enr_PutLinkToRemAllStdsThisCrs ();
|
||||||
|
@ -1144,7 +1144,7 @@ static void Enr_ReceiveFormUsrsCrs (Rol_Role_t Role)
|
||||||
if (Gbl.Usrs.LstUsrs[Role].Lst[NumCurrentUsr].UsrCod == ListUsrCods.Lst[0]) // User found
|
if (Gbl.Usrs.LstUsrs[Role].Lst[NumCurrentUsr].UsrCod == ListUsrCods.Lst[0]) // User found
|
||||||
Gbl.Usrs.LstUsrs[Role].Lst[NumCurrentUsr].Remove = true; // Mark as removable
|
Gbl.Usrs.LstUsrs[Role].Lst[NumCurrentUsr].Remove = true; // Mark as removable
|
||||||
}
|
}
|
||||||
else // Remove all the users (of the role) except these specified
|
else // Remove all users (of the role) except these specified
|
||||||
{
|
{
|
||||||
for (NumCurrentUsr = 0;
|
for (NumCurrentUsr = 0;
|
||||||
NumCurrentUsr < Gbl.Usrs.LstUsrs[Role].NumUsrs;
|
NumCurrentUsr < Gbl.Usrs.LstUsrs[Role].NumUsrs;
|
||||||
|
@ -1713,14 +1713,14 @@ static void Enr_RegisterUsr (struct UsrData *UsrDat,Rol_Role_t RegRemRole,
|
||||||
}
|
}
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
/**** Put a link (form) to remove all the students in the current course *****/
|
/****** Put a link (form) to remove all students in the current course *******/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
static void Enr_PutLinkToRemAllStdsThisCrs (void)
|
static void Enr_PutLinkToRemAllStdsThisCrs (void)
|
||||||
{
|
{
|
||||||
extern const char *Txt_Remove_all_students;
|
extern const char *Txt_Remove_all_students;
|
||||||
|
|
||||||
/***** Put form to remove all the students in the current course *****/
|
/***** Put form to remove all students in the current course *****/
|
||||||
Lay_PutContextualLinkIconText (ActReqRemAllStdCrs,NULL,
|
Lay_PutContextualLinkIconText (ActReqRemAllStdCrs,NULL,
|
||||||
NULL,NULL,
|
NULL,NULL,
|
||||||
"trash.svg",
|
"trash.svg",
|
||||||
|
@ -1728,7 +1728,7 @@ static void Enr_PutLinkToRemAllStdsThisCrs (void)
|
||||||
}
|
}
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
/********** Ask for removing all the students from current course ************/
|
/************ Ask for removing all students from current course **************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
void Enr_AskRemAllStdsThisCrs (void)
|
void Enr_AskRemAllStdsThisCrs (void)
|
||||||
|
@ -1773,7 +1773,7 @@ void Enr_AskRemAllStdsThisCrs (void)
|
||||||
}
|
}
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
/***************** Remove all the students from current course ***************/
|
/******************* Remove all students from current course *****************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
void Enr_RemAllStdsThisCrs (void)
|
void Enr_RemAllStdsThisCrs (void)
|
||||||
|
@ -1793,7 +1793,7 @@ void Enr_RemAllStdsThisCrs (void)
|
||||||
}
|
}
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
/***************** Remove all the students from a given course ***************/
|
/******************* Remove all students from a given course *****************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
// Returns the numbers of students in list
|
// Returns the numbers of students in list
|
||||||
|
|
||||||
|
@ -1803,11 +1803,11 @@ unsigned Enr_RemAllStdsInCrs (struct Crs_Course *Crs)
|
||||||
unsigned NumUsr;
|
unsigned NumUsr;
|
||||||
|
|
||||||
/***** Get list of students in current course *****/
|
/***** Get list of students in current course *****/
|
||||||
Gbl.Usrs.ClassPhoto.AllGroups = true; // Get all the students of the current course
|
Gbl.Usrs.ClassPhoto.AllGroups = true; // Get all students of the current course
|
||||||
Usr_GetListUsrs (HieLvl_CRS,Rol_STD);
|
Usr_GetListUsrs (HieLvl_CRS,Rol_STD);
|
||||||
NumStdsInCrs = Gbl.Usrs.LstUsrs[Rol_STD].NumUsrs;
|
NumStdsInCrs = Gbl.Usrs.LstUsrs[Rol_STD].NumUsrs;
|
||||||
|
|
||||||
/***** Remove all the students *****/
|
/***** Remove all students *****/
|
||||||
for (NumUsr = 0;
|
for (NumUsr = 0;
|
||||||
NumUsr < NumStdsInCrs;
|
NumUsr < NumStdsInCrs;
|
||||||
NumUsr++)
|
NumUsr++)
|
||||||
|
@ -3194,10 +3194,10 @@ static void Enr_EffectivelyRemUsrFromCrs (struct UsrData *UsrDat,
|
||||||
|
|
||||||
if (Usr_CheckIfUsrBelongsToCurrentCrs (UsrDat))
|
if (Usr_CheckIfUsrBelongsToCurrentCrs (UsrDat))
|
||||||
{
|
{
|
||||||
/***** Remove user from all the attendance events in course *****/
|
/***** Remove user from all attendance events in course *****/
|
||||||
Att_DB_RemoveUsrFromCrsAttEvents (UsrDat->UsrCod,Crs->CrsCod);
|
Att_DB_RemoveUsrFromCrsAttEvents (UsrDat->UsrCod,Crs->CrsCod);
|
||||||
|
|
||||||
/***** Remove user from all the groups in course *****/
|
/***** Remove user from all groups in course *****/
|
||||||
Grp_RemUsrFromAllGrpsInCrs (UsrDat->UsrCod,Crs->CrsCod);
|
Grp_RemUsrFromAllGrpsInCrs (UsrDat->UsrCod,Crs->CrsCod);
|
||||||
|
|
||||||
/***** Remove user's status about reading of course information *****/
|
/***** Remove user's status about reading of course information *****/
|
||||||
|
@ -3222,7 +3222,7 @@ static void Enr_EffectivelyRemUsrFromCrs (struct UsrData *UsrDat,
|
||||||
/***** Remove some information about files in course and groups *****/
|
/***** Remove some information about files in course and groups *****/
|
||||||
Brw_DB_RemoveSomeInfoAboutCrsUsrFiles (UsrDat->UsrCod,Crs->CrsCod);
|
Brw_DB_RemoveSomeInfoAboutCrsUsrFiles (UsrDat->UsrCod,Crs->CrsCod);
|
||||||
|
|
||||||
/***** Set all the notifications for this user in this course as removed,
|
/***** Set all notifications for this user in this course as removed,
|
||||||
except notifications about new messages *****/
|
except notifications about new messages *****/
|
||||||
Ntf_DB_MarkNotifInCrsAsRemoved (UsrDat->UsrCod,Crs->CrsCod);
|
Ntf_DB_MarkNotifInCrsAsRemoved (UsrDat->UsrCod,Crs->CrsCod);
|
||||||
|
|
||||||
|
|
|
@ -522,7 +522,7 @@ unsigned Enr_DB_GetEnrolmentRequests (MYSQL_RES **mysql_res,unsigned RolesSelect
|
||||||
Gbl.Usrs.Me.UsrDat.UsrCod,Sco_GetDBStrFromScope (HieLvl_CTR),
|
Gbl.Usrs.Me.UsrDat.UsrCod,Sco_GetDBStrFromScope (HieLvl_CTR),
|
||||||
Gbl.Hierarchy.Ins.InsCod,
|
Gbl.Hierarchy.Ins.InsCod,
|
||||||
RolesSelected);
|
RolesSelected);
|
||||||
case Rol_INS_ADM: // If I am logged as admin of this institution, I can view all the requesters from this institution
|
case Rol_INS_ADM: // If I am logged as admin of this institution, I can view all requesters from this institution
|
||||||
case Rol_SYS_ADM:
|
case Rol_SYS_ADM:
|
||||||
// Requests in any course of this institution
|
// Requests in any course of this institution
|
||||||
return (unsigned)
|
return (unsigned)
|
||||||
|
@ -602,8 +602,8 @@ unsigned Enr_DB_GetEnrolmentRequests (MYSQL_RES **mysql_res,unsigned RolesSelect
|
||||||
Sco_GetDBStrFromScope (HieLvl_DEG),
|
Sco_GetDBStrFromScope (HieLvl_DEG),
|
||||||
Gbl.Hierarchy.Ctr.CtrCod,
|
Gbl.Hierarchy.Ctr.CtrCod,
|
||||||
RolesSelected);
|
RolesSelected);
|
||||||
case Rol_CTR_ADM: // If I am logged as admin of this center , I can view all the requesters from this center
|
case Rol_CTR_ADM: // If I am logged as admin of this center , I can view all requesters from this center
|
||||||
case Rol_INS_ADM: // If I am logged as admin of this institution, I can view all the requesters from this center
|
case Rol_INS_ADM: // If I am logged as admin of this institution, I can view all requesters from this center
|
||||||
case Rol_SYS_ADM:
|
case Rol_SYS_ADM:
|
||||||
// Request in any course of this center
|
// Request in any course of this center
|
||||||
return (unsigned)
|
return (unsigned)
|
||||||
|
@ -654,9 +654,9 @@ unsigned Enr_DB_GetEnrolmentRequests (MYSQL_RES **mysql_res,unsigned RolesSelect
|
||||||
(unsigned) Rol_TCH,
|
(unsigned) Rol_TCH,
|
||||||
Gbl.Hierarchy.Deg.DegCod,
|
Gbl.Hierarchy.Deg.DegCod,
|
||||||
RolesSelected);
|
RolesSelected);
|
||||||
case Rol_DEG_ADM: // If I am logged as admin of this degree , I can view all the requesters from this degree
|
case Rol_DEG_ADM: // If I am logged as admin of this degree , I can view all requesters from this degree
|
||||||
case Rol_CTR_ADM: // If I am logged as admin of this center , I can view all the requesters from this degree
|
case Rol_CTR_ADM: // If I am logged as admin of this center , I can view all requesters from this degree
|
||||||
case Rol_INS_ADM: // If I am logged as admin of this institution, I can view all the requesters from this degree
|
case Rol_INS_ADM: // If I am logged as admin of this institution, I can view all requesters from this degree
|
||||||
case Rol_SYS_ADM:
|
case Rol_SYS_ADM:
|
||||||
// Requests in any course of this degree
|
// Requests in any course of this degree
|
||||||
return (unsigned)
|
return (unsigned)
|
||||||
|
@ -682,10 +682,10 @@ unsigned Enr_DB_GetEnrolmentRequests (MYSQL_RES **mysql_res,unsigned RolesSelect
|
||||||
case HieLvl_CRS: // Show requesters for the current course
|
case HieLvl_CRS: // Show requesters for the current course
|
||||||
switch (Gbl.Usrs.Me.Role.Logged)
|
switch (Gbl.Usrs.Me.Role.Logged)
|
||||||
{
|
{
|
||||||
case Rol_TCH: // If I am logged as teacher of this course , I can view all the requesters from this course
|
case Rol_TCH: // If I am logged as teacher of this course , I can view all requesters from this course
|
||||||
case Rol_DEG_ADM: // If I am logged as admin of this degree , I can view all the requesters from this course
|
case Rol_DEG_ADM: // If I am logged as admin of this degree , I can view all requesters from this course
|
||||||
case Rol_CTR_ADM: // If I am logged as admin of this center , I can view all the requesters from this course
|
case Rol_CTR_ADM: // If I am logged as admin of this center , I can view all requesters from this course
|
||||||
case Rol_INS_ADM: // If I am logged as admin of this institution, I can view all the requesters from this course
|
case Rol_INS_ADM: // If I am logged as admin of this institution, I can view all requesters from this course
|
||||||
case Rol_SYS_ADM:
|
case Rol_SYS_ADM:
|
||||||
// Requests in this course
|
// Requests in this course
|
||||||
return (unsigned)
|
return (unsigned)
|
||||||
|
|
|
@ -579,7 +579,7 @@ void Err_ShowErrorAndExit (const char *Txt)
|
||||||
Lay_WriteEndOfPage ();
|
Lay_WriteEndOfPage ();
|
||||||
}
|
}
|
||||||
|
|
||||||
/***** Free memory and close all the open files *****/
|
/***** Free memory and close all open files *****/
|
||||||
Gbl_Cleanup ();
|
Gbl_Cleanup ();
|
||||||
|
|
||||||
/***** Page is generated (except </body> and </html>).
|
/***** Page is generated (except </body> and </html>).
|
||||||
|
|
|
@ -212,7 +212,7 @@ void Exa_SeeAllExams (void)
|
||||||
}
|
}
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
/**************************** Show all the exams *****************************/
|
/******************************* Show all exams ******************************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
static void Exa_ListAllExams (struct Exa_Exams *Exams)
|
static void Exa_ListAllExams (struct Exa_Exams *Exams)
|
||||||
|
@ -792,7 +792,7 @@ static Exa_Order_t Exa_GetParamOrder (void)
|
||||||
}
|
}
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
/*********************** Get list of all the exams *************************/
|
/************************** Get list of all exams ****************************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
void Exa_GetListExams (struct Exa_Exams *Exams,Exa_Order_t SelectedOrder)
|
void Exa_GetListExams (struct Exa_Exams *Exams,Exa_Order_t SelectedOrder)
|
||||||
|
@ -1103,7 +1103,7 @@ static void Exa_RemoveExamFromAllTables (long ExaCod)
|
||||||
}
|
}
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
/******************** Remove all the exams of a course ***********************/
|
/*********************** Remove all exams of a course ************************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
void Exa_RemoveCrsExams (long CrsCod)
|
void Exa_RemoveCrsExams (long CrsCod)
|
||||||
|
|
|
@ -130,7 +130,7 @@ void Exa_DB_HideOrUnhideExam (long ExaCod,bool Hide)
|
||||||
}
|
}
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
/*********************** Get list of all the exams *************************/
|
/**************************** Get list of all exams **************************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
unsigned Exa_DB_GetListExams (MYSQL_RES **mysql_res,Exa_Order_t SelectedOrder)
|
unsigned Exa_DB_GetListExams (MYSQL_RES **mysql_res,Exa_Order_t SelectedOrder)
|
||||||
|
@ -1751,7 +1751,7 @@ void Exa_DB_RemoveAllGrpsOfType (long GrpTypCod)
|
||||||
|
|
||||||
void Exa_DB_RemoveGroup (long GrpCod)
|
void Exa_DB_RemoveGroup (long GrpCod)
|
||||||
{
|
{
|
||||||
/***** Remove group from all the sessions *****/
|
/***** Remove group from all sessions *****/
|
||||||
DB_QueryDELETE ("can not remove group"
|
DB_QueryDELETE ("can not remove group"
|
||||||
" from the associations between sessions and groups",
|
" from the associations between sessions and groups",
|
||||||
"DELETE FROM exa_groups"
|
"DELETE FROM exa_groups"
|
||||||
|
|
|
@ -447,7 +447,7 @@ static unsigned ExaPrn_GetSomeQstsFromSetToPrint (struct ExaPrn_Print *Print,
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Reset user's answers.
|
/* Reset user's answers.
|
||||||
Initially user has not answered the question ==> initially all the answers will be blank.
|
Initially user has not answered the question ==> initially all answers will be blank.
|
||||||
If the user does not confirm the submission of their exam ==>
|
If the user does not confirm the submission of their exam ==>
|
||||||
==> the exam may be half filled ==> the answers displayed will be those selected by the user. */
|
==> the exam may be half filled ==> the answers displayed will be those selected by the user. */
|
||||||
Print->PrintedQuestions[*NumQstsInPrint].StrAnswers[0] = '\0';
|
Print->PrintedQuestions[*NumQstsInPrint].StrAnswers[0] = '\0';
|
||||||
|
@ -834,7 +834,7 @@ static void ExaPrn_WriteTF_AnsToFill (const struct ExaPrn_Print *Print,
|
||||||
char Id[3 + Cns_MAX_DECIMAL_DIGITS_UINT + 1]; // "Ansxx...x"
|
char Id[3 + Cns_MAX_DECIMAL_DIGITS_UINT + 1]; // "Ansxx...x"
|
||||||
|
|
||||||
/***** Write selector for the answer *****/
|
/***** Write selector for the answer *****/
|
||||||
/* Initially user has not answered the question ==> initially all the answers will be blank.
|
/* Initially user has not answered the question ==> initially all answers will be blank.
|
||||||
If the user does not confirm the submission of their exam ==>
|
If the user does not confirm the submission of their exam ==>
|
||||||
==> the exam may be half filled ==> the answers displayed will be those selected by the user. */
|
==> the exam may be half filled ==> the answers displayed will be those selected by the user. */
|
||||||
snprintf (Id,sizeof (Id),"Ans%010u",QstInd);
|
snprintf (Id,sizeof (Id),"Ans%010u",QstInd);
|
||||||
|
@ -881,7 +881,7 @@ static void ExaPrn_WriteChoAnsToFill (const struct ExaPrn_Print *Print,
|
||||||
HTM_TR_Begin (NULL);
|
HTM_TR_Begin (NULL);
|
||||||
|
|
||||||
/***** Write selectors and letter of this option *****/
|
/***** Write selectors and letter of this option *****/
|
||||||
/* Initially user has not answered the question ==> initially all the answers will be blank.
|
/* Initially user has not answered the question ==> initially all answers will be blank.
|
||||||
If the user does not confirm the submission of their exam ==>
|
If the user does not confirm the submission of their exam ==>
|
||||||
==> the exam may be half filled ==> the answers displayed will be those selected by the user. */
|
==> the exam may be half filled ==> the answers displayed will be those selected by the user. */
|
||||||
HTM_TD_Begin ("class=\"LT\"");
|
HTM_TD_Begin ("class=\"LT\"");
|
||||||
|
|
|
@ -1455,7 +1455,7 @@ void ExaSet_RemoveSet (void)
|
||||||
if (!Exa_CheckIfEditable (&Exam))
|
if (!Exa_CheckIfEditable (&Exam))
|
||||||
Err_NoPermissionExit ();
|
Err_NoPermissionExit ();
|
||||||
|
|
||||||
/***** Remove the set from all the tables *****/
|
/***** Remove the set from all tables *****/
|
||||||
/* Remove questions associated to set */
|
/* Remove questions associated to set */
|
||||||
Exa_DB_RemoveAllSetQuestionsFromSet (Set.SetCod,Set.ExaCod);
|
Exa_DB_RemoveAllSetQuestionsFromSet (Set.SetCod,Set.ExaCod);
|
||||||
|
|
||||||
|
|
|
@ -164,7 +164,7 @@ bool Fil_ReadStdinIntoTmpFile (void)
|
||||||
}
|
}
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
/********** End the reading of all the characters coming from stdin **********/
|
/************ End the reading of all characters coming from stdin ************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
void Fil_EndOfReadingStdin (void)
|
void Fil_EndOfReadingStdin (void)
|
||||||
|
@ -432,7 +432,7 @@ void Fil_RemoveTree (const char Path[PATH_MAX + 1])
|
||||||
/* Scan the directory */
|
/* Scan the directory */
|
||||||
if ((NumFiles = scandir (Path,&FileList,NULL,NULL)) >= 0)
|
if ((NumFiles = scandir (Path,&FileList,NULL,NULL)) >= 0)
|
||||||
{
|
{
|
||||||
/* Remove recursively all the directories and files */
|
/* Remove recursively all directories and files */
|
||||||
for (NumFile = 0;
|
for (NumFile = 0;
|
||||||
NumFile < NumFiles;
|
NumFile < NumFiles;
|
||||||
NumFile++)
|
NumFile++)
|
||||||
|
|
10
swad_forum.c
10
swad_forum.c
|
@ -1092,7 +1092,7 @@ static void For_WriteNumberOfPosts (const struct For_Forums *Forums,long UsrCod)
|
||||||
}
|
}
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
/************ Put all the hidden parameters related to forums ****************/
|
/************** Put all hidden parameters related to forums ******************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
static void For_PutParamsForum (void *Forums)
|
static void For_PutParamsForum (void *Forums)
|
||||||
|
@ -1884,7 +1884,7 @@ static unsigned For_GetNumThrsWithNewPstsInForum (const struct For_Forum *Forum,
|
||||||
{
|
{
|
||||||
MYSQL_RES *mysql_res;
|
MYSQL_RES *mysql_res;
|
||||||
MYSQL_ROW row;
|
MYSQL_ROW row;
|
||||||
unsigned NumThrsWithNewPosts = NumThreads; // By default, all the threads are new to me
|
unsigned NumThrsWithNewPosts = NumThreads; // By default, all threads are new to me
|
||||||
|
|
||||||
/***** Get last time I read this forum from database *****/
|
/***** Get last time I read this forum from database *****/
|
||||||
if (For_DB_GetLastTimeIReadForum (&mysql_res,Forum))
|
if (For_DB_GetLastTimeIReadForum (&mysql_res,Forum))
|
||||||
|
@ -1908,7 +1908,7 @@ static unsigned For_GetNumOfUnreadPostsInThr (long ThrCod,unsigned NumPostsInThr
|
||||||
{
|
{
|
||||||
MYSQL_RES *mysql_res;
|
MYSQL_RES *mysql_res;
|
||||||
MYSQL_ROW row;
|
MYSQL_ROW row;
|
||||||
unsigned NumUnreadPosts = NumPostsInThr; // By default, all the posts are unread by me
|
unsigned NumUnreadPosts = NumPostsInThr; // By default, all posts are unread by me
|
||||||
|
|
||||||
/***** Get last time I read this thread from database *****/
|
/***** Get last time I read this thread from database *****/
|
||||||
if (For_DB_GetLastTimeIReadThread (&mysql_res,ThrCod))
|
if (For_DB_GetLastTimeIReadThread (&mysql_res,ThrCod))
|
||||||
|
@ -2027,7 +2027,7 @@ static void For_ShowForumThreadsHighlightingOneThread (struct For_Forums *Forums
|
||||||
/***** List the threads *****/
|
/***** List the threads *****/
|
||||||
if (NumThrs)
|
if (NumThrs)
|
||||||
{
|
{
|
||||||
/***** Write links to all the pages in the listing of threads *****/
|
/***** Write links to all pages in the listing of threads *****/
|
||||||
Pag_WriteLinksToPagesCentered (Pag_THREADS_FORUM,&PaginationThrs,
|
Pag_WriteLinksToPagesCentered (Pag_THREADS_FORUM,&PaginationThrs,
|
||||||
Forums,-1L);
|
Forums,-1L);
|
||||||
|
|
||||||
|
@ -2079,7 +2079,7 @@ static void For_ShowForumThreadsHighlightingOneThread (struct For_Forums *Forums
|
||||||
/***** End table *****/
|
/***** End table *****/
|
||||||
HTM_TABLE_End ();
|
HTM_TABLE_End ();
|
||||||
|
|
||||||
/***** Write links to all the pages in the listing of threads *****/
|
/***** Write links to all pages in the listing of threads *****/
|
||||||
Pag_WriteLinksToPagesCentered (Pag_THREADS_FORUM,&PaginationThrs,
|
Pag_WriteLinksToPagesCentered (Pag_THREADS_FORUM,&PaginationThrs,
|
||||||
Forums,-1L);
|
Forums,-1L);
|
||||||
}
|
}
|
||||||
|
|
|
@ -135,7 +135,7 @@ unsigned For_DB_GetNumPstsOfUsrInForum (const struct For_Forum *Forum,
|
||||||
}
|
}
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
/*********** Remove all the threads and posts in forums of a scope ***********/
|
/************* Remove all threads and posts in forums of a scope *************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
void For_DB_RemoveForums (HieLvl_Level_t Scope,long ForumLocation)
|
void For_DB_RemoveForums (HieLvl_Level_t Scope,long ForumLocation)
|
||||||
|
@ -786,7 +786,7 @@ void For_DB_RemoveThrFromReadThrs (long ThrCod)
|
||||||
void For_DB_RemoveUsrFromReadThrs (long UsrCod)
|
void For_DB_RemoveUsrFromReadThrs (long UsrCod)
|
||||||
{
|
{
|
||||||
DB_QueryDELETE ("can not remove the status of reading by a user"
|
DB_QueryDELETE ("can not remove the status of reading by a user"
|
||||||
" of all the threads of a forum",
|
" of all threads in a forum",
|
||||||
"DELETE FROM for_read"
|
"DELETE FROM for_read"
|
||||||
" WHERE UsrCod=%ld",
|
" WHERE UsrCod=%ld",
|
||||||
UsrCod);
|
UsrCod);
|
||||||
|
|
|
@ -226,7 +226,7 @@ void Gam_SeeAllGames (void)
|
||||||
}
|
}
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
/**************************** Show all the games *****************************/
|
/******************************* Show all games ******************************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
static void Gam_ListAllGames (struct Gam_Games *Games)
|
static void Gam_ListAllGames (struct Gam_Games *Games)
|
||||||
|
@ -855,7 +855,7 @@ static Gam_Order_t Gam_GetParamOrder (void)
|
||||||
}
|
}
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
/*********************** Get list of all the games *************************/
|
/************************** Get list of all games ****************************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
void Gam_GetListGames (struct Gam_Games *Games,Gam_Order_t SelectedOrder)
|
void Gam_GetListGames (struct Gam_Games *Games,Gam_Order_t SelectedOrder)
|
||||||
|
@ -1147,7 +1147,7 @@ static void Gam_RemoveGameFromAllTables (long GamCod)
|
||||||
}
|
}
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
/******************** Remove all the games of a course ***********************/
|
/*********************** Remove all games of a course ************************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
void Gam_RemoveCrsGames (long CrsCod)
|
void Gam_RemoveCrsGames (long CrsCod)
|
||||||
|
@ -2040,7 +2040,7 @@ void Gam_RemoveQstFromGame (void)
|
||||||
/***** Get question index *****/
|
/***** Get question index *****/
|
||||||
QstInd = Gam_GetParamQstInd ();
|
QstInd = Gam_GetParamQstInd ();
|
||||||
|
|
||||||
/***** Remove the question from all the tables *****/
|
/***** Remove the question from all tables *****/
|
||||||
/* Remove answers from this test question */
|
/* Remove answers from this test question */
|
||||||
Mch_DB_RemUsrAnswersOfAQuestion (Game.GamCod,QstInd);
|
Mch_DB_RemUsrAnswersOfAQuestion (Game.GamCod,QstInd);
|
||||||
|
|
||||||
|
|
|
@ -124,7 +124,7 @@ void Gam_DB_HideOrUnhideGame (long GamCod,bool Hide)
|
||||||
}
|
}
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
/************* Get list of all the games in the current course ***************/
|
/*************** Get list of all games in the current course *****************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
unsigned Gam_DB_GetListGames (MYSQL_RES **mysql_res,Gam_Order_t SelectedOrder)
|
unsigned Gam_DB_GetListGames (MYSQL_RES **mysql_res,Gam_Order_t SelectedOrder)
|
||||||
|
|
14
swad_group.c
14
swad_group.c
|
@ -484,7 +484,7 @@ void Grp_PutParamsCodGrps (void)
|
||||||
char *GrpCods;
|
char *GrpCods;
|
||||||
char GrpCod[Cns_MAX_DECIMAL_DIGITS_LONG + 1];
|
char GrpCod[Cns_MAX_DECIMAL_DIGITS_LONG + 1];
|
||||||
|
|
||||||
/***** Write the boolean parameter that indicates if all the groups must be listed *****/
|
/***** Write the boolean parameter that indicates if all groups must be listed *****/
|
||||||
Par_PutHiddenParamChar ("AllGroups",
|
Par_PutHiddenParamChar ("AllGroups",
|
||||||
Gbl.Usrs.ClassPhoto.AllGroups ? 'Y' :
|
Gbl.Usrs.ClassPhoto.AllGroups ? 'Y' :
|
||||||
'N');
|
'N');
|
||||||
|
@ -1183,7 +1183,7 @@ unsigned Grp_RemoveUsrFromGroups (struct UsrData *UsrDat,struct ListCodGrps *Lst
|
||||||
}
|
}
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
/*************** Remove a user of all the groups of a course *****************/
|
/***************** Remove a user of all groups of a course *******************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
void Grp_RemUsrFromAllGrpsInCrs (long UsrCod,long CrsCod)
|
void Grp_RemUsrFromAllGrpsInCrs (long UsrCod,long CrsCod)
|
||||||
|
@ -1198,7 +1198,7 @@ void Grp_RemUsrFromAllGrpsInCrs (long UsrCod,long CrsCod)
|
||||||
}
|
}
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
/******* Remove a user from all the groups of all the user's courses *********/
|
/********* Remove a user from all groups of all the user's courses ***********/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
void Grp_RemUsrFromAllGrps (long UsrCod)
|
void Grp_RemUsrFromAllGrps (long UsrCod)
|
||||||
|
@ -2740,7 +2740,7 @@ void Grp_OpenGroupsAutomatically (void)
|
||||||
/* Get next group type */
|
/* Get next group type */
|
||||||
if ((GrpTypCod = DB_GetNextCode (mysql_res)) > 0)
|
if ((GrpTypCod = DB_GetNextCode (mysql_res)) > 0)
|
||||||
{
|
{
|
||||||
/***** Open all the closed groups of this type that are closed ****/
|
/***** Open all closed groups of this type that are closed ****/
|
||||||
Grp_DB_OpenGrpsOfType (GrpTypCod);
|
Grp_DB_OpenGrpsOfType (GrpTypCod);
|
||||||
|
|
||||||
/***** To not try to open groups again, set MustBeOpened to false *****/
|
/***** To not try to open groups again, set MustBeOpened to false *****/
|
||||||
|
@ -3498,7 +3498,7 @@ static void Grp_RemoveGroupTypeCompletely (void)
|
||||||
/***** Get name and type of the group from database *****/
|
/***** Get name and type of the group from database *****/
|
||||||
Grp_GetDataOfGroupTypeByCod (&Gbl.Crs.Grps.GrpTyp);
|
Grp_GetDataOfGroupTypeByCod (&Gbl.Crs.Grps.GrpTyp);
|
||||||
|
|
||||||
/***** Remove file zones of all the groups of this type *****/
|
/***** Remove file zones of all groups of this type *****/
|
||||||
Brw_RemoveZonesOfGroupsOfType (Gbl.Crs.Grps.GrpTyp.GrpTypCod);
|
Brw_RemoveZonesOfGroupsOfType (Gbl.Crs.Grps.GrpTyp.GrpTypCod);
|
||||||
|
|
||||||
/***** Remove the associations of assignments to groups of this type *****/
|
/***** Remove the associations of assignments to groups of this type *****/
|
||||||
|
@ -3522,7 +3522,7 @@ static void Grp_RemoveGroupTypeCompletely (void)
|
||||||
/***** Remove all users from groups of this type *****/
|
/***** Remove all users from groups of this type *****/
|
||||||
Grp_DB_RemoveUsrsFromGrpsOfType (Gbl.Crs.Grps.GrpTyp.GrpTypCod);
|
Grp_DB_RemoveUsrsFromGrpsOfType (Gbl.Crs.Grps.GrpTyp.GrpTypCod);
|
||||||
|
|
||||||
/***** Remove all the groups of this type *****/
|
/***** Remove all groups of this type *****/
|
||||||
Grp_DB_RemoveGrpsOfType (Gbl.Crs.Grps.GrpTyp.GrpTypCod);
|
Grp_DB_RemoveGrpsOfType (Gbl.Crs.Grps.GrpTyp.GrpTypCod);
|
||||||
|
|
||||||
/***** Remove the group type *****/
|
/***** Remove the group type *****/
|
||||||
|
@ -4266,7 +4266,7 @@ void Grp_GetLstCodsGrpWanted (struct ListCodGrps *LstGrpsWanted)
|
||||||
}
|
}
|
||||||
|
|
||||||
/***** Create the list (argument passed to this function)
|
/***** Create the list (argument passed to this function)
|
||||||
with all the groups selected (of all the types) *****/
|
with all groups selected (of all the types) *****/
|
||||||
if (LstGrpsWanted->NumGrps)
|
if (LstGrpsWanted->NumGrps)
|
||||||
{
|
{
|
||||||
if ((LstGrpsWanted->GrpCods = calloc (LstGrpsWanted->NumGrps,
|
if ((LstGrpsWanted->GrpCods = calloc (LstGrpsWanted->NumGrps,
|
||||||
|
|
|
@ -753,7 +753,7 @@ void Grp_DB_ClearMustBeOpened (long GrpTypCod)
|
||||||
}
|
}
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
/******************** Open all the closed groups of a tyoe *******************/
|
/********************** Open all closed groups of a type *********************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
void Grp_DB_OpenGrpsOfType (long GrpTypCod)
|
void Grp_DB_OpenGrpsOfType (long GrpTypCod)
|
||||||
|
@ -1035,7 +1035,7 @@ void Grp_DB_RemoveUsrFromGrp (long UsrCod,long GrpCod)
|
||||||
}
|
}
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
/*************** Remove a user of all the groups of a course *****************/
|
/***************** Remove a user of all groups of a course *******************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
void Grp_DB_RemUsrFromAllGrpsInCrs (long UsrCod,long CrsCod)
|
void Grp_DB_RemUsrFromAllGrpsInCrs (long UsrCod,long CrsCod)
|
||||||
|
|
|
@ -97,8 +97,7 @@ void Hie_WriteMenuHierarchy (void)
|
||||||
/***** Begin table *****/
|
/***** Begin table *****/
|
||||||
HTM_TABLE_BeginCenterPadding (2);
|
HTM_TABLE_BeginCenterPadding (2);
|
||||||
|
|
||||||
/***** Write a 1st selector
|
/***** Write a 1st selector with all countries *****/
|
||||||
with all the countries *****/
|
|
||||||
HTM_TR_Begin (NULL);
|
HTM_TR_Begin (NULL);
|
||||||
|
|
||||||
/* Label */
|
/* Label */
|
||||||
|
@ -146,7 +145,7 @@ void Hie_WriteMenuHierarchy (void)
|
||||||
if (Gbl.Hierarchy.Ctr.CtrCod > 0)
|
if (Gbl.Hierarchy.Ctr.CtrCod > 0)
|
||||||
{
|
{
|
||||||
/***** Write a 4th selector
|
/***** Write a 4th selector
|
||||||
with all the degrees of selected center *****/
|
with all degrees of selected center *****/
|
||||||
HTM_TR_Begin (NULL);
|
HTM_TR_Begin (NULL);
|
||||||
|
|
||||||
/* Label */
|
/* Label */
|
||||||
|
@ -162,7 +161,7 @@ void Hie_WriteMenuHierarchy (void)
|
||||||
if (Gbl.Hierarchy.Deg.DegCod > 0)
|
if (Gbl.Hierarchy.Deg.DegCod > 0)
|
||||||
{
|
{
|
||||||
/***** Write a 5th selector
|
/***** Write a 5th selector
|
||||||
with all the courses of selected degree *****/
|
with all courses of selected degree *****/
|
||||||
HTM_TR_Begin (NULL);
|
HTM_TR_Begin (NULL);
|
||||||
|
|
||||||
/* Label */
|
/* Label */
|
||||||
|
|
|
@ -97,7 +97,7 @@ void Hld_ResetHolidays (struct Hld_Holidays *Holidays)
|
||||||
}
|
}
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
/*************************** List all the holidays ***************************/
|
/****************************** List all holidays ****************************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
void Hld_SeeHolidays (void)
|
void Hld_SeeHolidays (void)
|
||||||
|
@ -163,7 +163,7 @@ void Hld_SeeHolidays (void)
|
||||||
|
|
||||||
HTM_TR_End ();
|
HTM_TR_End ();
|
||||||
|
|
||||||
/***** Write all the holidays *****/
|
/***** Write all holidays *****/
|
||||||
for (NumHld = 0;
|
for (NumHld = 0;
|
||||||
NumHld < Holidays.Num;
|
NumHld < Holidays.Num;
|
||||||
NumHld++)
|
NumHld++)
|
||||||
|
@ -311,7 +311,7 @@ static void Hld_EditHolidaysInternal (void)
|
||||||
}
|
}
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
/*************************** List all the holidays ***************************/
|
/***************************** List all holidays *****************************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
void Hld_GetListHolidays (struct Hld_Holidays *Holidays)
|
void Hld_GetListHolidays (struct Hld_Holidays *Holidays)
|
||||||
|
@ -504,7 +504,7 @@ void Hld_FreeListHolidays (struct Hld_Holidays *Holidays)
|
||||||
}
|
}
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
/********************* List all the holidays for edition *********************/
|
/*********************** List all holidays for edition ***********************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
static void Hld_ListHolidaysForEdition (const struct Hld_Holidays *Holidays,
|
static void Hld_ListHolidaysForEdition (const struct Hld_Holidays *Holidays,
|
||||||
|
@ -528,7 +528,7 @@ static void Hld_ListHolidaysForEdition (const struct Hld_Holidays *Holidays,
|
||||||
/***** Write heading *****/
|
/***** Write heading *****/
|
||||||
Hld_PutHeadHolidays ();
|
Hld_PutHeadHolidays ();
|
||||||
|
|
||||||
/***** Write all the holidays *****/
|
/***** Write all holidays *****/
|
||||||
for (NumHld = 0;
|
for (NumHld = 0;
|
||||||
NumHld < Holidays->Num;
|
NumHld < Holidays->Num;
|
||||||
NumHld++)
|
NumHld++)
|
||||||
|
|
|
@ -136,7 +136,7 @@ void Hld_DB_ChangeName (long HldCod,char NewHldName[Hld_MAX_BYTES_HOLIDAY_NAME +
|
||||||
}
|
}
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
/*************************** List all the holidays ***************************/
|
/***************************** List all holidays *****************************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
unsigned Hld_DB_GetListHolidays (MYSQL_RES **mysql_res,Hld_Order_t SelectedOrder)
|
unsigned Hld_DB_GetListHolidays (MYSQL_RES **mysql_res,Hld_Order_t SelectedOrder)
|
||||||
|
|
|
@ -308,7 +308,7 @@ static void Ins_ListInstitutions (void)
|
||||||
HTM_TABLE_BeginWideMarginPadding (2);
|
HTM_TABLE_BeginWideMarginPadding (2);
|
||||||
Ins_PutHeadInstitutionsForSeeing (true); // Order selectable
|
Ins_PutHeadInstitutionsForSeeing (true); // Order selectable
|
||||||
|
|
||||||
/***** Write all the institutions and their nuber of users *****/
|
/***** Write all institutions and their nuber of users *****/
|
||||||
for (NumIns = 0;
|
for (NumIns = 0;
|
||||||
NumIns < Gbl.Hierarchy.Inss.Num;
|
NumIns < Gbl.Hierarchy.Inss.Num;
|
||||||
NumIns++)
|
NumIns++)
|
||||||
|
@ -926,7 +926,7 @@ void Ins_WriteSelectorOfInstitution (void)
|
||||||
}
|
}
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
/************************* List all the institutions *************************/
|
/*************************** List all institutions ***************************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
static void Ins_ListInstitutionsForEdition (void)
|
static void Ins_ListInstitutionsForEdition (void)
|
||||||
|
@ -952,7 +952,7 @@ static void Ins_ListInstitutionsForEdition (void)
|
||||||
/***** Write heading *****/
|
/***** Write heading *****/
|
||||||
Ins_PutHeadInstitutionsForEdition ();
|
Ins_PutHeadInstitutionsForEdition ();
|
||||||
|
|
||||||
/***** Write all the institutions *****/
|
/***** Write all institutions *****/
|
||||||
for (NumIns = 0;
|
for (NumIns = 0;
|
||||||
NumIns < Gbl.Hierarchy.Inss.Num;
|
NumIns < Gbl.Hierarchy.Inss.Num;
|
||||||
NumIns++)
|
NumIns++)
|
||||||
|
@ -1243,7 +1243,7 @@ void Ins_RemoveInstitution (void)
|
||||||
Txt_To_remove_an_institution_you_must_first_remove_all_centers_and_users_in_the_institution);
|
Txt_To_remove_an_institution_you_must_first_remove_all_centers_and_users_in_the_institution);
|
||||||
else // Institution has no users ==> remove it
|
else // Institution has no users ==> remove it
|
||||||
{
|
{
|
||||||
/***** Remove all the threads and posts in forums of the institution *****/
|
/***** Remove all threads and posts in forums of the institution *****/
|
||||||
For_DB_RemoveForums (HieLvl_INS,Ins_EditingIns->InsCod);
|
For_DB_RemoveForums (HieLvl_INS,Ins_EditingIns->InsCod);
|
||||||
|
|
||||||
/***** Remove surveys of the institution *****/
|
/***** Remove surveys of the institution *****/
|
||||||
|
|
|
@ -864,7 +864,7 @@ static void Lay_WriteScriptParamsAJAX (void)
|
||||||
|
|
||||||
/***** Parameters related with expanding/contracting folders in file browsers *****/
|
/***** Parameters related with expanding/contracting folders in file browsers *****/
|
||||||
if (Gbl.FileBrowser.Type != Brw_UNKNOWN)
|
if (Gbl.FileBrowser.Type != Brw_UNKNOWN)
|
||||||
/* In all the actions related to file browsers ==>
|
/* In all actions related to file browsers ==>
|
||||||
put parameters used by AJAX */
|
put parameters used by AJAX */
|
||||||
// Refresh parameters
|
// Refresh parameters
|
||||||
HTM_TxtF ("var RefreshParamExpand = \"act=%ld\";\n"
|
HTM_TxtF ("var RefreshParamExpand = \"act=%ld\";\n"
|
||||||
|
@ -883,7 +883,7 @@ static void Lay_WriteScriptParamsAJAX (void)
|
||||||
case ActRemPubGblTL:
|
case ActRemPubGblTL:
|
||||||
case ActReqRemComGblTL:
|
case ActReqRemComGblTL:
|
||||||
case ActRemComGblTL:
|
case ActRemComGblTL:
|
||||||
/* In all the actions related to view or editing global timeline ==>
|
/* In all actions related to view or editing global timeline ==>
|
||||||
put parameters used by AJAX */
|
put parameters used by AJAX */
|
||||||
// Refresh parameters
|
// Refresh parameters
|
||||||
HTM_TxtF ("var RefreshParamNxtActNewPub = \"act=%ld\";\n"
|
HTM_TxtF ("var RefreshParamNxtActNewPub = \"act=%ld\";\n"
|
||||||
|
@ -901,7 +901,7 @@ static void Lay_WriteScriptParamsAJAX (void)
|
||||||
case ActRemPubUsrTL:
|
case ActRemPubUsrTL:
|
||||||
case ActReqRemComUsrTL:
|
case ActReqRemComUsrTL:
|
||||||
case ActRemComUsrTL:
|
case ActRemComUsrTL:
|
||||||
/* In all the actions related to view or editing user's timeline ==>
|
/* In all actions related to view or editing user's timeline ==>
|
||||||
put parameters used by AJAX */
|
put parameters used by AJAX */
|
||||||
if (Gbl.Usrs.Other.UsrDat.UsrCod <= 0)
|
if (Gbl.Usrs.Other.UsrDat.UsrCod <= 0)
|
||||||
Usr_GetParamOtherUsrCodEncrypted (&Gbl.Usrs.Other.UsrDat);
|
Usr_GetParamOtherUsrCodEncrypted (&Gbl.Usrs.Other.UsrDat);
|
||||||
|
|
10
swad_link.c
10
swad_link.c
|
@ -87,7 +87,7 @@ static void Lnk_EditingLinkConstructor (void);
|
||||||
static void Lnk_EditingLinkDestructor (void);
|
static void Lnk_EditingLinkDestructor (void);
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
/*************************** List all the links ******************************/
|
/****************************** List all links *******************************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
void Lnk_SeeLinks (void)
|
void Lnk_SeeLinks (void)
|
||||||
|
@ -161,7 +161,7 @@ void Lnk_WriteMenuWithInstitutionalLinks (void)
|
||||||
/***** Get list of links *****/
|
/***** Get list of links *****/
|
||||||
Lnk_GetListLinks ();
|
Lnk_GetListLinks ();
|
||||||
|
|
||||||
/***** Write all the links *****/
|
/***** Write all links *****/
|
||||||
if (Gbl.Links.Num)
|
if (Gbl.Links.Num)
|
||||||
{
|
{
|
||||||
HTM_DIV_Begin ("id=\"institutional_links\"");
|
HTM_DIV_Begin ("id=\"institutional_links\"");
|
||||||
|
@ -282,7 +282,7 @@ void Lnk_PutIconToViewLinks (void)
|
||||||
}
|
}
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
/**************************** List all the links *****************************/
|
/****************************** List all links *******************************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
void Lnk_GetListLinks (void)
|
void Lnk_GetListLinks (void)
|
||||||
|
@ -378,7 +378,7 @@ void Lnk_FreeListLinks (void)
|
||||||
}
|
}
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
/*************************** List all the links ******************************/
|
/****************************** List all links *******************************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
static void Lnk_ListLinksForEdition (void)
|
static void Lnk_ListLinksForEdition (void)
|
||||||
|
@ -392,7 +392,7 @@ static void Lnk_ListLinksForEdition (void)
|
||||||
/***** Table head *****/
|
/***** Table head *****/
|
||||||
Lnk_PutHeadLinks ();
|
Lnk_PutHeadLinks ();
|
||||||
|
|
||||||
/***** Write all the links *****/
|
/***** Write all links *****/
|
||||||
for (NumLnk = 0;
|
for (NumLnk = 0;
|
||||||
NumLnk < Gbl.Links.Num;
|
NumLnk < Gbl.Links.Num;
|
||||||
NumLnk++)
|
NumLnk++)
|
||||||
|
|
16
swad_mail.c
16
swad_mail.c
|
@ -1,4 +1,4 @@
|
||||||
// swad_mail.c: all the stuff related to email
|
// swad_mail.c: everything related to email
|
||||||
|
|
||||||
/*
|
/*
|
||||||
SWAD (Shared Workspace At a Distance),
|
SWAD (Shared Workspace At a Distance),
|
||||||
|
@ -103,7 +103,7 @@ static void Mai_EditingMailDomainConstructor (void);
|
||||||
static void Mai_EditingMailDomainDestructor (void);
|
static void Mai_EditingMailDomainDestructor (void);
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
/************************* List all the mail domains *************************/
|
/*************************** List all mail domains ***************************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
void Mai_SeeMailDomains (void)
|
void Mai_SeeMailDomains (void)
|
||||||
|
@ -154,7 +154,7 @@ void Mai_SeeMailDomains (void)
|
||||||
}
|
}
|
||||||
HTM_TR_End ();
|
HTM_TR_End ();
|
||||||
|
|
||||||
/***** Write all the mail domains *****/
|
/***** Write all mail domains *****/
|
||||||
for (NumMai = 0;
|
for (NumMai = 0;
|
||||||
NumMai < Gbl.Mails.Num;
|
NumMai < Gbl.Mails.Num;
|
||||||
NumMai++)
|
NumMai++)
|
||||||
|
@ -240,7 +240,7 @@ static void Mai_EditMailDomainsInternal (void)
|
||||||
}
|
}
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
/************************* List all the mail domains *************************/
|
/*************************** List all mail domains ***************************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
static void Mai_GetListMailDomainsAllowedForNotif (void)
|
static void Mai_GetListMailDomainsAllowedForNotif (void)
|
||||||
|
@ -254,7 +254,7 @@ static void Mai_GetListMailDomainsAllowedForNotif (void)
|
||||||
// Query uses two identical temporary tables...
|
// Query uses two identical temporary tables...
|
||||||
// ...because a unique temporary table can not be used twice in the same query
|
// ...because a unique temporary table can not be used twice in the same query
|
||||||
|
|
||||||
/***** Create temporary table with all the mail domains present in users' emails table *****/
|
/***** Create temporary table with all mail domains present in users' emails table *****/
|
||||||
Mai_DB_RemoveTmpTables ();
|
Mai_DB_RemoveTmpTables ();
|
||||||
|
|
||||||
Mai_DB_CreateTmpTables ();
|
Mai_DB_CreateTmpTables ();
|
||||||
|
@ -403,7 +403,7 @@ void Mai_FreeListMailDomains (void)
|
||||||
}
|
}
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
/************************ List all the mail domains **************************/
|
/************************** List all mail domains ****************************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
static void Mai_ListMailDomainsForEdition (void)
|
static void Mai_ListMailDomainsForEdition (void)
|
||||||
|
@ -421,7 +421,7 @@ static void Mai_ListMailDomainsForEdition (void)
|
||||||
/***** Write heading *****/
|
/***** Write heading *****/
|
||||||
Mai_PutHeadMailDomains ();
|
Mai_PutHeadMailDomains ();
|
||||||
|
|
||||||
/***** Write all the mail domains *****/
|
/***** Write all mail domains *****/
|
||||||
for (NumMai = 0;
|
for (NumMai = 0;
|
||||||
NumMai < Gbl.Mails.Num;
|
NumMai < Gbl.Mails.Num;
|
||||||
NumMai++)
|
NumMai++)
|
||||||
|
@ -791,7 +791,7 @@ void Mai_GetSelUsrsAndListEmails (void)
|
||||||
}
|
}
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
/****** List the emails of all the students to creates an email message ******/
|
/******** List the emails of all students to creates an email message ********/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
#define Mai_MAX_BYTES_STR_ADDR (256 * 1024 - 1)
|
#define Mai_MAX_BYTES_STR_ADDR (256 * 1024 - 1)
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
// swad_mail.h: all the stuff related to email
|
// swad_mail.h: everything related to email
|
||||||
|
|
||||||
#ifndef _SWAD_MAI
|
#ifndef _SWAD_MAI
|
||||||
#define _SWAD_MAI
|
#define _SWAD_MAI
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
// swad_mail_database.c: all the stuff related to email, operations with database
|
// swad_mail_database.c: everything related to email, operations with database
|
||||||
|
|
||||||
/*
|
/*
|
||||||
SWAD (Shared Workspace At a Distance),
|
SWAD (Shared Workspace At a Distance),
|
||||||
|
@ -300,7 +300,7 @@ void Mai_DB_RemoveExpiredPendingEmails (void)
|
||||||
}
|
}
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
/* Create temporary tables with all the mail domains in users' emails table **/
|
/*** Create temporary tables with all mail domains in users' emails table ****/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
void Mai_DB_CreateTmpTables (void)
|
void Mai_DB_CreateTmpTables (void)
|
||||||
|
@ -450,7 +450,7 @@ void Mai_DB_RemoveMailDomain (long MaiCod)
|
||||||
}
|
}
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
/* Remove temporary tables with all the mail domains in users' emails table **/
|
/*** Remove temporary tables with all mail domains in users' emails table ****/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
void Mai_DB_RemoveTmpTables (void)
|
void Mai_DB_RemoveTmpTables (void)
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
// swad_mail_database.h: all the stuff related to email, operations with database
|
// swad_mail_database.h: everything related to email, operations with database
|
||||||
|
|
||||||
#ifndef _SWAD_MAI_DB
|
#ifndef _SWAD_MAI_DB
|
||||||
#define _SWAD_MAI_DB
|
#define _SWAD_MAI_DB
|
||||||
|
|
|
@ -420,7 +420,7 @@ static bool Mrk_GetUsrMarks (FILE *FileUsrMarks,struct UsrData *UsrDat,
|
||||||
|
|
||||||
if (ID_CheckIfUsrIDIsValid (UsrIDFromTable))
|
if (ID_CheckIfUsrIDIsValid (UsrIDFromTable))
|
||||||
// A valid user's ID is found in the first column of table, and stored in UsrIDFromTable.
|
// A valid user's ID is found in the first column of table, and stored in UsrIDFromTable.
|
||||||
// Compare UsrIDFromTable with all the confirmed user's IDs in list
|
// Compare UsrIDFromTable with all confirmed user's IDs in list
|
||||||
for (NumID = 0;
|
for (NumID = 0;
|
||||||
NumID < UsrDat->IDs.Num && !UsrIDFound;
|
NumID < UsrDat->IDs.Num && !UsrIDFound;
|
||||||
NumID++)
|
NumID++)
|
||||||
|
@ -469,7 +469,7 @@ static bool Mrk_GetUsrMarks (FILE *FileUsrMarks,struct UsrData *UsrDat,
|
||||||
Str_ConvertToUpperText (UsrIDFromTable);
|
Str_ConvertToUpperText (UsrIDFromTable);
|
||||||
if (ID_CheckIfUsrIDIsValid (UsrIDFromTable))
|
if (ID_CheckIfUsrIDIsValid (UsrIDFromTable))
|
||||||
// A valid user's ID is found in the first column of table, and stored in UsrIDFromTable.
|
// A valid user's ID is found in the first column of table, and stored in UsrIDFromTable.
|
||||||
// Compare UsrIDFromTable with all the confirmed user's IDs in list
|
// Compare UsrIDFromTable with all confirmed user's IDs in list
|
||||||
for (NumID = 0;
|
for (NumID = 0;
|
||||||
NumID < UsrDat->IDs.Num && !UsrIDFound;
|
NumID < UsrDat->IDs.Num && !UsrIDFound;
|
||||||
NumID++)
|
NumID++)
|
||||||
|
|
|
@ -2636,7 +2636,7 @@ static void Msg_WriteMsgTo (struct Msg_Messages *Messages,long MsgCod)
|
||||||
/***** If any recipients are unknown *****/
|
/***** If any recipients are unknown *****/
|
||||||
if ((NumRecipients.Unknown = NumRecipients.Total - NumRecipients.Known))
|
if ((NumRecipients.Unknown = NumRecipients.Total - NumRecipients.Known))
|
||||||
{
|
{
|
||||||
/***** Begin form to show all the users *****/
|
/***** Begin form to show all users *****/
|
||||||
HTM_TR_Begin (NULL);
|
HTM_TR_Begin (NULL);
|
||||||
|
|
||||||
HTM_TD_Begin ("colspan=\"3\" class=\"AUTHOR_TXT LM\"");
|
HTM_TD_Begin ("colspan=\"3\" class=\"AUTHOR_TXT LM\"");
|
||||||
|
@ -2652,7 +2652,7 @@ static void Msg_WriteMsgTo (struct Msg_Messages *Messages,long MsgCod)
|
||||||
/***** If any known recipient is not listed *****/
|
/***** If any known recipient is not listed *****/
|
||||||
if (NumRecipients.ToShow < NumRecipients.Known)
|
if (NumRecipients.ToShow < NumRecipients.Known)
|
||||||
{
|
{
|
||||||
/***** Begin form to show all the users *****/
|
/***** Begin form to show all users *****/
|
||||||
HTM_TR_Begin (NULL);
|
HTM_TR_Begin (NULL);
|
||||||
|
|
||||||
HTM_TD_Begin ("colspan=\"3\" class=\"AUTHOR_TXT LM\"");
|
HTM_TD_Begin ("colspan=\"3\" class=\"AUTHOR_TXT LM\"");
|
||||||
|
|
|
@ -1448,7 +1448,7 @@ static void Ntf_SendPendingNotifByEMailToOneUsr (struct UsrData *ToUsrDat,unsign
|
||||||
Ntf_UpdateNumNotifSent (Hie.Deg.DegCod,Hie.Crs.CrsCod,NotifyEvent,*NumNotif,*NumMails);
|
Ntf_UpdateNumNotifSent (Hie.Deg.DegCod,Hie.Crs.CrsCod,NotifyEvent,*NumNotif,*NumMails);
|
||||||
}
|
}
|
||||||
|
|
||||||
/***** Mark all the pending notifications of this user as 'sent' *****/
|
/***** Mark all pending notifications of this user as 'sent' *****/
|
||||||
Ntf_DB_MarkPendingNtfsAsSent (ToUsrDat->UsrCod);
|
Ntf_DB_MarkPendingNtfsAsSent (ToUsrDat->UsrCod);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -103,7 +103,7 @@ void Ntf_DB_MarkAllMyNotifAsSeen (void)
|
||||||
}
|
}
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
/********** Mark all the pending notifications of a user as 'sent' ***********/
|
/************ Mark all pending notifications of a user as 'sent' *************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
void Ntf_DB_MarkPendingNtfsAsSent (long ToUsrCod)
|
void Ntf_DB_MarkPendingNtfsAsSent (long ToUsrCod)
|
||||||
|
|
12
swad_photo.c
12
swad_photo.c
|
@ -1378,13 +1378,13 @@ void Pho_CalcPhotoDegree (void)
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
/******** Get degree code with average photo least recently updated **********/
|
/******** Get degree code with average photo least recently updated **********/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
// Returns -1 when error or when all the degrees have been updated too recently
|
// Returns -1 when error or when all degrees have been updated too recently
|
||||||
|
|
||||||
static long Pho_GetDegWithAvgPhotoLeastRecentlyUpdated (void)
|
static long Pho_GetDegWithAvgPhotoLeastRecentlyUpdated (void)
|
||||||
{
|
{
|
||||||
long DegCod;
|
long DegCod;
|
||||||
|
|
||||||
/***** Delete all the degrees in sta_degrees table not present in degrees table *****/
|
/***** Delete all degrees in sta_degrees table not present in degrees table *****/
|
||||||
Pho_DB_RemoveObsoleteStatDegrees ();
|
Pho_DB_RemoveObsoleteStatDegrees ();
|
||||||
|
|
||||||
/***** 1. If a degree is not in table of computed degrees,
|
/***** 1. If a degree is not in table of computed degrees,
|
||||||
|
@ -1392,7 +1392,7 @@ static long Pho_GetDegWithAvgPhotoLeastRecentlyUpdated (void)
|
||||||
if ((DegCod = Pho_DB_GetADegWithStdsNotInTableOfComputedDegs ()) > 0)
|
if ((DegCod = Pho_DB_GetADegWithStdsNotInTableOfComputedDegs ()) > 0)
|
||||||
return DegCod;
|
return DegCod;
|
||||||
|
|
||||||
/***** 2. If all the degrees are in table,
|
/***** 2. If all degrees are in table,
|
||||||
choose the least recently updated that has students *****/
|
choose the least recently updated that has students *****/
|
||||||
return Pho_DB_GetDegWithAvgPhotoLeastRecentlyUpdated ();
|
return Pho_DB_GetDegWithAvgPhotoLeastRecentlyUpdated ();
|
||||||
}
|
}
|
||||||
|
@ -1905,7 +1905,7 @@ static void Pho_PutLinkToCalculateDegreeStats (const struct Pho_DegPhotos *DegPh
|
||||||
|
|
||||||
if ((Deg.DegCod = Pho_GetDegWithAvgPhotoLeastRecentlyUpdated ()) > 0)
|
if ((Deg.DegCod = Pho_GetDegWithAvgPhotoLeastRecentlyUpdated ()) > 0)
|
||||||
{
|
{
|
||||||
/***** Get list of all the degrees *****/
|
/***** Get list of all degrees *****/
|
||||||
Deg_GetListAllDegsWithStds (&Degs);
|
Deg_GetListAllDegsWithStds (&Degs);
|
||||||
|
|
||||||
/***** Get data of the degree from database *****/
|
/***** Get data of the degree from database *****/
|
||||||
|
@ -1927,7 +1927,7 @@ static void Pho_PutLinkToCalculateDegreeStats (const struct Pho_DegPhotos *DegPh
|
||||||
Ico_PutCalculateIconWithText (Txt_Calculate_average_photo_of_THE_DEGREE_X);
|
Ico_PutCalculateIconWithText (Txt_Calculate_average_photo_of_THE_DEGREE_X);
|
||||||
HTM_BUTTON_End ();
|
HTM_BUTTON_End ();
|
||||||
|
|
||||||
/* Selector with all the degrees with students */
|
/* Selector with all degrees with students */
|
||||||
HTM_SELECT_Begin (HTM_DONT_SUBMIT_ON_CHANGE,
|
HTM_SELECT_Begin (HTM_DONT_SUBMIT_ON_CHANGE,
|
||||||
"name=\"OthDegCod\"");
|
"name=\"OthDegCod\"");
|
||||||
for (NumDeg = 0;
|
for (NumDeg = 0;
|
||||||
|
@ -1961,7 +1961,7 @@ static void Pho_PutLinkToCalculateDegreeStats (const struct Pho_DegPhotos *DegPh
|
||||||
Frm_EndForm ();
|
Frm_EndForm ();
|
||||||
Mnu_ContextMenuEnd ();
|
Mnu_ContextMenuEnd ();
|
||||||
|
|
||||||
/***** Free list of all the degrees with students *****/
|
/***** Free list of all degrees with students *****/
|
||||||
Deg_FreeListDegs (&Degs);
|
Deg_FreeListDegs (&Degs);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -325,7 +325,7 @@ unsigned Pho_DB_GetTimeToComputeAvgPhoto (MYSQL_RES **mysql_res,long DegCod)
|
||||||
}
|
}
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
/* Delete all the degrees in sta_degrees table not present in degrees table **/
|
/*** Delete all degrees in sta_degrees table not present in degrees table ****/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
void Pho_DB_RemoveObsoleteStatDegrees (void)
|
void Pho_DB_RemoveObsoleteStatDegrees (void)
|
||||||
|
|
|
@ -96,7 +96,7 @@ void Plc_ResetPlaces (struct Plc_Places *Places)
|
||||||
}
|
}
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
/*************************** List all the places *****************************/
|
/***************************** List all places *******************************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
void Plc_SeePlaces (void)
|
void Plc_SeePlaces (void)
|
||||||
|
@ -347,7 +347,7 @@ void Plc_PutIconToViewPlaces (void)
|
||||||
}
|
}
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
/**************************** List all the places ****************************/
|
/******************************* List all places *****************************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
void Plc_GetListPlaces (struct Plc_Places *Places)
|
void Plc_GetListPlaces (struct Plc_Places *Places)
|
||||||
|
@ -458,7 +458,7 @@ void Plc_FreeListPlaces (struct Plc_Places *Places)
|
||||||
}
|
}
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
/*************************** List all the places *****************************/
|
/***************************** List all places *******************************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
static void Plc_ListPlacesForEdition (const struct Plc_Places *Places)
|
static void Plc_ListPlacesForEdition (const struct Plc_Places *Places)
|
||||||
|
@ -472,7 +472,7 @@ static void Plc_ListPlacesForEdition (const struct Plc_Places *Places)
|
||||||
/***** Write heading *****/
|
/***** Write heading *****/
|
||||||
Plc_PutHeadPlaces ();
|
Plc_PutHeadPlaces ();
|
||||||
|
|
||||||
/***** Write all the places *****/
|
/***** Write all places *****/
|
||||||
for (NumPlc = 0;
|
for (NumPlc = 0;
|
||||||
NumPlc < Places->Num;
|
NumPlc < Places->Num;
|
||||||
NumPlc++)
|
NumPlc++)
|
||||||
|
|
|
@ -124,7 +124,7 @@ void Plg_ListPlugins (void)
|
||||||
|
|
||||||
HTM_TR_End ();
|
HTM_TR_End ();
|
||||||
|
|
||||||
/***** Write all the plugins *****/
|
/***** Write all plugins *****/
|
||||||
for (NumPlg = 0;
|
for (NumPlg = 0;
|
||||||
NumPlg < Gbl.Plugins.Num;
|
NumPlg < Gbl.Plugins.Num;
|
||||||
NumPlg++)
|
NumPlg++)
|
||||||
|
@ -329,7 +329,7 @@ void Plg_FreeListPlugins (void)
|
||||||
}
|
}
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
/**************************** List all the plugins ***************************/
|
/****************************** List all plugins *****************************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
static void Plg_ListPluginsForEdition (void)
|
static void Plg_ListPluginsForEdition (void)
|
||||||
|
@ -343,7 +343,7 @@ static void Plg_ListPluginsForEdition (void)
|
||||||
/***** Write heading *****/
|
/***** Write heading *****/
|
||||||
Plg_PutHeadPlugins ();
|
Plg_PutHeadPlugins ();
|
||||||
|
|
||||||
/***** Write all the plugins *****/
|
/***** Write all plugins *****/
|
||||||
for (NumPlg = 0;
|
for (NumPlg = 0;
|
||||||
NumPlg < Gbl.Plugins.Num;
|
NumPlg < Gbl.Plugins.Num;
|
||||||
NumPlg++)
|
NumPlg++)
|
||||||
|
|
|
@ -39,7 +39,7 @@ typedef enum
|
||||||
Pri_VISIBILITY_USER = 1, // Only visible by me and my teachers if I am a student or my students if I am a teacher
|
Pri_VISIBILITY_USER = 1, // Only visible by me and my teachers if I am a student or my students if I am a teacher
|
||||||
Pri_VISIBILITY_COURSE = 2, // Visible by users sharing courses with me
|
Pri_VISIBILITY_COURSE = 2, // Visible by users sharing courses with me
|
||||||
Pri_VISIBILITY_SYSTEM = 3, // Visible by any user logged in platform
|
Pri_VISIBILITY_SYSTEM = 3, // Visible by any user logged in platform
|
||||||
Pri_VISIBILITY_WORLD = 4, // Public, visible by all the people, even unlogged visitors
|
Pri_VISIBILITY_WORLD = 4, // Public, visible to all people, even unlogged visitors
|
||||||
} Pri_Visibility_t;
|
} Pri_Visibility_t;
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
|
@ -189,7 +189,7 @@ static void Prg_InsertItem (const struct Prg_Item *ParentItem,
|
||||||
struct Prg_Item *Item,const char *Txt);
|
struct Prg_Item *Item,const char *Txt);
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
/************************ List all the program items *************************/
|
/************************** List all program items ***************************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
void Prg_ShowCourseProgram (void)
|
void Prg_ShowCourseProgram (void)
|
||||||
|
@ -209,12 +209,12 @@ void Prg_ShowCourseProgram (void)
|
||||||
|
|
||||||
static void Prg_ShowCourseProgramHighlightingItem (const struct Prg_ItemRange *ToHighlight)
|
static void Prg_ShowCourseProgramHighlightingItem (const struct Prg_ItemRange *ToHighlight)
|
||||||
{
|
{
|
||||||
/***** Show all the program items *****/
|
/***** Show all program items *****/
|
||||||
Prg_ShowAllItems (Prg_DONT_PUT_FORM_ITEM,ToHighlight,-1L,-1L,0);
|
Prg_ShowAllItems (Prg_DONT_PUT_FORM_ITEM,ToHighlight,-1L,-1L,0);
|
||||||
}
|
}
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
/*********************** Show all the program items **************************/
|
/************************* Show all program items ****************************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
static void Prg_ShowAllItems (Prg_CreateOrChangeItem_t CreateOrChangeItem,
|
static void Prg_ShowAllItems (Prg_CreateOrChangeItem_t CreateOrChangeItem,
|
||||||
|
@ -246,7 +246,7 @@ static void Prg_ShowAllItems (Prg_CreateOrChangeItem_t CreateOrChangeItem,
|
||||||
HTM_TBODY_Begin (NULL); // 1st tbody start
|
HTM_TBODY_Begin (NULL); // 1st tbody start
|
||||||
FirstTBodyOpen = true;
|
FirstTBodyOpen = true;
|
||||||
|
|
||||||
/***** Write all the program items *****/
|
/***** Write all program items *****/
|
||||||
for (NumItem = 0;
|
for (NumItem = 0;
|
||||||
NumItem < Prg_Gbl.List.NumItems;
|
NumItem < Prg_Gbl.List.NumItems;
|
||||||
NumItem++)
|
NumItem++)
|
||||||
|
@ -915,7 +915,7 @@ static void Prg_PutParams (void *ItmCod)
|
||||||
}
|
}
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
/*********************** List all the program items **************************/
|
/************************** List all program items ***************************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
static void Prg_GetListItems (void)
|
static void Prg_GetListItems (void)
|
||||||
|
|
|
@ -418,7 +418,7 @@ void Prj_ShowTableSelectedPrjs (void)
|
||||||
/***** Table head *****/
|
/***** Table head *****/
|
||||||
Prj_ShowTableAllProjectsHead ();
|
Prj_ShowTableAllProjectsHead ();
|
||||||
|
|
||||||
/***** Write all the projects *****/
|
/***** Write all projects *****/
|
||||||
for (NumPrj = 0;
|
for (NumPrj = 0;
|
||||||
NumPrj < Projects.Num;
|
NumPrj < Projects.Num;
|
||||||
NumPrj++)
|
NumPrj++)
|
||||||
|
@ -506,7 +506,7 @@ static void Prj_ShowPrjsInCurrentPage (void *Projects)
|
||||||
/***** Table head *****/
|
/***** Table head *****/
|
||||||
Prj_ShowProjectsHead ((struct Prj_Projects *) Projects,Prj_LIST_PROJECTS);
|
Prj_ShowProjectsHead ((struct Prj_Projects *) Projects,Prj_LIST_PROJECTS);
|
||||||
|
|
||||||
/***** Write all the projects *****/
|
/***** Write all projects *****/
|
||||||
for (NumPrj = Pagination.FirstItemVisible;
|
for (NumPrj = Pagination.FirstItemVisible;
|
||||||
NumPrj <= Pagination.LastItemVisible;
|
NumPrj <= Pagination.LastItemVisible;
|
||||||
NumPrj++)
|
NumPrj++)
|
||||||
|
@ -4098,7 +4098,7 @@ void Prj_UnloProjectEdition (void)
|
||||||
}
|
}
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
/******************** Remove all the projects in a course ********************/
|
/********************** Remove all projects in a course **********************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
void Prj_RemoveCrsProjects (long CrsCod)
|
void Prj_RemoveCrsProjects (long CrsCod)
|
||||||
|
|
|
@ -808,7 +808,7 @@ void Prj_DB_RemoveUsrsFromPrj (long PrjCod)
|
||||||
|
|
||||||
void Prj_DB_RemoveUsrsFromCrsPrjs (long CrsCod)
|
void Prj_DB_RemoveUsrsFromCrsPrjs (long CrsCod)
|
||||||
{
|
{
|
||||||
DB_QueryDELETE ("can not remove all the projects in a course",
|
DB_QueryDELETE ("can not remove all projects in a course",
|
||||||
"DELETE FROM prj_users"
|
"DELETE FROM prj_users"
|
||||||
" USING prj_projects,"
|
" USING prj_projects,"
|
||||||
"prj_users"
|
"prj_users"
|
||||||
|
@ -849,7 +849,7 @@ void Prj_DB_RemovePrj (long PrjCod)
|
||||||
|
|
||||||
void Prj_DB_RemoveCrsPrjs (long CrsCod)
|
void Prj_DB_RemoveCrsPrjs (long CrsCod)
|
||||||
{
|
{
|
||||||
DB_QueryDELETE ("can not remove all the projects of a course",
|
DB_QueryDELETE ("can not remove all projects of a course",
|
||||||
"DELETE FROM prj_projects"
|
"DELETE FROM prj_projects"
|
||||||
" WHERE CrsCod=%ld",
|
" WHERE CrsCod=%ld",
|
||||||
CrsCod);
|
CrsCod);
|
||||||
|
|
|
@ -3393,7 +3393,7 @@ void Qst_RemoveOneQstFromDB (long CrsCod,long QstCod)
|
||||||
Qst_RemoveMediaFromStemOfQst (CrsCod,QstCod);
|
Qst_RemoveMediaFromStemOfQst (CrsCod,QstCod);
|
||||||
Qst_RemoveMediaFromAllAnsOfQst (CrsCod,QstCod);
|
Qst_RemoveMediaFromAllAnsOfQst (CrsCod,QstCod);
|
||||||
|
|
||||||
/***** Remove the question from all the tables *****/
|
/***** Remove the question from all tables *****/
|
||||||
/* Remove answers and tags from this test question */
|
/* Remove answers and tags from this test question */
|
||||||
Qst_DB_RemAnsFromQst (QstCod);
|
Qst_DB_RemAnsFromQst (QstCod);
|
||||||
Tag_DB_RemTagsFromQst (QstCod);
|
Tag_DB_RemTagsFromQst (QstCod);
|
||||||
|
@ -3429,7 +3429,7 @@ void Qst_ChangeShuffleQst (void)
|
||||||
/***** Get a parameter that indicates whether it's possible to shuffle the answers of this question ******/
|
/***** Get a parameter that indicates whether it's possible to shuffle the answers of this question ******/
|
||||||
Shuffle = Par_GetParToBool ("Shuffle");
|
Shuffle = Par_GetParToBool ("Shuffle");
|
||||||
|
|
||||||
/***** Remove the question from all the tables *****/
|
/***** Remove the question from all tables *****/
|
||||||
/* Update the question changing the current shuffle */
|
/* Update the question changing the current shuffle */
|
||||||
DB_QueryUPDATE ("can not update the shuffle type of a question",
|
DB_QueryUPDATE ("can not update the shuffle type of a question",
|
||||||
"UPDATE tst_questions"
|
"UPDATE tst_questions"
|
||||||
|
|
|
@ -288,7 +288,7 @@ unsigned Qst_DB_GetQstsForNewTestPrint (MYSQL_RES **mysql_res,
|
||||||
Gbl.Hierarchy.Crs.CrsCod,
|
Gbl.Hierarchy.Crs.CrsCod,
|
||||||
Gbl.Hierarchy.Crs.CrsCod);
|
Gbl.Hierarchy.Crs.CrsCod);
|
||||||
|
|
||||||
if (!Questions->Tags.All) // User has not selected all the tags
|
if (!Questions->Tags.All) // User has not selected all tags
|
||||||
{
|
{
|
||||||
/* Add selected tags */
|
/* Add selected tags */
|
||||||
LengthQuery = strlen (Query);
|
LengthQuery = strlen (Query);
|
||||||
|
|
|
@ -143,7 +143,7 @@ void Roo_ResetRooms (struct Roo_Rooms *Rooms)
|
||||||
}
|
}
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
/**************************** List all the rooms *****************************/
|
/****************************** List all rooms *******************************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
void Roo_SeeRooms (void)
|
void Roo_SeeRooms (void)
|
||||||
|
@ -475,7 +475,7 @@ void Roo_PutIconToViewRooms (void)
|
||||||
}
|
}
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
/**************************** List all the rooms *****************************/
|
/****************************** List all rooms *******************************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
void Roo_GetListRooms (struct Roo_Rooms *Rooms,Roo_WhichData_t WhichData)
|
void Roo_GetListRooms (struct Roo_Rooms *Rooms,Roo_WhichData_t WhichData)
|
||||||
|
@ -647,7 +647,7 @@ void Roo_FreeListRooms (struct Roo_Rooms *Rooms)
|
||||||
}
|
}
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
/*************************** List all the rooms ******************************/
|
/***************************** List all rooms ********************************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
static void Roo_ListRoomsForEdition (const struct Bld_Buildings *Buildings,
|
static void Roo_ListRoomsForEdition (const struct Bld_Buildings *Buildings,
|
||||||
|
@ -663,7 +663,7 @@ static void Roo_ListRoomsForEdition (const struct Bld_Buildings *Buildings,
|
||||||
/***** Write heading *****/
|
/***** Write heading *****/
|
||||||
Roo_PutHeadRooms ();
|
Roo_PutHeadRooms ();
|
||||||
|
|
||||||
/***** Write all the rooms *****/
|
/***** Write all rooms *****/
|
||||||
for (NumRoom = 0;
|
for (NumRoom = 0;
|
||||||
NumRoom < Rooms->Num;
|
NumRoom < Rooms->Num;
|
||||||
NumRoom++)
|
NumRoom++)
|
||||||
|
|
|
@ -206,7 +206,7 @@ void Roo_DB_UpdateRoomCapacity (long RooCod,unsigned NewCapacity)
|
||||||
}
|
}
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
/**************************** List all the rooms *****************************/
|
/****************************** List all rooms *******************************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
unsigned Roo_DB_GetListRooms (MYSQL_RES **mysql_res,
|
unsigned Roo_DB_GetListRooms (MYSQL_RES **mysql_res,
|
||||||
|
|
|
@ -357,7 +357,7 @@ static void Sch_SearchInDB (void)
|
||||||
|
|
||||||
Gbl.Search.LogSearch = true;
|
Gbl.Search.LogSearch = true;
|
||||||
|
|
||||||
/***** Select courses in all the degrees or in current degree *****/
|
/***** Select courses in all degrees or in current degree *****/
|
||||||
switch (Gbl.Scope.Current)
|
switch (Gbl.Scope.Current)
|
||||||
{
|
{
|
||||||
case HieLvl_UNK:
|
case HieLvl_UNK:
|
||||||
|
|
|
@ -2320,7 +2320,7 @@ static void Sta_ShowNumHitsPerHour (unsigned NumHits,
|
||||||
while (Hour < 24)
|
while (Hour < 24)
|
||||||
{
|
{
|
||||||
Hits.Num = 0.0;
|
Hits.Num = 0.0;
|
||||||
if (NumHit <= NumHits) // If not read yet all the results of the query
|
if (NumHit <= NumHits) // If all the query results have not been read yet
|
||||||
{
|
{
|
||||||
row = mysql_fetch_row (mysql_res); // Get next result
|
row = mysql_fetch_row (mysql_res); // Get next result
|
||||||
NumHit++;
|
NumHit++;
|
||||||
|
@ -2416,7 +2416,7 @@ static void Sta_ShowAverageAccessesPerMinute (unsigned NumHits,MYSQL_RES *mysql_
|
||||||
Hits.Max = 0.0;
|
Hits.Max = 0.0;
|
||||||
while (MinuteDay < Sta_NUM_MINUTES_PER_DAY)
|
while (MinuteDay < Sta_NUM_MINUTES_PER_DAY)
|
||||||
{
|
{
|
||||||
if (NumHit <= NumHits) // If not all the result of the query are yet read
|
if (NumHit <= NumHits) // If all the query results have not been read yet
|
||||||
{
|
{
|
||||||
row = mysql_fetch_row (mysql_res); // Get next result
|
row = mysql_fetch_row (mysql_res); // Get next result
|
||||||
NumHit++;
|
NumHit++;
|
||||||
|
|
|
@ -196,7 +196,7 @@ void Svy_SeeAllSurveys (void)
|
||||||
}
|
}
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
/*************************** Show all the surveys ****************************/
|
/***************************** Show all surveys ******************************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
static void Svy_ListAllSurveys (struct Svy_Surveys *Surveys)
|
static void Svy_ListAllSurveys (struct Svy_Surveys *Surveys)
|
||||||
|
@ -910,7 +910,7 @@ static void Svy_PutParams (void *Surveys)
|
||||||
}
|
}
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
/*********************** Get list of all the surveys *************************/
|
/************************** Get list of all surveys **************************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
static void Svy_GetListSurveys (struct Svy_Surveys *Surveys)
|
static void Svy_GetListSurveys (struct Svy_Surveys *Surveys)
|
||||||
|
@ -2233,8 +2233,8 @@ static void Svy_GetAndWriteNamesOfGrpsAssociatedToSvy (struct Svy_Survey *Svy)
|
||||||
}
|
}
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
/************ Remove all the surveys of a place on the hierarchy *************/
|
/************* Remove all surveys in a place on the hierarchy **************/
|
||||||
/************ (country, institution, center, degree or course) *************/
|
/************* (country, institution, center, degree or course) **************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
void Svy_RemoveSurveys (HieLvl_Level_t Scope,long Cod)
|
void Svy_RemoveSurveys (HieLvl_Level_t Scope,long Cod)
|
||||||
|
@ -3208,7 +3208,7 @@ void Svy_RemoveQst (void)
|
||||||
/* Get question index */
|
/* Get question index */
|
||||||
SvyQst.QstInd = Svy_DB_GetQstIndFromQstCod (SvyQst.QstCod);
|
SvyQst.QstInd = Svy_DB_GetQstIndFromQstCod (SvyQst.QstCod);
|
||||||
|
|
||||||
/***** Remove the question from all the tables *****/
|
/***** Remove the question from all tables *****/
|
||||||
/* Remove answers from this test question */
|
/* Remove answers from this test question */
|
||||||
Svy_DB_RemoveAnswersQst (SvyQst.QstCod);
|
Svy_DB_RemoveAnswersQst (SvyQst.QstCod);
|
||||||
|
|
||||||
|
|
|
@ -147,7 +147,7 @@ void Svy_DB_UpdateNumUsrsNotifiedByEMailAboutSurvey (long SvyCod,
|
||||||
}
|
}
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
/*********************** Get list of all the surveys *************************/
|
/************************* Get list of all surveys ***************************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
unsigned Svy_DB_GetListSurveys (MYSQL_RES **mysql_res,
|
unsigned Svy_DB_GetListSurveys (MYSQL_RES **mysql_res,
|
||||||
|
@ -699,8 +699,7 @@ void Svy_DB_RemoveSvy (long SvyCod)
|
||||||
|
|
||||||
void Svy_DB_RemoveSvysIn (HieLvl_Level_t Scope,long Cod)
|
void Svy_DB_RemoveSvysIn (HieLvl_Level_t Scope,long Cod)
|
||||||
{
|
{
|
||||||
DB_QueryDELETE ("can not remove all the surveys"
|
DB_QueryDELETE ("can not remove all surveys in a place on the hierarchy",
|
||||||
" in a place on the hierarchy",
|
|
||||||
"DELETE FROM svy_surveys"
|
"DELETE FROM svy_surveys"
|
||||||
" WHERE Scope='%s'"
|
" WHERE Scope='%s'"
|
||||||
" AND Cod=%ld",
|
" AND Cod=%ld",
|
||||||
|
@ -769,12 +768,11 @@ bool Svy_DB_CheckIfICanDoThisSurveyBasedOnGrps (long SvyCod)
|
||||||
}
|
}
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
/*************** Remove groups of one type from all the surveys **************/
|
/***************** Remove groups of one type from all surveys ****************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
void Svy_DB_RemoveGroupsOfType (long GrpTypCod)
|
void Svy_DB_RemoveGroupsOfType (long GrpTypCod)
|
||||||
{
|
{
|
||||||
/***** Remove group from all the surveys *****/
|
|
||||||
DB_QueryDELETE ("can not remove groups of a type"
|
DB_QueryDELETE ("can not remove groups of a type"
|
||||||
" from the associations between surveys and groups",
|
" from the associations between surveys and groups",
|
||||||
"DELETE FROM svy_groups"
|
"DELETE FROM svy_groups"
|
||||||
|
@ -786,12 +784,11 @@ void Svy_DB_RemoveGroupsOfType (long GrpTypCod)
|
||||||
}
|
}
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
/******************* Remove one group from all the surveys *******************/
|
/********************* Remove one group from all surveys *********************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
void Svy_DB_RemoveGroup (long GrpCod)
|
void Svy_DB_RemoveGroup (long GrpCod)
|
||||||
{
|
{
|
||||||
/***** Remove group from all the surveys *****/
|
|
||||||
DB_QueryDELETE ("can not remove group from the associations"
|
DB_QueryDELETE ("can not remove group from the associations"
|
||||||
" between surveys and groups",
|
" between surveys and groups",
|
||||||
"DELETE FROM svy_groups"
|
"DELETE FROM svy_groups"
|
||||||
|
@ -818,7 +815,7 @@ void Svy_DB_RemoveGrpsAssociatedToSurvey (long SvyCod)
|
||||||
|
|
||||||
void Svy_DB_RemoveGrpsSvysIn (HieLvl_Level_t Scope,long Cod)
|
void Svy_DB_RemoveGrpsSvysIn (HieLvl_Level_t Scope,long Cod)
|
||||||
{
|
{
|
||||||
DB_QueryDELETE ("can not remove all the groups"
|
DB_QueryDELETE ("can not remove all groups"
|
||||||
" associated to surveys of a course",
|
" associated to surveys of a course",
|
||||||
"DELETE FROM svy_groups"
|
"DELETE FROM svy_groups"
|
||||||
" USING svy_surveys,"
|
" USING svy_surveys,"
|
||||||
|
@ -1259,8 +1256,8 @@ void Svy_DB_RemoveUsrsWhoHaveAnsweredSvy (long SvyCod)
|
||||||
}
|
}
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
/************ Remove all the surveys of a place on the hierarchy *************/
|
/************* Remove all surveys in a place on the hierarchy **************/
|
||||||
/************ (country, institution, center, degree or course) *************/
|
/************* (country, institution, center, degree or course) **************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
void Svy_DB_RemoveUsrsWhoHaveAnsweredSvysIn (HieLvl_Level_t Scope,long Cod)
|
void Svy_DB_RemoveUsrsWhoHaveAnsweredSvysIn (HieLvl_Level_t Scope,long Cod)
|
||||||
|
|
|
@ -402,7 +402,7 @@ void Syl_LoadListItemsSyllabusIntoMemory (struct Syl_Syllabus *Syllabus,
|
||||||
Syl_LstItemsSyllabus.Lst[0].Text[0] = '\0';
|
Syl_LstItemsSyllabus.Lst[0].Text[0] = '\0';
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
/***** Loop to read and store all the items of the syllabus *****/
|
/***** Loop to read and store all items of the syllabus *****/
|
||||||
for (NumItem = 0;
|
for (NumItem = 0;
|
||||||
NumItem < Syl_LstItemsSyllabus.NumItems;
|
NumItem < Syl_LstItemsSyllabus.NumItems;
|
||||||
NumItem++)
|
NumItem++)
|
||||||
|
|
|
@ -553,7 +553,7 @@ static void Tst_GetQuestionsForNewTest (struct Qst_Questions *Questions,
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Reset user's answers.
|
/* Reset user's answers.
|
||||||
Initially user has not answered the question ==> initially all the answers will be blank.
|
Initially user has not answered the question ==> initially all answers will be blank.
|
||||||
If the user does not confirm the submission of their exam ==>
|
If the user does not confirm the submission of their exam ==>
|
||||||
==> the exam may be half filled ==> the answers displayed will be those selected by the user. */
|
==> the exam may be half filled ==> the answers displayed will be those selected by the user. */
|
||||||
Print->PrintedQuestions[QstInd].StrAnswers[0] = '\0';
|
Print->PrintedQuestions[QstInd].StrAnswers[0] = '\0';
|
||||||
|
|
|
@ -397,7 +397,7 @@ static void TstPrn_WriteTF_AnsToFill (const struct TstPrn_PrintedQuestion *Print
|
||||||
extern const char *Txt_TF_QST[2];
|
extern const char *Txt_TF_QST[2];
|
||||||
|
|
||||||
/***** Write selector for the answer *****/
|
/***** Write selector for the answer *****/
|
||||||
/* Initially user has not answered the question ==> initially all the answers will be blank.
|
/* Initially user has not answered the question ==> initially all answers will be blank.
|
||||||
If the user does not confirm the submission of their exam ==>
|
If the user does not confirm the submission of their exam ==>
|
||||||
==> the exam may be half filled ==> the answers displayed will be those selected by the user. */
|
==> the exam may be half filled ==> the answers displayed will be those selected by the user. */
|
||||||
HTM_SELECT_Begin (HTM_DONT_SUBMIT_ON_CHANGE,
|
HTM_SELECT_Begin (HTM_DONT_SUBMIT_ON_CHANGE,
|
||||||
|
@ -442,7 +442,7 @@ static void TstPrn_WriteChoAnsToFill (const struct TstPrn_PrintedQuestion *Print
|
||||||
HTM_TR_Begin (NULL);
|
HTM_TR_Begin (NULL);
|
||||||
|
|
||||||
/***** Write selectors and letter of this option *****/
|
/***** Write selectors and letter of this option *****/
|
||||||
/* Initially user has not answered the question ==> initially all the answers will be blank.
|
/* Initially user has not answered the question ==> initially all answers will be blank.
|
||||||
If the user does not confirm the submission of their exam ==>
|
If the user does not confirm the submission of their exam ==>
|
||||||
==> the exam may be half filled ==> the answers displayed will be those selected by the user. */
|
==> the exam may be half filled ==> the answers displayed will be those selected by the user. */
|
||||||
HTM_TD_Begin ("class=\"LT\"");
|
HTM_TD_Begin ("class=\"LT\"");
|
||||||
|
|
10
swad_text.c
10
swad_text.c
|
@ -2846,7 +2846,7 @@ const char *Txt_AVERAGE_PHOTO_TYPES[Pho_NUM_AVERAGE_PHOTO_TYPES] =
|
||||||
#elif L==2 // de
|
#elif L==2 // de
|
||||||
"Median aller Fotos"
|
"Median aller Fotos"
|
||||||
#elif L==3 // en
|
#elif L==3 // en
|
||||||
"median of all the photos"
|
"median of all photos"
|
||||||
#elif L==4 // es
|
#elif L==4 // es
|
||||||
"mediana de todas las fotos"
|
"mediana de todas las fotos"
|
||||||
#elif L==5 // fr
|
#elif L==5 // fr
|
||||||
|
@ -2867,7 +2867,7 @@ const char *Txt_AVERAGE_PHOTO_TYPES[Pho_NUM_AVERAGE_PHOTO_TYPES] =
|
||||||
#elif L==2 // de
|
#elif L==2 // de
|
||||||
"arithmetischer Mittelwert aller Fotos"
|
"arithmetischer Mittelwert aller Fotos"
|
||||||
#elif L==3 // en
|
#elif L==3 // en
|
||||||
"arithmetic mean of all the photos"
|
"arithmetic mean of all photos"
|
||||||
#elif L==4 // es
|
#elif L==4 // es
|
||||||
"media aritmética de todas las fotos"
|
"media aritmética de todas las fotos"
|
||||||
#elif L==5 // fr
|
#elif L==5 // fr
|
||||||
|
@ -9292,14 +9292,14 @@ const char *Txt_Do_you_really_want_to_remove_the_X_students_from_the_course_Y_ =
|
||||||
"Do you really want to remove the %u students from the course <strong>%s</strong>?<br />"
|
"Do you really want to remove the %u students from the course <strong>%s</strong>?<br />"
|
||||||
"Although students' data will not be removed in other courses,"
|
"Although students' data will not be removed in other courses,"
|
||||||
" they will no longer enroled in this course,"
|
" they will no longer enroled in this course,"
|
||||||
" and also <strong>all the works submitted by them in this course,"
|
" and also <strong>all works submitted by them in this course,"
|
||||||
" their record cards for this course,"
|
" their record cards for this course,"
|
||||||
" and their enrolment in groups of this course will be removed.</strong>."; // Need Übersetzung
|
" and their enrolment in groups of this course will be removed.</strong>."; // Need Übersetzung
|
||||||
#elif L==3 // en
|
#elif L==3 // en
|
||||||
"Do you really want to remove the %u students from the course <strong>%s</strong>?<br />"
|
"Do you really want to remove the %u students from the course <strong>%s</strong>?<br />"
|
||||||
"Although students' data will not be removed in other courses,"
|
"Although students' data will not be removed in other courses,"
|
||||||
" they will no longer enroled in this course,"
|
" they will no longer enroled in this course,"
|
||||||
" and also <strong>all the works submitted by them in this course,"
|
" and also <strong>all works submitted by them in this course,"
|
||||||
" their record cards for this course,"
|
" their record cards for this course,"
|
||||||
" and their enrolment in groups of this course will be removed.</strong>.";
|
" and their enrolment in groups of this course will be removed.</strong>.";
|
||||||
#elif L==4 // es
|
#elif L==4 // es
|
||||||
|
@ -9313,7 +9313,7 @@ const char *Txt_Do_you_really_want_to_remove_the_X_students_from_the_course_Y_ =
|
||||||
"Do you really want to remove the %u students from the course <strong>%s</strong>?<br />"
|
"Do you really want to remove the %u students from the course <strong>%s</strong>?<br />"
|
||||||
"Although students' data will not be removed in other courses,"
|
"Although students' data will not be removed in other courses,"
|
||||||
" they will no longer enroled in this course,"
|
" they will no longer enroled in this course,"
|
||||||
" and also <strong>all the works submitted by them in this course,"
|
" and also <strong>all works submitted by them in this course,"
|
||||||
" their record cards for this course,"
|
" their record cards for this course,"
|
||||||
" and their enrolment in groups of this course will be removed.</strong>."; // Besoin de traduction
|
" and their enrolment in groups of this course will be removed.</strong>."; // Besoin de traduction
|
||||||
#elif L==6 // gn
|
#elif L==6 // gn
|
||||||
|
|
|
@ -25014,44 +25014,44 @@ const char *Txt_Actions[Act_NUM_ACTIONS] =
|
||||||
,
|
,
|
||||||
[ActReqRemAllStdCrs] =
|
[ActReqRemAllStdCrs] =
|
||||||
#if L==1 // ca
|
#if L==1 // ca
|
||||||
"Request removal of all the students from a course" // Necessita traducció
|
"Request removal of all students from a course" // Necessita traducció
|
||||||
#elif L==2 // de
|
#elif L==2 // de
|
||||||
"Request removal of all the students from a course" // Need Übersetzung
|
"Request removal of all students from a course" // Need Übersetzung
|
||||||
#elif L==3 // en
|
#elif L==3 // en
|
||||||
"Request removal of all the students from a course"
|
"Request removal of all students from a course"
|
||||||
#elif L==4 // es
|
#elif L==4 // es
|
||||||
"Solicitar eliminación de todos los estudiantes de asignatura"
|
"Solicitar eliminación de todos los estudiantes de asignatura"
|
||||||
#elif L==5 // fr
|
#elif L==5 // fr
|
||||||
"Request removal of all the students from a course" // Besoin de traduction
|
"Request removal of all students from a course" // Besoin de traduction
|
||||||
#elif L==6 // gn
|
#elif L==6 // gn
|
||||||
"Solicitar eliminación de todos los estudiantes de asignatura" // Okoteve traducción
|
"Solicitar eliminación de todos los estudiantes de asignatura" // Okoteve traducción
|
||||||
#elif L==7 // it
|
#elif L==7 // it
|
||||||
"Request removal of all the students from a course" // Bisogno di traduzione
|
"Request removal of all students from a course" // Bisogno di traduzione
|
||||||
#elif L==8 // pl
|
#elif L==8 // pl
|
||||||
"Request removal of all the students from a course" // Potrzebujesz tlumaczenie
|
"Request removal of all students from a course" // Potrzebujesz tlumaczenie
|
||||||
#elif L==9 // pt
|
#elif L==9 // pt
|
||||||
"Request removal of all the students from a course" // Precisa de tradução
|
"Request removal of all students from a course" // Precisa de tradução
|
||||||
#endif
|
#endif
|
||||||
,
|
,
|
||||||
[ActRemAllStdCrs] =
|
[ActRemAllStdCrs] =
|
||||||
#if L==1 // ca
|
#if L==1 // ca
|
||||||
"Remove all the students from a course" // Necessita traducció
|
"Remove all students from a course" // Necessita traducció
|
||||||
#elif L==2 // de
|
#elif L==2 // de
|
||||||
"Remove all the students from a course" // Need Übersetzung
|
"Remove all students from a course" // Need Übersetzung
|
||||||
#elif L==3 // en
|
#elif L==3 // en
|
||||||
"Remove all the students from a course"
|
"Remove all students from a course"
|
||||||
#elif L==4 // es
|
#elif L==4 // es
|
||||||
"Eliminar todos los estudiantes de asignatura"
|
"Eliminar todos los estudiantes de asignatura"
|
||||||
#elif L==5 // fr
|
#elif L==5 // fr
|
||||||
"Remove all the students from a course" // Besoin de traduction
|
"Remove all students from a course" // Besoin de traduction
|
||||||
#elif L==6 // gn
|
#elif L==6 // gn
|
||||||
"Eliminar todos los estudiantes de asignatura" // Okoteve traducción
|
"Eliminar todos los estudiantes de asignatura" // Okoteve traducción
|
||||||
#elif L==7 // it
|
#elif L==7 // it
|
||||||
"Remove all the students from a course" // Bisogno di traduzione
|
"Remove all students from a course" // Bisogno di traduzione
|
||||||
#elif L==8 // pl
|
#elif L==8 // pl
|
||||||
"Remove all the students from a course" // Potrzebujesz tlumaczenie
|
"Remove all students from a course" // Potrzebujesz tlumaczenie
|
||||||
#elif L==9 // pt
|
#elif L==9 // pt
|
||||||
"Remove all the students from a course" // Precisa de tradução
|
"Remove all students from a course" // Precisa de tradução
|
||||||
#endif
|
#endif
|
||||||
,
|
,
|
||||||
[ActReqRemOldUsr] =
|
[ActReqRemOldUsr] =
|
||||||
|
|
|
@ -84,7 +84,6 @@ static long Tml_DB_GetMedCod (const char *Table,const char *Field,long Cod);
|
||||||
|
|
||||||
unsigned Tml_DB_GetWho (MYSQL_RES **mysql_res)
|
unsigned Tml_DB_GetWho (MYSQL_RES **mysql_res)
|
||||||
{
|
{
|
||||||
/***** Get which users from database *****/
|
|
||||||
return (unsigned)
|
return (unsigned)
|
||||||
DB_QuerySELECT (mysql_res,"can not get which timeline users",
|
DB_QuerySELECT (mysql_res,"can not get which timeline users",
|
||||||
"SELECT TimelineUsrs" // row[0]
|
"SELECT TimelineUsrs" // row[0]
|
||||||
|
@ -99,7 +98,6 @@ unsigned Tml_DB_GetWho (MYSQL_RES **mysql_res)
|
||||||
|
|
||||||
void Tml_DB_UpdateWho (Usr_Who_t Who)
|
void Tml_DB_UpdateWho (Usr_Who_t Who)
|
||||||
{
|
{
|
||||||
/***** Update which users in database *****/
|
|
||||||
DB_QueryUPDATE ("can not update which timeline users",
|
DB_QueryUPDATE ("can not update which timeline users",
|
||||||
"UPDATE usr_last"
|
"UPDATE usr_last"
|
||||||
" SET TimelineUsrs=%u"
|
" SET TimelineUsrs=%u"
|
||||||
|
@ -140,7 +138,6 @@ unsigned Tml_DB_GetDataOfNoteByCod (long NotCod,MYSQL_RES **mysql_res)
|
||||||
|
|
||||||
long Tml_DB_GetPubCodOfOriginalNote (long NotCod)
|
long Tml_DB_GetPubCodOfOriginalNote (long NotCod)
|
||||||
{
|
{
|
||||||
/***** Get code of publication of the original note *****/
|
|
||||||
return DB_QuerySELECTCode ("can not get code of publication",
|
return DB_QuerySELECTCode ("can not get code of publication",
|
||||||
"SELECT PubCod"
|
"SELECT PubCod"
|
||||||
" FROM tml_pubs"
|
" FROM tml_pubs"
|
||||||
|
@ -178,7 +175,6 @@ long Tml_DB_CreateNewNote (Tml_Not_NoteType_t NoteType,long Cod,
|
||||||
|
|
||||||
void Tml_DB_MarkNoteAsUnavailable (Tml_Not_NoteType_t NoteType,long Cod)
|
void Tml_DB_MarkNoteAsUnavailable (Tml_Not_NoteType_t NoteType,long Cod)
|
||||||
{
|
{
|
||||||
/***** Mark note as unavailable *****/
|
|
||||||
DB_QueryUPDATE ("can not mark note as unavailable",
|
DB_QueryUPDATE ("can not mark note as unavailable",
|
||||||
"UPDATE tml_notes"
|
"UPDATE tml_notes"
|
||||||
" SET Unavailable='Y'"
|
" SET Unavailable='Y'"
|
||||||
|
@ -196,7 +192,6 @@ void Tml_DB_MarkNotesChildrenOfFolderAsUnavailable (Tml_Not_NoteType_t NoteType,
|
||||||
Brw_FileBrowser_t FileBrowser,
|
Brw_FileBrowser_t FileBrowser,
|
||||||
long Cod,const char *Path)
|
long Cod,const char *Path)
|
||||||
{
|
{
|
||||||
/***** Mark notes as unavailable *****/
|
|
||||||
DB_QueryUPDATE ("can not mark notes as unavailable",
|
DB_QueryUPDATE ("can not mark notes as unavailable",
|
||||||
"UPDATE tml_notes"
|
"UPDATE tml_notes"
|
||||||
" SET Unavailable='Y'"
|
" SET Unavailable='Y'"
|
||||||
|
@ -412,7 +407,6 @@ unsigned Tml_DB_GetNumNotesAndUsrsTotal (MYSQL_RES **mysql_res)
|
||||||
|
|
||||||
void Tml_DB_CreateTmpTableJustRetrievedNotes (void)
|
void Tml_DB_CreateTmpTableJustRetrievedNotes (void)
|
||||||
{
|
{
|
||||||
/***** Create temporary table with notes just retrieved *****/
|
|
||||||
DB_Query ("can not create temporary table",
|
DB_Query ("can not create temporary table",
|
||||||
"CREATE TEMPORARY TABLE tml_tmp_just_retrieved_notes "
|
"CREATE TEMPORARY TABLE tml_tmp_just_retrieved_notes "
|
||||||
"(NotCod BIGINT NOT NULL,UNIQUE INDEX(NotCod))"
|
"(NotCod BIGINT NOT NULL,UNIQUE INDEX(NotCod))"
|
||||||
|
@ -421,7 +415,6 @@ void Tml_DB_CreateTmpTableJustRetrievedNotes (void)
|
||||||
|
|
||||||
void Tml_DB_CreateTmpTableVisibleTimeline (void)
|
void Tml_DB_CreateTmpTableVisibleTimeline (void)
|
||||||
{
|
{
|
||||||
/***** Create temporary table with all notes visible in timeline *****/
|
|
||||||
DB_Query ("can not create temporary table",
|
DB_Query ("can not create temporary table",
|
||||||
"CREATE TEMPORARY TABLE tml_tmp_visible_timeline "
|
"CREATE TEMPORARY TABLE tml_tmp_visible_timeline "
|
||||||
"(NotCod BIGINT NOT NULL,UNIQUE INDEX(NotCod))"
|
"(NotCod BIGINT NOT NULL,UNIQUE INDEX(NotCod))"
|
||||||
|
@ -513,7 +506,6 @@ void Tml_DB_DropTmpTableVisibleTimeline (void)
|
||||||
|
|
||||||
void Tml_DB_ClearOldTimelinesNotesFromDB (void)
|
void Tml_DB_ClearOldTimelinesNotesFromDB (void)
|
||||||
{
|
{
|
||||||
/***** Remove timelines for expired sessions *****/
|
|
||||||
DB_QueryDELETE ("can not remove old timelines",
|
DB_QueryDELETE ("can not remove old timelines",
|
||||||
"DELETE LOW_PRIORITY FROM tml_timelines"
|
"DELETE LOW_PRIORITY FROM tml_timelines"
|
||||||
" WHERE SessionId NOT IN"
|
" WHERE SessionId NOT IN"
|
||||||
|
@ -527,7 +519,6 @@ void Tml_DB_ClearOldTimelinesNotesFromDB (void)
|
||||||
|
|
||||||
void Tml_DB_ClearTimelineNotesOfSessionFromDB (void)
|
void Tml_DB_ClearTimelineNotesOfSessionFromDB (void)
|
||||||
{
|
{
|
||||||
/***** Remove timeline for a session *****/
|
|
||||||
DB_QueryDELETE ("can not remove timeline",
|
DB_QueryDELETE ("can not remove timeline",
|
||||||
"DELETE FROM tml_timelines"
|
"DELETE FROM tml_timelines"
|
||||||
" WHERE SessionId='%s'",
|
" WHERE SessionId='%s'",
|
||||||
|
@ -540,7 +531,6 @@ void Tml_DB_ClearTimelineNotesOfSessionFromDB (void)
|
||||||
|
|
||||||
void Tml_DB_RemoveNoteFavs (long NotCod)
|
void Tml_DB_RemoveNoteFavs (long NotCod)
|
||||||
{
|
{
|
||||||
/***** Remove favs for note *****/
|
|
||||||
DB_QueryDELETE ("can not remove favs for note",
|
DB_QueryDELETE ("can not remove favs for note",
|
||||||
"DELETE FROM tml_notes_fav"
|
"DELETE FROM tml_notes_fav"
|
||||||
" WHERE NotCod=%ld",
|
" WHERE NotCod=%ld",
|
||||||
|
@ -553,7 +543,6 @@ void Tml_DB_RemoveNoteFavs (long NotCod)
|
||||||
|
|
||||||
void Tml_DB_RemoveNotePubs (long NotCod)
|
void Tml_DB_RemoveNotePubs (long NotCod)
|
||||||
{
|
{
|
||||||
/***** Remove all publications of this note *****/
|
|
||||||
DB_QueryDELETE ("can not remove a publication",
|
DB_QueryDELETE ("can not remove a publication",
|
||||||
"DELETE FROM tml_pubs"
|
"DELETE FROM tml_pubs"
|
||||||
" WHERE NotCod=%ld",
|
" WHERE NotCod=%ld",
|
||||||
|
@ -566,7 +555,6 @@ void Tml_DB_RemoveNotePubs (long NotCod)
|
||||||
|
|
||||||
void Tml_DB_RemoveNote (long NotCod)
|
void Tml_DB_RemoveNote (long NotCod)
|
||||||
{
|
{
|
||||||
/***** Remove note *****/
|
|
||||||
DB_QueryDELETE ("can not remove a note",
|
DB_QueryDELETE ("can not remove a note",
|
||||||
"DELETE FROM tml_notes"
|
"DELETE FROM tml_notes"
|
||||||
" WHERE NotCod=%ld"
|
" WHERE NotCod=%ld"
|
||||||
|
@ -581,7 +569,6 @@ void Tml_DB_RemoveNote (long NotCod)
|
||||||
|
|
||||||
void Tml_DB_RemoveAllNotesUsr (long UsrCod)
|
void Tml_DB_RemoveAllNotesUsr (long UsrCod)
|
||||||
{
|
{
|
||||||
/***** Remove all notes created by user *****/
|
|
||||||
DB_QueryDELETE ("can not remove notes",
|
DB_QueryDELETE ("can not remove notes",
|
||||||
"DELETE FROM tml_notes"
|
"DELETE FROM tml_notes"
|
||||||
" WHERE UsrCod=%ld",
|
" WHERE UsrCod=%ld",
|
||||||
|
@ -626,7 +613,6 @@ long Tml_DB_GetMedCodFromPost (long PstCod)
|
||||||
|
|
||||||
long Tml_DB_CreateNewPost (const struct Tml_Pst_Content *Content)
|
long Tml_DB_CreateNewPost (const struct Tml_Pst_Content *Content)
|
||||||
{
|
{
|
||||||
/***** Insert post content in the database *****/
|
|
||||||
return
|
return
|
||||||
DB_QueryINSERTandReturnCode ("can not create post",
|
DB_QueryINSERTandReturnCode ("can not create post",
|
||||||
"INSERT INTO tml_posts"
|
"INSERT INTO tml_posts"
|
||||||
|
@ -643,7 +629,6 @@ long Tml_DB_CreateNewPost (const struct Tml_Pst_Content *Content)
|
||||||
|
|
||||||
void Tml_DB_RemovePost (long PstCod)
|
void Tml_DB_RemovePost (long PstCod)
|
||||||
{
|
{
|
||||||
/***** Remove post *****/
|
|
||||||
DB_QueryDELETE ("can not remove a post",
|
DB_QueryDELETE ("can not remove a post",
|
||||||
"DELETE FROM tml_posts"
|
"DELETE FROM tml_posts"
|
||||||
" WHERE PstCod=%ld",
|
" WHERE PstCod=%ld",
|
||||||
|
@ -656,7 +641,6 @@ void Tml_DB_RemovePost (long PstCod)
|
||||||
|
|
||||||
void Tml_DB_RemoveAllPostsUsr (long UsrCod)
|
void Tml_DB_RemoveAllPostsUsr (long UsrCod)
|
||||||
{
|
{
|
||||||
/***** Remove all posts of the user *****/
|
|
||||||
DB_QueryDELETE ("can not remove posts",
|
DB_QueryDELETE ("can not remove posts",
|
||||||
"DELETE FROM tml_posts"
|
"DELETE FROM tml_posts"
|
||||||
" WHERE PstCod IN"
|
" WHERE PstCod IN"
|
||||||
|
@ -732,7 +716,6 @@ unsigned Tml_DB_GetInitialComms (long NotCod,unsigned NumInitialCommsToGet,
|
||||||
unsigned Tml_DB_GetFinalComms (long NotCod,unsigned NumFinalCommsToGet,
|
unsigned Tml_DB_GetFinalComms (long NotCod,unsigned NumFinalCommsToGet,
|
||||||
MYSQL_RES **mysql_res)
|
MYSQL_RES **mysql_res)
|
||||||
{
|
{
|
||||||
/***** Get final comments of a note from database *****/
|
|
||||||
return (unsigned)
|
return (unsigned)
|
||||||
DB_QuerySELECT (mysql_res,"can not get comments",
|
DB_QuerySELECT (mysql_res,"can not get comments",
|
||||||
"SELECT *"
|
"SELECT *"
|
||||||
|
@ -787,7 +770,6 @@ unsigned Tml_DB_GetDataOfCommByCod (long PubCod,MYSQL_RES **mysql_res)
|
||||||
void Tml_DB_InsertCommContent (long PubCod,
|
void Tml_DB_InsertCommContent (long PubCod,
|
||||||
const struct Tml_Pst_Content *Content)
|
const struct Tml_Pst_Content *Content)
|
||||||
{
|
{
|
||||||
/***** Insert comment content in database *****/
|
|
||||||
DB_QueryINSERT ("can not store comment content",
|
DB_QueryINSERT ("can not store comment content",
|
||||||
"INSERT INTO tml_comments"
|
"INSERT INTO tml_comments"
|
||||||
" (PubCod,Txt,MedCod)"
|
" (PubCod,Txt,MedCod)"
|
||||||
|
@ -813,7 +795,6 @@ long Tml_DB_GetMedCodFromComm (long PubCod)
|
||||||
|
|
||||||
void Tml_DB_RemoveCommFavs (long PubCod)
|
void Tml_DB_RemoveCommFavs (long PubCod)
|
||||||
{
|
{
|
||||||
/***** Remove favs for comment *****/
|
|
||||||
DB_QueryDELETE ("can not remove favs for comment",
|
DB_QueryDELETE ("can not remove favs for comment",
|
||||||
"DELETE FROM tml_comments_fav"
|
"DELETE FROM tml_comments_fav"
|
||||||
" WHERE PubCod=%ld",
|
" WHERE PubCod=%ld",
|
||||||
|
@ -826,7 +807,6 @@ void Tml_DB_RemoveCommFavs (long PubCod)
|
||||||
|
|
||||||
void Tml_DB_RemoveCommContent (long PubCod)
|
void Tml_DB_RemoveCommContent (long PubCod)
|
||||||
{
|
{
|
||||||
/***** Remove content of comment *****/
|
|
||||||
DB_QueryDELETE ("can not remove comment content",
|
DB_QueryDELETE ("can not remove comment content",
|
||||||
"DELETE FROM tml_comments"
|
"DELETE FROM tml_comments"
|
||||||
" WHERE PubCod=%ld",
|
" WHERE PubCod=%ld",
|
||||||
|
@ -839,7 +819,6 @@ void Tml_DB_RemoveCommContent (long PubCod)
|
||||||
|
|
||||||
void Tml_DB_RemoveCommPub (long PubCod)
|
void Tml_DB_RemoveCommPub (long PubCod)
|
||||||
{
|
{
|
||||||
/***** Remove comment publication *****/
|
|
||||||
DB_QueryDELETE ("can not remove comment",
|
DB_QueryDELETE ("can not remove comment",
|
||||||
"DELETE FROM tml_pubs"
|
"DELETE FROM tml_pubs"
|
||||||
" WHERE PubCod=%ld"
|
" WHERE PubCod=%ld"
|
||||||
|
@ -851,12 +830,11 @@ void Tml_DB_RemoveCommPub (long PubCod)
|
||||||
}
|
}
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
/*********** Remove all comments in all the notes of a given user ************/
|
/************* Remove all comments in all notes for a given user *************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
void Tml_DB_RemoveAllCommsInAllNotesOf (long UsrCod)
|
void Tml_DB_RemoveAllCommsInAllNotesOf (long UsrCod)
|
||||||
{
|
{
|
||||||
/***** Remove all comments in all notes of the user *****/
|
|
||||||
DB_QueryDELETE ("can not remove comments",
|
DB_QueryDELETE ("can not remove comments",
|
||||||
"DELETE FROM tml_comments"
|
"DELETE FROM tml_comments"
|
||||||
" USING tml_notes,"
|
" USING tml_notes,"
|
||||||
|
@ -875,7 +853,6 @@ void Tml_DB_RemoveAllCommsInAllNotesOf (long UsrCod)
|
||||||
|
|
||||||
void Tml_DB_RemoveAllCommsMadeBy (long UsrCod)
|
void Tml_DB_RemoveAllCommsMadeBy (long UsrCod)
|
||||||
{
|
{
|
||||||
/***** Remove all comments made by this user in any note *****/
|
|
||||||
DB_QueryDELETE ("can not remove comments",
|
DB_QueryDELETE ("can not remove comments",
|
||||||
"DELETE FROM tml_comments"
|
"DELETE FROM tml_comments"
|
||||||
" USING tml_pubs,"
|
" USING tml_pubs,"
|
||||||
|
@ -893,7 +870,6 @@ void Tml_DB_RemoveAllCommsMadeBy (long UsrCod)
|
||||||
|
|
||||||
static long Tml_DB_GetMedCod (const char *Table,const char *Field,long Cod)
|
static long Tml_DB_GetMedCod (const char *Table,const char *Field,long Cod)
|
||||||
{
|
{
|
||||||
/***** Get code of media associated to comment *****/
|
|
||||||
return DB_QuerySELECTCode ("can not get media code",
|
return DB_QuerySELECTCode ("can not get media code",
|
||||||
"SELECT MedCod" // row[0]
|
"SELECT MedCod" // row[0]
|
||||||
" FROM %s"
|
" FROM %s"
|
||||||
|
@ -909,7 +885,6 @@ static long Tml_DB_GetMedCod (const char *Table,const char *Field,long Cod)
|
||||||
void Tml_DB_CreateSubQueryPublishers (const struct Tml_Timeline *Timeline,
|
void Tml_DB_CreateSubQueryPublishers (const struct Tml_Timeline *Timeline,
|
||||||
struct Tml_Pub_SubQueries *SubQueries)
|
struct Tml_Pub_SubQueries *SubQueries)
|
||||||
{
|
{
|
||||||
/***** Create temporary table and subquery with potential publishers *****/
|
|
||||||
switch (Timeline->UsrOrGbl)
|
switch (Timeline->UsrOrGbl)
|
||||||
{
|
{
|
||||||
case Tml_Usr_TIMELINE_USR: // Show the timeline of a user
|
case Tml_Usr_TIMELINE_USR: // Show the timeline of a user
|
||||||
|
@ -1040,7 +1015,6 @@ unsigned Tml_DB_GetDataOfPubByCod (long PubCod,MYSQL_RES **mysql_res)
|
||||||
|
|
||||||
long Tml_DB_GetNotCodFromPubCod (long PubCod)
|
long Tml_DB_GetNotCodFromPubCod (long PubCod)
|
||||||
{
|
{
|
||||||
/***** Get code of note from database *****/
|
|
||||||
return DB_QuerySELECTCode ("can not get code of note",
|
return DB_QuerySELECTCode ("can not get code of note",
|
||||||
"SELECT NotCod"
|
"SELECT NotCod"
|
||||||
" FROM tml_pubs"
|
" FROM tml_pubs"
|
||||||
|
@ -1088,7 +1062,6 @@ long Tml_DB_GetPubCodFromSession (const char *FieldName)
|
||||||
|
|
||||||
unsigned Tml_DB_GetNumPubsUsr (long UsrCod)
|
unsigned Tml_DB_GetNumPubsUsr (long UsrCod)
|
||||||
{
|
{
|
||||||
/***** Get number of posts from a user from database *****/
|
|
||||||
return (unsigned)
|
return (unsigned)
|
||||||
DB_QueryCOUNT ("can not get number of publications from a user",
|
DB_QueryCOUNT ("can not get number of publications from a user",
|
||||||
"SELECT COUNT(*)"
|
"SELECT COUNT(*)"
|
||||||
|
@ -1122,7 +1095,6 @@ unsigned Tml_DB_GetPublishersInNoteExceptMe (MYSQL_RES **mysql_res,long PubCod)
|
||||||
|
|
||||||
long Tml_DB_CreateNewPub (const struct Tml_Pub_Publication *Pub)
|
long Tml_DB_CreateNewPub (const struct Tml_Pub_Publication *Pub)
|
||||||
{
|
{
|
||||||
/***** Insert new publication in database *****/
|
|
||||||
return
|
return
|
||||||
DB_QueryINSERTandReturnCode ("can not publish note/comment",
|
DB_QueryINSERTandReturnCode ("can not publish note/comment",
|
||||||
"INSERT INTO tml_pubs"
|
"INSERT INTO tml_pubs"
|
||||||
|
@ -1187,9 +1159,6 @@ void Tml_DB_UpdateFirstLastPubCodsInSession (long FirstPubCod)
|
||||||
|
|
||||||
void Tml_DB_RemoveAllPubsPublishedByAnyUsrOfNotesAuthoredBy (long UsrCod)
|
void Tml_DB_RemoveAllPubsPublishedByAnyUsrOfNotesAuthoredBy (long UsrCod)
|
||||||
{
|
{
|
||||||
/***** Remove all publications (original notes, shared notes, comments)
|
|
||||||
published by any user
|
|
||||||
and related to notes authored by this user *****/
|
|
||||||
DB_QueryDELETE ("can not remove publications",
|
DB_QueryDELETE ("can not remove publications",
|
||||||
"DELETE FROM tml_pubs"
|
"DELETE FROM tml_pubs"
|
||||||
" USING tml_notes,"
|
" USING tml_notes,"
|
||||||
|
@ -1205,7 +1174,6 @@ void Tml_DB_RemoveAllPubsPublishedByAnyUsrOfNotesAuthoredBy (long UsrCod)
|
||||||
|
|
||||||
void Tml_DB_RemoveAllPubsPublishedBy (long UsrCod)
|
void Tml_DB_RemoveAllPubsPublishedBy (long UsrCod)
|
||||||
{
|
{
|
||||||
/***** Remove all publications published by the user *****/
|
|
||||||
DB_QueryDELETE ("can not remove publications",
|
DB_QueryDELETE ("can not remove publications",
|
||||||
"DELETE FROM tml_pubs"
|
"DELETE FROM tml_pubs"
|
||||||
" WHERE PublisherCod=%ld",
|
" WHERE PublisherCod=%ld",
|
||||||
|
@ -1218,7 +1186,6 @@ void Tml_DB_RemoveAllPubsPublishedBy (long UsrCod)
|
||||||
|
|
||||||
bool Tml_DB_CheckIfFavedByUsr (Tml_Usr_FavSha_t FavSha,long Cod,long UsrCod)
|
bool Tml_DB_CheckIfFavedByUsr (Tml_Usr_FavSha_t FavSha,long Cod,long UsrCod)
|
||||||
{
|
{
|
||||||
/***** Check if a user has favourited a note/comment from database *****/
|
|
||||||
return (DB_QueryCOUNT ("can not check if a user has favourited",
|
return (DB_QueryCOUNT ("can not check if a user has favourited",
|
||||||
"SELECT COUNT(*)"
|
"SELECT COUNT(*)"
|
||||||
" FROM %s"
|
" FROM %s"
|
||||||
|
@ -1234,7 +1201,6 @@ bool Tml_DB_CheckIfFavedByUsr (Tml_Usr_FavSha_t FavSha,long Cod,long UsrCod)
|
||||||
|
|
||||||
unsigned Tml_DB_GetNumFavers (Tml_Usr_FavSha_t FavSha,long Cod,long UsrCod)
|
unsigned Tml_DB_GetNumFavers (Tml_Usr_FavSha_t FavSha,long Cod,long UsrCod)
|
||||||
{
|
{
|
||||||
/***** Get number of times (users) a note/comment has been favourited *****/
|
|
||||||
return (unsigned)
|
return (unsigned)
|
||||||
DB_QueryCOUNT ("can not get number of times has been favourited",
|
DB_QueryCOUNT ("can not get number of times has been favourited",
|
||||||
"SELECT COUNT(*)"
|
"SELECT COUNT(*)"
|
||||||
|
@ -1254,7 +1220,6 @@ unsigned Tml_DB_GetFavers (Tml_Usr_FavSha_t FavSha,
|
||||||
long Cod,long UsrCod,unsigned MaxUsrs,
|
long Cod,long UsrCod,unsigned MaxUsrs,
|
||||||
MYSQL_RES **mysql_res)
|
MYSQL_RES **mysql_res)
|
||||||
{
|
{
|
||||||
/***** Get list of users who have marked a note/comment as favourite from database *****/
|
|
||||||
return (unsigned)
|
return (unsigned)
|
||||||
DB_QuerySELECT (mysql_res,"can not get favers",
|
DB_QuerySELECT (mysql_res,"can not get favers",
|
||||||
"SELECT UsrCod" // row[0]
|
"SELECT UsrCod" // row[0]
|
||||||
|
@ -1275,7 +1240,6 @@ unsigned Tml_DB_GetFavers (Tml_Usr_FavSha_t FavSha,
|
||||||
|
|
||||||
void Tml_DB_MarkAsFav (Tml_Usr_FavSha_t FavSha,long Cod)
|
void Tml_DB_MarkAsFav (Tml_Usr_FavSha_t FavSha,long Cod)
|
||||||
{
|
{
|
||||||
/***** Insert in favourited in database *****/
|
|
||||||
DB_QueryINSERT ("can not favourite comment",
|
DB_QueryINSERT ("can not favourite comment",
|
||||||
"INSERT IGNORE INTO %s"
|
"INSERT IGNORE INTO %s"
|
||||||
" (%s,UsrCod,TimeFav)"
|
" (%s,UsrCod,TimeFav)"
|
||||||
|
@ -1292,7 +1256,6 @@ void Tml_DB_MarkAsFav (Tml_Usr_FavSha_t FavSha,long Cod)
|
||||||
|
|
||||||
void Tml_DB_UnmarkAsFav (Tml_Usr_FavSha_t FavSha,long Cod)
|
void Tml_DB_UnmarkAsFav (Tml_Usr_FavSha_t FavSha,long Cod)
|
||||||
{
|
{
|
||||||
/***** Delete the mark as favourite from database *****/
|
|
||||||
DB_QueryDELETE ("can not unfavourite",
|
DB_QueryDELETE ("can not unfavourite",
|
||||||
"DELETE FROM %s"
|
"DELETE FROM %s"
|
||||||
" WHERE %s=%ld"
|
" WHERE %s=%ld"
|
||||||
|
@ -1308,7 +1271,6 @@ void Tml_DB_UnmarkAsFav (Tml_Usr_FavSha_t FavSha,long Cod)
|
||||||
|
|
||||||
void Tml_DB_RemoveAllFavsMadeByUsr (Tml_Usr_FavSha_t FavSha,long UsrCod)
|
void Tml_DB_RemoveAllFavsMadeByUsr (Tml_Usr_FavSha_t FavSha,long UsrCod)
|
||||||
{
|
{
|
||||||
/* Remove all favs made by this user to any note/comment */
|
|
||||||
DB_QueryDELETE ("can not remove favs",
|
DB_QueryDELETE ("can not remove favs",
|
||||||
"DELETE FROM %s"
|
"DELETE FROM %s"
|
||||||
" WHERE UsrCod=%ld",
|
" WHERE UsrCod=%ld",
|
||||||
|
@ -1322,7 +1284,6 @@ void Tml_DB_RemoveAllFavsMadeByUsr (Tml_Usr_FavSha_t FavSha,long UsrCod)
|
||||||
|
|
||||||
void Tml_DB_RemoveAllFavsToPubsBy (Tml_Usr_FavSha_t FavSha,long UsrCod)
|
void Tml_DB_RemoveAllFavsToPubsBy (Tml_Usr_FavSha_t FavSha,long UsrCod)
|
||||||
{
|
{
|
||||||
/***** Remove all favs to notes/comments of this user *****/
|
|
||||||
DB_QueryDELETE ("can not remove favs",
|
DB_QueryDELETE ("can not remove favs",
|
||||||
"DELETE FROM %s"
|
"DELETE FROM %s"
|
||||||
" USING tml_pubs,"
|
" USING tml_pubs,"
|
||||||
|
@ -1345,8 +1306,6 @@ void Tml_DB_RemoveAllFavsToPubsBy (Tml_Usr_FavSha_t FavSha,long UsrCod)
|
||||||
|
|
||||||
void Tml_DB_RemoveAllFavsToAllCommsInAllNotesBy (long UsrCod)
|
void Tml_DB_RemoveAllFavsToAllCommsInAllNotesBy (long UsrCod)
|
||||||
{
|
{
|
||||||
/***** Remove all favs to all comments
|
|
||||||
in all notes authored by this user *****/
|
|
||||||
DB_QueryDELETE ("can not remove favs",
|
DB_QueryDELETE ("can not remove favs",
|
||||||
"DELETE FROM tml_comments_fav"
|
"DELETE FROM tml_comments_fav"
|
||||||
" USING tml_notes,"
|
" USING tml_notes,"
|
||||||
|
@ -1383,7 +1342,6 @@ bool Tml_DB_CheckIfSharedByUsr (long NotCod,long UsrCod)
|
||||||
|
|
||||||
unsigned Tml_DB_GetNumSharers (long NotCod,long UsrCod)
|
unsigned Tml_DB_GetNumSharers (long NotCod,long UsrCod)
|
||||||
{
|
{
|
||||||
/***** Get number of times (users) this note has been shared *****/
|
|
||||||
return (unsigned)
|
return (unsigned)
|
||||||
DB_QueryCOUNT ("can not get number of times a note has been shared",
|
DB_QueryCOUNT ("can not get number of times a note has been shared",
|
||||||
"SELECT COUNT(*)"
|
"SELECT COUNT(*)"
|
||||||
|
@ -1403,7 +1361,6 @@ unsigned Tml_DB_GetNumSharers (long NotCod,long UsrCod)
|
||||||
unsigned Tml_DB_GetSharers (long NotCod,long UsrCod,unsigned MaxUsrs,
|
unsigned Tml_DB_GetSharers (long NotCod,long UsrCod,unsigned MaxUsrs,
|
||||||
MYSQL_RES **mysql_res)
|
MYSQL_RES **mysql_res)
|
||||||
{
|
{
|
||||||
/***** Get list of users who have shared a note from database *****/
|
|
||||||
return (unsigned)
|
return (unsigned)
|
||||||
DB_QuerySELECT (mysql_res,"can not get users",
|
DB_QuerySELECT (mysql_res,"can not get users",
|
||||||
"SELECT PublisherCod" // row[0]
|
"SELECT PublisherCod" // row[0]
|
||||||
|
@ -1425,7 +1382,6 @@ unsigned Tml_DB_GetSharers (long NotCod,long UsrCod,unsigned MaxUsrs,
|
||||||
|
|
||||||
void Tml_DB_RemoveSharedPub (long NotCod)
|
void Tml_DB_RemoveSharedPub (long NotCod)
|
||||||
{
|
{
|
||||||
/***** Remove shared publication *****/
|
|
||||||
DB_QueryDELETE ("can not remove a publication",
|
DB_QueryDELETE ("can not remove a publication",
|
||||||
"DELETE FROM tml_pubs"
|
"DELETE FROM tml_pubs"
|
||||||
" WHERE NotCod=%ld"
|
" WHERE NotCod=%ld"
|
||||||
|
|
|
@ -76,7 +76,7 @@ static void Tml_Usr_PutDisabledIconFavSha (Tml_Usr_FavSha_t FavSha,
|
||||||
unsigned NumUsrs);
|
unsigned NumUsrs);
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
/************* Remove all the content of a user from database ****************/
|
/*************** Remove all content of a user from database ******************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
void Tml_Usr_RemoveUsrContent (long UsrCod)
|
void Tml_Usr_RemoveUsrContent (long UsrCod)
|
||||||
|
@ -99,7 +99,7 @@ void Tml_Usr_RemoveUsrContent (long UsrCod)
|
||||||
Tml_DB_RemoveAllFavsToPubsBy (Tml_Usr_FAV_UNF_NOTE,UsrCod);
|
Tml_DB_RemoveAllFavsToPubsBy (Tml_Usr_FAV_UNF_NOTE,UsrCod);
|
||||||
|
|
||||||
/***** Remove comments *****/
|
/***** Remove comments *****/
|
||||||
/* Remove all comments in all the notes of this user */
|
/* Remove all comments in all notes of this user */
|
||||||
Tml_DB_RemoveAllCommsInAllNotesOf (UsrCod);
|
Tml_DB_RemoveAllCommsInAllNotesOf (UsrCod);
|
||||||
|
|
||||||
/* Remove all comments made by this user in any note */
|
/* Remove all comments made by this user in any note */
|
||||||
|
|
|
@ -1010,7 +1010,7 @@ static void Tmt_FillTimeTableFromDB (struct Tmt_Timetable *Timetable,
|
||||||
if (FirstFreeColumn < Tmt_MAX_COLUMNS_PER_CELL)
|
if (FirstFreeColumn < Tmt_MAX_COLUMNS_PER_CELL)
|
||||||
// If there's place for another column in this cell
|
// If there's place for another column in this cell
|
||||||
{
|
{
|
||||||
/* Check if there's place for all the rows of this class */
|
/* Check if there's place for all rows of this class */
|
||||||
TimeTableHasSpaceForThisClass = true;
|
TimeTableHasSpaceForThisClass = true;
|
||||||
for (i = Interval + 1;
|
for (i = Interval + 1;
|
||||||
i < Interval + DurationNumIntervals &&
|
i < Interval + DurationNumIntervals &&
|
||||||
|
|
10
swad_user.c
10
swad_user.c
|
@ -409,7 +409,7 @@ void Usr_UsrDataDestructor (struct UsrData *UsrDat)
|
||||||
}
|
}
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
/************* Get all the user's data from a given user's code **************/
|
/*************** Get all user's data from a given user's code ****************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
// Input: UsrDat->UsrCod must hold user's code
|
// Input: UsrDat->UsrCod must hold user's code
|
||||||
|
|
||||||
|
@ -2407,7 +2407,7 @@ unsigned Usr_GetDegsFromUsr (long UsrCod,long CtrCod,MYSQL_RES **mysql_res)
|
||||||
}
|
}
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
/************** Get all the courses of a user from database ******************/
|
/**************** Get all courses of a user from database ********************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
// Returns the number of rows of the result
|
// Returns the number of rows of the result
|
||||||
|
|
||||||
|
@ -4642,7 +4642,7 @@ static void Usr_BuildQueryToGetUsrsLstCrs (char **Query,Rol_Role_t Role)
|
||||||
Str_Concat (*Query," OR ",Usr_MAX_BYTES_QUERY_GET_LIST_USRS);
|
Str_Concat (*Query," OR ",Usr_MAX_BYTES_QUERY_GET_LIST_USRS);
|
||||||
else
|
else
|
||||||
Str_Concat (*Query," AND (",Usr_MAX_BYTES_QUERY_GET_LIST_USRS);
|
Str_Concat (*Query," AND (",Usr_MAX_BYTES_QUERY_GET_LIST_USRS);
|
||||||
/* Select all the students of the course who don't belong to any group of type GrpTypCod */
|
/* Select all students of the course who don't belong to any group of type GrpTypCod */
|
||||||
Str_Concat (*Query,"crs_users.UsrCod NOT IN"
|
Str_Concat (*Query,"crs_users.UsrCod NOT IN"
|
||||||
" (SELECT DISTINCT grp_users.UsrCod"
|
" (SELECT DISTINCT grp_users.UsrCod"
|
||||||
" FROM grp_groups,"
|
" FROM grp_groups,"
|
||||||
|
@ -5528,7 +5528,7 @@ static void Usr_GetGstsLst (HieLvl_Level_t Scope)
|
||||||
}
|
}
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
/*********** Get the user's codes of all the students of a degree ************/
|
/************** Get the user's codes of all students of a degree *************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
void Usr_GetUnorderedStdsCodesInDeg (long DegCod)
|
void Usr_GetUnorderedStdsCodesInDeg (long DegCod)
|
||||||
|
@ -7593,7 +7593,7 @@ unsigned Usr_ListUsrsFound (Rol_Role_t Role,
|
||||||
Usr_WriteRowUsrMainData (NumUsr + 1,&UsrDat,false,Role,
|
Usr_WriteRowUsrMainData (NumUsr + 1,&UsrDat,false,Role,
|
||||||
&Gbl.Usrs.Selected);
|
&Gbl.Usrs.Selected);
|
||||||
|
|
||||||
/* Write all the courses this user belongs to */
|
/* Write all courses this user belongs to */
|
||||||
if (Role != Rol_GST && // Guests do not belong to any course
|
if (Role != Rol_GST && // Guests do not belong to any course
|
||||||
Gbl.Usrs.Me.Role.Logged >= Rol_DEG_ADM) // Only admins can view the courses
|
Gbl.Usrs.Me.Role.Logged >= Rol_DEG_ADM) // Only admins can view the courses
|
||||||
{
|
{
|
||||||
|
|
Loading…
Reference in New Issue