Chamilo-lms: actualizar y migrar jqGrid + soporte de Bootstrap a yarn

Created on 12 Feb 2019  Â·  29Comments  Â·  Source: chamilo/chamilo-lms

Tu solicitud está relacionado con alguna molestia? Describe...
Me siento molesto porque el JqGrid es antiguito y feito, por eso hay que migrarlo a su versión más reciente con soporte para Bootstrap 4 indicado en esta web. esto es para la versión Chamilo 2

https://gijgo.com/grid/demos/jquery-grid-bootstrap

Describe la solución que te gustaría encontrar
Migrar JqGrid

Contexto adicional
Nada más.. Gracias

InstalUpgrade Requires testinvalidation

All 29 comments

Lo de feito, se puede mejorar los CSS no?
Lo de antiguo se resuelve mejorando el aspecto visual.

Me referia a quitarlo del main/inc/javascripts al webpack también y que soporte bootstrap y que sea responsive

La útlima versión de jqGrid soporta Bootstrap 4 pero parece que la licencia ahora cambio a CC non-comercial por lo que no podremos seguir usándola en Chamilo.

jqGrid no está siendo actualizado, dudo que exista una versión para webpack.
Como no está siendo soportado no existe soporte para bootstrap, menos lo de responsive.
Pero todo eso se puede mejorar via CSS, por lo menos en la apariencia.

no es open source ...

Actualmente este es su licencia http://guriddo.net/?page_id=103334 (Dice sin fines de lucro)

No es open source.

Y si usamos DataTable para los filtros que necesitan en las sesiones? https://datatables.net/examples/api/regex.html

Sí, la versión que tiene ahora chamilo 4.6.0 no es MIT / GPL
Pero la última versión 5.3.2 es CC

Enfocados en soluciones, chicos.
Queremos algo más bonito para la tabla? Sí
Necesitamos absolutamente que sea Open Source y compatible con GPLv3? Sí (las librerías que no lo sean ni siquiera deberían llegar en nuestro historial Git!)
Necesitamos que la solución final permita buscar sobre campos extra field de sesiones? Sí
Necesitamos que sea jqGrid o similar? No necesariamente
Podemos desarrollar un mecanismo en JS que nos permita lanzar filtros para actualizar una tabla HTML? Creo que sí
En este caso, podríamos usar el mismo mecanismo de tablas que en otros lados, pero simplemente usar un pequeño mecanismo de filtro JS adicional? Creo que sí

Entonces concluyo que si no nos funciona jqgrid para todo esto, podemos simplemente ir en la dirección de usar una tabla "normal" (la misma que usamos en lista de cursos y lista de usuarios) y simplemente hackearla un poco para que se pueda refrescar por AJAX en base a una serie de parámetros de filtro.

Esta es la versión Free Actual han echo un fork del otro proyecto anterior https://github.com/free-jqgrid/jqGrid/tree/v4.15.5 con soporte a Bootstrap 4

Utilizar ese fork me parece mucho más razonable que reescribir todo a otra librería, bien @aragonc ! :)

Desde el punto de visual, free-jqgrid no se ve mejor que el jqgrid que tenemos ahora (estándo configurado con Bootrap).
Las letras siguen pequeñas. Y no es responsive.

Se ve así, en local
imagen

Y @aragonc tendrías que cambiar mucho css

Estoy viendo como configurarlo con webpack y que cargue los archivos de traducción dinámicamente.

La pregunta es si se puede mejorar/contribuir para hacerlo mejor en upstream y no solo para nosotros, cosa que podamos ser varios en aprovecharlo. @aragonc tiene las competencias para hacerlo responsive y hacer que la letra sea configurable. Quizás el autor original no.

@AngelFQC no faltará algún css? :disappointed:

@jmontoyaa No, tiene (más o menos) la misma hoja de estilos de jqGrid. Su soporte de bootstrap no es usando exclusivamente los estilos de bootstrap, sino que hace mezcla de jquery ui con bootstrap

Este es el ejemplo https://jsfiddle.net/OlegKi/07ousnfk/

free-jqGrid usa las clases de font-awesome 4, por lo que no se ven algunos íconos, ya que en chamilo se usa font-awesome 5

He clonado el repositorio en https://github.com/chamilo/jqGrid
Como tenemos este problema de los iconos, el problema de los idiomas y el problema del CSS, creo que vale la pena tener nuestro fork y poder hacer unos releases. Luego mandaremos los cambios como un PR al proyecto principal, pero por ahora quiero que puedan avanzar con esto.

Falsa alarma para FA5, sí lo soporta :sweat_smile: (Pero es una integración, parcial o algo así)
Estoy enviando el PR #2819 para ir cambiando cada lugar en donde se use jqgrid. Por ahora cambié session_list.php
Y por ahora estoy haciendo los cambios del fork de jqGrid en la rama bs4 https://github.com/chamilo/jqGrid/tree/bs4/

imagen
Falta corregir lo de mostrar HTML también

frree
Sigue saliendo error

Ahora

imagen

imagen

imagen

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.

@AngelFQC cual es el status de esto? Fue incorporado en 1.11? en master? Falta algo?

@AngelFQC cual es el status de esto? Fue incorporado en 1.11? en master? Falta algo?

Está en master, pero Julio estuvo cambiando a las tablas de bootstrap-vue.

free-jqgrid será usado para las tablas de 1.11.x que usan jqgrid

Lo de bootstrap-vue es solo para la parte de los Resources en documentos

Entonces supongo que puedo cerrarla :smile_cat:

Was this page helpful?
0 / 5 - 0 ratings

Related issues

jderriks picture jderriks  Â·  8Comments

sjcqs picture sjcqs  Â·  6Comments

AngelFQC picture AngelFQC  Â·  5Comments

AulaBit picture AulaBit  Â·  6Comments

ywarnier picture ywarnier  Â·  3Comments