summaryrefslogtreecommitdiff
path: root/FS/FS/o2m_Common.pm
diff options
context:
space:
mode:
authorIvan Kohler <ivan@freeside.biz>2015-02-03 07:14:45 -0800
committerIvan Kohler <ivan@freeside.biz>2015-02-03 07:14:45 -0800
commit167dbdad01e2c1b62fd9be43cc05212e8c874a02 (patch)
tree0d49c9ba03d64560f21b02a20d32d6005a790ced /FS/FS/o2m_Common.pm
parent475ae93877f1d834941f7b9adcc35ee84c5c22fa (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.pm7
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";