From: Ivan Kohler Date: Wed, 4 Feb 2015 20:07:24 +0000 (-0800) Subject: fix error editing customers w/contacts -- contacts can be shared among customers... X-Git-Url: http://git.freeside.biz/gitweb/?p=freeside.git;a=commitdiff_plain;h=e7e800e6b2a315171d7d8a9c1ff8bc7abb82f25b fix error editing customers w/contacts -- contacts can be shared among customers / "duplicate contact emails", RT#27943 --- diff --git a/httemplate/edit/cust_main/contacts_new.html b/httemplate/edit/cust_main/contacts_new.html index f59126a66..0ab02b420 100644 --- a/httemplate/edit/cust_main/contacts_new.html +++ b/httemplate/edit/cust_main/contacts_new.html @@ -11,6 +11,7 @@ { 'field' => 'contactnum', 'type' => 'contact', 'colspan' => 6, + 'custnum' => $opt{cust_main}->custnum, 'm2m_method' => 'cust_contact', 'm2m_dstcol' => 'contactnum', 'm2_label' => 'Contact', @@ -36,8 +37,8 @@ my $m2_error_callback = sub { my($cgi, $object) = @_; #process_o2m fields in process/cust_main-contacts.html - my @fields = qw( first last title comment ); - my @gfields = ( '', map "_$_", @fields ); + my $fields = FS::contact->cgi_contact_fields; + my @gfields = ( '', map "_$_", @$fields ); map { if ( /^contactnum(\d+)$/ ) { @@ -45,7 +46,7 @@ my $m2_error_callback = sub { if ( grep $cgi->param("contactnum$num$_"), @gfields ) { my $x = new FS::contact { 'contactnum' => scalar($cgi->param("contactnum$num")), - map { $_ => scalar($cgi->param("contactnum${num}_$_")) } @fields, + map { $_ => scalar($cgi->param("contactnum${num}_$_")) } @$fields, }; $x; } else {