90 likes | 224 Views
Auto-Populating an ILL form using OpenURL and JavaScript. Sarah G. Park Web Development/Reference Librarian/Instructor. How It Works:. How It Worked: . No full-text is found? Want a copy? Please type in the information. Problems? Inaccurate information Extra work. Research:.
E N D
Auto-Populating an ILL form using OpenURL and JavaScript Sarah G. Park Web Development/Reference Librarian/Instructor
How It Worked: No full-text is found? Want a copy? Please type in the information • Problems? • Inaccurate information • Extra work
Research: • OpenURL = A URL embedding citation information • BaseURL+ Description URL • http://www.nwmissouri.edu/library/ill/photocopy.htm?issn=0001253X&title=Aslib+proceedings&volume=64&issue=5&date=2012-09-01&atitle=Promoting+African+indigenous+knowledge+in+the+knowledge+economyExploring+the+role+of+higher+education+and+libraries.&spage=540&pages=&aulast=Moahi%2C+Kgomotso+H. • Auto-Populating an ILL from with the Serial Solutions Link Resolver API by Daniel Talsky
Problem: • “The most reliable way to extract this information from the query string and place it into your ILL form is by using a server-side scripting language like ASP/VBScript, PHP, Perl, JSP, or ColdFusion” (SerialsSolutions, 2008). • Solutions listed above require programming knowledge, server side configuration, and/or extra software
Then What? • Client-side scripting (such as JavaScript) + HTML Form • A Support Call to SerialsSolutions • A URL from 360Link • http://www.nwmissouri.edu/library/ill/photocopy.htm?issn=15480666&title=International+journal+of+knowledge+management&volume=8&issue=1&date=2012-01-01&atitle=Knowledge+Bases+Over+Algebraic+Models%3A+Some+Notes+About+Informational+Equivalence.&spage=22&pages=&sid=EBSCO%3ALibrary%2C+Information+Science+%26+Technology+Abstracts&aulast=Knyazhansky%2C+Marina&genre=article
The Secret JavaScript Code function getUrlVars() { todayDate(); varvars = {}; var parts = window.location.href.replace(/[?&]+([^=&]+)=([^&]*)/gi, function(m,key,value) { vars[key] = value; }); try { document.forms["IIRequest"].Periodical.value = decode(vars["title"]); document.forms["IIRequest"].Volume.value = decode(vars["volume"]); document.forms["IIRequest"].Number.value = decode(vars["issue"]); document.forms["IIRequest"].PerDate.value = decode(vars["date"]); if (decode(vars["pages"]) == "") document.forms["IIRequest"].Pages.value = decode(vars["spage"]); else document.forms["IIRequest"].Pages.value = decode(vars["pages"]); document.forms["IIRequest"].Author.value = decode(vars["aulast"]); document.forms["IIRequest"].Title.value = decode(vars["atitle"]); document.forms["IIRequest"].ISSN.value = decode(vars["issn"]); } catch(e){}; }
Any Question or Comment? Sarah G. Park Web Development/Reference Librarian gopark@nwmissouri.edu