[%# The contents of this file are subject to the Mozilla Public
  # License Version 1.1 (the "License"); you may not use this file
  # except in compliance with the License. You may obtain a copy of
  # the License at http://www.mozilla.org/MPL/
  #
  # Software distributed under the License is distributed on an "AS
  # IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
  # implied. See the License for the specific language governing
  # rights and limitations under the License.
  #
  # The Original Code is the Bugzilla Bug Tracking System.
  #
  # The Initial Developer of the Original Code is the San Jose State 
  # University Foundation. Portions created by the Initial Developer
  # are Copyright (C) 2008 the Initial Developer. All Rights Reserved.
  #
  # Contributor(s): Max Kanat-Alexander <mkanat@bugzilla.org>
  #%]

[%# INTERFACE:
  #   field: a Bugzilla::Field object
  #   product: (optional) a Bugzilla::Product object.
  #%]

[% FOREACH controlled_field = field.controls_visibility_of %]
  [% vis_value = controlled_field.visibility_value %]
  [% NEXT IF field.name == "product"
             && vis_value.id != product.id
             && !user.can_enter_product(vis_value) %]

  showFieldWhen('[% controlled_field.name FILTER js %]',
                '[% field.name FILTER js %]', '[% vis_value.name FILTER js %]');
[% END %]
[% FOREACH legal_value = field.legal_values %]
  [% FOREACH controlled_field = legal_value.controlled_values.keys %]
    [% SET cont_ids = [] %]
    [% FOREACH val = legal_value.controlled_values.$controlled_field %]
      [% cont_ids.push(val.id) %]
    [% END %]
    showValueWhen('[% controlled_field FILTER js %]',
                  [[% cont_ids.join(',') FILTER js %]],
                  '[% field.name FILTER js %]',
                  [% legal_value.id FILTER js %]);
  [% END %]
[% END %]
