meetling icon indicating copy to clipboard operation
meetling copied to clipboard

Public meeting permissions

Open noyainrain opened this issue 9 years ago • 1 comments

Introduce a public mode for meetings, where only the owners of a meeting or agenda item can modify it. By default the creator of a meeting (or agenda item) is the owner and it could be possible to add further owners. Proposing an agenda item is still possible for anyone with access.

noyainrain avatar Jan 19 '17 17:01 noyainrain

Preliminary draft:

class Meeting:
    """
    .. describe:: owners

       Owners of the meeting, which includes the creator.

    .. describe:: public

       Indicates if the meeting has a public (untrusted) or restricted (trusted) audience.
       For public meetings, only the owners of a meeting or agenda item can modify it, while anyone
       with access to the meeting can edit anything in a trusted environment.
    """

    def create_agenda_item():
        """
        Permission: Authenticated users.
        """

    def edit():
    def move_agenda_item():
        """
        Permission: *owners* if the meeting is *public*, all authenticated users otherwise.
        """

    def trash_agenda_item():
    def restore_agenda_item():
        """
        Permission: *owner* of the *item* and *owners* of the meeting if it is *public*, all
        authenticated users otherwise.
        """

class AgendaItem:
    """
    .. describe:: owner

       Creator of the item.

    .. describe:: meeting
    """

    def edit():
        """
        Permission: *owner* of the item and *owners* of the *meeting* if it is *public*, all
        authenticated users otherwise.
        """

noyainrain avatar Jan 20 '17 17:01 noyainrain