]> wagnertech.de Git - kivitendo-erp.git/blobdiff - SL/Controller/Project.pm
Refactoring: Parameterredesign SL::Controller::Base::render und SL::Presenter::render
[kivitendo-erp.git] / SL / Controller / Project.pm
index fa42007bd45f6a1b50d02ba07b1e1f8ed347c411..386d7552b937cf6c33f162c7494cebf7524c2613 100644 (file)
@@ -13,13 +13,17 @@ use SL::Controller::Helper::ParseFilter;
 use SL::Controller::Helper::ReportGenerator;
 use SL::CVar;
 use SL::DB::Customer;
+use SL::DB::DeliveryOrder;
+use SL::DB::Invoice;
+use SL::DB::Order;
 use SL::DB::Project;
+use SL::DB::PurchaseInvoice;
 use SL::Helper::Flash;
 use SL::Locale::String;
 
 use Rose::Object::MakeMethods::Generic
 (
- scalar => [ qw(project db_args flat_filter) ],
+ scalar => [ qw(project db_args flat_filter linked_records) ],
 );
 
 __PACKAGE__->run_before('check_auth');
@@ -88,6 +92,16 @@ sub action_new {
 
 sub action_edit {
   my ($self) = @_;
+
+  $self->linked_records([
+    map  { @{ $_ } }
+    grep { $_      } (
+      SL::DB::Manager::Order->          get_all(where => [ globalproject_id => $self->project->id ], with_objects => [ 'customer', 'vendor' ], sort_by => 'transdate ASC'),
+      SL::DB::Manager::DeliveryOrder->  get_all(where => [ globalproject_id => $self->project->id ], with_objects => [ 'customer', 'vendor' ], sort_by => 'transdate ASC'),
+      SL::DB::Manager::Invoice->        get_all(where => [ globalproject_id => $self->project->id ], with_objects => [ 'customer'           ], sort_by => 'transdate ASC'),
+      SL::DB::Manager::PurchaseInvoice->get_all(where => [ globalproject_id => $self->project->id ], with_objects => [             'vendor' ], sort_by => 'transdate ASC'),
+    )]);
+
   $self->display_form(title    => $::locale->text('Edit project #1', $self->project->projectnumber),
                       callback => $::form->{callback} || $self->url_for(action => 'edit', id => $self->project->id));
 }
@@ -248,7 +262,7 @@ sub prepare_report {
     controller_class      => 'Project',
     output_format         => 'HTML',
     top_info_text         => $::locale->text('Projects'),
-    raw_bottom_info_text  => $self->render('project/report_bottom', { no_output => 1, partial => 1 }),
+    raw_bottom_info_text  => $self->render('project/report_bottom', { output => 0 }),
     title                 => $::locale->text('Projects'),
     allow_pdf_export      => 1,
     allow_csv_export      => 1,