-
Notifications
You must be signed in to change notification settings - Fork 72
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Request to join a community #855
Request to join a community #855
Comments
Flows related to joining a communitySetting membership policy to allow requestsRequesting to be a memberWaiting for a decisionDeciding if requester approved or not(Bonus) Invitation pageSee #792 |
@fenekku Thank you. All screenshots look great. Although the location and text of buttons are subjective:
|
Set membership flowThe initial mockups were done with v11 on NU's local instance. Now that I started on the implementation and got a stable v12 running locally, I discovered these sections changed a bit. So I adapted the UI. Here is a video of the flow now for this one: set_membership_policy.webmI placed it in this page because of the dependency on the Community's visibility. I think the other pre-existing section should also have this disabling/enabling dependency. Keeping the setting visible but disabled seemed also more transparent in the end to the user. |
🚀 Looks great and this is very much requested and needed by many. Thanks a lot for the mockups. Overall flow and UX looks good to me, so below is just specific points Some quick feedback:
|
Btw, do you want to show this on the next RDM telecon? |
Sure I can present this at the next telecon. For what happens when a request is declined, I was thinking of just following whatever is done when an invitation/record submission is declined. If that's not a solved problem already, see the discarded approach [1] below. Requesting to be a memberWhat mechanisms to use to get appropriate information in order to show the request button UI state is conceptually hard. We need to know if requester...
but permissions are not the full answer: if we had can_request / can_cancel / can_read_restricted_records we'd still need a "permission" to tell us if the user has been declined for potential UI purposes. Conceptually that doesn't fit [1]. I will be investigating what is done in potentially analogous situations: 1) on the discussion page for an invite 2) as part of the record submission process to a community . These may provide clues as to how to conceptualize and structure that data for usage by the UI. But if you have recommendations please share. I think this will take some time to wrap my head around. [1]: a stretch to that model (that I dismissed for now because too much indirect work) would be to create a "declined" role for users that have been declined from a community i.e., place those users in the community but with this role that doesn't give them any other permission (in fact it would even remove permission to request to join). That role could be used to determine an answer to the new "can_be_declined" (not great name) action (which isn't a semantic fit but does provide benefits). It would also serve as memory of who was declined even after requests have been discarded. But there'd be additional things to do to make sure it fits well with other permissions/searches that is probably involved. |
…tend [+] This concludes the 2nd flow of the membership request feature. Remaining flows are - 'waiting for decision' flow - 'making a decision' flow This PR needs to be complemented by: - one in invenio-requests (done) - one in invenio-rdm-records (to do)
…tend [+] This concludes the 2nd flow of the membership request feature. Remaining flows are - 'waiting for decision' flow - 'making a decision' flow This PR needs to be complemented by: - one in invenio-requests (done) - one in invenio-rdm-records (to do)
…tend [+] This concludes the 2nd flow of the membership request feature. Remaining flows are - 'waiting for decision' flow - 'making a decision' flow This PR needs to be complemented by: - one in invenio-requests (done) - one in invenio-rdm-records (to do)
…membership-requests
…in Members tab[+] - Most significant contribution here is the proper link(s) serialization for Members. This affects invitations and membership requests.
…ommunity Requests
…tend [+] This concludes the 2nd flow of the membership request feature. Remaining flows are - 'waiting for decision' flow - 'making a decision' flow This PR needs to be complemented by: - one in invenio-requests (done) - one in invenio-rdm-records (to do)
…tend [+] This concludes the 2nd flow of the membership request feature. Remaining flows are - 'waiting for decision' flow - 'making a decision' flow This PR needs to be complemented by: - one in invenio-requests (done) - one in invenio-rdm-records (to do)
…tend [+] This concludes the 2nd flow of the membership request feature. Remaining flows are - 'waiting for decision' flow - 'making a decision' flow This PR needs to be complemented by: - one in invenio-requests (done) - one in invenio-rdm-records (done)
…C-offset datetime string
…C-offset datetime string
… email notification
This concludes the 2nd flow of the membership request feature. Remaining flows are - 'waiting for decision' flow - 'making a decision' flow This PR needs to be complemented by: - one in invenio-requests (done) - one in invenio-rdm-records (to do)
- update role - addressed TODOs
…C-offset datetime string
… email notification
- update role - addressed TODOs
…C-offset datetime string
… email notification
(I am surprised this wasn't a ticket before, so I must be missing something).
A user should be able to request to join a community.
The text was updated successfully, but these errors were encountered: