Отслеживание запросов - изменение цвета очереди

Я хотел бы изменить таблицу заявок в RT, чтобы иметь собственный цвет "Очередь". Я использую это руководство в качестве ссылки:

http://requesttracker.wikia.com/wiki/ShowStatusInColor

... который работает. Следующий код в обратном вызове обновит все поля "Приоритет" на красный:

<%INIT>
      # Set the priority color.
      sub PriorityInColor {
        my $Ticket = shift;
        my $priority = $Ticket->Priority;
        my $colors = "#FF0000";
        $priority = "<div style=\"color: $colors;\">$priority</div>";
        return \"<b>$priority</b>";
      }

      $COLUMN_MAP->{Priority}->{value} = \&PriorityInColor;
</%INIT>

<%ARGS>
    $COLUMN_MAP => undef
</%ARGS>

Выглядит так:

Приоритет отображается красным

Это также верно для большинства других полей, кроме Очереди. Применительно к очереди это не дает никакого результата:

<%INIT>
      # Set the queue color.
      sub QueueInColor {
        my $Ticket = shift;
        my $queue = $Ticket->Queue;
        my $colors = "#FF0000";
        $queue = "<div style=\"color: $colors;\">$queue</div>";
        return \"<b>$queue</b>";
      }
      $COLUMN_MAP->{Queue}->{value} = \&QueueInColor;
</%INIT>

<%ARGS>
    $COLUMN_MAP => undef
</%ARGS>

Я чувствую, что мне не хватает некоторых дополнительных аргументов для очереди, но я не могу по жизни понять смысл структуры, если это так. Заранее благодарю за любую помощь!

1 ответ

Решение

После еще нескольких проб и ошибок я обнаружил проблему! Очередь ссылается на внутренний номер очереди, QueueName ссылается на фактическую строку в таблице. Кроме того, вы должны вызвать имя через "QueueObj", чтобы получить атрибут имени. Вот рабочий блок:

<%INIT>
      # Set the queue color.
      sub QueueInColor {
        my $Ticket = shift;
        my $queue = $Ticket->QueueObj->Name;
        my $colors = "#FF0000";
        $queue = "<div style=\"color: $colors;\">$queue</div>";
        return \"<b>$queue</b>";
      }
      $COLUMN_MAP->{QueueName}->{value} = \&QueueInColor;
</%INIT>

<%ARGS>
        $COLUMN_MAP => undef
</%ARGS>
Другие вопросы по тегам