@@ -, +, @@
"ISBN 0-9690745-2-2"
---
koha-tmpl/opac-tmpl/bootstrap/js/autofill.js | 156 +++++++++++++--------------
1 file changed, 78 insertions(+), 78 deletions(-)
--- a/koha-tmpl/opac-tmpl/bootstrap/js/autofill.js
+++ a/koha-tmpl/opac-tmpl/bootstrap/js/autofill.js
@@ -27,8 +27,8 @@
/* decorate element as autofiller */
var $inputgroup = $('
');
- self.$undo = $('undo');
- self.$fillbtn = $('');
+ self.$undo = $('Undo');
+ self.$fillbtn = $(' Search Google Books ');
self.$error = $('');
self.$elm.wrap($inputgroup);
self.$elm.after(self.$error);
@@ -63,87 +63,87 @@
self.$error.hide();
/* give user some feedback that the request is in progress */
self.$fillbtn.fadeOut(1000).fadeIn(1000);
-
- var gAPI = 'https://www.googleapis.com/books/v1/volumes?q=';
- if(self.type)
- gAPI += self.type + ':';
- gAPI += self.$elm.val();
- gAPI += '&maxResults=1';
-
- $.getJSON(gAPI, function (response) {
- if(response.totalItems == 0) {
- self.$error.html('Sorry, nothing found.');
- self.$error.show();
- return;
- }
-
- var undos = 0;
- var item = response.items[0];
- for(var key in self.fields) {
- var filled = false;
- var value = eval('item.'+key);
- var field = self.fields[key];
-
- /* field handled by caller */
- if('handle' in field) {
- if(typeof field.handle === 'function')
- field.handle(field.$target, value);
-
- continue; /* next please */
+ if ( self.$elm.val()) {
+ var gAPI = 'https://www.googleapis.com/books/v1/volumes?q=';
+ if(self.type)
+ gAPI += self.type + ':';
+ gAPI += self.$elm.val();
+ gAPI += '&maxResults=1';
+ $.getJSON(gAPI, function (response) {
+ if(response.totalItems == 0) {
+ self.$error.html('Sorry, nothing found.');
+ self.$error.show();
+ return;
}
- /* wouldn't know what to do with result unless we have a
- * target */
- if( ! field.$target )
- continue;
-
- /* handle differently depending on datatype */
- switch(typeString(value)) {
- case 'array':
- switch(field.$target.prop('nodeName').toUpperCase()) {
- case 'TEXTAREA':
- undos++;
- field.$target.bind('autofill-undo', field.$target.text(), function(e){$(this).text(e.data);});
- field.$target.text(value.join(', '));
- break;
- case 'INPUT':
- default:
- undos++;
- field.$target.bind('autofill-undo', field.$target.val(), function(e){$(this).val(e.data);});
- field.$target.val(value.join(', '));
- break;
- }
- break;
- default:
- switch(field.$target.prop('nodeName').toUpperCase()) {
- case 'TEXTAREA':
- undos++;
- field.$target.bind('autofill-undo', field.$target.text(), function(e){$(this).text(e.data);});
- field.$target.text(value);
- break;
- case 'SELECT':
- case 'INPUT':
- default:
- undos++;
- field.$target.bind('autofill-undo', field.$target.val(), function(e){$(this).val(e.data);});
- field.$target.val(value);
- break;
- }
+ var undos = 0;
+ var item = response.items[0];
+ for(var key in self.fields) {
+ var filled = false;
+ var value = eval('item.'+key);
+ var field = self.fields[key];
+
+ /* field handled by caller */
+ if('handle' in field) {
+ if(typeof field.handle === 'function')
+ field.handle(field.$target, value);
+
+ continue; /* next please */
+ }
+
+ /* wouldn't know what to do with result unless we have a
+ * target */
+ if( ! field.$target )
+ continue;
+
+ /* handle differently depending on datatype */
+ switch(typeString(value)) {
+ case 'array':
+ switch(field.$target.prop('nodeName').toUpperCase()) {
+ case 'TEXTAREA':
+ undos++;
+ field.$target.bind('autofill-undo', field.$target.text(), function(e){$(this).text(e.data);});
+ field.$target.text(value.join(', '));
+ break;
+ case 'INPUT':
+ default:
+ undos++;
+ field.$target.bind('autofill-undo', field.$target.val(), function(e){$(this).val(e.data);});
+ field.$target.val(value.join(', '));
+ break;
+ }
+ break;
+ default:
+ switch(field.$target.prop('nodeName').toUpperCase()) {
+ case 'TEXTAREA':
+ undos++;
+ field.$target.bind('autofill-undo', field.$target.text(), function(e){$(this).text(e.data);});
+ field.$target.text(value);
+ break;
+ case 'SELECT':
+ case 'INPUT':
+ default:
+ undos++;
+ field.$target.bind('autofill-undo', field.$target.val(), function(e){$(this).val(e.data);});
+ field.$target.val(value);
+ break;
+ }
+ }
+
+ switch(field.effect) {
+ case 'flash':
+ field.$target.fadeOut(500).fadeIn(500);
+ break;
+ }
}
- switch(field.effect) {
- case 'flash':
- field.$target.fadeOut(500).fadeIn(500);
- break;
- }
+ if(undos > 0)
+ self.$undo.show();
+
+ });
}
-
- if(undos > 0)
- self.$undo.show();
-
- });
- });
- };
+ });
+ };
/*
* @fields object: Google Books API item propreties map for
--