Bei Kunden/Lieferanten Recht customer_vendor_all_edit prüfen 2
authorG. Richardson <information@kivitendo-premium.de>
Tue, 15 Dec 2015 11:35:34 +0000 (12:35 +0100)
committerG. Richardson <information@kivitendo-premium.de>
Tue, 15 Dec 2015 11:35:34 +0000 (12:35 +0100)
Nachschlag zu 826f6eb2b3e , das Wichtigste wurde vergessen.

Beim Öffnen / Verändern / Speichern von Kunden prüfen, ob Verkäufer mit
Bearbeiter übereinstimmt, wenn Benutzer nicht das Recht
customer_vendor_all_edit hat.

SL/Controller/CustomerVendor.pm

index f77c65e..625ec62 100644 (file)
@@ -826,6 +826,16 @@ sub _load_customer_vendor {
   }
 }
 
+sub _check_customer_vendor_all_edit {
+  my ($self) = @_;
+
+  unless ($::auth->assert('customer_vendor_all_edit', 1)) {
+    die($::locale->text("You don't have the rights to edit this customer.") . "\n")
+      if $self->{cv}->is_customer and
+         SL::DB::Manager::Employee->current->id != $self->{cv}->salesman_id;
+  };
+};
+
 sub _create_customer_vendor {
   my ($self) = @_;