X-Git-Url: http://wagnertech.de/git?a=blobdiff_plain;ds=sidebyside;f=SL%2FController%2FPaymentTerm.pm;h=3a768a2d449076c8791ba0d232c7e617f48f660b;hb=e74dac176e01090f7e3b6bd9e99596a36e614284;hp=631428edbe0a9d9dbbaa77678f144744edbeae03;hpb=dbbf892309056494e9243df8b7599096ef9e42c5;p=kivitendo-erp.git diff --git a/SL/Controller/PaymentTerm.pm b/SL/Controller/PaymentTerm.pm index 631428edb..3a768a2d4 100644 --- a/SL/Controller/PaymentTerm.pm +++ b/SL/Controller/PaymentTerm.pm @@ -13,7 +13,8 @@ use Rose::Object::MakeMethods::Generic scalar => [ qw(payment_term languages) ], ); -__PACKAGE__->run_before('load_payment_term', only => [ qw( edit update destroy move_up move_down) ]); +__PACKAGE__->run_before('check_auth'); +__PACKAGE__->run_before('load_payment_term', only => [ qw( edit update destroy) ]); __PACKAGE__->run_before('load_languages', only => [ qw(new list edit create update) ]); # @@ -64,16 +65,25 @@ sub action_destroy { $self->redirect_to(action => 'list'); } -sub action_move_up { +sub action_reorder { my ($self) = @_; - $self->{payment_term}->move_position_up; - $self->redirect_to(action => 'list'); + + 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); + } + }); + + $self->render('1;', { type => 'js', inline => 1 }); } -sub action_move_down { - my ($self) = @_; - $self->{payment_term}->move_position_down; - $self->redirect_to(action => 'list'); +# +# filters +# + +sub check_auth { + $::auth->assert('config'); } #