# foerderbarometer purpose: gather data from intern(WMDE) and extern(volunteers) forms to create a database ('förderdatenbank') and send emails with links for a questionary. ## installation and development setup ln -sr foerderbarometer/settings_development.py foerderbarometer/settings.py build the database with python3 manage.py migrate create superuser account with python3 manage.py createsuperuser run the development server with python3 manage.py runserver you can run some very basic tests with python3 manage.py test access via http://localhost/ http://localhost/intern/ (login required) http://localhost/admin/ (login reqiured) ## additional admin functionality The admin page is the standard admin page delivered by django but with two additional functionalities: - There is a new action "export to csv" with which you can export all Selected entries to a csv file - There is a new button in the bottom of every Project to "save as new" ## versions used in development python 3.8.2 django 3.1.1 django-formtools 2.2 whitenoise 5.2.0 gunicorn 20.0.4 ## testing run some tests with python3 manage.py test ## production setup ln -sr foerderbarometer/settings_production.py foerderbarometer/settings.py edit /secrets.json to contain something similar to { "DATABASE_PASSWORD": "THIS IS TOP SECRET!", "SECRET_KEY": "THIS IS ANOTHER SECRET!" } edit foerderbarometer/settings_production.py according to your database setup (tested with MariaDB 10.0.36) run the following commands: python3 manage.py makemigrations python3 manage.py migrate python3 manage.py collectstatic add to cron at least one time a day: python3 manage.py sendmails server starts with nohup gunicorn --forwarded-allow-ips="*" -b '0:8000' foerderbarometer.wsgi 2&> logfile & Should be executed at least daily e.g. in crontab python3 manage.py sendmails