Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
bugzilla
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
etersoft
bugzilla
Commits
e394756f
Commit
e394756f
authored
Jul 17, 2009
by
ghendricks%novell.com
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Bug 456743 - Add the ability to disable field values (mark them as inactive)
patch by ghendricks@novell.com r=LpSolit, a=LpSolit
parent
f304db03
Hide whitespace changes
Inline
Side-by-side
Showing
8 changed files
with
52 additions
and
22 deletions
+52
-22
Field.pm
Bugzilla/Field.pm
+8
-1
Choice.pm
Bugzilla/Field/Choice.pm
+9
-3
editvalues.cgi
editvalues.cgi
+3
-0
query.cgi
query.cgi
+6
-10
edit.html.tmpl
template/en/default/admin/fieldvalues/edit.html.tmpl
+12
-1
list.html.tmpl
template/en/default/admin/fieldvalues/list.html.tmpl
+5
-0
field.html.tmpl
template/en/default/bug/field.html.tmpl
+1
-1
form.html.tmpl
template/en/default/search/form.html.tmpl
+8
-6
No files found.
Bugzilla/Field.pm
View file @
e394756f
...
...
@@ -15,6 +15,7 @@
# Contributor(s): Dan Mosedale <dmose@mozilla.org>
# Frédéric Buclin <LpSolit@gmail.com>
# Myk Melez <myk@mozilla.org>
# Greg Hendricks <ghendricks@novell.com>
=head1 NAME
...
...
@@ -1033,8 +1034,14 @@ sub check_field {
my
$dbh
=
Bugzilla
->
dbh
;
# If $legalsRef is undefined, we use the default valid values.
# Valid values for this check are all possible values.
# Using get_legal_values would only return active values, but since
# some bugs may have inactive values set, we want to check them too.
unless
(
defined
$legalsRef
)
{
$legalsRef
=
get_legal_field_values
(
$name
);
$legalsRef
=
Bugzilla::
Field
->
new
({
name
=>
$name
})
->
legal_values
;
my
@values
=
map
(
$_
->
name
,
@$legalsRef
);
$legalsRef
=
\
@values
;
}
if
(
!
defined
(
$value
)
...
...
Bugzilla/Field/Choice.pm
View file @
e394756f
...
...
@@ -17,6 +17,7 @@
# The Original Code is the Bugzilla Bug Tracking System.
#
# Contributor(s): Max Kanat-Alexander <mkanat@bugzilla.org>
# Greg Hendricks <ghendricks@novell.com>
use
strict
;
...
...
@@ -40,12 +41,14 @@ use constant DB_COLUMNS => qw(
id
value
sortkey
isactive
visibility_value_id
)
;
use
constant
UPDATE_COLUMNS
=>
qw(
value
sortkey
isactive
visibility_value_id
)
;
...
...
@@ -58,6 +61,7 @@ use constant VALIDATORS => {
value
=>
\&
_check_value
,
sortkey
=>
\&
_check_sortkey
,
visibility_value_id
=>
\&
_check_visibility_value_id
,
isactive
=>
\&
Bugzilla::Object::
check_boolean
,
};
use
constant
CLASS_MAP
=>
{
...
...
@@ -211,7 +215,8 @@ sub _check_if_controller {
# Accessors #
#############
sub
sortkey
{
return
$_
[
0
]
->
{
'sortkey'
};
}
sub
is_active
{
return
$_
[
0
]
->
{
'isactive'
};
}
sub
sortkey
{
return
$_
[
0
]
->
{
'sortkey'
};
}
sub
bug_count
{
my
$self
=
shift
;
...
...
@@ -301,8 +306,9 @@ sub controlled_values {
# Mutators #
############
sub
set_name
{
$_
[
0
]
->
set
(
'value'
,
$_
[
1
]);
}
sub
set_sortkey
{
$_
[
0
]
->
set
(
'sortkey'
,
$_
[
1
]);
}
sub
set_is_active
{
$_
[
0
]
->
set
(
'isactive'
,
$_
[
1
]);
}
sub
set_name
{
$_
[
0
]
->
set
(
'value'
,
$_
[
1
]);
}
sub
set_sortkey
{
$_
[
0
]
->
set
(
'sortkey'
,
$_
[
1
]);
}
sub
set_visibility_value
{
my
(
$self
,
$value
)
=
@_
;
$self
->
set
(
'visibility_value_id'
,
$value
);
...
...
editvalues.cgi
View file @
e394756f
...
...
@@ -188,6 +188,9 @@ if ($action eq 'update') {
$value
->
set_name
(
$cgi
->
param
(
'value_new'
));
$value
->
set_sortkey
(
$cgi
->
param
(
'sortkey'
));
$value
->
set_visibility_value
(
$cgi
->
param
(
'visibility_value_id'
));
if
(
!
(
$value
->
is_static
||
$value
->
is_default
))
{
$value
->
set_is_active
(
$cgi
->
param
(
'is_active'
));
}
$vars
->
{
'changes'
}
=
$value
->
update
();
delete_token
(
$token
);
$vars
->
{
'message'
}
=
'field_value_updated'
;
...
...
query.cgi
View file @
e394756f
...
...
@@ -232,11 +232,6 @@ if (Bugzilla->params->{'usetargetmilestone'}) {
$vars
->
{
'have_keywords'
}
=
Bugzilla::Keyword::
keyword_count
();
my
$legal_resolutions
=
get_legal_field_values
(
'resolution'
);
push
(
@$legal_resolutions
,
"---"
);
# Oy, what a hack.
# Another hack - this array contains "" for some reason. See bug 106589.
$vars
->
{
'resolution'
}
=
[
grep
(
$_
,
@$legal_resolutions
)];
my
@chfields
;
push
@chfields
,
"[Bug creation]"
;
...
...
@@ -262,11 +257,12 @@ if (Bugzilla->user->in_group(Bugzilla->params->{'timetrackinggroup'})) {
}
@chfields
=
(
sort
(
@chfields
));
$vars
->
{
'chfield'
}
=
\
@chfields
;
$vars
->
{
'bug_status'
}
=
get_legal_field_values
(
'bug_status'
);
$vars
->
{
'rep_platform'
}
=
get_legal_field_values
(
'rep_platform'
);
$vars
->
{
'op_sys'
}
=
get_legal_field_values
(
'op_sys'
);
$vars
->
{
'priority'
}
=
get_legal_field_values
(
'priority'
);
$vars
->
{
'bug_severity'
}
=
get_legal_field_values
(
'bug_severity'
);
$vars
->
{
'bug_status'
}
=
Bugzilla::
Field
->
new
({
name
=>
'bug_status'
})
->
legal_values
;
$vars
->
{
'rep_platform'
}
=
Bugzilla::
Field
->
new
({
name
=>
'rep_platform'
})
->
legal_values
;
$vars
->
{
'op_sys'
}
=
Bugzilla::
Field
->
new
({
name
=>
'op_sys'
})
->
legal_values
;
$vars
->
{
'priority'
}
=
Bugzilla::
Field
->
new
({
name
=>
'priority'
})
->
legal_values
;
$vars
->
{
'bug_severity'
}
=
Bugzilla::
Field
->
new
({
name
=>
'bug_severity'
})
->
legal_values
;
$vars
->
{
'resolution'
}
=
Bugzilla::
Field
->
new
({
name
=>
'resolution'
})
->
legal_values
;
# Boolean charts
my
@fields
=
Bugzilla
->
get_fields
({
obsolete
=>
0
});
...
...
template/en/default/admin/fieldvalues/edit.html.tmpl
View file @
e394756f
...
...
@@ -81,8 +81,19 @@
</td>
</tr>
[% END %]
<tr>
<th align="right"><label for="is_active">Enabled for [% terms.bugs %]:</label></th>
<td><input id="is_active" name="is_active" type="checkbox" value="1"
[%+ 'checked="checked"' IF value.is_active %]
[%+ 'disabled="disabled"' IF value.is_default OR value.is_static %]>
[% IF value.is_default %]
This value is selected as default in the parameters for this field. It cannot be disabled.
[% ELSIF value.is_static %]
This value is non-deletable and cannot be disabled.
[% END %]
</td>
</tr>
</table>
<input type="hidden" name="value" value="[% value.name FILTER html %]">
<input type="hidden" name="action" value="update">
<input type="hidden" name="field" value="[% field.name FILTER html %]">
...
...
template/en/default/admin/fieldvalues/list.html.tmpl
View file @
e394756f
...
...
@@ -51,6 +51,11 @@
heading => "Sortkey"
},
{
name => "isactive"
heading => "Enabled for $terms.bugs"
yesno_field => 1
},
{
name => "action"
heading => "Action"
content => "Delete"
...
...
template/en/default/bug/field.html.tmpl
View file @
e394756f
...
...
@@ -142,7 +142,7 @@
selected="selected"
[% ELSIF (control_field && control_value
&& !bug.${control_field.name}.contains(control_value.name))
||
(field.name == "product" && !legal_value.is_active)
||
!legal_value.is_active
%]
class="bz_hidden_option" disabled="disabled"
[% END %]>
...
...
template/en/default/search/form.html.tmpl
View file @
e394756f
...
...
@@ -611,15 +611,17 @@ function doOnSelectProduct(selectmode) {
<td align="left">
<select name="[% sel.name %]" id="[% sel.name %]"
multiple="multiple" size="[% sel.size %]">
[% FOREACH name = ${sel.name} %]
<option value="[% name FILTER html %]"
[% " selected" IF lsearch(default.${sel.name}, name) != -1 %]>
[% FOREACH value = ${sel.name} %]
[%# This only applies for Resolution really %]
<option value="[% value.name OR '---' FILTER html %]"
[% " selected" IF lsearch(default.${sel.name}, value.name) != -1 %]>
[% IF sel.name == "bug_status" %]
[% get_status(name) FILTER html %]
[% get_status(
value.
name) FILTER html %]
[% ELSIF sel.name == "resolution" %]
[% get_resolution(name) FILTER html %]
[%# Again, resolution has that odd empty value. Replace it with '---' %]
[% get_resolution(value.name) OR '---' FILTER html %]
[% ELSE %]
[% name FILTER html %]
[%
value.
name FILTER html %]
[% END %]
</option>
[% END %]
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment