Aplicación que almacena Eventos - Reborn? Rework? Rebase? REST?
agendamlgr proporciona un servicio REST, parecido a agendamlg que nos permite gestionar eventos en Málaga. Para mostrar la información acerca de los eventos se proporciona un cliente realizado con Angular 2 y Bootstrap.
agendamlg proporciona los siguientes servicios:
- Diferentes tipos de usuarios con diferentes permisos: anónimo, registrado, superusuario y periodista.
- Iniciar Sesión y Cerrar Sesión, mediante Google OAuth 2.0.
- Ver perfil de Usuario.
- Ver todos los evento no caducados y validados
- Filtrar eventos en función de su categoría
- Filtrar eventos según su posición geográfica
- Creación de eventos
- Validación de eventos
- Eliminación de eventos
- Añadir álbums de Flickr para la visualización de imágenes en los eventos
- Visualización de mapa mediante Google Maps
- Envío de correo acerca de eventos recién publicados a usuarios interesados
- Envío de correo al usuario cuyo evento ha sido validado el cliente permite acceder todos los servicios de la lista.
- Crear la base de datos usando los scripts que se encuentra en la carpeta /sql/agendamlg.sql /sql/seed.sql (la BD se llama
AGENDAMLGR
, el usuario y contraseñaagendamlgr
) - Clonar el repositorio
- Colocar
tokens.json
de Google OAuth 2.0 en la carpetaagendamlg-war/src/java/servlet/tokens.json
. Este archivo lo puedes obtener de la consola de Google directamente. - Colocar
tokens.json
del resto de tokens en la carpetaagendamlg-war/src/java/service/tokens.json
. Este archivo la siguiente estructura:{"jwt_token": "UnTextoQueTeServiraComoSecretoParaElTokenJWT", "google_api_key" : "APIKeyDeGoogle (distinto al de OAuth es)", "flickr_api_key": "APIKeyDeFlickr" }
- Colocar
tokens.json
con la API Key de Google de antes, enagendamlg-cliente/src/web/app/services/tokens.json
. Este archivo tiene la siguiente estructura:{"google_api_key": "MismoAPIKeyDeGoogleQueAntes"}
- Añadir al proyecto agendamlr-war la carpeta
agendamlgr-war/lib
(en Netbeans properties>libraries>seleccionar todos los .jar que están en lib) - Instalar dependencias de node.js del proyecto agendamlgr-cliente con
npm install
- Compilar la versión debug (
npm run build-debug
) o release (npm run build
) del cliente
Si después del pull npm install
no funciona, haz lo siguiente: npm i -f
y luego npm install
Hay que tener instalado:
- JVM
- node.js
- Glassfish
- Apache Derby
- Glassfish - Servidor Web
- Java EE - Marco de Trabajo para Desarrollo Web
- JWT for Java - Implementación de JWT para Java
- GSON - Serializer & Deserializer of JSON for Java
- httpclient - Cliente (decente) HTTP para Java
- Apache Derby - Base de datos
- node.js - Parte del frontend
- Bootstrap 4 - Diseño y estrucutra del frontend
- Angular - Aplicación web y estructuración del código
- AngularMaps - Google Maps API para Angular
- date-time-picker - Polyfill bonito para
input[type="date-time-local"]
para Angular
- Antonio Ángel Cruzado Castillo
- John Carlo Purihin
- Melchor Alejo Garau Madrigal
- Manuel Jesús Rodríguez Rodríguez