Customising RT

Hello,

My company has been looking for a new support system and RT looks excellent. However, we need to be able to manage users across organisations and contracts against organisations. To this end we would like to modify RT and take advantage of the following mentioned features:

  • RT’s entire web interface is built on a flexible templating system that lets you build your own web-based tools or alter RT’s look and feel to better fit your organization.

  • If you don’t want to radically change RT’s interface, you can add your own components to RT’s pages. A web callback system lets you drop miniature templates into RT’s web pages.

  • If you need even more power, “Code overlays” let you customize RT’s internal behaviour without touching RT’s core libraries.

However, I haven’t found any documentation on the above. I am currently trying to trawl through the code to get understanding of how to use a “code overlay” or a “miniature template”. I have read the FAQ, README and the user documentation provided and I don’t believe it describes how to customise RT. Please can someone point me in the right direction.

Many thanks,
Adam

Adam–

some hints from working with RT a couple of months.

Adam Kuznesof wrote:

Hello,

My company has been looking for a new support system and RT looks excellent. However, we need to be able to manage users across organisations and contracts against organisations. To this end we would like to modify RT and take advantage of the following mentioned features:

  • RT’s entire web interface is built on a flexible templating system that lets you build your own web-based tools or alter RT’s look and feel to better fit your organization.

The Web interface is based on Mason, check out Mason’s documentation. Adjusting the Web
interface seems quite easy as the code is really clear and simple.

  • If you don’t want to radically change RT’s interface, you can add your own components to RT’s pages. A web callback system lets you drop miniature templates into RT’s web pages.

This refers to the template part of scrips. If you come to that point, feel free to ask me
again on the list or in private then I’ll give you some examples.

  • If you need even more power, “Code overlays” let you customize RT’s internal behaviour without touching RT’s core libraries.

Many classes in RT allow you to add customized behavior by providing certain ‘Overlay classes’. I
have not done this, but having a good Perl programmer skim through the perldoc’s of
rt3/lib/RT/ should give you a good idea.

However, I haven’t found any documentation on the above. I am currently trying to trawl through the code to get understanding of how to use a “code overlay” or a “miniature template”. I have read the FAQ, README and the user documentation provided and I don’t believe it describes how to customise RT. Please can someone point me in the right direction.

Can you explain what the nature of your needs is? Can you give some examples of what you
want to do?

Hope that helps a bit.

Jan

Many thanks,
Adam


rt-users mailing list
rt-users@lists.bestpractical.com
The rt-users Archives

Have you read the FAQ? The RT FAQ Manager lives at http://fsck.com/rtfm

Jan Algermissen http://www.topicmapping.com
Consultant & Programmer http://www.gooseworks.org

Adam Kuznesof wrote:

  • RT’s entire web interface is built on a flexible templating
    system that lets you build your own web-based tools or alter RT’s
    look and feel to better fit your organization.

The Web interface is based on Mason, check out Mason’s documentation.
Adjusting the Web
interface seems quite easy as the code is really clear and simple.

Be sure to take advantage of Mason’s local changes facilty and put
your modifications in /path/to/rt3/local/html. That way your
customizations won’t get blown away when you upgrade.

  • If you need even more power, “Code overlays” let you customize
    RT’s internal behaviour without touching RT’s core libraries.

Many classes in RT allow you to add customized behavior by providing
certain ‘Overlay classes’. I have not done this, but having a good
Perl programmer skim through the perldoc’s of
rt3/lib/RT/ should give you a good idea.

This is pretty simple also. Find the module you want to change and
create _Local.pm file. (For example, Users.pm would get
customized in Users_Local.pm.) You must begin the _Local.pm file with

     no warnings qw(redefine);

There are several modules that have _Overlay.pm files that you can use
as a starting point.

Michael
Michael S. Liebman m-liebman@northwestern.edu
http://msl521.freeshell.org/
“I have vision and the rest of the world wears bifocals.”
-Paul Newman in “Butch Cassidy & the Sundance Kid”