Skip to content

yamitcar/SanSaru

Repository files navigation

Roadmap multitenant - NO SERÁ compatable con la version 1.0.

  • Creacion de eventos - Done // ir a '/events' logueado con una cuenta de admin.

  • Creacion de paginas configurables por evento ( con markdown) - Done

  • Login, seleccionando el evento al cual quieres postular - Done

  • Redirecionamiento del home a paginas configurables segun evento - Done

  • perfiles de usuario

    • Borrar profile_id de usuario - Done
    • agregar el user_id al perfil - Done
    • agregar el event_id al perfil - Done
    • arreglar todas las views y consultas con el perfil por evento del usuario Done
  • plantillas de mail configurables para el evento Done // ver pagina de administracion del evento

  • tabla de configs por evento Done incorporado a los datos del evento

  • tabla de invitaciones por evento Done

  • visualizacion del arbol por evento Done

  • Favoritos por evento Done

  • Mejorar el home principal de la app Done

  • Mejoras gráficas Done

  • Boton para deshacer invitaciones Done

  • Download participant list Done

  • add admins por evento unicamente. Done

  • add email config for event

  • Formulario de perfil configurable por evento

  • boton para agregar invitaciones de los monos.

  • Mejorar el editor de markdown y html

  • Rename and reorder home_controller

San-Saru AoC Co 2019

Maintainability

Getting started

Para iniciar la App, clona el repositorio e instala las gemas necesarias:

$ bundle install --without production

Ambiente de desarrollo

Para configurar el ambiente de desarrollo, instala:

Postgres
Ruby
Rails

Dentro de la raiz del proyecto, ejecuta:

gem install bundler
bundle install

Configura los parametros de la base de datos en:

config/database.yml

Y ejecuta:

rails db:create
rails db:migrate

En el archivo .env, configura los datos de acceso al email:

MAIL_DOMAIN=...
MAIL_USERNAME=...
MAIL_PASSWORD=...
SMTP_ADDR=...

En el archivo db/seeds.rb, verifica los datos del usuario administrador:

User.create(name: 'aoc', lastname: 'admin', email: '[email protected]', password: 'aocAdmin!',
    password_confirmation: 'aocAdmin!', admin: true, terms_of_service: true)

Luego ejecuta:

rails db:seed

A la casilla del mail del admin deberá llegar un mail de confirmación de la cuenta.

Para que los assets queden disponibles, ejecuta:

rake assets:precompile

Para iniciar la app, ejecuta:

rails s

Restart backup db

pg_restore --verbose --clean --no-acl --no-owner -h localhost -d sanSaru sanSaru.backup

DEPRECATED!!

~~ Para personalizar la aplicación según las condiciones específicas de cada edición del AOC:

  • Revisar app/helpers/application_helper.rb

Heroku

Para desplegar en Heroku, sigue estos pasos:

  • Hacer push

  • Agregar cambios en la base de datos:

      heroku run rails db:migrate
    
  • Correr semillas y crear usuarios (verificar el usuario administrador)

      heroku run rails db:seed 
      // o 
      heroku run rails console 
      // y ejecutaR cambios desde alli. 
    
  • Agregar variables de entorno, mails y demas:

      heroku config:add MAIL_PASSWORD=password12345 [email protected] MAIL_DOMAIN=gmail.com SMTP_ADDR=smtp.gmail.com
    

Para borrar la base de datos de heroku:

heroku pg:reset DATABASE_URL

Invitaciones

Las invitaciones solo se podran activar si desde la interfaz administrativa se crean:

  • Las 3 invitaciones iniciales
  • Se activa el período de invitaciones en el evento

Query para obtener todos los invitados:

SELECT users.id, users.name, lastname, email, country,state,city,phonenumber, genders.name, sizes.name, payed
  FROM public.users, public.invitations, public.profiles, public.genders,public.sizes
  WHERE users.id = invitations.user_id and users.profile_id = profiles.id 
  and profiles.gender_id = genders.id and profiles.size_id = sizes.id;

~~

    pg_restore --verbose --clean --no-acl --no-owner -h localhost -d sanSaru production.dump