You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Reemplazar el botón "Descargar" del editor por un botón compartir. Esto abre un modal.
El modal muestra el viejo botón descargar y un link con un botoncito de "copiar link" que copia el link al portapapeles.
Al abrirse el modal, se debe generar automáticamente el link de la siguiente forma: Pegarle al back diciendo que guarde el desafío. El back devuelve un OK con el nuevo ID. El link se forma concatenando urlDeLaApp/#/desafio/ID. Si estoy en Electron la URL de la app tiene que ser la página de Pilas Bloques de prod.
Si algo funcionó mal por cualquier otra razón, en lugar del label con el link y el botón, debe mostrarse un cartelito diciendo "no se puede generar el link para compartir. Por favor intentá de nuevo. Recordá que debés tener conexión a internet para hacerlo"
Hacer la ruta desafio/:id donde el id es el id para traerse el challenge del backend. (Ver Rutas)
Puede ser distinta la ruta, pero estaría bueno que todas las rutas para usar sean /desafío/. Puede ser por ejemplo desafio/guardado/:id.
tests (test de la generación de ID, test de cuando no hay internet, si hay ifs en las rutas, test de esto)
Endpoint userChallenge que con POST recibe el challenge, genera ID no existente en la base, y lo devuelve. Estaría copado generar IDs relativamente cortos, parecido al algoritmo de generación de meets de google meet, donde los ID tienen siempre un formato asociado.
Endpoint userChallenge/:id que con un GET busca y devuelve el challenge indicado.
Tests!
Pensando en como editar un desafio guardado
Si se importa un desafio desde un archivo, el desafio es nuevo (una nueva url).
Listado de desafios creados cuando un usuario esta loggeado.
El desafio guardado deberia saber el usuario que lo creo.
Parece que es necesario obligar a que este loggeado. De esta forma evitamos el problema de que la gente no loggeada no pueda editar desafios que crearon.
Cuando creo la url de un desafio siendo creado, esa url tiene que ser estatica. Cuando edite ese desafio la url tiene que seguir siendo la misma. No nos interesa guardar el historial de edicion de un desafio (como si fuesen commits).
Queremos que se puedan crear desafios sin compartir (crear la url) ? Parece que si.
Javi plantea 2 conceptos, uno de crear un nuevo desafio y otro remixear uno ya existente.
"Guardar y publicar es lo mismo?" Alf plantea que queremos simplificar el modelo, que sean la misma cosa. Que el boton se llame "Guardar y publicar", "ademas a ro le gustaria, es un nombe asertivo" -alf. Al hacerle click si se esta loggeado se hace eso, si no se tira un alert de que se tiene que loggear.
Seria raro que haya un boton de guardar y publicar y otro de compartir. El modal de compartir deberia tener el boton de guardar y publicar adentro? "Asi lo tiene google". Es raro que el boton de guardar y publicar este a 2 clicks
Queremos algo que indique si el desafio actual esta guardado?
Para otro issue: Que un usuario pueda crear su propio libro/coleccion de desafios
Hacer que no se muestre el link completo, cortarlo a un punto
Hacer un boton de copy to clipboard
The text was updated successfully, but these errors were encountered:
Me pregunto si el ID tiene que ser completamente random o si no podemos incluir algún tipo de información en ese ID. Por ejemplo un timestamp. La única razón sería tener algún tipo de info sólo mirando el ID, a la hora de hacer debugging.
Genera Ids cortos que son básicamente un timestamp. Tarda 10 años en crecer 1 dígito, y si tenemos 1 sólo proceso backend, nunca colisiona. Sólo colisionaría si replicáramos los backend, y si tenemos muy mala suerte.
Depende de #1499
Front
urlDeLaApp/#/desafio/ID
. Si estoy en Electron la URL de la app tiene que ser la página de Pilas Bloques de prod.desafio/:id
donde el id es el id para traerse el challenge del backend. (Ver Rutas)/desafío/
. Puede ser por ejemplodesafio/guardado/:id
.Back
userChallenge
que con POST recibe el challenge, genera ID no existente en la base, y lo devuelve. Estaría copado generar IDs relativamente cortos, parecido al algoritmo de generación de meets de google meet, donde los ID tienen siempre un formato asociado.userChallenge/:id
que con un GET busca y devuelve el challenge indicado.Pensando en como editar un desafio guardado
Si se importa un desafio desde un archivo, el desafio es nuevo (una nueva url).
Listado de desafios creados cuando un usuario esta loggeado.
El desafio guardado deberia saber el usuario que lo creo.
Parece que es necesario obligar a que este loggeado. De esta forma evitamos el problema de que la gente no loggeada no pueda editar desafios que crearon.
Cuando creo la url de un desafio siendo creado, esa url tiene que ser estatica. Cuando edite ese desafio la url tiene que seguir siendo la misma. No nos interesa guardar el historial de edicion de un desafio (como si fuesen commits).
Queremos que se puedan crear desafios sin compartir (crear la url) ? Parece que si.
Javi plantea 2 conceptos, uno de crear un nuevo desafio y otro remixear uno ya existente.
"Guardar y publicar es lo mismo?" Alf plantea que queremos simplificar el modelo, que sean la misma cosa. Que el boton se llame "Guardar y publicar", "ademas a ro le gustaria, es un nombe asertivo" -alf. Al hacerle click si se esta loggeado se hace eso, si no se tira un alert de que se tiene que loggear.
Seria raro que haya un boton de guardar y publicar y otro de compartir. El modal de compartir deberia tener el boton de guardar y publicar adentro? "Asi lo tiene google". Es raro que el boton de guardar y publicar este a 2 clicks
Queremos algo que indique si el desafio actual esta guardado?
Para otro issue: Que un usuario pueda crear su propio libro/coleccion de desafios
The text was updated successfully, but these errors were encountered: