On 19 Jul 2008, at 8:51 am, Tim Cutts wrote:
I'm upgrading a copy of our production database, so that I can work
out what I'm going to need to do to upgrade the production version
eventually.
So far, I have got RT up and working, imported a dump of the
production database, and upgraded the schema (using rt-setup-
database --action upgrade, and then applying the MySQL c 4.0-4.1
changes -- the latter step took a long time; more than 12 hours on
our database)
Once it was complete, I discovered that because the home page is now
configured on a per-user basis, none of the users have anything
displayed in their home page, and would need to go to preferences to
set it up.
Is RT at a glance not configured somewhere centrally with a
default? If not, how do I add a default layout to all my users (of
whom I have a couple of thousand, so doing this manually is *not* an
option)
Related to this: there doesn't seem to be a MyRequests type panel
the users can choose in their home page. In our old version of RT,
this was done with a local set of HTML elements in the home page,
but clearly that's not the right approach now. Should I create a
global saved search that does it, and then add that to all the
default RT at a glance that he users will get?
No sooner have I asked the question, than I answer part of it myself;
there is of course a new global config option for setting the default
RT-at-a-glance. The trouble is, for me it doesn't work. I get:
Can't call method Content on an undefined value at /itch/rt-3.8.0/
share/html/Admin/Global/MyRT.html line 97.
So, it looks to me as though during the schema update, some important
default data didn't get put into the database. Looks like 3.5.1
content patch did not go in properly. Adding it by hand has resolved
the problem. Now I'm down to reapplying some of my old changes, and
I'm a bit stuck. In RT 3.4.2 I overrode the default newest unowned
tickets box to list only tickets for which the user had the
'SeeQueue' right (we have over fifty queues for different purposes,
and we don't want everyone to see everything). I did it with a local
Element:
|/Elements/TitleBox,
title = loc([_1] newest unowned tickets, $rows),
title_href = Search/Results.html.$QueryString
/Elements/TicketList,
Format = 'a href=\$RT::WebPath/Ticket/Display.html?
id=__id__\__id__/a/TITLE:#', 'a href=\$RT::WebPath/Tic
ket/Display.html?id=__id__\__Subject__/a/TITLE:Subject',
QueueName, ExtendedStatus, CreatedRelative, 'A HREF=\$RT::We
bPath/Ticket/Display.html?Action=Takeid=__id__\.loc('Take')./a/
TITLE:nbsp;' ,
Query = $Query,
OrderBy = 'Created',
Order = 'DESC',
ShowNavigation = 0,
Rows = $rows
/
%init
my $rows = $RT::MyRequestsLength;
my $q = new RT::Queues($session{'CurrentUser'});
$q-UnLimit;
my @queues;
while (my $queue = $q-Next) {
if ($queue-CurrentUserHasRight('SeeQueue')
$queue-CurrentUserHasRight('TakeTicket')) {
push(@queues, Queue = \' . $queue-Name .\');
}
}
my $Query = Owner = 'Nobody' AND ( Status = 'new' OR Status = 'open');
if (@queues) {
$Query .= ' AND (' . join(' OR ', @queues ) . ')';
}
my $QueryString = '?' . $m-comp('/Elements/QueryString',
Query = $Query,
Order = 'DESC',
OrderBy = 'Priority') if ($Query);
/%init
How do I create a new portlet with the same functionality using the
new database system? Or am I approaching this the wrong way, and
maybe there's something I can do in the access rights part of RT to
achieve the same thing?
Many thanks...
Tim
--
The Wellcome Trust Sanger Institute is operated by Genome Research
Limited, a charity registered in England with number 1021457 and a
company registered in England with number 2742969, whose registered
office is 215 Euston Road, London, NW1 2BE.
___
http://lists.bestpractical.com/cgi-bin/mailman/listinfo/rt-users
Community help: http://wiki.bestpractical.com
Commercial support: [EMAIL PROTECTED]
Discover RT's hidden secrets with RT Essentials from O'Reilly Media.
Buy a copy at http://rtbook.bestpractical.com