Link up an error message on attempt to delete a patron with open xacts user/mrpeters-isl/prevent_user_delete_with_open_xacts
authorMichael Peters <mrpeters@library.in.gov>
Thu, 13 Oct 2011 13:25:32 +0000 (09:25 -0400)
committerMichael Peters <mrpeters@library.in.gov>
Thu, 13 Oct 2011 14:11:01 +0000 (10:11 -0400)
Signed-off-by: Michael Peters <mrpeters@library.in.gov>
Open-ILS/xul/staff_client/server/locale/en-US/patron.properties
Open-ILS/xul/staff_client/server/patron/display.js

index d4996b7..e62c255 100644 (file)
@@ -94,6 +94,7 @@ staff.patron.display.cmd_patron_delete.dest_user.default_value=
 staff.patron.display.cmd_patron_delete.dest_user.title=Destination User
 staff.patron.display.cmd_patron_delete.dest_user.failure=Failed to retrieve destination user.  User deletion aborted.
 staff.patron.display.cmd_patron_delete.dest_user.self_reference_failure=Cannot specify the deleted user as the destination user.  User deletion aborted.
+staff.patron.display.cmd_patron_delete.open_xact=The user you have attempted to delete cannot be deleted because it has open circulations and/or unpaid bills.
 staff.patron.display.spawn_editor.editing_related_patron=Editing Related Patron
 staff.patron.display.init.retrieving_patron=Retrieving Patron...
 staff.patron.display.init.retrieving=Retrieving...
index 3cf9f96..8eea7cd 100644 (file)
@@ -123,7 +123,16 @@ patron.display.prototype = {
                                         }
                                         params.push( dest_usr.id() );
                                     }
-                                    obj.network.simple_request( 'FM_AU_DELETE', params );
+                                   var robj = obj.network.simple_request( 'FM_AU_DELETE', params );
+                                   alert(js2JSON(robj));
+                                   if (typeof robj.ilsevent != 'undefined') {
+                                       switch(Number(robj.ilsevent)) {
+                                           case 2004 /* ACTOR_USER_DELETE_OPEN_XACTS */ :
+                                               alert(document.getElementById('patronStrings').getString('staff.patron.display.cmd_patron_delete.open_xact'));
+                                               return;
+                                               break;
+                                       }
+                                   }
                                     obj.refresh_all();
                                 }
                             } catch(E) {