If you don’t like the default index.html “RT at a glance” page (for
example, we wanted more information from " 10 highest priority tickets I
own…" and " 10 highest priority tickets I requested…"), you can modify
what they display based on the various Elements called.
For example, we wanted Priority and Due Date listed for tickets we owned:
go to $RT_DIR/share/html/Elements and make the following changes:
diff MyTickets MyTickets-premod
31,32d30
<
<&|/l&>Due Date</&> |
<
<&|/l&>Priority</&> |
64,69d61
<
< <%$Ticket->DueObj->AsString%>
< |
<
< <%$Ticket->Priority%>
< |
We also wanted more info on tickets we opened:
diff MyRequests MyRequests-premod
32,33d31
<
<&|/l&>Due Date</&> |
<
<&|/l&>Priority</&> |
64,69d61
<
< <%$Ticket->DueObj->AsString%>
< |
<
< <%$Ticket->Priority%>
< |
Hope someone finds this useful!
I and our users vote for Priority field at home page.
So we vote for inclusion it in mainline.
John Jasen wrote:
John Jasen wrote:
If you don’t like the default index.html “RT at a glance” page (for
example, we wanted more information from " 10 highest priority tickets I
own…" and " 10 highest priority tickets I requested…"), you can modify
what they display based on the various Elements called.
I actually opted to split out the “New” vs “Open” tickets, and to
display “Stalled” tickets.
I made index.html look like:
<& /Elements/Header, Title=>“Start page”, Refresh =>
$session{‘home_refresh_inte
rval’} &>
<& /Elements/Tabs, current_toptab => ‘’ &>
<& /Elements/CustomHomepageHeader, %ARGS &>
<& /Elements/MyNew &>
<& /Elements/MyOpen &>
<& /Elements/MyStalled &>
<& /Elements/MyRequests &>
|
<& /Elements/Quicksearch &>
<& /Elements/Refresh, Name => 'HomeRefreshInterval', Default => $session
{'home_
refresh_interval'} &>
|
<%init>
if ($ARGS{'HomeRefreshInterval'}) {
$session{'home_refresh_interval'} = $ARGS{'HomeRefreshInterval'};
}
Then made MyOpen, MyNew and MyStalled out of MyTickets, modifying the
status each searches for.
For us, this makes recognizing that there is a new ticket much easier,
and we can also watch our stalled tickets without periodically doing a
search for them.
Russ Johnson
Stargate Online
Home: http://www.dimstar.net
LDP: http://ldp.dimstar.net
Russ Johnson wrote:
John Jasen wrote:
If you don’t like the default index.html “RT at a glance” page (for
example, we wanted more information from " 10 highest priority
tickets I own…" and " 10 highest priority tickets I requested…"),
you can modify what they display based on the various Elements called.
I actually opted to split out the “New” vs “Open” tickets, and to
display “Stalled” tickets.
I made index.html look like:
<& /Elements/Header, Title=>“Start page”, Refresh =>
$session{‘home_refresh_inte
rval’} &>
<& /Elements/Tabs, current_toptab => ‘’ &>
<& /Elements/CustomHomepageHeader, %ARGS &>
<& /Elements/MyNew &>
<& /Elements/MyOpen &>
<& /Elements/MyStalled &>
<& /Elements/MyRequests &>
|
<& /Elements/Quicksearch &>
<& /Elements/Refresh, Name => 'HomeRefreshInterval', Default =>
$session {'home_
refresh_interval'} &>
|
<%init>
if ($ARGS{'HomeRefreshInterval'}) {
$session{'home_refresh_interval'} = $ARGS{'HomeRefreshInterval'};
}
Then made MyOpen, MyNew and MyStalled out of MyTickets, modifying the
status each searches for.
For us, this makes recognizing that there is a new ticket much easier,
and we can also watch our stalled tickets without periodically doing a
search for them.
As I see all people customise home page, but all of them have to change
RT’s Mason pages, add ellements or do copy-paste…
It would be really good to do flexible home page layout customisation.
Something like this:
User say in some way - “I want block with Tickets with status open or
new ordered by priority then queue and status, block must contain next
Ticket fields: Subj, Requestor…”
You approach is successful, but it’s copy-paste job.
As I see all people customise home page, but all of them have to change
RT’s Mason pages, add ellements or do copy-paste…
It would be really good to do flexible home page layout customisation.
Something like this:
User say in some way - “I want block with Tickets with status open or
new ordered by priority then queue and status, block must contain next
Ticket fields: Subj, Requestor…”
Fully customisable user interface would be terribly nice, wouldn’t it?
I can’t promise when it’s going to hit the mainline, but I expect that
chunks of RT’s homepage will look something like this in the future:
% my $rows = 10;
% my $search = RT::Tickets->new($session{‘CurrentUser’});
% $search->FromSQL(‘Requestors = "’.$session{CurrentUser}->EmailAddress.‘" AND (Status = “new” OR Status = “open”)’);
% $search->OrderBy( FIELD => ‘Priority’, ORDER => ‘descending’);
% $search->RowsPerPage($rows);
<& /Elements/View/CollectionAsTable, Collection => $search, Attributes=>[
{Name => ‘id’,Link => ‘/Ticket/Display.html?id=##id##’},
{Name => ‘Subject’,Link => ‘/Ticket/Display.html?id=##id##’},
‘Priority’, ‘Owner’],
Title => loc(‘My [_1] highest priority requested tickets’, $rows) &>
Please do note that this is a first cut that hasn’t yet been settled
upon nor had its syntax tweaked. But I do have dev code that uses this
and works When it’s more ready for public scrutiny, don’t worry, I’ll
let the public scrutinize it.
Request Tracker... So much more than a help desk — Best Practical Solutions – Trouble Ticketing. Free.
Jesse Vincent wrote:
As I see all people customise home page, but all of them have to change
RT’s Mason pages, add ellements or do copy-paste…
It would be really good to do flexible home page layout customisation.
Something like this:
User say in some way - “I want block with Tickets with status open or
new ordered by priority then queue and status, block must contain next
Ticket fields: Subj, Requestor…”
Fully customisable user interface would be terribly nice, wouldn’t it?
I can’t promise when it’s going to hit the mainline, but I expect that
chunks of RT’s homepage will look something like this in the future:
% my $rows = 10;
% my $search = RT::Tickets->new($session{‘CurrentUser’});
% $search->FromSQL(‘Requestors = "’.$session{CurrentUser}->EmailAddress.‘" AND (Status = “new” OR Status = “open”)’);
% $search->OrderBy( FIELD => ‘Priority’, ORDER => ‘descending’);
% $search->RowsPerPage($rows);
<& /Elements/View/CollectionAsTable, Collection => $search, Attributes=>[
{Name => ‘id’,Link => ‘/Ticket/Display.html?id=##id##’},
{Name => ‘Subject’,Link => ‘/Ticket/Display.html?id=##id##’},
‘Priority’, ‘Owner’],
Title => loc(‘My [_1] highest priority requested tickets’, $rows) &>
Please do note that this is a first cut that hasn’t yet been settled
upon nor had its syntax tweaked. But I do have dev code that uses this
and works When it’s more ready for public scrutiny, don’t worry, I’ll
let the public scrutinize it.
I really glad to see that work is going on. I become bored without
commits