LP#1862235 - Create MARC Record - Flat Editor - Keyboard Shortcut for Saving
authorJosh Stompro <stompro@stompro.org>
Tue, 11 Feb 2020 17:26:56 +0000 (11:26 -0600)
committerJosh Stompro <stompro@stompro.org>
Tue, 11 Feb 2020 17:26:56 +0000 (11:26 -0600)
Adds ctrl+s as a keyboard shortcut for saving the marc record while in the
flat text editor.

Signed-off-by: Josh Stompro <stompro@stompro.org>
Open-ILS/src/templates/staff/cat/catalog/index.tt2
Open-ILS/web/js/ui/default/staff/cat/services/marcedit.js

index 5ca8e34..0398604 100644 (file)
@@ -66,6 +66,8 @@
     s.PAGE_TITLE_BIB_DETAIL = "[% l('Bib [_1]', '{{record_id}}') %]";
     s.PAGE_TITLE_CREATE_MARC = "[% l('Create MARC Record') %]";
 
+    s.HOTKEY_SAVE_RECORD = "[% l('Save Record') %]";
+
   }])
 </script>
 
index 09b46d0..09c9010 100644 (file)
@@ -697,9 +697,9 @@ angular.module('egMarcMod', ['egCoreMod', 'ui.bootstrap'])
 
         },
         controller : ['$timeout','$scope','$q','$window','egCore', 'egTagTable',
-                      'egConfirmDialog','egAlertDialog','ngToast','egStrings',
+                      'egConfirmDialog','egAlertDialog','ngToast','egStrings','hotkeys',
             function ( $timeout , $scope , $q,  $window , egCore ,  egTagTable , 
-                       egConfirmDialog , egAlertDialog , ngToast , egStrings) {
+                       egConfirmDialog , egAlertDialog , ngToast , egStrings, hotkeys) {
 
 
                 $scope.onSaveCallback = $scope.onSave;
@@ -719,6 +719,20 @@ angular.module('egMarcMod', ['egCoreMod', 'ui.bootstrap'])
                     }
                 );
 
+                hotkeys.add({
+                    combo: 'ctrl+s',
+                    description: egCore.strings.HOTKEY_SAVE_RECORD,
+                    callback: function(event, hotkey) {
+
+                        event.preventDefault();
+                        if($scope.flatEditor.isEnabled){
+                            $scope.saveFlatTextMARC();
+                        }
+                        $scope.saveRecord();
+                    },
+                    allowIn : ['INPUT','SELECT','TEXTAREA']
+                });
+
                 MARC21.Record.delimiter = '$';
 
                 $scope.enable_fast_add = false;