diff --git a/html/foot.html b/html/foot.html index bb2ef2e46..f673a99c3 100644 --- a/html/foot.html +++ b/html/foot.html @@ -1,71 +1,61 @@
-

Información

+

Information

-

Documentación

+

Documentation

-

SWAD en la UGR

+

Social

-

Móvil

- -
-
-

Software libre

+

Free software

+
+
+

Installations

+
-

Instalaciones

+

Mobile

-
+
diff --git a/swad_changelog.h b/swad_changelog.h index 4826fdc14..e53fac2bd 100644 --- a/swad_changelog.h +++ b/swad_changelog.h @@ -28,6 +28,7 @@ /*********************************** TODO ************************************/ /*****************************************************************************/ +// TODO: Is it necessary FileType in table "files"? // TODO: When notifications are marked as seen, do it in a priori function // TODO: Use the library http://fukuchi.org/works/qrencode/index.html.en instead Google QR // TODO: [Ceferino Bustos Valdivia]: @@ -36,16 +37,78 @@ // Sería completa esta aplicación, si la asistencia se incluyera, automáticamente, en el apartado de evaluación de cada alumno. De esta forma podríamos ver sus trabajos y asistencias de forma personalizada. // TODO: OpenSWAD.org: ¿Qué debería tener una buena gestión de grupos? Es para tomar ideas ;) // José Raúl Canay @raulcanay: por ejemplo, que puedas sacar un listado exportable de en qué grupos está una persona de quienes están en un grupo. +/* Propuestas de Fidel Rodríguez López: +========================================================== +1 @@ TUTORIAS GRUPALES/INDIVIDUALES "VIRTUALES" +========================================================== + # Permite realizar grupos de chat, de uno o varios profesores con sus alumnos. + Útil para la resolución de ejercicios y dudas sencillas. + # Notificación, citas y aviso de tutorias virtuales. + # Permitir el envío de imágenes y fotos a través de la sala de Chat.s +========================================================== +2 @@ MEJORA DEL SISTEMA DE ANOTACIÓN DE ASISTENCIA +========================================================== + # Sistema dinámico que permita la anotación de asistencia de los alumnos a las + clases prácticas y que facilite la administración de los mismos (notificación al + profesor cuando todos los alumnos sean registrados, por ejemplo). Implementación + vía AJAX para ser más agradable. +========================================================== +3 @@ GENERADOR DE CALIFICACIONES EN PDF +========================================================== + # El servidor es capaz de generar un PDF para cualquier tarea (por ejemplo, con + las calificaciones de los alumnos para publicar en el tablón, con las convocatorias + de examen...). Para esto se puede usar alguna libreria libre tipo FPDF. + # Algunos profesores prefieren tener en papel anotadas las calificaciones. +========================================================== +4 @@ TUTORIAL INICIACIÓN +========================================================== + # Es importante indicar tanto al profesor, Administrador y alumno de qué es capaz + SWAD, para poder así explotar todas sus posibilidades. Un tutorial amigable e inicial + a base de Tooltips o imágenes, puede ser bastante útil. +========================================================== +5 @@ MEJORA DE LA INTERFAZ +========================================================== + # Botones, colores e iconos más modernos. Los iconos se pueden suprimir por iconos en + fuentes (como font-awesome, open-source). Los botones en CSS3 le darían un aire más + moderno y renovado (se podría basar en algún framework open-source). +========================================================== +6 @@ INCORPORACIÓN DE UN TABLÓN DE PROGRAMACIÓN DE ASIGNATURA +========================================================== + # Hacer pequeñas modificaciones para ver la zona de Actividades de otra forma. Por ejemplo, + una estructura de árbol (como la zona de Documentos) pero con las tareas programadas para la + semana proporcionaría una visión más global (como una "agenda") de lo que hay que realizar. + # El tablón incorporaría solo los títulos de los ejercicios. Por ejemplo: + + ==>Semana 16 Febr. -> 22 Marzo + ----------Prácticas + ----------------Entrega Práctica 2 [Fecha Límite] (Color verde o rojo, si ha pasado la fecha, como actualmente en Actividades) + ----------Teoría + ----------------Tema 2 + ----------Otros + ----------------Entregar Relación de Ejercicios + ==>Semana 23 Febr.-> 1 Marzo + ----------Prácticas + ----------Teoría + ----------------Examen Tema 2 + ----------Otros + ....Etc..... + +========================================================== +7 @@ INSTALACIÓN DE EDITOR DE TEXTO ENRIQUECIDO +========================================================== + # Completar el proyecto que empezó el antiguo alumno. + */ /*****************************************************************************/ /****************************** Public constants *****************************/ /*****************************************************************************/ -#define Log_PLATFORM_VERSION "SWAD 14.74.11 (2015/02/12)" +#define Log_PLATFORM_VERSION "SWAD 14.74.12 (2015/02/23)" // 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 | tail -1 /* + Version 14.74.12: Feb 23, 2015 Fixed bug in file browser, reported by Germán Luzón González and Javier Fernández Baldomero. (178119 lines) Version 14.74.11: Feb 10, 2015 Changes in swad.js. (178060 lines) Version 14.74.10: Feb 10, 2015 Removed meta tag. (178060 lines) Version 14.74.9: Feb 10, 2015 Description/keywords meta tags and canonical URL added to head. (178060 lines) diff --git a/swad_config.h b/swad_config.h index c0e1673e2..708bd81e4 100644 --- a/swad_config.h +++ b/swad_config.h @@ -28,8 +28,8 @@ /** Uncomment one of the following installations of SWAD or create your own **/ /*****************************************************************************/ -//#define LOCALHOST_UBUNTU // Comment this line if not applicable -#define OPENSWAD_ORG // Comment this line if not applicable +#define LOCALHOST_UBUNTU // Comment this line if not applicable +//#define OPENSWAD_ORG // Comment this line if not applicable //#define SWAD_UGR_ES // Comment this line if not applicable //#define WWW_CEVUNA_UNA_PY // Comment this line if not applicable @@ -112,7 +112,7 @@ #define Cfg_AUTOMATIC_EMAIL_SMTP_PORT "465" // SMTP port for sending automatic e-mails #define Cfg_AUTOMATIC_EMAIL_FROM "acanas@openswad.org" // E-mail address from where automatic e-mails will be sent #define Cfg_DATABASE_HOST "localhost" // Database host -#define Cfg_DEFAULT_LANGUAGE_FOR_NEW_USERS Txt_LANGUAGE_EN // Default language for new users +#define Cfg_DEFAULT_LANGUAGE_FOR_NEW_USERS Txt_LANGUAGE_ES // Default language for new users #define Cfg_LOG_START_YEAR 2012 // Year when the log started in the database // Footer of page with info about the institution where this platform is installed @@ -498,7 +498,6 @@ #define Cfg_MIN_TIME_TO_RECOMPUTE_AVG_PHOTO ((time_t)( 12UL*60UL*60UL)) // After these seconds, users can recompute the average photos of a degree - /*****************************************************************************/ /***************************** Public prototypes *****************************/ /*****************************************************************************/ diff --git a/swad_file_browser.c b/swad_file_browser.c index 446fbe6a0..fe0330206 100644 --- a/swad_file_browser.c +++ b/swad_file_browser.c @@ -4488,7 +4488,7 @@ static void Brw_GetAndUpdateDateLastAccFileBrowser (void) Gbl.Usrs.Me.UsrDat.UsrCod, (unsigned) Brw_FileBrowserForDB_file_browser_last[Gbl.FileBrowser.Type], Cod); - DB_QueryUPDATE (Query,"can not update date of last access to a file browser"); + DB_QueryREPLACE (Query,"can not update date of last access to a file browser"); } /*****************************************************************************/ @@ -4739,11 +4739,11 @@ static bool Brw_WriteRowFileBrowser (unsigned Level, /***** Get file metadata *****/ Brw_GetFileMetadataByPath (&FileMetadata); + Brw_GetFileTypeSizeAndDate (&FileMetadata); if (FileMetadata.FilCod <= 0) // No entry for this file in database table of files /* Add entry to the table of files/folders */ FileMetadata.FilCod = Brw_AddPathToDB (-1L,FileMetadata.FileType, Gbl.FileBrowser.Priv.FullPathInTree,false,Brw_LICENSE_DEFAULT); - Brw_GetFileSizeAndDate (&FileMetadata); /***** Is this row public or private? *****/ if (SeeDocsZone || AdminDocsZone || CommonZone) @@ -8730,7 +8730,7 @@ void Brw_ShowFileMetadata (void) /***** Get file metadata *****/ Brw_GetFileMetadataByPath (&FileMetadata); - Found = Brw_GetFileSizeAndDate (&FileMetadata); + Found = Brw_GetFileTypeSizeAndDate (&FileMetadata); if (Found) { @@ -9150,7 +9150,7 @@ void Brw_DownloadFile (void) /***** Get file metadata *****/ Brw_GetFileMetadataByPath (&FileMetadata); - Found = Brw_GetFileSizeAndDate (&FileMetadata); + Found = Brw_GetFileTypeSizeAndDate (&FileMetadata); if (Found) { @@ -9506,7 +9506,7 @@ void Brw_ChgFileMetadata (void) /***** Get file metadata from database *****/ Brw_GetFileMetadataByPath (&FileMetadata); - Brw_GetFileSizeAndDate (&FileMetadata); + Brw_GetFileTypeSizeAndDate (&FileMetadata); /***** Check if I can change file metadata *****/ if (Brw_CheckIfICanEditFileMetadata (FileMetadata.PublisherUsrCod)) @@ -9904,7 +9904,7 @@ void Brw_GetFileMetadataByCod (struct FileMetadata *FileMetadata) /*****************************************************************************/ // Return true if file exists -bool Brw_GetFileSizeAndDate (struct FileMetadata *FileMetadata) +bool Brw_GetFileTypeSizeAndDate (struct FileMetadata *FileMetadata) { char Path[PATH_MAX+1]; struct stat FileStatus; @@ -10210,9 +10210,7 @@ long Brw_GetCodForFiles (void) case Brw_ADMI_DOCUM_CRS: case Brw_ADMI_SHARE_CRS: case Brw_ADMI_ASSIG_USR: - case Brw_ADMI_ASSIG_CRS: case Brw_ADMI_WORKS_USR: - case Brw_ADMI_WORKS_CRS: case Brw_ADMI_MARKS_CRS: return Gbl.CurrentCrs.Crs.CrsCod; case Brw_ADMI_DOCUM_GRP: @@ -10232,8 +10230,8 @@ static long Brw_GetZoneUsrCodForFiles (void) { switch (Brw_FileBrowserForDB_files[Gbl.FileBrowser.Type]) { - case Brw_ADMI_ASSIG_CRS: - case Brw_ADMI_WORKS_CRS: + case Brw_ADMI_ASSIG_USR: + case Brw_ADMI_WORKS_USR: return Gbl.Usrs.Other.UsrDat.UsrCod; case Brw_ADMI_BRIEF_USR: return Gbl.Usrs.Me.UsrDat.UsrCod; diff --git a/swad_file_browser.h b/swad_file_browser.h index 93a07eb8b..2a213850f 100644 --- a/swad_file_browser.h +++ b/swad_file_browser.h @@ -183,7 +183,7 @@ void Brw_ChgFileMetadata (void); long Brw_GetFilCodByPath (const char *Path); void Brw_GetFileMetadataByPath (struct FileMetadata *FileMetadata); void Brw_GetFileMetadataByCod (struct FileMetadata *FileMetadata); -bool Brw_GetFileSizeAndDate (struct FileMetadata *FileMetadata); +bool Brw_GetFileTypeSizeAndDate (struct FileMetadata *FileMetadata); void Brw_GetAndUpdateFileViews (struct FileMetadata *FileMetadata); void Brw_UpdateMyFileViews (long FilCod); diff --git a/swad_main.c b/swad_main.c index 4c9a4d010..f929cb4b8 100644 --- a/swad_main.c +++ b/swad_main.c @@ -71,7 +71,7 @@ int main (int argc, char *argv[]) { extern const char *Txt_You_dont_have_permission_to_perform_this_action; - +/* fprintf (stdout,"Content-type: text/html; charset=windows-1252\r\n" "Status: 503 Service Temporarily Unavailable\r\n\r\n" "" @@ -84,7 +84,7 @@ int main (int argc, char *argv[]) Cfg_PLATFORM_FULL_NAME, Cfg_PLATFORM_SHORT_NAME); exit (0); - +*/ if (argc > 1) { fprintf (stdout,"Call %s without parameters",argv[0]); diff --git a/swad_web_service.c b/swad_web_service.c index 81657a57b..d2a1140ad 100644 --- a/swad_web_service.c +++ b/swad_web_service.c @@ -3766,7 +3766,7 @@ static bool Svc_WriteRowFileBrowser (unsigned Level,Brw_FileType_t FileType,cons { /* Get file metadata */ Brw_GetFileMetadataByPath (&FileMetadata); - Brw_GetFileSizeAndDate (&FileMetadata); + Brw_GetFileTypeSizeAndDate (&FileMetadata); if (FileMetadata.FilCod <= 0) // No entry for this file in database table of files /* Add entry to the table of files/folders */ @@ -3926,7 +3926,7 @@ int swad__getFile (struct soap *soap, Brw_InitializeFileBrowser (); /***** Get file size and date *****/ - Brw_GetFileSizeAndDate (&FileMetadata); + Brw_GetFileTypeSizeAndDate (&FileMetadata); /***** Update number of views *****/ Brw_GetAndUpdateFileViews (&FileMetadata);