Allow for consistant customizations in the new UI
The open discovery of the new UI allows customers to customize the new UI, extend its functionalities, and connect Primo with external services.
This framework can offer an important added value to institutions; it can enable them to respond to specific needs of their user community.
We want to implement extensions for functionalities like:
• Offer a button “report a problem” that allows a user to report a broken link or another problem with a specific source he found. The form sends this message to our helpdesk, together with useful debug info like : is the user on or off campus, browser version used, search query, pnx-id,.. and his e-mail address when he is signed in. Our e-resources staff finds this functionality extremely useful: more linking issues are reported now and they can be handled in a more efficient way.
• Offer a button “Pay fines” that allows a user to pay fines online. The button is only displayed when the user has fines.
These are extensions that we currently implemented in our old UI.
But creating extensions that make use of session data (like user email, vid, …) are time consuming and risk full:
• Time consuming because documentation is limited not to say non-existing, this requires reading the code. It has a high maintenance cost since after every release, extensions can break and it is difficult to find out why because of the lack of clear release notes.
• It is risk full because we don’t know whether we will be able to fix the functionality in the two weeks between release on staging and production. It is also risk full because we don’t know if the extensions will still work after the transition to Angular 2.
Our request is :
Please provide us with session data in every component so we can quickly create components.
One way to make the extensions manageable and future proof, is to use a data model (see primo-explore-dom). If the data is framework agnostic it will become more portable and working with data is easier and almost timeless.
This way everybody can develop within the reach of their skillset and more institutions would be able to take profit of the open discovery framework.
But we are open to any solution to overcome the issues mentioned.
Mehmet Celik commented
A more in dept explanation can be found here