From 256808082b8cf47a76f0af2ed3a7ac358c007bcd Mon Sep 17 00:00:00 2001 From: Robyn Thiessen-Bock Date: Thu, 11 Jan 2024 06:52:58 -0500 Subject: [PATCH 1/5] Update default grants endpoint to use new API Issue #2233 --- src/js/models/AppModel.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/js/models/AppModel.js b/src/js/models/AppModel.js index 498b5e496..ec03f714f 100644 --- a/src/js/models/AppModel.js +++ b/src/js/models/AppModel.js @@ -722,9 +722,9 @@ define(['jquery', 'underscore', 'backbone'], * The URL for the NSF Award API, which can be used by the {@link LookupModel} * to look up award information for the dataset editor or other views * @type {string} - * @default "https://api.nsf.gov/services/v1/awards.json" + * @default "https://www.research.gov/awardapi-service/v1/awards.json" */ - grantsUrl: "https://api.nsf.gov/services/v1/awards.json", + grantsUrl: "https://www.research.gov/awardapi-service/v1/awards.json", /** * The base URL for the ORCID REST services From 5831d463388a12e67c6b3c8d166edd5e3f1626f6 Mon Sep 17 00:00:00 2001 From: Robyn Thiessen-Bock Date: Thu, 11 Jan 2024 06:56:05 -0500 Subject: [PATCH 2/5] Standardize whitespace & fix typos in LookupModel Issue #2233 --- src/js/models/LookupModel.js | 1128 ++++++++++++++++++---------------- 1 file changed, 593 insertions(+), 535 deletions(-) diff --git a/src/js/models/LookupModel.js b/src/js/models/LookupModel.js index 8ef1e1745..34ad80f75 100644 --- a/src/js/models/LookupModel.js +++ b/src/js/models/LookupModel.js @@ -1,575 +1,633 @@ /*global define */ -define(['jquery', 'jqueryui', 'underscore', 'backbone'], - function($, $ui, _, Backbone) { - 'use strict'; - - /** - * @class LookupModel - * @classdesc A uttility model that contains functions for looking up values from various services - * @classcategory Models - */ - var LookupModel = Backbone.Model.extend( - /** @lends LookupModel.prototype */{ - defaults: { - concepts: {} - }, - - initialize: function() { - - - - }, - - bioportalSearch: function(request, response, localValues, allValues) { - - // make sure we have something to lookup - if (!MetacatUI.appModel.get('bioportalAPIKey')) { - response(localValues); - return; - } - - var query = MetacatUI.appModel.get('bioportalSearchUrl') + - "?q=" + request.term + - "&apikey=" + MetacatUI.appModel.get("bioportalAPIKey") + - "&ontologies=ECSO&pagesize=1000&suggest=true"; - var availableTags = []; - $.get(query, function(data, textStatus, xhr) { - - _.each(data.collection, function(obj) { - var choice = {}; - choice.label = obj['prefLabel']; - var synonyms = obj['synonym']; - if (synonyms) { - choice.synonyms = []; - _.each(synonyms, function(synonym) { - choice.synonyms.push(synonym); - }); - } - choice.filterLabel = obj['prefLabel']; - choice.value = obj['@id']; - if (obj['definition']) { - choice.desc = obj['definition'][0]; - } - - // mark items that we know we have matches for - if (allValues) { - var matchingChoice = _.findWhere(allValues, {value: choice.value}); - if (matchingChoice) { - //choice.label = "*" + choice.label; - choice.match = true; - - // remove it from the local value - why have two? - if (localValues) { - localValues = _.reject(localValues, function(obj) { - return obj.value == matchingChoice.value; - }); - } - //availableTags.push(choice); - } - } - - availableTags.push(choice); - - }); - - // combine the lists if called that way - if (localValues) { - availableTags = localValues.concat(availableTags); - } - - response(availableTags); - - }); - }, - - bioportalExpand: function(term) { - - // make sure we have something to lookup - if (!MetacatUI.appModel.get('bioportalAPIKey')) { - response(null); - return; - } - - var terms = []; - var countdown = 0; - - var query = MetacatUI.appModel.get('bioportalSearchUrl') + - "?q=" + term + - "&apikey=" + MetacatUI.appModel.get("bioportalAPIKey") + - "&ontologies=ECSO&pagesize=1000&suggest=true";; - $.ajax( - { - url: query, - method: "GET", - async: false, // we want to wait for the response! - success: function(data, textStatus, xhr) { - - _.each(data.collection, function(obj) { - // use the preferred label - var prefLabel = obj['prefLabel']; - terms.push(prefLabel); - - // add the synonyms - var synonyms = obj['synonym']; - if (synonyms) { - _.each(synonyms, function(synonym) { - terms.push(synonym); - }); - } - // process the descendants - var descendantsUrl = obj['links']['descendants']; - //if (false) { - if (descendantsUrl && countdown > 0) { - - countdown--; - - $.ajax( - { - url: descendantsUrl + "?apikey=" + MetacatUI.appModel.get("bioportalAPIKey"), - method: "GET", - async: false, - success: function(data, textStatus, xhr) { - _.each(data.collection, function(obj) { - var prefLabel = obj['prefLabel']; - var synonyms = obj['synonym']; - if (synonyms) { - _.each(synonyms, function(synonym) { - terms.push(synonym); - }); - } - }); - } - }); - } - }); - } - }); - return terms; - }, - - bioportalGetConcepts: function(uri, callback) { - - var concepts = this.get('concepts')[uri]; - - if (concepts) { - callback(concepts); - return; - } else { - concepts = []; - } - - // make sure we have something to lookup - if (!MetacatUI.appModel.get('bioportalAPIKey')) { - return; - } - - var query = MetacatUI.appModel.get('bioportalSearchUrl') + - "?q=" + encodeURIComponent(uri) + - "&apikey=" + MetacatUI.appModel.get("bioportalAPIKey") + - "&ontologies=ECSO&pagesize=1000&suggest=true"; - var availableTags = []; - var model = this; - $.get(query, function(data, textStatus, xhr) { - - _.each(data.collection, function(obj) { - var concept = {}; - concept.label = obj['prefLabel']; - concept.value = obj['@id']; - if (obj['definition']) { - concept.desc = obj['definition'][0]; - } - // add the synonyms - var synonyms = obj['synonym']; - if (synonyms) { - concept.synonyms = []; - _.each(synonyms, function(synonym) { - concept.synonyms.push(synonym); - }); - } - - concepts.push(concept); - - }); - model.get('concepts')[uri] = concepts; - - callback(concepts); - }); - }, - - bioportalGetConceptsBatch: function(uris, callback) { - - // make sure we have something to lookup - if (!MetacatUI.appModel.get('bioportalBatchUrl')) { - return; - } - // prepare the request JSON - var batchData = {}; - batchData["http://www.w3.org/2002/07/owl#Class"] = {}; - batchData["http://www.w3.org/2002/07/owl#Class"]["display"] = "prefLabel,synonym,definition"; - batchData["http://www.w3.org/2002/07/owl#Class"]["collection"] = []; - _.each(uris, function(uri) { - var item = {}; - item["class"] = uri; - item["ontology"] = "http://data.bioontology.org/ontologies/ECSO"; - batchData["http://www.w3.org/2002/07/owl#Class"]["collection"].push(item); - }); - - var url = MetacatUI.appModel.get('bioportalBatchUrl'); - var model = this; - $.ajax(url, - { - method: "POST", - //url: url, - data: JSON.stringify(batchData), - contentType: "application/json", - headers: { - "Authorization": "apikey token="+ MetacatUI.appModel.get("bioportalAPIKey") - }, - error: function(e) { - console.log(e); - }, - success: function(data, textStatus, xhr) { - - _.each(data["http://www.w3.org/2002/07/owl#Class"], function(obj) { - var concept = {}; - concept.label = obj['prefLabel']; - concept.value = obj['@id']; - if (obj['definition']) { - concept.desc = obj['definition'][0]; - } - // add the synonyms - var synonyms = obj['synonym']; - if (synonyms) { - concept.synonyms = []; - _.each(synonyms, function(synonym) { - concept.synonyms.push(synonym); - }); - } - - var conceptList = []; - conceptList.push(concept); - model.get('concepts')[concept.value] = conceptList; - - }); - - callback.apply(); - } - }); - - }, - - orcidGetConcepts: function(uri, callback) { - - var people = this.get('concepts')[uri]; - - if (people) { - callback(people); - return; - } else { - people = []; - } - - var query = MetacatUI.appModel.get('orcidBaseUrl') + uri.substring(uri.lastIndexOf("/")); - var model = this; - $.get(query, function(data, status, xhr) { - // get the orcid info - var profile = $(data).find("orcid-profile"); - - _.each(profile, function(obj) { - var choice = {}; - choice.label = $(obj).find("orcid-bio > personal-details > given-names").text() + " " + $(obj).find("orcid-bio > personal-details > family-name").text(); - choice.value = $(obj).find("orcid-identifier > uri").text(); - choice.desc = $(obj).find("orcid-bio > personal-details").text(); - people.push(choice); - }); - - model.get('concepts')[uri] = people; - - // callback with answers - callback(people); - }) - }, - - /* - * Supplies search results for ORCiDs to autocomplete UI elements - */ - orcidSearch: function(request, response, more, ignore) { - - var people = []; - - if(!ignore) var ignore = []; - - var query = MetacatUI.appModel.get('orcidSearchUrl') + request.term; - $.get(query, function(data, status, xhr) { - // get the orcid info - var profile = $(data).find("orcid-profile"); - - _.each(profile, function(obj) { - var choice = {}; - choice.value = $(obj).find("orcid-identifier > uri").text(); - - if(_.contains(ignore, choice.value.toLowerCase())) return; - - choice.label = $(obj).find("orcid-bio > personal-details > given-names").text() + " " + $(obj).find("orcid-bio > personal-details > family-name").text(); - choice.desc = $(obj).find("orcid-bio > personal-details").text(); - people.push(choice); - }); - - // add more if called that way - if (more) { - people = more.concat(people); - } - - // callback with answers - response(people); - }); - }, - - /* - * Gets the bio of a person given an ORCID - * Updates the given user model with the bio info from ORCID - */ - orcidGetBio: function(options){ - if(!options || !options.userModel) return; - - var orcid = options.userModel.get("username"), - onSuccess = options.success || function(){}, - onError = options.error || function(){}; - - $.ajax({ - url: MetacatUI.appModel.get("orcidSearchUrl") + orcid, - type: "GET", - //accepts: "application/orcid+json", - success: function(data, textStatus, xhr){ - // get the orcid info - var orcidNode = $(data).find("path:contains(" + orcid + ")"), - profile = orcidNode.length? $(orcidNode).parents("orcid-profile") : []; - - if(!profile.length) return; - - var fullName = $(profile).find("orcid-bio > personal-details > given-names").text() + " " + $(profile).find("orcid-bio > personal-details > family-name").text(); - options.userModel.set("fullName", fullName); - - onSuccess(data, textStatus, xhr); - }, - error: function(xhr, textStatus, error){ - onError(xhr, textStatus, error); - } - }); - }, - - getGrantAutocomplete: function(request, response){ - var term = $.ui.autocomplete.escapeRegex(request.term), - filterBy = ""; - - //Only search after 3 characters or more - if(term.length < 3) return; - else if(term.match(/\d/)) return; //Don't search for digit only since it's most likely a user just entering the grant number directy - else filterBy = "keyword"; - - var url = MetacatUI.appModel.get("grantsUrl") + "?" + filterBy + "=" + term + "&printFields=title,id"; - - // Send the AJAX request as a JSONP data type since it will be cross-origin - var requestSettings = { - url: url, - dataType: "jsonp", - success: function(data, textStatus, xhr) { - - // Handle the response from the NSF Award Search API and - //transform each award query result into a jQueryUI autocomplete item - - if(!data || !data.response || !data.response.award) return []; - - var list = []; - - _.each(data.response.award, function(award, i){ - list.push({ - value: award.id, - label: award.title - }); - }); - - var term = $.ui.autocomplete.escapeRegex(request.term) - , startsWithMatcher = new RegExp("^" + term, "i") - , startsWith = $.grep(list, function(value) { - return startsWithMatcher.test(value.label || value.value || value); - }) - , containsMatcher = new RegExp(term, "i") - , contains = $.grep(list, function (value) { - return $.inArray(value, startsWith) < 0 && - containsMatcher.test(value.label || value.value || value); - }); - - response(startsWith.concat(contains)); - } - } - - //Send the query - $.ajax(requestSettings); - }, - - getGrant: function(id, onSuccess, onError){ - if(!id || !onSuccess || !MetacatUI.appModel.get("useNSFAwardAPI") || !MetacatUI.appModel.get("grantsUrl")) return; - - var requestSettings = { - url: MetacatUI.appModel.get("grantsUrl") + "?id=" + id, - success: function(data, textStatus, xhr){ - if(!data || !data.response || !data.response.award || !data.response.award.length){ - if(onError) onError(); - return; - } - - onSuccess(data.response.award[0]); - }, - error: function(){ - if(onError) onError(); - } - } - - //Send the query - $.ajax(requestSettings); - }, - - getAccountsAutocomplete: function(request, response){ - var searchTerm = $.ui.autocomplete.escapeRegex(request.term); - - //Only search after 2 characters or more - if(searchTerm.length < 2) - return; - - var url = MetacatUI.appModel.get("accountsUrl") + "?query=" + searchTerm; - - // Send the AJAX request as a JSONP data type since it will be cross-origin - var requestSettings = { - url: url, - success: function(data, textStatus, xhr) { - - if(!data) - return []; - - //If an XML doc was not returned from the server, then try to parse the response as XML - if( !XMLDocument.prototype.isPrototypeOf(data) ){ - try{ - data = $.parseXML(data); +define(["jquery", "jqueryui", "underscore", "backbone"], function ( + $, + $ui, + _, + Backbone +) { + "use strict"; + + /** + * @class LookupModel + * @classdesc A utility model that contains functions for looking up values + * from various services + * @classcategory Models + */ + var LookupModel = Backbone.Model.extend( + /** @lends LookupModel.prototype */ { + defaults: { + concepts: {}, + }, + + initialize: function () {}, + + bioportalSearch: function (request, response, localValues, allValues) { + // make sure we have something to lookup + if (!MetacatUI.appModel.get("bioportalAPIKey")) { + response(localValues); + return; + } + + var query = + MetacatUI.appModel.get("bioportalSearchUrl") + + "?q=" + + request.term + + "&apikey=" + + MetacatUI.appModel.get("bioportalAPIKey") + + "&ontologies=ECSO&pagesize=1000&suggest=true"; + var availableTags = []; + $.get(query, function (data, textStatus, xhr) { + _.each(data.collection, function (obj) { + var choice = {}; + choice.label = obj["prefLabel"]; + var synonyms = obj["synonym"]; + if (synonyms) { + choice.synonyms = []; + _.each(synonyms, function (synonym) { + choice.synonyms.push(synonym); + }); } - catch(e){ - //If the parsing XML failed, exit now - console.error("The accounts service did not return valid XML.", e); - return; + choice.filterLabel = obj["prefLabel"]; + choice.value = obj["@id"]; + if (obj["definition"]) { + choice.desc = obj["definition"][0]; } + + // mark items that we know we have matches for + if (allValues) { + var matchingChoice = _.findWhere(allValues, { + value: choice.value, + }); + if (matchingChoice) { + //choice.label = "*" + choice.label; + choice.match = true; + + // remove it from the local value - why have two? + if (localValues) { + localValues = _.reject(localValues, function (obj) { + return obj.value == matchingChoice.value; + }); + } + //availableTags.push(choice); + } + } + + availableTags.push(choice); + }); + + // combine the lists if called that way + if (localValues) { + availableTags = localValues.concat(availableTags); } - var list = []; + response(availableTags); + }); + }, - _.each($(data).children(/.+subjectInfo/).children(), function(accountNode, i){ + bioportalExpand: function (term) { + // make sure we have something to lookup + if (!MetacatUI.appModel.get("bioportalAPIKey")) { + response(null); + return; + } - var name = ""; - var type = ""; + var terms = []; + var countdown = 0; + + var query = + MetacatUI.appModel.get("bioportalSearchUrl") + + "?q=" + + term + + "&apikey=" + + MetacatUI.appModel.get("bioportalAPIKey") + + "&ontologies=ECSO&pagesize=1000&suggest=true"; + $.ajax({ + url: query, + method: "GET", + async: false, // we want to wait for the response! + success: function (data, textStatus, xhr) { + _.each(data.collection, function (obj) { + // use the preferred label + var prefLabel = obj["prefLabel"]; + terms.push(prefLabel); + + // add the synonyms + var synonyms = obj["synonym"]; + if (synonyms) { + _.each(synonyms, function (synonym) { + terms.push(synonym); + }); + } + // process the descendants + var descendantsUrl = obj["links"]["descendants"]; + //if (false) { + if (descendantsUrl && countdown > 0) { + countdown--; + + $.ajax({ + url: + descendantsUrl + + "?apikey=" + + MetacatUI.appModel.get("bioportalAPIKey"), + method: "GET", + async: false, + success: function (data, textStatus, xhr) { + _.each(data.collection, function (obj) { + var prefLabel = obj["prefLabel"]; + var synonyms = obj["synonym"]; + if (synonyms) { + _.each(synonyms, function (synonym) { + terms.push(synonym); + }); + } + }); + }, + }); + } + }); + }, + }); + return terms; + }, + + bioportalGetConcepts: function (uri, callback) { + var concepts = this.get("concepts")[uri]; + + if (concepts) { + callback(concepts); + return; + } else { + concepts = []; + } - if( $(accountNode).children("givenName").length ){ - name = $(accountNode).children("givenName").text() + " " + $(accountNode).children("familyName").text() - type = "person" - } - else{ - name = $(accountNode).children("groupName").text(); - type = "group" - } + // make sure we have something to lookup + if (!MetacatUI.appModel.get("bioportalAPIKey")) { + return; + } - if( !name ){ - name = $(accountNode).children("subject").text(); - type = "unknown" + var query = + MetacatUI.appModel.get("bioportalSearchUrl") + + "?q=" + + encodeURIComponent(uri) + + "&apikey=" + + MetacatUI.appModel.get("bioportalAPIKey") + + "&ontologies=ECSO&pagesize=1000&suggest=true"; + var availableTags = []; + var model = this; + $.get(query, function (data, textStatus, xhr) { + _.each(data.collection, function (obj) { + var concept = {}; + concept.label = obj["prefLabel"]; + concept.value = obj["@id"]; + if (obj["definition"]) { + concept.desc = obj["definition"][0]; + } + // add the synonyms + var synonyms = obj["synonym"]; + if (synonyms) { + concept.synonyms = []; + _.each(synonyms, function (synonym) { + concept.synonyms.push(synonym); + }); } - list.push({ - value: $(accountNode).children("subject").text(), - label: name + " (" + $(accountNode).children("subject").text() + ")", - type: type - }); + concepts.push(concept); }); + model.get("concepts")[uri] = concepts; + + callback(concepts); + }); + }, + + bioportalGetConceptsBatch: function (uris, callback) { + // make sure we have something to lookup + if (!MetacatUI.appModel.get("bioportalBatchUrl")) { + return; + } + // prepare the request JSON + var batchData = {}; + batchData["http://www.w3.org/2002/07/owl#Class"] = {}; + batchData["http://www.w3.org/2002/07/owl#Class"]["display"] = + "prefLabel,synonym,definition"; + batchData["http://www.w3.org/2002/07/owl#Class"]["collection"] = []; + _.each(uris, function (uri) { + var item = {}; + item["class"] = uri; + item["ontology"] = "http://data.bioontology.org/ontologies/ECSO"; + batchData["http://www.w3.org/2002/07/owl#Class"]["collection"].push( + item + ); + }); + + var url = MetacatUI.appModel.get("bioportalBatchUrl"); + var model = this; + $.ajax(url, { + method: "POST", + //url: url, + data: JSON.stringify(batchData), + contentType: "application/json", + headers: { + Authorization: + "apikey token=" + MetacatUI.appModel.get("bioportalAPIKey"), + }, + error: function (e) { + console.log(e); + }, + success: function (data, textStatus, xhr) { + _.each(data["http://www.w3.org/2002/07/owl#Class"], function (obj) { + var concept = {}; + concept.label = obj["prefLabel"]; + concept.value = obj["@id"]; + if (obj["definition"]) { + concept.desc = obj["definition"][0]; + } + // add the synonyms + var synonyms = obj["synonym"]; + if (synonyms) { + concept.synonyms = []; + _.each(synonyms, function (synonym) { + concept.synonyms.push(synonym); + }); + } - var term = $.ui.autocomplete.escapeRegex(request.term) - , startsWithMatcher = new RegExp("^" + term, "i") - , startsWith = $.grep(list, function(value) { - return startsWithMatcher.test(value.label || value.value || value); - }) - , containsMatcher = new RegExp(term, "i") - , contains = $.grep(list, function (value) { - return $.inArray(value, startsWith) < 0 && - containsMatcher.test(value.label || value.value || value); + var conceptList = []; + conceptList.push(concept); + model.get("concepts")[concept.value] = conceptList; }); - response(startsWith.concat(contains)); + callback.apply(); + }, + }); + }, + + orcidGetConcepts: function (uri, callback) { + var people = this.get("concepts")[uri]; + + if (people) { + callback(people); + return; + } else { + people = []; } - } - //Send the query - $.ajax(requestSettings); - }, + var query = + MetacatUI.appModel.get("orcidBaseUrl") + + uri.substring(uri.lastIndexOf("/")); + var model = this; + $.get(query, function (data, status, xhr) { + // get the orcid info + var profile = $(data).find("orcid-profile"); + + _.each(profile, function (obj) { + var choice = {}; + choice.label = + $(obj).find("orcid-bio > personal-details > given-names").text() + + " " + + $(obj).find("orcid-bio > personal-details > family-name").text(); + choice.value = $(obj).find("orcid-identifier > uri").text(); + choice.desc = $(obj).find("orcid-bio > personal-details").text(); + people.push(choice); + }); - /** - * Calls the monitor/status DataONE MN API and gets the size of the index queue. - * @param {function} [onSuccess] - * @param {function} [onError] - */ - getSizeOfIndexQueue: function(onSuccess, onError){ + model.get("concepts")[uri] = people; - try{ + // callback with answers + callback(people); + }); + }, - if( !MetacatUI.appModel.get("monitorStatusUrl") ){ - if( typeof onSuccess == "function" ){ - onSuccess(); - } - else{ - //Trigger a custom event for the size of the index queue. - this.trigger("sizeOfQueue", -1); + /* + * Supplies search results for ORCiDs to autocomplete UI elements + */ + orcidSearch: function (request, response, more, ignore) { + var people = []; + + if (!ignore) var ignore = []; + + var query = MetacatUI.appModel.get("orcidSearchUrl") + request.term; + $.get(query, function (data, status, xhr) { + // get the orcid info + var profile = $(data).find("orcid-profile"); + + _.each(profile, function (obj) { + var choice = {}; + choice.value = $(obj).find("orcid-identifier > uri").text(); + + if (_.contains(ignore, choice.value.toLowerCase())) return; + + choice.label = + $(obj).find("orcid-bio > personal-details > given-names").text() + + " " + + $(obj).find("orcid-bio > personal-details > family-name").text(); + choice.desc = $(obj).find("orcid-bio > personal-details").text(); + people.push(choice); + }); + + // add more if called that way + if (more) { + people = more.concat(people); } - return false; - } + // callback with answers + response(people); + }); + }, - var model = this; + /* + * Gets the bio of a person given an ORCID Updates the given user model + * with the bio info from ORCID + */ + orcidGetBio: function (options) { + if (!options || !options.userModel) return; - //Check if there is an indexing queue, because this model may still be indexing - var requestSettings = { - url: MetacatUI.appModel.get("monitorStatusUrl"), + var orcid = options.userModel.get("username"), + onSuccess = options.success || function () {}, + onError = options.error || function () {}; + + $.ajax({ + url: MetacatUI.appModel.get("orcidSearchUrl") + orcid, type: "GET", - error: function(){ - if( typeof onError == "function" ){ - onError(); + //accepts: "application/orcid+json", + success: function (data, textStatus, xhr) { + // get the orcid info + var orcidNode = $(data).find("path:contains(" + orcid + ")"), + profile = orcidNode.length + ? $(orcidNode).parents("orcid-profile") + : []; + + if (!profile.length) return; + + var fullName = + $(profile) + .find("orcid-bio > personal-details > given-names") + .text() + + " " + + $(profile) + .find("orcid-bio > personal-details > family-name") + .text(); + options.userModel.set("fullName", fullName); + + onSuccess(data, textStatus, xhr); + }, + error: function (xhr, textStatus, error) { + onError(xhr, textStatus, error); + }, + }); + }, + + getGrantAutocomplete: function (request, response) { + var term = $.ui.autocomplete.escapeRegex(request.term), + filterBy = ""; + + // Only search after 3 characters or more. Don't search for digit only + // since it's most likely a user just entering the grant number directly + if (term.length < 3) return; + else if (term.match(/\d/)) + return; + else filterBy = "keyword"; + + var url = + MetacatUI.appModel.get("grantsUrl") + + "?" + + filterBy + + "=" + + term + + "&printFields=title,id"; + + // Send the AJAX request as a JSONP data type since it will be + // cross-origin + var requestSettings = { + url: url, + dataType: "jsonp", + success: function (data, textStatus, xhr) { + // Handle the response from the NSF Award Search API and transform + //each award query result into a jQueryUI autocomplete item + + if (!data || !data.response || !data.response.award) return []; + + var list = []; + + _.each(data.response.award, function (award, i) { + list.push({ + value: award.id, + label: award.title, + }); + }); + + var term = $.ui.autocomplete.escapeRegex(request.term), + startsWithMatcher = new RegExp("^" + term, "i"), + startsWith = $.grep(list, function (value) { + return startsWithMatcher.test( + value.label || value.value || value + ); + }), + containsMatcher = new RegExp(term, "i"), + contains = $.grep(list, function (value) { + return ( + $.inArray(value, startsWith) < 0 && + containsMatcher.test(value.label || value.value || value) + ); + }); + + response(startsWith.concat(contains)); + }, + }; + + //Send the query + $.ajax(requestSettings); + }, + + getGrant: function (id, onSuccess, onError) { + if ( + !id || + !onSuccess || + !MetacatUI.appModel.get("useNSFAwardAPI") || + !MetacatUI.appModel.get("grantsUrl") + ) + return; + + var requestSettings = { + url: MetacatUI.appModel.get("grantsUrl") + "?id=" + id, + success: function (data, textStatus, xhr) { + if ( + !data || + !data.response || + !data.response.award || + !data.response.award.length + ) { + if (onError) onError(); + return; } + + onSuccess(data.response.award[0]); + }, + error: function () { + if (onError) onError(); }, - success: function(data){ + }; - var sizeOfQueue = parseInt($(data).find("status > index > sizeOfQueue").text()); + //Send the query + $.ajax(requestSettings); + }, - if(sizeOfQueue > 0 || sizeOfQueue == 0){ - //Trigger a custom event for the size of the index queue. - model.trigger("sizeOfQueue", sizeOfQueue); + getAccountsAutocomplete: function (request, response) { + var searchTerm = $.ui.autocomplete.escapeRegex(request.term); + + //Only search after 2 characters or more + if (searchTerm.length < 2) return; + + var url = + MetacatUI.appModel.get("accountsUrl") + "?query=" + searchTerm; - if( typeof onSuccess == "function" ){ - onSuccess(sizeOfQueue); + // Send the AJAX request as a JSONP data type since it will be + // cross-origin + var requestSettings = { + url: url, + success: function (data, textStatus, xhr) { + if (!data) return []; + + //If an XML doc was not returned from the server, then try to parse + //the response as XML + if (!XMLDocument.prototype.isPrototypeOf(data)) { + try { + data = $.parseXML(data); + } catch (e) { + //If the parsing XML failed, exit now + console.error( + "The accounts service did not return valid XML.", + e + ); + return; } } - else{ - if( typeof onError == "function" ){ - onError(); + + var list = []; + + _.each( + $(data) + .children(/.+subjectInfo/) + .children(), + function (accountNode, i) { + var name = ""; + var type = ""; + + if ($(accountNode).children("givenName").length) { + name = + $(accountNode).children("givenName").text() + + " " + + $(accountNode).children("familyName").text(); + type = "person"; + } else { + name = $(accountNode).children("groupName").text(); + type = "group"; + } + + if (!name) { + name = $(accountNode).children("subject").text(); + type = "unknown"; + } + + list.push({ + value: $(accountNode).children("subject").text(), + label: + name + + " (" + + $(accountNode).children("subject").text() + + ")", + type: type, + }); } + ); + + var term = $.ui.autocomplete.escapeRegex(request.term), + startsWithMatcher = new RegExp("^" + term, "i"), + startsWith = $.grep(list, function (value) { + return startsWithMatcher.test( + value.label || value.value || value + ); + }), + containsMatcher = new RegExp(term, "i"), + contains = $.grep(list, function (value) { + return ( + $.inArray(value, startsWith) < 0 && + containsMatcher.test(value.label || value.value || value) + ); + }); + + response(startsWith.concat(contains)); + }, + }; + + //Send the query + $.ajax(requestSettings); + }, + + /** + * Calls the monitor/status DataONE MN API and gets the size of the index + * queue. + * @param {function} [onSuccess] + * @param {function} [onError] + */ + getSizeOfIndexQueue: function (onSuccess, onError) { + try { + if (!MetacatUI.appModel.get("monitorStatusUrl")) { + if (typeof onSuccess == "function") { + onSuccess(); + } else { + //Trigger a custom event for the size of the index queue. + this.trigger("sizeOfQueue", -1); } + + return false; } - } - $.ajax(_.extend(requestSettings, MetacatUI.appUserModel.createAjaxSettings())); - } - catch(e){ - console.error(e); + var model = this; - if( typeof onError == "function" ){ - onError(); + //Check if there is an indexing queue, because this model may still be + //indexing + var requestSettings = { + url: MetacatUI.appModel.get("monitorStatusUrl"), + type: "GET", + error: function () { + if (typeof onError == "function") { + onError(); + } + }, + success: function (data) { + var sizeOfQueue = parseInt( + $(data).find("status > index > sizeOfQueue").text() + ); + + if (sizeOfQueue > 0 || sizeOfQueue == 0) { + //Trigger a custom event for the size of the index queue. + model.trigger("sizeOfQueue", sizeOfQueue); + + if (typeof onSuccess == "function") { + onSuccess(sizeOfQueue); + } + } else { + if (typeof onError == "function") { + onError(); + } + } + }, + }; + + $.ajax( + _.extend( + requestSettings, + MetacatUI.appUserModel.createAjaxSettings() + ) + ); + } catch (e) { + console.error(e); + + if (typeof onError == "function") { + onError(); + } } - - } + }, } - - }); - return LookupModel; + ); + return LookupModel; }); From 6316b3519989d4e89641bc6b470b9fa3e39db1a4 Mon Sep 17 00:00:00 2001 From: Robyn Thiessen-Bock Date: Tue, 16 Jan 2024 17:50:10 -0500 Subject: [PATCH 3/5] Fix grant/funding lookup MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Update the default grantsUrl to point to a proxy relative to the repository’s domain - Remove unused getGrant method from the LookupModel - Use native fetch API instead of jQuery.ajax to retrieve grants - Show spinner to indicate that grants are being retrieved (was set up but not used) - Move some logic from the getGrantAutocomplete method to new, smaller methods - Add missing JS docs - Add error handling Issue #2233 --- src/css/metacatui-common.css | 8 +- src/js/models/AppModel.js | 4 +- src/js/models/LookupModel.js | 180 ++++++++++++++-------------- src/js/views/metadata/EML211View.js | 1 - 4 files changed, 98 insertions(+), 95 deletions(-) diff --git a/src/css/metacatui-common.css b/src/css/metacatui-common.css index f786db5ce..6b167e72d 100644 --- a/src/css/metacatui-common.css +++ b/src/css/metacatui-common.css @@ -8322,11 +8322,11 @@ textarea.medium{ position: relative; } .Editor .funding-container .icon-spinner{ + position: absolute; + left: 11px; top: 5px; - left: 45px; - position: absolute; - font-size: 1.5em; - display: none; + font-size: 1.5em; + display: none; } .metadata-container #funding-visible{ padding-left: 30px; diff --git a/src/js/models/AppModel.js b/src/js/models/AppModel.js index ec03f714f..065f86ba5 100644 --- a/src/js/models/AppModel.js +++ b/src/js/models/AppModel.js @@ -722,9 +722,9 @@ define(['jquery', 'underscore', 'backbone'], * The URL for the NSF Award API, which can be used by the {@link LookupModel} * to look up award information for the dataset editor or other views * @type {string} - * @default "https://www.research.gov/awardapi-service/v1/awards.json" + * @default "/research.gov/awardapi-service/v1/awards.json" */ - grantsUrl: "https://www.research.gov/awardapi-service/v1/awards.json", + grantsUrl: "/research.gov/awardapi-service/v1/awards.json", /** * The base URL for the ORCID REST services diff --git a/src/js/models/LookupModel.js b/src/js/models/LookupModel.js index 34ad80f75..d65573b4e 100644 --- a/src/js/models/LookupModel.js +++ b/src/js/models/LookupModel.js @@ -375,99 +375,103 @@ define(["jquery", "jqueryui", "underscore", "backbone"], function ( }); }, - getGrantAutocomplete: function (request, response) { - var term = $.ui.autocomplete.escapeRegex(request.term), - filterBy = ""; - - // Only search after 3 characters or more. Don't search for digit only - // since it's most likely a user just entering the grant number directly - if (term.length < 3) return; - else if (term.match(/\d/)) - return; - else filterBy = "keyword"; - - var url = - MetacatUI.appModel.get("grantsUrl") + - "?" + - filterBy + - "=" + - term + - "&printFields=title,id"; - - // Send the AJAX request as a JSONP data type since it will be - // cross-origin - var requestSettings = { - url: url, - dataType: "jsonp", - success: function (data, textStatus, xhr) { - // Handle the response from the NSF Award Search API and transform - //each award query result into a jQueryUI autocomplete item - - if (!data || !data.response || !data.response.award) return []; - - var list = []; + /** + * Using the NSF Award Search API, get a list of grants that match the + * given term, as long as the term is at least 3 characters long and + * doesn't consist of only digits. Used to populate the autocomplete list + * for the Funding fields in the metadata editor. For this method to work, + * there must be a grantsUrl set in the MetacatUI.appModel. + * @param {jQuery} request - The jQuery UI autocomplete request object + * @param {function} response - The jQuery UI autocomplete response function + * @see {@link https://www.research.gov/common/webapi/awardapisearch-v1.htm} + */ + getGrantAutocomplete: function ( + request, + response, + beforeRequest, + afterRequest + ) { + // Handle errors in this function or in the findGrants function + function handleError(error) { + if (typeof afterRequest == "function") afterRequest(); + console.log("Error fetching awards from NSF: ", error); + response([]); + } - _.each(data.response.award, function (award, i) { - list.push({ - value: award.id, - label: award.title, - }); + try { + let term = request.term; + + // Only search after 3 characters or more, and not just digits + if (!term || term.length < 3 || /^\d+$/.test(term)) return; + + // If the beforeRequest function was passed, call it now + if (typeof beforeRequest == "function") beforeRequest(); + + // Search for grants + this.findGrants(term) + .then((awards) => { + response(this.formatFundingForAutocomplete(awards)); + }) + .catch(handleError) + .finally(() => { + if (typeof afterRequest == "function") afterRequest(); }); - - var term = $.ui.autocomplete.escapeRegex(request.term), - startsWithMatcher = new RegExp("^" + term, "i"), - startsWith = $.grep(list, function (value) { - return startsWithMatcher.test( - value.label || value.value || value - ); - }), - containsMatcher = new RegExp(term, "i"), - contains = $.grep(list, function (value) { - return ( - $.inArray(value, startsWith) < 0 && - containsMatcher.test(value.label || value.value || value) - ); - }); - - response(startsWith.concat(contains)); - }, - }; - - //Send the query - $.ajax(requestSettings); + } catch (error) { + handleError(error); + } }, - getGrant: function (id, onSuccess, onError) { - if ( - !id || - !onSuccess || - !MetacatUI.appModel.get("useNSFAwardAPI") || - !MetacatUI.appModel.get("grantsUrl") - ) - return; - - var requestSettings = { - url: MetacatUI.appModel.get("grantsUrl") + "?id=" + id, - success: function (data, textStatus, xhr) { - if ( - !data || - !data.response || - !data.response.award || - !data.response.award.length - ) { - if (onError) onError(); - return; - } - - onSuccess(data.response.award[0]); - }, - error: function () { - if (onError) onError(); - }, - }; + /** + * Search the NSF Award Search API for grants that match the given term. + * @param {string} term - The term to search for + * @param {number} [offset=1] - The offset to use in the search. Defaults + * to 1. + * @returns {Promise} A promise that resolves to an array of awards in the + * format {id: string, title: string} + * @since x.x.x + */ + findGrants: function (term, offset = 1) { + let awards = []; + if (!term || term.length < 3) return awards; + const grantsUrl = MetacatUI.appModel.get("grantsUrl"); + if (!grantsUrl) return awards; + + term = $.ui.autocomplete.escapeRegex(term); + term = encodeURIComponent(term); + const filterBy = "keyword"; + const url = + `${grantsUrl}?${filterBy}=${term}` + + `&printFields=title,id&offset=${offset}`; + + return fetch(url) + .then((response) => { + return response.json(); + }) + .then((data) => { + if (!data || !data.response || !data.response.award) return awards; + return data.response.award; + }) + .catch((error) => { + console.error("Error fetching data: ", error); + return awards; + }); + }, - //Send the query - $.ajax(requestSettings); + /** + * Format awards from the NSF Award Search API for use in the jQuery UI + * autocomplete widget. + * @param {Array} awards - An array of awards in the format + * {id: string, title: string} + * @returns {Array} An array of awards in the format + * {value: string, label: string} + * @since x.x.x + */ + formatFundingForAutocomplete: function (awards) { + if (!awards || !awards.length) return []; + return awards.map((award) => ({ + value: award.id, + label: award.title, + })); }, getAccountsAutocomplete: function (request, response) { diff --git a/src/js/views/metadata/EML211View.js b/src/js/views/metadata/EML211View.js index 700595a1b..dead17758 100644 --- a/src/js/views/metadata/EML211View.js +++ b/src/js/views/metadata/EML211View.js @@ -1196,7 +1196,6 @@ define(['underscore', 'jquery', 'backbone', fundingInput.val(value); $(".funding .ui-helper-hidden-accessible").hide(); - loadingSpinner.css("top", "5px"); view.updateFunding(e); From c0033a47562383a0f7799494a95a8b60ce424c33 Mon Sep 17 00:00:00 2001 From: Robyn Thiessen-Bock Date: Tue, 16 Jan 2024 18:34:28 -0500 Subject: [PATCH 4/5] Add guide for setting up awards API proxy Issue #2233 --- docs/_includes/nav.html | 1 + docs/guides/editor/funding-autocomplete.md | 87 +++++++++++++++++++++ docs/guides/images/funding.png | Bin 0 -> 191168 bytes docs/guides/index.md | 1 + src/js/models/AppModel.js | 4 +- 5 files changed, 92 insertions(+), 1 deletion(-) create mode 100644 docs/guides/editor/funding-autocomplete.md create mode 100644 docs/guides/images/funding.png diff --git a/docs/_includes/nav.html b/docs/_includes/nav.html index f3bc2a142..4c24f8c51 100644 --- a/docs/_includes/nav.html +++ b/docs/_includes/nav.html @@ -8,6 +8,7 @@

Themes

Create a custom theme Images Citations + Funding Autocomplete

API

Configuration diff --git a/docs/guides/editor/funding-autocomplete.md b/docs/guides/editor/funding-autocomplete.md new file mode 100644 index 000000000..df3bad123 --- /dev/null +++ b/docs/guides/editor/funding-autocomplete.md @@ -0,0 +1,87 @@ +# Setting Up a Proxy for NSF Award API in MetacatUI + +MetacatUI integrates with the NSF (National Science Foundation) Award API to fetch award information. Since the NSF Award API does not support CORS (Cross-Origin Resource Sharing) or JSONP (JSON with Padding), it's necessary to set up a server-side proxy. This documentation guides you through setting up an Apache proxy to enable this functionality in MetacatUI. + +![NSF Award API Proxy](guides/images/funding.png) + +## Prerequisites + +- Apache Web Server +- Access to Apache configuration files +- MetacatUI already installed and served via Apache + +## Steps to Configure Apache as a Proxy + +### 1. Enable Required Apache Modules + +Ensure that the following Apache modules are enabled: + +- `mod_proxy` +- `mod_proxy_http` + +You can enable them by running the following commands: + +```bash +sudo a2enmod proxy +sudo a2enmod proxy_http +``` + +Then, restart Apache to apply the changes: + +```bash +sudo systemctl restart apache2 +``` + +### 2. Configure Apache Virtual Host + +Edit your Apache virtual host configuration file where MetacatUI is served. This file is typically located in `/etc/apache2/sites-available/`. + +Add the following configuration inside the `` block: + +```apache +# NSF Award API Proxy Configuration +ProxyPass "/research.gov/awardapi-service/v1/awards.json" "https://www.research.gov/awardapi-service/v1/awards.json" +ProxyPassReverse "/research.gov/awardapi-service/v1/awards.json" "https://www.research.gov/awardapi-service/v1/awards.json" +``` + +Replace `"https://www.research.gov/awardapi-service/v1/awards.json"` with the actual URL of the NSF Award API if it's different. You may also use a different proxy path if you prefer (other than `/research.gov/awardapi-service/v1/awards.json`), but make sure to update the proxy path in the `grantsUrl` property of the MetacatUI configuration as well. + +### 3. Restart Apache + +After editing the configuration file, restart Apache to apply the new settings: + +```bash +sudo systemctl restart apache2 +``` + +## Update MetacatUI Configuration + +The last step is to update the MetacatUI configuration to use the proxy path, if you used a different proxy path than the default one. The default path is `/research.gov/awardapi-service/v1/awards.json`, relative to the domain on which your MetacatUI is served. If you used a different proxy path, you will need to update the `grantsUrl` property in the MetacatUI configuration: + +```javascript +grantsUrl: "/research.gov/awardapi-service/v1/awards.json"; +``` + +Ensure that you also have the funding lookup feature enabled in the MetacatUI configuration by setting the `fundingLookup` property to `true`. It defaults to `false`. + +```javascript +useNSFAwardAPI: true; +``` + +## Testing + +Ensure that the proxy is correctly set up by accessing the following URL in your browser: + +``` +[your MetacatUI domain]/research.gov/awardapi-service/v1/awards.json +``` + +You should see the JSON response from the NSF Award API. + +## Conclusion + +By following these steps, you set up an Apache proxy to enable the NSF award lookup feature in MetacatUI. Ensure you test the configuration to confirm everything is working as expected. + +## Additional Notes + +- Each MetacatUI installation that wants to use the NSF award lookup feature will need to set up its own proxy. \ No newline at end of file diff --git a/docs/guides/images/funding.png b/docs/guides/images/funding.png new file mode 100644 index 0000000000000000000000000000000000000000..531eaa9c8e49731b79c045c5acd8988a2fd1cd99 GIT binary patch literal 191168 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

CX=U`)1eMe=HBrBXenD24d3QZu2&^?J! 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
AlT706J1{HDdx-^bGC!ZWETKSgkzHk5u=1 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 TGVlih|5Wa4+$*|k`s)7!$|`(K literal 0 HcmV?d00001 diff --git a/docs/guides/index.md b/docs/guides/index.md index 868e856a5..44e1f8780 100644 --- a/docs/guides/index.md +++ b/docs/guides/index.md @@ -8,5 +8,6 @@ of your MetacatUI application. - 📑 Catalog Search View - 🌎 Cesium Map - 📍 Cesium Map for Portals +- 🔍 Funding Autocomplete ℹ️ Is something missing? [Email us](mailto:metacat-dev@ecoinformatics.org) or join us on [Slack](https://slack.dataone.org/) and we'll add it! \ No newline at end of file diff --git a/src/js/models/AppModel.js b/src/js/models/AppModel.js index 065f86ba5..8701b1f18 100644 --- a/src/js/models/AppModel.js +++ b/src/js/models/AppModel.js @@ -720,7 +720,9 @@ define(['jquery', 'underscore', 'backbone'], useNSFAwardAPI: false, /** * The URL for the NSF Award API, which can be used by the {@link LookupModel} - * to look up award information for the dataset editor or other views + * to look up award information for the dataset editor or other views. The + * URL must point to a proxy that can make requests to the NSF Award API, + * since it does not support CORS. * @type {string} * @default "/research.gov/awardapi-service/v1/awards.json" */ From 131e81f08fb406b67ed733d7e3c1ab34f35a7fa1 Mon Sep 17 00:00:00 2001 From: Robyn Thiessen-Bock Date: Tue, 16 Jan 2024 19:28:15 -0500 Subject: [PATCH 5/5] Add test for the findGrants method in LookupModel Issue #2233 --- test/config/tests.json | 5 ++- .../specs/integration/models/LookupModel.js | 33 +++++++++++++++++++ 2 files changed, 37 insertions(+), 1 deletion(-) create mode 100644 test/js/specs/integration/models/LookupModel.js diff --git a/test/config/tests.json b/test/config/tests.json index 1fb5afcfa..7156a2e2e 100644 --- a/test/config/tests.json +++ b/test/config/tests.json @@ -42,5 +42,8 @@ "./js/specs/unit/models/maps/assets/CesiumGeohash.spec.js", "./js/specs/unit/common/Utilities.spec.js" ], - "integration": ["./js/specs/integration/collections/SolrResults.spec.js"] + "integration": [ + "./js/specs/integration/collections/SolrResults.spec.js", + "./js/specs/integration/models/LookupModel.js" + ] } diff --git a/test/js/specs/integration/models/LookupModel.js b/test/js/specs/integration/models/LookupModel.js new file mode 100644 index 000000000..29e7ba74f --- /dev/null +++ b/test/js/specs/integration/models/LookupModel.js @@ -0,0 +1,33 @@ +define(["../../../../../../../../src/js/models/LookupModel"], function ( + LookupModel +) { + // Configure the Chai assertion library + var should = chai.should(); + var expect = chai.expect; + + describe("Lookup Model", function () { + beforeEach(function () { + MetacatUI.appModel.set( + "grantsUrl", + "https://arcticdata.io/research.gov/awardapi-service/v1/awards.json" + ); + + }); + + afterEach(function () { + var lookup = null; + }); + + describe("NSF Awards API Lookup", function () { + + it("should return results for a valid term", async function () { + let lookup = new LookupModel(); + const awards = await lookup.findGrants("alaska"); + expect(awards).to.be.an("array"); + expect(awards.length).to.be.greaterThan(0); + expect(awards[0]).to.have.property("id"); + expect(awards[0]).to.have.property("title"); + }); + }); + }); +});