Commit graph

3356 commits

Author SHA1 Message Date
Hugh Rundle
832a9b9890 fix group local_path
as per Lists, we need to override get_remote_id to remove the user from the URL
2021-10-02 16:54:44 +10:00
Hugh Rundle
52a083a907 revert name change for Group, GroupMember
these were named as BookwyrmGroup and BookwyrmGroupMember due to a misunderstanding about related_name and a dodgy development environment. This naming makes more sense.
2021-10-02 16:52:34 +10:00
Hugh Rundle
21e6ed7388 complete group notifications
- notify group members when a new member accepts an invitation
- notify all group members when a member leaves or is removed
- notify ex-member when they are removed
2021-10-02 15:48:55 +10:00
Hugh Rundle
f82af6382f make message about group members more generic 2021-10-02 15:48:34 +10:00
Hugh Rundle
70e0128052 non-owners can't add users to groups
- hide add-user pages from non-owners
- hide user searchbox from non-owners
- fix find-user searchbox being in wrong place where no results
2021-10-02 14:41:23 +10:00
Hugh Rundle
5237e88aba remove user button for groups 2021-10-02 13:48:53 +10:00
Hugh Rundle
0984972b05 group membership invitations
- fix display of group information on user and group pages
- send, receive, accept and reject invitations
2021-10-02 12:30:48 +10:00
Hugh Rundle
89dea44614 accepting membership fixes
- don't delete the invitation twice
- send membership information properly to notification
2021-10-02 12:29:01 +10:00
Hugh Rundle
9290655116 fix urls for group invitations 2021-10-02 12:13:34 +10:00
Hugh Rundle
80fb37b55c add has_groups tag for use on user page 2021-10-02 12:12:59 +10:00
Hugh Rundle
0f3be40957 fix group references in templates
Let's do this the sensible way huh, by using backwards references to memberships etc

Also adds filters for is_member and is_invited so we don't have to do weird things in group Views
2021-10-02 10:47:42 +10:00
Hugh Rundle
2f42161dda disambiguate groups and prep for group invitations
- rename Group to BookwyrmGroup
- create group memberships and invitations
- adjust all model name references accordingly
2021-10-02 10:10:37 +10:00
Hugh Rundle
66494e7788 fix reverse reference to user bookwyrm_groups 2021-09-28 18:53:11 +10:00
Hugh Rundle
fb823189a0 don't allow non-local users to join groups (yet)
Groups are not compatible with ActivityPub because I don't know what I'm doing.

NOTE: this is super hacky, fix ASAP
2021-09-27 21:48:40 +10:00
Hugh Rundle
e15eef16c5 improve new group member adding
The add-members page now looks almost identical to the group
page and is clearer.
2021-09-27 21:21:00 +10:00
Hugh Rundle
1a02af1450 allow members to see groups and their lists
- add additional logic to visible_to_user, for groups and their objects
- cleans up some queries in Group view

NOTE: I can't work out how to make group lists only visible
to users who should be able to see them, on user group listings.
They still can't access the actual group, but can see it on
user pages. This is potentialy problematic.
2021-09-27 20:24:25 +10:00
Hugh Rundle
df5a5f94a1 fix local_path for groups 2021-09-27 19:27:39 +10:00
Hugh Rundle
c87712c995 allow group members to add items to group lists directly
NOTE: this will be the case regardless of privacy settings of the list
2021-09-27 18:41:29 +10:00
Hugh Rundle
81e5ff5b76 show groups on member pages if allowed
- display groups on user pages when not the logged in user
- restrict visibility of groups on user pages and group pages themselves according to privacy settings
2021-09-27 17:51:18 +10:00
Hugh Rundle
277c033fda show star if this user is the creator/manager of the group 2021-09-27 17:50:38 +10:00
Hugh Rundle
e5ca377cd3 clean up stray code mess 2021-09-27 16:50:51 +10:00
Hugh Rundle
e38d7b63f3 make groups actually editable 2021-09-27 16:49:56 +10:00
Hugh Rundle
493ed14f34 better group creation form logic and placement 2021-09-27 16:39:12 +10:00
Hugh Rundle
0ccd54b05a better urls and views for group creation and editing 2021-09-27 15:38:05 +10:00
Hugh Rundle
f3181690a2 change group owner from 'manager' to 'user'
This will allow privacy management to use existing code.
Some template updates also are for rationalising how
groups are created and edited.
2021-09-27 15:36:41 +10:00
Hugh Rundle
2874e52309 rationalise group creation and prep for group privacy 2021-09-27 15:34:14 +10:00
Hugh Rundle
762202c4b0 fix UI for group curated list editing
When creating or editing a list, the group selection dropdown will only appear if the user selects "group" as the curation option (or it is already selected).

- fix typo in bookwyrm.js comments
- add data-hides trigger for hiding elements after they have been unhidden, where simple toggles are not the right approach
2021-09-27 11:03:41 +10:00
Hugh Rundle
0e2095bc5e refer to group in group lists created_text 2021-09-26 20:52:44 +10:00
Hugh Rundle
5fccb991a7 remove list from group when changing curation
Allows 'group' to be blank when saving a list.
Removes the 'group' field when saving a list with curation other than 'group' - this stops the list "sticking" to a group after it is changed from group curation to something else.
2021-09-26 18:28:16 +10:00
Hugh Rundle
8bfc71db6e create group curated lists 2021-09-26 15:56:52 +10:00
Hugh Rundle
f3a3ba5f01 pass group value to list views and vice-versa 2021-09-26 15:56:02 +10:00
Hugh Rundle
b921d666cf add group field to ListForm 2021-09-26 15:55:16 +10:00
Hugh Rundle
686198472d update group and list models
- remove GroupList model
- add a group foreign key value  to List model
- remove reference to lists in Group model
2021-09-26 15:50:15 +10:00
Hugh Rundle
ec0720514e don't allow non-manager to add and remove group members 2021-09-25 20:25:30 +10:00
Hugh Rundle
035fc5209d better logic for identifying group manager 2021-09-25 20:23:59 +10:00
Hugh Rundle
62a5ed7a9e identify group manager 2021-09-25 19:53:06 +10:00
Hugh Rundle
b645d75303 add and remove users from groups 2021-09-25 17:34:44 +10:00
Hugh Rundle
e800106be4 smaller cards for group members
- this will also enable members to be removed easily by managers in a future commit.
2021-09-25 11:37:08 +10:00
Hugh Rundle
8d17f888ea improve naming of templates and urls for groups 2021-09-25 11:36:35 +10:00
Hugh Rundle
7c0deabcb2 update urls and group view for searching users to add to group 2021-09-25 11:14:04 +10:00
Hugh Rundle
cbe172df3d find users for groups
- search for users to add to a group
- display suggested users on search results screen

TODO: actaully enable users to be added!
TODO: groups/suggested_users probably could be replaced with some logic in snippets/suggested_users.html
2021-09-25 11:11:58 +10:00
Hugh Rundle
8c326ec52f user groups listing template
- creates groups/user_groups template for listing a user's groups on their user page
2021-09-25 11:10:06 +10:00
Hugh Rundle
273ad9a466 add create_group to __init__.py
you probably want this otherwise nothing previously added for group creation will work :-)
2021-09-25 10:55:32 +10:00
Hugh Rundle
d4fcf88cf5 add list cards to groups page
- add list cards to groups page based on lists page
- add sort to members on group page
2021-09-24 21:57:01 +10:00
Hugh Rundle
86a60d58e5 add user cards to group pages 2021-09-24 21:24:06 +10:00
Hugh Rundle
264d9b2f3c add group page template 2021-09-24 20:35:51 +10:00
Hugh Rundle
9b6d2a9d88 add group page 2021-09-24 20:34:11 +10:00
Hugh Rundle
f32a2cc4d0 group creation form can now be submitted!
Whoops
2021-09-24 15:04:52 +10:00
Hugh Rundle
4e93b09067 create group form
adds a group creation form to user dashboard
2021-09-24 14:12:36 +10:00
Hugh Rundle
e07a25e288 add groups urls 2021-09-24 07:52:40 +10:00