From 0beb9a112bb6446e50066a1940bcc92d3db50634 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Antonio=20Ca=C3=B1as=20Vargas?= Date: Thu, 8 Sep 2016 18:04:30 +0200 Subject: [PATCH] Version 15.249 --- Makefile | 2 +- swad_action.c | 4 +++ swad_action.h | 54 ++++++++++++++++++----------------- swad_changelog.h | 4 ++- swad_menu.c | 1 + swad_report.c | 71 ++++++++++++++++++++++++++++++++++++++++++++++ swad_report.h | 48 +++++++++++++++++++++++++++++++ swad_text.c | 43 +++++++++++++++++++++++++++- swad_web_service.c | 2 +- 9 files changed, 199 insertions(+), 30 deletions(-) create mode 100644 swad_report.c create mode 100644 swad_report.h diff --git a/Makefile b/Makefile index a14224a24..a3a0101bc 100644 --- a/Makefile +++ b/Makefile @@ -47,7 +47,7 @@ OBJS = swad_account.o swad_action.o swad_agenda.o swad_announcement.o \ swad_place.o swad_plugin.o swad_preference.o swad_profile.o \ swad_privacy.o \ swad_QR.o \ - swad_record.o swad_role.o swad_RSS.o \ + swad_record.o swad_report.o swad_role.o swad_RSS.o \ swad_scope.o swad_search.o swad_session.o swad_setup.o swad_social.o \ swad_statistic.o swad_string.o swad_survey.o swad_syllabus.o \ swad_tab.o swad_test.o swad_test_import.o swad_theme.o swad_timetable.o \ diff --git a/swad_action.c b/swad_action.c index b828d375e..ee3842951 100644 --- a/swad_action.c +++ b/swad_action.c @@ -62,6 +62,7 @@ #include "swad_preference.h" #include "swad_profile.h" #include "swad_QR.h" +#include "swad_report.h" #include "swad_search.h" #include "swad_setup.h" #include "swad_social.h" @@ -1284,6 +1285,7 @@ Statistics: 1100. ActSeePhoDeg Show a class photo with the average photos of the students of each degree 1101. ActReqStaCrs Request statistics of courses 1102. ActReqAccGbl Request query of clicks to the complete platform + NEW. ActSeeMyUsgRep Show my usage report 1103. ActSeeOneSvy Show one survey 1104. ActAnsSvy Answer a survey @@ -2705,6 +2707,7 @@ struct Act_Actions Act_Actions[Act_NUM_ACTIONS] = /* ActSeePhoDeg */{ 447, 2,TabSta,ActSeePhoDeg ,0x1FF,0x1FF,0x1FF,Act_CONTENT_NORM,Act_MAIN_WINDOW,NULL ,Pho_ShowPhotoDegree ,"classphoto64x64.gif" }, /* ActReqStaCrs */{ 767, 3,TabSta,ActReqStaCrs ,0x1FF,0x1FF,0x1FF,Act_CONTENT_NORM,Act_MAIN_WINDOW,NULL ,Ind_ReqIndicatorsCourses ,"tablestats64x64.gif" }, /* ActReqAccGbl */{ 591, 4,TabSta,ActReqAccGbl ,0x1FE,0x1FE,0x1FE,Act_CONTENT_NORM,Act_MAIN_WINDOW,Sta_SetIniEndDates ,Sta_AskShowGblHits ,"stats64x64.gif" }, + /* ActSeeMyUsgRep */{1582, 5,TabSta,ActSeeMyUsgRep ,0x100,0x100,0x100,Act_CONTENT_NORM,Act_MAIN_WINDOW,NULL ,Rep_ShowMyUsageReport ,"report64x64.png" }, // Actions not in menu: /* ActSeeOneSvy */{ 982,-1,TabSta,ActSeeAllSvy ,0x1F8,0x1F8,0x1F8,Act_CONTENT_NORM,Act_MAIN_WINDOW,NULL ,Svy_SeeOneSurvey ,NULL}, @@ -4428,6 +4431,7 @@ Act_Action_t Act_FromActCodToAction[1+Act_MAX_ACTION_COD] = // Do not reuse uniq ActLstSimUsr, // #1579 ActRemDupUsr, // #1580 ActSeeMyAgd, // #1581 + ActSeeMyUsgRep, // #1582 }; /*****************************************************************************/ diff --git a/swad_action.h b/swad_action.h index 790844937..c21b00f76 100644 --- a/swad_action.h +++ b/swad_action.h @@ -72,9 +72,9 @@ typedef enum typedef int Act_Action_t; // Must be a signed type, because -1 is used to indicate obsolete action -#define Act_NUM_ACTIONS (1+9+51+15+90+70+67+246+186+156+172+36+28+85) +#define Act_NUM_ACTIONS (1+9+51+15+90+70+67+246+186+156+172+36+29+85) -#define Act_MAX_ACTION_COD 1581 +#define Act_MAX_ACTION_COD 1582 #define Act_MAX_OPTIONS_IN_MENU_PER_TAB 20 @@ -1335,31 +1335,33 @@ typedef int Act_Action_t; // Must be a signed type, because -1 is used to indica #define ActSeePhoDeg (ActUnbUsrLst+ 3) #define ActReqStaCrs (ActUnbUsrLst+ 4) #define ActReqAccGbl (ActUnbUsrLst+ 5) -// Secondary actions -#define ActSeeOneSvy (ActUnbUsrLst+ 6) -#define ActAnsSvy (ActUnbUsrLst+ 7) -#define ActFrmNewSvy (ActUnbUsrLst+ 8) -#define ActEdiOneSvy (ActUnbUsrLst+ 9) -#define ActNewSvy (ActUnbUsrLst+ 10) -#define ActChgSvy (ActUnbUsrLst+ 11) -#define ActReqRemSvy (ActUnbUsrLst+ 12) -#define ActRemSvy (ActUnbUsrLst+ 13) -#define ActReqRstSvy (ActUnbUsrLst+ 14) -#define ActRstSvy (ActUnbUsrLst+ 15) -#define ActHidSvy (ActUnbUsrLst+ 16) -#define ActShoSvy (ActUnbUsrLst+ 17) -#define ActEdiOneSvyQst (ActUnbUsrLst+ 18) -#define ActRcvSvyQst (ActUnbUsrLst+ 19) -#define ActReqRemSvyQst (ActUnbUsrLst+ 20) -#define ActRemSvyQst (ActUnbUsrLst+ 21) +#define ActSeeMyUsgRep (ActUnbUsrLst+ 6) -#define ActSeeUseGbl (ActUnbUsrLst+ 22) -#define ActPrnPhoDeg (ActUnbUsrLst+ 23) -#define ActCalPhoDeg (ActUnbUsrLst+ 24) -#define ActSeeAccGbl (ActUnbUsrLst+ 25) -#define ActReqAccCrs (ActUnbUsrLst+ 26) -#define ActSeeAccCrs (ActUnbUsrLst+ 27) -#define ActSeeAllStaCrs (ActUnbUsrLst+ 28) +// Secondary actions +#define ActSeeOneSvy (ActUnbUsrLst+ 7) +#define ActAnsSvy (ActUnbUsrLst+ 8) +#define ActFrmNewSvy (ActUnbUsrLst+ 9) +#define ActEdiOneSvy (ActUnbUsrLst+ 10) +#define ActNewSvy (ActUnbUsrLst+ 11) +#define ActChgSvy (ActUnbUsrLst+ 12) +#define ActReqRemSvy (ActUnbUsrLst+ 13) +#define ActRemSvy (ActUnbUsrLst+ 14) +#define ActReqRstSvy (ActUnbUsrLst+ 15) +#define ActRstSvy (ActUnbUsrLst+ 16) +#define ActHidSvy (ActUnbUsrLst+ 17) +#define ActShoSvy (ActUnbUsrLst+ 18) +#define ActEdiOneSvyQst (ActUnbUsrLst+ 19) +#define ActRcvSvyQst (ActUnbUsrLst+ 20) +#define ActReqRemSvyQst (ActUnbUsrLst+ 21) +#define ActRemSvyQst (ActUnbUsrLst+ 22) + +#define ActSeeUseGbl (ActUnbUsrLst+ 23) +#define ActPrnPhoDeg (ActUnbUsrLst+ 24) +#define ActCalPhoDeg (ActUnbUsrLst+ 25) +#define ActSeeAccGbl (ActUnbUsrLst+ 26) +#define ActReqAccCrs (ActUnbUsrLst+ 27) +#define ActSeeAccCrs (ActUnbUsrLst+ 28) +#define ActSeeAllStaCrs (ActUnbUsrLst+ 29) /*****************************************************************************/ /******************************** Profile tab ********************************/ diff --git a/swad_changelog.h b/swad_changelog.h index a5b104bfd..ff9d1f225 100644 --- a/swad_changelog.h +++ b/swad_changelog.h @@ -135,13 +135,15 @@ /****************************** Public constants *****************************/ /*****************************************************************************/ -#define Log_PLATFORM_VERSION "SWAD 15.248.2 (2016-09-07)" +#define Log_PLATFORM_VERSION "SWAD 15.249 (2016-09-08)" #define CSS_FILE "swad15.229.css" #define JS_FILE "swad15.238.1.js" // 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 /* + Version 15.249: Sep 08, 2016 New option Statistics > Report. Not implemented. (204341 lines) + Version 15.248.3: Sep 07, 2016 Fixed bug related to attendance events in web service, reported by Rubén Martín Hidalgo. (? lines) Version 15.248.2: Sep 07, 2016 Code refactoring related to boolean fields in database. (204201 lines) Version 15.248.1: Sep 07, 2016 Fixed bugs related to hidden attendance events, reported by Rubén Martín Hidalgo. (204200 lines) Version 15.248: Sep 06, 2016 New web service function removeAttendanceEvent. (204186 lines) diff --git a/swad_menu.c b/swad_menu.c index 03a0c6717..55fad97d6 100644 --- a/swad_menu.c +++ b/swad_menu.c @@ -177,6 +177,7 @@ const Act_Action_t Mnu_MenuActions[Tab_NUM_TABS][Act_MAX_OPTIONS_IN_MENU_PER_TAB ActSeePhoDeg, ActReqStaCrs, ActReqAccGbl, + ActSeeMyUsgRep, }, // TabPrf ********** { diff --git a/swad_report.c b/swad_report.c new file mode 100644 index 000000000..b4568ea2f --- /dev/null +++ b/swad_report.c @@ -0,0 +1,71 @@ +// swad_report.c: report on my use of the platform + +/* + SWAD (Shared Workspace At a Distance), + is a web platform developed at the University of Granada (Spain), + and used to support university teaching. + + This file is part of SWAD core. + Copyright (C) 1999-2016 Antonio Cañas Vargas + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU Affero General 3 License as + published by the Free Software Foundation, either version 3 of the + License, or (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU Affero General Public License for more details. + + You should have received a copy of the GNU Affero General Public License + along with this program. If not, see . +*/ +/*****************************************************************************/ +/*********************************** Headers *********************************/ +/*****************************************************************************/ + +// #include // For boolean type +// #include // For sprintf +// #include // For string functions + +// #include "swad_database.h" +// #include "swad_follow.h" +// #include "swad_global.h" +// #include "swad_notification.h" +// #include "swad_profile.h" +// #include "swad_user.h" + +/*****************************************************************************/ +/****************************** Public constants *****************************/ +/*****************************************************************************/ + +/*****************************************************************************/ +/***************************** Private constants *****************************/ +/*****************************************************************************/ + +/*****************************************************************************/ +/****************************** Internal types *******************************/ +/*****************************************************************************/ + +/*****************************************************************************/ +/************** External global variables from others modules ****************/ +/*****************************************************************************/ + +// extern struct Globals Gbl; + +/*****************************************************************************/ +/************************* Internal global variables *************************/ +/*****************************************************************************/ + +/*****************************************************************************/ +/***************************** Private prototypes ****************************/ +/*****************************************************************************/ + +/*****************************************************************************/ +/********* Show my usage report (report on my use of the platform) ***********/ +/*****************************************************************************/ + +void Rep_ShowMyUsageReport (void) + { + } diff --git a/swad_report.h b/swad_report.h new file mode 100644 index 000000000..7cbf2e78f --- /dev/null +++ b/swad_report.h @@ -0,0 +1,48 @@ +// swad_report.h: report on my use of the platform + +#ifndef _SWAD_REP +#define _SWAD_REP +/* + SWAD (Shared Workspace At a Distance in Spanish), + is a web platform developed at the University of Granada (Spain), + and used to support university teaching. + + This file is part of SWAD core. + Copyright (C) 1999-2016 Antonio Cañas Vargas + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU Affero General Public License as + published by the Free Software Foundation, either version 3 of the + License, or (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU Affero General Public License for more details. + + You should have received a copy of the GNU Affero General Public License + along with this program. If not, see . +*/ +/*****************************************************************************/ +/********************************** Headers **********************************/ +/*****************************************************************************/ + +// #include // For malloc + +// #include "swad_user.h" + +/*****************************************************************************/ +/****************************** Public constants *****************************/ +/*****************************************************************************/ + +/*****************************************************************************/ +/******************************** Public types *******************************/ +/*****************************************************************************/ + +/*****************************************************************************/ +/****************************** Public prototypes ****************************/ +/*****************************************************************************/ + +void Rep_ShowMyUsageReport (void); + +#endif diff --git a/swad_text.c b/swad_text.c index dc42ec7fd..3ff400c3b 100644 --- a/swad_text.c +++ b/swad_text.c @@ -18947,7 +18947,27 @@ const char *Txt_MENU_TITLE[Tab_NUM_TABS][Act_MAX_OPTIONS_IN_MENU_PER_TAB] = "Visitas" #endif , - NULL, + // ActSeeMyUsgRep +#if L==1 + "Informe" +#elif L==2 + "Nutzungsbericht" +#elif L==3 + "Report" +#elif L==4 + "Informe" +#elif L==5 + "Rapport" +#elif L==6 + "Informe" // Okoteve traducción +#elif L==7 + "Rapporto" +#elif L==8 + "Raport" +#elif L==9 + "Relatório" +#endif + , NULL, NULL, NULL, @@ -20980,6 +21000,27 @@ const char *Txt_MENU_SUBTITLE[Tab_NUM_TABS][Act_MAX_OPTIONS_IN_MENU_PER_TAB] = "Statystyki dostęp do platformy" #elif L==9 "Estatísticas de acesso à plataforma" +#endif + , + // ActSeeMyUsgRep +#if L==1 + "Informe sobre el meu ús de la plataforma" +#elif L==2 + "Bericht über meine Nutzung der Plattform" +#elif L==3 + "Report on my use of the platform" +#elif L==4 + "Informe sobre mi uso de la plataforma" +#elif L==5 + "Rapport sur mon utilisation de la plate-forme" +#elif L==6 + "Informe sobre mi uso de la plataforma" // Okoteve traducción +#elif L==7 + "Relazione sulla mia utilizzo della piattaforma" +#elif L==8 + "Raport o moim korzystania z platformy" +#elif L==9 + "Relatório sobre o meu uso da plataforma" #endif , NULL, diff --git a/swad_web_service.c b/swad_web_service.c index b60814da6..3c9e9e559 100644 --- a/swad_web_service.c +++ b/swad_web_service.c @@ -2116,7 +2116,7 @@ int swad__getAttendanceEvents (struct soap *soap, "Requester must be a teacher"); /***** Query list of attendance events *****/ - sprintf (Query,"SELECT AttCod,UsrCod," + sprintf (Query,"SELECT AttCod,Hidden,UsrCod," "UNIX_TIMESTAMP(StartTime) AS ST," "UNIX_TIMESTAMP(EndTime) AS ET," "CommentTchVisible,Title,Txt"