[OPEN-ILS-GENERAL] Copy status for reference books?

Dan Scott dan at coffeecode.net
Wed Jan 18 10:15:37 EST 2012


On Mon, Jan 16, 2012 at 02:34:41PM -0500, Mike Rylander wrote:
> 2012/1/16 Linda Jansova <skolkova at chello.cz>:
> > Hi,
> >
> > We have come across a probably more or less country-specific issue:
> >
> > In Jabok Library, reference books (i.e., books which cannot be checked out
> > and can only be read in the library) don't share the same copy location (as
> > often, though probably not always, do reference books in US libraries).
> > Rather, the books in Jabok Library are dispersed throughout the library. A
> > typical example would five copies of the book - four of them could be
> > checked out and one of them could not be. All five copies would be
> > physically located on the very same shelf - distinguished by a spine label
> > so that the user immediately sees whether he or she is able to check out the
> > particular copy.
> >
> > When it comes to Evergreen (we are currently using version 2.0.9), would you
> > recommend creating a new copy status (in Server Administration -> Copy
> > statuses) entitled (in English) say "Reference" which would be visible in
> > the OPAC and one could not place holds on it? What we need is to make it
> > more visible for the user to see whether a particular copy is a "usual" copy
> > which could be checked out whether it is a reference book... In case we use
> > the copy status as indicated, we (and the users of course) can conveniently
> > see the status below the record of the title...
> >
> > Or perhaps an entirely different solution would be better in this case?
> >
> 
> There's a Reference flag that can be set on a per-copy basis, and can
> be used to disallow holds and circulations.

Building on what Mike said, that Reference flag for copies is exposed in
the data available to BibTemplate (in the JavaScript OPAC) using the
marcxml-full data type - which is what the search result copy summaries
are built from.

So, let's peek behind the veil to see a snippet of the XML that's returned:

<holdings xmlns="http://open-ils.org/spec/holdings/v1">
  <counts>
    <count type="public" count="2" available="2" unshadow="2" transcendant="0" org_unit="1" depth="0"/>
    <count type="public" count="2" available="2" unshadow="2" transcendant="0" org_unit="105" depth="1"/>
  </counts>
  <volumes>
    <volume id="tag:open-ils.org:asset-call_number/1744485" lib="OSUL"
        opac_visible="t" deleted="f" label="QA 76.76 S46 Z55 2006">
      <copies>
        <copy id="tag:open-ils.org:asset-copy/490288"
            create_date="2006-03-14T00:00:00-0500"
            edit_date="2011-03-28T09:36:52-0400" copy_number="" circulate="t"
            deposit="f" ref="f" holdable="t" deleted="f" deposit_amount="0.00"
            price="" barcode="30007008266958" circ_modifier="BOOK" circ_as_type=""
            opac_visible="t">
          <status ident="0" opac_visible="t">Available</status>
          <location ident="142" opac_visible="t">Circulation (3rd floor)</location>
          <circlib ident="103" opac_visible="t">J.N. Desmarais Library</circlib>
          <circ_lib xmlns="http://open-ils.org/spec/actors/v1"
            id="tag:open-ils.org:actor-org_unit/103" shortname="OSUL"
            name="J.N. Desmarais Library" opac_visible="t"/>
          <monograph_parts></monograph_parts>
          <copy_notes></copy_notes>
          <statcats></statcats>
        </copy>
      </copies>
      <uris/>
      <prefix ident="-1" id="tag:open-ils.org:asset-call_number_prefix/-1" label_sortkey=""/>
      <suffix ident="-1" id="tag:open-ils.org:asset-call_number_suffix/-1" label_sortkey=""/>
      <owning_lib xmlns="http://open-ils.org/spec/actors/v1"
        id="tag:open-ils.org:actor-org_unit/103" shortname="OSUL" name="J.N. Desmarais Library"/>
    </volume>
  </volumes>
</holdings>

All of that is mostly to expose what is available to sites to fairly
easily customize displays. In your case, the <copy> element is what
you're looking for, and the "ref" attribute is what tells you whether
the reference flag has been checked off. You could then adjust the
BibTemplate code in
Open-ILS/web/opac/skin/default/xml/result/result_table.xml to check the
value of the "ref" attribute and alter the display accordingly, within
the scope of the "dojo.query('copy', vol).forEach(function (cp) {" loop.

For example, you could assign the value of copy.getAttribute('ref') to a
variable, and then within the chunk of code that determines the display
status, make it generate "Reference" instead of "Available" (or append
"Reference" to the current status string, and/or make it an HTML element
with a title attribute so that when the user hovers over it it says
"Cannot be held or circulated") or something like that.



More information about the Open-ils-general mailing list