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:

Role Keys Result
Employee calendar Own calendar only
Junior Manager calendar, calendar.view_others Sees everyone's, edits own
Boss calendar, calendar.view_others, calendar.edit_others Sees and edits everyone's

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

Installation

def deps do
[
{:phoenix_kit_calendar, "~> 0.2"}
]
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