RT::Ex...SGantt(3pm)
π NAME π
okay so hi bestie, this is the manual page for RT::Extension::JSGantt β literally Gantt charts for your tickets π. The page itself goes by RT::Ex...SGantt(3pm) and it lives in the User Contributed Perl Documentation collection. iykyk.
π¦ DESCRIPTION π¦
So here's the whole vibe: this extension takes the Starts and Due dates of your tickets, plus the ticket dependencies, and turns them into Gantt charts. That's it, that's the plot. β¨
πΈ INSTALLATION πΈ
Run these, in order:
perl Makefile.PL
make
make install
make install may need root permissions π
Next, create or edit a file in /etc/request-tracker5/RT_SiteConfig.d.
- If you're on RT 4.2 or greater, add this line:
Plugin('RT::Extension::JSGantt');
- If you're on RT 4.0, add this line instead:
Set(@Plugins, qw(RT::Extension::JSGantt));
- orrr just add
RT::Extension::JSGanttto your existing@Pluginsline. lowkey easiest option π
Then clear your mason cache:
rm -rf /var/cache/request-tracker5/mason_data/obj
And restart your webserver. no skipping steps bestie π
π CONFIGURATION π
Here's the config, in all its glory:
Set(
%JSGanttOptions,
DefaultFormat => 'day', # or week or month or quarter
ShowOwner => 1,
ShowProgress => 1,
ShowDuration => 1,
# Configurable JSGantt options
# https://code.google.com/p/jsgantt/wiki/Documentation#4._Instantiate_JSGantt_using_()
# CaptionType => 'Resource',
# ShowStartDate => 1,
# ShowEndDate => 1,
# DateInputFormat => 'mm/dd/yyyy',
# DateDisplayFormat => 'mm/dd/yyyy',
# FormatArr => q|'day','week','month','quarter'|,
# define your own color scheme:
# ColorScheme => ['ff0000', 'ffff00', 'ff00ff', '00ff00', '00ffff', '0000ff'],
# we color owners consistently by default, you can disable it via:
# ColorSchemeByOwner => 0,
# you can specify colors to use, unspecified owners will be
# assigned to some color automatically:
# ColorSchemeByOwner => { root => 'ff0000', foo => '00ff00' },
# if can't find both start and end dates, use this color
NullDatesColor => 333,
# to calculate day length
WorkingHoursPerDay => 8,
# used to set start/end if one exists but the other does not
DefaultDays => 7,
);
everything after the uncommented lines is optional, they're just chilling there commented out so you can uncomment whatever you want β¨
π§ METHODS π§
AllRelatedTickets
Give it a ticket, and it hands back all the relative tickets β including the original ticket itself. π«Ά
TicketsInfo
Give it tickets, and it resolves useful info for jsgantt.js. Returns a 2-element array: the 1st is the ids arrayref, the 2nd is the info hashref.
GetTimeRange
Give it a ticket, and it resolves its start/end. Returns an array like ( $start_obj, $start, $end_obj, $end ). Both $start and $end are strings like 3/21/2011. π
π UPGRADING π
DateDayBeforeMonth
Prior to version 1.02, there was an undocumented RT config option called DateDayBeforeMonth. If you've got DateDayBeforeMonth set in your RT, you can make JSGantt do the same thing by setting DateDisplayFormat in RT_SiteConfig.pm:
Set(
%JSGanttOptions,
...
# DateDisplayFormat => 'dd/mm/yyyy',
...
);
cute little backwards-compat moment, we love to see it π
π AUTHOR π
Best Practical Solutions, LLC <modules@bestpractical.com>
π BUGS π
All bugs should be reported via email to:
bug-RT-Extension-JSGantt@rt.cpan.org
or via the web at:
http://rt.cpan.org/Public/Dist/Display.html?Name=RT-Extension-JSGantt
fr fr, tell them everything, they wanna know π«Ά
π LICENSE AND COPYRIGHT π
This software is Copyright (c) 2014-2020 by Best Practical Solutions.
This is free software, licensed under:
The GNU General Public License, Version 2, June 1991
and that's the whole page bestie π this one shipped as perl v5.32.1, dated 2021-02-06, and honestly it ate. go make some iconic Gantt charts. periodt. π
β¨
π¦ where this page comes from
- debian bookworm: rt4-extension-jsgantt 1.06-1 Β· GPL-2.0-only
- ubuntu jammy: rt4-extension-jsgantt 1.06-1 Β· GPL-2.0-only
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms