<% Dumper(\%ARGS) %>
<%args> $delete => [] $update => undef $id => undef <%init> &abort404 unless $id && $id =~ /^\d+$/; my $order = $keeper->{webshop}->get_orders( id => $id ); &abort404 unless ref $order; if ( $update ) { my @delete = ref $delete ? @$delete : (); my (%renumber, %reprice); while ( my ($key, $value) = each %ARGS ) { if ( $key =~ /item_(\d+)\.num/ ) { my $id = $1; $renumber{$id} = $value if $value =~ /^\d+$/; } elsif ( $key =~ /item_(\d+)\.price/ ) { my $id = $1; $reprice{$id} = $value if $value =~ /^[\d\.]+$/; } } my ($total, $sum, $new_basket) = $keeper->{webshop}->recount( order_id=> $order->id, delete => \@delete, price => \%reprice, session_no_store=>1, renumber => \%renumber, ); $order->total( $total ); $order->sum( $sum ); $order->store; $m->redirect('/contenido/webshop/take_care.html?id='.$id); }