Use browzine-discovery-service-adapters
to enhance Summon, 360 Core or Primo search results with BrowZine data.
browzine-discovery-service-adapters
adds links to Journal and Article content in BrowZine, and displays BrowZine Journal covers. The BrowZine Summon adapter supports IE11+ and evergreen browsers (Chrome, Firefox, Safari, Microsoft Edge).
Summon Search Results Example
360 Core Search Results Example
Primo Search Results Example
Visit Third Iron support to request your library Id and API Key - http://support.thirdiron.com/
You will receive your libraryId
and your apiKey
.
Update the following code snippet with your libraryId
and apiKey
values:
var browzine = {
libraryId: "XXX",
apiKey: "ENTER API KEY",
};
browzine.script = document.createElement("script");
browzine.script.src = "https://s3.amazonaws.com/browzine-adapters/summon/browzine-summon-adapter.js";
document.head.appendChild(browzine.script);
Summon Custom Scripts are added in the Summon 2.0 External Script portion of the Summon Editor Settings:
Customize the naming conventions for each type of search result - Journal/Article - by changing the wording in the quotes below:
e.g. You can customize "View the Journal", "View Complete Issue", "Browse Now" and whether to enable direct to PDF links. These customizations are optional and the defaults are shown below.
Please note a valid institutional email address is required to use the Unpaywall feature in LibKey Discovery.
BrowZine discovery service adapter script version 2 or greater allows the customer to override default text.
var browzine = {
version: 2,
libraryId: "XXX",
apiKey: "ENTER API KEY",
articlePDFDownloadLinkEnabled: true,
articlePDFDownloadWording: "View Now",
articlePDFDownloadLinkText: "PDF",
articleLinkEnabled: true,
articleLinkTextWording: "View Now",
articleLinkText: "Article Page",
articleWording: "View in Context",
articleBrowZineWebLinkText: "Browse Journal",
journalWording: "View the Journal",
journalBrowZineWebLinkText: "Browse Now",
printRecordsIntegrationEnabled: true,
unpaywallEmailAddressKey: "[email protected]",
articlePDFDownloadViaUnpaywallEnabled: true,
articlePDFDownloadViaUnpaywallWording: "View Now (via Unpaywall)",
articlePDFDownloadViaUnpaywallLinkText: "PDF",
articleLinkViaUnpaywallEnabled: true,
articleLinkViaUnpaywallWording: "View Now (via Unpaywall)",
articleLinkViaUnpaywallLinkText: "Article Page",
articleAcceptedManuscriptPDFViaUnpaywallEnabled: true,
articleAcceptedManuscriptPDFViaUnpaywallWording: "View Now (Accepted Manuscript via Unpaywall)",
articleAcceptedManuscriptPDFViaUnpaywallLinkText: "PDF",
articleAcceptedManuscriptArticleLinkViaUnpaywallEnabled: true,
articleAcceptedManuscriptArticleLinkViaUnpaywallWording: "View Now (via Unpaywall)",
articleAcceptedManuscriptArticleLinkViaUnpaywallLinkText: "Article Page",
articleRetractionWatchEnabled: true,
articleRetractionWatchTextWording: "Retracted Article",
articleRetractionWatchText: "More Info",
articleExpressionOfConcernEnabled: true,
articleExpressionOfConcernWording: "Expression of Concern",
articleExpressionOfConcernText: "More Info",
iconColor: "#639add",
showFormatChoice: true,
showLinkResolverLink: true,
enableLinkOptimizer: true,
};
Update the following code snippet with your libraryId
and apiKey
values:
var browzine = {
libraryId: "XXX",
apiKey: "ENTER API KEY",
};
browzine.script = document.createElement("script");
browzine.script.src = "https://s3.amazonaws.com/browzine-adapters/360-core/browzine-360-core-adapter.js";
document.head.appendChild(browzine.script);
360 Core custom scripts are added in 360 Core > Administration Console > E-Journal Portal 2.0 > Branding Options > Reference External JavaScript > JavaScript file url:
Customize the naming conventions for each type of search result - Journal - by changing the wording in the quotes below:
e.g. You can customize "View Journal in BrowZine" to be a different phrase.
var browzine = {
libraryId: "XXX",
apiKey: "ENTER API KEY",
journalCoverImagesEnabled: true,
journalBrowZineWebLinkTextEnabled: true,
journalBrowZineWebLinkText: "View Journal in BrowZine",
};
Update the following code snippet with your libraryId
and apiKey
values:
(function () {
"use strict";
var app = angular.module('viewCustom', ['angularLoad']);
// Load BrowZine Adapter
window.browzine = {
libraryId: "XXX",
apiKey: "ENTER API KEY",
};
browzine.script = document.createElement("script");
browzine.script.src = "https://s3.amazonaws.com/browzine-adapters/primo/browzine-primo-adapter.js";
document.head.appendChild(browzine.script);
app.controller('prmSearchResultAvailabilityLineAfterController', function($scope) {
window.browzine.primo.searchResult($scope);
});
app.component('prmSearchResultAvailabilityLineAfter', {
bindings: { parentCtrl: '<' },
controller: 'prmSearchResultAvailabilityLineAfterController'
});
})();
Upload this custom Primo package to your Primo view or add the contents of /js/custom.js to your existing customized Primo package. Then upload 01COLSCHL_INST-BRZN.zip in Primo at Configure Views > 01COLSCHL_INST:BRZNTEST.
Upload Steps:
Edit the 01COLSCHL_INST:BRZNTEST view.
Then go to Manage Customization Package.
Under Upload Package, select the Customization Package 01COLSCHL_INST-BRZN.zip.
Then click Upload.
Then in the View Configuration header click Save.
Here's a sample view package (if needed): https://s3.amazonaws.com/browzine-adapters/primo/01COLSCHL_INST-BRZN.zip
But, if available, just download the Current View Customization Package under the Download Package section and use that as your starting package.
Customize the naming conventions for each type of search result - Journal/Article - by changing the wording in the quotes below:
e.g. You can customize "View Issue Contents" to be a different phrase.
Please note a valid institutional email address is required to use the Unpaywall feature in LibKey Discovery.
window.browzine = {
libraryId: "XXX",
apiKey: "ENTER API KEY",
journalCoverImagesEnabled: true,
journalBrowZineWebLinkTextEnabled: true,
journalBrowZineWebLinkText: "View Journal Contents",
articleBrowZineWebLinkTextEnabled: true,
articleBrowZineWebLinkText: "View Issue Contents",
articlePDFDownloadLinkEnabled: true,
articlePDFDownloadLinkText: "Download PDF",
articleLinkEnabled: true,
articleLinkText: "Read Article",
printRecordsIntegrationEnabled: true,
unpaywallEmailAddressKey: "[email protected]",
articlePDFDownloadViaUnpaywallEnabled: true,
articlePDFDownloadViaUnpaywallText: "Download PDF (via Unpaywall)",
articleLinkViaUnpaywallEnabled: true,
articleLinkViaUnpaywallText: "Read Article (via Unpaywall)",
articleAcceptedManuscriptPDFViaUnpaywallEnabled: true,
articleAcceptedManuscriptPDFViaUnpaywallText: "Download PDF (Accepted Manuscript via Unpaywall)",
articleAcceptedManuscriptArticleLinkViaUnpaywallEnabled: true,
articleAcceptedManuscriptArticleLinkViaUnpaywallText: "Read Article (Accepted Manuscript via Unpaywall)",
articleRetractionWatchEnabled: true,
articleRetractionWatchText: "Retracted Article",
articleExpressionOfConcernEnabled: true,
articleExpressionOfConcernText: "Expression of Concern",
showFormatChoice: true,
showLinkResolverLink: true,
enableLinkOptimizer: true,
};
Enhancements and Bugfixes should be developed against the ES5 standard and tested against evergreen browsers and IE11+. Care should be taken to validate JavaScript features used are available in IE11+ and evergreen browsers to gain the widest customer base support as possible. See, https://caniuse.com/#feat=es5
git clone https://github.com/thirdiron/browzine-discovery-service-adapters.git
this repository- change into the new directory
npm install
npm run server
(Runs a local webserver, visit http://localhost:8080)npm run tunnel
(Creates an ngrok tunnel, place this in the "Summon 2.0 External Script", e.g. https://9f9981c8.ngrok.io/src/summon/browzine-summon-adapter.js)- For Primo, add the url given by the ngrok tunnel and add it to the custom.js file of the template package. Then upload that into the School of Mines Primo sandbox. Make sure to change the library ID and API key in order to fetch the data you want if you need to test something like retractions or EOCs.
npm test
(Runs the Karma automated acceptance tests)
CircleCI executes deployments to S3 using the deploy-staging and deploy-production npm commands. Neither feature branches nor hotfix branches are deployed to S3.
The BrowZine Summon Adapter adapter can be found here:
Staging https://s3.amazonaws.com/browzine-adapters/summon/staging/browzine-summon-adapter.js
Production https://s3.amazonaws.com/browzine-adapters/summon/browzine-summon-adapter.js
The BrowZine 360 Core Adapter adapter can be found here:
Staging https://s3.amazonaws.com/browzine-adapters/360-core/staging/browzine-360-core-adapter.js
Production https://s3.amazonaws.com/browzine-adapters/360-core/browzine-360-core-adapter.js
The BrowZine Primo Adapter adapter can be found here:
Staging https://s3.amazonaws.com/browzine-adapters/primo/staging/browzine-primo-adapter.js
Production https://s3.amazonaws.com/browzine-adapters/primo/browzine-primo-adapter.js