diff options
author | Dave Lawrence <dlawrence@mozilla.com> | 2013-09-03 23:57:42 +0200 |
---|---|---|
committer | Dave Lawrence <dlawrence@mozilla.com> | 2013-09-03 23:57:42 +0200 |
commit | 37aef45426f4b831bbced64783568f8104b42dcb (patch) | |
tree | 8d69b3e7c60935de30004c6a0fa7e126721a1875 /extensions/TrackingFlags/lib | |
parent | f988b727cc57bbc8fa9095476b1a27e5f9f9cb17 (diff) | |
download | bugzilla-37aef45426f4b831bbced64783568f8104b42dcb.tar.gz bugzilla-37aef45426f4b831bbced64783568f8104b42dcb.tar.xz |
Bug 912232 - Show tracking flag bug counts in tracking flag list as well as on the edit page
Diffstat (limited to 'extensions/TrackingFlags/lib')
-rw-r--r-- | extensions/TrackingFlags/lib/Admin.pm | 6 | ||||
-rw-r--r-- | extensions/TrackingFlags/lib/Flag.pm | 13 |
2 files changed, 9 insertions, 10 deletions
diff --git a/extensions/TrackingFlags/lib/Admin.pm b/extensions/TrackingFlags/lib/Admin.pm index 3529d30a7..2796a102d 100644 --- a/extensions/TrackingFlags/lib/Admin.pm +++ b/extensions/TrackingFlags/lib/Admin.pm @@ -37,7 +37,7 @@ our @EXPORT = qw( sub admin_list { my ($vars) = @_; - + $vars->{show_bug_counts} = Bugzilla->input_params->{show_bug_counts}; $vars->{flags} = [ Bugzilla::Extension::TrackingFlags::Flag->get_all() ]; } @@ -75,7 +75,7 @@ sub admin_edit { $vars->{flag} = $flag_obj; $vars->{values} = _flag_values_to_json($values); $vars->{visibility} = _flag_visibility_to_json($visibilities); - $vars->{can_delete} = !$flag_obj->has_bug_values; + $vars->{can_delete} = !$flag_obj->bug_count; if ($vars->{mode} eq 'new') { $vars->{message} = 'tracking_flag_created'; @@ -93,7 +93,7 @@ sub admin_edit { $vars->{flag} = $flag; $vars->{values} = _flag_values_to_json($flag->values); $vars->{visibility} = _flag_visibility_to_json($flag->visibility); - $vars->{can_delete} = !$flag->has_bug_values; + $vars->{can_delete} = !$flag->bug_count; } elsif ($vars->{mode} eq 'copy') { # copy - load the source flag diff --git a/extensions/TrackingFlags/lib/Flag.pm b/extensions/TrackingFlags/lib/Flag.pm index f35b661eb..26780a2b1 100644 --- a/extensions/TrackingFlags/lib/Flag.pm +++ b/extensions/TrackingFlags/lib/Flag.pm @@ -223,7 +223,7 @@ sub remove_from_db { } # Check to see if tracking_flags_bugs table has records - if ($self->has_bug_values) { + if ($self->bug_count) { ThrowUserError('tracking_flag_has_contents', { flag => $self }); } @@ -396,15 +396,14 @@ sub bug_flag { return $self->{'bug_flag'} = Bugzilla::Extension::TrackingFlags::Flag::Bug->new($params); } -sub has_bug_values { +sub bug_count { my ($self) = @_; - return $self->{'has_bug_values'} if defined $self->{'has_bug_values'}; + return $self->{'bug_count'} if defined $self->{'bug_count'}; my $dbh = Bugzilla->dbh; - return $self->{'has_bug_values'} = scalar $dbh->selectrow_array(" - SELECT 1 + return $self->{'bug_count'} = scalar $dbh->selectrow_array(" + SELECT COUNT(bug_id) FROM tracking_flags_bugs - WHERE tracking_flag_id = ? " . - $dbh->sql_limit(1), + WHERE tracking_flag_id = ?", undef, $self->flag_id); } |