Auf CustomerVendor auf currency_id umgestellt
[kivitendo-erp.git] / SL / Controller / CustomerVendor.pm
index 04042fd..8d2f96a 100644 (file)
@@ -18,6 +18,8 @@ use SL::DB::PaymentTerm;
 use SL::DB::Pricegroup;
 use SL::DB::Contact;
 use SL::DB::FollowUp;
+use SL::DB::History;
+use SL::DB::Currency;
 
 # safety
 __PACKAGE__->run_before(
@@ -125,7 +127,13 @@ sub _save {
     $self->{shipto}->save();
   }
 
-  #TODO: history
+  my $snumbers = $self->is_vendor() ? 'vendornumber_'. $self->{cv}->vendornumber : 'customernumber_'. $self->{cv}->customernumber;
+  SL::DB::History->new(
+    trans_id => $self->{cv}->id,
+    snumbers => $snumbers,
+    employee_id => SL::DB::Manager::Employee->current->id,
+    addition => 'SAVED',
+  )->save();
 }
 
 sub action_save {
@@ -240,7 +248,13 @@ sub action_delete {
   else {
     $self->{cv}->delete();
 
-    #TODO: history
+    my $snumbers = $self->is_vendor() ? 'vendornumber_'. $self->{cv}->vendornumber : 'customernumber_'. $self->{cv}->customernumber;
+    SL::DB::History->new(
+      trans_id => $self->{cv}->id,
+      snumbers => $snumbers,
+      employee_id => SL::DB::Manager::Employee->current->id,
+      addition => 'DELETED',
+    )->save();
 
     my $msg = $self->is_vendor() ? $::locale->text('Vendor deleted!') : $::locale->text('Customer deleted!');
     $::form->redirect($msg);
@@ -291,6 +305,33 @@ sub action_delete_shipto {
   $self->action_edit();
 }
 
+
+sub action_search {
+  my ($self) = @_;
+
+  my $url = 'ct.pl?action=search&db='. ($self->is_vendor() ? 'vendor' : 'customer');
+
+  if ( $::form->{callback} ) {
+    $url .= '&callback='. $::from->escape($::form->{callback});
+  }
+
+  print $::form->redirect_header($url);
+}
+
+
+sub action_search_contact {
+  my ($self) = @_;
+
+  my $url = 'ct.pl?action=search_contact&db=customer';
+
+  if ( $::form->{callback} ) {
+    $url .= '&callback='. $::from->escape($::form->{callback});
+  }
+
+  print $::form->redirect_header($url);
+}
+
+
 sub action_get_delivery {
   my ($self) = @_;
 
@@ -506,12 +547,6 @@ sub _instantiate_args {
 
   my $curr_employee = SL::DB::Manager::Employee->current;
 
-  foreach ( 'cv.creditlimit', 'cv.discount' ) {
-    my ($namespace, $varname) = split('.', $_, 2);
-    $::form->{$namespace}->{$varname} = $::form->parse_amount(\%::myconfig, $::form->{$namespace}->{$varname});
-  }
-  $::form->{cv}->{discount} /= 100;
-
   if ( $::form->{cv}->{id} ) {
     if ( $self->is_vendor() ) {
       $self->{cv} = SL::DB::Vendor->new(id => $::form->{cv}->{id})->load();
@@ -693,18 +728,7 @@ sub _pre_render {
     )
   ];
 
-  $query =
-    'SELECT curr
-     FROM defaults';
-  my $curr = selectall_hashref_query($::form, $dbh, $query)->[0]->{curr};
-  my @currencies = grep(
-    { $_; }
-    map(
-      { s/\s//g; $_; }
-      split(m/:/, $curr)
-    )
-  );
-  $self->{all_currencies} = \@currencies;
+  $self->{all_currencies} = SL::DB::Manager::Currency->get_all();
 
   $self->{all_languages} = SL::DB::Manager::Language->get_all();
 
@@ -738,9 +762,6 @@ sub _pre_render {
 
   $self->{template_args} = {};
 
-  $self->{cv}->discount($self->{cv}->discount * 100);
-
-
   $::request->{layout}->add_javascripts('autocomplete_customer.js');
 }