X-Git-Url: http://wagnertech.de/git?a=blobdiff_plain;f=SL%2FController%2FOrder.pm;h=29ff0ac49e7f7d52a1383f27d8e81a751a7274a1;hb=661febc70d58eb13923455512e8d76f1ef29ae60;hp=780e80ea2770696360ba1a9a2494f45fb329a93f;hpb=b7afa934d4ce656536645a97253e4d7ec27e380c;p=kivitendo-erp.git diff --git a/SL/Controller/Order.pm b/SL/Controller/Order.pm index 780e80ea2..29ff0ac49 100644 --- a/SL/Controller/Order.pm +++ b/SL/Controller/Order.pm @@ -94,11 +94,10 @@ sub action_edit { foreach my $item (@{$self->order->items_sorted}) { $item->{new_fake_id} = join('_', 'new', Time::HiRes::gettimeofday(), int rand 1000000000000); } - # trigger rendering values for second row/longdescription as hidden, - # because they are loaded only on demand. So we need to keep the values - # from the source. - $_->{render_second_row} = 1 for @{ $self->order->items_sorted }; - $_->{render_longdescription} = 1 for @{ $self->order->items_sorted }; + # trigger rendering values for second row as hidden, because they + # are loaded only on demand. So we need to keep the values from + # the source. + $_->{render_second_row} = 1 for @{ $self->order->items_sorted }; } $self->recalc(); @@ -263,6 +262,7 @@ sub action_print { my $formname = $::form->{print_options}->{formname}; my $copies = $::form->{print_options}->{copies}; my $groupitems = $::form->{print_options}->{groupitems}; + my $printer_id = $::form->{print_options}->{printer_id}; # only pdf and opendocument by now if (none { $format eq $_ } qw(pdf opendocument opendocument_pdf)) { @@ -287,6 +287,7 @@ sub action_print { my @errors = generate_pdf($self->order, \$pdf, { format => $format, formname => $formname, language => $self->order->language, + printer_id => $printer_id, groupitems => $groupitems }); if (scalar @errors) { return $self->js->flash('error', t8('Conversion to PDF failed: #1', $errors[0]))->render; @@ -434,6 +435,7 @@ sub action_send_email { format => $::form->{print_options}->{format}, formname => $::form->{print_options}->{formname}, language => $self->order->language, + printer_id => $::form->{print_options}->{printer_id}, groupitems => $::form->{print_options}->{groupitems}}); if (scalar @errors) { return $self->js->flash('error', t8('Conversion to PDF failed: #1', $errors[0]))->render($self); @@ -995,22 +997,6 @@ sub action_price_popup { $self->render_price_dialog($item); } -# get the longdescription for an item if the dialog to enter/change the -# longdescription was opened and the longdescription is empty -# -# If this item is new, get the longdescription from Part. -# Otherwise get it from OrderItem. -sub action_get_item_longdescription { - my $longdescription; - - if ($::form->{item_id}) { - $longdescription = SL::DB::OrderItem->new(id => $::form->{item_id})->load->longdescription; - } elsif ($::form->{parts_id}) { - $longdescription = get_part_texts($::form->{parts_id}, $::form->{language_id})->{longdescription}; - } - $_[0]->render(\ $longdescription, { type => 'text' }); -} - # load the second row for one or more items # # This action gets the html code for all items second rows by rendering a template for @@ -1037,11 +1023,12 @@ sub action_update_row_from_master_data { my ($self) = @_; foreach my $item_id (@{ $::form->{item_ids} }) { - my $idx = first_index { $_ eq $item_id } @{ $::form->{orderitem_ids} }; - my $item = $self->order->items_sorted->[$idx]; + my $idx = first_index { $_ eq $item_id } @{ $::form->{orderitem_ids} }; + my $item = $self->order->items_sorted->[$idx]; + my $texts = get_part_texts($item->part, $self->order->language_id); - $item->description($item->part->description); - $item->longdescription($item->part->notes); + $item->description($texts->{description}); + $item->longdescription($texts->{longdescription}); my $price_source = SL::PriceSource->new(record_item => $item, record => $self->order); @@ -1741,11 +1728,10 @@ sub workflow_sales_or_purchase_order { $self->get_unalterable_data(); $self->pre_render(); - # trigger rendering values for second row/longdescription as hidden, - # because they are loaded only on demand. So we need to keep the values - # from the source. - $_->{render_second_row} = 1 for @{ $self->order->items_sorted }; - $_->{render_longdescription} = 1 for @{ $self->order->items_sorted }; + # trigger rendering values for second row as hidden, because they + # are loaded only on demand. So we need to keep the values from the + # source. + $_->{render_second_row} = 1 for @{ $self->order->items_sorted }; $self->render( 'order/form', @@ -1934,6 +1920,7 @@ sub generate_pdf { $print_form->{format} = $params->{format} || 'pdf'; $print_form->{media} = $params->{media} || 'file'; $print_form->{groupitems} = $params->{groupitems}; + $print_form->{printer_id} = $params->{printer_id}; $print_form->{media} = 'file' if $print_form->{media} eq 'screen'; $order->language($params->{language}); @@ -1952,7 +1939,7 @@ sub generate_pdf { extension => $template_ext, email => $print_form->{media} eq 'email', language => $params->{language}, - printer_id => $print_form->{printer_id}, # todo + printer_id => $print_form->{printer_id}, ); if (!defined $template_file) { @@ -2255,8 +2242,6 @@ java script functions =item * check for direct delivery (workflow sales order -> purchase order) -=item * language / part translations - =item * access rights =item * display weights @@ -2320,10 +2305,6 @@ How to expand/collapse second row. Now it can be done clicking the icon or =item * -Possibility to change longdescription in input row? - -=item * - Possibility to select PriceSources in input row? =item *