Полезная информация

Юристы зарабатывают огромные деньги и славу, оперируя хорошим знанием законов. Правила форума — простой путь к успешному общению.
  • Форумы
  •  » Bugzilla
  •  » Ограничение возможности закрыть баг, мешает resolution

№112-11-2015 14:08:30

MTRELE
Участник
 
Группа: Members
Зарегистрирован: 12-11-2015
Сообщений: 1
UA: Chrome 46.0

Ограничение возможности закрыть баг, мешает resolution

Коллеги, помогите решить проблему.
Разработан Workflow:
UNCONFIRMED → CHECK → CONFIRMED → IN_PROGRESS → RESOLVED → TESTING → VERIFIED → CLOSED (и еще всякие обходные связи)
Согласно разработанному workflow, закрывать баг, в том числе объявляя его дублем, можно только из состояний CHECK и VERIFIED, причем не все могут это делать, в смысле не только лишь все, а мало кто может это сделать.
Ну и еще переводить в VRIFIED может только назначенный QA.

В багзилле перевод в состояние CLOSED доступен из всех, и не меняется.
Для решения проблемы (как сказано в описании) залез в файл Bug.pm и отрихтовал sub check_can_change_field:

Выделить код

Код:

#Nobody can't close a bug from bug states expt this

    if (($field eq 'bug_status') && (not(is_open_state($newvalue)))
      && ($oldvalue ne 'VERIFIED') && ($oldvalue ne 'CHECK')) {
            $$PrivilegesRequired = PRIVILEGES_REQUIRED_EMPOWERED;
            return 0;
       }

#Only QA can change status to VERIFIED

    if (($field eq 'bug_status') && ($newvalue eq 'VERIFIED')) {
        if (!$self->{'error'}) {
        if (Bugzilla->params->{'useqacontact'}
            && ( $self->{'qa_contact'} != $user->id))
            {
            $$PrivilegesRequired = PRIVILEGES_REQUIRED_EMPOWERED;
            return 0;
            }
            }
    }

...

# - change the status
    if ($field eq 'bug_status') {
       $$PrivilegesRequired = PRIVILEGES_REQUIRED_ASSIGNEE;
        return 0;
    }

И вроде бы все хорошо, но вылезла новая проблема:

Если для пользователя ошибка оказывается в заблоченном состоянии (т.е. он не имеет прав перевести ее в любое другое состояние, кроме текущего),
то поле состояния показывается неизменным, но рядом с ним появляется поле resolution, как если бы пользователь пытался закрыть ошибку.
В результате если пользователь хочет просто написать комментарий или подписаться - то система не дает ему этого сделать, поскольку он пытается изменить резолюцию.
Подскажите - где исправить, чтобы при отсутствии выбора статуса не появлялось поле резолюции.
Ну или по-другому решить данную проблему.

ЗЫ: bugzilla 4.4.10 (потому что нужен локализованный интерфейс)

Отсутствует

 
  • Форумы
  •  » Bugzilla
  •  » Ограничение возможности закрыть баг, мешает resolution

Board footer

Powered by PunBB
Modified by Mozilla Russia
Copyright © 2004–2011 Mozilla Russia
Язык отображения форума: [Русский] [English]