diff options
author | lpsolit%gmail.com <> | 2007-10-09 15:34:41 +0000 |
---|---|---|
committer | lpsolit%gmail.com <> | 2007-10-09 15:34:41 +0000 |
commit | 1b8e4cadbdab2e8a335c9f1186a301e493a9a8b3 (patch) | |
tree | fa2b295246b059f0a3524c74972566c14b59ce1f /Bugzilla/Status.pm | |
parent | 73553366455cb23a6df1847d67bde74386c87742 (diff) | |
download | bugs-1b8e4cadbdab2e8a335c9f1186a301e493a9a8b3.tar bugs-1b8e4cadbdab2e8a335c9f1186a301e493a9a8b3.tar.gz bugs-1b8e4cadbdab2e8a335c9f1186a301e493a9a8b3.tar.bz2 bugs-1b8e4cadbdab2e8a335c9f1186a301e493a9a8b3.tar.xz bugs-1b8e4cadbdab2e8a335c9f1186a301e493a9a8b3.zip |
Bug 387672: Move BUG_STATE_OPEN and is_open_state() into Status.pm - Patch by Frédéric Buclin <LpSolit@gmail.com> r/a=mkanat
Diffstat (limited to 'Bugzilla/Status.pm')
-rw-r--r-- | Bugzilla/Status.pm | 17 |
1 files changed, 15 insertions, 2 deletions
diff --git a/Bugzilla/Status.pm b/Bugzilla/Status.pm index 9af0f043c..65baf04b8 100644 --- a/Bugzilla/Status.pm +++ b/Bugzilla/Status.pm @@ -22,7 +22,8 @@ use strict; package Bugzilla::Status; -use base qw(Bugzilla::Object); +use base qw(Bugzilla::Object Exporter); +@Bugzilla::Status::EXPORT = qw(BUG_STATE_OPEN is_open_state closed_bug_statuses); ################################ ##### Initialization ##### @@ -54,6 +55,18 @@ sub is_open { return $_[0]->{'is_open'}; } ##### Methods #### ############################### +sub BUG_STATE_OPEN { + # XXX - We should cache this list. + my $dbh = Bugzilla->dbh; + return @{$dbh->selectcol_arrayref('SELECT value FROM bug_status WHERE is_open = 1')}; +} + +# Tells you whether or not the argument is a valid "open" state. +sub is_open_state { + my ($state) = @_; + return (grep($_ eq $state, BUG_STATE_OPEN) ? 1 : 0); +} + sub closed_bug_statuses { my @bug_statuses = Bugzilla::Status->get_all; @bug_statuses = grep { !$_->is_open } @bug_statuses; @@ -154,7 +167,7 @@ Bugzilla::Status - Bug status class. my $bug_status = new Bugzilla::Status({name => 'ASSIGNED'}); my $bug_status = new Bugzilla::Status(4); - my @closed_bug_statuses = Bugzilla::Status::closed_bug_statuses(); + my @closed_bug_statuses = closed_bug_statuses(); Bugzilla::Status::add_missing_bug_status_transitions($bug_status); |