diff options
author | Ivan Kohler <ivan@freeside.biz> | 2015-02-03 07:14:45 -0800 |
---|---|---|
committer | Ivan Kohler <ivan@freeside.biz> | 2015-02-03 07:14:45 -0800 |
commit | 167dbdad01e2c1b62fd9be43cc05212e8c874a02 (patch) | |
tree | 0d49c9ba03d64560f21b02a20d32d6005a790ced /FS/FS/o2m_Common.pm | |
parent | 475ae93877f1d834941f7b9adcc35ee84c5c22fa (diff) |
contacts can be shared among customers / "duplicate contact emails", RT#27943
Diffstat (limited to 'FS/FS/o2m_Common.pm')
-rw-r--r-- | FS/FS/o2m_Common.pm | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/FS/FS/o2m_Common.pm b/FS/FS/o2m_Common.pm index 0e03b52..4848649 100644 --- a/FS/FS/o2m_Common.pm +++ b/FS/FS/o2m_Common.pm @@ -87,7 +87,7 @@ sub process_o2m { foreach my $del_obj ( grep { ! $edits{$_->$table_pkey()} } - qsearch( $table, $hashref ) + $self->process_o2m_qsearch( $table, $hashref ) ) { my $error = $del_obj->delete; if ( $error ) { @@ -97,7 +97,7 @@ sub process_o2m { } foreach my $pkey_value ( keys %edits ) { - my $old_obj = qsearchs( $table, { %$hashref, $table_pkey => $pkey_value } ), + my $old_obj = $self->process_o2m_qsearchs( $table, { %$hashref, $table_pkey => $pkey_value } ); my $add_param = $edits{$pkey_value}; my %hash = ( $table_pkey => $pkey_value, map { $_ => $opt{'params'}->{$add_param."_$_"} } @@ -131,6 +131,9 @@ sub process_o2m { ''; } +sub process_o2m_qsearch { shift->qsearch( @_ ); } +sub process_o2m_qsearchs { shift->qsearchs( @_ ); } + sub _load_table { my( $self, $table ) = @_; eval "use FS::$table"; |