Internal "user request management" and tracking

Description

Description of problem:
Currently users have no way to know whether the requests has been granted or reject; nor does the grantor have convenient methods to tell the requesters they requests have been rejected or need more information.

For example, user A requests a translator permission in fr team; but if language coordinator wants to reject the request, the coordinator have no way to tell user A in Zanata.

Version-Release number of selected component (if applicable):
3.5

How reproducible:
Always

Steps to Reproduce:
1. Sign in as a coordinator
2. Go to language team he/she coordinate.
3. User A request for permission to join the language team.

Actual results:
There is no way to telling User A that the permission is rejected.

Expected results:
A choice should be given:

"Ok" for grant the request
"Reject" for reject the request
"More Info" for require more information
"Cancel" (Optional) Pending the decision.

Additional info:

Activity

Show:
Carlos Munoz
September 16, 2015, 5:59 AM

We are assuming that there is no notification system in place yet, for the purposes of estimation.

Features to be implemented:

  • A list (filtered and paged) in the language page.

  • If a user already has made a request to join, the requester should be allowed to view and modify the request, including cancellation.

  • If a user already has a role in the team, said user will be allowed to submit a new request for different roles.

Technical notes:

  • Create a reusable widget to display a request.

  • Implemented in JSF

Akihiro Motoki
September 15, 2015, 2:35 PM

I would like to comment from user (i.e., translator) perspective.

Assume I were a new user who wants to join a language team.
I cannot know whether I already sent a join request or not.
It is related to the original bug report.
(On Transifex, we can know if I already sent a join request and know a result of approval.)

As a coordinator, I received multiple join request from one person.
I believe it comes from the fact Zanata does not provide a way to track a join request.

Tom Fifield
September 15, 2015, 2:56 AM

This was recently discussed on the openstack-i18n mailing list:

http://lists.openstack.org/pipermail/openstack-i18n/2015-September/001345.html

According to the thread, at OpenStack, some of our coordinators are spending more than an hour approving requests because of the clunky workflow.

Suggestions for implementation:

  • Email to coordinator announcing the new join request needs to contain a link that goes to the right place to action the request (no clicking required; if the user needs to login, they should be taken back there after login)

  • Wherever that place is, a list of all join requests for the team is displayed, with information about each user and their requested roles; and approve and deny buttons

In our experience, removing a user from the team, or changing a user's roles is much less frequent than new joins.

Bugzilla Migration
July 31, 2015, 1:48 AM

Damian Jansen commented on 2015-07-13 20:21:47 -0400:

Reassigned to PM

Bugzilla Migration
July 31, 2015, 1:48 AM

Damian Jansen commented on 2014-07-27 21:02:37 -0400:

This appears to be a two part RFE:

1. The ability for maintainers / administrators to manage users' role and permission requests, and
2. User feedback for the result of point 1.

This implies

  • a storage mechanism for the requests

  • a notification that requests exist

  • views of the requests for a project, a language, roles etc

  • a user's request history view (e.g. my requests, previous and current)

  • filtering for maintainer / user of requests by status

Other questions arise, such as

  • "Undo" ability (whoops, wrong button),

  • normal user request management (e.g. "Cancel" my request, I don't want it any more)

  • Request expiry

Ready for Release

Assignee

Alex Eng

Reporter

Ding-Yi Chen