X-Git-Url: http://git.freeside.biz/gitweb/?a=blobdiff_plain;f=rt%2Flib%2FRT%2FTicket_Overlay.pm;h=c8b02e7ac8039b07b8ce95b73c7538bf9fde2bcc;hb=4d3c77fe23ae72abb72e4cb9f8e77a84b2375e6a;hp=1916bc4635944bbb61c0acb343105700bbf8411b;hpb=2f673cd6e61a8c67c4ef89d11cae3e96a7fac306;p=freeside.git diff --git a/rt/lib/RT/Ticket_Overlay.pm b/rt/lib/RT/Ticket_Overlay.pm index 1916bc463..c8b02e7ac 100644 --- a/rt/lib/RT/Ticket_Overlay.pm +++ b/rt/lib/RT/Ticket_Overlay.pm @@ -721,6 +721,31 @@ sub Create { #unless we already have (a) customer(s)... unless ( $self->Customers->Count ) { + #first find any requestors with emails but *without* customer targets + my @NoCust_Requestors = + grep { $_->EmailAddress && ! $_->Customers->Count } + @{ $self->Requestors->UserMembersObj->ItemsArrayRef }; + + for my $Requestor (@NoCust_Requestors) { + + #perhaps the stuff in here should be in a User method?? + my @Customers = + &RT::URI::freeside::email_search( email=>$Requestor->EmailAddress ); + + foreach my $custnum ( map $_->{'custnum'}, @Customers ) { + + ## false laziness w/RT/Interface/Web_Vendor.pm + my @link = ( 'Type' => 'MemberOf', + 'Target' => "freeside://freeside/cust_main/$custnum", + ); + + my( $val, $msg ) = $Requestor->AddLink(@link); + #XXX should do something with $msg# push @non_fatal_errors, $msg; + + } + + } + #find any requestors with customer targets my %cust_target = ();