Project

General

Profile

Actions

Feature #7539

closed

Update bootstrap to latest version 3

Added by Julio Montoya over 8 years ago. Updated over 7 years ago.

Status:
Feature implemented
Priority:
Normal
Assignee:
Category:
Styles, Layout & Accessibility
Target version:
Start date:
20/02/2015
Due date:
% Done:

100%

Estimated time:
Spent time:
Complexity:
Normal
SCRUM pts - complexity:

Description

I think it will make more easily to move from 1.10 to v2 if we do the change in this version.


Files

lista-course.png (94.8 KB) lista-course.png lista de cursos Alex Aragon, 03/03/2015 00:24
grupodebotones.png (16.1 KB) grupodebotones.png Alex Aragon, 11/03/2015 21:51
login.png (30.4 KB) login.png Alex Aragon, 17/03/2015 22:34
search.png (22.7 KB) search.png Alex Aragon, 17/03/2015 23:38
form-perfil.png (8.01 KB) form-perfil.png Alex Aragon, 17/03/2015 23:38
forcontrol.png (23.1 KB) forcontrol.png Alex Aragon, 17/03/2015 23:38
ejercicios.png (9.73 KB) ejercicios.png Alex Aragon, 17/03/2015 23:44
bootstrap-modals.png (121 KB) bootstrap-modals.png Angel Quiroz, 18/03/2015 15:48
social_search.png (31.1 KB) social_search.png Angel Quiroz, 18/03/2015 18:09
busqueda-usuario.png (84.5 KB) busqueda-usuario.png Yannick Warnier, 02/04/2015 23:30
exe-bootstrap.png (50 KB) exe-bootstrap.png Yannick Warnier, 03/04/2015 02:13
exe-result-not-reviewed.png (24.6 KB) exe-result-not-reviewed.png Yannick Warnier, 04/04/2015 03:22
7539-37.png (11.5 KB) 7539-37.png Yannick Warnier, 18/04/2015 03:11
exe-font.png (18.2 KB) exe-font.png Yannick Warnier, 18/04/2015 03:11
pregunta-image.png (211 KB) pregunta-image.png Alex Aragon, 12/05/2015 23:56
chamilo-template-foros.svg (4.3 MB) chamilo-template-foros.svg Alex Aragon, 16/05/2015 01:06
foro-interno.png (267 KB) foro-interno.png Alex Aragon, 20/05/2015 01:10
foro-interno-mensaje.png (347 KB) foro-interno-mensaje.png Alex Aragon, 20/05/2015 01:10
foro-interno-mensaje2.png (76.5 KB) foro-interno-mensaje2.png Yannick Warnier, 20/05/2015 01:24
catalogo.png (271 KB) catalogo.png Alex Aragon, 22/08/2015 01:38
lista-cursos.png (36.5 KB) lista-cursos.png Yannick Warnier, 31/08/2015 12:08
chamilo_sport_red_19.png (113 KB) chamilo_sport_red_19.png Yannick Warnier, 17/09/2015 23:27
delicious_bordeaux_19.png (86.3 KB) delicious_bordeaux_19.png Yannick Warnier, 17/09/2015 23:27
empire_green_19.png (85.4 KB) empire_green_19.png Yannick Warnier, 17/09/2015 23:27
fruity_orange_19.png (85.2 KB) fruity_orange_19.png Yannick Warnier, 17/09/2015 23:27
journal_19.png (102 KB) journal_19.png Yannick Warnier, 17/09/2015 23:27
kiddy_19.png (340 KB) kiddy_19.png Yannick Warnier, 17/09/2015 23:27
medical_19.png (85.4 KB) medical_19.png Yannick Warnier, 17/09/2015 23:27
public_admin_19.png (87 KB) public_admin_19.png Yannick Warnier, 17/09/2015 23:27
readable_19.png (97.3 KB) readable_19.png Yannick Warnier, 17/09/2015 23:27
royal_purple_19.png (90.8 KB) royal_purple_19.png Yannick Warnier, 17/09/2015 23:27
silver_line_19.png (88.4 KB) silver_line_19.png Yannick Warnier, 17/09/2015 23:28
simplex_19.png (83.3 KB) simplex_19.png Yannick Warnier, 17/09/2015 23:28
sober_brown_19.png (89.2 KB) sober_brown_19.png Yannick Warnier, 17/09/2015 23:28
spacelab_19.png (90.2 KB) spacelab_19.png Yannick Warnier, 17/09/2015 23:28
steel_grey_19.png (86.6 KB) steel_grey_19.png Yannick Warnier, 17/09/2015 23:28
tasty_olive_19.png (86.8 KB) tasty_olive_19.png Yannick Warnier, 17/09/2015 23:28
icons.png (121 KB) icons.png José Loguercio, 21/12/2015 20:59
Actions #1

Updated by Yannick Warnier over 8 years ago

this = 1.10.0?

Actions #2

Updated by Julio Montoya over 8 years ago

Yannick Warnier wrote:

this = 1.10.0?

from 1.10 to v2

Yes.

I don't have the option to select 1.10 in Redmine ...

Actions #3

Updated by Yannick Warnier over 8 years ago

  • Project changed from 75 to Chamilo LMS
  • Category set to Styles, Layout & Accessibility
  • Target version set to 1.10.0

That's because you're in the "Design" project. I'll move it to the main one now (although it talks about design, the design project is more to make mock-ups and talk about things that might one day be added to design, but let's say that as soon as it touches stuff related to code, it can be moved to the main one).

Actions #4

Updated by Yannick Warnier over 8 years ago

  • Status changed from Needs more info to Assigned
  • Assignee set to Alex Aragon

Alex, de cuanto tiempo opinas que estaríamos hablando?
Conlleva el riesgo de romper toda la parte de interfaz responsive?

Actions #5

Updated by Alex Aragon over 8 years ago

Para migrar a bootstrap 3, debemos seguir los siguiente parametros establecidos en la documentacion oficial de bootstrap.

Sobre el sistema de grillas

Se a cambiado el llamado de todas las grillas y eliminado muchas clases., en la versión anterior proporcionaban grillas fijas con el .row o el .container, en la versión 3 ya estas clases no tienen estas características de ser fijas(que era una anchura en pixeles), ahora tienen una anchura fluida que permite que el dispositivo se adapte al contenido y no el contenido al dispositivo , entrando con mas firmesa al tema de diseño responsivo

Aquí podemos observar las clases remplazadas en el sistema de grillas.

Sobre la parte móvil

Pero teniendo en cuenta lo siguiente en el aspecto móvil, para bootstrap 3, prioriza que el diseño responsivo del móvil es primero, luego sigue el de tablet y por ultimo el destokp, por eso en la versión 2 de bootstrap primero era el destkop y luego los demás dispositivos, por eso se llamaba en una linea después del bootstrap.css al bootstrap-responsive.css, en la versión 3, el archivo bootstrap-responsive.css ya no existe, fue eliminado y todas las características están dentro del bootstrap.css por tal razón en la migración debemos de replantear el diseño móvil primero antes que el desktop.

Así que si se realiza la migración conlleva a que se rompa la parte móvil, pero sera un tiempo de trabajo con beneficios a futuro.

Sobre los componentes con javascripts.

El marco de las ventanas Modales (Modal) ha cambiado de .modal-header,.modal-body,.modal-footer para .modal-content y .modal-dialog.

También ha cambiado el llamado en javascripts para algunos comportamientos de los tabs, acordeones, modals, así que debemos tener cuidado con la migración, ya que algunas funciones, que usan los componentes de bootstrap 2.0 capaz deja de funcionar.

Sobre los estilos actuales en Chamilo

Se tendrá que redefinir el llamado de las clases según el bootstrap 3, mi idea es hacer una base en main/css/chamilo y luego hacer import en las demás solo para cambiar ciertas apariencias en tanto a color o tipo de letra, se eliminaría un 40% de código css que quedaría obsoleto, tambien debemos definir un css base bien establecido ejemplo baseunica.css ya que ahora existe base.css y base_chamilo.css que al parecer cargan doble llamadas de css, deberiamos integrarla en una sola.

Sobre los archivos PHP en chamilo

Al parece bootstrap fue colocado antes del sistema de plantillas TWIG ya que la mayoría del html y código css esta introducido dentro de las librerías que se encuentran en main/inc, y algunos llamados de elementos de formulario también tienen clases tipo span4, span3, etc

.span1 => aprox 99 elementos
.span2 => aprox 32 elementos
.span3 => aprox 57 elementos
.span4 => aprox 52 elementos
.span5 => aprox 36 elementos
.span6 => aprox 51 elementos
.span7 => aprox 6 elementos
.span8 => aprox 16 elementos
.span9 => aprox 58 elementos
.span10 => aprox 2 elementos
.span11 = aprox 11 elementos
.span12 => aprox 45 elementos.
.row-fluid = > aprox 19 elementos
.container => aprox 21 elementos
.btn = > aprox 450 elementos.

Luego están los modals, acordiones que se usan en algunas vistas en Chamilo.

Viendo estos detalles documentados anteriormente puedo calcular que me tomara un buen tiempo aprox una semana a full para tener una versión estable con bootstrap 3 ya que la parte movil se va a romper si o si, luego verificar si no se rompe un comportamiento en JS.

Esto nos servira de guia para la migracion en http://www.bootply.com/bootstrap-3-migration-guide

Actions #6

Updated by Julio Montoya over 8 years ago

De todas maneras este salto se tiene que hacer, mejor hacerlo ahora que en una version posterior.
Lo mas importante es cambiar los templates y el resto se puede arreglar mientras avanzamos.

Actions #8

Updated by Alex Aragon over 8 years ago

Eh empezado con la migración, los avances en mi rama, actualmente voy por el index y userportal.php

[[https://github.com/aragonc/chamilo-lms/tree/bootstrap]]

Actions #9

Updated by Julio Montoya over 8 years ago

Alex Aragon wrote:

Eh empezado con la migración, los avances en mi rama, actualmente voy por el index y userportal.php

[[https://github.com/aragonc/chamilo-lms/tree/bootstrap]]

Recomiendo hacer un PR a la rama 1.10.x para poder revisar/comentar poco a poco el avance.

Actions #10

Updated by Alex Aragon over 8 years ago

Acabo de enviar un PR, para comentarios de cambios, aun hay partes rotas, por ejemplo en Agenda el Full Calendar dejo de funcionar, capaz es un error de compatibilidad con el jquery.min.js que actualice para el bootstrap 3, no se si te tendra que actualizar el full calendar a su versión 2.

https://github.com/chamilo/chamilo-lms/pull/548

Actions #11

Updated by Alex Aragon over 8 years ago

He enviado el segundo PR la cual soluciones varios errores de visualización en el user-portal, course home, course description, entre otros.

Actions #12

Updated by Alex Aragon over 8 years ago

Hola Julio.

En los grupos de botones (con $form->addGroup()) no me funciona agregar las funciones por ejemplo $form->addButtonSave(get_lang('SaveSettings')); para cambiar los iconos por defecto.

También quisiera saber si ahora los formularios deben ser creados a través de edición de TPLs (en varios casos requieren una mejor presentación) o seguimos usando FormValidator (lo cual no permite fácilmente reorganizar los elementos), o si se puede plantear ambos casos? Existe algún ejemplo de mezcla entre TPLs y FormValidator?

Saludos

Actions #13

Updated by Yannick Warnier over 8 years ago

(Comentario anterior modificado por mi para obtener más datos)

Actions #14

Updated by Julio Montoya over 8 years ago

Acabo de hacer unas correcciones para que funcione de esta manera:

$group = [
            $form_change->addButtonSave(get_lang('SaveSettings'), 'save', true),
            $form_change->addButtonPreview(get_lang('Preview'), 'preview', true),
            $form_change->addButtonDownload(get_lang('Download'), 'download', true)
];
$form_change->addGroup($group);
Actions #15

Updated by Julio Montoya over 8 years ago

  • Status changed from Assigned to Needs more info
  • Assignee changed from Julio Montoya to Alex Aragon
  • % Done changed from 0 to 50

Para la creación de formularios tenemos que usar FormValidator.
Que tipos de formularios deseas agregar? Actualmente funciona los 2 estilos por default de bootstrap: "inline" y "horizontal".

Para utilizar el "inline" se usa algo asi:

$form = new FormValidator('search_simple', 'get', '', '', array(), FormValidator::LAYOUT_INLINE);
$form->addElement('text', 'keyword', null);
$form->addButtonSearch(get_lang('SearchCourse'));
Actions #16

Updated by Angel Quiroz over 8 years ago

Envié PR a Alex para el slider de anuncios de la plataforma
https://github.com/aragonc/chamilo-lms/pull/11

Actions #17

Updated by Alex Aragon over 8 years ago

Estimado Julio.

Al parecer tus últimos commit modifico la forma de la estructura de los formularios en FormValidator actualmente, esto provoco que se rompiera el orden de algunas secciones incluyendo el Login que es la 4 vez que sucede esto. Adjunto Captura.

Al parecer todos los text han sido afectados bruscamente con el ultimo cambio, eh solucionado el login cambiando el addElement('text') por un addElement('input').

Adjunto las capturas.


Imagino que otros search esta igual


En la parte label de los campos colapsan por eso el texto se entre 2 lineas, aca esta de más el campo extra de <col-sm-2> que queda vacio del form


creo que esto tiene que ver con el class form-control.

Tambien estoy observando que dentro de creación de ejercicios esta desordenado "por decir las etiquetas entre form-group y col-sm-8, etc", será posible de armar una estructura adecuada
para los formularios, usando la estructura base de Bootstrap 3 (que a cambiado con respecto ah bootstrap 2) Adjunto el Link, para asi evitar que *al usar FormValidator sea un dolor de cabeza.*a

Sugiero que se haga presentaciones de formularios en 2 columnas, 3 y 4 columnas según el cado en ejercicios presentamos 4 columnas y el campus texto fue afectado.

adjunto links [[http://getbootstrap.com/css/#forms]] de estructura de formularios en Bootstrap 3

Actions #18

Updated by Alex Aragon over 8 years ago

  • Assignee changed from Alex Aragon to Julio Montoya
Actions #21

Updated by Alex Aragon over 8 years ago

  • Priority changed from Normal to Immediate
Actions #22

Updated by Alex Aragon over 8 years ago

  • Priority changed from Immediate to Urgent
Actions #23

Updated by Julio Montoya over 8 years ago

  • Status changed from Needs more info to Assigned
  • Priority changed from Urgent to Normal
Actions #24

Updated by Julio Montoya over 8 years ago

Acabo de agregar un nuevo layout "box" (special para el login) para la clase FormValidator.

El login ahora queda asi:


$form = new FormValidator(
            'formLogin',
            'POST',
            null,
            null,
            null,
            FormValidator::LAYOUT_BOX_NO_LABEL
        );

        $form->addText(
            'login',
            get_lang('UserName'),
            true,
            array('id' => 'login', 'autofocus' => 'autofocus', 'icon' => 'user')
        );

        $form->addElement(
            'password',
            'password',
            get_lang('Pass'),
            array('id' => 'password', 'icon' => 'lock')
        );

Donde "'icon' => 'lock'" es tomado en cuenta para mostrar el icono al lado del input.

Estoy corrigiendo los formularios de los ejercicios.

Ha sucedido 4 veces pues siempre he indicado no poner código HTML en los formularios.
Es normal que se rompan cosas que no están integradas en FormValidator mediante templates.

Actions #25

Updated by Angel Quiroz over 8 years ago

Los modals de Bootstrap están rotos
No funcionan los eventos para cerrar el modal con ESC o click

Actions #26

Updated by Julio Montoya over 8 years ago

Angel Quiroz wrote:

Los modals de Bootstrap están rotos
No funcionan los eventos para cerrar el modal con ESC o click

Se ve opaco por el 'default.css'

.modal-backdrop.in {
opacity: 0.5;
filter: alpha(opacity=50);
}

Si me funciona el ESC.

Es necesario tener el portal en modo "test" para que actualice a cada vez la "cache".

Actions #27

Updated by Angel Quiroz over 8 years ago

Julio Montoya wrote:

Angel Quiroz wrote:

Los modals de Bootstrap están rotos
No funcionan los eventos para cerrar el modal con ESC o click

Se ve opaco por el 'default.css'

[...]

Si me funciona el ESC.

Es necesario tener el portal en modo "test" para que actualice a cada vez la "cache".

Creo que el problema viene porque el backdrop aparece donde no debería. Se agrega directamente al body, pero debería estar dentro del mismo dialog.

También me funcionaba el ESC, pero hice Ctrl+F5 y dejo de funcionar

Actions #28

Updated by Angel Quiroz over 8 years ago

El tpl de buscar usuarios/grupos en la red social, se ve raro

Actions #29

Updated by Julio Montoya over 8 years ago

Angel Quiroz wrote:

El tpl de buscar usuarios/grupos en la red social, se ve raro

Claro, pues no usa FormValidator. Lo reviso.

Actions #30

Updated by Yannick Warnier over 8 years ago

Alex, la parte avance temático que aparece en la parte superior de la página principal del curso quedó completamente rota.

Actions #31

Updated by Yannick Warnier over 8 years ago

Julio, no te olvides revisar el buscador de la red social. Adjunto otra imagen (lo mismo que Angel, más o menos)

Actions #32

Updated by Yannick Warnier over 8 years ago

Esto es para Alex y es más urgente que los otros arreglos: en la página de resultados de ejercicios, se ve horrendo ahora. Adjunto captura.

Actions #33

Updated by Yannick Warnier over 8 years ago

  • % Done changed from 50 to 70

Subo un poco el progreso aquí porque pienso que no refleja la realidad...

Actions #34

Updated by Yannick Warnier over 8 years ago

Adjunto otra captura de resultados de ejercicios: para una pregunta abierta no corregida todavía, aparece "No se ha revisado" y pasa de la zona y se muestra por debajo.

Actions #35

Updated by Julio Montoya over 8 years ago

Yannick Warnier wrote:

Julio, no te olvides revisar el buscador de la red social. Adjunto otra imagen (lo mismo que Angel, más o menos)

He corregido esa interfaz en mi rama 1.10.x.doctrine

Actions #36

Updated by Julio Montoya over 8 years ago

  • Status changed from Assigned to Needs more info
  • Assignee deleted (Julio Montoya)
Actions #37

Updated by Yannick Warnier over 8 years ago

  • Status changed from Needs more info to Assigned
  • Assignee set to Alex Aragon

Alex should be retaking this task today. There's still a lot to be done.

Updated by Yannick Warnier over 8 years ago

  • Si incluyo un audio de 100px de alto como primer contenido en el texto de pregunta, aparece super feo:

  • Los textos de las barras de puntaje siguen apareciendo feo.
  • La descripción del ejercicio ya no aparece en la barra desplegable.
  • La fuente de caracteres en ckeditor es distinta de la del título de la pregunta en la edición de preguntas
Actions #39

Updated by Alex Aragon over 8 years ago

Se retoco un poco la presentación en esta sección

Actions #41

Updated by Yannick Warnier over 8 years ago

En la herramienta de documentos, al subir un vídeo en FLV, el player aparece un poco roto.

Updated by Alex Aragon over 8 years ago

Adjunto diseño para interior de mensaje del foro.

Mensajes

Actions #43

Updated by Yannick Warnier over 8 years ago

Está bien peeeero...
  • para la interna, el texto de fecha de quien lo envió y cuando no me parece relevante. Lo pondría en un triangulito desplegable a la derecha (o izquierda) del título de la respuesta (como se ve en mi observación en la imagen)
  • los botones "responder" y "citar" parecen estar engañosamente por encima del fin del texto de la respuesta. Imagino que esto es por imaginarlo sin ponerle mucha atención, y que en realidad van a tener que pasar por debajo de "la línea" (ver imagen modificada, segundo mensaje).

Lo demás está bien.

Actions #44

Updated by Yannick Warnier about 8 years ago

This work is still ongoing and it is likely it will continue after 1.10.0. We have reached an almost-acceptable situation, visually. I'm not closing the task for now, but this is reaching completion in what concerns 1.10.0

Actions #45

Updated by Alex Aragon about 8 years ago

new catalog of courses in Chamilo.

Enviado mi PR a https://github.com/chamilo/chamilo-lms/pull/812

Actions #46

Updated by Yannick Warnier about 8 years ago

Aunque haya una ligera mejora en las listas chzn-select en la lista de cursos, sigue apareciendo así:

Debería aparecer con el espacio suficiente para digitar unos 8 caracteres por lo menos (igual en la lista de sesiones).

El botón de búsqueda avanzada no debería estar con degradé.
El botón de bajo del icono de creación de curso no debería ser un botón: el icono solo funcionaba muy bien en esta parte.

Estoy hablando del PR: https://github.com/chamilo/chamilo-lms/pull/813

Por favor revisar antes de que lo apruebe.

Updated by Yannick Warnier about 8 years ago

Changes in CSS folders:
  • chamilo_blue must be named chamilo_electric_blue
  • chamilo_sport_red is missing (rojo + negro)
  • delicious_bordeaux is missing (vino tinto)
  • empire_green is missing (verde emperio)
  • fruity_orange is missing
  • journal is missing
  • kiddy is missing
  • medical is missing
  • public_admin is missing (serio, como para un ministerio - fondo azul profundo)
  • readable is missing (otra fuente más "blog")
  • royal_purple is missing (morado real)
  • silver_line is missing (gris plata)
  • simplex is missing (algo simple)
  • sober_brown is missing (marón sobre)
  • spacelab is missing (laboratorio del espacio!? - cambia la fuente, mayormente, sobre fondo blanco)
  • steel_grey is missing (gris acero)
  • tasty_olive is missing (aceituna sabrosa)
Actions #49

Updated by Alex Aragon almost 8 years ago

chamilo_blue must be named chamilo_electric_blue Renombrado
chamilo_sport_red is missing (rojo + negro) enviado en mi ultimo PR
delicious_bordeaux is missing (vino tinto) enviado en mi ultimo PR
empire_green is missing (verde emperio) enviado en mi ultimo PR
fruity_orange is missing enviado en mi ultimo PR
journal is missing enviado en mi ultimo PR

readable is missing (otra fuente más "blog")
royal_purple is missing (morado real)
silver_line is missing (gris plata)
simplex is missing (algo simple)

Actions #50

Updated by Yannick Warnier almost 8 years ago

Excellent, only 4 left to go!

  • sober_brown is missing (marón sobre)
  • spacelab is missing (laboratorio del espacio!? - cambia la fuente, mayormente, sobre fondo blanco)
  • steel_grey is missing (gris acero)
  • tasty_olive is missing (aceituna sabrosa)
Actions #51

Updated by Yannick Warnier almost 8 years ago

Got it. I'm leaving the task open a bit more for the generical styles fix, but otherwise everything is good in terms of re-built CSS styles.

Actions #52

Updated by Yannick Warnier almost 8 years ago

  • Status changed from Assigned to Needs testing
  • % Done changed from 70 to 90
Actions #53

Updated by Alex Aragon almost 8 years ago

  • Status changed from Needs testing to Assigned
  • % Done changed from 90 to 70

CSS enviados.

sober_brown is missing (marón sobre)
spacelab is missing (laboratorio del espacio!? - cambia la fuente, mayormente, sobre fondo blanco)
steel_grey is missing (gris acero)
tasty_olive is missing (aceituna sabrosa)

Tambien envie una correciones con respecto al header en moviles.

Actions #54

Updated by Yannick Warnier almost 8 years ago

  • Status changed from Assigned to Feature implemented
  • % Done changed from 70 to 100

Feature mostly implemented. Details are in other tasks.
Woohooo!

Actions #55

Updated by José Loguercio over 7 years ago

Some bug with icons in course list and courses notifications too, in production mode

Actions

Also available in: Atom PDF