]> wagnertech.de Git - kivitendo-erp.git/blobdiff - SL/DB/Employee.pm
Merge branch 'b-3.6.1' of ../kivitendo-erp_20220811
[kivitendo-erp.git] / SL / DB / Employee.pm
index 1ef565ee6893de26a4282f34dd6cb4e6d0003df0..0c321b62f9fa7b6834cb6ff6e3ba4f49a1bb23f9 100644 (file)
@@ -5,5 +5,36 @@ use strict;
 use SL::DB::MetaSetup::Employee;
 use SL::DB::Manager::Employee;
 
+__PACKAGE__->meta->add_relationship(
+  project_invoice_permissions  => {
+    type       => 'many to many',
+    map_class  => 'SL::DB::EmployeeProjectInvoices',
+  },
+);
+
+__PACKAGE__->meta->initialize;
+
+sub has_right {
+  my $self  = shift;
+  my $right = shift;
+
+  return $::auth->check_right($self->login, $right);
+}
+
+sub safe_name {
+  my ($self) = @_;
+
+  return $self->name || $self->login;
+}
+
+sub auth_user {
+  my ($self) = @_;
+
+  die 'not an accessor' if scalar(@_) > 1;
+
+  require SL::DB::AuthUser;
+
+  return SL::DB::Manager::AuthUser->find_by(login => $self->login);
+}
 
 1;