diff --git a/mozilla/webtools/bugzilla/.bzrrev b/mozilla/webtools/bugzilla/.bzrrev index ba1390bddbd..f68ccfe21d7 100644 --- a/mozilla/webtools/bugzilla/.bzrrev +++ b/mozilla/webtools/bugzilla/.bzrrev @@ -1 +1 @@ -8418 \ No newline at end of file +8419 \ No newline at end of file diff --git a/mozilla/webtools/bugzilla/Bugzilla/Search.pm b/mozilla/webtools/bugzilla/Bugzilla/Search.pm index d4236d578ad..3805cd2adf9 100644 --- a/mozilla/webtools/bugzilla/Bugzilla/Search.pm +++ b/mozilla/webtools/bugzilla/Bugzilla/Search.pm @@ -2154,6 +2154,15 @@ sub _contact_exact_group { } } +sub _get_user_id { + my ($self, $value) = @_; + + if ($value =~ /^%\w+%$/) { + return pronoun($value, $self->_user); + } + return login_to_id($value, THROW_ERROR); +} + ##################################################################### # Search Functions ##################################################################### @@ -2284,7 +2293,7 @@ sub _long_desc_changedby { my $table = "longdescs_$chart_id"; push(@$joins, { table => 'longdescs', as => $table }); - my $user_id = login_to_id($value, THROW_ERROR); + my $user_id = $self->_get_user_id($value); $args->{term} = "$table.who = $user_id"; } @@ -2380,7 +2389,7 @@ sub _work_time_changedby { my $table = "longdescs_$chart_id"; push(@$joins, { table => 'longdescs', as => $table }); - my $user_id = login_to_id($value, THROW_ERROR); + my $user_id = $self->_get_user_id($value); $args->{term} = "$table.who = $user_id AND $table.work_time != 0"; } @@ -2829,7 +2838,7 @@ sub _changedby { || ThrowCodeError("invalid_field_name", { field => $field }); my $field_id = $field_object->id; my $table = "act_${field_id}_$chart_id"; - my $user_id = login_to_id($value, THROW_ERROR); + my $user_id = $self->_get_user_id($value); my $join = { table => 'bugs_activity', as => $table,