X-Git-Url: http://git.freeside.biz/gitweb/?a=blobdiff_plain;f=FS%2FFS%2Faccess_user.pm;h=0f07e77c82f3e1433b737183491669603592e461;hb=6205135803080b92127d4b1b52b4d4729d08a09f;hp=bbebecb5f746e0ff645bc8b26fc35ae84a7dd743;hpb=344686a7c0c2c015df2189ea7531117174e30fb4;p=freeside.git diff --git a/FS/FS/access_user.pm b/FS/FS/access_user.pm index bbebecb5f..0f07e77c8 100644 --- a/FS/FS/access_user.pm +++ b/FS/FS/access_user.pm @@ -11,6 +11,7 @@ use FS::access_usergroup; use FS::agent; use FS::cust_main; use FS::sales; +use FS::sched_item; $DEBUG = 0; $me = '[FS::access_user]'; @@ -441,6 +442,7 @@ sub agents { 'table' => 'agent', 'hashref' => { disabled=>'' }, 'extra_sql' => ' AND '. $self->agentnums_sql(@_), + 'order_by' => 'ORDER BY agent', }); } @@ -468,7 +470,7 @@ sub access_right { unless ( grep !exists($self->{_ACLcache}{$_}), @$rightname ) { warn "$me ACL cache hit for ". join(', ', @$rightname). "\n" if $DEBUG; - return grep $self->{_ACLcache}{$_}, @$rightname + return scalar( grep $self->{_ACLcache}{$_}, @$rightname ); } warn "$me ACL cache miss for ". join(', ', @$rightname). "\n" @@ -577,9 +579,15 @@ sub is_system_user { fs_signup fs_bootstrap fs_selfserv + fs_api ) ); } +sub sched_item { + my $self = shift; + qsearch( 'sched_item', { 'usernum' => $self->usernum } ); +} + =back =head1 BUGS