Bug 24108: (follow-up) Fix typo with .xml extension
[srvgit] / koha-tmpl / intranet-tmpl / prog / en / includes / cateditor-ui.inc
index f3b4cec..a869ab0 100644 (file)
@@ -41,20 +41,22 @@ require.config( {
 
 <script>
 require( [ 'koha-backend', 'search', 'macros', 'marc-editor', 'marc-record', 'preferences', 'resources', 'text-marc', 'widget' ], function( KohaBackend, Search, Macros, MARCEditor, MARC, Preferences, Resources, TextMARC, Widget ) {
-    var z3950Servers = {
-        'koha:biblioserver': {
+    var z3950Servers = [
+        {
+            server_id: 'koha:biblioserver',
             name: _("Local catalog"),
             recordtype: 'biblio',
             checked: false,
         },
         [%- FOREACH server = z3950_servers -%]
-            [% server.id | html %]: {
-                name: '[% server.servername | html %]',
+            {
+                server_id: [% server.id | html %],
+                name: '[% server.servername | html_entity %]',
                 recordtype: '[% server.recordtype | html %]',
                 checked: [% server.checked ? 'true' : 'false' | html %],
             },
         [%- END -%]
-    };
+    ];
 
     // The columns that should show up in a search, in order, and keyed by the corresponding <metadata> tag in the XSL and Pazpar2 config
     var z3950Labels = [
@@ -287,7 +289,18 @@ require( [ 'koha-backend', 'search', 'macros', 'marc-editor', 'marc-record', 'pr
         'iso2709': {
             saveLabel: _("Save as MARC (.mrc) file"),
             save: function( id, record, done ) {
-                saveAs( new Blob( [record.toISO2709()], { 'type': 'application/octet-stream;charset=utf-8' } ), 'record.mrc' );
+                var recname = 'record.mrc';
+                if(state.recordID) {
+                    recname = state.recordID+'.mrc';
+                }
+
+                [% IF (Koha.Preference('SaveRecordbyControlNumber') == '1') %]
+                var controlnumfield = record.field('001');
+                if(controlnumfield) {
+                    recname = controlnumfield.subfield('@')+'.mrc';
+                }
+                [% END %]
+                saveAs( new Blob( [record.toISO2709()], { 'type': 'application/octet-stream;charset=utf-8' } ), recname );
 
                 done( {} );
             }
@@ -295,7 +308,18 @@ require( [ 'koha-backend', 'search', 'macros', 'marc-editor', 'marc-record', 'pr
         'marcxml': {
             saveLabel: _("Save as MARCXML (.xml) file"),
             save: function( id, record, done ) {
-                saveAs( new Blob( [record.toXML()], { 'type': 'application/octet-stream;charset=utf-8' } ), 'record.xml' );
+                var recname = 'record.xml';
+                if(state.recordID) {
+                    recname = state.recordID+'.xml';
+                }
+
+                [% IF (Koha.Preference('SaveRecordbyControlNumber') == '1') %]
+                var controlnumfield = record.field('001');
+                if(controlnumfield) {
+                    recname = controlnumfield.subfield('@')+'.xml';
+                }
+                [% END %]
+                saveAs( new Blob( [record.toXML()], { 'type': 'application/octe     t-stream;charset=utf-8' } ), recname );
 
                 done( {} );
             }
@@ -405,8 +429,8 @@ require( [ 'koha-backend', 'search', 'macros', 'marc-editor', 'marc-record', 'pr
     // Search functions
     function showAdvancedSearch() {
         $('#advanced-search-servers').empty();
-        $.each( z3950Servers, function( server_id, server ) {
-            $('#advanced-search-servers').append( '<li data-server-id="' + server_id + '"><label><input class="search-toggle-server" type="checkbox"' + ( server.checked ? ' checked="checked">' : '>' ) + server.name + '</label></li>' );
+        $.each( z3950Servers, function( index, server ) {
+            $('#advanced-search-servers').append( '<li data-server-id="' + index + '"><label><input class="search-toggle-server" type="checkbox"' + ( server.checked ? ' checked="checked">' : '>' ) + server.name + '</label></li>' );
         } );
         $('#advanced-search-ui').modal('show');
     }
@@ -457,18 +481,18 @@ require( [ 'koha-backend', 'search', 'macros', 'marc-editor', 'marc-record', 'pr
         $('#searchresults tbody').empty();
         $('#search-serversinfo').empty();
 
-        $.each( z3950Servers, function( server_id, server ) {
-            var num_fetched = data.num_fetched[server_id];
+        $.each( z3950Servers, function( index, server ) {
+            var num_fetched = data.num_fetched[server.server_id];
 
-            if ( data.errors[server_id] ) {
-                num_fetched = data.errors[server_id];
+            if ( data.errors[server.server_id] ) {
+                num_fetched = data.errors[server.server_id];
             } else if ( num_fetched == null ) {
                 num_fetched = '-';
-            } else if ( num_fetched < data.num_hits[server_id] ) {
+            } else if ( num_fetched < data.num_hits[server.server_id] ) {
                 num_fetched += '+';
             }
 
-            $('#search-serversinfo').append( '<li data-server-id="' + server_id + '"><label><input class="search-toggle-server" type="checkbox"' + ( server.checked ? ' checked="checked">' : '>' ) + server.name + ' (' + num_fetched + ')' + '</label></li>' );
+            $('#search-serversinfo').append( '<li data-server-id="' + index + '"><label><input class="search-toggle-server" type="checkbox"' + ( server.checked ? ' checked="checked">' : '>' ) + server.name + ' (' + num_fetched + ')' + '</label></li>' );
         } );
 
         var seenColumns = {};
@@ -511,7 +535,8 @@ require( [ 'koha-backend', 'search', 'macros', 'marc-editor', 'marc-record', 'pr
             }
 
             var result = '<tr>';
-            result += '<td class="sourcecol">' + z3950Servers[ hit.server ].name + '</td>';
+            var server_name = hit.servername == 'koha:biblioserver' ? _("Local catalog") : hit.servername;
+            result += '<td class="sourcecol">' + server_name + '</td>';
 
             $.each( z3950Labels, function( undef, label ) {
                 if ( !seenColumns[ label[0] ] ) return;
@@ -641,8 +666,8 @@ require( [ 'koha-backend', 'search', 'macros', 'marc-editor', 'marc-record', 'pr
                 // Macros loaded on first show of modal
                 break;
             case 'selected_search_targets':
-                $.each( z3950Servers, function( server_id, server ) {
-                    var saved_val = Preferences.user.selected_search_targets[server_id];
+                $.each( z3950Servers, function( index, server ) {
+                    var saved_val = Preferences.user.selected_search_targets[server.server_id];
 
                     if ( saved_val != null ) server.checked = saved_val;
                 } );
@@ -845,7 +870,7 @@ require( [ 'koha-backend', 'search', 'macros', 'marc-editor', 'marc-record', 'pr
         $.ajax(options)
             .then(function(result) {
                     $.each(result,function( undef, macro ){
-                        var $li = $( '<li data-name="' + macro.name + '" data-id="' + macro.macro_id + '"><a href="#">'+ macro.macro_id + ' - ' + macro.name + '</a><ol class="macro-info"></ol></li>' );
+                        var $li = $( '<li data-name="' + macro.name + '" data-id="' + macro.macro_id + '"><a href="#">' + macro.name + '</a><ol class="macro-info"></ol></li>' );
                         if ( macro.macro_id == macroEditor.activeMacroId ) $li.addClass( 'active' );
                         $li.click( function() {
                             loadMacro(macro.name, macro.macro_id, macro.shared);
@@ -1156,7 +1181,7 @@ require( [ 'koha-backend', 'search', 'macros', 'marc-editor', 'marc-record', 'pr
 
             var errors = [];
             $.each( result.errors, function() {
-                var error = '<b>' + _("Line ") + (this.line + 1) + ':</b> ';
+                var error = '<strong>' + _("Line ") + (this.line + 1) + ':</strong> ';
 
                 switch ( this.error ) {
                     case 'failed': error += _("failed to run"); break;