================== Creación de juegos ================== Los juegos son dados de alta a través de un usuario con permisos suficientes en el portal de administración. Esta sección comprende dicho proceso, además del enlazado de las imáganes a los juegos existentes. Dar de alta un juego ==================== Enlazar imágenes a un juego =========================== Esta sección comprende la carga de imágenes para ser asociadas a un juego, ya sea como carátula (*cover*) o captura de pantalla (*screenshot*). Como prerrequisito para este procedimiento debe existir un juego creado en el sistema. Descripción general ------------------- .. image:: /images/game/cover_screenshot_overview.svg :align: center 1. Desde el portal de administrador se solicita el almacenamiento de una imagen para un juego, ya sea como carátula o captura de pantalla. 2. El servidor Onsite almacena la imagen, la asocia al juego y responde con el resultado de las operaciones. Flujo ----- .. image:: /images/game/cover_screenshot_sequence.svg :align: center Se requieren las rutas: Onsite: ``PUT /games/{id}/cover`` ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ **Autorización:** User Donde el usuario solicita almacenar una imagen, ligándola a su vez al juego cuyo ``id`` es proporcionado en la ruta. Onsite almacena la imagen con el proveedor de almacenamiento y crea una relación de *cover* con el juego correspondiente. En caso de que el juego ya cuente con una carátula, esta será sobreescrita por la nueva imagen. La carátula sobreescrita será eliminada de la base de datos y de la memoria del proveedor de almacenamiento. Esta ruta responde con el estado ``200 OK`` si fue exitoso el proceso de almacenamiento de la imagen. Si el ``id`` proporcionado no corresponde a ningún juego, la ruta devuelve el estado ``404 Not Found``. En caso de ocurrir un error de comunicación con el proveedor de almacenamiento se responde ``503 Service Unavailable``. Por último, si el formato de imagen es inválido se responderá ``415 Unsupported Media Type``. Onsite: ``PUT /games/{id}/screenshots`` ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ **Autorización:** User Mediante la cual el usuario agrega una imagen a la colección de capturas de pantalla de un juego existente, donde el juego es aquel que es referenciado mediante el ``id`` en la ruta. Onsite almacena la imagen con el proveedor de almacenamiento para posteriormente crear una relación de *screenshot* con el juego especificado. Esta ruta responde con el estado ``200 OK`` si fue exitoso el proceso de almacenamiento de la imagen. Si el ``id`` proporcionado no corresponde a ningún juego, la ruta devuelve el estado ``404 Not Found``. En caso de ocurrir un error de comunicación con el proveedor de almacenamiento se responde ``503 Service Unavailable``. Por último, si el formato de imagen es inválido se responderá ``415 Unsupported Media Type``. Observaciones ------------- - Para las operaciones efectuadas a Onsite por un usuario, debe tenerse en cuenta la restricción de 15 minutos de vigencia para el ``secret``. - El único formato permitido para carga de imágenes es *jpg*. - Las imágenes son cargadas utilizando el *enctype* ``multipart/form-data``. - Un juego cuenta con una única portada. Sin embargo, puede contar con ninguna o varias capturas de pantalla. Control de juegos más jugados =============================