summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rwxr-xr-xeditvalues.cgi31
-rw-r--r--template/en/default/admin/fieldvalues/confirm-delete.html.tmpl26
-rw-r--r--template/en/default/admin/fieldvalues/create.html.tmpl15
-rw-r--r--template/en/default/admin/fieldvalues/created.html.tmpl14
-rw-r--r--template/en/default/admin/fieldvalues/deleted.html.tmpl8
-rw-r--r--template/en/default/admin/fieldvalues/edit.html.tmpl10
-rw-r--r--template/en/default/admin/fieldvalues/footer.html.tmpl13
-rw-r--r--template/en/default/admin/fieldvalues/list.html.tmpl10
-rw-r--r--template/en/default/admin/fieldvalues/updated.html.tmpl8
-rw-r--r--template/en/default/global/user-error.html.tmpl8
10 files changed, 70 insertions, 73 deletions
diff --git a/editvalues.cgi b/editvalues.cgi
index fe1ad546a..c42e0d142 100755
--- a/editvalues.cgi
+++ b/editvalues.cgi
@@ -27,6 +27,7 @@ use Bugzilla::Error;
use Bugzilla::Constants;
use Bugzilla::Config qw(:admin);
use Bugzilla::Token;
+use Bugzilla::Field;
# List of different tables that contain the changeable field values
# (the old "enums.") Keep them in alphabetical order by their
@@ -63,13 +64,13 @@ sub FieldMustExist {
# Is it a valid field to be editing?
FieldExists($field) ||
ThrowUserError('fieldname_invalid', {'field' => $field});
+
+ return new Bugzilla::Field({name => $field});
}
# Returns if the specified value exists for the field specified.
sub ValueExists {
my ($field, $value) = @_;
- FieldMustExist($field);
- trick_taint($field);
# Value is safe because it's being passed only to a SELECT
# statement via a placeholder.
trick_taint($value);
@@ -155,20 +156,19 @@ unless ($field) {
exit;
}
+# At this point, the field is defined.
+$vars->{'field'} = FieldMustExist($field);
+trick_taint($field);
#
# action='' -> Show nice list of values.
#
unless ($action) {
- FieldMustExist($field);
- # Now we know the $field is valid.
- trick_taint($field);
-
- my $fieldvalues =
+ my $fieldvalues =
$dbh->selectall_arrayref("SELECT value AS name, sortkey"
. " FROM $field ORDER BY sortkey, value",
{Slice =>{}});
- $vars->{'field'} = $field;
+
$vars->{'values'} = $fieldvalues;
$vars->{'default'} = Bugzilla->params->{$defaults{$field}} if defined $defaults{$field};
$vars->{'static'} = $static{$field} if exists $static{$field};
@@ -184,10 +184,7 @@ unless ($action) {
# (next action will be 'new')
#
if ($action eq 'add') {
- FieldMustExist($field);
-
$vars->{'value'} = $value;
- $vars->{'field'} = $field;
$vars->{'token'} = issue_session_token('add_field_value');
$template->process("admin/fieldvalues/create.html.tmpl",
$vars)
@@ -202,8 +199,6 @@ if ($action eq 'add') {
#
if ($action eq 'new') {
check_token_data($token, 'add_field_value');
- FieldMustExist($field);
- trick_taint($field);
# Cleanups and validity checks
$value || ThrowUserError('fieldvalue_undefined');
@@ -235,7 +230,6 @@ if ($action eq 'new') {
delete_token($token);
$vars->{'value'} = $value;
- $vars->{'field'} = $field;
$template->process("admin/fieldvalues/created.html.tmpl",
$vars)
|| ThrowTemplateError($template->error());
@@ -250,7 +244,6 @@ if ($action eq 'new') {
#
if ($action eq 'del') {
ValueMustExist($field, $value);
- trick_taint($field);
trick_taint($value);
# See if any bugs are still using this value.
@@ -261,7 +254,6 @@ if ($action eq 'del') {
$dbh->selectrow_array("SELECT COUNT(*) FROM $field");
$vars->{'value'} = $value;
- $vars->{'field'} = $field;
$vars->{'param_name'} = $defaults{$field};
# If the value cannot be deleted, throw an error.
@@ -286,7 +278,6 @@ if ($action eq 'delete') {
ValueMustExist($field, $value);
$vars->{'value'} = $value;
- $vars->{'field'} = $field;
$vars->{'param_name'} = $defaults{$field};
if (defined $defaults{$field}
@@ -299,7 +290,6 @@ if ($action eq 'delete') {
ThrowUserError('fieldvalue_not_deletable', $vars);
}
- trick_taint($field);
trick_taint($value);
$dbh->bz_lock_tables('bugs READ', "$field WRITE");
@@ -334,14 +324,12 @@ if ($action eq 'delete') {
#
if ($action eq 'edit') {
ValueMustExist($field, $value);
- trick_taint($field);
trick_taint($value);
$vars->{'sortkey'} = $dbh->selectrow_array(
"SELECT sortkey FROM $field WHERE value = ?", undef, $value) || 0;
$vars->{'value'} = $value;
- $vars->{'field'} = $field;
$vars->{'is_static'} = (lsearch($static{$field}, $value) >= 0) ? 1 : 0;
$vars->{'token'} = issue_session_token('edit_field_value');
@@ -361,12 +349,9 @@ if ($action eq 'update') {
my $sortkeyold = trim($cgi->param('sortkeyold') || '0');
ValueMustExist($field, $valueold);
- trick_taint($field);
trick_taint($valueold);
$vars->{'value'} = $value;
- $vars->{'field'} = $field;
-
# If the value cannot be renamed, throw an error.
if (lsearch($static{$field}, $valueold) >= 0 && $value ne $valueold) {
$vars->{'old_value'} = $valueold;
diff --git a/template/en/default/admin/fieldvalues/confirm-delete.html.tmpl b/template/en/default/admin/fieldvalues/confirm-delete.html.tmpl
index 4cd001476..c5baf3658 100644
--- a/template/en/default/admin/fieldvalues/confirm-delete.html.tmpl
+++ b/template/en/default/admin/fieldvalues/confirm-delete.html.tmpl
@@ -19,13 +19,15 @@
# bug_count: number; The number of bugs that have this field value.
# value_count: number; The number of values left for this field, including
# this value.
- # field: string; The name of the field.
+ # field: object; the field the value is being deleted from.
# param_name: string; The name of the parameter (defaultxxx) associated
# with the field.
#%]
-[% title = BLOCK %]Delete Value '[% value FILTER html %]' from the
- '[% field FILTER html %]' field[% END %]
+[% title = BLOCK %]
+ Delete Value '[% value FILTER html %]' from the '[% field.description FILTER html %]'
+ ([% field.name FILTER html %]) field
+[% END %]
[% PROCESS global/header.html.tmpl
title = title
@@ -39,7 +41,7 @@
</tr>
<tr>
<td valign="top">Field Name:</td>
- <td valign="top">[% field FILTER html %]</td>
+ <td valign="top">[% field.description FILTER html %]</td>
</tr>
<tr>
<td valign="top">Field Value:</td>
@@ -49,9 +51,9 @@
<td valign="top">[% terms.Bugs %]:</td>
<td valign="top">
[% IF bug_count %]
- <a title="List of [% terms.bugs %] where '[% field FILTER html %]' is '
+ <a title="List of [% terms.bugs %] where '[% field.description FILTER html %]' is '
[% value FILTER html %]'"
- href="buglist.cgi?[% field FILTER url_quote %]=[%- value FILTER url_quote %]">[% bug_count FILTER html %]</a>
+ href="buglist.cgi?[% field.name FILTER url_quote %]=[%- value FILTER url_quote %]">[% bug_count FILTER html %]</a>
[% ELSE %]
None
[% END %]
@@ -64,12 +66,12 @@
[% IF (param_name.defined && Param(param_name) == value) || bug_count || (value_count == 1) %]
<p>Sorry, but the '[% value FILTER html %]' value cannot be deleted
- from the '[% field FILTER html %]' field for the following reason(s):</p>
+ from the '[% field.description FILTER html %]' field for the following reason(s):</p>
<ul class="warningmessages">
[% IF param_name.defined && Param(param_name) == value %]
<li>'[% value FILTER html %]' is the default value for
- the '[% field FILTER html %]' field.
+ the '[% field.description FILTER html %]' field.
[% IF user.groups.tweakparams %]
You first have to <a href="editparams.cgi?section=bugfields#
[%- param_name FILTER url_quote %]">change the default value</a> for
@@ -85,8 +87,8 @@
is 1 [% terms.bug %]
[% END %]
with this field value. You must change the field value on
- <a title="List of [% terms.bugs %] where '[% field FILTER html %]' is '[% value FILTER html %]'"
- href="buglist.cgi?[% field FILTER url_quote %]=[% value FILTER url_quote %]">
+ <a title="List of [% terms.bugs %] where '[% field.description FILTER html %]' is '[% value FILTER html %]'"
+ href="buglist.cgi?[% field.name FILTER url_quote %]=[% value FILTER url_quote %]">
[% IF bug_count > 1 %]
those [% terms.bugs %]
[% ELSE %]
@@ -98,7 +100,7 @@
[% IF value_count == 1 %]
<li>'[% value FILTER html %]' is the last value for
- '[%- field FILTER html %]', and so it can not be deleted.
+ '[%- field.description FILTER html %]', and so it can not be deleted.
[% END %]
</ul>
@@ -109,7 +111,7 @@
<form method="post" action="editvalues.cgi">
<input type="submit" value="Yes, delete" id="delete">
<input type="hidden" name="action" value="delete">
- <input type="hidden" name="field" value="[% field FILTER html %]">
+ <input type="hidden" name="field" value="[% field.name FILTER html %]">
<input type="hidden" name="value" value="[% value FILTER html %]">
<input type="hidden" name="token" value="[% token FILTER html %]">
</form>
diff --git a/template/en/default/admin/fieldvalues/create.html.tmpl b/template/en/default/admin/fieldvalues/create.html.tmpl
index 29bf85778..9a0ac993e 100644
--- a/template/en/default/admin/fieldvalues/create.html.tmpl
+++ b/template/en/default/admin/fieldvalues/create.html.tmpl
@@ -15,17 +15,20 @@
#%]
[%# INTERFACE:
- # field: string; name of the field the value is being created for
+ # field: object; the field the value is being created for
#%]
-[% title = BLOCK %]Add Value for the '[% field FILTER html %]' field[% END %]
-[% subheader = BLOCK %]This page allows you to add a new value for the
- '[% field FILTER html %]' field.[% END %]
+[% title = BLOCK %]
+ Add Value for the '[% field.description FILTER html %]' ([% field.name FILTER html %]) field
+[% END %]
[% PROCESS global/header.html.tmpl
title = title
- subheader = subheader
%]
+<p>
+ This page allows you to add a new value for the '[% field.description FILTER html %]' field.
+</p>
+
<form method="post" action="editvalues.cgi">
<table border="0" cellpadding="4" cellspacing="0">
<tr>
@@ -41,7 +44,7 @@
</table>
<input type="submit" id="create" value="Add">
<input type="hidden" name="action" value="new">
- <input type="hidden" name='field' value="[% field FILTER html %]">
+ <input type="hidden" name='field' value="[% field.name FILTER html %]">
<input type="hidden" name="token" value="[% token FILTER html %]">
</form>
diff --git a/template/en/default/admin/fieldvalues/created.html.tmpl b/template/en/default/admin/fieldvalues/created.html.tmpl
index 218477103..b3d60f081 100644
--- a/template/en/default/admin/fieldvalues/created.html.tmpl
+++ b/template/en/default/admin/fieldvalues/created.html.tmpl
@@ -16,21 +16,23 @@
[%# INTERFACE:
# value: string; the name of the newly created field value
- # field: string; the name of the field the value belongs to
+ # field: object; the field the value belongs to
#%]
-[% title = BLOCK %]New Value '[% value FILTER html %]' added to
- '[% field FILTER html %]' field[% END %]
+[% title = BLOCK %]
+ New Value '[% value FILTER html %]' added to '[% field.description FILTER html %]'
+ ([% field.name FILTER html %]) field
+[% END %]
[% PROCESS global/header.html.tmpl
title = title
%]
<p>The value '<a title="Edit value '[% value FILTER html %]' of
- for the '[% field FILTER html %]' field"
+ for the '[% field.description FILTER html %]' field"
href="editvalues.cgi?action=edit&amp;field=
- [%- field FILTER url_quote %]&amp;value=[% value FILTER url_quote %]">
+ [%- field.name FILTER url_quote %]&amp;value=[% value FILTER url_quote %]">
[%- value FILTER html %]</a>' has been added as a valid choice for
- the '[% field FILTER html %]' field.</p>
+ the '[% field.description FILTER html %]' field.</p>
[% PROCESS admin/fieldvalues/footer.html.tmpl %]
diff --git a/template/en/default/admin/fieldvalues/deleted.html.tmpl b/template/en/default/admin/fieldvalues/deleted.html.tmpl
index c966897f6..421080011 100644
--- a/template/en/default/admin/fieldvalues/deleted.html.tmpl
+++ b/template/en/default/admin/fieldvalues/deleted.html.tmpl
@@ -17,12 +17,14 @@
[%# INTERFACE:
# value: string; the field value that was deleted.
#
- # field: string; the field the value was deleted from.
+ # field: object; the field the value was deleted from.
#
#%]
-[% title = BLOCK %]Deleted Value '[% value FILTER html %]' for the
- '[% field FILTER html %]' Field[% END %]
+[% title = BLOCK %]
+ Deleted Value '[% value FILTER html %]' for the '[% field.description FILTER html %]'
+ ([% field.name FILTER html %]) Field
+[% END %]
[% PROCESS global/header.html.tmpl
title = title
%]
diff --git a/template/en/default/admin/fieldvalues/edit.html.tmpl b/template/en/default/admin/fieldvalues/edit.html.tmpl
index e19b7c0b5..919ac090c 100644
--- a/template/en/default/admin/fieldvalues/edit.html.tmpl
+++ b/template/en/default/admin/fieldvalues/edit.html.tmpl
@@ -17,13 +17,15 @@
[%# INTERFACE:
# value: string; The field value we are editing.
# sortkey: number; Sortkey of the field value we are editing.
- # field: string; The field this value belongs to.
+ # field: object; The field this value belongs to.
#%]
[% PROCESS global/variables.none.tmpl %]
-[% title = BLOCK %]Edit Value '[% value FILTER html %]' '
- [%- field FILTER html %]'[% END %]
+[% title = BLOCK %]
+ Edit Value '[% value FILTER html %]' for the '[% field.description FILTER html %]'
+ ([% field.name FILTER html %]) field
+[% END %]
[% PROCESS global/header.html.tmpl
title = title
%]
@@ -54,7 +56,7 @@
<input type="hidden" name="valueold" value="[% value FILTER html %]">
<input type="hidden" name="sortkeyold" value="[% sortkey FILTER html %]">
<input type="hidden" name="action" value="update">
- <input type="hidden" name="field" value="[% field FILTER html %]">
+ <input type="hidden" name="field" value="[% field.name FILTER html %]">
<input type="hidden" name="token" value="[% token FILTER html %]">
<input type="submit" id="update" value="Update">
</form>
diff --git a/template/en/default/admin/fieldvalues/footer.html.tmpl b/template/en/default/admin/fieldvalues/footer.html.tmpl
index 27428f66d..440376239 100644
--- a/template/en/default/admin/fieldvalues/footer.html.tmpl
+++ b/template/en/default/admin/fieldvalues/footer.html.tmpl
@@ -16,8 +16,7 @@
[%# INTERFACE:
# value: string; the value being inserted/edited.
- # field: string; the name of the field which the value
- # belongs/belonged to
+ # field: object; the field which the value belongs/belonged to.
#
# no_XXX_link: boolean; if defined, then don't show the corresponding
# link. Supported parameters are:
@@ -32,24 +31,24 @@
<p>
[% UNLESS no_add_link %]
- <a title="Add a value for the '[% field FILTER html %]' field."
+ <a title="Add a value for the '[% field.description FILTER html %]' field."
href="editvalues.cgi?action=add&amp;field=
- [%- field FILTER url_quote %]">Add</a> a value.
+ [%- field.name FILTER url_quote %]">Add</a> a value.
[% END %]
[% IF value && !no_edit_link %]
Edit value <a
title="Edit value '[% value FILTER html %]' for the '
- [%- field FILTER html %]' field"
+ [%- field.name FILTER html %]' field"
href="editvalues.cgi?action=edit&amp;field=
- [%- field FILTER url_quote %]&amp;value=[% value FILTER url_quote %]">
+ [%- field.name FILTER url_quote %]&amp;value=[% value FILTER url_quote %]">
'[% value FILTER html %]'</a>.
[% END %]
[% UNLESS no_edit_other_link %]
Edit other values for the <a
href="editvalues.cgi?field=
- [%- field FILTER url_quote %]">'[% field FILTER html %]'</a> field.
+ [%- field.name FILTER url_quote %]">'[% field.description FILTER html %]'</a> field.
[% END %]
diff --git a/template/en/default/admin/fieldvalues/list.html.tmpl b/template/en/default/admin/fieldvalues/list.html.tmpl
index 9e3da3c64..dd96d4872 100644
--- a/template/en/default/admin/fieldvalues/list.html.tmpl
+++ b/template/en/default/admin/fieldvalues/list.html.tmpl
@@ -20,7 +20,7 @@
# - sortkey: number; The sortkey used to order the value when
# displayed to the user in a list.
#
- # field: string; the name of the field we are editing values for.
+ # field: object; the field we are editing values for.
# static: array; list of values which cannot be renamed nor deleted.
#%]
@@ -29,16 +29,16 @@
[% PROCESS global/variables.none.tmpl %]
-[% title = BLOCK %]Select value for the
- '[% field FILTER html %]' field[% END %]
+[% title = BLOCK %]Select value for the '[% field.description FILTER html %]'
+ ([% field.name FILTER html %]) field[% END %]
[% PROCESS global/header.html.tmpl
title = title
%]
[% edit_contentlink = BLOCK %]editvalues.cgi?action=edit&amp;field=
- [%- field FILTER url_quote %]&amp;value=%%name%%[% END %]
+ [%- field.name FILTER url_quote %]&amp;value=%%name%%[% END %]
[% delete_contentlink = BLOCK %]editvalues.cgi?action=del&amp;field=
- [%- field FILTER url_quote %]&amp;value=%%name%%[% END %]
+ [%- field.name FILTER url_quote %]&amp;value=%%name%%[% END %]
[% columns = [
diff --git a/template/en/default/admin/fieldvalues/updated.html.tmpl b/template/en/default/admin/fieldvalues/updated.html.tmpl
index 7b76abb63..2cfb7de96 100644
--- a/template/en/default/admin/fieldvalues/updated.html.tmpl
+++ b/template/en/default/admin/fieldvalues/updated.html.tmpl
@@ -23,13 +23,15 @@
#
# value & updated_value: the name of the field value
# sortkey & updated_sortkey: the field value sortkey
- # field: string; the field that the value belongs to
+ # field: object; the field that the value belongs to
# default_value_updated: boolean; whether the default value for
# this field has been updated
#%]
-[% title = BLOCK %]Updating Value '[% value FILTER html %]' of the
- '[% field FILTER html %]' Field[% END %]
+[% title = BLOCK %]
+ Updating Value '[% value FILTER html %]' of the '[% field.description FILTER html %]'
+ ([% field.name FILTER html %]) Field
+[% END %]
[% PROCESS global/header.html.tmpl
title = title
%]
diff --git a/template/en/default/global/user-error.html.tmpl b/template/en/default/global/user-error.html.tmpl
index 615499426..9de2d03fc 100644
--- a/template/en/default/global/user-error.html.tmpl
+++ b/template/en/default/global/user-error.html.tmpl
@@ -424,7 +424,7 @@
[% ELSIF error == "fieldvalue_already_exists" %]
[% title = "Field Value Already Exists" %]
The value '[% value FILTER html %]' already exists for the
- '[%- field FILTER html %]' field.
+ '[%- field.description FILTER html %]' field.
[% ELSIF error == "fieldvalue_doesnt_exist" %]
[% title = "Specified Field Value Does Not Exist" %]
@@ -434,7 +434,7 @@
[% ELSIF error == "fieldvalue_is_default" %]
[% title = "Specified Field Value Is Default" %]
'[% value FILTER html %]' is the default value for
- the '[% field FILTER html %]' field and cannot be deleted.
+ the '[% field.description FILTER html %]' field and cannot be deleted.
[% IF user.groups.tweakparams %]
You have to <a href="editparams.cgi?section=bugfields#
[%- param_name FILTER url_quote %]">change</a> the default value first.
@@ -448,12 +448,12 @@
[% ELSIF error == "fieldvalue_not_editable" %]
[% title = "Field Value Not Editable" %]
The value '[% old_value FILTER html %]' cannot be renamed because
- it plays some special role for the '[% field FILTER html %]' field.
+ it plays some special role for the '[% field.description FILTER html %]' field.
[% ELSIF error == "fieldvalue_not_deletable" %]
[% title = "Field Value Not Deletable" %]
The value '[% value FILTER html %]' cannot be removed because
- it plays some special role for the '[% field FILTER html %]' field.
+ it plays some special role for the '[% field.description FILTER html %]' field.
[% ELSIF error == "fieldvalue_not_specified" %]
[% title = "Field Value Not Specified" %]