diff --git a/src/js/apps/discovery/navigator.js b/src/js/apps/discovery/navigator.js index 50d1738b8..9a016fecf 100644 --- a/src/js/apps/discovery/navigator.js +++ b/src/js/apps/discovery/navigator.js @@ -342,8 +342,7 @@ define([ // is a special case, it opens in a new tab if (options.onlySelected && storage.hasSelectedPapers()) { - - widget.renderWidgetForListOfBibcodes(storage.getSelectedPapers(), format); + widget.renderWidgetForListOfBibcodes(storage.getSelectedPapers(), { format : format }); } //all records specifically requested diff --git a/src/js/widgets/export/widget.js b/src/js/widgets/export/widget.js index ba4f6a0a5..46fcc0ddf 100644 --- a/src/js/widgets/export/widget.js +++ b/src/js/widgets/export/widget.js @@ -195,12 +195,15 @@ define([ }, /** - * Export data directly - use the supplied query (must be supplied) - * @param info (object with apiQuery, numFound, and format params) + * Export data directly - uses the widget's cached query + * @param info (object with numFound, and format params) */ renderWidgetForCurrentQuery : function(info) { + if (!_.isObject(info)) throw new Error('info must be an object!'); + if (!info.format || !info.numFound) throw new Error('info must contain the keys "format" and "numFound" '); + this.model.reset(); //navigator hands off these values @@ -247,6 +250,8 @@ define([ // @param {object} data renderWidgetForListOfBibcodes : function(recs, data) { + if (!_.isObject(data)) throw new Error('data must be an object!'); + this.model.reset(); if (!_.isArray(recs)) throw new Error('Identifiers must be an array');