This plugin app for Alliance Auth displays Eve University's Discord events in a calendar view, making it easy to keep track of scheduled activities.
- Displays Eve University's Discord events in a visually appealing calendar view.
- Fully integrated with Alliance Auth and leverages Discord data.
- Supports logging events to Google Sheets for historical tracking.
-
Add the app to
INSTALLED_APPS
: Addeveunicalendar
to theINSTALLED_APPS
section of yoursettings.py
:INSTALLED_APPS += [ 'eveunicalendar', ]
-
Apply migrations and collect static files: Run the following commands:
python manage.py migrate python manage.py collectstatic
-
Ensure Discord integration is enabled in Alliance Auth.
-
Set the following environment variables in your
local.py
or.env
file:DISCORD_GUILD_ID
: Your Eve University Discord server ID.DISCORD_BOT_TOKEN
: A valid bot token with permission to read scheduled events.
-
Configure Google Sheets integration: Place your
credentials.json
file (from Google Sheets API setup) in the same directory as yourlocal.py
file, and add the following configuration to yourlocal.py
:import os BASE_DIR = os.path.dirname(os.path.abspath(__file__)) GOOGLE_CREDENTIALS_FILE = os.path.join(BASE_DIR, 'credentials.json')
Optional config setting
Defaults are shown when not present.
GOOGLE_ACTIVE_SHEET = 'Current'
GOOGLE_ARCHIVE_SHEET = 'Archive'
Add the following task to your Celery Beat schedule to fetch events hourly:
from celery.schedules import crontab
CELERYBEAT_SCHEDULE["populate_events"] = {
"task": "eveunicalendar.tasks.populate_events",
"schedule": crontab(minute=0), # Runs hourly
}
Ensure your Celery worker and Celery Beat services are running to sync events automatically.
For questions, issues, or feature requests, please contact the Eve University development team or submit an issue on the project's repository.