From: Moritz Bunkus Date: Thu, 18 Aug 2016 09:45:09 +0000 (+0200) Subject: Merge branch 'f-use-with_transaction-instead-of-do_transaction' X-Git-Tag: release-3.5.4~2127 X-Git-Url: http://wagnertech.de/gitweb/gitweb.cgi/mfinanz.git/commitdiff_plain/0b84f51fd598e4b5a1cb139aa582297d089b1602?hp=-c Merge branch 'f-use-with_transaction-instead-of-do_transaction' --- 0b84f51fd598e4b5a1cb139aa582297d089b1602 diff --combined SL/Controller/Order.pm index 22a0fd06b,480f8915b..89c7ded25 --- a/SL/Controller/Order.pm +++ b/SL/Controller/Order.pm @@@ -93,7 -93,7 +93,7 @@@ sub action_delete flash_later('info', $::locale->text('The order has been deleted')); my @redirect_params = ( - action => 'edit', + action => 'add', type => $self->type, ); @@@ -893,9 -893,9 +893,9 @@@ sub _delete my ($self) = @_; my $errors = []; - my $db = $self->order->db; + my $db = $self->order->db; - $db->do_transaction( + $db->with_transaction( sub { my @spoolfiles = grep { $_ } map { $_->spoolfile } @{ SL::DB::Manager::Status->get_all(where => [ trans_id => $self->order->id ]) }; $self->order->delete; @@@ -915,12 -915,11 +915,11 @@@ sub _save my ($self) = @_; my $errors = []; - my $db = $self->order->db; + my $db = $self->order->db; - $db->do_transaction( - sub { - SL::DB::OrderItem->new(id => $_)->delete for @{$self->item_ids_to_delete}; - $self->order->save(cascade => 1); + $db->with_transaction(sub { + SL::DB::OrderItem->new(id => $_)->delete for @{$self->item_ids_to_delete}; + $self->order->save(cascade => 1); }) || push(@{$errors}, $db->error); return $errors; diff --combined SL/Controller/RequirementSpecItem.pm index 3ba774b48,d32d28481..b74ebefd0 --- a/SL/Controller/RequirementSpecItem.pm +++ b/SL/Controller/RequirementSpecItem.pm @@@ -87,21 -87,21 +87,21 @@@ sub action_dragged_and_dropped my $old_type = $self->item->item_type; my $new_type = !$dropped_item ? 'section' : $position =~ m/before|after/ ? $dropped_item->item_type : $dropped_item->child_type; - $self->item->db->do_transaction(sub { + $self->item->db->with_transaction(sub { $self->item->remove_from_list; $self->item->parent_id($position =~ m/before|after/ ? $dropped_item->parent_id : $dropped_item->id) if $dropped_item; $self->item->item_type($new_type); $self->item->add_to_list(position => $position, reference => $::form->{dropped_id} || undef); }); - $self->item(SL::DB::RequirementSpecItem->new(id => $self->item->id)->load); - my $new_section = $self->item->section; - my $new_visible_section = SL::DB::RequirementSpecItem->new(id => $self->visible_item->id)->load->section; - return $self->invalidate_version->render if !$old_visible_section || ($new_type eq 'section'); # From here on $old_visible_section is definitely set. + $self->item(SL::DB::RequirementSpecItem->new(id => $self->item->id)->load); + my $new_section = $self->item->section; + my $new_visible_section = SL::DB::RequirementSpecItem->new(id => $self->visible_item->id)->load->section; + my $old_parent = SL::DB::RequirementSpecItem->new(id => $old_parent_id)->load; my $old_section = $old_parent->section;