developer chicago 1-2 feb 2010 ken herold hamilton college

32
Developer Developer Chicago 1-2 Feb 2010 Ken Herold Hamilton College

Upload: holly-sherman

Post on 16-Jan-2016

213 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Developer Chicago 1-2 Feb 2010 Ken Herold Hamilton College

Developer Developer

Chicago 1-2 Feb 2010Ken Herold

Hamilton College

Page 2: Developer Chicago 1-2 Feb 2010 Ken Herold Hamilton College

Patron customizations

o Personal information data view modifiedo Forms pre-filled with the patron barcodeo Patron charged items separated by item

types to isolate ILL borrowso Charged item display data addedo Voyager ILL items linked, with a renewal

optiono Requests pending data display changed

2Ken Herold Hamilton College 1-2 Feb 2010 ExLibris Chicago Developer - Developer

Page 3: Developer Chicago 1-2 Feb 2010 Ken Herold Hamilton College

Personal information data view

Issue: Want to add barcode and mail-to link for patron corrections

Method: External xml source document is needed to match on available data, the full patron name string

Note: XML file location (/m1/..) also web pageOption: Can deliver any matched dataWish: Query xml in Oracle directly??

3Ken Herold Hamilton College 1-2 Feb 2010 ExLibris Chicago Developer - Developer

Page 4: Developer Chicago 1-2 Feb 2010 Ken Herold Hamilton College

4Ken Herold Hamilton College 1-2 Feb 2010 ExLibris Chicago Developer - Developer

Page 5: Developer Chicago 1-2 Feb 2010 Ken Herold Hamilton College

5Ken Herold Hamilton College 1-2 Feb 2010 ExLibris Chicago Developer - Developer

Page 6: Developer Chicago 1-2 Feb 2010 Ken Herold Hamilton College

userlist.xmlNightly build, as with ezproxy user list<patrons> KEY…<patron MATCH patID="1552" patName="Ken R. Herold“ USEpatBC="20000XXXXX" VALUE-OF SELECTpatGroup="FC" /> …</patrons>

6Ken Herold Hamilton College 1-2 Feb 2010 ExLibris Chicago Developer - Developer

Page 7: Developer Chicago 1-2 Feb 2010 Ken Herold Hamilton College

cl_personalInfo.xsl<xsl:variable name="patFN" select="page:page//page:element[@nameId='page.header.logout.link']/page:preText[1]"/>

<xsl:key name="patrons" match="patron" use="@patName" />

Barcode:<xsl:for-each select="document('/m1/../userlist.xml')">

<xsl:variable name="patronBC"><xsl:value-of select="key('patrons', $patFN)/@patBC" />

</xsl:variable> <xsl:value-of select="$patronBC"/>

</xsl:for-each>

7Ken Herold Hamilton College 1-2 Feb 2010 ExLibris Chicago Developer - Developer

Page 8: Developer Chicago 1-2 Feb 2010 Ken Herold Hamilton College

Forms pre-fill with patron barcode

Issue: Patron is already logged-in, do not require additional authentication

Method: Same external lookup: userlist.xmlNote: Alternate document location (http)Option: Could use cookie, but not guaranteed

point of login/securityWish: ExL would offer privacy options to patrons

in Preferences

8Ken Herold Hamilton College 1-2 Feb 2010 ExLibris Chicago Developer - Developer

Page 9: Developer Chicago 1-2 Feb 2010 Ken Herold Hamilton College

Ken Herold Hamilton College 1-2 Feb 2010 ExLibris Chicago Developer - Developer 9

Page 10: Developer Chicago 1-2 Feb 2010 Ken Herold Hamilton College

cl_requestForms.xsl <xsl:variable name="patFN" select="page:page//page:element[@nameId= 'page.header.logout.link']/page:preText[1]"/>…<xsl:key name="patrons" match="patron" use="@patName" /> <xsl:template name="doField"> …<xsl:when test="@isPassword='Y'">

<xsl:for-each select="document('http://<host:port>/userlist.xml')"> <xsl:variable name="patronBC">

<xsl:value-of select="key('patrons', $patFN)/@patBC" /> </xsl:variable>

<xsl:attribute name="type">text</xsl:attribute> <!-- to make visible --> <xsl:attribute name="id"></xsl:attribute> <xsl:attribute name="value">

<xsl:value-of select="$patronBC"/> </xsl:attribute>

</xsl:for-each></xsl:when>… </xsl:template>

10Ken Herold Hamilton College 1-2 Feb 2010 ExLibris Chicago Developer - Developer

Page 11: Developer Chicago 1-2 Feb 2010 Ken Herold Hamilton College

Patron charged items for ILL

Issue: Items from other libraries cannot be managed in the default display, i.e. renewals and due dates

Method: Replicate template and test for item type (ILL borrow)

Note: very local in practiceOption: Could test other available xmlWish: ExL would make all display fields,

columns, labels selectable variables

11Ken Herold Hamilton College 1-2 Feb 2010 ExLibris Chicago Developer - Developer

Page 12: Developer Chicago 1-2 Feb 2010 Ken Herold Hamilton College

12Ken Herold Hamilton College 1-2 Feb 2010 ExLibris Chicago Developer - Developer

Page 13: Developer Chicago 1-2 Feb 2010 Ken Herold Hamilton College

13Ken Herold Hamilton College 1-2 Feb 2010 ExLibris Chicago Developer - Developer

Page 14: Developer Chicago 1-2 Feb 2010 Ken Herold Hamilton College

cl_myAccount.xslWithin <xsl:for-each select="page:item"> loops:

displayChargedItems template:<xsl:variable name="iT" select="page:itemType"/>

<xsl:if test="$iT != 'ILL borrow'">…does regular display…

displayILLBorrows new template:<xsl:variable name="iT" select="page:itemType"/>

<xsl:if test="$iT = 'ILL borrow'">…does custom display without checkboxes

14Ken Herold Hamilton College 1-2 Feb 2010 ExLibris Chicago Developer - Developer

Page 15: Developer Chicago 1-2 Feb 2010 Ken Herold Hamilton College

Charged item display data added

Issue: Bug Report 16384-4289 and Customer Incident 16384-89210; only item title showing

Method: Pseudo web service using PHPNote: No local performance problems—could

bury large/other sites??Option: Do we really want to be doing this? Wish: ExL would open display options to full

range of item data available

15Ken Herold Hamilton College 1-2 Feb 2010 ExLibris Chicago Developer - Developer

Page 16: Developer Chicago 1-2 Feb 2010 Ken Herold Hamilton College

16Ken Herold Hamilton College 1-2 Feb 2010 ExLibris Chicago Developer - Developer

Page 17: Developer Chicago 1-2 Feb 2010 Ken Herold Hamilton College

17Ken Herold Hamilton College 1-2 Feb 2010 ExLibris Chicago Developer - Developer

Page 18: Developer Chicago 1-2 Feb 2010 Ken Herold Hamilton College

cl_myAccount.xslWithin charged item and ILL borrows templates:

<xsl:variable name="wsill">http://<host:port>/itemid.php?<xsl:value-of select="page:itemId"/></xsl:variable>

<td id="tableCell" headers="cellChargedItem"> <xsl:value-of select="page:title"/> <xsl:value-of select="document($wsill)"/>

</td>

18Ken Herold Hamilton College 1-2 Feb 2010 ExLibris Chicago Developer - Developer

Page 19: Developer Chicago 1-2 Feb 2010 Ken Herold Hamilton College

itemid.php…SELECT DISTINCT

item_barcode.item_barcode, mfhd_master.display_call_no,

mfhd_item.item_enum…$answer .= ' ' . OCIResult($iStatement,$i);…// Build the xml output

$xml_output = "<?xml version=\"1.0\"?>\n";$xml_output .= "<result>\n";$xml_output .= $answer . "\n";$xml_output .= "</result>";echo $xml_output;

…19Ken Herold Hamilton College 1-2 Feb 2010

ExLibris Chicago Developer - Developer

Page 20: Developer Chicago 1-2 Feb 2010 Ken Herold Hamilton College

Voyager ILL items linked

Issue: Can we provide Voyager ILL data for patrons at the Web Voyage patron page?

Method: Write link to PHP page sourced by MS Access database, keyed by patron_id

Note: Non-secure hiding of patron_id Option: Could load patron_id as PIN in Ariel to

retrieve from FTP document delivery siteWish: ExLibris include VoyILL in vwebv APIs

20Ken Herold Hamilton College 1-2 Feb 2010 ExLibris Chicago Developer - Developer

Page 21: Developer Chicago 1-2 Feb 2010 Ken Herold Hamilton College

VoyagerILL Data

• Hosted on Windows 2003 R2 server• MS Access 2003 database• Cliodata.mdb copied nightly: Borrows table • System DSN Data Source: cliodata_copy.mdb• Borrows table structure includes patron_id• Weeded nightly to latest 90 days • Existing PHP reporting

21Ken Herold Hamilton College 1-2 Feb 2010 ExLibris Chicago Developer - Developer

Page 22: Developer Chicago 1-2 Feb 2010 Ken Herold Hamilton College

Patron lookup in VoyagerILL, using PHP

22Ken Herold Hamilton College 1-2 Feb 2010 ExLibris Chicago Developer - Developer

Page 23: Developer Chicago 1-2 Feb 2010 Ken Herold Hamilton College

myAccount

23Ken Herold Hamilton College 1-2 Feb 2010 ExLibris Chicago Developer - Developer

Page 24: Developer Chicago 1-2 Feb 2010 Ken Herold Hamilton College

24Ken Herold Hamilton College 1-2 Feb 2010 ExLibris Chicago Developer - Developer

Page 25: Developer Chicago 1-2 Feb 2010 Ken Herold Hamilton College

cl_myAccount.xsl<xsl:key name="patrons" match="patron" use="@patName" />

<xsl:template name="displayILLData">... <xsl:for-each select="document('/m1/…/userlist.xml')">

<xsl:variable name="patronID"><xsl:value-of select="key('patrons', $patFN)/@patID" />

</xsl:variable> <form action="http://<serverIP>/../alex2clio.php" method="post" target="_blank"> <input type="hidden" name="glomf" value="{$patronID}" /> <input type="submit" name="sendit" value="VIEW" /> </form>

</xsl:for-each>…</xsl:template>

25Ken Herold Hamilton College 1-2 Feb 2010 ExLibris Chicago Developer - Developer

Page 26: Developer Chicago 1-2 Feb 2010 Ken Herold Hamilton College

Requests pending data display

Issue: Bug Report 16384-6769 and Customer Incident 16384-125640; statuses and dates not accurate or updating

Method: PHP modifies ‘page:status’Note: Title info insufficient to matchOption: Want to report full citation, tooWish: ExL would further integrate Voyager ILL

and Tomcat Web Voyage

26Ken Herold Hamilton College 1-2 Feb 2010 ExLibris Chicago Developer - Developer

Page 27: Developer Chicago 1-2 Feb 2010 Ken Herold Hamilton College

myAccount Page – Requests Pending

• Not displaying full status information, only an expire date

• Copy and Loan requests from ILL are correctly populating with some data

• When Copy requests are satisfied, they are not moving to Requests Available section

• Loan requests correctly move to the Charged Items section when charged

• Statuses for Copy and Loan requests are not being reported other than an expire date

27Ken Herold Hamilton College 1-2 Feb 2010 ExLibris Chicago Developer - Developer

Page 28: Developer Chicago 1-2 Feb 2010 Ken Herold Hamilton College

Ken Herold Hamilton College 1-2 Feb 2010 ExLibris Chicago Developer - Developer 28

Would like to add selected fields below to bare title; full citation for articles, books, book chapters—

no xml is available on which to match

Page 29: Developer Chicago 1-2 Feb 2010 Ken Herold Hamilton College

29Ken Herold Hamilton College 1-2 Feb 2010 ExLibris Chicago Developer - Developer

Page 30: Developer Chicago 1-2 Feb 2010 Ken Herold Hamilton College

cl_myAccount.xsl<xsl:template name="displayPendingRequests"> …<xsl:variable name="ws3"> http://<host:port>/statusfix.php?st= <xsl:value-of select="page:status"/></xsl:variable> …<td id="tableCell" headers="cellRequestStatus">

<xsl:value-of select="document($ws3)"/>&#160; <!--xsl:value-of select="page:status"/>&#160;-->

</td> …</xsl:template> …

Ken Herold Hamilton College 1-2 Feb 2010 ExLibris Chicago Developer - Developer 30

Page 31: Developer Chicago 1-2 Feb 2010 Ken Herold Hamilton College

statusfix.php<?

$entry = $_GET['st'];

$bad1 = '/Expires/';$bad2 = '/12:00:00/';

$answer = preg_replace($bad1,'',$entry);$answer = preg_replace($bad2,'',$answer);$answer = preg_replace('/:/','',$answer);

// Build the xml output$xml_output = "<?xml version=\"1.0\"?>\n";$xml_output .= "<result>\n";

$xml_output .= $answer . "\n";

$xml_output .= "</result>";

echo $xml_output; ?>

Ken Herold Hamilton College 1-2 Feb 2010 ExLibris Chicago Developer - Developer 31

Page 32: Developer Chicago 1-2 Feb 2010 Ken Herold Hamilton College

…exit;

// Thank You!

// [email protected]

Ken Herold Hamilton College 1-2 Feb 2010 ExLibris Chicago Developer - Developer 32