Cuando creé la primera versión de bookgame.me me di cuenta de lo doloroso que es perder un texto que te ha llevado un buen rato escribir. Es por ello que me propuse crear un sistema robusto para evitar que alguien pueda perder el trabajo de forma accidental. Esto podría ocurrir por varios motivos:
- El escritor se pone a escribir. Se va del ordenador sin guardar. Vuelve al cabo de un rato y ha caducado la sesión. Por tanto, no puede guardar lo que ya ha hecho y tiene delante de sus narices.
- Hay un error en el sistema y no deja guardar en un momento determinado.
Para evitar este problema hice dos cosas:
- Autoguardado cada vez que modificas un nodo o un enlace. Por tanto no hace falta pulsar el botón verde de arriba a la derecha. Os habréis dado cuenta ya que aparece arriba a la derecha un texto de Guardando… que desaparece al segundo.
- Cada vez que se guarda, que quede también un histórico con la versión anterior del capítulo.
- Alertar al usuario cada vez que haya caducado la sesión para que guarde lo que tiene delante de la pantalla en ese momento.
Hasta ahora he ido guardando históricos de los librojuegos cada vez que alguien modificaba uno. Pero los usuarios no tenías forma de ver la versión anterior. He añadido una opción para poder ver la versión anterior de una página. De esta forma, si en algún momento necesitáis recuperar el texto de la página, lo podréis hacer fácilmente. Las otra opciones de la página (objetos ganados, perdidos, etc.) también están guardados. Pero tengo que crear la funcionalidad para poder restablecer un capítulo entero de golpe. Lo que he hecho de momento es un poco rudimentario, pero funciona:
Y ya puestos, he añadido una opción para que os podáis descargar la última versión del capítulo. Está en formato JSON, que es como se guardan los capítulos, con todos los parámetros, en base de datos.