Bug 64428

git-svn-id: svn://svn.office.custis.ru/3rdparty/bugzilla.org/trunk@761 6955db30-a419-402b-8a0d-67ecbb4d7f56
master
vfilippov 2010-05-28 18:35:07 +00:00
parent 4d9f2d62a9
commit 0566e580fd
2 changed files with 5 additions and 9 deletions

View File

@ -506,18 +506,15 @@ sub sendMail
# Filter changes by verifying the user should see them
my $new_diffs = [];
my $tt_fields = { map { $_ => 1 } TIMETRACKING_FIELDS };
foreach my $diff (@$diffs)
{
# Exclude diffs with timetracking information for non-timetrackers
# Exclude diffs with private attachments for non-insiders
# Exclude dependency diffs with if dependencies are not visible to the user
if (exists($diff->{'fieldname'}) &&
($diff->{'fieldname'} ne 'estimated_time' &&
$diff->{'fieldname'} ne 'remaining_time' &&
$diff->{'fieldname'} ne 'work_time' &&
$diff->{'fieldname'} ne 'deadline' ||
$user->is_timetracker) &&
(!$diff->{'isprivate'} || $user->is_insider) &&
if (exists($diff->{fieldname}) &&
(!$tt_fields->{$diff->{fieldname}} || $user->is_timetracker) &&
(!$diff->{isprivate} || $user->is_insider) &&
(!$diff->{dep} || $user->can_see_bug($diff->{dep})))
{
push @$new_diffs, $diff;

View File

@ -266,7 +266,7 @@ $vars->{'resolution'} = Bugzilla::Field->new({name => 'resolution'})->legal_valu
# If we're not in the time-tracking group, exclude time-tracking fields.
if (!Bugzilla->user->is_timetracker) {
foreach my $tt_field (TIMETRACKING_FIELDS) {
@{$vars->{fields}} = grep($_->name ne $tt_field, @{$vars->{fields}});
@{$vars->{fields}} = grep($_->{name} ne $tt_field, @{$vars->{fields}});
}
}
@ -370,7 +370,6 @@ if ($cgi->param('format') && $cgi->param('format') =~ /^report-(table|graph)$/)
$vars->{'known_name'} = $cgi->param('known_name');
$vars->{'columnlist'} = $cgi->param('columnlist');
# Add in the defaults.
$vars->{'default'} = \%default;