mirror of https://github.com/acanas/swad-core.git
Version 16.7.9
This commit is contained in:
parent
5c19955549
commit
ad1c7dbc94
|
@ -143,13 +143,14 @@
|
||||||
/****************************** Public constants *****************************/
|
/****************************** Public constants *****************************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
#define Log_PLATFORM_VERSION "SWAD 16.7.8 (2016-10-03)"
|
#define Log_PLATFORM_VERSION "SWAD 16.7.9 (2016-10-03)"
|
||||||
#define CSS_FILE "swad15.229.css"
|
#define CSS_FILE "swad15.229.css"
|
||||||
#define JS_FILE "swad15.238.1.js"
|
#define JS_FILE "swad15.238.1.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 16.7.9: Oct 03, 2016 Code refactoring in user's usage report. (? lines)
|
||||||
Version 16.7.8: Oct 03, 2016 Code refactoring in user's usage report. (205632 lines)
|
Version 16.7.8: Oct 03, 2016 Code refactoring in user's usage report. (205632 lines)
|
||||||
Version 16.7.7: Oct 03, 2016 Code refactoring in user's usage report. (205609 lines)
|
Version 16.7.7: Oct 03, 2016 Code refactoring in user's usage report. (205609 lines)
|
||||||
Version 16.7.6: Oct 03, 2016 Code refactoring in user's usage report. (205591 lines)
|
Version 16.7.6: Oct 03, 2016 Code refactoring in user's usage report. (205591 lines)
|
||||||
|
|
|
@ -90,6 +90,9 @@ static void Rep_WriteSectionCurrentCourses (struct UsrFigures *UsrFigures,
|
||||||
struct tm *tm_FirstClickTime,
|
struct tm *tm_FirstClickTime,
|
||||||
const char *StrCurrentDate,
|
const char *StrCurrentDate,
|
||||||
unsigned long MaxHitsPerYear);
|
unsigned long MaxHitsPerYear);
|
||||||
|
static void Rep_WriteSectionHistoricCourses (struct UsrFigures *UsrFigures,
|
||||||
|
struct tm *tm_FirstClickTime,
|
||||||
|
unsigned long MaxHitsPerYear);
|
||||||
|
|
||||||
static unsigned long Rep_GetMaxHitsPerYear (time_t FirstClickTimeUTC);
|
static unsigned long Rep_GetMaxHitsPerYear (time_t FirstClickTimeUTC);
|
||||||
static void Rep_GetAndWriteCurrentCrssOfAUsr (const struct UsrData *UsrDat,Rol_Role_t Role,
|
static void Rep_GetAndWriteCurrentCrssOfAUsr (const struct UsrData *UsrDat,Rol_Role_t Role,
|
||||||
|
@ -129,8 +132,6 @@ void Rep_PrintMyUsageReport (void)
|
||||||
static void Rep_ShowOrPrintMyUsageReport (Rep_SeeOrPrint_t SeeOrPrint)
|
static void Rep_ShowOrPrintMyUsageReport (Rep_SeeOrPrint_t SeeOrPrint)
|
||||||
{
|
{
|
||||||
extern const char *Txt_Report;
|
extern const char *Txt_Report;
|
||||||
extern const char *Txt_Courses;
|
|
||||||
extern const char *Txt_historical_log;
|
|
||||||
struct UsrFigures UsrFigures;
|
struct UsrFigures UsrFigures;
|
||||||
time_t CurrentTime;
|
time_t CurrentTime;
|
||||||
struct tm tm_CurrentTime;
|
struct tm tm_CurrentTime;
|
||||||
|
@ -139,7 +140,6 @@ static void Rep_ShowOrPrintMyUsageReport (Rep_SeeOrPrint_t SeeOrPrint)
|
||||||
// 1234567890
|
// 1234567890
|
||||||
char StrCurrentTime[8+1]; // Example: 19:03:49
|
char StrCurrentTime[8+1]; // Example: 19:03:49
|
||||||
// 12345678
|
// 12345678
|
||||||
Rol_Role_t Role;
|
|
||||||
unsigned long MaxHitsPerYear;
|
unsigned long MaxHitsPerYear;
|
||||||
|
|
||||||
/***** Get current date-time *****/
|
/***** Get current date-time *****/
|
||||||
|
@ -192,20 +192,8 @@ static void Rep_ShowOrPrintMyUsageReport (Rep_SeeOrPrint_t SeeOrPrint)
|
||||||
StrCurrentDate,MaxHitsPerYear);
|
StrCurrentDate,MaxHitsPerYear);
|
||||||
|
|
||||||
/***** Historic courses *****/
|
/***** Historic courses *****/
|
||||||
fprintf (Gbl.F.Out,"<h3>%s (%s)</h3>"
|
Rep_WriteSectionHistoricCourses (&UsrFigures,&tm_FirstClickTime,
|
||||||
"<ul>",
|
MaxHitsPerYear);
|
||||||
Txt_Courses,Txt_historical_log);
|
|
||||||
|
|
||||||
/* Number of courses in which the user clicked as student/teacher */
|
|
||||||
for (Role = Rol_STUDENT;
|
|
||||||
Role <= Rol_TEACHER;
|
|
||||||
Role++)
|
|
||||||
/* List my courses with this role */
|
|
||||||
Rep_GetAndWriteHistoricCrssOfAUsr (&Gbl.Usrs.Me.UsrDat,Role,
|
|
||||||
UsrFigures.FirstClickTimeUTC,&tm_FirstClickTime,
|
|
||||||
MaxHitsPerYear);
|
|
||||||
|
|
||||||
fprintf (Gbl.F.Out,"</ul>");
|
|
||||||
|
|
||||||
/***** End frame *****/
|
/***** End frame *****/
|
||||||
fprintf (Gbl.F.Out,"</div>\n");
|
fprintf (Gbl.F.Out,"</div>\n");
|
||||||
|
@ -555,6 +543,38 @@ static void Rep_WriteSectionCurrentCourses (struct UsrFigures *UsrFigures,
|
||||||
"</section>\n");
|
"</section>\n");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/*****************************************************************************/
|
||||||
|
/***** Write section for user's historic courses in user's usage report ******/
|
||||||
|
/*****************************************************************************/
|
||||||
|
|
||||||
|
static void Rep_WriteSectionHistoricCourses (struct UsrFigures *UsrFigures,
|
||||||
|
struct tm *tm_FirstClickTime,
|
||||||
|
unsigned long MaxHitsPerYear)
|
||||||
|
{
|
||||||
|
extern const char *Txt_Courses;
|
||||||
|
extern const char *Txt_historical_log;
|
||||||
|
Rol_Role_t Role;
|
||||||
|
|
||||||
|
/***** Start of section *****/
|
||||||
|
fprintf (Gbl.F.Out,"<section>"
|
||||||
|
"<h3>%s (%s)</h3>"
|
||||||
|
"<ul>",
|
||||||
|
Txt_Courses,Txt_historical_log);
|
||||||
|
|
||||||
|
/***** Number of courses in which the user clicked as student/teacher *****/
|
||||||
|
for (Role = Rol_STUDENT;
|
||||||
|
Role <= Rol_TEACHER;
|
||||||
|
Role++)
|
||||||
|
/* List my courses with this role */
|
||||||
|
Rep_GetAndWriteHistoricCrssOfAUsr (&Gbl.Usrs.Me.UsrDat,Role,
|
||||||
|
UsrFigures->FirstClickTimeUTC,tm_FirstClickTime,
|
||||||
|
MaxHitsPerYear);
|
||||||
|
|
||||||
|
/***** End of section *****/
|
||||||
|
fprintf (Gbl.F.Out,"</ul>"
|
||||||
|
"</section>\n");
|
||||||
|
}
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
/************ Get the maximum number of hits per course-year-role ************/
|
/************ Get the maximum number of hits per course-year-role ************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
Loading…
Reference in New Issue