ShowDashboardTabs
Wanted an easy way to get back to my Dashboards from any page so I set out to add the dashboards separated by a dot along the top (to the left of the existing content of the PersonalQuickbar.
Needed to add one file and modify another.
I modified the rt3/local/html/Elements/PersonalQuickbar file to add this:
%my @dashboards = $m->comp("/Dashboards/Elements/ListOfDashboards"); <& /Dashboards/Elements/ShowDashboardTabs:table,
Dashboards => \@dashboards, Verbose => 0,
&>
Added the rt3/local/html/Dashboards/Elements/ShowDashboardTabs file with this content:
<&| /Widgets/TitleBox, title => $Title &> <& SELF:table, %ARGS &> </&> <%ARGS> $Title => undef </%ARGS>
<%METHOD table> <%ARGS> $Dashboards => undef $Verbose => 1 </%ARGS> <%INIT>
- map each subscription to a dashboard ID
my %subscription_for;
for my $attr ($session{'CurrentUser'}->UserObj->Attributes->Named('Subscription')) {
$subscription_for{$attr->SubValue('DashboardId')} = $attr;
} </%INIT>
% if (@$Dashboards == 0) { % if ($Verbose) {
<% loc("No dashboards.") %>
% } % } else { % if ($Verbose) { % }
% my $i = 0; % for my $dashboard (@$Dashboards) { % my $url = sprintf '%s/Dashboards/%d/%s', % RT->Config->Get('WebPath'), % $dashboard->Id, % $dashboard->Name; % if ($Verbose) {
<a href="<% $url %>"> <% $dashboard->Id %> </a>
% }
<a href="<% $url %>"> <% $dashboard->Name %> </a> ·
% } % } </%METHOD>