Nicht doppelt quoten.
[kivitendo-erp.git] / bin / mozilla / ct.pl
index 29a0283..b603a35 100644 (file)
@@ -245,9 +245,6 @@ sub edit {
   CT->get_tuple(\%myconfig, \%$form);
   CT->populate_drop_down_boxes(\%myconfig, \%$form);
 
-  # format " into "
-  map { $form->{$_} =~ s/\"/"/g } keys %$form;
-
   $form->{title} = "Edit";
 
   # format discount
@@ -273,7 +270,7 @@ sub form_header {
   $form->{is_admin}       = $myconfig{role} eq 'admin';
   $form->{is_customer}    = $form->{db}     eq 'customer';
   $form->{salesman_label} = sub { $_[0]->{name} ne "" ? $_[0]->{name} : $_[0]->{login} };
-  $form->{shipto_label}   = sub { "$_[0]->{shiptoname} $_[0]->{shiptodepartment_1}" };
+  $form->{shipto_label}   = sub { my $s = shift(@_); join('; ', grep { $_ } map { $s->{"shipto$_"} } qw(name department_1 street city)) || ' ' };
   $form->{contacts_label} = sub { join ", ", grep { $_ } $_[0]->{cp_name}, $_[0]->{cp_givenname} };
   $form->{taxzone_id}     = 0                                                               if !$form->{id};
   $form->{jsscript}       = 1;
@@ -314,7 +311,9 @@ sub form_footer {
 sub add_transaction {
   $lxdebug->enter_sub();
 
-  $auth->assert('customer_vendor_edit & general_ledger');
+  $auth->assert('customer_vendor_edit & ' .
+                '(general_ledger         | invoice_edit         | vendor_invoice_edit | ' .
+                ' request_quotation_edit | sales_quotation_edit | sales_order_edit    | purchase_order_edit)');
 
 #  # saving the history
 #  if(!exists $form->{addition}) {
@@ -435,7 +434,11 @@ sub save_and_quotation {
 sub save_and_order {
   $lxdebug->enter_sub();
 
-  $auth->assert('customer_vendor_edit & sales_order_edit');
+  if ($form->{db} eq 'customer') {
+    $auth->assert('customer_vendor_edit & sales_order_edit');
+  } else {
+    $auth->assert('customer_vendor_edit & purchase_order_edit');
+  }
 
   $form->{script} = "oe.pl";
   $form->{type}   =