Labelled Priority Patch

This patch replaces the numeric priority display throughout RT by labelled equivalents. The administrator defines the mapping between numeric priorities and labels. Internally RT continues to use numeric priorities, but when they are displayed to the user the labels are used instead.

This patch is particularly helpful where RT is used by non-technical people. Although it is compatible with RT's escalating priority mechanism I believe it will be less helpful in those situations.

The patch is a port forward of Eric Berggren's rt2 patch that did the same thing. I've used his code where possible, and supplied fresh code in areas where rt3 differs from rt2.

At time of this writing, this patch seems to coexist happily with the RTFM bolt-on knowledgebase software.


Download the patch appropriate to your version of RT:

Note, you use this patch at your own risk! Please back up all your data, and the rt3 directory before continuing! This patch has not been tried on other versions of rt.

change into your /usr/local/rt3 (or /opt/rt3, or whatever) directory. Execute the command:

patch -p1 < patchfile

and read the output to be sure all parts have succeeded. If some of the parts failed, you are most likely are not using a compatible version of rt3, or you have installed some conflicting patches. In these cases you'll have to either complete the patches by hand, or revert to the backup of the rt3 directory you made before starting.


Edit your file, and append the following to the bottom of that file (before the line with 1; on it):

    # How to display ticket priority
    #  This can change to/from anytime; presentation only & doesn't affect the
    #   database; must restart web server to take effect
    #  0 - DEFAULT: integer value  (0-99)
    #  1 - use label values (as seen in %PriorityLabels)
    # >1 - use label values, but also display ## (eg "General/35")
    #       if using "bubbling priorities", good to set this
    $PriorityType = 1;
    # Priority labels; 0 = None; 1 < Low <= 10; 11 <= Medium <= 50; etc...
    %PriorityLabels = ( 'None' => 0, 'Low' => 10, 'Medium' => 50, 
                        'High' => 70, 'Urgent' => 90 );
    # (leave @PrioritySortedKeys alone; used to set label for priorities)
    @PrioritySortedKeys = reverse sort { $PriorityLabels{ $a } <=>
                                         $PriorityLabels{ $b } }
                                  keys %PriorityLabels;

You may wish to configure the %PriorityLabels line to set up a different mapping between priorities and labels. Also, as described you should set $PriorityType appropriately for what you want.

You must stop your webserver and start it again (simply causing it to restart may not be enough) in order to get changes to the file to be noticed.

Version History

Known Issues

License / Support

This patch is released under the same license as rt itself. It is copyright 2004 by Colin Henein and Parliant Corporation.

No support for this patch is provided. As a freely available work, no liability is accepted by either Colin Henein or Parliant Corporation.

Here at Parliant we don't always track RT development closely, so this patch may not be up to date for the most recent release of RT. If it stops working in some future release I'm more than happy to provide credit to someone who fixes it up and sends it to me for posting at this webpage. Send it to rtlabelpatch AT cmhDOT parliant DOTCOM