Download presentation
Presentation is loading. Please wait.
Published byQuentin Andrews Modified over 8 years ago
1
Semi-Advanced Primo Customisations Fri May 8, 10-10:45am – Minnesota Room Randy Oldham University of Guelph Ontario, Canada roldham@uoguelph.ca @roldham
2
All About TUG TUG: TriUniversity Group Consortia University of Waterloo (Waterloo, Ontario, Canada) – 22,400 Wilfrid Laurier University (Waterloo, Ontario, Canada) – 14,800 University of Guelph (Guelph, Ontario, Canada) – 22,000
3
Why Customise? 34km
4
Note Lots of Ex Libris products Hosted Locally: Voyager Primo Hosted Provincially: SFX
5
Generally Speaking… Locally-hosted More access to files More potential for hacking Vendor-hosted Less access to files Less potential for hacking YOUR MILEAGE MAY VARY… Terms & Licenses
6
Full Disclosure This is Matt. Matt is a developer at UG This is Randy. He’s the web guy at UG Also Primo guy at UG Then we had a team of folks from the consortia… Alison, Charles, Dillon, Matt And EX LIBRIS support…
7
First Steps… Determine your access to files: Is there backend administration? Can you modify/include CSS? Simple colour changes & hide content Can you modify/include HTML files? Customise headers and footers Include new JS files Can you modify/include Javascript files? More advanced customisations Programmatically changing things Can you modify core files? Carte Blanche!
8
General customisation notes We had a general approach to customisations: Avoid customisations to core files when possible (no touching jsp files) Keep it simple…as close to stock as possible Backup…backup…backup Document all changes Share
9
Determine What to Customise Just because you CAN doesn’t mean you SHOULD Remember: Each hack has to be maintained through upgrades Driven by usability testing: What would help users? What would increase their success? What would stop them from asking for help?
10
Tools You’ll Need 1.Vendor customisation documentation 2.Access to customise or include files 3.Users 4.Knowledge of either: CSS HTML JAVASCRIPT 5.Firebug addon for Firefox 6.1 bottle beer*
11
Quick Note on Firebug Extension for Firefox Find div/class names: To hide To change
12
Method One RTFM Read The Functional Manual Vendors provide limited customisation This is your best bet Vendors support these customisations through upgrades Reduces your upgrade time
13
COMPLEXITY LEVEL: LOW BACKEND ADMINISTRATION Change Facet Order
14
Facet Order Changed Facet Order: WHY Change? Usability testing, Consortia, Analytics Before:After:
15
Facet Order How to modify FACET ORDER in PRIMO: Login to the Primo back office Click ONGOING CONFIGURATION WIZARDS Click VIEWS WIZARD Click on EDIT to the right of the view Click SAVE & CONTINUE, CONTINUE, CONTINUE Select BRIEF DISPLAY from dropdown Click EDIT TILE to the right of REFINE MY RESULTS Change the order & enable/disable facets here Click Save & Continue, continue, DEPLOY
16
COMPLEXITY LEVEL: LOW BACKEND ADMINISTRATION Add custom tabs
17
Tabs Add tabs (Blended, Primo, Primo Central) AFTER: Why change? Usability testing/staff feedback
18
tabs All through back office Modify your view Go to the TABS section Select your search scopes for the tabs Save & deploy
19
Method 2: CSS Override You must have access to edit CSS files Create your own CSS file and include it Use Firebug Determine div/class name Visibility:hidden; to HIDE things Change colours Re-position things Replace some images
20
COMPLEXITY LEVEL: LOW CSS OVERRIDE Change versions tab colour
21
Versions Tab Colour Versions tab too pale: If there are multiple copies of the same item, the records are de-duped and all records are displayed behind a VERSIONS tab Usability testing/comments - users consistently missed this tab… too pale
22
Make the VERSIONS tab stand out more Colour change = CSS override The Goal
23
Versions Tab Colour Instructions are on Ex Libris Developers NetworkEx Libris Developers Network Essentially, we do the following: create a new triangle bit change the text colour change the background colour All done with CSS
24
Method 3: Inject JS You must have access to an HTML file loaded on each page (footer/header) Create a js file and include it in this Possibilities are nearly endless Be prepared to troubleshoot post upgrades
25
COMPLEXITY LEVEL: LOW JAVASCRIPT ADDITION Remove EXPAND MY RESULTS
26
Remove EXPAND… Remove the EXPAND BEYOND facet Why change? Usability testing/staff feedback
27
Remove EXPAND… It’s a pretty simple one line javascript bit $(document).ready(function() { $('.EXLFacetContainer h3').filter(function(index) { return $(this).text().trim() === "Expand My Results"; }).parent().hide(); }); No modifications to EXL files! EXLibris Support = Survives upgrades!*** Code in Ex Libris Developers Network Code in Ex Libris Developers Network
28
COMPLEXITY LEVEL: MEDIUM BACKEND & JS Customise MORE tab
29
Add Request an Article Tab Request an Article Tab Interlibrary lending
30
Request an Article Tab We co-opted the “GetIT! Link 2”… MORE tab Mapping tables: Delivery: GetIT! Link 2: changed the “link field in PNX” to request an article for everything except Remote Search Resource Mapping tables: delivery: templates – mapped Request an Article to the URL template: tugracer http://racer.scholarsportal.info/ link to RACER requesthttp://racer.scholarsportal.info/ to open the tab in new window: Mapping tables: Delivery - URLs Attributes http://racer.scholarsportal.info/ OpenInNewWindow http://racer.scholarsportal.info/ For the label of the tab: Code tables: Delivery: GetIT! Tab2 – changed name to Request an Article
31
Request an Article tab Request an Article tab shows up on every item We only want folks to use Request an Article for ARTICLES…not other resource types So we programmatically HIDE the tab for NON-JOURNAL resources using JAVASCRIPT
32
Request an Article Tab code is in Ex Libris Developers NetworkEx Libris Developers Network It’s a pretty simple one line javascript bit $(document).ready(function() { $('.EXLMoreTab').not('tr.EXLResult MediaTYPEjournal > td > div > div > ul > li').hide(); }); No modifications to EXL files! Vendor Support = Survives upgrades!***
33
COMPLEXITY LEVEL: MEDIUM JAVASCRIPT ADDITION Boolean Search Example
34
Add a boolean search example AFTER: Why change? Staff request
35
Boolean Search Example Relatively simple one line of JS $(' e.g., king AND shakespeare NOT lear ').insertBefore(".EXLSearchFi eldRibbonAdvancedSearchLink"); We find div on the screen and then insert a div just before it. We give our div a class so that we can style it. We specify the content of the div
36
COMPLEXITY LEVEL: MEDIUM JAVASCRIPT ADDITION New Search Tab
37
New Search Link New Search Link Added Why Change? Staff request Takes users back to search startpage Reads in VID Checks for BASIC or ADVANCED Contact me…
38
COMPLEXITY LEVEL: HIGH JAVASCRIPT ADDITION Where is it? integration
39
Where is it feature Patrons/staff said… cool… I have a call number… but where is the thing!? Guelph/Waterloo/Laurier were different GuelphWaterlooLaurier Guelph had a CF web app which supported URL var and form input Waterloo had a different CF web app which supported form input Laurier had static floor maps
40
Where is it? Primo has the call number… Our consortia has apps (or static maps) that can take call numbers and show building locations for materials… How do we put these together?!?
41
Where is it? Some JAVASCRIPT! Read in item type Read in location, and call number Do something based on some logic EG:If you find BOOK, then: If UG/UW: create link which submits call number to CF apps via URL If WLU: create static link to floor map of proper call number range EG 2: If you find ANNEX, then always: Display NOTE text instead of LINK.
42
Where is it? Try the Guelph view Try the Guelph view
43
Where is it? And one with a note…
44
COMPLEXITY LEVEL: HIGH JAVASCRIPT ADDITION ARES integration
45
ARES Integration We use Ares for Course Reserves at all three institutions Integrate ARES into PRIMO to make instructor requests simple Could use this same method to pre- populate any form for a course reserve request… or ILL request
46
ARES Integration How it works… We use JS to do the following: For items of type book, article, audio/video Add the appropriate SEND TO ARES option SCRAPE the details and then prepopulate the appropriate ARES forms
47
ARES Integration - Book
48
Method 4: Edit HTML You must have access to HTML files Add logos, customise headers/footers These are least likely to survive upgrades Be prepared to troubleshoot post upgrades
49
COMPLEXITY LEVEL: MEDIUM JAVASCRIPT ADDITION Customised Help
50
Help Doc Updates Customised discovery layer = customised help Updated screen caps Updated instructions /exlibris/primo/p4_1/ng/primo/home/syst em/tomcat/search/webapps/primo_libra ry#libweb/static_htmls/ SEARCH TIPS: /help/search.html
51
PRIMO INTEGRATION
52
Search box Add a simple DLSEARCH.DO Primo search box to Library website AODA…avoid iFRAMES
53
New Books
54
NEW NEW Books
55
New Books cont.. RSS feed integrated Pulls covers in from Google Books Can limit to LC classification range Can limit to library
56
What about you? What are some customisations you folks have done? What would you like to see? Will you share on Ex Libris Developers Network?
57
THANK YOU! Thanks for listening! If anything piqued your interest and you’d like some more info, feel free to drop me an email: roldham@uoguelph.ca roldham@uoguelph.ca @roldham
Similar presentations
© 2024 SlidePlayer.com Inc.
All rights reserved.