Commit 2039a990 authored by lpsolit%gmail.com's avatar lpsolit%gmail.com

Bug 507389: [SECURITY] Users can see all products when editing bugs - Patch by…

Bug 507389: [SECURITY] Users can see all products when editing bugs - Patch by Fré©ric Buclin <LpSolit@gmail.com> r=mkanat a=LpSolit
parent 8bd1ee51
......@@ -211,7 +211,7 @@ sub directive_ok {
return 1 if $directive =~ /^(time2str|url)\(/;
# Safe Template Toolkit virtual methods
return 1 if $directive =~ /\.(length$|size$|push\(|delete\()/;
return 1 if $directive =~ /\.(length$|size$|push\(|unshift\(|delete\()/;
# Special Template Toolkit loop variable
return 1 if $directive =~ /^loop\.(index|count)$/;
......
......@@ -375,8 +375,16 @@
[%#############%]
<tr>
[% IF bug.check_can_change_field('product', 0, 1) %]
[% prod_list = user.get_enterable_products %]
[% IF NOT user.can_enter_product(bug.product) %]
[% prod_list.unshift(bug.product_obj) %]
[% END %]
[% END %]
[% INCLUDE bug/field.html.tmpl
bug = bug, field = select_fields.product,
override_legal_values = prod_list
desc_url = 'describecomponents.cgi', value = bug.product
editable = bug.check_can_change_field('product', 0, 1) %]
</tr>
......
......@@ -23,6 +23,7 @@
[%# INTERFACE:
# field: a Bugzilla::Field object
# value: The value of the field for this bug.
# override_legal_values (optional): The list of legal values, for select fields.
# editable: Whether the field should be displayed as an editable
# <input> or as just the plain text of its value.
# allow_dont_change: display the --do_not_change-- option for select fields.
......@@ -130,7 +131,10 @@
[% dontchange FILTER html %]
</option>
[% END %]
[% FOREACH legal_value = field.legal_values %]
[% IF NOT override_legal_values %]
[% override_legal_values = field.legal_values %]
[% END %]
[% FOREACH legal_value = override_legal_values %]
[% SET control_value = legal_value.visibility_value %]
[% SET control_field = field.value_field %]
<option value="[% legal_value.name FILTER html %]"
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment