TextBasedPriorities

From Request Tracker Wiki
Jump to navigation Jump to search

Introduction

Some people don't like priority to be a number and want to use text labels.

RT 3.8.3 or newer

RT-Extension-PriorityAsString is an extension on the CPAN that is maintained by folks from BestPractical.

Older versions

Home page of this extension for older versions is here: http://www.parliant.com/~cmh/rt/

User Comments

- anyone using this successfully with RT 3.4.4? - DuncanShannon

- Upload a new patch to use with RT 3.5.5 at the following URL: http://wiki.bestpractical.com/plugin/attachments/TextBasedPriorities/priority-labels-rt3.5.5.patch. Carlos Fuentes

- Has anyone used this with RT 3.6.1? - LeeWhalen

- 3.6.1 wasn't working for us; however, I just found the post below by Brent Parish.

This fixed our problem. - JudsonMain

http://lists.bestpractical.com/pipermail/rt-users/2006-September/041633.html

Note: Brent Parish followed this up by noting the the word "default" in the above fix should also be capitalized.

- 3.6.3 patch with case corrections and other updates posted to website. Optional color-coding of labels is included.

- 3.6.6 - Tested and works. Just make sure not to apply the patch twice by accident. J Speicher

Bug

This is patch to correct a bug, probably in all the versions of the prioritylabel extension : when you do a bulk update on several tickets, the priorities are reset. This has been tested on RT 3.6.6 and RT 3.8.2

--- /opt/rt3-1/local/html/Elements/SelectPriority     2008-06-05 15:06:26.000000000 +0000
 +++ /opt/rt3-2/local/html/Elements/SelectPriority     2008-11-25 14:36:43.000000000 +0000
 @@ -1,6 +1,7 @@
  %#
 
  <SELECT NAME ="<%$Name%>">
 +<OPTION VALUE="" <% $defprilabel?'':'selected'%>>-</OPTION>
  % foreach $priidx (@RT::PrioritySortedKeys) {
  %   my($value)=$RT::PriorityLabels{$priidx};
  %   my($prilabel)=$priidx;
 @@ -20,15 +21,17 @@
  </%ARGS>
  <%INIT>
  my($priidx,$defprilabel,$defprivalue);
 -foreach $priidx (@RT::PrioritySortedKeys) {
 -      if ( $Default >= $RT::PriorityLabels{$priidx}) {
 -              # save current equivalent priority label
 -              $defprilabel=$priidx;
 -              # save current priority value to prevent tickets from having
 -              #  their priorities "snap"ed to closest level
 -              $defprivalue=$Default;
 -              last;
 -      }
 +if (defined $Default) {
 +     foreach $priidx (@RT::PrioritySortedKeys) {
 +           if ( $Default >= $RT::PriorityLabels{$priidx}) {
 +                   # save current equivalent priority label
 +                   $defprilabel=$priidx;
 +                   # save current priority value to prevent tickets from having
 +                   #  their priorities "snap"ed to closest level
 +                   $defprivalue=$Default;
 +                   last;
 +           }
 +     }
  }
  </%INIT>
 
 --- /opt/rt3-1/local/html/Search/Bulk.html    2008-06-05 15:06:26.000000000 +0000
 +++ /opt/rt3-2/local/html/Search/Bulk.html    2008-11-25 14:31:08.000000000 +0000
 @@ -103,7 +103,7 @@
  <td class="value"> <input name="Subject" size="20" /> </td></tr>
  <tr><td class="label"> <&|/l&>Make priority</&>: </td>
  % if ($RT::PriorityType) {
 -       <td class="value"><& /Elements/SelectPriority, Name => 'Priority', Default => 0 &></td></tr>
 +       <td class="value"><& /Elements/SelectPriority, Name => 'Priority', Default => undef &></td></tr>
  % } else {
         <td class="value"> <input name="Priority" size="4" /> </td></tr>
  % }