X-Git-Url: http://wagnertech.de/git?a=blobdiff_plain;f=SL%2FController%2FPaymentTerm.pm;h=5064f756dd18ab9dc37ab4f4a41d963fa5355fe2;hb=19e4022642c1fd958850244ec4896f964519e563;hp=55401ba13356f43ea8faa084324bbc281addae58;hpb=1df2efffbb760f0c7ad5e32e40807beadc227b80;p=kivitendo-erp.git diff --git a/SL/Controller/PaymentTerm.pm b/SL/Controller/PaymentTerm.pm index 55401ba13..5064f756d 100644 --- a/SL/Controller/PaymentTerm.pm +++ b/SL/Controller/PaymentTerm.pm @@ -14,8 +14,9 @@ use Rose::Object::MakeMethods::Generic ); __PACKAGE__->run_before('check_auth'); -__PACKAGE__->run_before('load_payment_term', only => [ qw( edit update destroy move_up move_down) ]); +__PACKAGE__->run_before('load_payment_term', only => [ qw( edit update destroy) ]); __PACKAGE__->run_before('load_languages', only => [ qw(new list edit create update) ]); +__PACKAGE__->run_before('setup', only => [ qw(new edit) ]); # # actions @@ -25,19 +26,20 @@ sub action_list { my ($self) = @_; $self->render('payment_term/list', - title => $::locale->text('Payment terms'), + title => $::locale->text('Payment terms'), PAYMENT_TERMS => SL::DB::Manager::PaymentTerm->get_all_sorted); } sub action_new { my ($self) = @_; - $self->{payment_term} = SL::DB::PaymentTerm->new; + $self->{payment_term} = SL::DB::PaymentTerm->new(auto_calculation => 1); $self->render('payment_term/form', title => $::locale->text('Create a new payment term')); } sub action_edit { my ($self) = @_; + $self->render('payment_term/form', title => $::locale->text('Edit payment term')); } @@ -68,14 +70,9 @@ sub action_destroy { sub action_reorder { my ($self) = @_; - my @ids = @{ $::form->{payment_term_id} || [] }; - my $result = SL::DB::PaymentTerm->new->db->do_transaction(sub { - foreach my $idx (0 .. scalar(@ids) - 1) { - SL::DB::PaymentTerm->new(id => $ids[$idx])->load->update_attributes(sortkey => $idx + 1); - } - }); + SL::DB::PaymentTerm->reorder_list(@{ $::form->{payment_term_id} || [] }); - $self->render(type => 'js', inline => '1;'); + $self->render(\'', { type => 'json' }); } # @@ -86,6 +83,10 @@ sub check_auth { $::auth->assert('config'); } +sub setup { + $::request->layout->use_javascript("kivi.PaymentTerm.js"); +} + # # helpers # @@ -96,6 +97,7 @@ sub create_or_update { my $params = delete($::form->{payment_term}) || { }; $self->{payment_term}->assign_attributes(%{ $params }); + $self->{payment_term}->terms_netto(0) if !$self->{payment_term}->auto_calculation; my @errors = $self->{payment_term}->validate;