[Rt-devel] [BUG ?] When zero is one.

Jesse Vincent jesse at bestpractical.com
Thu Oct 13 20:27:00 EDT 2005


'Bad design'
It should get fixed, but probably for 3.7.

I think 1 is the right value longterm as a 0 value can be confused for an empty value rather easily.
Jesse

Best,
Jesse

-----Original Message-----
From: Todd Chapman <todd at chaka.net>
Date: Thursday, Oct 13, 2005 6:53 pm
Subject: [Rt-devel] [BUG ?] When zero is one.

Jesse and all,

Why doesn RT::System::id return 1 when in the Groups table all
the Role groups for the RT::System Domain have Instance set to 1?

This bit me because I was building an ACL query (as Jesse mentioned) and I needed the principal Id for the correct role account.

This seems to be the one case where the object id and the instance
are not the same.

Am I missing something?

Thanks.

sub _RealPrincipal {
    my $self = shift;

    my %args = @_;
    #get the real principal
    my $groups = RT::Groups->new($RT::SystemUser);
    $groups->Limit(FIELD => 'Domain',   VALUE => ref($args{Object}) . '-Role' );
    $groups->Limit(FIELD => 'Instance', VALUE => $args{Object}->id );
    $groups->Limit(FIELD => 'Type',     VALUE => $self->{Role} );

    if ($groups->Count) {
        return $groups->First->PrincipalObj;
    }
    else {
        $RT::Logger->debug("No group found for Domain: " . ref($args{Object}) . '-Role Instance: ' . $args{Object}->id . ' Type: ' . $self->{Role});
    }
    return;
}

_______________________________________________
Rt-devel mailing list
Rt-devel at lists.bestpractical.com
http://lists.bestpractical.com/cgi-bin/mailman/listinfo/rt-devel





More information about the Rt-devel mailing list