PhoenixKitCalendar

Personal calendars for PhoenixKit — every user gets their own calendar, and fine-grained permissions decide who may see or edit anyone else's.

Features

Role recipes

Create roles in /admin/users/roles, grant keys in /admin/users/permissions:

RoleKeysResult
EmployeecalendarOwn calendar only
Junior Managercalendar, calendar.view_othersSees everyone's, edits own
Bosscalendar, calendar.view_others, calendar.edit_othersSees and edits everyone's

Owner always has everything; Admin defaults to everything (Owner-revocable).

Installation

def deps do
[
{:phoenix_kit_calendar, "~> 0.1"}
]
end

Then mix deps.get and run mix phoenix_kit.update in the host app (the events table ships as PhoenixKit core migration V141). Enable the module on /admin/modules.

Requires phoenix_kit with sub-permission support (> 1.7.179).

Development

mix test.setup # create the test database
PHOENIX_KIT_PATH=../phoenix_kit mix test

License

MIT