Closed Bug 288603 Opened 20 years ago Closed 20 years ago

Allow users in the request group to remove pending requests made by others

Categories

(Bugzilla :: Administration, task)

2.19.2
task
Not set
normal

Tracking

()

RESOLVED FIXED
Bugzilla 2.20

People

(Reporter: LpSolit, Assigned: LpSolit)

References

Details

Attachments

(2 files)

Actually, only users in the grant group are allowed to remove requests made by
other users, see bug 180879. This is a pain when some users set the "?" flag and
their bugs are then marked as invalid or dupe, for example, because only these
users or a member of the grant group can remove these obsolete flags, but not
some other trusted users (such as users having editbugs privs).

What I suggest is the addition of at least one checkbox:

[X] "Allow users in the request group to remove requests made by other users"


Following my long discussion with timeless on IRC, it appears that some
administrators may also want a second checkbox:

[ ] "Allow users in the request group and having (canconfirm|editbugs) privs to
remove requests made by other users"


These two checkboxes would greatly improve usability of the grant/request
groups. That's why I think it is worth having them in 2.20, even if this is an
enhancement (I know we are frozen but anyway).
Status: NEW → ASSIGNED
Flags: blocking2.20?
myk does not want any new UI but would let anyone in the request group cancel
requests by default. He says we want it for 2.20 too. ;)
Severity: enhancement → normal
Target Milestone: --- → Bugzilla 2.20
Attached patch patch, v1Splinter Review
Allow any user in the request group to remove pending requests.
Attachment #180514 - Flags: review?(myk)
Comment on attachment 180514 [details] [diff] [review]
patch, v1

>+        # - User in the $request_gid group can clear pending requests
>+        next if ($status eq 'X' && $flag->{status} eq '?'
>+                 && (!$flag->{type}->{request_gid}
>+                     || $user->in_group(&::GroupIdToName($flag->{type}->{request_gid}))));

Nit: $flag->{status} eq '?' && $status eq 'X' is a more natural ordering, since
it follows the thought progression "the flag is currently pending, and it's
being canceled."

Nit: for consistency, when placing one clause of a multi-clause conditional on
a separate line, place all clauses on separate lines, i.e.:

	next if ($status eq 'X' 
		 && $flag->{status} eq '?'
		 && (!$flag->{type}->{request_gid}
		     ||
$user->in_group(&::GroupIdToName($flag->{type}->{request_gid}))));

Otherwise this looks great! r=myk
Attachment #180514 - Flags: review?(myk) → review+
Flags: approval?
Flags: blocking2.20?
Flags: approval?
Flags: approval+
Checking in Bugzilla/Flag.pm;
/cvsroot/mozilla/webtools/bugzilla/Bugzilla/Flag.pm,v  <--  Flag.pm
new revision: 1.37; previous revision: 1.36
done
Status: ASSIGNED → RESOLVED
Closed: 20 years ago
Resolution: --- → FIXED
Attached patch patch checked inSplinter Review
this is the patch which has been checked in.
Whiteboard: [applied to b.m.o]
Whiteboard: [applied to b.m.o]
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: