pedroblanco / gift-editor Goto Github PK
View Code? Open in Web Editor NEWWeb based editor for Moodle's GIFT format
Web based editor for Moodle's GIFT format
Un título vacío en la lista de preguntas fastidia el formato de la zona inferior.
Al mostrar una pregunta de verdadero/falso en el acordeón, corregir la posibilidad de seleccionar los botones de radio (hacer inmutables si no estamos editándolos).
Al añadir una pregunta de un tipo manualmente después de la primera se duplican las preguntas.
Añadir la opción de eliminar una pregunta (con mensaje de confirmación).
Añadir un botón a la cabecera de la pregunta.
Hay que mostrar los comentarios de cada pregunta al mostrar todo su contenido.
Al eliminar una pregunta añadida manualmente, no se muestra correctamente la información de acordeón vacío.
Hay que decidir el diseño que el interfaz va a tener. Por ahora vamos a utilizar 3 paneles/columnas (de izquierda a derecha):
El diseño horizontal podría estar dividido en varias franjas que ocupen todo el ancho de la ventana:
Añadir mensajes de información a las zonas que todavía no tienen contenido pero que van a tenerlo.
Comprobar si pieden existir preguntas de multi-respuestas en posiciones diferentes a la final
Unificar/Corregir nombres CSS para usar o guiones (favorecido por jQuery) o guiones bajos.
Hay que activar una de los dos botones como opción por defecto en el diálogo de eliminar pregunta (debería ser confirmar eliminación, no?).
Hay que estudiar el tipo de operaciones que se pueden aplicar sobre todas las preguntas.
El parser debería convertir los '\n' en el texto de la pregunta (y puede que en más sitios) por ' '.
Añadir botón/widget de marca de selección, para seleccionar varias preguntas hacer operaciones masivas sobre el conjunto seleccionado (o no seleccionado).
Posible problema en la librería bootstrap-validator al definir la función principal como:
+function
Tal vez hay que cambiarla en la portabilidad a gift-app-1
Igualar las altura de los paneles mediante el ejemplo final de ecualizar divs en http://api.jquery.com/map/
Aprender del interfaz de Waffle en cosas como las textareas que sólo muestran el borde cuando tienen el foco, el uso del título entero como handle de draggable, ...
Añadir la posibilidad (mediante un botón) para subir/importar un archivo y trabajar con él.
Mostrar la información de relleno cuando una zona de de trabajo quede vacía (p.e. el acordeón de preguntas) no debe hacerse con toggle, sino con show y hide, para ejecutarlos cuando realmente queda vacía esa sección y cuando le entra contenido, respectivamente.
Hay que estudiar el orden de tabulado de campos al añadir o editar preguntas, pues ahora mismo tras los campos el siguiente botón es cancelar y no aceptar.
Hay que decidir si se van a mostrar todas las preguntas (resaltando que son todas) o por categorías (se supone que una pregunta sólo pertenece a una categoría).
Hay que estudiar cómo (si) vamos a gestionar las diferentes categorías.
En un primer momento, si vamos a trabajar con archivos individuales, podríamos considerarlos de la misma categoría y no hacer nada más.
En caso de que dentro del archivo se definan varias categorías tal vez sí que deberíamos poder gestionar esas categorías.
Añadir tipos de pregunta:
El resaltado por validación incorrecta en las preguntas de huecos se aplica a varios campos.
Hay que separar los campos en sus propios div (mirar documentación del validador) para que sólo ellos se resalten.
Añadir handle para mover las preguntas (cruz de flechas) en vez de usar el indicador de estado del elemento de acordeón.
Hacer el textarea de entrada de GIFT no resizable (horizontalmente) para que no sobrelape los demás elementos.
Al editar la pregunta de rellenar hueco inicial, cambia de tipo a final.
Podemos utilizar el menú superior para añadir de forma rápida ejemplos y configurar el comportamiento de ciertas acciones (p.e. si la conversión entre GIFT y preguntas sobrescriben el destino o se añaden al final, tanto en un sentido como en el otro).
Estudiar en qué contextos tienen sentido y cómo se podrían implementar las operaciones deshacer y rehacer
Una vez hayamos terminado de definir/editar/ordenar/... las preguntas, deberíamos poder convertirlas a GIFT (texto mostrado y/o enlace de descarga).
Añadir un enlace para descargar el archivo generado.
Ver cómo PEG-parser crea un enlace con el archivo en data:... por si nos fuera útil, aunque no creo que funcione en gift-app-1.
Se deben poder ocultar las columnas laterales en caso de no necesitar usarlas.
Al añadir una pregunta vendría bien mostrar una previsualización de como quedaría la pregunta con los datos introducidos.
Al crear o modificar una pregunta de forma gráfica, deberíamos crear/actualizar un campo interno que contenga el texto GIFT de esa pregunta, para poder mostrarlo de forma individual y que sea más sencilla la exportación a GIFT.
Se deben poder añadir preguntas de diferentes tipos al conjunto actual de preguntas.
Al añadir una pregunta hay que comprobar que los campo requeridos están rellenos.
El textarea del editor GIFT que usamos como origen de las preguntas debería recibir el resultado de la operación convertir a GIFT.
El resultado podría ser sustituir el contenido o añadirlo, para poder ir añadiendo preguntas al final, aunque si no podemos reconocer las preguntas existentes mejor no añadir y sí sustituir.
Comprobar volcado de preguntas a GIFT.
Ahora mismo la descripción del proyecto en README.md de github está vacía, por lo que habría que poner algo.
Botón para limpiar/eliminar la lista de preguntas (mediante botón desplegable: todas o sólo las seleccionadas - ver #17 -).
El actual parser de GIFT (v4) necesita que haya 3 retornos de carro (2 líneas en blanco) al final del texto GIFT a parsear, por lo que hay que asegurarse que de corregir el final del texto GIFT introducido (especialmente mediante el cuadro de texto, pero también el archivo subido) para añadir las líneas necesarias.
Otra posibilidad es mejorar el parser para que coja correctamente el final del texto, pero por ahora es más sencillo hacerlo en el cliente.
Estudiar si la edición de los atributos de las preguntas se hace inline o mediante un diálogo (si es inline no es necesario botón si hacemos que todos los campos sean editables estilo waffle).
Como reutilizamos los diálogos modales para añadir preguntas del mismo tipo, debemos limpiar los campos cada vez que abrimos un modal de este tipo.
Al mostrar el diálogo modal de añadir pregunta, hay que poner el foco en el primer campo.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.