Opened 13 years ago

Last modified 8 years ago

#126 accepted enhancement

sharing and permissions — at Initial Version

Reported by: Caleb Davis Owned by: Caleb Davis
Priority: minor Milestone:
Component: programming Keywords: longterm pumpio large
Cc: Odin Hørthe Omdal (Velmont), Elrond, Christopher Allan Webber, Caleb, Davis Parent Tickets:

Description

There is a mapping between the items in your collection and the
individuals allowed to view them. Those are permissions.

We'll begin implementing these by assigning each media entry an
array of authorized viewers, listed by username. Eventually, these
could be openids for federation, but that's beyond the scope of
this ticket.

Because writing a list each time you submit an item would give us
the blues, we'll have a default list editable by the user. That
list of users will be used to populate the permissions array on the
item.

Now, you may not always want the default list, so it's important to
make it easy to specify which of your 10 million fans get to see
your cat with whip cream on its head. For that, each user will be
able to maintain groups of individuals. These groups can be given
any name. Suggestions would be friends, family, etc. Those will be
enabled by default but can be removed in favor of other group
names.

So, when creating an item, you see an array of labels representing
your default sharing profile. It could be as simple as 'everyone',
or as complex as you like. Modify the sharing labels by adding or
removing individual names, or group names. Individuals and groups
can also be added to specifically exclude, but let's save that for
a future ticket.

When you submit the item the labels are interpreted and converted
to individuals for the item's permissions array.

When called upon for viewing, the item looks up the viewer in its
permissions array and allows viewing or coyly stays hidden,
depending on whether the viewer gets to see the item. This should
apply for every view - galleries, thumbnails, etc.

The fun part is that the groups the user maintains may be flagged
as private. This means you don't have to pull your hair out trying
to be political about who gets to be in which group. Chris's
example is great -

::

    SmoothBro might not show off his "saturday night swingers" group publicly because maybe he doesn't even want people to know about that, esp his parents.

Breathe in. Breathe out. Explore the space!

This ticket does not cover notifications, only viewing
permissions.



Change History (0)

Note: See TracTickets for help on using tickets.