diff --git a/html/ws/index.html b/html/api/index.html similarity index 98% rename from html/ws/index.html rename to html/api/index.html index bb470df6..53fee9f7 100644 --- a/html/ws/index.html +++ b/html/api/index.html @@ -2,7 +2,7 @@ - SWAD: Plugins and web service + SWAD API + + + + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ Sistema Web de Apoyo a la Docencia
sistema web de apoyo a la docencia
+
+

Estadísticas de uso en la UGR

+ CC BY-SA + Antonio Cañas Vargas, 1999-2018 +
+ + What goes up must come down.
+ [...]
+ If all things must fall,
+ Why build a miracle at all?
+ If all things must pass,
+ Even a miracle won't last.
+ [...]
+ How can you be so sure
+ That the wonders you've made in your life
+ Will be seen
+ By the millions who'll follow to visit the site
+ Of your dream?
+
+ What goes up, The Alan Parsons Project +
+ +
+ +

Historia y utilización de SWAD en la UGR

+ +
+ +

+ En septiembre de 1999 inició su andadura una versión muy sencilla de la actual plataforma. + Durante los cursos 1999-2001, 2001-2002 y 2002-2003 se utilizó + como tablón docente de las dos asignaturas + que impartía Antonio Cañas Vargas + en la titulación de Ingeniero en Informática. +

+ +

+ En el curso 2003-2004 -desde el 17 octubre de 2003 hasta el 24 de noviembre de 2004-, + SWAD aumentó su funcionalidad y difusión en el marco del Proyecto de Innovación Docente + "Plataforma SWAD (Sistema Web de Apoyo a la Docencia)", + que recibió una Mención honorífica a la Innovación docente 2005 + en la Universidad de Granada. + Dentro de ese primer proyecto, + SWAD se ofreció gratuitamente a la comunidad universitaria granadina + y comenzó a ser adoptada en un pequeño número de asignaturas + impartidas por el Departamento de Arquitectura y Tecnología de Computadores. + en las distintas titulaciones de las Ingenierías en Informática y en Electrónica. +

+ +

+ En los cursos 2004-2005 y 2005-2006 -desde el 31 de enero de 2005 hasta el 14 de julio de 2006-, + se llevó a cabo un segundo Proyecto de Innovación Docente, + titulado "Ampliación de la plataforma de teleformación SWAD", + que permitió ampliar su funcionalidad y extender considerablemente + su uso en la Universidad de Granada, + llegando a 500 profesores y más de 25000 estudiantes en más de 450 asignaturas + de casi todas las titulaciones de la Universidad de Granada + y de algunos programas de doctorado, másteres y cursos de formación continua. +

+ +

+ En los cursos 2006-2007 y 2007-2008 -desde el 6 de octubre de 2006 hasta el 6 de octubre de 2008-, + SWAD se desarrolló dentro de un tercer Proyecto de Innovación Docente, + titulado "Nuevos recursos de la plataforma SWAD para la innovación docente en el EEES", + y que fue continuación de los dos anteriores. + Este proyecto trató de dar respuesta a las necesidades y propuestas de los usuarios de SWAD, + principalmente aquellas relacionadas con la utilización + de la plataforma en planes piloto del EEES, + y a una demanda continuada de incorporación de nuevos profesores y asignaturas a la plataforma. +

+ +

+ La mejora en cuanto al número de servicios ofrecidos + queda reflejada en el número de acciones diferentes que podían realizar los usuarios: +

    +
  • 103 acciones al finalizar el primer proyecto
  • +
  • 294 acciones al finalizar el segundo proyecto
  • +
  • 515 acciones al término del tercer proyecto
  • + +
  • 1372 acciones a 11 de julio de 2017
  • +
+

+ +

+ La mejora en cuanto a crecimiento de usuarios y asignaturas + es evidente comparando las cifras de uso en las fechas de finalización de los tres proyectos: +

    +
  • 15 asignaturas, 12 profesores y 822 estudiantes al finalizar el primer proyecto
  • +
  • 454 asignaturas, 519 profesores y 25179 estudiantes al finalizar el segundo proyecto
  • +
  • 1193 asignaturas, 1196 profesores y 40722 estudiantes al finalizar el tercer proyecto
  • + +
  • 7208 asignaturas, 3357 profesores y 117094 estudiantes a 11 de julio de 2017
  • +
+

+ +

+ Durante 8 años y medio, desde febrero de 2008 hasta septiembre de 2016, + la plataforma SWAD estuvo integrada en el + Centro de Enseñanzas Virtuales de la UGR + como plataforma de apoyo a la docencia presencial. + Desde el comienzo del curso académico 2009-2010 hasta el final del curso 2015-2016, + SWAD fue una de las herramientas + de PRADO (Plataforma de Recursos de Apoyo a la Docencia), + que permitía acceder con una única contraseña + al Tablón de Docencia de la UGR, + a SWAD + y a la plataforma de docencia virtual, + así como compartir datos oficiales de asignaturas y estudiantes desde las tres plataformas. +

+ +

+ El 20 de septiembre de 2016, día de comienzo del curso 2016-2017, + PRADO2 + se convirtió en la única herramienta de apoyo a la docencia + oficial de la Universidad de Granada, + y SWAD volvió a residir en un servidor + del Departamento de Arquitectura y Tecnología de Computadores, + donde actualmente continúa dando servicio a cualquier asignatura y profesor de la UGR que lo demande. +

+ + + +

+ El 14 de septiembre de 2018 SWAD-UGR albergaba 465 titulaciones + (incluyendo grado, posgrado y otros cursos) + con 7330 asignaturas en total. + De esas asignaturas, en 6412 había profesores y en 4982 había estudiantes. + En la plataforma había 121.372 estudiantes, 3410 profesores y 158 profesores no editores inscritos en alguna asignatura, + sumando un total de 124.396 usuarios distintos inscritos en asignaturas. + Además había 11.804 usuarios invitados, no inscritos en ninguna asignatura. + Cada estudiante estaba inscrito en una media de 2,91 asignaturas, + cada profesor en una media de 3,60 asignaturas + y cada profesor no editor en una media de 1,36 asignaturas. + En cada asignatura había una media de 70,95 estudiantes, 1,92 profesores y 23,89 profesores no editores + (contabilizando únicamente las asignaturas con usuarios de cada tipo). + En total había 626.481 documentos en las asignaturas (incluyendo trabajos de estudiantes) + que ocupaban 1,1 TiB, + y 72.782 archivos en los discos virtuales temporales de uso personal + que ocupaban 188 GiB. + Había 32.980 preguntas de tipo test y esas preguntas se habían respondido + un promedio de 578,94 veces cada una (es decir, un total de 19.093.484 preguntas respondidas). + En esa misma fecha se habían enviado 1.902.808 mensajes personales a través de la plataforma + y se habían recibido 20.589.114 copias de ellos. + Había 1321 foros con 8684 discusiones y 62.108 mensajes (posts). +

+ +

+ Otra instalación de SWAD, independiente de SWAD-UGR, + es OpenSWAD.org, + que está abierta a todo el mundo de manera gratuita desde 2012. +

+ + +
+
+ +
+

Clics

+ Si cada clic de un usuario lo representamos como el sonido de un breve golpe, + el audio correspondiente a un minuto de accesos sería: + + (las secuencias de golpes de estos tres fragmentos de audio + corresponden a clics reales del día 18 de febrero de 2013) +
+

Estadísticas actualizadas el 14 de septiembre de 2018

+
+ Nº de páginas generadas por semana +
+ Nº de usuarios distintos por semana +
+ Nº de páginas generadas por mes +
+ Nº de usuarios distintos por mes +
+ Nº de usuarios distintos por mes desde SWADroid +
+ Porcentaje de usuarios distintos por mes desde SWADroid +
+ Nº de titulaciones, másteres, etc. +
+ Nº de asignaturas +
+ Nº de profesores +
+ Nº de estudiantes +
+ Nº de profesores en cada curso académico + Nº de estudiantes en cada curso académico +
+ Nº de asignaturas que cumplen los 5 apartados del indicador 1.1.2 del contrato-programa +
+ Porcentaje de asignaturas que cumplen apartados del indicador 1.1.2 del contrato-programa +
+ Nº de asignaturas por usuario +
+ Nº de profesores por asignatura +
+ Nº de estudiantes por asignatura +
+

Estadísticas en octubre de 2012

+
+ Nº de páginas generadas por minuto en el curso 2011-2012 +
+

Estadísticas en septiembre de 2008

+
+ Nº de páginas generadas por minuto en el curso 2007-2008 +
+ Nº de páginas generadas por acción en el curso 2007-2008 +
+ Nº de páginas generadas por titulación en el curso 2007-2008 +
+ Nº de estudiantes y profesores por titulación en el curso 2007-2008 +
+ Nº promedio de páginas generadas por usuario en cada titulación en el curso 2007-2008 +
+

Estadísticas en junio de 2008

+
+ Semifinal Eurocopa 2008 Rusia-España (número de páginas generadas) +
+ Semifinal Eurocopa 2008 Rusia-España (número de usuarios distintos) +
+

Estadísticas en mayo de 2004

+
+ +

+ En mayo de 2004 se realizó una encuesta similar a la de marzo de 2002 (más abajo). + Éstos fueron los resultados: +

+

+ + + + + + + + + + + + + +
+ Valoración de los dintintos servicios
+ Valoración de los distintos servicios +
+ Uso de los dintintos servicios
+ Uso real de los distintos servicios (porcentaje de clicks) +
+ Disponibilidad de recursos y preferencia del tipo de ficha
+ Disponibilidad de recursos y preferencia del tipo de ficha +
+ Acceso a Internet
+ Acceso a Internet +
+

+

+ Velocidad promedio de conexión a Internet de los estudiantes que disponen de acceso desde su domicilio: 171,64 kbps. +

+ +
+

Estadísticas en marzo de 2002

+
+ +

+ En marzo de 2002, al finalizar el primer cuatrimestre del curso 2001-2002, + se realizó una evaluación por parte de estudiantes. + La evaluación consistió en una encuesta a 69 estudiantes de una asignatura concreta + sobre la versión 2.0 de SWAD del 14 de marzo de 2002. + Se estudió el interés en cada uno de los servicios estáticos + y dinámicos que se proporcionaban en dicha versión, + así como la frecuencia de visitas a cada servicio. Éstos fueron los resultados: +

+

+ + + + + + + +
+ Valoración de los servicios estáticos +
+ Valoración de los servicios estáticos
  +
+ Valoración de los servicios dinámicos +
+ Valoración de los servicios dinámicos de acceso identificado
  +
+

+

+ También se realizaron otras estadísticas que se resumen a continuación: +

+
    +
  • El 76% de los estudiantes dispone de acceso a Internet en casa, + con conexión de banda ancha en su mayoría.
  • +
  • Esos estudiantes acceden a la página web de la asignatura principalmente + desde su casa (81% de las veces).
  • +
  • El 59% dispone de escáner en casa, y el 96% tiene acceso a un escáner. + Cuando se realizó la encuesta (marzo de 2002) + no eran tan frecuentes como ahora las cámaras digitales, por lo que no se preguntó por ellas. + Es de suponer que ahora el número de estudiantes de Informática + con acceso a un medio que les permita obtener una fotografía digital roza el 100%.
  • +
  • El 88% ha preferido rellenar la ficha para una única asignatura por Internet en lugar de hacerlo en papel. + Si la ficha electrónica fuese común para todas las asignaturas, + el 97% preferiría este sistema al tradicional.
  • +
+

+ + + + +
+ Otras estadísticas +
+ Otras estadísticas +
+

+

+ Tipos de conexión de los estudiantes que disponen de acceso a Internet desde casa: + + + + +
+ + + + + + + + + + + + + + + + + +
Módem (mayoritariamente 56 Kbps)41%
Cable (128 - 512 Kbps)32%
ADSL (>128 Kbps)14%
RDSI (64 - 128 Kbps)14%
+
+

+

+ Porcentajes de acceso desde distintos lugares a la página web de la asignatura: + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Un estudiante con Internet en casa, accede desde...Un estudiante sin Internet en casa, accede desde...
Su casa81%Universidad52%
Universidad13%
Colegio mayor3%Cibercafé22%
Casa de compañero o familiar2%Casa de compañero o familiar21%
Cibercafé1%Colegio mayor5%
+
+

+ +
+
+ + + diff --git a/html/swadroid/icon.zip b/html/swadroid/icon.zip deleted file mode 100644 index 1ae75e9d..00000000 Binary files a/html/swadroid/icon.zip and /dev/null differ diff --git a/html/swadroid/icon/36x36/Thumbs.db b/html/swadroid/icon/36x36/Thumbs.db deleted file mode 100644 index 02d6f6f5..00000000 Binary files a/html/swadroid/icon/36x36/Thumbs.db and /dev/null differ diff --git a/html/swadroid/icon/36x36/announce.png b/html/swadroid/icon/36x36/announce.png deleted file mode 100644 index 95eed55f..00000000 Binary files a/html/swadroid/icon/36x36/announce.png and /dev/null differ diff --git a/html/swadroid/icon/36x36/announce_black.png b/html/swadroid/icon/36x36/announce_black.png deleted file mode 100644 index f4d7cf51..00000000 Binary files a/html/swadroid/icon/36x36/announce_black.png and /dev/null differ diff --git a/html/swadroid/icon/36x36/ass.png b/html/swadroid/icon/36x36/ass.png deleted file mode 100644 index 422cf162..00000000 Binary files a/html/swadroid/icon/36x36/ass.png and /dev/null differ diff --git a/html/swadroid/icon/36x36/ass_black.png b/html/swadroid/icon/36x36/ass_black.png deleted file mode 100644 index 38a01fb8..00000000 Binary files a/html/swadroid/icon/36x36/ass_black.png and /dev/null differ diff --git a/html/swadroid/icon/36x36/blackboard.png b/html/swadroid/icon/36x36/blackboard.png deleted file mode 100644 index 28eb6d51..00000000 Binary files a/html/swadroid/icon/36x36/blackboard.png and /dev/null differ diff --git a/html/swadroid/icon/36x36/blackboard_alt.png b/html/swadroid/icon/36x36/blackboard_alt.png deleted file mode 100644 index b8f3a723..00000000 Binary files a/html/swadroid/icon/36x36/blackboard_alt.png and /dev/null differ diff --git a/html/swadroid/icon/36x36/book.png b/html/swadroid/icon/36x36/book.png deleted file mode 100644 index 184f5fdb..00000000 Binary files a/html/swadroid/icon/36x36/book.png and /dev/null differ diff --git a/html/swadroid/icon/36x36/book_black.png b/html/swadroid/icon/36x36/book_black.png deleted file mode 100644 index 8799c8f0..00000000 Binary files a/html/swadroid/icon/36x36/book_black.png and /dev/null differ diff --git a/html/swadroid/icon/36x36/calendar.png b/html/swadroid/icon/36x36/calendar.png deleted file mode 100644 index 38b1642d..00000000 Binary files a/html/swadroid/icon/36x36/calendar.png and /dev/null differ diff --git a/html/swadroid/icon/36x36/calendar_black.png b/html/swadroid/icon/36x36/calendar_black.png deleted file mode 100644 index 2e336091..00000000 Binary files a/html/swadroid/icon/36x36/calendar_black.png and /dev/null differ diff --git a/html/swadroid/icon/36x36/crs.png b/html/swadroid/icon/36x36/crs.png deleted file mode 100644 index 047891a0..00000000 Binary files a/html/swadroid/icon/36x36/crs.png and /dev/null differ diff --git a/html/swadroid/icon/36x36/crs_black.png b/html/swadroid/icon/36x36/crs_black.png deleted file mode 100644 index 1a8d7f3d..00000000 Binary files a/html/swadroid/icon/36x36/crs_black.png and /dev/null differ diff --git a/html/swadroid/icon/36x36/desk.png b/html/swadroid/icon/36x36/desk.png deleted file mode 100644 index 28c9a31f..00000000 Binary files a/html/swadroid/icon/36x36/desk.png and /dev/null differ diff --git a/html/swadroid/icon/36x36/desk_black.png b/html/swadroid/icon/36x36/desk_black.png deleted file mode 100644 index e77f9e58..00000000 Binary files a/html/swadroid/icon/36x36/desk_black.png and /dev/null differ diff --git a/html/swadroid/icon/36x36/enrollment.png b/html/swadroid/icon/36x36/enrollment.png deleted file mode 100644 index 275dbcea..00000000 Binary files a/html/swadroid/icon/36x36/enrollment.png and /dev/null differ diff --git a/html/swadroid/icon/36x36/enrollment_alt.png b/html/swadroid/icon/36x36/enrollment_alt.png deleted file mode 100644 index 7e103453..00000000 Binary files a/html/swadroid/icon/36x36/enrollment_alt.png and /dev/null differ diff --git a/html/swadroid/icon/36x36/enrollment_black.png b/html/swadroid/icon/36x36/enrollment_black.png deleted file mode 100644 index bc34e6b2..00000000 Binary files a/html/swadroid/icon/36x36/enrollment_black.png and /dev/null differ diff --git a/html/swadroid/icon/36x36/enrollment_request.png b/html/swadroid/icon/36x36/enrollment_request.png deleted file mode 100644 index c29e2efa..00000000 Binary files a/html/swadroid/icon/36x36/enrollment_request.png and /dev/null differ diff --git a/html/swadroid/icon/36x36/enrollment_request_black.png b/html/swadroid/icon/36x36/enrollment_request_black.png deleted file mode 100644 index 47a2839a..00000000 Binary files a/html/swadroid/icon/36x36/enrollment_request_black.png and /dev/null differ diff --git a/html/swadroid/icon/36x36/eye.png b/html/swadroid/icon/36x36/eye.png deleted file mode 100644 index a92c7a64..00000000 Binary files a/html/swadroid/icon/36x36/eye.png and /dev/null differ diff --git a/html/swadroid/icon/36x36/eye_black.png b/html/swadroid/icon/36x36/eye_black.png deleted file mode 100644 index a6fa7486..00000000 Binary files a/html/swadroid/icon/36x36/eye_black.png and /dev/null differ diff --git a/html/swadroid/icon/36x36/faq.png b/html/swadroid/icon/36x36/faq.png deleted file mode 100644 index 36c493b1..00000000 Binary files a/html/swadroid/icon/36x36/faq.png and /dev/null differ diff --git a/html/swadroid/icon/36x36/faq_black.png b/html/swadroid/icon/36x36/faq_black.png deleted file mode 100644 index 86f3788e..00000000 Binary files a/html/swadroid/icon/36x36/faq_black.png and /dev/null differ diff --git a/html/swadroid/icon/36x36/file.png b/html/swadroid/icon/36x36/file.png deleted file mode 100644 index 2b50029c..00000000 Binary files a/html/swadroid/icon/36x36/file.png and /dev/null differ diff --git a/html/swadroid/icon/36x36/file_black.png b/html/swadroid/icon/36x36/file_black.png deleted file mode 100644 index f5ac6dbb..00000000 Binary files a/html/swadroid/icon/36x36/file_black.png and /dev/null differ diff --git a/html/swadroid/icon/36x36/folder.png b/html/swadroid/icon/36x36/folder.png deleted file mode 100644 index c5e81388..00000000 Binary files a/html/swadroid/icon/36x36/folder.png and /dev/null differ diff --git a/html/swadroid/icon/36x36/folder_black.png b/html/swadroid/icon/36x36/folder_black.png deleted file mode 100644 index f8b29156..00000000 Binary files a/html/swadroid/icon/36x36/folder_black.png and /dev/null differ diff --git a/html/swadroid/icon/36x36/folder_closed.png b/html/swadroid/icon/36x36/folder_closed.png deleted file mode 100644 index 9b854d05..00000000 Binary files a/html/swadroid/icon/36x36/folder_closed.png and /dev/null differ diff --git a/html/swadroid/icon/36x36/folder_open.png b/html/swadroid/icon/36x36/folder_open.png deleted file mode 100644 index 8bc2e11f..00000000 Binary files a/html/swadroid/icon/36x36/folder_open.png and /dev/null differ diff --git a/html/swadroid/icon/36x36/folder_users.png b/html/swadroid/icon/36x36/folder_users.png deleted file mode 100644 index 23709ac4..00000000 Binary files a/html/swadroid/icon/36x36/folder_users.png and /dev/null differ diff --git a/html/swadroid/icon/36x36/folder_users_black.png b/html/swadroid/icon/36x36/folder_users_black.png deleted file mode 100644 index 4f230bda..00000000 Binary files a/html/swadroid/icon/36x36/folder_users_black.png and /dev/null differ diff --git a/html/swadroid/icon/36x36/forum.png b/html/swadroid/icon/36x36/forum.png deleted file mode 100644 index 752d357c..00000000 Binary files a/html/swadroid/icon/36x36/forum.png and /dev/null differ diff --git a/html/swadroid/icon/36x36/forum_black.png b/html/swadroid/icon/36x36/forum_black.png deleted file mode 100644 index d840d1d6..00000000 Binary files a/html/swadroid/icon/36x36/forum_black.png and /dev/null differ diff --git a/html/swadroid/icon/36x36/grades.png b/html/swadroid/icon/36x36/grades.png deleted file mode 100644 index a625bcb1..00000000 Binary files a/html/swadroid/icon/36x36/grades.png and /dev/null differ diff --git a/html/swadroid/icon/36x36/grades_alt.png b/html/swadroid/icon/36x36/grades_alt.png deleted file mode 100644 index 92a69a9e..00000000 Binary files a/html/swadroid/icon/36x36/grades_alt.png and /dev/null differ diff --git a/html/swadroid/icon/36x36/grades_black.png b/html/swadroid/icon/36x36/grades_black.png deleted file mode 100644 index 70c56a6e..00000000 Binary files a/html/swadroid/icon/36x36/grades_black.png and /dev/null differ diff --git a/html/swadroid/icon/36x36/home.png b/html/swadroid/icon/36x36/home.png deleted file mode 100644 index fc1f4e20..00000000 Binary files a/html/swadroid/icon/36x36/home.png and /dev/null differ diff --git a/html/swadroid/icon/36x36/home_alt.png b/html/swadroid/icon/36x36/home_alt.png deleted file mode 100644 index 3aa8f05d..00000000 Binary files a/html/swadroid/icon/36x36/home_alt.png and /dev/null differ diff --git a/html/swadroid/icon/36x36/home_black.png b/html/swadroid/icon/36x36/home_black.png deleted file mode 100644 index 86f0bc09..00000000 Binary files a/html/swadroid/icon/36x36/home_black.png and /dev/null differ diff --git a/html/swadroid/icon/36x36/info.png b/html/swadroid/icon/36x36/info.png deleted file mode 100644 index 92f93d88..00000000 Binary files a/html/swadroid/icon/36x36/info.png and /dev/null differ diff --git a/html/swadroid/icon/36x36/info_black.png b/html/swadroid/icon/36x36/info_black.png deleted file mode 100644 index 27089a81..00000000 Binary files a/html/swadroid/icon/36x36/info_black.png and /dev/null differ diff --git a/html/swadroid/icon/36x36/lab.png b/html/swadroid/icon/36x36/lab.png deleted file mode 100644 index 7f64b67e..00000000 Binary files a/html/swadroid/icon/36x36/lab.png and /dev/null differ diff --git a/html/swadroid/icon/36x36/lab_black.png b/html/swadroid/icon/36x36/lab_black.png deleted file mode 100644 index 9b77833e..00000000 Binary files a/html/swadroid/icon/36x36/lab_black.png and /dev/null differ diff --git a/html/swadroid/icon/36x36/link.png b/html/swadroid/icon/36x36/link.png deleted file mode 100644 index 0dda4665..00000000 Binary files a/html/swadroid/icon/36x36/link.png and /dev/null differ diff --git a/html/swadroid/icon/36x36/link_black.png b/html/swadroid/icon/36x36/link_black.png deleted file mode 100644 index 3c007e34..00000000 Binary files a/html/swadroid/icon/36x36/link_black.png and /dev/null differ diff --git a/html/swadroid/icon/36x36/list.png b/html/swadroid/icon/36x36/list.png deleted file mode 100644 index 0541edd3..00000000 Binary files a/html/swadroid/icon/36x36/list.png and /dev/null differ diff --git a/html/swadroid/icon/36x36/list_black.png b/html/swadroid/icon/36x36/list_black.png deleted file mode 100644 index 47274060..00000000 Binary files a/html/swadroid/icon/36x36/list_black.png and /dev/null differ diff --git a/html/swadroid/icon/36x36/msg.png b/html/swadroid/icon/36x36/msg.png deleted file mode 100644 index 1d4bf8ec..00000000 Binary files a/html/swadroid/icon/36x36/msg.png and /dev/null differ diff --git a/html/swadroid/icon/36x36/msg_alt.png b/html/swadroid/icon/36x36/msg_alt.png deleted file mode 100644 index 3ae69c82..00000000 Binary files a/html/swadroid/icon/36x36/msg_alt.png and /dev/null differ diff --git a/html/swadroid/icon/36x36/msg_black.png b/html/swadroid/icon/36x36/msg_black.png deleted file mode 100644 index c604d817..00000000 Binary files a/html/swadroid/icon/36x36/msg_black.png and /dev/null differ diff --git a/html/swadroid/icon/36x36/msg_received.png b/html/swadroid/icon/36x36/msg_received.png deleted file mode 100644 index f3541491..00000000 Binary files a/html/swadroid/icon/36x36/msg_received.png and /dev/null differ diff --git a/html/swadroid/icon/36x36/msg_received_black.png b/html/swadroid/icon/36x36/msg_received_black.png deleted file mode 100644 index 0ac79b9a..00000000 Binary files a/html/swadroid/icon/36x36/msg_received_black.png and /dev/null differ diff --git a/html/swadroid/icon/36x36/msg_reply.png b/html/swadroid/icon/36x36/msg_reply.png deleted file mode 100644 index a9cc27ae..00000000 Binary files a/html/swadroid/icon/36x36/msg_reply.png and /dev/null differ diff --git a/html/swadroid/icon/36x36/msg_reply_black.png b/html/swadroid/icon/36x36/msg_reply_black.png deleted file mode 100644 index ee3320be..00000000 Binary files a/html/swadroid/icon/36x36/msg_reply_black.png and /dev/null differ diff --git a/html/swadroid/icon/36x36/msg_write.png b/html/swadroid/icon/36x36/msg_write.png deleted file mode 100644 index abb977cf..00000000 Binary files a/html/swadroid/icon/36x36/msg_write.png and /dev/null differ diff --git a/html/swadroid/icon/36x36/msg_write_black.png b/html/swadroid/icon/36x36/msg_write_black.png deleted file mode 100644 index ba53901a..00000000 Binary files a/html/swadroid/icon/36x36/msg_write_black.png and /dev/null differ diff --git a/html/swadroid/icon/36x36/my_groups.png b/html/swadroid/icon/36x36/my_groups.png deleted file mode 100644 index 9964fbd2..00000000 Binary files a/html/swadroid/icon/36x36/my_groups.png and /dev/null differ diff --git a/html/swadroid/icon/36x36/my_groups_black.png b/html/swadroid/icon/36x36/my_groups_black.png deleted file mode 100644 index e691c197..00000000 Binary files a/html/swadroid/icon/36x36/my_groups_black.png and /dev/null differ diff --git a/html/swadroid/icon/36x36/not_ok.png b/html/swadroid/icon/36x36/not_ok.png deleted file mode 100644 index dc4d8fa3..00000000 Binary files a/html/swadroid/icon/36x36/not_ok.png and /dev/null differ diff --git a/html/swadroid/icon/36x36/not_ok_black.png b/html/swadroid/icon/36x36/not_ok_black.png deleted file mode 100644 index 31a8300c..00000000 Binary files a/html/swadroid/icon/36x36/not_ok_black.png and /dev/null differ diff --git a/html/swadroid/icon/36x36/note.png b/html/swadroid/icon/36x36/note.png deleted file mode 100644 index ff8ee970..00000000 Binary files a/html/swadroid/icon/36x36/note.png and /dev/null differ diff --git a/html/swadroid/icon/36x36/note_black.png b/html/swadroid/icon/36x36/note_black.png deleted file mode 100644 index 00fa77c8..00000000 Binary files a/html/swadroid/icon/36x36/note_black.png and /dev/null differ diff --git a/html/swadroid/icon/36x36/notif.png b/html/swadroid/icon/36x36/notif.png deleted file mode 100644 index da8a8c3f..00000000 Binary files a/html/swadroid/icon/36x36/notif.png and /dev/null differ diff --git a/html/swadroid/icon/36x36/notif_black.png b/html/swadroid/icon/36x36/notif_black.png deleted file mode 100644 index 5f4e69f8..00000000 Binary files a/html/swadroid/icon/36x36/notif_black.png and /dev/null differ diff --git a/html/swadroid/icon/36x36/ok.png b/html/swadroid/icon/36x36/ok.png deleted file mode 100644 index 64530330..00000000 Binary files a/html/swadroid/icon/36x36/ok.png and /dev/null differ diff --git a/html/swadroid/icon/36x36/ok_black.png b/html/swadroid/icon/36x36/ok_black.png deleted file mode 100644 index 63a3bd21..00000000 Binary files a/html/swadroid/icon/36x36/ok_black.png and /dev/null differ diff --git a/html/swadroid/icon/36x36/padlock_green.png b/html/swadroid/icon/36x36/padlock_green.png deleted file mode 100644 index 13e8f4a0..00000000 Binary files a/html/swadroid/icon/36x36/padlock_green.png and /dev/null differ diff --git a/html/swadroid/icon/36x36/padlock_green_black.png b/html/swadroid/icon/36x36/padlock_green_black.png deleted file mode 100644 index 34bf7961..00000000 Binary files a/html/swadroid/icon/36x36/padlock_green_black.png and /dev/null differ diff --git a/html/swadroid/icon/36x36/padlock_red.png b/html/swadroid/icon/36x36/padlock_red.png deleted file mode 100644 index fa52981b..00000000 Binary files a/html/swadroid/icon/36x36/padlock_red.png and /dev/null differ diff --git a/html/swadroid/icon/36x36/padlock_red_black.png b/html/swadroid/icon/36x36/padlock_red_black.png deleted file mode 100644 index e46eea26..00000000 Binary files a/html/swadroid/icon/36x36/padlock_red_black.png and /dev/null differ diff --git a/html/swadroid/icon/36x36/parent.png b/html/swadroid/icon/36x36/parent.png deleted file mode 100644 index cf57c7ea..00000000 Binary files a/html/swadroid/icon/36x36/parent.png and /dev/null differ diff --git a/html/swadroid/icon/36x36/parent_alt.png b/html/swadroid/icon/36x36/parent_alt.png deleted file mode 100644 index 0ed3bff9..00000000 Binary files a/html/swadroid/icon/36x36/parent_alt.png and /dev/null differ diff --git a/html/swadroid/icon/36x36/parent_black.png b/html/swadroid/icon/36x36/parent_black.png deleted file mode 100644 index 16035531..00000000 Binary files a/html/swadroid/icon/36x36/parent_black.png and /dev/null differ diff --git a/html/swadroid/icon/36x36/plus.png b/html/swadroid/icon/36x36/plus.png deleted file mode 100644 index 7f437b3a..00000000 Binary files a/html/swadroid/icon/36x36/plus.png and /dev/null differ diff --git a/html/swadroid/icon/36x36/plus_black.png b/html/swadroid/icon/36x36/plus_black.png deleted file mode 100644 index 7629c434..00000000 Binary files a/html/swadroid/icon/36x36/plus_black.png and /dev/null differ diff --git a/html/swadroid/icon/36x36/prf.png b/html/swadroid/icon/36x36/prf.png deleted file mode 100644 index 452374b5..00000000 Binary files a/html/swadroid/icon/36x36/prf.png and /dev/null differ diff --git a/html/swadroid/icon/36x36/prf_black.png b/html/swadroid/icon/36x36/prf_black.png deleted file mode 100644 index ddc3aee6..00000000 Binary files a/html/swadroid/icon/36x36/prf_black.png and /dev/null differ diff --git a/html/swadroid/icon/36x36/pspbrwse.jbf b/html/swadroid/icon/36x36/pspbrwse.jbf deleted file mode 100644 index 13496273..00000000 Binary files a/html/swadroid/icon/36x36/pspbrwse.jbf and /dev/null differ diff --git a/html/swadroid/icon/36x36/qr.png b/html/swadroid/icon/36x36/qr.png deleted file mode 100644 index eb908cd8..00000000 Binary files a/html/swadroid/icon/36x36/qr.png and /dev/null differ diff --git a/html/swadroid/icon/36x36/qr_black.png b/html/swadroid/icon/36x36/qr_black.png deleted file mode 100644 index b5d5f0c7..00000000 Binary files a/html/swadroid/icon/36x36/qr_black.png and /dev/null differ diff --git a/html/swadroid/icon/36x36/refresh.png b/html/swadroid/icon/36x36/refresh.png deleted file mode 100644 index 986c0974..00000000 Binary files a/html/swadroid/icon/36x36/refresh.png and /dev/null differ diff --git a/html/swadroid/icon/36x36/refresh_alt.png b/html/swadroid/icon/36x36/refresh_alt.png deleted file mode 100644 index f5609df9..00000000 Binary files a/html/swadroid/icon/36x36/refresh_alt.png and /dev/null differ diff --git a/html/swadroid/icon/36x36/refresh_black.png b/html/swadroid/icon/36x36/refresh_black.png deleted file mode 100644 index 769f7ae3..00000000 Binary files a/html/swadroid/icon/36x36/refresh_black.png and /dev/null differ diff --git a/html/swadroid/icon/36x36/roll_call.png b/html/swadroid/icon/36x36/roll_call.png deleted file mode 100644 index d5514459..00000000 Binary files a/html/swadroid/icon/36x36/roll_call.png and /dev/null differ diff --git a/html/swadroid/icon/36x36/roll_call_black.png b/html/swadroid/icon/36x36/roll_call_black.png deleted file mode 100644 index f09a217c..00000000 Binary files a/html/swadroid/icon/36x36/roll_call_black.png and /dev/null differ diff --git a/html/swadroid/icon/36x36/sta.png b/html/swadroid/icon/36x36/sta.png deleted file mode 100644 index a34ba580..00000000 Binary files a/html/swadroid/icon/36x36/sta.png and /dev/null differ diff --git a/html/swadroid/icon/36x36/sta_black.png b/html/swadroid/icon/36x36/sta_black.png deleted file mode 100644 index b6b15d4a..00000000 Binary files a/html/swadroid/icon/36x36/sta_black.png and /dev/null differ diff --git a/html/swadroid/icon/36x36/survey.png b/html/swadroid/icon/36x36/survey.png deleted file mode 100644 index 5d88efbf..00000000 Binary files a/html/swadroid/icon/36x36/survey.png and /dev/null differ diff --git a/html/swadroid/icon/36x36/survey_black.png b/html/swadroid/icon/36x36/survey_black.png deleted file mode 100644 index f0d953d1..00000000 Binary files a/html/swadroid/icon/36x36/survey_black.png and /dev/null differ diff --git a/html/swadroid/icon/36x36/syllabus.png b/html/swadroid/icon/36x36/syllabus.png deleted file mode 100644 index 1dde9947..00000000 Binary files a/html/swadroid/icon/36x36/syllabus.png and /dev/null differ diff --git a/html/swadroid/icon/36x36/syllabus_black.png b/html/swadroid/icon/36x36/syllabus_black.png deleted file mode 100644 index 66be19bc..00000000 Binary files a/html/swadroid/icon/36x36/syllabus_black.png and /dev/null differ diff --git a/html/swadroid/icon/36x36/test.png b/html/swadroid/icon/36x36/test.png deleted file mode 100644 index 2c149cc8..00000000 Binary files a/html/swadroid/icon/36x36/test.png and /dev/null differ diff --git a/html/swadroid/icon/36x36/test_black.png b/html/swadroid/icon/36x36/test_black.png deleted file mode 100644 index 0a8d7a11..00000000 Binary files a/html/swadroid/icon/36x36/test_black.png and /dev/null differ diff --git a/html/swadroid/icon/36x36/users.png b/html/swadroid/icon/36x36/users.png deleted file mode 100644 index 83989055..00000000 Binary files a/html/swadroid/icon/36x36/users.png and /dev/null differ diff --git a/html/swadroid/icon/36x36/users_alt.png b/html/swadroid/icon/36x36/users_alt.png deleted file mode 100644 index 121b4a31..00000000 Binary files a/html/swadroid/icon/36x36/users_alt.png and /dev/null differ diff --git a/html/swadroid/icon/36x36/users_black.png b/html/swadroid/icon/36x36/users_black.png deleted file mode 100644 index 0bf2b267..00000000 Binary files a/html/swadroid/icon/36x36/users_black.png and /dev/null differ diff --git a/html/swadroid/icon/36x36/usr.png b/html/swadroid/icon/36x36/usr.png deleted file mode 100644 index 96cd95fb..00000000 Binary files a/html/swadroid/icon/36x36/usr.png and /dev/null differ diff --git a/html/swadroid/icon/36x36/usr_black.png b/html/swadroid/icon/36x36/usr_black.png deleted file mode 100644 index e1dce185..00000000 Binary files a/html/swadroid/icon/36x36/usr_black.png and /dev/null differ diff --git a/html/swadroid/icon/48x48/Thumbs.db b/html/swadroid/icon/48x48/Thumbs.db deleted file mode 100644 index 11f6a499..00000000 Binary files a/html/swadroid/icon/48x48/Thumbs.db and /dev/null differ diff --git a/html/swadroid/icon/48x48/announce.png b/html/swadroid/icon/48x48/announce.png deleted file mode 100644 index 1e3ab033..00000000 Binary files a/html/swadroid/icon/48x48/announce.png and /dev/null differ diff --git a/html/swadroid/icon/48x48/announce_black.png b/html/swadroid/icon/48x48/announce_black.png deleted file mode 100644 index cabb3a83..00000000 Binary files a/html/swadroid/icon/48x48/announce_black.png and /dev/null differ diff --git a/html/swadroid/icon/48x48/ass.png b/html/swadroid/icon/48x48/ass.png deleted file mode 100644 index b4b61ba2..00000000 Binary files a/html/swadroid/icon/48x48/ass.png and /dev/null differ diff --git a/html/swadroid/icon/48x48/ass_black.png b/html/swadroid/icon/48x48/ass_black.png deleted file mode 100644 index eea8d72f..00000000 Binary files a/html/swadroid/icon/48x48/ass_black.png and /dev/null differ diff --git a/html/swadroid/icon/48x48/blackboard.png b/html/swadroid/icon/48x48/blackboard.png deleted file mode 100644 index 456c1065..00000000 Binary files a/html/swadroid/icon/48x48/blackboard.png and /dev/null differ diff --git a/html/swadroid/icon/48x48/blackboard_alt.png b/html/swadroid/icon/48x48/blackboard_alt.png deleted file mode 100644 index 0cf2a8ef..00000000 Binary files a/html/swadroid/icon/48x48/blackboard_alt.png and /dev/null differ diff --git a/html/swadroid/icon/48x48/book.png b/html/swadroid/icon/48x48/book.png deleted file mode 100644 index e41ebd8c..00000000 Binary files a/html/swadroid/icon/48x48/book.png and /dev/null differ diff --git a/html/swadroid/icon/48x48/book_black.png b/html/swadroid/icon/48x48/book_black.png deleted file mode 100644 index 667408c0..00000000 Binary files a/html/swadroid/icon/48x48/book_black.png and /dev/null differ diff --git a/html/swadroid/icon/48x48/calendar.png b/html/swadroid/icon/48x48/calendar.png deleted file mode 100644 index ea64719a..00000000 Binary files a/html/swadroid/icon/48x48/calendar.png and /dev/null differ diff --git a/html/swadroid/icon/48x48/calendar_black.png b/html/swadroid/icon/48x48/calendar_black.png deleted file mode 100644 index 1258335d..00000000 Binary files a/html/swadroid/icon/48x48/calendar_black.png and /dev/null differ diff --git a/html/swadroid/icon/48x48/crs.png b/html/swadroid/icon/48x48/crs.png deleted file mode 100644 index bc9e3979..00000000 Binary files a/html/swadroid/icon/48x48/crs.png and /dev/null differ diff --git a/html/swadroid/icon/48x48/crs_black.png b/html/swadroid/icon/48x48/crs_black.png deleted file mode 100644 index 7192149c..00000000 Binary files a/html/swadroid/icon/48x48/crs_black.png and /dev/null differ diff --git a/html/swadroid/icon/48x48/desk.png b/html/swadroid/icon/48x48/desk.png deleted file mode 100644 index 36478717..00000000 Binary files a/html/swadroid/icon/48x48/desk.png and /dev/null differ diff --git a/html/swadroid/icon/48x48/desk_black.png b/html/swadroid/icon/48x48/desk_black.png deleted file mode 100644 index 07fa3f45..00000000 Binary files a/html/swadroid/icon/48x48/desk_black.png and /dev/null differ diff --git a/html/swadroid/icon/48x48/enrollment.png b/html/swadroid/icon/48x48/enrollment.png deleted file mode 100644 index feed6824..00000000 Binary files a/html/swadroid/icon/48x48/enrollment.png and /dev/null differ diff --git a/html/swadroid/icon/48x48/enrollment_alt.png b/html/swadroid/icon/48x48/enrollment_alt.png deleted file mode 100644 index 28db876e..00000000 Binary files a/html/swadroid/icon/48x48/enrollment_alt.png and /dev/null differ diff --git a/html/swadroid/icon/48x48/enrollment_black.png b/html/swadroid/icon/48x48/enrollment_black.png deleted file mode 100644 index 3fd7be05..00000000 Binary files a/html/swadroid/icon/48x48/enrollment_black.png and /dev/null differ diff --git a/html/swadroid/icon/48x48/enrollment_request.png b/html/swadroid/icon/48x48/enrollment_request.png deleted file mode 100644 index 70341490..00000000 Binary files a/html/swadroid/icon/48x48/enrollment_request.png and /dev/null differ diff --git a/html/swadroid/icon/48x48/enrollment_request_black.png b/html/swadroid/icon/48x48/enrollment_request_black.png deleted file mode 100644 index 32de59e4..00000000 Binary files a/html/swadroid/icon/48x48/enrollment_request_black.png and /dev/null differ diff --git a/html/swadroid/icon/48x48/eye.png b/html/swadroid/icon/48x48/eye.png deleted file mode 100644 index b0eae9f7..00000000 Binary files a/html/swadroid/icon/48x48/eye.png and /dev/null differ diff --git a/html/swadroid/icon/48x48/eye_black.png b/html/swadroid/icon/48x48/eye_black.png deleted file mode 100644 index 64020910..00000000 Binary files a/html/swadroid/icon/48x48/eye_black.png and /dev/null differ diff --git a/html/swadroid/icon/48x48/faq.png b/html/swadroid/icon/48x48/faq.png deleted file mode 100644 index 3ba152e4..00000000 Binary files a/html/swadroid/icon/48x48/faq.png and /dev/null differ diff --git a/html/swadroid/icon/48x48/faq_black.png b/html/swadroid/icon/48x48/faq_black.png deleted file mode 100644 index abf5ee1a..00000000 Binary files a/html/swadroid/icon/48x48/faq_black.png and /dev/null differ diff --git a/html/swadroid/icon/48x48/file.png b/html/swadroid/icon/48x48/file.png deleted file mode 100644 index 66e1aed6..00000000 Binary files a/html/swadroid/icon/48x48/file.png and /dev/null differ diff --git a/html/swadroid/icon/48x48/file_black.png b/html/swadroid/icon/48x48/file_black.png deleted file mode 100644 index 2223a324..00000000 Binary files a/html/swadroid/icon/48x48/file_black.png and /dev/null differ diff --git a/html/swadroid/icon/48x48/folder.png b/html/swadroid/icon/48x48/folder.png deleted file mode 100644 index 23036915..00000000 Binary files a/html/swadroid/icon/48x48/folder.png and /dev/null differ diff --git a/html/swadroid/icon/48x48/folder_black.png b/html/swadroid/icon/48x48/folder_black.png deleted file mode 100644 index 39cb338d..00000000 Binary files a/html/swadroid/icon/48x48/folder_black.png and /dev/null differ diff --git a/html/swadroid/icon/48x48/folder_closed.png b/html/swadroid/icon/48x48/folder_closed.png deleted file mode 100644 index b3e9fe3c..00000000 Binary files a/html/swadroid/icon/48x48/folder_closed.png and /dev/null differ diff --git a/html/swadroid/icon/48x48/folder_open.png b/html/swadroid/icon/48x48/folder_open.png deleted file mode 100644 index 8e396c80..00000000 Binary files a/html/swadroid/icon/48x48/folder_open.png and /dev/null differ diff --git a/html/swadroid/icon/48x48/folder_users.png b/html/swadroid/icon/48x48/folder_users.png deleted file mode 100644 index 9b648a01..00000000 Binary files a/html/swadroid/icon/48x48/folder_users.png and /dev/null differ diff --git a/html/swadroid/icon/48x48/folder_users_black.png b/html/swadroid/icon/48x48/folder_users_black.png deleted file mode 100644 index d88759e0..00000000 Binary files a/html/swadroid/icon/48x48/folder_users_black.png and /dev/null differ diff --git a/html/swadroid/icon/48x48/forum.png b/html/swadroid/icon/48x48/forum.png deleted file mode 100644 index 735aa72a..00000000 Binary files a/html/swadroid/icon/48x48/forum.png and /dev/null differ diff --git a/html/swadroid/icon/48x48/forum_black.png b/html/swadroid/icon/48x48/forum_black.png deleted file mode 100644 index e87a14f3..00000000 Binary files a/html/swadroid/icon/48x48/forum_black.png and /dev/null differ diff --git a/html/swadroid/icon/48x48/grades.png b/html/swadroid/icon/48x48/grades.png deleted file mode 100644 index 7e0b639b..00000000 Binary files a/html/swadroid/icon/48x48/grades.png and /dev/null differ diff --git a/html/swadroid/icon/48x48/grades_alt.png b/html/swadroid/icon/48x48/grades_alt.png deleted file mode 100644 index e0a80b77..00000000 Binary files a/html/swadroid/icon/48x48/grades_alt.png and /dev/null differ diff --git a/html/swadroid/icon/48x48/grades_black.png b/html/swadroid/icon/48x48/grades_black.png deleted file mode 100644 index c7b4b82a..00000000 Binary files a/html/swadroid/icon/48x48/grades_black.png and /dev/null differ diff --git a/html/swadroid/icon/48x48/home.png b/html/swadroid/icon/48x48/home.png deleted file mode 100644 index 81ca4b39..00000000 Binary files a/html/swadroid/icon/48x48/home.png and /dev/null differ diff --git a/html/swadroid/icon/48x48/home_alt.png b/html/swadroid/icon/48x48/home_alt.png deleted file mode 100644 index 733889bc..00000000 Binary files a/html/swadroid/icon/48x48/home_alt.png and /dev/null differ diff --git a/html/swadroid/icon/48x48/home_black.png b/html/swadroid/icon/48x48/home_black.png deleted file mode 100644 index 3394e779..00000000 Binary files a/html/swadroid/icon/48x48/home_black.png and /dev/null differ diff --git a/html/swadroid/icon/48x48/info.png b/html/swadroid/icon/48x48/info.png deleted file mode 100644 index 1df0c3ed..00000000 Binary files a/html/swadroid/icon/48x48/info.png and /dev/null differ diff --git a/html/swadroid/icon/48x48/info_black.png b/html/swadroid/icon/48x48/info_black.png deleted file mode 100644 index 778ea837..00000000 Binary files a/html/swadroid/icon/48x48/info_black.png and /dev/null differ diff --git a/html/swadroid/icon/48x48/lab.png b/html/swadroid/icon/48x48/lab.png deleted file mode 100644 index d4246211..00000000 Binary files a/html/swadroid/icon/48x48/lab.png and /dev/null differ diff --git a/html/swadroid/icon/48x48/lab_black.png b/html/swadroid/icon/48x48/lab_black.png deleted file mode 100644 index b8bdb44b..00000000 Binary files a/html/swadroid/icon/48x48/lab_black.png and /dev/null differ diff --git a/html/swadroid/icon/48x48/link.png b/html/swadroid/icon/48x48/link.png deleted file mode 100644 index 9044bc09..00000000 Binary files a/html/swadroid/icon/48x48/link.png and /dev/null differ diff --git a/html/swadroid/icon/48x48/link_black.png b/html/swadroid/icon/48x48/link_black.png deleted file mode 100644 index 8795f375..00000000 Binary files a/html/swadroid/icon/48x48/link_black.png and /dev/null differ diff --git a/html/swadroid/icon/48x48/list.png b/html/swadroid/icon/48x48/list.png deleted file mode 100644 index 9dfef9af..00000000 Binary files a/html/swadroid/icon/48x48/list.png and /dev/null differ diff --git a/html/swadroid/icon/48x48/list_black.png b/html/swadroid/icon/48x48/list_black.png deleted file mode 100644 index 559eedee..00000000 Binary files a/html/swadroid/icon/48x48/list_black.png and /dev/null differ diff --git a/html/swadroid/icon/48x48/msg.png b/html/swadroid/icon/48x48/msg.png deleted file mode 100644 index 9d040bdb..00000000 Binary files a/html/swadroid/icon/48x48/msg.png and /dev/null differ diff --git a/html/swadroid/icon/48x48/msg_alt.png b/html/swadroid/icon/48x48/msg_alt.png deleted file mode 100644 index 826fb469..00000000 Binary files a/html/swadroid/icon/48x48/msg_alt.png and /dev/null differ diff --git a/html/swadroid/icon/48x48/msg_black.png b/html/swadroid/icon/48x48/msg_black.png deleted file mode 100644 index c0cb8fea..00000000 Binary files a/html/swadroid/icon/48x48/msg_black.png and /dev/null differ diff --git a/html/swadroid/icon/48x48/msg_received.png b/html/swadroid/icon/48x48/msg_received.png deleted file mode 100644 index 23307b03..00000000 Binary files a/html/swadroid/icon/48x48/msg_received.png and /dev/null differ diff --git a/html/swadroid/icon/48x48/msg_received_black.png b/html/swadroid/icon/48x48/msg_received_black.png deleted file mode 100644 index dfff0823..00000000 Binary files a/html/swadroid/icon/48x48/msg_received_black.png and /dev/null differ diff --git a/html/swadroid/icon/48x48/msg_reply.png b/html/swadroid/icon/48x48/msg_reply.png deleted file mode 100644 index 014a3d75..00000000 Binary files a/html/swadroid/icon/48x48/msg_reply.png and /dev/null differ diff --git a/html/swadroid/icon/48x48/msg_reply_black.png b/html/swadroid/icon/48x48/msg_reply_black.png deleted file mode 100644 index 9cfe0614..00000000 Binary files a/html/swadroid/icon/48x48/msg_reply_black.png and /dev/null differ diff --git a/html/swadroid/icon/48x48/msg_write.png b/html/swadroid/icon/48x48/msg_write.png deleted file mode 100644 index e77de826..00000000 Binary files a/html/swadroid/icon/48x48/msg_write.png and /dev/null differ diff --git a/html/swadroid/icon/48x48/msg_write_black.png b/html/swadroid/icon/48x48/msg_write_black.png deleted file mode 100644 index c3d64520..00000000 Binary files a/html/swadroid/icon/48x48/msg_write_black.png and /dev/null differ diff --git a/html/swadroid/icon/48x48/my_groups.png b/html/swadroid/icon/48x48/my_groups.png deleted file mode 100644 index 3bb0148f..00000000 Binary files a/html/swadroid/icon/48x48/my_groups.png and /dev/null differ diff --git a/html/swadroid/icon/48x48/my_groups_black.png b/html/swadroid/icon/48x48/my_groups_black.png deleted file mode 100644 index 342e726c..00000000 Binary files a/html/swadroid/icon/48x48/my_groups_black.png and /dev/null differ diff --git a/html/swadroid/icon/48x48/not_ok.png b/html/swadroid/icon/48x48/not_ok.png deleted file mode 100644 index 060db2f7..00000000 Binary files a/html/swadroid/icon/48x48/not_ok.png and /dev/null differ diff --git a/html/swadroid/icon/48x48/not_ok_black.png b/html/swadroid/icon/48x48/not_ok_black.png deleted file mode 100644 index 00011e60..00000000 Binary files a/html/swadroid/icon/48x48/not_ok_black.png and /dev/null differ diff --git a/html/swadroid/icon/48x48/note.png b/html/swadroid/icon/48x48/note.png deleted file mode 100644 index 5cf0afba..00000000 Binary files a/html/swadroid/icon/48x48/note.png and /dev/null differ diff --git a/html/swadroid/icon/48x48/note_black.png b/html/swadroid/icon/48x48/note_black.png deleted file mode 100644 index 97ce1dce..00000000 Binary files a/html/swadroid/icon/48x48/note_black.png and /dev/null differ diff --git a/html/swadroid/icon/48x48/notif.png b/html/swadroid/icon/48x48/notif.png deleted file mode 100644 index c918fd31..00000000 Binary files a/html/swadroid/icon/48x48/notif.png and /dev/null differ diff --git a/html/swadroid/icon/48x48/notif_black.png b/html/swadroid/icon/48x48/notif_black.png deleted file mode 100644 index 7c99cebc..00000000 Binary files a/html/swadroid/icon/48x48/notif_black.png and /dev/null differ diff --git a/html/swadroid/icon/48x48/ok.png b/html/swadroid/icon/48x48/ok.png deleted file mode 100644 index 0a387563..00000000 Binary files a/html/swadroid/icon/48x48/ok.png and /dev/null differ diff --git a/html/swadroid/icon/48x48/ok_black.png b/html/swadroid/icon/48x48/ok_black.png deleted file mode 100644 index 11581df4..00000000 Binary files a/html/swadroid/icon/48x48/ok_black.png and /dev/null differ diff --git a/html/swadroid/icon/48x48/padlock_green.png b/html/swadroid/icon/48x48/padlock_green.png deleted file mode 100644 index a903de3a..00000000 Binary files a/html/swadroid/icon/48x48/padlock_green.png and /dev/null differ diff --git a/html/swadroid/icon/48x48/padlock_green_black.png b/html/swadroid/icon/48x48/padlock_green_black.png deleted file mode 100644 index 6218dc6a..00000000 Binary files a/html/swadroid/icon/48x48/padlock_green_black.png and /dev/null differ diff --git a/html/swadroid/icon/48x48/padlock_red.png b/html/swadroid/icon/48x48/padlock_red.png deleted file mode 100644 index 4b866b2a..00000000 Binary files a/html/swadroid/icon/48x48/padlock_red.png and /dev/null differ diff --git a/html/swadroid/icon/48x48/padlock_red_black.png b/html/swadroid/icon/48x48/padlock_red_black.png deleted file mode 100644 index 5b4ac7ca..00000000 Binary files a/html/swadroid/icon/48x48/padlock_red_black.png and /dev/null differ diff --git a/html/swadroid/icon/48x48/parent.png b/html/swadroid/icon/48x48/parent.png deleted file mode 100644 index 36f3710e..00000000 Binary files a/html/swadroid/icon/48x48/parent.png and /dev/null differ diff --git a/html/swadroid/icon/48x48/parent_alt.png b/html/swadroid/icon/48x48/parent_alt.png deleted file mode 100644 index b492f66b..00000000 Binary files a/html/swadroid/icon/48x48/parent_alt.png and /dev/null differ diff --git a/html/swadroid/icon/48x48/parent_black.png b/html/swadroid/icon/48x48/parent_black.png deleted file mode 100644 index ebbc4b7e..00000000 Binary files a/html/swadroid/icon/48x48/parent_black.png and /dev/null differ diff --git a/html/swadroid/icon/48x48/plus.png b/html/swadroid/icon/48x48/plus.png deleted file mode 100644 index 6ec22f93..00000000 Binary files a/html/swadroid/icon/48x48/plus.png and /dev/null differ diff --git a/html/swadroid/icon/48x48/plus_black.png b/html/swadroid/icon/48x48/plus_black.png deleted file mode 100644 index 0be74614..00000000 Binary files a/html/swadroid/icon/48x48/plus_black.png and /dev/null differ diff --git a/html/swadroid/icon/48x48/prf.png b/html/swadroid/icon/48x48/prf.png deleted file mode 100644 index 1a2b61d4..00000000 Binary files a/html/swadroid/icon/48x48/prf.png and /dev/null differ diff --git a/html/swadroid/icon/48x48/prf_black.png b/html/swadroid/icon/48x48/prf_black.png deleted file mode 100644 index c244a6a5..00000000 Binary files a/html/swadroid/icon/48x48/prf_black.png and /dev/null differ diff --git a/html/swadroid/icon/48x48/pspbrwse.jbf b/html/swadroid/icon/48x48/pspbrwse.jbf deleted file mode 100644 index ef341f67..00000000 Binary files a/html/swadroid/icon/48x48/pspbrwse.jbf and /dev/null differ diff --git a/html/swadroid/icon/48x48/qr.png b/html/swadroid/icon/48x48/qr.png deleted file mode 100644 index 8db84a16..00000000 Binary files a/html/swadroid/icon/48x48/qr.png and /dev/null differ diff --git a/html/swadroid/icon/48x48/qr_black.png b/html/swadroid/icon/48x48/qr_black.png deleted file mode 100644 index 0b67503d..00000000 Binary files a/html/swadroid/icon/48x48/qr_black.png and /dev/null differ diff --git a/html/swadroid/icon/48x48/refresh.png b/html/swadroid/icon/48x48/refresh.png deleted file mode 100644 index 8ca537ae..00000000 Binary files a/html/swadroid/icon/48x48/refresh.png and /dev/null differ diff --git a/html/swadroid/icon/48x48/refresh_alt.png b/html/swadroid/icon/48x48/refresh_alt.png deleted file mode 100644 index b70f145f..00000000 Binary files a/html/swadroid/icon/48x48/refresh_alt.png and /dev/null differ diff --git a/html/swadroid/icon/48x48/refresh_black.png b/html/swadroid/icon/48x48/refresh_black.png deleted file mode 100644 index 8f454b0f..00000000 Binary files a/html/swadroid/icon/48x48/refresh_black.png and /dev/null differ diff --git a/html/swadroid/icon/48x48/roll_call.png b/html/swadroid/icon/48x48/roll_call.png deleted file mode 100644 index 2333f94e..00000000 Binary files a/html/swadroid/icon/48x48/roll_call.png and /dev/null differ diff --git a/html/swadroid/icon/48x48/roll_call_black.png b/html/swadroid/icon/48x48/roll_call_black.png deleted file mode 100644 index 16632688..00000000 Binary files a/html/swadroid/icon/48x48/roll_call_black.png and /dev/null differ diff --git a/html/swadroid/icon/48x48/sta.png b/html/swadroid/icon/48x48/sta.png deleted file mode 100644 index f32b1b94..00000000 Binary files a/html/swadroid/icon/48x48/sta.png and /dev/null differ diff --git a/html/swadroid/icon/48x48/sta_black.png b/html/swadroid/icon/48x48/sta_black.png deleted file mode 100644 index f6a8c16d..00000000 Binary files a/html/swadroid/icon/48x48/sta_black.png and /dev/null differ diff --git a/html/swadroid/icon/48x48/survey.png b/html/swadroid/icon/48x48/survey.png deleted file mode 100644 index dcba7a33..00000000 Binary files a/html/swadroid/icon/48x48/survey.png and /dev/null differ diff --git a/html/swadroid/icon/48x48/survey_black.png b/html/swadroid/icon/48x48/survey_black.png deleted file mode 100644 index d97dde37..00000000 Binary files a/html/swadroid/icon/48x48/survey_black.png and /dev/null differ diff --git a/html/swadroid/icon/48x48/syllabus.png b/html/swadroid/icon/48x48/syllabus.png deleted file mode 100644 index 7b8140ba..00000000 Binary files a/html/swadroid/icon/48x48/syllabus.png and /dev/null differ diff --git a/html/swadroid/icon/48x48/syllabus_black.png b/html/swadroid/icon/48x48/syllabus_black.png deleted file mode 100644 index fd1d8729..00000000 Binary files a/html/swadroid/icon/48x48/syllabus_black.png and /dev/null differ diff --git a/html/swadroid/icon/48x48/test.png b/html/swadroid/icon/48x48/test.png deleted file mode 100644 index f5c2216c..00000000 Binary files a/html/swadroid/icon/48x48/test.png and /dev/null differ diff --git a/html/swadroid/icon/48x48/test_black.png b/html/swadroid/icon/48x48/test_black.png deleted file mode 100644 index 03099a39..00000000 Binary files a/html/swadroid/icon/48x48/test_black.png and /dev/null differ diff --git a/html/swadroid/icon/48x48/users.png b/html/swadroid/icon/48x48/users.png deleted file mode 100644 index 0409767e..00000000 Binary files a/html/swadroid/icon/48x48/users.png and /dev/null differ diff --git a/html/swadroid/icon/48x48/users_alt.png b/html/swadroid/icon/48x48/users_alt.png deleted file mode 100644 index 01a49545..00000000 Binary files a/html/swadroid/icon/48x48/users_alt.png and /dev/null differ diff --git a/html/swadroid/icon/48x48/users_black.png b/html/swadroid/icon/48x48/users_black.png deleted file mode 100644 index 6f3d3774..00000000 Binary files a/html/swadroid/icon/48x48/users_black.png and /dev/null differ diff --git a/html/swadroid/icon/48x48/usr.png b/html/swadroid/icon/48x48/usr.png deleted file mode 100644 index 17c1f8c4..00000000 Binary files a/html/swadroid/icon/48x48/usr.png and /dev/null differ diff --git a/html/swadroid/icon/48x48/usr_black.png b/html/swadroid/icon/48x48/usr_black.png deleted file mode 100644 index a868ddc7..00000000 Binary files a/html/swadroid/icon/48x48/usr_black.png and /dev/null differ diff --git a/html/swadroid/icon/72x72/Thumbs.db b/html/swadroid/icon/72x72/Thumbs.db deleted file mode 100644 index 92b0e21e..00000000 Binary files a/html/swadroid/icon/72x72/Thumbs.db and /dev/null differ diff --git a/html/swadroid/icon/72x72/announce.png b/html/swadroid/icon/72x72/announce.png deleted file mode 100644 index 0e47b6e8..00000000 Binary files a/html/swadroid/icon/72x72/announce.png and /dev/null differ diff --git a/html/swadroid/icon/72x72/announce_black.png b/html/swadroid/icon/72x72/announce_black.png deleted file mode 100644 index 62306611..00000000 Binary files a/html/swadroid/icon/72x72/announce_black.png and /dev/null differ diff --git a/html/swadroid/icon/72x72/ass.png b/html/swadroid/icon/72x72/ass.png deleted file mode 100644 index d626adf1..00000000 Binary files a/html/swadroid/icon/72x72/ass.png and /dev/null differ diff --git a/html/swadroid/icon/72x72/ass_black.png b/html/swadroid/icon/72x72/ass_black.png deleted file mode 100644 index e9ec00e9..00000000 Binary files a/html/swadroid/icon/72x72/ass_black.png and /dev/null differ diff --git a/html/swadroid/icon/72x72/blackboard.png b/html/swadroid/icon/72x72/blackboard.png deleted file mode 100644 index afb08696..00000000 Binary files a/html/swadroid/icon/72x72/blackboard.png and /dev/null differ diff --git a/html/swadroid/icon/72x72/blackboard_alt.png b/html/swadroid/icon/72x72/blackboard_alt.png deleted file mode 100644 index 57b64446..00000000 Binary files a/html/swadroid/icon/72x72/blackboard_alt.png and /dev/null differ diff --git a/html/swadroid/icon/72x72/book.png b/html/swadroid/icon/72x72/book.png deleted file mode 100644 index ac4fc879..00000000 Binary files a/html/swadroid/icon/72x72/book.png and /dev/null differ diff --git a/html/swadroid/icon/72x72/book_black.png b/html/swadroid/icon/72x72/book_black.png deleted file mode 100644 index eadbc1d8..00000000 Binary files a/html/swadroid/icon/72x72/book_black.png and /dev/null differ diff --git a/html/swadroid/icon/72x72/calendar.png b/html/swadroid/icon/72x72/calendar.png deleted file mode 100644 index 2ccc0989..00000000 Binary files a/html/swadroid/icon/72x72/calendar.png and /dev/null differ diff --git a/html/swadroid/icon/72x72/calendar_black.png b/html/swadroid/icon/72x72/calendar_black.png deleted file mode 100644 index 92dc8baa..00000000 Binary files a/html/swadroid/icon/72x72/calendar_black.png and /dev/null differ diff --git a/html/swadroid/icon/72x72/crs.png b/html/swadroid/icon/72x72/crs.png deleted file mode 100644 index 015da3ff..00000000 Binary files a/html/swadroid/icon/72x72/crs.png and /dev/null differ diff --git a/html/swadroid/icon/72x72/crs_black.png b/html/swadroid/icon/72x72/crs_black.png deleted file mode 100644 index 3fc80093..00000000 Binary files a/html/swadroid/icon/72x72/crs_black.png and /dev/null differ diff --git a/html/swadroid/icon/72x72/desk.png b/html/swadroid/icon/72x72/desk.png deleted file mode 100644 index bcc85621..00000000 Binary files a/html/swadroid/icon/72x72/desk.png and /dev/null differ diff --git a/html/swadroid/icon/72x72/desk_black.png b/html/swadroid/icon/72x72/desk_black.png deleted file mode 100644 index 82e2f80d..00000000 Binary files a/html/swadroid/icon/72x72/desk_black.png and /dev/null differ diff --git a/html/swadroid/icon/72x72/enrollment.png b/html/swadroid/icon/72x72/enrollment.png deleted file mode 100644 index 60c3dcb4..00000000 Binary files a/html/swadroid/icon/72x72/enrollment.png and /dev/null differ diff --git a/html/swadroid/icon/72x72/enrollment_alt.png b/html/swadroid/icon/72x72/enrollment_alt.png deleted file mode 100644 index 2b7a693e..00000000 Binary files a/html/swadroid/icon/72x72/enrollment_alt.png and /dev/null differ diff --git a/html/swadroid/icon/72x72/enrollment_black.png b/html/swadroid/icon/72x72/enrollment_black.png deleted file mode 100644 index 49dcd262..00000000 Binary files a/html/swadroid/icon/72x72/enrollment_black.png and /dev/null differ diff --git a/html/swadroid/icon/72x72/enrollment_request.png b/html/swadroid/icon/72x72/enrollment_request.png deleted file mode 100644 index 9011a446..00000000 Binary files a/html/swadroid/icon/72x72/enrollment_request.png and /dev/null differ diff --git a/html/swadroid/icon/72x72/enrollment_request_black.png b/html/swadroid/icon/72x72/enrollment_request_black.png deleted file mode 100644 index 368a4508..00000000 Binary files a/html/swadroid/icon/72x72/enrollment_request_black.png and /dev/null differ diff --git a/html/swadroid/icon/72x72/eye.png b/html/swadroid/icon/72x72/eye.png deleted file mode 100644 index 9d524509..00000000 Binary files a/html/swadroid/icon/72x72/eye.png and /dev/null differ diff --git a/html/swadroid/icon/72x72/eye_black.png b/html/swadroid/icon/72x72/eye_black.png deleted file mode 100644 index 07d114d6..00000000 Binary files a/html/swadroid/icon/72x72/eye_black.png and /dev/null differ diff --git a/html/swadroid/icon/72x72/faq.png b/html/swadroid/icon/72x72/faq.png deleted file mode 100644 index c4ec2c8a..00000000 Binary files a/html/swadroid/icon/72x72/faq.png and /dev/null differ diff --git a/html/swadroid/icon/72x72/faq_black.png b/html/swadroid/icon/72x72/faq_black.png deleted file mode 100644 index fd63be7f..00000000 Binary files a/html/swadroid/icon/72x72/faq_black.png and /dev/null differ diff --git a/html/swadroid/icon/72x72/file.png b/html/swadroid/icon/72x72/file.png deleted file mode 100644 index bd5e8601..00000000 Binary files a/html/swadroid/icon/72x72/file.png and /dev/null differ diff --git a/html/swadroid/icon/72x72/file_black.png b/html/swadroid/icon/72x72/file_black.png deleted file mode 100644 index 0295580b..00000000 Binary files a/html/swadroid/icon/72x72/file_black.png and /dev/null differ diff --git a/html/swadroid/icon/72x72/folder.png b/html/swadroid/icon/72x72/folder.png deleted file mode 100644 index 04598fdc..00000000 Binary files a/html/swadroid/icon/72x72/folder.png and /dev/null differ diff --git a/html/swadroid/icon/72x72/folder_black.png b/html/swadroid/icon/72x72/folder_black.png deleted file mode 100644 index a75525fc..00000000 Binary files a/html/swadroid/icon/72x72/folder_black.png and /dev/null differ diff --git a/html/swadroid/icon/72x72/folder_closed.png b/html/swadroid/icon/72x72/folder_closed.png deleted file mode 100644 index 3d149b6b..00000000 Binary files a/html/swadroid/icon/72x72/folder_closed.png and /dev/null differ diff --git a/html/swadroid/icon/72x72/folder_open.png b/html/swadroid/icon/72x72/folder_open.png deleted file mode 100644 index 8e07c9b4..00000000 Binary files a/html/swadroid/icon/72x72/folder_open.png and /dev/null differ diff --git a/html/swadroid/icon/72x72/folder_users.png b/html/swadroid/icon/72x72/folder_users.png deleted file mode 100644 index c2fb5b7c..00000000 Binary files a/html/swadroid/icon/72x72/folder_users.png and /dev/null differ diff --git a/html/swadroid/icon/72x72/folder_users_black.png b/html/swadroid/icon/72x72/folder_users_black.png deleted file mode 100644 index 03bf1af8..00000000 Binary files a/html/swadroid/icon/72x72/folder_users_black.png and /dev/null differ diff --git a/html/swadroid/icon/72x72/forum.png b/html/swadroid/icon/72x72/forum.png deleted file mode 100644 index 08fcfb2c..00000000 Binary files a/html/swadroid/icon/72x72/forum.png and /dev/null differ diff --git a/html/swadroid/icon/72x72/forum_black.png b/html/swadroid/icon/72x72/forum_black.png deleted file mode 100644 index eafaf805..00000000 Binary files a/html/swadroid/icon/72x72/forum_black.png and /dev/null differ diff --git a/html/swadroid/icon/72x72/grades.png b/html/swadroid/icon/72x72/grades.png deleted file mode 100644 index 813797f5..00000000 Binary files a/html/swadroid/icon/72x72/grades.png and /dev/null differ diff --git a/html/swadroid/icon/72x72/grades_alt.png b/html/swadroid/icon/72x72/grades_alt.png deleted file mode 100644 index fd7f7725..00000000 Binary files a/html/swadroid/icon/72x72/grades_alt.png and /dev/null differ diff --git a/html/swadroid/icon/72x72/grades_black.png b/html/swadroid/icon/72x72/grades_black.png deleted file mode 100644 index 8630762f..00000000 Binary files a/html/swadroid/icon/72x72/grades_black.png and /dev/null differ diff --git a/html/swadroid/icon/72x72/home.png b/html/swadroid/icon/72x72/home.png deleted file mode 100644 index 319e9ebf..00000000 Binary files a/html/swadroid/icon/72x72/home.png and /dev/null differ diff --git a/html/swadroid/icon/72x72/home_alt.png b/html/swadroid/icon/72x72/home_alt.png deleted file mode 100644 index 1faa25df..00000000 Binary files a/html/swadroid/icon/72x72/home_alt.png and /dev/null differ diff --git a/html/swadroid/icon/72x72/home_black.png b/html/swadroid/icon/72x72/home_black.png deleted file mode 100644 index 0954e5b0..00000000 Binary files a/html/swadroid/icon/72x72/home_black.png and /dev/null differ diff --git a/html/swadroid/icon/72x72/info.png b/html/swadroid/icon/72x72/info.png deleted file mode 100644 index e551555c..00000000 Binary files a/html/swadroid/icon/72x72/info.png and /dev/null differ diff --git a/html/swadroid/icon/72x72/info_black.png b/html/swadroid/icon/72x72/info_black.png deleted file mode 100644 index aab5ef2a..00000000 Binary files a/html/swadroid/icon/72x72/info_black.png and /dev/null differ diff --git a/html/swadroid/icon/72x72/lab.png b/html/swadroid/icon/72x72/lab.png deleted file mode 100644 index 3f7a7d56..00000000 Binary files a/html/swadroid/icon/72x72/lab.png and /dev/null differ diff --git a/html/swadroid/icon/72x72/lab_black.png b/html/swadroid/icon/72x72/lab_black.png deleted file mode 100644 index 1c9f23f5..00000000 Binary files a/html/swadroid/icon/72x72/lab_black.png and /dev/null differ diff --git a/html/swadroid/icon/72x72/link.png b/html/swadroid/icon/72x72/link.png deleted file mode 100644 index 7866992a..00000000 Binary files a/html/swadroid/icon/72x72/link.png and /dev/null differ diff --git a/html/swadroid/icon/72x72/link_black.png b/html/swadroid/icon/72x72/link_black.png deleted file mode 100644 index a08af494..00000000 Binary files a/html/swadroid/icon/72x72/link_black.png and /dev/null differ diff --git a/html/swadroid/icon/72x72/list.png b/html/swadroid/icon/72x72/list.png deleted file mode 100644 index 7e241ec9..00000000 Binary files a/html/swadroid/icon/72x72/list.png and /dev/null differ diff --git a/html/swadroid/icon/72x72/list_black.png b/html/swadroid/icon/72x72/list_black.png deleted file mode 100644 index b6bfe647..00000000 Binary files a/html/swadroid/icon/72x72/list_black.png and /dev/null differ diff --git a/html/swadroid/icon/72x72/msg.png b/html/swadroid/icon/72x72/msg.png deleted file mode 100644 index b2ef72ac..00000000 Binary files a/html/swadroid/icon/72x72/msg.png and /dev/null differ diff --git a/html/swadroid/icon/72x72/msg_alt.png b/html/swadroid/icon/72x72/msg_alt.png deleted file mode 100644 index b9896ad6..00000000 Binary files a/html/swadroid/icon/72x72/msg_alt.png and /dev/null differ diff --git a/html/swadroid/icon/72x72/msg_black.png b/html/swadroid/icon/72x72/msg_black.png deleted file mode 100644 index 50aa65e7..00000000 Binary files a/html/swadroid/icon/72x72/msg_black.png and /dev/null differ diff --git a/html/swadroid/icon/72x72/msg_received.png b/html/swadroid/icon/72x72/msg_received.png deleted file mode 100644 index 4050433d..00000000 Binary files a/html/swadroid/icon/72x72/msg_received.png and /dev/null differ diff --git a/html/swadroid/icon/72x72/msg_received_black.png b/html/swadroid/icon/72x72/msg_received_black.png deleted file mode 100644 index 43305d56..00000000 Binary files a/html/swadroid/icon/72x72/msg_received_black.png and /dev/null differ diff --git a/html/swadroid/icon/72x72/msg_reply.png b/html/swadroid/icon/72x72/msg_reply.png deleted file mode 100644 index 083518bd..00000000 Binary files a/html/swadroid/icon/72x72/msg_reply.png and /dev/null differ diff --git a/html/swadroid/icon/72x72/msg_reply_black.png b/html/swadroid/icon/72x72/msg_reply_black.png deleted file mode 100644 index ee41d518..00000000 Binary files a/html/swadroid/icon/72x72/msg_reply_black.png and /dev/null differ diff --git a/html/swadroid/icon/72x72/msg_write.png b/html/swadroid/icon/72x72/msg_write.png deleted file mode 100644 index cb59053f..00000000 Binary files a/html/swadroid/icon/72x72/msg_write.png and /dev/null differ diff --git a/html/swadroid/icon/72x72/msg_write_black.png b/html/swadroid/icon/72x72/msg_write_black.png deleted file mode 100644 index ff04d8f1..00000000 Binary files a/html/swadroid/icon/72x72/msg_write_black.png and /dev/null differ diff --git a/html/swadroid/icon/72x72/my_groups.png b/html/swadroid/icon/72x72/my_groups.png deleted file mode 100644 index 80f9264c..00000000 Binary files a/html/swadroid/icon/72x72/my_groups.png and /dev/null differ diff --git a/html/swadroid/icon/72x72/my_groups_black.png b/html/swadroid/icon/72x72/my_groups_black.png deleted file mode 100644 index 1404e9c9..00000000 Binary files a/html/swadroid/icon/72x72/my_groups_black.png and /dev/null differ diff --git a/html/swadroid/icon/72x72/not_ok.png b/html/swadroid/icon/72x72/not_ok.png deleted file mode 100644 index 64aeeed8..00000000 Binary files a/html/swadroid/icon/72x72/not_ok.png and /dev/null differ diff --git a/html/swadroid/icon/72x72/not_ok_black.png b/html/swadroid/icon/72x72/not_ok_black.png deleted file mode 100644 index 144646c8..00000000 Binary files a/html/swadroid/icon/72x72/not_ok_black.png and /dev/null differ diff --git a/html/swadroid/icon/72x72/note.png b/html/swadroid/icon/72x72/note.png deleted file mode 100644 index ece640f9..00000000 Binary files a/html/swadroid/icon/72x72/note.png and /dev/null differ diff --git a/html/swadroid/icon/72x72/note_black.png b/html/swadroid/icon/72x72/note_black.png deleted file mode 100644 index f7167d1c..00000000 Binary files a/html/swadroid/icon/72x72/note_black.png and /dev/null differ diff --git a/html/swadroid/icon/72x72/notif.png b/html/swadroid/icon/72x72/notif.png deleted file mode 100644 index 7d5d9164..00000000 Binary files a/html/swadroid/icon/72x72/notif.png and /dev/null differ diff --git a/html/swadroid/icon/72x72/notif_black.png b/html/swadroid/icon/72x72/notif_black.png deleted file mode 100644 index 5eff57e8..00000000 Binary files a/html/swadroid/icon/72x72/notif_black.png and /dev/null differ diff --git a/html/swadroid/icon/72x72/ok.png b/html/swadroid/icon/72x72/ok.png deleted file mode 100644 index 707bfd40..00000000 Binary files a/html/swadroid/icon/72x72/ok.png and /dev/null differ diff --git a/html/swadroid/icon/72x72/ok_black.png b/html/swadroid/icon/72x72/ok_black.png deleted file mode 100644 index 64e83743..00000000 Binary files a/html/swadroid/icon/72x72/ok_black.png and /dev/null differ diff --git a/html/swadroid/icon/72x72/padlock_green.png b/html/swadroid/icon/72x72/padlock_green.png deleted file mode 100644 index 35c821a1..00000000 Binary files a/html/swadroid/icon/72x72/padlock_green.png and /dev/null differ diff --git a/html/swadroid/icon/72x72/padlock_green_black.png b/html/swadroid/icon/72x72/padlock_green_black.png deleted file mode 100644 index 48d03a4c..00000000 Binary files a/html/swadroid/icon/72x72/padlock_green_black.png and /dev/null differ diff --git a/html/swadroid/icon/72x72/padlock_red.png b/html/swadroid/icon/72x72/padlock_red.png deleted file mode 100644 index 351cc05d..00000000 Binary files a/html/swadroid/icon/72x72/padlock_red.png and /dev/null differ diff --git a/html/swadroid/icon/72x72/padlock_red_black.png b/html/swadroid/icon/72x72/padlock_red_black.png deleted file mode 100644 index 21221cbb..00000000 Binary files a/html/swadroid/icon/72x72/padlock_red_black.png and /dev/null differ diff --git a/html/swadroid/icon/72x72/parent.png b/html/swadroid/icon/72x72/parent.png deleted file mode 100644 index cee81aa8..00000000 Binary files a/html/swadroid/icon/72x72/parent.png and /dev/null differ diff --git a/html/swadroid/icon/72x72/parent_alt.png b/html/swadroid/icon/72x72/parent_alt.png deleted file mode 100644 index 615495d0..00000000 Binary files a/html/swadroid/icon/72x72/parent_alt.png and /dev/null differ diff --git a/html/swadroid/icon/72x72/parent_black.png b/html/swadroid/icon/72x72/parent_black.png deleted file mode 100644 index c726865b..00000000 Binary files a/html/swadroid/icon/72x72/parent_black.png and /dev/null differ diff --git a/html/swadroid/icon/72x72/plus.png b/html/swadroid/icon/72x72/plus.png deleted file mode 100644 index edb80179..00000000 Binary files a/html/swadroid/icon/72x72/plus.png and /dev/null differ diff --git a/html/swadroid/icon/72x72/plus_black.png b/html/swadroid/icon/72x72/plus_black.png deleted file mode 100644 index 9e6e7e2d..00000000 Binary files a/html/swadroid/icon/72x72/plus_black.png and /dev/null differ diff --git a/html/swadroid/icon/72x72/prf.png b/html/swadroid/icon/72x72/prf.png deleted file mode 100644 index 3917b2eb..00000000 Binary files a/html/swadroid/icon/72x72/prf.png and /dev/null differ diff --git a/html/swadroid/icon/72x72/prf_black.png b/html/swadroid/icon/72x72/prf_black.png deleted file mode 100644 index c46b238e..00000000 Binary files a/html/swadroid/icon/72x72/prf_black.png and /dev/null differ diff --git a/html/swadroid/icon/72x72/pspbrwse.jbf b/html/swadroid/icon/72x72/pspbrwse.jbf deleted file mode 100644 index cf82780b..00000000 Binary files a/html/swadroid/icon/72x72/pspbrwse.jbf and /dev/null differ diff --git a/html/swadroid/icon/72x72/qr.png b/html/swadroid/icon/72x72/qr.png deleted file mode 100644 index ecdae702..00000000 Binary files a/html/swadroid/icon/72x72/qr.png and /dev/null differ diff --git a/html/swadroid/icon/72x72/qr_black.png b/html/swadroid/icon/72x72/qr_black.png deleted file mode 100644 index 40097f63..00000000 Binary files a/html/swadroid/icon/72x72/qr_black.png and /dev/null differ diff --git a/html/swadroid/icon/72x72/refresh.png b/html/swadroid/icon/72x72/refresh.png deleted file mode 100644 index cad29bee..00000000 Binary files a/html/swadroid/icon/72x72/refresh.png and /dev/null differ diff --git a/html/swadroid/icon/72x72/refresh_alt.png b/html/swadroid/icon/72x72/refresh_alt.png deleted file mode 100644 index e240f11a..00000000 Binary files a/html/swadroid/icon/72x72/refresh_alt.png and /dev/null differ diff --git a/html/swadroid/icon/72x72/refresh_black.png b/html/swadroid/icon/72x72/refresh_black.png deleted file mode 100644 index bcd06697..00000000 Binary files a/html/swadroid/icon/72x72/refresh_black.png and /dev/null differ diff --git a/html/swadroid/icon/72x72/roll_call.png b/html/swadroid/icon/72x72/roll_call.png deleted file mode 100644 index 7b60abd4..00000000 Binary files a/html/swadroid/icon/72x72/roll_call.png and /dev/null differ diff --git a/html/swadroid/icon/72x72/roll_call_black.png b/html/swadroid/icon/72x72/roll_call_black.png deleted file mode 100644 index ec8675c6..00000000 Binary files a/html/swadroid/icon/72x72/roll_call_black.png and /dev/null differ diff --git a/html/swadroid/icon/72x72/sta.png b/html/swadroid/icon/72x72/sta.png deleted file mode 100644 index dcdb9443..00000000 Binary files a/html/swadroid/icon/72x72/sta.png and /dev/null differ diff --git a/html/swadroid/icon/72x72/sta_black.png b/html/swadroid/icon/72x72/sta_black.png deleted file mode 100644 index b34d707e..00000000 Binary files a/html/swadroid/icon/72x72/sta_black.png and /dev/null differ diff --git a/html/swadroid/icon/72x72/survey.png b/html/swadroid/icon/72x72/survey.png deleted file mode 100644 index 1602b8ad..00000000 Binary files a/html/swadroid/icon/72x72/survey.png and /dev/null differ diff --git a/html/swadroid/icon/72x72/survey_black.png b/html/swadroid/icon/72x72/survey_black.png deleted file mode 100644 index 423646fc..00000000 Binary files a/html/swadroid/icon/72x72/survey_black.png and /dev/null differ diff --git a/html/swadroid/icon/72x72/syllabus.png b/html/swadroid/icon/72x72/syllabus.png deleted file mode 100644 index 0115cbc1..00000000 Binary files a/html/swadroid/icon/72x72/syllabus.png and /dev/null differ diff --git a/html/swadroid/icon/72x72/syllabus_black.png b/html/swadroid/icon/72x72/syllabus_black.png deleted file mode 100644 index 2d1ae5f1..00000000 Binary files a/html/swadroid/icon/72x72/syllabus_black.png and /dev/null differ diff --git a/html/swadroid/icon/72x72/test.png b/html/swadroid/icon/72x72/test.png deleted file mode 100644 index b0425a44..00000000 Binary files a/html/swadroid/icon/72x72/test.png and /dev/null differ diff --git a/html/swadroid/icon/72x72/test_black.png b/html/swadroid/icon/72x72/test_black.png deleted file mode 100644 index 37953411..00000000 Binary files a/html/swadroid/icon/72x72/test_black.png and /dev/null differ diff --git a/html/swadroid/icon/72x72/users.png b/html/swadroid/icon/72x72/users.png deleted file mode 100644 index 6e38c65a..00000000 Binary files a/html/swadroid/icon/72x72/users.png and /dev/null differ diff --git a/html/swadroid/icon/72x72/users_alt.png b/html/swadroid/icon/72x72/users_alt.png deleted file mode 100644 index 68e43186..00000000 Binary files a/html/swadroid/icon/72x72/users_alt.png and /dev/null differ diff --git a/html/swadroid/icon/72x72/users_black.png b/html/swadroid/icon/72x72/users_black.png deleted file mode 100644 index 83df4c2d..00000000 Binary files a/html/swadroid/icon/72x72/users_black.png and /dev/null differ diff --git a/html/swadroid/icon/72x72/usr.png b/html/swadroid/icon/72x72/usr.png deleted file mode 100644 index 9c873abd..00000000 Binary files a/html/swadroid/icon/72x72/usr.png and /dev/null differ diff --git a/html/swadroid/icon/72x72/usr_black.png b/html/swadroid/icon/72x72/usr_black.png deleted file mode 100644 index 7cac5992..00000000 Binary files a/html/swadroid/icon/72x72/usr_black.png and /dev/null differ diff --git a/html/swadroid/img/SWADroid200x300.png b/html/swadroid/img/SWADroid200x300.png deleted file mode 100644 index 93896548..00000000 Binary files a/html/swadroid/img/SWADroid200x300.png and /dev/null differ diff --git a/html/swadroid/index.html b/html/swadroid/index.html deleted file mode 100644 index 0fd43b9b..00000000 --- a/html/swadroid/index.html +++ /dev/null @@ -1,671 +0,0 @@ - - - - - SWAD: SWADroid - - - - - - - - - - -
- - - - - - - - - - - - - - -
- SWAD -
shared workspace at a distance
-
- - -
-

SWADroid

- CC BY-SA - Antonio Cañas Vargas, 2011-2017 -
- -

Application for Android devices

- -

- SWADroid - is an app for Android devices. - You can download it for free from Google play. -

- -

Authors

- -

- SWADroid has been programmed by: -

- - - -

Source code

- -

- SWADroid is free software. The source code is available in GitHub forge - (https://github.com/Amab/SWADroid) - under GNU GPLv3 - and GNU LGPLv3 licenses. -

- -

Icons

- -

- The icons used by SWADroid, processed and converted to transparent PNG - by Antonio Cañas Vargas - from collections - Nuvola - (under LGPLv2.1 license) - and Font Awesome - (under SIL OFL 1.1 license), - can be downloaded from icon.zip. - The icons are listed bellow following the SWADroid hierarchy: -

- -
    -
  • - Course tab: crs.png crs_black.png
    - - - - - - -
      -
    • - Information: info.png info_black.png
      - - - - - - -
    • -
    • - Teaching guide: file.png file_black.png
      - - - - - - -
    • -
    • - Syllabus (lectures): syllabus.png syllabus_black.png
      - - - - - - -
    • -
    • - Syllabus (practicals): lab.png lab_black.png
      - - - - - - -
    • -
    • - Documents: folder.png folder_black.png
      - - - - - - -
        -
      • - Home: home.png home_black.png
        - - - - - - -
      • -
      • - Parent: parent.png parent_black.png
        - - - - - - -
      • -
      • - Folder: folder.png folder_black.png
        - - - - - - -
      • -
      • - File: file.png file_black.png
        - - - - - - -
      • -
      -
    • -
    • - Shared files: folder_users.png folder_users_black.png
      - - - - - - -
        -
      • - Home: home.png home_black.png
        - - - - - - -
      • -
      • - Parent: parent.png parent_black.png
        - - - - - - -
      • -
      • - Folder: folder.png folder_black.png
        - - - - - - -
      • -
      • - File: file.png file_black.png
        - - - - - - -
      • -
      -
    • -
    • - Bibliography: book.png book_black.png
      - - - - - - -
    • -
    • - FAQ: faq.png faq_black.png
      - - - - - - -
    • -
    • - Links: link.png link_black.png
      - - - - - - -
    • -
    -
  • -
  • - Assessment tab: ass.png ass_black.png
    - - - - - - -
      -
    • - Assessment system: info.png info_black.png
      - - - - - - -
    • -
    • - Test: test.png test_png
      - - - - - - -
    • -
    -
  • -
  • - Users tab: usr.png usr_black.png
    - - - - - - -
      -
    • - Groups: my_groups.png my_groups_black.png
      - - - - - - -
        -
      • - Closed group: padlock_red.png padlock_red_black.png
        - - - - - - -
      • -
      • - Open group: padlock_green.png padlock_green_black.png
        - - - - - - -
      • -
      -
    • -
    • - Control of attendance: roll_call.png roll_call_black.png
      - - - - - - -
        -
      • - Students: usr.png usr_black.png
        - - - - - - -
          -
        • - Update list: refresh.png refresh_black.png
          - - - - - - -
        • -
        • - Students' list: list.png list_black.png
          - - - - - - -
        • -
        -
      • -
      • - Sessions: calendar.png calendar_black.png
        - - - - - - - -
          -
        • - New session: plus.png plus_black.png
          - - - - - - -
        • -
        • - Get sessions: calendar.png calendar_black.png
          - - - - - - -
        • -
        -
      • -
      • - Roll call: roll_call.png roll_call_black.png
        - - - - - - -
          -
        • - Scan QR: qr.png qr_black.png
          - - - - - - -
        • -
        • - Manual mode: list.png list_black.png
          - - - - - - -
        • -
        • - Present: ok.png ok_black.png
          - - - - - - -
        • -
        • - Not present: not_ok.png not_ok_black.png
          - - - - - - -
        • -
        -
      • -
      -
    • -
    -
  • -
  • - Messages tab: msg.png msg_black.png
    - - - - - - -
      -
    • - Notifications: notif.png notif_black.png
      - - - - - - -
        -
      • - Mark all notifications as read: eye.png eye_black.png
        - - - - - - -
      • -
      • - Document: file.png file_black.png
        - - - - - - -
      • -
      • - Shared file: file.png file_black.png
        - - - - - - - -
      • -
      • - Assignment: desk.png desk_black.png
        - - - - - - -
      • -
      • - Announcement of exam: announce.png announce_black.png
        - - - - - - -
      • -
      • - Marks: grades.png grades_black.png
        - - - - - - -
      • -
      • - Enrollment: enrollment.png enrollment_black.png
        - - - - - - -
      • -
      • - Enrollment request: enrollment_request.png enrollment_request_black.png
        - - - - - - -
      • -
      • - Notice: note.png note_black.png
        - - - - - - -
      • -
      • - Post in course forum: forum.png forum_black.png
        - - - - - - -
      • -
      • - Reply to my post: forum.png forum_black.png
        - - - - - - -
      • -
      • - Message: msg_received.png msg_received.png
        - - - - - - -
          -
        • - Reply: msg_reply.png msg_reply_black.png
          - - - - - - -
        • -
        -
      • -
      • - Survey: survey.png survey_black.png
        - - - - - - -
      • -
      -
    • -
    • - New message: msg_write.png msg_write_black.png
      - - - - - - -
    • -
    • - Notices: note.png note_black.png
      - - - - - - -
    • -
    -
  • -
  • - Statistics tab (not used in SWADroid): sta.png sta_black.png
    - - - - - - -
  • -
  • - Profile tab: prf.png prf_black.png
    - - - - - - -
      -
    • - QR code: qr.png qr_black.png
      - - - - - - -
    • -
    -
  • -
      - -
-
- - - diff --git a/html/translation/index.html b/html/translation/index.html index 43e69c04..2f0fb5e0 100644 --- a/html/translation/index.html +++ b/html/translation/index.html @@ -32,7 +32,7 @@ SWAD -
shared workspace at a distance
+
social workspace at a distance @@ -40,7 +40,7 @@

Translation of SWAD

CC BY-SA - Antonio Cañas Vargas, 1999-2017 + Antonio Cañas Vargas, 1999-2018 diff --git a/html/video/index.html b/html/video/index.html index d4f74189..59cc5b66 100644 --- a/html/video/index.html +++ b/html/video/index.html @@ -32,20 +32,41 @@ SWAD -
shared workspace at a distance
+
social workspace at a distance -

Videotutorials about SWAD

+

Videos about SWAD

+ CC BY-SA + Antonio Cañas Vargas, 1999-2018 - -

Videotutorials created by SWAD users (2010-2015)

+ +

OpenSWAD, Atomun (Telesur TV), 2017

+ + + + + +
+ +
+ +

Videotutorials created by SWAD users, 2010-2015

@@ -80,7 +101,7 @@
-

Videotutorials about SWAD - UGR (2013)

+

Videotutorials about SWAD - UGR, 2013

@@ -147,7 +168,7 @@
-

Videotutorials about SWADroid (2011-2016)

+

Videotutorials about SWADroid, 2011-2016

diff --git a/sha2/sha2.o b/sha2/sha2.o index eb7eac09..de779df9 100644 Binary files a/sha2/sha2.o and b/sha2/sha2.o differ diff --git a/sql/swad.sql b/sql/swad.sql index 777d36c6..07530940 100644 --- a/sql/swad.sql +++ b/sql/swad.sql @@ -17,7 +17,7 @@ CREATE TABLE IF NOT EXISTS IP_prefs ( INDEX(UsrCod), INDEX(LastChange)); -- --- Table actions: Stores the text that describes each of the actions. +-- Table actions: stores the text that describes each of the actions. -- Each action has a numeric code associated to it that persists over time. -- CREATE TABLE IF NOT EXISTS actions ( @@ -37,6 +37,15 @@ CREATE TABLE IF NOT EXISTS actions_MFU ( LastClick DATETIME NOT NULL, UNIQUE INDEX(UsrCod,ActCod)); -- +-- Table ann_seen: stores users who have seen global announcements +-- +CREATE TABLE IF NOT EXISTS admin ( + UsrCod INT NOT NULL, + Scope ENUM('Sys','Ins','Ctr','Deg') NOT NULL, + Cod INT NOT NULL, + UNIQUE INDEX(UsrCod,Scope,Cod), + INDEX(Scope,Cod)); +-- -- Table agendas: stores users' agendas -- CREATE TABLE IF NOT EXISTS agendas ( @@ -53,15 +62,6 @@ CREATE TABLE IF NOT EXISTS agendas ( -- -- Table ann_seen: stores users who have seen global announcements -- -CREATE TABLE IF NOT EXISTS admin ( - UsrCod INT NOT NULL, - Scope ENUM('Sys','Ins','Ctr','Deg') NOT NULL, - Cod INT NOT NULL, - UNIQUE INDEX(UsrCod,Scope,Cod), - INDEX(Scope,Cod)); --- --- Table ann_seen: stores users who have seen global announcements --- CREATE TABLE IF NOT EXISTS ann_seen ( AnnCod INT NOT NULL, UsrCod INT NOT NULL, @@ -171,7 +171,7 @@ CREATE TABLE IF NOT EXISTS centres ( INDEX(PlcCod), INDEX(Status)); -- --- Table chat: stored number of users in each chat room (this table is not used now) +-- Table chat: stores number of users in each chat room (this table is not used now) -- CREATE TABLE IF NOT EXISTS chat ( RoomCode VARCHAR(16) NOT NULL, @@ -567,23 +567,6 @@ CREATE TABLE IF NOT EXISTS forum_thread ( UNIQUE INDEX(FirstPstCod), UNIQUE INDEX(LastPstCod)); -- --- Table surveys: stores the games --- -CREATE TABLE IF NOT EXISTS games ( - GamCod INT NOT NULL AUTO_INCREMENT, - Scope ENUM('Sys','Cty','Ins','Ctr','Deg','Crs') NOT NULL DEFAULT 'Sys', - Cod INT NOT NULL DEFAULT -1, - Hidden ENUM('N','Y') NOT NULL DEFAULT 'N', - NumNotif INT NOT NULL DEFAULT 0, - Roles INT NOT NULL DEFAULT 0, - UsrCod INT NOT NULL, - StartTime DATETIME NOT NULL, - EndTime DATETIME NOT NULL, - Title VARCHAR(2047) NOT NULL, - Txt TEXT NOT NULL, - UNIQUE INDEX(GamCod), - INDEX(Scope,Cod)); --- -- Table gam_answers: stores the answers to the games -- CREATE TABLE IF NOT EXISTS gam_answers ( @@ -616,6 +599,23 @@ CREATE TABLE IF NOT EXISTS gam_users ( UsrCod INT NOT NULL, UNIQUE INDEX(GamCod,UsrCod)); -- +-- Table games: stores the games +-- +CREATE TABLE IF NOT EXISTS games ( + GamCod INT NOT NULL AUTO_INCREMENT, + Scope ENUM('Sys','Cty','Ins','Ctr','Deg','Crs') NOT NULL DEFAULT 'Sys', + Cod INT NOT NULL DEFAULT -1, + Hidden ENUM('N','Y') NOT NULL DEFAULT 'N', + NumNotif INT NOT NULL DEFAULT 0, + Roles INT NOT NULL DEFAULT 0, + UsrCod INT NOT NULL, + StartTime DATETIME NOT NULL, + EndTime DATETIME NOT NULL, + Title VARCHAR(2047) NOT NULL, + Txt TEXT NOT NULL, + UNIQUE INDEX(GamCod), + INDEX(Scope,Cod)); +-- -- Table hidden_params: stores some hidden parameters passed from a page to another using database instead of forms -- CREATE TABLE IF NOT EXISTS hidden_params ( diff --git a/swad_account.c b/swad_account.c index cd970746..2f572c18 100644 --- a/swad_account.c +++ b/swad_account.c @@ -714,7 +714,9 @@ void Acc_CreateNewUsr (struct UsrData *UsrDat,bool CreatingMyOwnAccount) extern const char *Txt_STR_LANG_ID[1 + Txt_NUM_LANGUAGES]; extern const char *Usr_StringsSexDB[Usr_NUM_SEXS]; char BirthdayStrDB[Usr_BIRTHDAY_STR_DB_LENGTH + 1]; - char Query[2048]; + char *QueryUsrData; + size_t CommentsLength; + char QueryUsrIDs[256 + ID_MAX_BYTES_USR_ID]; char PathRelUsr[PATH_MAX + 1]; unsigned NumID; @@ -731,20 +733,39 @@ void Acc_CreateNewUsr (struct UsrData *UsrDat,bool CreatingMyOwnAccount) /***** Insert new user in database *****/ /* Insert user's data */ Usr_CreateBirthdayStrDB (UsrDat,BirthdayStrDB); - sprintf (Query,"INSERT INTO usr_data" - " (EncryptedUsrCod,Password,Surname1,Surname2,FirstName,Sex," - "Theme,IconSet,Language,FirstDayOfWeek,DateFormat," - "PhotoVisibility,ProfileVisibility," - "CtyCod," - "LocalAddress,LocalPhone,FamilyAddress,FamilyPhone,OriginPlace,Birthday,Comments," - "Menu,SideCols,NotifNtfEvents,EmailNtfEvents)" - " VALUES" - " ('%s','%s','%s','%s','%s','%s'," - "'%s','%s','%s',%u,%u," - "'%s','%s'," - "%ld," - "'%s','%s','%s','%s','%s',%s,'%s'," - "%u,%u,-1,0)", + CommentsLength = strlen (UsrDat->Comments); + if ((QueryUsrData = malloc (2048 + + Cry_BYTES_ENCRYPTED_STR_SHA256_BASE64 + // EncryptedUsrCod + Pwd_BYTES_ENCRYPTED_PASSWORD + // Password + Usr_MAX_BYTES_FIRSTNAME_OR_SURNAME * 3 + // Surname1, Surname2, FirstName + Usr_MAX_BYTES_ADDRESS + // LocalAddress + Usr_MAX_BYTES_PHONE + // LocalPhone + Usr_MAX_BYTES_ADDRESS + // FamilyAddress + Usr_MAX_BYTES_PHONE + // FamilyPhone + Usr_MAX_BYTES_ADDRESS + // OriginPlace + Usr_BIRTHDAY_STR_DB_LENGTH + // BirthdayStrDB + CommentsLength)) == NULL) // Comments + Lay_ShowErrorAndExit ("Not enough memory to store query."); + sprintf (QueryUsrData,"INSERT INTO usr_data" + " (EncryptedUsrCod,Password," + "Surname1,Surname2,FirstName,Sex," + "Theme,IconSet,Language,FirstDayOfWeek,DateFormat," + "PhotoVisibility,ProfileVisibility," + "CtyCod," + "LocalAddress,LocalPhone," + "FamilyAddress,FamilyPhone," + "OriginPlace,Birthday,Comments," + "Menu,SideCols,NotifNtfEvents,EmailNtfEvents)" + " VALUES" + " ('%s','%s'," + "'%s','%s','%s','%s'," + "'%s','%s','%s',%u,%u," + "'%s','%s'," + "%ld," + "'%s','%s'," + "'%s','%s','%s'," + "%s,'%s'," + "%u,%u,-1,0)", UsrDat->EncryptedUsrCod, UsrDat->Password, UsrDat->Surname1,UsrDat->Surname2,UsrDat->FirstName, @@ -758,14 +779,15 @@ void Acc_CreateNewUsr (struct UsrData *UsrDat,bool CreatingMyOwnAccount) Pri_VisibilityDB[UsrDat->ProfileVisibility], UsrDat->CtyCod, UsrDat->LocalAddress ,UsrDat->LocalPhone, - UsrDat->FamilyAddress,UsrDat->FamilyPhone, - UsrDat->OriginPlace, + UsrDat->FamilyAddress,UsrDat->FamilyPhone,UsrDat->OriginPlace, BirthdayStrDB, - UsrDat->Comments ? UsrDat->Comments : - "", + CommentsLength ? UsrDat->Comments : + "", (unsigned) Mnu_MENU_DEFAULT, (unsigned) Cfg_DEFAULT_COLUMNS); - UsrDat->UsrCod = DB_QueryINSERTandReturnCode (Query,"can not create user"); + UsrDat->UsrCod = DB_QueryINSERTandReturnCode (QueryUsrData, + "can not create user"); + free ((void *) QueryUsrData); /* Insert user's IDs as confirmed */ for (NumID = 0; @@ -773,7 +795,7 @@ void Acc_CreateNewUsr (struct UsrData *UsrDat,bool CreatingMyOwnAccount) NumID++) { Str_ConvertToUpperText (UsrDat->IDs.List[NumID].ID); - sprintf (Query,"INSERT INTO usr_IDs" + sprintf (QueryUsrIDs,"INSERT INTO usr_IDs" " (UsrCod,UsrID,CreatTime,Confirmed)" " VALUES" " (%ld,'%s',NOW(),'%c')", @@ -781,7 +803,7 @@ void Acc_CreateNewUsr (struct UsrData *UsrDat,bool CreatingMyOwnAccount) UsrDat->IDs.List[NumID].ID, UsrDat->IDs.List[NumID].Confirmed ? 'Y' : 'N'); - DB_QueryINSERT (Query,"can not store user's ID when creating user"); + DB_QueryINSERT (QueryUsrIDs,"can not store user's ID when creating user"); } /***** Create directory for the user, if not exists *****/ diff --git a/swad_announcement.c b/swad_announcement.c index b004f064..47dcde11 100644 --- a/swad_announcement.c +++ b/swad_announcement.c @@ -107,7 +107,7 @@ void Ann_ShowAllAnnouncements (void) " FROM announcements" " WHERE (Roles&%u)<>0 " " ORDER BY AnnCod DESC", - (unsigned) Gbl.Usrs.Me.UsrDat.Roles.InCrss); // All my roles in different courses + (unsigned) Gbl.Usrs.Me.UsrDat.Roles.InCrss); // All my roles in different courses } else // No user logged /* Select only active announcements for unknown users */ @@ -115,8 +115,8 @@ void Ann_ShowAllAnnouncements (void) " FROM announcements" " WHERE Status=%u AND (Roles&%u)<>0 " " ORDER BY AnnCod DESC", - (unsigned) Ann_ACTIVE_ANNOUNCEMENT, - (unsigned) (1 << Rol_UNK)); + (unsigned) Ann_ACTIVE_ANNOUNCEMENT, + (unsigned) (1 << Rol_UNK)); NumAnnouncements = (unsigned) DB_QuerySELECT (Query,&mysql_res,"can not get announcements"); /***** Start box *****/ diff --git a/swad_assignment.c b/swad_assignment.c index 1effd344..d4c34990 100644 --- a/swad_assignment.c +++ b/swad_assignment.c @@ -587,7 +587,8 @@ static void Asg_PutFormsToRemEditOneAsg (long AsgCod,bool Hidden) /***** Put form to edit assignment *****/ Ico_PutContextualIconToEdit (ActEdiOneAsg,Asg_PutParams); - // no break + /* falls through */ + /* no break */ case Rol_STD: case Rol_NET: /***** Put form to print assignment *****/ diff --git a/swad_changelog.h b/swad_changelog.h index ef39f5b5..91dec14a 100644 --- a/swad_changelog.h +++ b/swad_changelog.h @@ -317,20 +317,36 @@ Hola Antonio, he ampliado el evento y nos deja comentar. El problema es que el p // TODO: Al buscar un profesor deberían salir también las asignaturas en las que es profesor no editor // TODO: En el pefil público de un usuario deberían contabilizarse como profesor las asignaturas en las que sea profesor no editor +/* TODO: + +@CarlosEObertoM En respuesta a @acanasvargas + +Buenos días Profesor Cañas, sé que no es nada fácil, pero pudiera hacer más versátil las hojas de calificaciones que en pocos pasos se pudiera configurar para dar promedios, parciales y definitivas. Perdone la solicitud. Soy usuario agradecido de OpenSwad. +*/ // TODO: Eliminar todas las preguntas de test de un golpe // TODO: URGENTE: Cuando se cree un descriptor nuevo TIENE QUE ESTAR INHABILITADO porque si no los alumnos pueden ver el examen (Miguel Damas) // TODO: URGENTE: No se puede eliminar ni ocultar el enlace "Preparacion terreno_ hoyos._." de la asignatura PLANTACIÓN Y SIEMBRA (código 2165) de OpenSWAD. + +// TODO: Que la opción por defecto en "Permitir que los profesores vean este examen" la configuren los profesores en cada asignatura" +// TODO: URGENTE: Bego del Pino, una columna en resultados de test que indique los descriptores de ese examen + +// TODO: Pedro Villar Castro: +// Al asignar un TFG a alumnos, no escribir el DNI del alumno, sino escogerlo de una lista de entre los alumnos inscritos en la asignatura. + /*****************************************************************************/ /****************************** Public constants *****************************/ /*****************************************************************************/ -#define Log_PLATFORM_VERSION "SWAD 17.27.1 (2017-12-20)" +#define Log_PLATFORM_VERSION "SWAD 18.0 (2018-10-04)" #define CSS_FILE "swad17.25.4.css" #define JS_FILE "swad17.17.1.js" +// Size of photos: +// find -iname '*.jpg' -exec du -cb {} + | grep total$ | cut -f1 | paste -sd+ - | bc +// find -iname '*original.jpg' -exec du -cb {} + | grep total$ | cut -f1 | paste -sd+ - | bc // 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 /* Printing: @@ -343,6 +359,8 @@ En OpenSWAD: ps2pdf source.ps destination.pdf */ /* + Version 18.0: Oct 04, 2018 New version of fotomaton, programmed by Daniel Calandria and Jesús Mesa. + Changes in code to avoid new warnings with GCC 7.3. (234736 lines) Version 17.29: Apr 24, 2018 Code refactoring and bug fixing related to actions. (234579 lines) Version 17.28: Jan 09, 2018 Added average of all test exams. (? lines) Version 17.27.2: Dec 20, 2017 Changes displaying a game question. (234507 lines) diff --git a/swad_config.h b/swad_config.h index ee74f174..97907c56 100644 --- a/swad_config.h +++ b/swad_config.h @@ -432,7 +432,7 @@ /* Command to make image processing / face detection, programmed by Daniel J. Calandria-Hernández */ // %s must be substituted by temporary file with the image received: -#define Cfg_COMMAND_FACE_DETECTION "./fotomaton options %s 540" +#define Cfg_COMMAND_FACE_DETECTION "./fotomaton cascade.xml %s 540" /* Commands to compute the average photo of a degree */ #define Cfg_COMMAND_DEGREE_PHOTO_MEDIAN "./foto_mediana" diff --git a/swad_duplicate.c b/swad_duplicate.c index 4af9b8d6..c1b53574 100644 --- a/swad_duplicate.c +++ b/swad_duplicate.c @@ -253,7 +253,7 @@ static void Dup_ListSimilarUsrs (void) extern const char *Hlp_USERS_Duplicates_similar_users; extern const char *Txt_Similar_users; struct UsrData UsrDat; - char Query[512]; + char Query[512 + Usr_MAX_BYTES_FIRSTNAME_OR_SURNAME * 3]; MYSQL_RES *mysql_res; MYSQL_ROW row; unsigned NumUsrs; diff --git a/swad_enrolment.c b/swad_enrolment.c index 9d5f8ac3..96bae6ba 100644 --- a/swad_enrolment.c +++ b/swad_enrolment.c @@ -519,7 +519,8 @@ void Enr_UpdateUsrData (struct UsrData *UsrDat) { extern const char *Usr_StringsSexDB[Usr_NUM_SEXS]; char BirthdayStrDB[Usr_BIRTHDAY_STR_DB_LENGTH + 1]; - char Query[2048]; + char *Query; + size_t CommentsLength; /***** Check if user's code is initialized *****/ if (UsrDat->UsrCod <= 0) @@ -530,6 +531,18 @@ void Enr_UpdateUsrData (struct UsrData *UsrDat) /***** Update user's common data *****/ Usr_CreateBirthdayStrDB (UsrDat,BirthdayStrDB); + CommentsLength = strlen (UsrDat->Comments); + if ((Query = malloc (2048 + + Pwd_BYTES_ENCRYPTED_PASSWORD + // Password + Usr_MAX_BYTES_FIRSTNAME_OR_SURNAME * 3 +// Surname1, Surname2, FirstName + Usr_MAX_BYTES_ADDRESS + // LocalAddress + Usr_MAX_BYTES_PHONE + // LocalPhone + Usr_MAX_BYTES_ADDRESS + // FamilyAddress + Usr_MAX_BYTES_PHONE + // FamilyPhone + Usr_MAX_BYTES_ADDRESS + // OriginPlace + Usr_BIRTHDAY_STR_DB_LENGTH + // BirthdayStrDB + CommentsLength)) == NULL) // Comments + Lay_ShowErrorAndExit ("Not enough memory to store query."); sprintf (Query,"UPDATE usr_data" " SET Password='%s'," "Surname1='%s',Surname2='%s',FirstName='%s',Sex='%s'," @@ -547,10 +560,11 @@ void Enr_UpdateUsrData (struct UsrData *UsrDat) UsrDat->FamilyAddress,UsrDat->FamilyPhone, UsrDat->OriginPlace, BirthdayStrDB, - UsrDat->Comments ? UsrDat->Comments : - "", + CommentsLength ? UsrDat->Comments : + "", UsrDat->UsrCod); DB_QueryUPDATE (Query,"can not update user's data"); + free ((void *) Query); } /*****************************************************************************/ diff --git a/swad_file_browser.c b/swad_file_browser.c index 7553e95e..c4ebd15b 100644 --- a/swad_file_browser.c +++ b/swad_file_browser.c @@ -2717,7 +2717,7 @@ void Brw_InitializeFileBrowser (void) static void Brw_SetPathFileBrowser (void) { - char Path[PATH_MAX + 1]; + char Path[PATH_MAX*2 + 128]; /***** Reset paths. An empty path means that we don't have to create that directory *****/ @@ -2813,9 +2813,12 @@ static void Brw_SetPathFileBrowser (void) Fil_CreateDirIfNotExists (Path); /* Create path to this group */ - sprintf (Gbl.FileBrowser.Priv.PathAboveRootFolder,"%s/%s/%ld", + sprintf (Path,"%s/%s/%ld", Gbl.CurrentCrs.PathPriv,Cfg_FOLDER_GRP, Gbl.CurrentCrs.Grps.GrpCod); + Str_Copy (Gbl.FileBrowser.Priv.PathAboveRootFolder, + Path, + PATH_MAX); break; case Brw_ADMI_ASG_USR: case Brw_ADMI_WRK_USR: @@ -2832,11 +2835,14 @@ static void Brw_SetPathFileBrowser (void) Fil_CreateDirIfNotExists (Path); /* Create path to me */ - sprintf (Gbl.FileBrowser.Priv.PathAboveRootFolder,"%s/%s/%02u/%ld", + sprintf (Path,"%s/%s/%02u/%ld", Gbl.CurrentCrs.PathPriv,Cfg_FOLDER_USR, (unsigned) (Gbl.Usrs.Me.UsrDat.UsrCod % 100), Gbl.Usrs.Me.UsrDat.UsrCod); - break; + Str_Copy (Gbl.FileBrowser.Priv.PathAboveRootFolder, + Path, + PATH_MAX); + break; case Brw_ADMI_ASG_CRS: case Brw_ADMI_WRK_CRS: if (Gbl.Usrs.Other.UsrDat.UsrCod > 0) @@ -2854,10 +2860,13 @@ static void Brw_SetPathFileBrowser (void) Fil_CreateDirIfNotExists (Path); /* Create path to user */ - sprintf (Gbl.FileBrowser.Priv.PathAboveRootFolder,"%s/%s/%02u/%ld", + sprintf (Path,"%s/%s/%02u/%ld", Gbl.CurrentCrs.PathPriv,Cfg_FOLDER_USR, (unsigned) (Gbl.Usrs.Other.UsrDat.UsrCod % 100), Gbl.Usrs.Other.UsrDat.UsrCod); + Str_Copy (Gbl.FileBrowser.Priv.PathAboveRootFolder, + Path, + PATH_MAX); } break; case Brw_ADMI_DOC_PRJ: @@ -2875,10 +2884,13 @@ static void Brw_SetPathFileBrowser (void) Fil_CreateDirIfNotExists (Path); /* Create path to the current project */ - sprintf (Gbl.FileBrowser.Priv.PathAboveRootFolder,"%s/%s/%02u/%ld", + sprintf (Path,"%s/%s/%02u/%ld", Gbl.CurrentCrs.PathPriv,Cfg_FOLDER_PRJ, (unsigned) (Gbl.Prjs.PrjCod % 100), Gbl.Prjs.PrjCod); + Str_Copy (Gbl.FileBrowser.Priv.PathAboveRootFolder, + Path, + PATH_MAX); break; case Brw_ADMI_BRF_USR: Str_Copy (Gbl.FileBrowser.Priv.PathAboveRootFolder, @@ -2893,9 +2905,12 @@ static void Brw_SetPathFileBrowser (void) if (Gbl.FileBrowser.Priv.PathAboveRootFolder[0]) { Fil_CreateDirIfNotExists (Gbl.FileBrowser.Priv.PathAboveRootFolder); - sprintf (Gbl.FileBrowser.Priv.PathRootFolder,"%s/%s", + sprintf (Path,"%s/%s", Gbl.FileBrowser.Priv.PathAboveRootFolder, Brw_RootFolderInternalNames[Gbl.FileBrowser.Type]); + Str_Copy (Gbl.FileBrowser.Priv.PathRootFolder, + Path, + PATH_MAX); Fil_CreateDirIfNotExists (Gbl.FileBrowser.Priv.PathRootFolder); /***** If file browser is for assignments, @@ -2920,7 +2935,7 @@ bool Brw_CheckIfExistsFolderAssigmentForAnyUsr (const char *FolderName) unsigned NumUsrs; unsigned NumUsr; long UsrCod; - char PathFolder[PATH_MAX + 1]; + char PathFolder[PATH_MAX * 2 + 128]; bool FolderExists = false; /***** Get all the users belonging to current course from database *****/ @@ -2967,8 +2982,9 @@ static void Brw_CreateFoldersAssignmentsIfNotExist (long ZoneUsrCod) char Query[1024]; MYSQL_RES *mysql_res; MYSQL_ROW row; - unsigned long NumRows,NumRow; - char PathFolderAsg[PATH_MAX + 1]; + unsigned long NumRows; + unsigned long NumRow; + char PathFolderAsg[PATH_MAX + 1 + PATH_MAX + 1]; /***** Get assignment folders from database *****/ sprintf (Query,"SELECT Folder FROM assignments" @@ -2987,10 +3003,14 @@ static void Brw_CreateFoldersAssignmentsIfNotExist (long ZoneUsrCod) { /* Get next assignment with folder */ row = mysql_fetch_row (mysql_res); - - /* Create folder if not exists */ - sprintf (PathFolderAsg,"%s/%s",Gbl.FileBrowser.Priv.PathRootFolder,row[0]); - Fil_CreateDirIfNotExists (PathFolderAsg); + if (row) + if (row[0]) // Not necessary, because folder name is checked in query to be not empty + { + /* Create folder if not exists */ + sprintf (PathFolderAsg,"%s/%s", + Gbl.FileBrowser.Priv.PathRootFolder,row[0]); + Fil_CreateDirIfNotExists (PathFolderAsg); + } } /***** Free structure that stores the query result *****/ @@ -3016,8 +3036,8 @@ bool Brw_UpdateFoldersAssigmentsIfExistForAllUsrs (const char *OldFolderName,con long UsrCod; char OldPath[PATH_MAX + 1]; char NewPath[PATH_MAX + 1]; - char PathOldFolder[PATH_MAX + 1]; - char PathNewFolder[PATH_MAX + 1]; + char PathOldFolder[PATH_MAX * 2 + 128]; + char PathNewFolder[PATH_MAX * 2 + 128]; bool RenamingIsPossible = true; unsigned NumUsrsError = 0; unsigned NumUsrsSuccess = 0; @@ -3135,7 +3155,7 @@ void Brw_RemoveFoldersAssignmentsIfExistForAllUsrs (const char *FolderName) unsigned NumUsrs; unsigned NumUsr; long UsrCod; - char PathFolder[PATH_MAX + 1]; + char PathFolder[PATH_MAX * 2 + 128]; /***** Get all the users belonging to current course from database *****/ sprintf (Query,"SELECT UsrCod FROM crs_usr WHERE CrsCod=%ld", @@ -4232,7 +4252,7 @@ static void Brw_WriteSubtitleOfFileBrowser (void) extern const char *Txt_accessible_for_reading_and_writing_by_project_members; extern const char *Txt_accessible_for_reading_and_writing_by_project_tutors_and_evaluators; extern const char *Txt_nobody_else_can_access_this_content; - char Subtitle[1024]; + char Subtitle[1024 + Usr_MAX_BYTES_FULL_NAME]; /***** Form to change zone (course and group browsers) *****/ switch (Gbl.FileBrowser.Type) @@ -6034,7 +6054,7 @@ static void Brw_PutIconsRemoveCopyPaste (unsigned Level, static bool Brw_CheckIfCanPasteIn (unsigned Level) { - char PathDstWithFile[PATH_MAX + 1]; + char PathDstWithFile[PATH_MAX + 1 + NAME_MAX + 1]; /***** If not in a folder... *****/ if (Gbl.FileBrowser.FileType != Brw_IS_FOLDER) @@ -6058,9 +6078,12 @@ static bool Brw_CheckIfCanPasteIn (unsigned Level) if (Gbl.FileBrowser.Clipboard.IsThisTree) // We are in the same tree of the clipboard ==> we can paste or not depending on the subtree { /***** Construct the name of the file or folder destination *****/ - sprintf (PathDstWithFile,"%s/%s",Gbl.FileBrowser.Priv.FullPathInTree,Gbl.FileBrowser.Clipboard.FileName); + sprintf (PathDstWithFile,"%s/%s", + Gbl.FileBrowser.Priv.FullPathInTree, + Gbl.FileBrowser.Clipboard.FileName); - return !Str_Path1BeginsByPath2 (PathDstWithFile,Gbl.FileBrowser.Clipboard.Path); + return !Str_Path1BeginsByPath2 (PathDstWithFile, + Gbl.FileBrowser.Clipboard.Path); } return true; // I can paste @@ -7040,7 +7063,7 @@ void Brw_RemFileFromTree (void) { extern const char *Txt_FILE_X_removed; extern const char *Txt_You_can_not_remove_this_file_or_link; - char Path[PATH_MAX + 1]; + char Path[PATH_MAX + 1 + PATH_MAX + 1]; struct stat FileStatus; char FileNameToShow[NAME_MAX + 1]; @@ -7049,7 +7072,9 @@ void Brw_RemFileFromTree (void) if (Brw_CheckIfICanEditFileOrFolder (Gbl.FileBrowser.Level)) // Can I remove this file? { - sprintf (Path,"%s/%s",Gbl.FileBrowser.Priv.PathAboveRootFolder,Gbl.FileBrowser.Priv.FullPathInTree); + sprintf (Path,"%s/%s", + Gbl.FileBrowser.Priv.PathAboveRootFolder, + Gbl.FileBrowser.Priv.FullPathInTree); /***** Check if is a file/link or a folder *****/ if (lstat (Path,&FileStatus)) // On success ==> 0 is returned @@ -7092,7 +7117,7 @@ void Brw_RemFolderFromTree (void) { extern const char *Txt_Folder_X_removed; extern const char *Txt_You_can_not_remove_this_folder; - char Path[PATH_MAX + 1]; + char Path[PATH_MAX + 1 + PATH_MAX + 1]; struct stat FileStatus; /***** Get parameters related to file browser *****/ @@ -7100,7 +7125,9 @@ void Brw_RemFolderFromTree (void) if (Brw_CheckIfICanEditFileOrFolder (Gbl.FileBrowser.Level)) // Can I remove this folder? { - sprintf (Path,"%s/%s",Gbl.FileBrowser.Priv.PathAboveRootFolder,Gbl.FileBrowser.Priv.FullPathInTree); + sprintf (Path,"%s/%s", + Gbl.FileBrowser.Priv.PathAboveRootFolder, + Gbl.FileBrowser.Priv.FullPathInTree); /***** Check if it's a file or a folder *****/ if (lstat (Path,&FileStatus)) // On success ==> 0 is returned @@ -7176,14 +7203,16 @@ static void Brw_PutParamsRemFolder (void) void Brw_RemSubtreeInFileBrowser (void) { extern const char *Txt_Folder_X_and_all_its_contents_removed; - char Path[PATH_MAX + 1]; + char Path[PATH_MAX + 1 + PATH_MAX + 1]; /***** Get parameters related to file browser *****/ Brw_GetParAndInitFileBrowser (); if (Brw_CheckIfICanEditFileOrFolder (Gbl.FileBrowser.Level)) // Can I remove this subtree? { - sprintf (Path,"%s/%s",Gbl.FileBrowser.Priv.PathAboveRootFolder,Gbl.FileBrowser.Priv.FullPathInTree); + sprintf (Path,"%s/%s", + Gbl.FileBrowser.Priv.PathAboveRootFolder, + Gbl.FileBrowser.Priv.FullPathInTree); /***** Remove the whole tree *****/ Fil_RemoveTree (Path); @@ -7294,7 +7323,12 @@ static void Brw_WriteCurrentClipboard (void) struct GroupData GrpDat; struct Project Prj; struct UsrData UsrDat; - char TxtClipboardZone[1024]; + char TxtClipboardZone[1024 + + Hie_MAX_BYTES_SHRT_NAME + + Grp_MAX_BYTES_GROUP_TYPE_NAME + + Grp_MAX_BYTES_GROUP_NAME + + Usr_MAX_BYTES_FULL_NAME + + Prj_MAX_BYTES_PROJECT_TITLE]; char FileNameToShow[NAME_MAX + 1]; const char *TxtFileType[Brw_NUM_FILE_TYPES] = { @@ -8276,7 +8310,7 @@ static void Brw_PasteClipboard (void) struct Course Crs; struct GroupData GrpDat; long PrjCod; - char PathOrg[PATH_MAX + 1]; + char PathOrg[PATH_MAX + NAME_MAX + PATH_MAX + 128]; struct Brw_NumObjects Pasted; long FirstFilCod = -1L; // First file code of the first file or link pasted. Important: initialize here to -1L struct FileMetadata FileMetadata; @@ -8491,8 +8525,8 @@ static bool Brw_PasteTreeIntoFolder (unsigned LevelOrg, char FileNameOrg[NAME_MAX + 1]; char FileNameToShow[NAME_MAX + 1]; char PathInFolderOrg[PATH_MAX + 1]; - char PathDstInTreeWithFile[PATH_MAX + 1]; - char PathDstWithFile[PATH_MAX + 1]; + char PathDstInTreeWithFile[PATH_MAX + 1 + NAME_MAX + 1]; + char PathDstWithFile[PATH_MAX + 1 + PATH_MAX + 1 + NAME_MAX + 1]; struct stat FileStatus; struct dirent **FileList; bool AdminMarks; @@ -8532,7 +8566,9 @@ static bool Brw_PasteTreeIntoFolder (unsigned LevelOrg, sprintf (PathDstInTreeWithFile,"%s/%s",PathDstInTree,FileNameOrg); /***** Construct the relative path of the destination file or folder *****/ - sprintf (PathDstWithFile,"%s/%s",Gbl.FileBrowser.Priv.PathAboveRootFolder,PathDstInTreeWithFile); + sprintf (PathDstWithFile,"%s/%s", + Gbl.FileBrowser.Priv.PathAboveRootFolder, + PathDstInTreeWithFile); /***** Update and check number of levels *****/ // The number of levels is counted starting on the root folder raíz, not included. @@ -9009,8 +9045,8 @@ void Brw_RecFolderFileBrowser (void) extern const char *Txt_Can_not_create_the_folder_X_because_there_is_already_a_folder_or_a_file_with_that_name; extern const char *Txt_The_folder_X_has_been_created_inside_the_folder_Y; extern const char *Txt_You_can_not_create_folders_here; - char Path[PATH_MAX + 1]; - char PathCompleteInTreeIncludingFolder[PATH_MAX + 1]; + char Path[PATH_MAX + 1 + PATH_MAX + 1]; + char PathCompleteInTreeIncludingFolder[PATH_MAX + 1 + NAME_MAX + 1]; char FileNameToShow[NAME_MAX + 1]; /***** Get parameters related to file browser *****/ @@ -9022,7 +9058,9 @@ void Brw_RecFolderFileBrowser (void) if (Str_ConvertFilFolLnkNameToValid (Gbl.FileBrowser.NewFilFolLnkName)) { /* In Gbl.FileBrowser.NewFilFolLnkName is the name of the new folder */ - sprintf (Path,"%s/%s",Gbl.FileBrowser.Priv.PathAboveRootFolder,Gbl.FileBrowser.Priv.FullPathInTree); + sprintf (Path,"%s/%s", + Gbl.FileBrowser.Priv.PathAboveRootFolder, + Gbl.FileBrowser.Priv.FullPathInTree); if (strlen (Path) + 1 + strlen (Gbl.FileBrowser.NewFilFolLnkName) > PATH_MAX) Lay_ShowErrorAndExit ("Path is too long."); @@ -9053,7 +9091,9 @@ void Brw_RecFolderFileBrowser (void) Brw_InsFoldersInPathAndUpdOtherFoldersInExpandedFolders (Gbl.FileBrowser.Priv.FullPathInTree); /* Add entry to the table of files/folders */ - sprintf (PathCompleteInTreeIncludingFolder,"%s/%s",Gbl.FileBrowser.Priv.FullPathInTree,Gbl.FileBrowser.NewFilFolLnkName); + sprintf (PathCompleteInTreeIncludingFolder,"%s/%s", + Gbl.FileBrowser.Priv.FullPathInTree, + Gbl.FileBrowser.NewFilFolLnkName); Brw_AddPathToDB (Gbl.Usrs.Me.UsrDat.UsrCod,Brw_IS_FOLDER, PathCompleteInTreeIncludingFolder,false,Brw_LICENSE_DEFAULT); @@ -9106,10 +9146,10 @@ void Brw_RenFolderFileBrowser (void) extern const char *Txt_The_folder_name_X_has_not_changed; extern const char *Txt_The_folder_name_X_has_not_changed_because_there_is_already_a_folder_or_a_file_with_the_name_Y; extern const char *Txt_You_can_not_rename_this_folder; - char OldPathInTree[PATH_MAX + 1]; - char NewPathInTree[PATH_MAX + 1]; - char OldPath[PATH_MAX + 1]; - char NewPath[PATH_MAX + 1]; + char OldPathInTree[PATH_MAX + 1 + NAME_MAX + 1]; + char NewPathInTree[PATH_MAX + 1 + NAME_MAX + 1]; + char OldPath[PATH_MAX + 1 + PATH_MAX + 1]; + char NewPath[PATH_MAX + 1 + PATH_MAX + 1]; /***** Get parameters related to file browser *****/ Brw_GetParAndInitFileBrowser (); @@ -9121,16 +9161,24 @@ void Brw_RenFolderFileBrowser (void) if (strcmp (Gbl.FileBrowser.FilFolLnkName,Gbl.FileBrowser.NewFilFolLnkName)) // The name has changed { /* Gbl.FileBrowser.FilFolLnkName holds the new name of the folder */ - sprintf (OldPathInTree,"%s/%s",Gbl.FileBrowser.Priv.PathInTreeUntilFilFolLnk,Gbl.FileBrowser.FilFolLnkName); - sprintf (OldPath,"%s/%s",Gbl.FileBrowser.Priv.PathAboveRootFolder,OldPathInTree); + sprintf (OldPathInTree,"%s/%s", + Gbl.FileBrowser.Priv.PathInTreeUntilFilFolLnk, + Gbl.FileBrowser.FilFolLnkName); + sprintf (OldPath,"%s/%s", + Gbl.FileBrowser.Priv.PathAboveRootFolder, + OldPathInTree); /* Gbl.FileBrowser.NewFilFolLnkName holds the new name of the folder */ if (strlen (Gbl.FileBrowser.Priv.PathAboveRootFolder) + 1 + strlen (Gbl.FileBrowser.Priv.PathInTreeUntilFilFolLnk) + 1 + strlen (Gbl.FileBrowser.NewFilFolLnkName) > PATH_MAX) Lay_ShowErrorAndExit ("Path is too long."); - sprintf (NewPathInTree,"%s/%s",Gbl.FileBrowser.Priv.PathInTreeUntilFilFolLnk,Gbl.FileBrowser.NewFilFolLnkName); - sprintf (NewPath,"%s/%s",Gbl.FileBrowser.Priv.PathAboveRootFolder,NewPathInTree); + sprintf (NewPathInTree,"%s/%s", + Gbl.FileBrowser.Priv.PathInTreeUntilFilFolLnk, + Gbl.FileBrowser.NewFilFolLnkName); + sprintf (NewPath,"%s/%s", + Gbl.FileBrowser.Priv.PathAboveRootFolder, + NewPathInTree); /* We should check here that a folder with the same name does not exist. but we leave this work to the system */ @@ -9261,9 +9309,9 @@ static bool Brw_RcvFileInFileBrw (Brw_UploadType_t UploadType) struct Param *Param; char SrcFileName[PATH_MAX + 1]; char PathUntilFileName[PATH_MAX + 1]; - char Path[PATH_MAX + 1]; + char Path[PATH_MAX + 1 + PATH_MAX + 1]; char PathTmp[PATH_MAX + 1]; - char PathCompleteInTreeIncludingFile[PATH_MAX + 1]; + char PathCompleteInTreeIncludingFile[PATH_MAX + 1 + NAME_MAX + 1]; char MIMEType[Brw_MAX_BYTES_MIME_TYPE + 1]; bool AdminMarks; bool FileIsValid = true; @@ -9355,7 +9403,9 @@ static bool Brw_RcvFileInFileBrw (Brw_UploadType_t UploadType) Brw_InsFoldersInPathAndUpdOtherFoldersInExpandedFolders (Gbl.FileBrowser.Priv.FullPathInTree); /* Add entry to the table of files/folders */ - sprintf (PathCompleteInTreeIncludingFile,"%s/%s",Gbl.FileBrowser.Priv.FullPathInTree,Gbl.FileBrowser.NewFilFolLnkName); + sprintf (PathCompleteInTreeIncludingFile,"%s/%s", + Gbl.FileBrowser.Priv.FullPathInTree, + Gbl.FileBrowser.NewFilFolLnkName); FilCod = Brw_AddPathToDB (Gbl.Usrs.Me.UsrDat.UsrCod,Brw_IS_FILE, PathCompleteInTreeIncludingFile,false,Brw_LICENSE_DEFAULT); @@ -9438,9 +9488,9 @@ void Brw_RecLinkFileBrowser (void) size_t LengthURL; char URLUntilLastFilename[PATH_MAX + 1]; char FileName[NAME_MAX + 1]; - char Path[PATH_MAX + 1]; + char Path[PATH_MAX + 1 + PATH_MAX + 1]; FILE *FileURL; - char PathCompleteInTreeIncludingFile[PATH_MAX + 1]; + char PathCompleteInTreeIncludingFile[PATH_MAX + 1 + NAME_MAX + 1]; long FilCod = -1L; // Code of new file in database char FileNameToShow[NAME_MAX + 1]; struct FileMetadata FileMetadata; @@ -9488,7 +9538,9 @@ void Brw_RecLinkFileBrowser (void) if (Str_ConvertFilFolLnkNameToValid (FileName)) // Gbl.Alert.Txt contains feedback text { /* The name of the file with the link will be the FileName.url */ - sprintf (Path,"%s/%s",Gbl.FileBrowser.Priv.PathAboveRootFolder,Gbl.FileBrowser.Priv.FullPathInTree); + sprintf (Path,"%s/%s", + Gbl.FileBrowser.Priv.PathAboveRootFolder, + Gbl.FileBrowser.Priv.FullPathInTree); if (strlen (Path) + 1 + strlen (FileName) + strlen (".url") > PATH_MAX) Lay_ShowErrorAndExit ("Path is too long."); Str_Concat (Path,"/", @@ -9535,7 +9587,9 @@ void Brw_RecLinkFileBrowser (void) Brw_InsFoldersInPathAndUpdOtherFoldersInExpandedFolders (Gbl.FileBrowser.Priv.FullPathInTree); /* Add entry to the table of files/folders */ - sprintf (PathCompleteInTreeIncludingFile,"%s/%s.url",Gbl.FileBrowser.Priv.FullPathInTree,FileName); + sprintf (PathCompleteInTreeIncludingFile,"%s/%s.url", + Gbl.FileBrowser.Priv.FullPathInTree, + FileName); FilCod = Brw_AddPathToDB (Gbl.Usrs.Me.UsrDat.UsrCod,Brw_IS_LINK, PathCompleteInTreeIncludingFile,false,Brw_LICENSE_DEFAULT); @@ -10548,7 +10602,7 @@ static void Brw_WriteSmallLinkToDownloadFile (const char *URL,Brw_FileType_t Fil void Brw_GetLinkToDownloadFile (const char *PathInTree,const char *FileName,char *URL) { - char FullPathIncludingFile[PATH_MAX + 1]; + char FullPathIncludingFile[PATH_MAX + 1 + PATH_MAX + 1 + NAME_MAX + 1]; FILE *FileURL; char URLWithSpaces[PATH_MAX + 1]; @@ -11048,7 +11102,7 @@ void Brw_GetFileMetadataByCod (struct FileMetadata *FileMetadata) bool Brw_GetFileTypeSizeAndDate (struct FileMetadata *FileMetadata) { - char Path[PATH_MAX + 1]; + char Path[PATH_MAX + 1 + PATH_MAX + 1]; struct stat FileStatus; sprintf (Path,"%s/%s",Gbl.FileBrowser.Priv.PathAboveRootFolder, diff --git a/swad_global.c b/swad_global.c index 41fedeed..e7c960b2 100644 --- a/swad_global.c +++ b/swad_global.c @@ -137,12 +137,13 @@ void Gbl_InitializeGlobals (void) Gbl.Prefs.IconSet = Ico_ICON_SET_DEFAULT; // Default icon set sprintf (Gbl.Prefs.IconsURL,"%s/%s", Cfg_URL_SWAD_PUBLIC,Cfg_FOLDER_PUBLIC_ICON); - sprintf (Gbl.Prefs.PathTheme,"%s/%s/%s", - Gbl.Prefs.IconsURL, - Cfg_ICON_FOLDER_THEMES, + sprintf (Gbl.Prefs.PathTheme,"%s/%s/%s/%s", + Cfg_URL_SWAD_PUBLIC,Cfg_FOLDER_PUBLIC_ICON, + Cfg_ICON_FOLDER_THEMES, The_ThemeId[Gbl.Prefs.Theme]); - sprintf (Gbl.Prefs.PathIconSet,"%s/%s/%s", - Gbl.Prefs.IconsURL,Cfg_ICON_FOLDER_ICON_SETS, + sprintf (Gbl.Prefs.PathIconSet,"%s/%s/%s/%s", + Cfg_URL_SWAD_PUBLIC,Cfg_FOLDER_PUBLIC_ICON, + Cfg_ICON_FOLDER_ICON_SETS, Ico_IconSetId[Gbl.Prefs.IconSet]); Gbl.Session.NumSessions = 0; diff --git a/swad_global.h b/swad_global.h index 851b8cca..68f38d91 100644 --- a/swad_global.h +++ b/swad_global.h @@ -121,8 +121,8 @@ struct Globals Act_CONT_DATA (if CONTENT_TYPE==multipart/form-data) */ struct { - char StrWithoutCRLF[Par_MAX_BYTES_BOUNDARY_WITH_CR_LF + 1]; - char StrWithCRLF [Par_MAX_BYTES_BOUNDARY_WITH_CR_LF + 1]; + char StrWithoutCRLF[Par_MAX_BYTES_BOUNDARY_WITHOUT_CR_LF + 1]; + char StrWithCRLF [Par_MAX_BYTES_BOUNDARY_WITH_CR_LF + 1]; size_t LengthWithoutCRLF; size_t LengthWithCRLF; } Boundary; diff --git a/swad_group.c b/swad_group.c index 901466a4..7273c02a 100644 --- a/swad_group.c +++ b/swad_group.c @@ -3808,7 +3808,7 @@ static bool Grp_CheckIfGroupNameExists (long GrpTypCod,const char *GrpName,long static void Grp_CreateGroupType (void) { - char Query[1024]; + char Query[1024 + Grp_MAX_BYTES_GROUP_TYPE_NAME]; /***** Create a new group type *****/ sprintf (Query,"INSERT INTO crs_grp_types" diff --git a/swad_icon.c b/swad_icon.c index bf0e3029..ec402512 100644 --- a/swad_icon.c +++ b/swad_icon.c @@ -125,8 +125,9 @@ void Ico_ChangeIconSet (void) /***** Get param with icon set *****/ Gbl.Prefs.IconSet = Ico_GetParamIconSet (); - sprintf (Gbl.Prefs.PathIconSet,"%s/%s/%s", - Gbl.Prefs.IconsURL,Cfg_ICON_FOLDER_ICON_SETS, + sprintf (Gbl.Prefs.PathIconSet,"%s/%s/%s/%s", + Cfg_URL_SWAD_PUBLIC,Cfg_FOLDER_PUBLIC_ICON, + Cfg_ICON_FOLDER_ICON_SETS, Ico_IconSetId[Gbl.Prefs.IconSet]); /***** Store icon set in database *****/ diff --git a/swad_info.c b/swad_info.c index a7cfea9e..c901988b 100644 --- a/swad_info.c +++ b/swad_info.c @@ -2278,9 +2278,9 @@ void Inf_ReceivePagInfo (void) char SourceFileName[PATH_MAX + 1]; char PathRelDirHTML[PATH_MAX + 1]; char PathRelFileHTML[PATH_MAX + 1]; - char PathRelFileZIP[PATH_MAX + 1]; + char PathRelFileZIP[PATH_MAX + 1 + NAME_MAX + 1]; char MIMEType[Brw_MAX_BYTES_MIME_TYPE + 1]; - char StrUnzip[100 + PATH_MAX * 2 + 1]; + char StrUnzip[128 + PATH_MAX * 2 + 1]; bool WrongType = false; bool FileIsOK = false; diff --git a/swad_mail.c b/swad_mail.c index c28635c8..507573f9 100644 --- a/swad_mail.c +++ b/swad_mail.c @@ -1641,7 +1641,10 @@ bool Mai_SendMailMsgToConfirmEmail (void) extern const char *Txt_If_you_just_request_from_X_the_confirmation_of_your_email_Y_NO_HTML; extern const char *Txt_Confirmation_of_your_email_NO_HTML; extern const char *Txt_There_was_a_problem_sending_an_email_automatically; - char Command[2048]; // Command to execute for sending an email + char Command[2048 + + Cfg_MAX_BYTES_SMTP_PASSWORD + + Cns_MAX_BYTES_EMAIL_ADDRESS + + PATH_MAX]; // Command to execute for sending an email int ReturnCode; /***** Create temporary file for mail content *****/ diff --git a/swad_mark.c b/swad_mark.c index cd1e60af..549a475b 100644 --- a/swad_mark.c +++ b/swad_mark.c @@ -608,7 +608,8 @@ void Mrk_ShowMyMarks (void) char FileNameUsrMarks[PATH_MAX + 1]; FILE *FileUsrMarks; char PathMarksPriv[PATH_MAX + 1]; - char PathPrivate[PATH_MAX + 1]; + char PathPrivate[PATH_MAX + 1 + + PATH_MAX + 1]; struct UsrData *UsrDat; bool UsrIsOK = true; @@ -618,7 +619,9 @@ void Mrk_ShowMyMarks (void) /***** Get the path of the file of marks *****/ Brw_SetFullPathInTree (Gbl.FileBrowser.Priv.PathInTreeUntilFilFolLnk, Gbl.FileBrowser.FilFolLnkName); - sprintf (PathPrivate,"%s/%s",Gbl.FileBrowser.Priv.PathAboveRootFolder,Gbl.FileBrowser.Priv.FullPathInTree); + sprintf (PathPrivate,"%s/%s", + Gbl.FileBrowser.Priv.PathAboveRootFolder, + Gbl.FileBrowser.Priv.FullPathInTree); /***** Get number of rows of header or footer *****/ Mrk_GetNumRowsHeaderAndFooter (&Marks); diff --git a/swad_notification.c b/swad_notification.c index 69db65b0..069303cb 100644 --- a/swad_notification.c +++ b/swad_notification.c @@ -1597,7 +1597,10 @@ static void Ntf_SendPendingNotifByEMailToOneUsr (struct UsrData *ToUsrDat,unsign long Cod; struct Forum ForumSelected; char ForumName[For_MAX_BYTES_FORUM_NAME + 1]; - char Command[2048]; // Command to execute for sending an email + char Command[2048 + + Cfg_MAX_BYTES_SMTP_PASSWORD + + Cns_MAX_BYTES_EMAIL_ADDRESS + + PATH_MAX]; // Command to execute for sending an email int ReturnCode; /***** Return 0 notifications and 0 mails when error *****/ diff --git a/swad_parameter.c b/swad_parameter.c index cd962db4..26e10dc7 100644 --- a/swad_parameter.c +++ b/swad_parameter.c @@ -653,6 +653,9 @@ void Par_GetMainParameters (void) extern const char *Ico_IconSetId[Ico_NUM_ICON_SETS]; long ActCod; char Nickname[Nck_MAX_BYTES_NICKNAME_FROM_FORM + 1]; + char Path[PATH_MAX + 1 + + NAME_MAX + 1 + + NAME_MAX + 2]; char LongStr[1 + 10 + 1]; /***** Reset codes of country, institution, centre, degree and course *****/ @@ -771,7 +774,8 @@ void Par_GetMainParameters (void) case ActFrmLogInUsrAgd: case ActLogInUsrAgd: // This action is necessary here when log in fails Pwd_GetParamUsrPwdLogin (); - // no break; + /* falls through */ + /* no break */ case ActReqSndNewPwd: case ActSndNewPwd: Usr_GetParamUsrIdLogin (); @@ -788,13 +792,17 @@ void Par_GetMainParameters (void) Gbl.Prefs.Theme = The_THEME_DEFAULT; /***** Set path of theme *****/ - sprintf (Gbl.Prefs.PathTheme,"%s/%s/%s", + sprintf (Path,"%s/%s/%s", Gbl.Prefs.IconsURL,Cfg_ICON_FOLDER_THEMES,The_ThemeId[Gbl.Prefs.Theme]); + Str_Copy (Gbl.Prefs.PathTheme,Path, + PATH_MAX); /***** Set path of icon set *****/ - sprintf (Gbl.Prefs.PathIconSet,"%s/%s/%s", + sprintf (Path,"%s/%s/%s", Gbl.Prefs.IconsURL,Cfg_ICON_FOLDER_ICON_SETS, Ico_IconSetId[Gbl.Prefs.IconSet]); + Str_Copy (Gbl.Prefs.PathIconSet,Path, + PATH_MAX); } /***** Get country if exists (from menu) *****/ diff --git a/swad_parameter.h b/swad_parameter.h index 533ca4d9..16f613fe 100644 --- a/swad_parameter.h +++ b/swad_parameter.h @@ -34,7 +34,8 @@ /************************** Public types and constants ***********************/ /*****************************************************************************/ -#define Par_MAX_BYTES_BOUNDARY_WITH_CR_LF (128 - 1) +#define Par_MAX_BYTES_BOUNDARY_WITHOUT_CR_LF (128 - 1) +#define Par_MAX_BYTES_BOUNDARY_WITH_CR_LF (2 + Par_MAX_BYTES_BOUNDARY_WITHOUT_CR_LF) struct StartLength { diff --git a/swad_password.c b/swad_password.c index 9f020bf4..ea9c0de8 100644 --- a/swad_password.c +++ b/swad_password.c @@ -401,7 +401,10 @@ int Pwd_SendNewPasswordByEmail (char NewRandomPlainPassword[Pwd_MAX_BYTES_PLAIN_ { extern const char *Txt_The_following_password_has_been_assigned_to_you_to_log_in_X_NO_HTML; extern const char *Txt_New_password_NO_HTML[1 + Txt_NUM_LANGUAGES]; - char Command[2048]; // Command to execute for sending an email + char Command[2048 + + Cfg_MAX_BYTES_SMTP_PASSWORD + + Cns_MAX_BYTES_EMAIL_ADDRESS + + PATH_MAX]; // Command to execute for sending an email int ReturnCode; /***** Create temporary file for mail content *****/ diff --git a/swad_photo.c b/swad_photo.c index 774671a1..f642c918 100644 --- a/swad_photo.c +++ b/swad_photo.c @@ -2381,7 +2381,7 @@ static void Pho_ShowDegreeAvgPhotoAndStat (struct Degree *Deg, unsigned PhotoHeight; char PathRelAvgPhoto[PATH_MAX + 1]; char PhotoURL[PATH_MAX + 1]; - char PhotoCaption[512]; + char PhotoCaption[1024 + Hie_MAX_BYTES_SHRT_NAME]; bool ShowDegPhoto; char IdCaption[Act_MAX_BYTES_ID]; diff --git a/swad_record.c b/swad_record.c index 2fe1767c..264b8a7f 100644 --- a/swad_record.c +++ b/swad_record.c @@ -3008,6 +3008,7 @@ static void Rec_ShowRole (struct UsrData *UsrDat, case Rol_NET: // Non-editing teacher in current course case Rol_TCH: // Teacher in current course DefaultRoleInForm = UsrDat->Roles.InCurrentCrs.Role; + break; default: // User does not belong to current course /* If there is a request of this user, default role is the requested role */ DefaultRoleInForm = Rol_GetRequestedRole (UsrDat->UsrCod); diff --git a/swad_syllabus.c b/swad_syllabus.c index cf05d9b5..094359b2 100644 --- a/swad_syllabus.c +++ b/swad_syllabus.c @@ -1404,7 +1404,11 @@ void Syl_ModifyItemSyllabus (void) void Syl_BuildPathFileSyllabus (char *PathFile) { - sprintf (PathFile,"%s/%s",Gbl.Syllabus.PathDir,Cfg_SYLLABUS_FILENAME); + char Path[PATH_MAX + 1 + NAME_MAX + 1]; + + sprintf (Path,"%s/%s",Gbl.Syllabus.PathDir,Cfg_SYLLABUS_FILENAME); + Str_Copy (PathFile,Path, + PATH_MAX); } /*****************************************************************************/ diff --git a/swad_tab.c b/swad_tab.c index e1f3050e..a4bf9cbe 100644 --- a/swad_tab.c +++ b/swad_tab.c @@ -358,16 +358,20 @@ void Tab_DisableIncompatibleTabs (void) { case TabSys: Gbl.CurrentCty.Cty.CtyCod = -1L; - // no break + /* falls through */ + /* no break */ case TabCty: Gbl.CurrentIns.Ins.InsCod = -1L; - // no break + /* falls through */ + /* no break */ case TabIns: Gbl.CurrentCtr.Ctr.CtrCod = -1L; - // no break + /* falls through */ + /* no break */ case TabCtr: Gbl.CurrentDeg.Deg.DegCod = -1L; - // no break + /* falls through */ + /* no break */ case TabDeg: Gbl.CurrentCrs.Crs.CrsCod = -1L; break; diff --git a/swad_test.c b/swad_test.c index f8345e65..0ee22209 100644 --- a/swad_test.c +++ b/swad_test.c @@ -5844,7 +5844,8 @@ static void Tst_GetQstFromForm (char *Stem,char *Feedback) case Tst_ANS_MULTIPLE_CHOICE: /* Get shuffle */ Gbl.Test.Shuffle = Par_GetParToBool ("Shuffle"); - // No break + /* falls through */ + /* no break */ case Tst_ANS_TEXT: /* Get the texts of the answers */ for (NumOpt = 0; diff --git a/swad_theme.c b/swad_theme.c index dc08f0dd..30c80d55 100644 --- a/swad_theme.c +++ b/swad_theme.c @@ -284,12 +284,19 @@ static void The_PutIconsTheme (void) void The_ChangeTheme (void) { + char Path[PATH_MAX + 1 + + NAME_MAX + 1 + + NAME_MAX + 1]; char Query[512]; /***** Get param theme *****/ Gbl.Prefs.Theme = The_GetParamTheme (); - sprintf (Gbl.Prefs.PathTheme,"%s/%s/%s", - Gbl.Prefs.IconsURL,Cfg_ICON_FOLDER_THEMES,The_ThemeId[Gbl.Prefs.Theme]); + sprintf (Path,"%s/%s/%s", + Gbl.Prefs.IconsURL, + Cfg_ICON_FOLDER_THEMES, + The_ThemeId[Gbl.Prefs.Theme]); + Str_Copy (Gbl.Prefs.PathTheme,Path, + PATH_MAX); /***** Store theme in database *****/ if (Gbl.Usrs.Me.Logged) diff --git a/swad_timetable.c b/swad_timetable.c index ceb4777f..4e888c2c 100644 --- a/swad_timetable.c +++ b/swad_timetable.c @@ -1003,7 +1003,8 @@ static void TT_FillTimeTableFromDB (long UsrCod) row[5], Grp_MAX_BYTES_GROUP_NAME); TT_TimeTable[Weekday][Interval].Columns[FirstFreeColumn].GrpCod = GrpCod; - // no break; + /* falls through */ + /* no break */ case TT_TUTORING_TIMETABLE: Str_Copy (TT_TimeTable[Weekday][Interval].Columns[FirstFreeColumn].Place, row[3], diff --git a/swad_user.c b/swad_user.c index 086587c7..b7552259 100644 --- a/swad_user.c +++ b/swad_user.c @@ -3157,6 +3157,9 @@ static void Usr_SetMyPrefsAndRoles (void) { extern const char *The_ThemeId[The_NUM_THEMES]; extern const char *Ico_IconSetId[Ico_NUM_ICON_SETS]; + char Path[PATH_MAX + 1 + + NAME_MAX + 1 + + NAME_MAX + 1]; // In this point I am logged @@ -3171,14 +3174,18 @@ static void Usr_SetMyPrefsAndRoles (void) Gbl.Prefs.SideCols = Gbl.Usrs.Me.UsrDat.Prefs.SideCols; Gbl.Prefs.Theme = Gbl.Usrs.Me.UsrDat.Prefs.Theme; - sprintf (Gbl.Prefs.PathTheme,"%s/%s/%s", + sprintf (Path,"%s/%s/%s", Gbl.Prefs.IconsURL,Cfg_ICON_FOLDER_THEMES, The_ThemeId[Gbl.Prefs.Theme]); + Str_Copy (Gbl.Prefs.PathTheme,Path, + PATH_MAX); Gbl.Prefs.IconSet = Gbl.Usrs.Me.UsrDat.Prefs.IconSet; - sprintf (Gbl.Prefs.PathIconSet,"%s/%s/%s", + sprintf (Path,"%s/%s/%s", Gbl.Prefs.IconsURL,Cfg_ICON_FOLDER_ICON_SETS, Ico_IconSetId[Gbl.Prefs.IconSet]); + Str_Copy (Gbl.Prefs.PathIconSet,Path, + PATH_MAX); /***** Construct the path to my directory *****/ Usr_ConstructPathUsr (Gbl.Usrs.Me.UsrDat.UsrCod,Gbl.Usrs.Me.PathDir); diff --git a/swad_zip.c b/swad_zip.c index a21b4a17..09a7e936 100644 --- a/swad_zip.c +++ b/swad_zip.c @@ -157,8 +157,10 @@ void ZIP_CreateZIPAsgWrk (void) extern const char *Txt_works_ZIP_FILE_NAME; struct UsrData UsrDat; const char *Ptr; - char StrZip[100 + PATH_MAX * 2 + 1]; - char Path[PATH_MAX + 1]; + char StrZip[128 + PATH_MAX]; + char Path[PATH_MAX + 1 + + NAME_MAX + 1 + + NAME_MAX + 1]; int Result; char FileNameZIP[NAME_MAX + 1]; char PathFileZIP[PATH_MAX + 1]; @@ -286,7 +288,7 @@ static void ZIP_CreateTmpDirForCompression (void) static void ZIP_CreateDirCompressionUsr (struct UsrData *UsrDat) { char FullNameAndUsrID[NAME_MAX + 1]; - char PathFolderUsrInsideCrs[PATH_MAX + 1]; + char PathFolderUsrInsideCrs[128 + PATH_MAX + NAME_MAX]; char LinkTmpUsr[PATH_MAX + 1]; char Link[PATH_MAX + 1]; unsigned NumTry; @@ -403,9 +405,12 @@ static void ZIP_CompressFolderIntoZIP (void) extern const char *Txt_The_folder_is_empty; extern const char *Txt_The_contents_of_the_folder_are_too_big; unsigned long long UncompressedSize; - char StrZip[100 + PATH_MAX * 2 + 1]; - char Path[PATH_MAX + 1]; - char PathCompression[PATH_MAX + 1]; + char StrZip[128 + PATH_MAX]; + char Path[PATH_MAX + 1 + + PATH_MAX + 1]; + char PathCompression[PATH_MAX + 1 + + NAME_MAX + 1 + + NAME_MAX + 1]; int Result; char FileNameZIP[NAME_MAX + 1]; char PathFileZIP[PATH_MAX + 1];