X-Git-Url: http://wagnertech.de/git?a=blobdiff_plain;ds=inline;f=SL%2FController%2FProject.pm;h=d6a63759dbd018bbfbbe392a77e8ba9950c9b177;hb=b4fc493375b77b6e27414fe3f7773f8b1add00fd;hp=23e5228adeb673ea15745d808986ec1c7fea72bd;hpb=9c7262bf1daa8ca9bb1c81a11be0e47cbcf1b533;p=kivitendo-erp.git diff --git a/SL/Controller/Project.pm b/SL/Controller/Project.pm index 23e5228ad..d6a63759d 100644 --- a/SL/Controller/Project.pm +++ b/SL/Controller/Project.pm @@ -126,6 +126,13 @@ sub display_form { $params{ALL_CUSTOMERS} = SL::DB::Manager::Customer->get_all_sorted(where => [ or => [ obsolete => 0, obsolete => undef, id => $self->project->customer_id ]]); $params{ALL_PROJECT_TYPES} = SL::DB::Manager::ProjectType->get_all_sorted; $params{CUSTOM_VARIABLES} = CVar->get_custom_variables(module => 'Projects', trans_id => $self->project->id); + + if ($params{keep_cvars}) { + for my $cvar (@{ $params{CUSTOM_VARIABLES} }) { + $cvar->{value} = $::form->{"cvar_$cvar->{name}"} if $::form->{"cvar_$cvar->{name}"}; + } + } + CVar->render_inputs(variables => $params{CUSTOM_VARIABLES}) if @{ $params{CUSTOM_VARIABLES} }; $self->render('project/form', %params); @@ -144,7 +151,8 @@ sub create_or_update { if (@errors) { flash('error', @errors); $self->display_form(title => $is_new ? $::locale->text('Create a new project') : $::locale->text('Edit project'), - callback => $::form->{callback}); + callback => $::form->{callback}, + keep_cvars => 1); return; } @@ -205,6 +213,9 @@ sub prepare_report { map { $column_defs{$_}->{text} ||= $::locale->text( $self->models->get_sort_spec->{$_}->{title} ) } keys %column_defs; + if ( $report->{options}{output_format} =~ /^(pdf|csv)$/i ) { + $self->models->disable_plugin('paginated'); + } $report->set_options( std_column_visibility => 1, controller_class => 'Project', @@ -218,7 +229,6 @@ sub prepare_report { $report->set_column_order(@columns); $report->set_export_options(qw(list filter)); $report->set_options_from_form; - $self->models->disable_pagination if $report->{options}{output_format} =~ /^(pdf|csv)$/i; $self->models->set_report_generator_sort_options(report => $report, sortable_columns => \@sortable); $report->set_options( raw_bottom_info_text => $self->render('project/report_bottom', { output => 0 }),