diff --git a/config/actions.yml b/config/actions.yml
index 9ca23995..2c718906 100644
--- a/config/actions.yml
+++ b/config/actions.yml
@@ -22,8 +22,3 @@
Items sent from U-M Library search
html_footer: >-
-- id: favorites
- type: favorites
- driver: Spectrum::Json::Favorites
- credentials:
- service: https://apps.lib.umich.edu/favorites/api
diff --git a/local-gems/spectrum-json/lib/spectrum/json.rb b/local-gems/spectrum-json/lib/spectrum/json.rb
index a43e505a..0fa63bc1 100644
--- a/local-gems/spectrum-json/lib/spectrum/json.rb
+++ b/local-gems/spectrum-json/lib/spectrum/json.rb
@@ -35,7 +35,7 @@
require "spectrum/json/ris"
require "spectrum/json/twilio"
require "spectrum/json/email"
-require "spectrum/json/favorites"
+# require "spectrum/json/favorites"
require "spectrum/response"
require "spectrum/response/spectrumable"
@@ -55,12 +55,8 @@
require "spectrum/response/text"
require "spectrum/response/email"
require "spectrum/response/file"
-require "spectrum/response/favorite"
-require "spectrum/response/unfavorite"
require "spectrum/response/tag"
require "spectrum/response/untag"
-require "spectrum/response/list_favorites"
-require "spectrum/response/suggest_favorites"
require "spectrum/response/profile"
require "spectrum/response/ids"
require "spectrum/response/debug"
@@ -89,12 +85,8 @@
require "spectrum/request/text"
require "spectrum/request/email"
require "spectrum/request/file"
-require "spectrum/request/favorite"
-require "spectrum/request/unfavorite"
require "spectrum/request/tag"
require "spectrum/request/untag"
-require "spectrum/request/list_favorites"
-require "spectrum/request/suggest_favorites"
require "spectrum/request/profile"
require "spectrum/request/ids"
require "spectrum/request/debug"
@@ -200,27 +192,27 @@ def routes(app)
defaults: {type: "Profile"},
via: %i[get options]
- app.match "profile/favorites/list",
- to: "json#act",
- defaults: {type: "ListFavorites"},
- via: %i[get options]
+ # app.match "profile/favorites/list",
+ # to: "json#act",
+ # defaults: {type: "ListFavorites"},
+ # via: %i[get options]
- app.match "profile/favorites/suggest",
- to: "json#act",
- defaults: {type: "SuggestFavorites"},
- via: %i[get options]
+ # app.match "profile/favorites/suggest",
+ # to: "json#act",
+ # defaults: {type: "SuggestFavorites"},
+ # via: %i[get options]
app.match "file",
to: "json#file",
defaults: {type: "File"},
via: %i[post options]
- %w[text email favorite unfavorite tag untag].each do |action|
- app.match action,
- to: "json#act",
- defaults: {type: action.titlecase},
- via: %i[post options]
- end
+ # %w[text email favorite unfavorite tag untag].each do |action|
+ # app.match action,
+ # to: "json#act",
+ # defaults: {type: action.titlecase},
+ # via: %i[post options]
+ # end
end
end
end
diff --git a/local-gems/spectrum-json/lib/spectrum/json/favorites.rb b/local-gems/spectrum-json/lib/spectrum/json/favorites.rb
deleted file mode 100644
index b91c5b0e..00000000
--- a/local-gems/spectrum-json/lib/spectrum/json/favorites.rb
+++ /dev/null
@@ -1,129 +0,0 @@
-module Spectrum
- module Json
- class Favorites
- class << self
- attr_accessor :config
-
- def configure!(config)
- self.config = config
- end
-
- def suggest(username)
- params = { user: username }
- JSON.parse(Net::HTTP.get(uri('suggest', params)))
- end
-
- def list(username)
- params = { user: username }
- JSON.parse(Net::HTTP.get(uri('list', params)))
- end
-
- def favorite(username, items)
- return unless (silo = favoriteable_silo(items))
- params = {
- user: username,
- items: favoriteable_items(items),
- tags: [silo].flatten
- }
- JSON.parse(Net::HTTP.get(uri('add', params)))
- end
-
- def unfavorite(username, items)
- return unless (silo = favoriteable_silo(items))
- params = {
- user: username,
- items: favoriteable_items(items),
- tags: [silo].flatten
- }
- JSON.parse(Net::HTTP.get(uri('remove', params)))
- end
-
- def tag(username, tag, items)
- return if items.empty? || tag.empty?
- params = {
- user: username,
- items: favoriteable_items(items),
- tags: [tag].flatten
- }
- JSON.parse(Net::HTTP.get(uri('add', params)))
- end
-
- def untag(username, tag, items)
- return if items.empty? || tag.empty?
- params = {
- user: username,
- items: favoriteable_items(items),
- tags: [tag].flatten
- }
- JSON.parse(Net::HTTP.get(uri('remove', params)))
- end
-
- private
-
- def favoriteable_items(items)
- ret = {}
- items.each_with_index { |item, idx| ret[idx.to_s] = favoriteable_item(item) }
- ret
- end
-
- def favoriteable_item(item)
- {
- id: favoriteable_url(item),
- title: fetch_field(item, 'title')
- }
- end
-
- def favoriteable_url(item)
- ret = []
- case (datastore = fetch_field(item, 'datastore'))
- when 'mirlyn'
- ret.push('http://mirlyn.lib.umich.edu/Record/' + fetch_field(item, 'id'))
- ret.push('https://search.lib.umich.edu/catalog/record/' + fetch_field(item, 'id'))
- when 'primo', 'articles', 'articlesplus'
- ret.push('http://www.lib.umich.edu/articles/details/' + fetch_field(item, 'id'))
- ret.push('https://search.lib.umich.edu/articles/record/' + fetch_field(item, 'id'))
- unless (openurl = fetch_field(item, 'openurl')).empty?
- ret.push('http://mgetit.lib.umich.edu/?' + openurl)
- end
- when 'databases'
- ret.push('http://www.lib.umich.edu/node/' + fetch_field(item, 'id'))
- ret.push('https://search.lib.umich.edu/databases/record/' + fetch_field(item, 'id'))
- when 'journals', 'onlinejournals'
- ret.push('http://mirlyn.lib.umich.edu/Record/' + fetch_field(item, 'id'))
- ret.push('https://search.lib.umich.edu/onlinejournals/record/' + fetch_field(item, 'id'))
- when 'website'
- ret.push(fetch_field(item, 'id'))
- else
- ret.push(datastore + ':' + fetch_field(item, 'id'))
- end
- ret
- end
-
- def fetch_field(item, field_name)
- [item&.find {|field| field[:uid] == field_name}&.fetch(:value, nil)].flatten.compact.first.to_s
- end
-
- def favoriteable_silo(items)
- case (datastore = fetch_field(items&.first, 'datastore'))
- when 'mirlyn'
- 'mirlyn-favorite'
- when 'primo', 'articles', 'articlesplus'
- 'articles-favorite'
- when 'databases'
- 'databases-favorite'
- when 'journals', 'onlinejournals'
- 'journals-favorite'
- when 'website'
- 'website-favorite'
- else
- datastore + '-favorite'
- end
- end
-
- def uri(type, params)
- URI(config.service + '/' + type).tap { |u| u.query = params.to_query }
- end
- end
- end
- end
-end
diff --git a/local-gems/spectrum-json/lib/spectrum/request/favorite.rb b/local-gems/spectrum-json/lib/spectrum/request/favorite.rb
deleted file mode 100644
index 5ae5cc57..00000000
--- a/local-gems/spectrum-json/lib/spectrum/request/favorite.rb
+++ /dev/null
@@ -1,6 +0,0 @@
-module Spectrum
- module Request
- class Favorite < Action
- end
- end
-end
diff --git a/local-gems/spectrum-json/lib/spectrum/request/list_favorites.rb b/local-gems/spectrum-json/lib/spectrum/request/list_favorites.rb
deleted file mode 100644
index 56f27c84..00000000
--- a/local-gems/spectrum-json/lib/spectrum/request/list_favorites.rb
+++ /dev/null
@@ -1,6 +0,0 @@
-module Spectrum
- module Request
- class ListFavorites < Action
- end
- end
-end
diff --git a/local-gems/spectrum-json/lib/spectrum/request/suggest_favorites.rb b/local-gems/spectrum-json/lib/spectrum/request/suggest_favorites.rb
deleted file mode 100644
index 993b3962..00000000
--- a/local-gems/spectrum-json/lib/spectrum/request/suggest_favorites.rb
+++ /dev/null
@@ -1,6 +0,0 @@
-module Spectrum
- module Request
- class SuggestFavorites < Action
- end
- end
-end
diff --git a/local-gems/spectrum-json/lib/spectrum/request/unfavorite.rb b/local-gems/spectrum-json/lib/spectrum/request/unfavorite.rb
deleted file mode 100644
index 1c4b682a..00000000
--- a/local-gems/spectrum-json/lib/spectrum/request/unfavorite.rb
+++ /dev/null
@@ -1,6 +0,0 @@
-module Spectrum
- module Request
- class Unfavorite < Action
- end
- end
-end
diff --git a/local-gems/spectrum-json/lib/spectrum/response/favorite.rb b/local-gems/spectrum-json/lib/spectrum/response/favorite.rb
deleted file mode 100644
index c379a7b1..00000000
--- a/local-gems/spectrum-json/lib/spectrum/response/favorite.rb
+++ /dev/null
@@ -1,17 +0,0 @@
-module Spectrum
- module Response
- class Favorite < Action
-
- attr_accessor :driver
-
- def initialize(request)
- super(request)
- self.driver = Spectrum::Json.actions['favorites'].driver
- end
-
- def spectrum
- driver.favorite(request.username, request.items)
- end
- end
- end
-end
diff --git a/local-gems/spectrum-json/lib/spectrum/response/list_favorites.rb b/local-gems/spectrum-json/lib/spectrum/response/list_favorites.rb
deleted file mode 100644
index 3eddea85..00000000
--- a/local-gems/spectrum-json/lib/spectrum/response/list_favorites.rb
+++ /dev/null
@@ -1,18 +0,0 @@
-module Spectrum
- module Response
- class ListFavorites < Action
-
- attr_accessor :driver
-
- def initialize(request)
- super(request)
- self.driver = Spectrum::Json.actions['favorites'].driver
- end
-
- def spectrum
- driver.list(request.username)
- end
-
- end
- end
-end
diff --git a/local-gems/spectrum-json/lib/spectrum/response/suggest_favorites.rb b/local-gems/spectrum-json/lib/spectrum/response/suggest_favorites.rb
deleted file mode 100644
index 7b9e732b..00000000
--- a/local-gems/spectrum-json/lib/spectrum/response/suggest_favorites.rb
+++ /dev/null
@@ -1,18 +0,0 @@
-module Spectrum
- module Response
- class SuggestFavorites < Action
-
- attr_accessor :driver
-
- def initialize(request)
- super(request)
- self.driver = Spectrum::Json.actions['favorites'].driver
- end
-
- def spectrum
- driver.suggest(request.username)
- end
-
- end
- end
-end
diff --git a/local-gems/spectrum-json/lib/spectrum/response/unfavorite.rb b/local-gems/spectrum-json/lib/spectrum/response/unfavorite.rb
deleted file mode 100644
index 8f24dc8e..00000000
--- a/local-gems/spectrum-json/lib/spectrum/response/unfavorite.rb
+++ /dev/null
@@ -1,16 +0,0 @@
-module Spectrum
- module Response
- class Unfavorite < Action
- attr_accessor :driver
-
- def initialize(request)
- super(request)
- self.driver = Spectrum::Json.actions['favorites'].driver
- end
-
- def spectrum
- driver.unfavorite(request.username, request.items)
- end
- end
- end
-end
diff --git a/spec/spectrum-config/search_engines/primo/engine_spec.rb b/spec/spectrum-config/search_engines/primo/engine_spec.rb
index 27926fbf..af4d5d68 100644
--- a/spec/spectrum-config/search_engines/primo/engine_spec.rb
+++ b/spec/spectrum-config/search_engines/primo/engine_spec.rb
@@ -1,9 +1,9 @@
-require_relative '../../../rails_helper'
-require 'spectrum/search_engines/primo/engine'
+require_relative "../../../rails_helper"
+require "spectrum/search_engines/primo/engine"
describe Spectrum::SearchEngines::Primo::Engine do
context "#query" do
- subject { described_class.new(key: "KEY", host: 'HOST') }
+ subject { described_class.new(key: "KEY", host: "HOST", libkey: {}) }
it "takes this form" do
expect(subject.query).to eq("apikey=KEY&scope=default_scope&tab=default_tab&vid=Auto1")
end