LP#1691263: discourage input of newlines in MARC editor
authorGalen Charlton <gmc@equinoxinitiative.org>
Mon, 5 Feb 2018 23:04:12 +0000 (18:04 -0500)
committerKathy Lussier <klussier@masslnc.org>
Wed, 14 Mar 2018 20:10:24 +0000 (16:10 -0400)
This patch catches and discards enter keydown events when the
focus is in a contenteditable subfield value div; otherwise, newlines
can infect the MARC record.

Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
Open-ILS/web/js/ui/default/staff/cat/services/marcedit.js

index 4411098..24a08c1 100644 (file)
@@ -954,6 +954,12 @@ angular.module('egMarcMod', ['egCoreMod', 'ui.bootstrap'])
                         addDatafield(event, event.shiftKey); // shift key inserts before
                         event_return = false;
 
+                    } else if (event.which == 13 &&
+                              ($(event.target).hasClass('marcsf') || $(event.target.parentNode).hasClass('marcsf'))
+                              ) {
+                        // bare return; don't allow it
+                        event_return = false;
+
                     } else if (event.which == 46 && event.ctrlKey) { // ctrl+del, remove field
                         deleteDatafield(event);
                         event_return = false;