Version 15.155.1

This commit is contained in:
Antonio Cañas Vargas 2016-03-20 02:08:13 +01:00
parent 21fed46c97
commit 0e33007fae
4 changed files with 58 additions and 55 deletions

View File

@ -119,6 +119,8 @@ static void Asg_ShowAllAssignments (void)
tAsgsOrderType Order; tAsgsOrderType Order;
struct Pagination Pagination; struct Pagination Pagination;
unsigned NumAsg; unsigned NumAsg;
bool ICanEdit = (Gbl.Usrs.Me.LoggedRole == Rol_TEACHER ||
Gbl.Usrs.Me.LoggedRole == Rol_SYS_ADM);
/***** Get list of assignments *****/ /***** Get list of assignments *****/
Asg_GetListAssignments (); Asg_GetListAssignments ();
@ -135,9 +137,8 @@ static void Asg_ShowAllAssignments (void)
/***** Start frame *****/ /***** Start frame *****/
Lay_StartRoundFrame ("100%",Txt_Assignments, Lay_StartRoundFrame ("100%",Txt_Assignments,
(Gbl.Usrs.Me.LoggedRole == Rol_TEACHER || ICanEdit ? Asg_PutIconToCreateNewAsg :
Gbl.Usrs.Me.LoggedRole == Rol_SYS_ADM) ? Asg_PutIconToCreateNewAsg : NULL);
NULL);
/***** Select whether show only my groups or all groups *****/ /***** Select whether show only my groups or all groups *****/
if (Gbl.CurrentCrs.Grps.NumGrps) if (Gbl.CurrentCrs.Grps.NumGrps)
@ -194,7 +195,8 @@ static void Asg_ShowAllAssignments (void)
Lay_ShowAlert (Lay_INFO,Txt_No_assignments); Lay_ShowAlert (Lay_INFO,Txt_No_assignments);
/***** Button to create a new assignment *****/ /***** Button to create a new assignment *****/
Asg_PutButtonToCreateNewAsg (); if (ICanEdit)
Asg_PutButtonToCreateNewAsg ();
/***** End frame *****/ /***** End frame *****/
Lay_EndRoundFrame (); Lay_EndRoundFrame ();

View File

@ -57,7 +57,8 @@ extern struct Globals Gbl;
typedef enum typedef enum
{ {
Att_NORMAL_VIEW, Att_NORMAL_VIEW_ONLY_ME,
Att_NORMAL_VIEW_STUDENTS,
Att_PRINT_VIEW, Att_PRINT_VIEW,
} Att_TypeOfView_t; } Att_TypeOfView_t;
@ -112,14 +113,16 @@ static void Usr_ListOrPrintStdsAttendanceCrs (Att_TypeOfView_t TypeOfView);
static void Att_GetListSelectedUsrCods (unsigned NumStdsInList,long **LstSelectedUsrCods); static void Att_GetListSelectedUsrCods (unsigned NumStdsInList,long **LstSelectedUsrCods);
static void Att_GetListSelectedAttCods (char **StrAttCodsSelected); static void Att_GetListSelectedAttCods (char **StrAttCodsSelected);
static void Att_PutFormToPrintMyList (void); static void Att_PutIconToPrintMyList (void);
static void Att_PutFormToPrintMyListParams (void); static void Att_PutFormToPrintMyListParams (void);
static void Att_PutFormToPrintStdsList (void); static void Att_PutIconToPrintStdsList (void);
static void Att_PutFormToPrintStdsListParams (void); static void Att_PutParamsToPrintStdsList (void);
static void Att_PutButtonToShowDetails (void); static void Att_PutButtonToShowDetails (void);
static void Att_ListEventsToSelect (Att_TypeOfView_t TypeOfView); static void Att_ListEventsToSelect (Att_TypeOfView_t TypeOfView);
static void Att_ListStdsAttendanceTable (Att_TypeOfView_t TypeOfView,unsigned NumStdsInList,long *LstSelectedUsrCods); static void Att_ListStdsAttendanceTable (Att_TypeOfView_t TypeOfView,
unsigned NumStdsInList,
long *LstSelectedUsrCods);
static void Att_WriteTableHeadSeveralAttEvents (void); static void Att_WriteTableHeadSeveralAttEvents (void);
static void Att_WriteRowStdSeveralAttEvents (unsigned NumStd,struct UsrData *UsrDat); static void Att_WriteRowStdSeveralAttEvents (unsigned NumStd,struct UsrData *UsrDat);
static void Att_ListStdsWithAttEventsDetails (unsigned NumStdsInList,long *LstSelectedUsrCods); static void Att_ListStdsWithAttEventsDetails (unsigned NumStdsInList,long *LstSelectedUsrCods);
@ -186,6 +189,8 @@ static void Att_ShowAllAttEvents (void)
Att_EventsOrderType_t Order; Att_EventsOrderType_t Order;
struct Pagination Pagination; struct Pagination Pagination;
unsigned NumAttEvent; unsigned NumAttEvent;
bool ICanEdit = (Gbl.Usrs.Me.LoggedRole == Rol_TEACHER ||
Gbl.Usrs.Me.LoggedRole == Rol_SYS_ADM);
/***** Compute variables related to pagination *****/ /***** Compute variables related to pagination *****/
Pagination.NumItems = Gbl.AttEvents.Num; Pagination.NumItems = Gbl.AttEvents.Num;
@ -199,9 +204,8 @@ static void Att_ShowAllAttEvents (void)
/***** Start frame *****/ /***** Start frame *****/
Lay_StartRoundFrame ("100%",Txt_Events, Lay_StartRoundFrame ("100%",Txt_Events,
(Gbl.Usrs.Me.LoggedRole == Rol_TEACHER || ICanEdit ? Att_PutIconToCreateNewAttEvent :
Gbl.Usrs.Me.LoggedRole == Rol_SYS_ADM) ? Att_PutIconToCreateNewAttEvent : NULL);
NULL);
/***** Select whether show only my groups or all groups *****/ /***** Select whether show only my groups or all groups *****/
if (Gbl.CurrentCrs.Grps.NumGrps) if (Gbl.CurrentCrs.Grps.NumGrps)
@ -254,7 +258,8 @@ static void Att_ShowAllAttEvents (void)
Lay_ShowAlert (Lay_INFO,Txt_No_events); Lay_ShowAlert (Lay_INFO,Txt_No_events);
/***** Button to create a new attendance event *****/ /***** Button to create a new attendance event *****/
Att_PutButtonToCreateNewAttEvent (); if (ICanEdit)
Att_PutButtonToCreateNewAttEvent ();
/***** End frame *****/ /***** End frame *****/
Lay_EndRoundFrame (); Lay_EndRoundFrame ();
@ -2585,7 +2590,7 @@ void Usr_ReqListStdsAttendanceCrs (void)
void Usr_ListMyAttendanceCrs (void) void Usr_ListMyAttendanceCrs (void)
{ {
Usr_ListOrPrintMyAttendanceCrs (Att_NORMAL_VIEW); Usr_ListOrPrintMyAttendanceCrs (Att_NORMAL_VIEW_ONLY_ME);
} }
void Usr_PrintMyAttendanceCrs (void) void Usr_PrintMyAttendanceCrs (void)
@ -2619,10 +2624,6 @@ static void Usr_ListOrPrintMyAttendanceCrs (Att_TypeOfView_t TypeOfView)
/***** Get list of attendance events selected *****/ /***** Get list of attendance events selected *****/
Att_GetListSelectedAttCods (&Gbl.AttEvents.StrAttCodsSelected); Att_GetListSelectedAttCods (&Gbl.AttEvents.StrAttCodsSelected);
/***** Put link to print *****/
if (TypeOfView == Att_NORMAL_VIEW)
Att_PutFormToPrintMyList ();
/***** List events to select *****/ /***** List events to select *****/
Att_ListEventsToSelect (TypeOfView); Att_ListEventsToSelect (TypeOfView);
@ -2652,7 +2653,7 @@ static void Usr_ListOrPrintMyAttendanceCrs (Att_TypeOfView_t TypeOfView)
void Usr_ListStdsAttendanceCrs (void) void Usr_ListStdsAttendanceCrs (void)
{ {
Usr_ListOrPrintStdsAttendanceCrs (Att_NORMAL_VIEW); Usr_ListOrPrintStdsAttendanceCrs (Att_NORMAL_VIEW_STUDENTS);
} }
void Usr_PrintStdsAttendanceCrs (void) void Usr_PrintStdsAttendanceCrs (void)
@ -2698,10 +2699,6 @@ static void Usr_ListOrPrintStdsAttendanceCrs (Att_TypeOfView_t TypeOfView)
/***** Get list of attendance events selected *****/ /***** Get list of attendance events selected *****/
Att_GetListSelectedAttCods (&Gbl.AttEvents.StrAttCodsSelected); Att_GetListSelectedAttCods (&Gbl.AttEvents.StrAttCodsSelected);
/***** Put link to print *****/
if (TypeOfView == Att_NORMAL_VIEW)
Att_PutFormToPrintStdsList ();
/***** List events to select *****/ /***** List events to select *****/
Att_ListEventsToSelect (TypeOfView); Att_ListEventsToSelect (TypeOfView);
@ -2879,19 +2876,16 @@ static void Att_GetListSelectedAttCods (char **StrAttCodsSelected)
} }
/*****************************************************************************/ /*****************************************************************************/
/** Put a link (form) to print my assistance (as student) to several events **/ /****** Put icon to print my assistance (as student) to several events *******/
/*****************************************************************************/ /*****************************************************************************/
static void Att_PutFormToPrintMyList (void) static void Att_PutIconToPrintMyList (void)
{ {
extern const char *Txt_Print; extern const char *Txt_Print;
/***** Link to print view *****/ /***** Link to print view *****/
fprintf (Gbl.F.Out,"<div class=\"CONTEXT_MENU\">");
Lay_PutContextualLink (ActPrnLstMyAtt,Att_PutFormToPrintMyListParams, Lay_PutContextualLink (ActPrnLstMyAtt,Att_PutFormToPrintMyListParams,
"print64x64.png", "print64x64.png",Txt_Print,NULL);
Txt_Print,Txt_Print);
fprintf (Gbl.F.Out,"</div>");
} }
static void Att_PutFormToPrintMyListParams (void) static void Att_PutFormToPrintMyListParams (void)
@ -2903,22 +2897,19 @@ static void Att_PutFormToPrintMyListParams (void)
} }
/*****************************************************************************/ /*****************************************************************************/
/**** Put a link (form) to print assistance of students to several events ****/ /******** Put icon to print assistance of students to several events *********/
/*****************************************************************************/ /*****************************************************************************/
static void Att_PutFormToPrintStdsList (void) static void Att_PutIconToPrintStdsList (void)
{ {
extern const char *Txt_Print; extern const char *Txt_Print;
/***** Link to print view *****/ /***** Link to print view *****/
fprintf (Gbl.F.Out,"<div class=\"CONTEXT_MENU\">"); Lay_PutContextualLink (ActPrnLstStdAtt,Att_PutParamsToPrintStdsList,
Lay_PutContextualLink (ActPrnLstStdAtt,Att_PutFormToPrintStdsListParams, "print64x64.png",Txt_Print,NULL);
"print64x64.png",
Txt_Print,Txt_Print);
fprintf (Gbl.F.Out,"</div>");
} }
static void Att_PutFormToPrintStdsListParams (void) static void Att_PutParamsToPrintStdsList (void)
{ {
if (Gbl.AttEvents.ShowDetails) if (Gbl.AttEvents.ShowDetails)
Par_PutHiddenParamChar ("ShowDetails",'Y'); Par_PutHiddenParamChar ("ShowDetails",'Y');
@ -2967,7 +2958,8 @@ static void Att_ListEventsToSelect (Att_TypeOfView_t TypeOfView)
/***** Start form to update the attendance /***** Start form to update the attendance
depending on the events selected *****/ depending on the events selected *****/
if (TypeOfView == Att_NORMAL_VIEW) if (TypeOfView == Att_NORMAL_VIEW_ONLY_ME ||
TypeOfView == Att_NORMAL_VIEW_STUDENTS)
{ {
Act_FormStart (Gbl.Action.Act); Act_FormStart (Gbl.Action.Act);
Grp_PutParamsCodGrps (); Grp_PutParamsCodGrps ();
@ -3033,7 +3025,8 @@ static void Att_ListEventsToSelect (Att_TypeOfView_t TypeOfView)
} }
/***** Put button to refresh *****/ /***** Put button to refresh *****/
if (TypeOfView == Att_NORMAL_VIEW) if (TypeOfView == Att_NORMAL_VIEW_ONLY_ME ||
TypeOfView == Att_NORMAL_VIEW_STUDENTS)
{ {
fprintf (Gbl.F.Out,"<tr>" fprintf (Gbl.F.Out,"<tr>"
"<td colspan=\"4\" class=\"CENTER_MIDDLE\">"); "<td colspan=\"4\" class=\"CENTER_MIDDLE\">");
@ -3049,7 +3042,8 @@ static void Att_ListEventsToSelect (Att_TypeOfView_t TypeOfView)
Lay_EndRoundFrameTable (); Lay_EndRoundFrameTable ();
/***** End form *****/ /***** End form *****/
if (TypeOfView == Att_NORMAL_VIEW) if (TypeOfView == Att_NORMAL_VIEW_ONLY_ME ||
TypeOfView == Att_NORMAL_VIEW_STUDENTS)
Act_FormEnd (); Act_FormEnd ();
} }
@ -3057,7 +3051,9 @@ static void Att_ListEventsToSelect (Att_TypeOfView_t TypeOfView)
/*********** Show table with attendances for every student in list ***********/ /*********** Show table with attendances for every student in list ***********/
/*****************************************************************************/ /*****************************************************************************/
static void Att_ListStdsAttendanceTable (Att_TypeOfView_t TypeOfView,unsigned NumStdsInList,long *LstSelectedUsrCods) static void Att_ListStdsAttendanceTable (Att_TypeOfView_t TypeOfView,
unsigned NumStdsInList,
long *LstSelectedUsrCods)
{ {
extern const char *Txt_Attendance; extern const char *Txt_Attendance;
extern const char *Txt_Number_of_students; extern const char *Txt_Number_of_students;
@ -3070,7 +3066,11 @@ static void Att_ListStdsAttendanceTable (Att_TypeOfView_t TypeOfView,unsigned Nu
Usr_UsrDataConstructor (&UsrDat); Usr_UsrDataConstructor (&UsrDat);
/***** Start frame *****/ /***** Start frame *****/
Lay_StartRoundFrameTable (NULL,2,Txt_Attendance); Lay_StartRoundFrame (NULL,Txt_Attendance,
(TypeOfView == Att_NORMAL_VIEW_ONLY_ME) ? Att_PutIconToPrintMyList :
((TypeOfView == Att_NORMAL_VIEW_STUDENTS) ? Att_PutIconToPrintStdsList :
NULL));
fprintf (Gbl.F.Out,"<table class=\"FRAME_TABLE CELLS_PAD_2\">");
/***** Heading row *****/ /***** Heading row *****/
Att_WriteTableHeadSeveralAttEvents (); Att_WriteTableHeadSeveralAttEvents ();
@ -3118,19 +3118,17 @@ static void Att_ListStdsAttendanceTable (Att_TypeOfView_t TypeOfView,unsigned Nu
Total); Total);
} }
/***** End table *****/
fprintf (Gbl.F.Out,"</table>");
/***** Button to show more details *****/ /***** Button to show more details *****/
if (TypeOfView == Att_NORMAL_VIEW && !Gbl.AttEvents.ShowDetails) if (!Gbl.AttEvents.ShowDetails &&
{ (TypeOfView == Att_NORMAL_VIEW_ONLY_ME ||
fprintf (Gbl.F.Out,"<tr>" TypeOfView == Att_NORMAL_VIEW_STUDENTS))
"<td colspan=\"%u\">",
4 + Gbl.AttEvents.Num + 1);
Att_PutButtonToShowDetails (); Att_PutButtonToShowDetails ();
fprintf (Gbl.F.Out,"</td>"
"</tr>");
}
/***** End frame *****/ /***** End frame *****/
Lay_EndRoundFrameTable (); Lay_EndRoundFrame ();
/***** Free memory used for user's data *****/ /***** Free memory used for user's data *****/
Usr_UsrDataDestructor (&UsrDat); Usr_UsrDataDestructor (&UsrDat);

View File

@ -132,13 +132,14 @@
/****************************** Public constants *****************************/ /****************************** Public constants *****************************/
/*****************************************************************************/ /*****************************************************************************/
#define Log_PLATFORM_VERSION "SWAD 15.155 (2016-03-20)" #define Log_PLATFORM_VERSION "SWAD 15.155.1 (2016-03-20)"
#define CSS_FILE "swad15.152.css" #define CSS_FILE "swad15.152.css"
#define JS_FILE "swad15.131.3.js" #define JS_FILE "swad15.131.3.js"
// Number of lines (includes comments but not blank lines) has been got with the following command: // Number of lines (includes comments but not blank lines) has been got with the following command:
// nl swad*.c swad*.h css/swad*.css py/swad*.py js/swad*.js soap/swad*.h sql/swad*.sql | tail -1 // nl swad*.c swad*.h css/swad*.css py/swad*.py js/swad*.js soap/swad*.h sql/swad*.sql | tail -1
/* /*
Version 15.155.1: Mar 20, 2016 Icon to print list of attendance integrated in frame. (? lines)
Version 15.155: Mar 20, 2016 Icon to add new attendance event integrated in frame. Version 15.155: Mar 20, 2016 Icon to add new attendance event integrated in frame.
Changes in layout of attendance events. (196038 lines) Changes in layout of attendance events. (196038 lines)
Version 15.154: Mar 19, 2016 Icon to add new survey integrated in frame. Version 15.154: Mar 19, 2016 Icon to add new survey integrated in frame.

View File

@ -177,6 +177,7 @@ static void Svy_ListAllSurveys (struct SurveyQuestion *SvyQst)
tSvysOrderType Order; tSvysOrderType Order;
struct Pagination Pagination; struct Pagination Pagination;
unsigned NumSvy; unsigned NumSvy;
bool ICanEdit = Svy_CheckIfICanCreateSvy ();
/***** Get number of groups in current course *****/ /***** Get number of groups in current course *****/
if (!Gbl.CurrentCrs.Grps.NumGrps) if (!Gbl.CurrentCrs.Grps.NumGrps)
@ -197,8 +198,8 @@ static void Svy_ListAllSurveys (struct SurveyQuestion *SvyQst)
/***** Start frame *****/ /***** Start frame *****/
Lay_StartRoundFrame ("100%",Txt_Surveys, Lay_StartRoundFrame ("100%",Txt_Surveys,
Svy_CheckIfICanCreateSvy () ? Svy_PutIconToCreateNewSvy : ICanEdit ? Svy_PutIconToCreateNewSvy :
NULL); NULL);
/***** Select whether show only my groups or all groups *****/ /***** Select whether show only my groups or all groups *****/
if (Gbl.CurrentCrs.Grps.NumGrps) if (Gbl.CurrentCrs.Grps.NumGrps)
@ -251,7 +252,8 @@ static void Svy_ListAllSurveys (struct SurveyQuestion *SvyQst)
Lay_ShowAlert (Lay_INFO,Txt_No_surveys); Lay_ShowAlert (Lay_INFO,Txt_No_surveys);
/***** Button to create a new survey *****/ /***** Button to create a new survey *****/
Svy_PutButtonToCreateNewSvy (); if (ICanEdit)
Svy_PutButtonToCreateNewSvy ();
/***** End frame *****/ /***** End frame *****/
Lay_EndRoundFrame (); Lay_EndRoundFrame ();