ShowDashboardTabs

From Request Tracker Wiki
Jump to navigation Jump to search
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

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:tabs,

    Dashboards => \@dashboards,

    Verbose => 0,

&>

Added the rt3/local/html/Dashboards/Elements/ShowDashboardTabs file with this content:

<&| /Widgets/TitleBox, title => $Title &>
<& SELF:tabs, %ARGS &>

<%ARGS>
$Title   => undef


<%METHOD tabs>
<%ARGS>
$Dashboards => undef
$Verbose => 1

<%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;
}


% 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) {
                
                    <% $dashboard->Id %>
                
% }
                
                    <% $dashboard->Name %>
                
·
 
%   }

% }

File:RT.jpg
Where the dashboards appear on the personal toolbar.