X-Git-Url: http://wagnertech.de/git?a=blobdiff_plain;f=SL%2FCT.pm;h=b52c8794acafa55317b3c4bb674b4eab08d223c9;hb=96e32f352f3937bdd2deb279a55d94871396d9c0;hp=092da528f3ab3528068a5ff16593bd51b2e80939;hpb=ff13e2921011bbaa241412f45f8c465fdf6aab62;p=kivitendo-erp.git diff --git a/SL/CT.pm b/SL/CT.pm index 092da528f..b52c8794a 100644 --- a/SL/CT.pm +++ b/SL/CT.pm @@ -42,6 +42,7 @@ use SL::Common; use SL::CVar; use SL::DBUtils; use SL::DB; +use SL::Util qw(trim); use Text::ParseWords; use strict; @@ -244,6 +245,28 @@ sub search { push @values, $form->{create_zugferd_invoices}; } + if ($form->{all_phonenumbers}) { + my $search_term = trim($form->{all_phonenumbers}); + $search_term =~ s{\p{WSpace}+}{}g; + $search_term = join ' *', split(//, $search_term); + + $where .= qq| AND (ct.phone ~* ? OR + ct.fax ~* ? OR + ct.id IN + (SELECT cp_cv_id FROM contacts + WHERE cp_phone1 ~* ? OR + cp_phone2 ~* ? OR + cp_fax ~* ? OR + cp_mobile1 ~* ? OR + cp_mobile2 ~* ? OR + cp_satphone ~* ? OR + cp_satfax ~* ? OR + cp_privatphone ~* ? + ) + )|; + push @values, ($search_term)x10; + } + my ($cvar_where, @cvar_values) = CVar->build_filter_query('module' => 'CT', 'trans_id_field' => 'ct.id', 'filter' => $form);