Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/alliance-pcsg/primo-explore-report-problem
:warning: adds a "report a problem" banner to the detail view of an item in primo-explore.
https://github.com/alliance-pcsg/primo-explore-report-problem
angularjs primo-explore
Last synced: about 1 month ago
JSON representation
:warning: adds a "report a problem" banner to the detail view of an item in primo-explore.
- Host: GitHub
- URL: https://github.com/alliance-pcsg/primo-explore-report-problem
- Owner: alliance-pcsg
- License: mit
- Created: 2017-08-02T23:16:39.000Z (over 7 years ago)
- Default Branch: master
- Last Pushed: 2019-09-11T22:40:13.000Z (over 5 years ago)
- Last Synced: 2024-04-25T18:03:01.870Z (9 months ago)
- Topics: angularjs, primo-explore
- Language: JavaScript
- Homepage:
- Size: 114 KB
- Stars: 6
- Watchers: 5
- Forks: 2
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# primo-explore-report-problem
[![npm](https://img.shields.io/npm/v/primo-explore-report-problem.svg)](https://www.npmjs.com/package/primo-explore-report-problem)
## Features
A banner with a link to report a problem/bug appears below the "send to" actions in the details view. The text of the banner is configurable, and clicking the button will redirect to an external URL and pass the parameters of the current search to that URL. This can be used to auto-fill an external "report problem" form.### Screenshot
![screenshot](screenshot.png)## Install
1. Make sure you've installed and configured [primo-explore-devenv](https://github.com/ExLibrisGroup/primo-explore-devenv).
2. Navigate to your template/central package root directory. For example:
```
cd primo-explore/custom/MY_VIEW_ID
```
3. If you do not already have a `package.json` file in this directory, create one:
```
npm init -y
```
4. Install this package:
```
npm install primo-explore-report-problem
```alternatively, just copy `dist/module.js` into your package's `custom.js` file.
## Usage
Once this package is installed, add `reportProblem` as a dependency for your custom module definition.```js
var app = angular.module('viewCustom', ['reportProblem'])
```Then, enable the customization by embedding it in the `prmActionListAfter` hook:
```js
app.component('prmActionListAfter', {template: ''})
```#### Configuration
You can configure the banner by passing in attributes to the `oca-report-problem` element. The `report-url` property is required; the others will default to the values shown in the screenshot.| name | type | usage |
|-----------|--------------|-----------------------------------------------------------------------------------------|
| `message-text` | string | banner text displayed next to the button. |
| `button-text` | string | text displayed on the button itself. |
| `report-url` | string (url) | base URL for your 'report a problem' page, to which all of the search parameters will be sent |The line below would add a banner with different button and message texts.
```js
app.component('prmActionListAfter', {template: ''})
```When the button is clicked, if the user was viewing a page like: `https://primo.lclark.edu/primo-explore/fulldisplay?docid=CP71139633100001451&context=L&vid=......`
They would be sent to:
`http://my.library.edu/reportproblem.php?docid=CP71139633100001451&context=L&vid=.....`All of the URL parameters could then be handled by a server-side script.
## Running tests
1. Clone the repo
2. Run `npm install`
3. Run `npm test`