From d8c62f08bf358948859491abe97532bb89a18859 Mon Sep 17 00:00:00 2001 From: Jonathan Prykop Date: Wed, 4 Jan 2017 06:01:59 -0600 Subject: [PATCH] 42396: Prospect creation without contact (v4+) [hide fields prospect doesn't use] --- httemplate/edit/prospect_main.html | 2 +- httemplate/elements/contact.html | 16 ++++++++++++---- 2 files changed, 13 insertions(+), 5 deletions(-) diff --git a/httemplate/edit/prospect_main.html b/httemplate/edit/prospect_main.html index 6aefe80d0..1e055783e 100644 --- a/httemplate/edit/prospect_main.html +++ b/httemplate/edit/prospect_main.html @@ -39,7 +39,7 @@ 'm2m_dstcol' => 'contactnum', 'm2_label' => 'Contact', 'm2_error_callback' => $m2_error_callback, - + 'include_opt_callback' => sub { 'for_prospect' => 1 }, }, { 'field' => 'locationnum', 'type' => 'select-cust_location', diff --git a/httemplate/elements/contact.html b/httemplate/elements/contact.html index 3fbcc0518..b0a7caca1 100644 --- a/httemplate/elements/contact.html +++ b/httemplate/elements/contact.html @@ -126,12 +126,17 @@ if ( $curr_value ) { 'contactnum' => $curr_value, 'prospectnum' => $opt{'prospectnum'}, }); + $opt{'for_prospect'} = 1; } else { die 'neither custnum nor prospectnum specified'; } } else { $contact = new FS::contact {}; - $X_contact = new FS::cust_contact; #arbitrary, it could be prospect_contact + if ($opt{'for_prospect'}) { + $X_contact = new FS::prospect_contact; + } else { + $X_contact = new FS::cust_contact; + } } my %size = ( 'title' => 12 ); @@ -140,11 +145,14 @@ tie my %label, 'Tie::IxHash', 'first' => 'First name', 'last' => 'Last name', 'title' => 'Title/Position', - 'emailaddress' => 'Email', - 'invoice_dest' => 'Send invoices', - 'selfservice_access' => 'Self-service' + 'emailaddress' => 'Email' ; +unless ($opt{'for_prospect'}) { + $label{'invoice_dest'} = 'Send invoices'; + $label{'selfservice_access'} = 'Self-service'; +} + my $first = 0; foreach my $phone_type ( qsearch({table=>'phone_type', order_by=>'weight'}) ) { next if $phone_type->typename =~ /^(Home|Fax)$/; -- 2.11.0