[%# This Source Code Form is subject to the terms of the Mozilla Public
  # License, v. 2.0. If a copy of the MPL was not distributed with this
  # file, You can obtain one at http://mozilla.org/MPL/2.0/.
  #
  # This Source Code Form is "Incompatible With Secondary Licenses", as
  # defined by the Mozilla Public License, v. 2.0.
  #%]

[%# INTERFACE:
  # operations: array of hashes. May be empty. Each has has three members:
  #   who: string. who performed the operation
  #   when: string. when they performed it
  #   changes: hash. Details of what they changed. This hash has three
  #            compulsory and one optional member:
  #     field: string. The name of the field
  #     removed: string. What was removed from the field
  #     added: string. What was added to the field
  #     attach_id: integer. If the change was adding an attachment, its id.
  # incomplete_data: boolean. True if some of the data is incomplete (because
  #                  it was affected by an old Bugzilla bug.)
  #%]

[% PROCESS bug/time.html.tmpl %]

[% IF incomplete_data %]
  <p>
    В предыдущих версиях <a href="http://www.bugzilla.org/">Bugzilla</a>
    содержалась ошибка, которая приводила к потере данных журнала изменений
    при большом количестве подписанных пользователей или зависимостей.
    Ошибка исправлена, однако данные, накопленные до ее исправления, уже 
    невозможно восстановить.  Такие изменения отмечены знаком '?'.
  </p>
[% END %]

[% IF operations.size > 0 %]
  <table id="bug_activity">
    <tr class="column_header">
      <th>Кто</th>
      <th>Когда</th>
      <th>Что</th>
      <th>Удалено</th>
      <th>Добавлено</th>
    </tr>

    [% FOREACH operation = operations %]
      <tr>
        <td rowspan="[% operation.changes.size %]">
          [% operation.who FILTER email FILTER html %]
        </td>
        <td rowspan="[% operation.changes.size %]">
          [% operation.when FILTER time %]
        </td>
        [% FOREACH change = operation.changes %]
          [% "</tr><tr>" IF loop.index > 0 %]
            <td>
              [% IF change.attachid %]
                <a href="attachment.cgi?id=[% change.attachid %]">
                Приложение #[% change.attachid %]</a>
              [% END %]
              [% IF change.comment.defined %]
                 [% comment_desc = field_descs.${change.fieldname} %]
                 [% comment_num = "Comment $change.comment.count" FILTER bug_link(bug.bug_id, comment_num => change.comment.count) %]
                 [% comment_desc.replace('^(Comment )?', "$comment_num ") FILTER none %]
              [% ELSE %]
                [%+ field_descs.${change.fieldname} FILTER html %]
              [% END %]
            </td>
            [% PROCESS change_column change_type = change.removed %]
            [% PROCESS change_column change_type = change.added %]
        [% END %]
      </tr>
    [% END %]
  </table>
[% ELSE %]
  <p>
    В этой [% terms.bug %] пока не было произведено изменений.
  </p>
[% END %]

[% BLOCK change_column %]
  <td>
    [% IF change_type.defined %]
      [% IF change.fieldname == 'estimated_time' ||
            change.fieldname == 'remaining_time' ||
            change.fieldname == 'work_time' %]
        [% PROCESS formattimeunit time_unit=change_type %]
      [% ELSIF change.fieldname == 'blocked' ||
               change.fieldname == 'dependson' %]
        [% change_type FILTER bug_list_link FILTER none %]
      [% ELSIF change.fieldname == 'assigned_to' ||
               change.fieldname == 'reporter' ||
               change.fieldname == 'qa_contact' ||
               change.fieldname == 'cc' ||
               change.fieldname == 'flagtypes.name' %]
        [% display_value(change.fieldname, change_type) FILTER email FILTER html %]
      [% ELSE %]
        [% display_value(change.fieldname, change_type) FILTER html FILTER html_line_break %]
      [% END %]
    [% ELSE %]
      &nbsp;
    [% END %]
  </td>
[% END %]
