Hello everybody,
Since the upgrade from 2.0.4 to 2.0.8 I have a new “change status from
open to open” transaction created for each correspondance sent by a
requestor, and this for EVERY ticket.
After some debugging, I see that the piece of code that reopens a ticket
when it’s not “open” or “new”, call the method “$self->Status”, but
debugging this method shows me that a check is done on the right
"ShowTicket":
$ = RT::CurrentUserHasRight(ref(RT::Ticket), ‘ShowTicket’)
called from file /opt/rt2/lib/RT/Ticket.pm' line 2811 @ = RT::Ticket::_Value(undef, ref(RT::Ticket), 'Status') called from file
/usr/lib/perl5/site_perl/5.6.0/DBIx/SearchBuilder/Record.pm’ line
406
@ = DBIx::SearchBuilder::Record::AUTOLOAD(ref(Term::ReadLine::Gnu::Var),
undef, ref(RT::Ticket)) called from file `./rt-mailgate’ line 290
The Requestor does not have the “ShowTicket” ACL set.
So, $Ticket->Status returns undef. Returning undef, the checks
status=“open” or status=“new” fail and a transaction is created to set
the status to “open”.
My questions:
- Is there a difference in this point of view between 2.0.4 and 2.0.8?
- Any ideas? I could set the right “ShowTicket” to the Everyone (so
everyone can send a correspondance regarding any ticket) but it seems to
be a bad solution
- Sould it be more logical that this kind of fields be “public”
Thanks
Rafael
Oh. wow! Thanks for the great debugging. That was a change between 2.0.4 and 2.0.8, yes. Andyou’re not the only one who’d been seeing the bug manifest.
But I know how to make it better. it should be fixed in 2.0.9
Status is the sort of thing that shouldn’t necessarily be public, but I can
do the right thing in the code so this check doesn’t break because of it.
Thanks,
JesseOn Wed, Oct 24, 2001 at 06:09:21PM +0200, Rafael Corvalan wrote:
Hello everybody,
Since the upgrade from 2.0.4 to 2.0.8 I have a new “change status from
open to open” transaction created for each correspondance sent by a
requestor, and this for EVERY ticket.
After some debugging, I see that the piece of code that reopens a ticket
when it’s not “open” or “new”, call the method “$self->Status”, but
debugging this method shows me that a check is done on the right
“ShowTicket”:
$ = RT::CurrentUserHasRight(ref(RT::Ticket), ‘ShowTicket’)
called from file /opt/rt2/lib/RT/Ticket.pm' line 2811 @ = RT::Ticket::_Value(undef, ref(RT::Ticket), 'Status') called from file
/usr/lib/perl5/site_perl/5.6.0/DBIx/SearchBuilder/Record.pm’ line
406
@ = DBIx::SearchBuilder::Record::AUTOLOAD(ref(Term::ReadLine::Gnu::Var),
undef, ref(RT::Ticket)) called from file `./rt-mailgate’ line 290
The Requestor does not have the “ShowTicket” ACL set.
So, $Ticket->Status returns undef. Returning undef, the checks
status=“open” or status=“new” fail and a transaction is created to set
the status to “open”.
My questions:
- Is there a difference in this point of view between 2.0.4 and 2.0.8?
- Any ideas? I could set the right “ShowTicket” to the Everyone (so
everyone can send a correspondance regarding any ticket) but it seems to
be a bad solution
- Sould it be more logical that this kind of fields be “public”
Thanks
Rafael
rt-users mailing list
rt-users@lists.fsck.com
http://lists.fsck.com/mailman/listinfo/rt-users
http://www.bestpractical.com/products/rt – Trouble Ticketing. Free.