diff options
author | Ivan Kohler <ivan@freeside.biz> | 2017-05-16 16:14:27 -0700 |
---|---|---|
committer | Ivan Kohler <ivan@freeside.biz> | 2017-05-16 16:14:27 -0700 |
commit | a8d4f4f83cb4382bc301ba7ed21b6a72aac1f1f7 (patch) | |
tree | bfa0386d60ce748c576be9b9c1a721975deb94d9 | |
parent | b3ce58129da19d2fb8d32e9bcdfece2bd3da22bc (diff) |
show a name on residential prospect quotations, RT#75990
-rw-r--r-- | FS/FS/Template_Mixin.pm | 3 | ||||
-rw-r--r-- | FS/FS/prospect_main.pm | 35 |
2 files changed, 38 insertions, 0 deletions
diff --git a/FS/FS/Template_Mixin.pm b/FS/FS/Template_Mixin.pm index b5f7aaadd..758b8ce85 100644 --- a/FS/FS/Template_Mixin.pm +++ b/FS/FS/Template_Mixin.pm @@ -603,6 +603,9 @@ sub print_generic { 'total_pages' => 1, ); + + #quotations have $name + $invoice_data{'name'} = $invoice_data{'payname'}; #localization $invoice_data{'emt'} = sub { &$escape_function($self->mt(@_)) }; diff --git a/FS/FS/prospect_main.pm b/FS/FS/prospect_main.pm index 76faf0f2c..c54c569c3 100644 --- a/FS/FS/prospect_main.pm +++ b/FS/FS/prospect_main.pm @@ -279,10 +279,45 @@ sub name { 'Prospect #'. $self->prospectnum; } +=item contact_firstlast + +If this prospect has a company, returns the empty string. If not, returns the +first contact's first and last name. + +Primarily intended for use in quotation substitutions, like the FS::cust_main +method of the same name. + +=cut + +sub contact_firstlast { + my $self = shift; + return '' if $self->company; + my @contacts = $self->contact; + #return '' unless @contacts; + warn $contacts[0]->first; + warn $contacts[0]->get('last'); + $contacts[0]->first. ' '. $contacts[0]->get('last'); +} + =item contact Returns the contacts (see L<FS::contact>) associated with this prospect. +=cut + +sub contact { + my $self = shift; + my $search = { + table => 'contact', + addl_from => ' JOIN prospect_contact USING (contactnum)', + extra_sql => ' WHERE prospect_contact.prospectnum = '.$self->prospectnum, + }; + + #classnum argument like FS::cust_main->contact? + + qsearch($search); +} + =item cust_location Returns the locations (see L<FS::cust_location>) associated with this prospect. |