Skip to main content

Django5 Scheduler (Fork of Django Scheduler for Django5 Support)

Gitter Documentation Status

A calendar app for Django5 (drops support for older versions of Django, for older versions use original release)

Information (docs from original source)

Installation

pip install django5-scheduler

Edit your settings.py

Add to INSTALLED_APPS:

'schedule',

Add to TEMPLATE_CONTEXT_PROCESSORS:

"django.template.context_processors.request"

Static assets

Django Scheduler relies on jQuery and Bootstrap to provide its user interface. If you don't need help with adding these to your Django project, you can skip the next step where we will show you how to add them to your Django project.

npm install -g bower
pip install django-bower

edit your settings.py

add to INSTALLED_APPS:

'djangobower',

Add staticfinder to STATICFILES_FINDERS:

'djangobower.finders.BowerFinder',

Specify the path to the components root (you need to use an absolute path):

BOWER_COMPONENTS_ROOT = '/PROJECT_ROOT/components/'

Add the following Bower dependencies for scheduler:

BOWER_INSTALLED_APPS = (
    'jquery',
    'jquery-ui',
    'bootstrap'
)

Last step, install bower dependencies with:

./manage.py bower install

Remember to execute "python manage.py collectstatic"

Features

  • one-time and recurring events
  • calendar exceptions (occurrences changed or cancelled)
  • occurrences accessible through Event API and Period API
  • relations of events to generic objects
  • ready to use, nice user interface
  • view day, week, month, three months and year

Configuration

Full Calendar examples

Full calendar

Monthly view (static)

Daily view (static)

Metrics

Throughput Graph

Optional Settings

FIRST_DAY_OF_WEEK

This setting determines which day of the week your calendar begins on if your locale doesn't already set it. Default is 0, which is Sunday.

OCCURRENCE_CANCEL_REDIRECT

This setting controls the behavior of Views.get_next_url. If set, all calendar modifications will redirect here (unless there is a next set in the request.)

SHOW_CANCELLED_OCCURRENCES

This setting controls the behavior of Period.classify_occurrence. If True, then occurrences that have been cancelled will be displayed with a css class of canceled, otherwise they won't appear at all.

Defaults to False

CHECK_EVENT_PERM_FUNC

This setting controls the callable used to determine if a user has permission to edit an event or occurrence. The callable must take the object (event) and the user and return a boolean.

Default:

    check_edit_permission(ob, user):
        return user.is_authenticated

If ob is None, then the function is checking for permission to add new events

CHECK_CALENDAR_PERM_FUNC

This setting controls the callable used to determine if a user has permission to add, update or delete an events in specific calendar. The callable must take the object (calendar) and the user and return a boolean.

Default:

    check_edit_permission(ob, user):
        return user.is_authenticated

GET_EVENTS_FUNC

This setting controls the callable that gets all events for calendar display. The callable must take the request and the calendar and return a QuerySet of events. Modifying this setting allows you to pull events from multiple calendars or to filter events based on permissions

Default:

    get_events(request, calendar):
        return calendar.event_set.all()

SCHEDULER_PREVNEXT_LIMIT_SECONDS

This settings allows to set the upper and lower limit in calendars navigation. Value is in seconds.

Default (two years): 62208000

Contributing

Tests

To run tests on all supported versions of Django and Python, use tox:

$ tox

Metadata

Release files for django5-scheduler 1.0.2

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for django5-scheduler 1.0.2
File Size Uploaded
django5_scheduler-1.0.2.tar.gz 91.0 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for django5-scheduler 1.0.2
File Interpreter ABI Platform
django5_scheduler-1.0.2-py3-none-any.whl Python 3 none any Details

Total release size: 210.8 kB

Release files / django5_scheduler-1.0.2.tar.gz

Download URL django5_scheduler-1.0.2.tar.gz
Size 91.0 kB
Tags Source
SHA-256 checksum
How to use checksums
83e9c2f3cabb4a1f8c6c3aae9ca1ffae6f4a88d1d86f353f44f4a3732c1c52fe
BLAKE2b-256 checksum
How to use checksums
db71b02573bd08cbf4f5967a75b9c695920b157711676e11069a48e45f217643
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.2

Release files / django5_scheduler-1.0.2-py3-none-any.whl

Download URL django5_scheduler-1.0.2-py3-none-any.whl
Size 119.8 kB
Tags Python 3
SHA-256 checksum
How to use checksums
41fd3029a9fece4d7101b660cd6f9624cd1142e190e203e0d9439db489afadd5
BLAKE2b-256 checksum
How to use checksums
2219dd20740aa297fa75fa5b8a8593913f04083ac4446c77dccc94d3cf6fb4d4
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.2

Release history Release notifications | RSS feed

This release

1.0.2 This release

2 release files

1.0.1

2 release files

1.0.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page