diff options
author | Gervase Markham <gerv@mozilla.org> | 2013-05-03 16:13:53 +0200 |
---|---|---|
committer | Dave Lawrence <dlawrence@mozilla.com> | 2013-05-03 16:13:53 +0200 |
commit | b4410eb57d8e07de23de18b6375039c47e6cea35 (patch) | |
tree | 4ecc320aa75ae046827744a1fa83f7de64fe06fe /Bugzilla/Field.pm | |
parent | 7738bea531e27159910df07e329dac26ff3edf7b (diff) | |
download | bugzilla-b4410eb57d8e07de23de18b6375039c47e6cea35.tar.gz bugzilla-b4410eb57d8e07de23de18b6375039c47e6cea35.tar.xz |
Bug 866248 - backport new date custom field type from bug 801664 to bmo/4.2
r=glob
Diffstat (limited to 'Bugzilla/Field.pm')
-rw-r--r-- | Bugzilla/Field.pm | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/Bugzilla/Field.pm b/Bugzilla/Field.pm index 3d482b3c9..6b5b6ba94 100644 --- a/Bugzilla/Field.pm +++ b/Bugzilla/Field.pm @@ -161,6 +161,7 @@ use constant SQL_DEFINITIONS => { FIELD_TYPE_TEXTAREA, { TYPE => 'MEDIUMTEXT', NOTNULL => 1, DEFAULT => "''"}, FIELD_TYPE_DATETIME, { TYPE => 'DATETIME' }, + FIELD_TYPE_DATE, { TYPE => 'DATE' }, FIELD_TYPE_BUG_ID, { TYPE => 'INT3' }, }; @@ -349,9 +350,7 @@ sub _check_sortkey { sub _check_type { my ($invocant, $type, undef, $params) = @_; my $saved_type = $type; - # The constant here should be updated every time a new, - # higher field type is added. - (detaint_natural($type) && $type <= FIELD_TYPE_KEYWORDS) + (detaint_natural($type) && $type < FIELD_TYPE_HIGHEST_PLUS_ONE) || ThrowCodeError('invalid_customfield_type', { type => $saved_type }); my $custom = blessed($invocant) ? $invocant->custom : $params->{custom}; @@ -943,7 +942,10 @@ sub remove_from_db { } else { $bugs_query = "SELECT COUNT(*) FROM bugs WHERE $name IS NOT NULL"; - if ($self->type != FIELD_TYPE_BUG_ID && $self->type != FIELD_TYPE_DATETIME) { + if ($self->type != FIELD_TYPE_BUG_ID + && $self->type != FIELD_TYPE_DATE + && $self->type != FIELD_TYPE_DATETIME) + { $bugs_query .= " AND $name != ''"; } # Ignore the default single select value |