RDBO: Setups der Auth*-Instanzen vereinheitlicht
[kivitendo-erp.git] / SL / DB / AuthGroup.pm
1 package SL::DB::AuthGroup;
2
3 use strict;
4
5 use SL::DB::MetaSetup::AuthGroup;
6 use SL::DB::Manager::AuthGroup;
7 use SL::DB::AuthGroupRight;
8
9 __PACKAGE__->meta->add_relationship(
10   users => {
11     type      => 'many to many',
12     map_class => 'SL::DB::AuthUserGroup',
13     map_from  => 'group',
14     map_to    => 'user',
15   },
16   rights => {
17     type       => 'one to many',
18     class      => 'SL::DB::AuthGroupRight',
19     column_map => { id => 'group_id' },
20   },
21   clients => {
22     type      => 'many to many',
23     map_class => 'SL::DB::AuthClientGroup',
24     map_from  => 'group',
25     map_to    => 'client',
26   },
27 );
28
29 __PACKAGE__->meta->initialize;
30
31 sub get_employees {
32   my @logins = map { $_->login } $_[0]->users;
33   return @logins ? @{ SL::DB::Manager::Employee->get_all(query => [ login => \@logins ]) } : ();
34 }
35
36 1;