# eva

A simple tool for on- and offboarding people in a mid sized organisation.

"EVA" is an german acronym for "Eintritt, Veränderung, Austritt",
meaning "Onboarding, Change, Offboarding"

# development

- install gettext for instance via "apt install gettext" for translations

- set up a virtual environment with virtualenvwrapper or some other
environment managing tool

- use this environment and do

    pip install django django-multiselectfield django-formtools django-allauth

- clone this repository

- ln -sr eva/settings_development.py eva/settings.py

- initialise your database with

    python manage.py migrate

- start your development server with

    python manage.py runserver

# oauth

- You need to add oauth information in the django backend via .../admin in "Social Accounts"

# production

- you can use gunicorn as server for example instead of the django development server.

- we use whitenoise for serving static files

- we still use the development SQLITE database from django

do the following in the project main directory:

  ln -sr eva/settings_production.py eva/settings.py

edit /secrets.json to contain something similar to

  {
    "SECRET_KEY": "THIS IS ANOTHER SECRET!"
  }

run the following commands:

  python3 manage.py migrate
  python3 manage.py collectstatic
  django-admin compilemessages

server starts with

  export PYTHONUNBUFFERED=TRUE; nohup gunicorn --forwarded-allow-ips="*" -b '0:8000' eva.wsgi &> logfile &