...
Category - event viewable by everyone on a category-level.
Course - event viewable only to those enrolled on the course members - created by teachers.
Groups - event viewable only by members of a group - created by teachers.
User - personal event a student user can create - viewable only by the user.
...