disallow merge if subordinate account is in collections
authorerickson <erickson@dcc99617-32d9-48b4-a31d-7c20da2025e4>
Fri, 12 Jun 2009 18:12:57 +0000 (18:12 +0000)
committererickson <erickson@dcc99617-32d9-48b4-a31d-7c20da2025e4>
Fri, 12 Jun 2009 18:12:57 +0000 (18:12 +0000)
git-svn-id: svn://svn.open-ils.org/ILS/trunk@13379 dcc99617-32d9-48b4-a31d-7c20da2025e4

Open-ILS/src/perlmods/OpenILS/Application/Actor.pm

index b8201b1..5d3107d 100644 (file)
@@ -3053,6 +3053,10 @@ sub merge_users {
     my $e = new_editor(xact => 1, authtoken => $auth);
        return $e->die_event unless $e->checkauth;
 
+    # disallow the merge if any subordinate accounts are in collections
+    my $colls = $e->search_money_collections_tracker({usr => $user_ids}, {idlist => 1});
+    return OpenILS::Event->new('MERGED_USER_IN_COLLECTIONS', payload => $user_ids) if @$colls;
+
     my $master_user = $e->retrieve_actor_user($master_id) or return $e->die_event;
     my $del_addrs = ($U->ou_ancestor_setting_value(
         $master_user->home_ou, 'circ.user_merge.delete_addresses', $e)) ? 't' : 'f';