- unless ($form->{cp_used}) {
- CT->delete_contact($form->{cp_id});
- @$form{ grep /^cp_/, keys %$form } = undef;
+ if ($contact->used) {
+ $contact->detach->save;
+ flash('info', $::locale->text('Contact is in use and was flagged invalid.'));
+ } else {
+ $contact->delete;
+ flash('info', $::locale->text('Contact deleted.'));
+ }
+ delete $::form->{$_} for grep /^cp_/, keys %$::form;