Shelf Map RFC

From Koha Wiki
Jump to navigation Jump to search

Shelf Map RFC

Status: unknown
Sponsored by: no-one
Developed by:
Expected for:
Bug number: Bug 737
Work in progress repository:
Description: Add maps that show the location of an item in Koha. The OPAC would be the main target, but they should of course be available in the intranet too.

This is not a concrete project yet, more an attempt to gather some ideas.


  • Show a link to the shelf map for each item, in the form of a link/button/icon next to the call number - new script

  • Textual description of where the item is located
  • img-tag to show the actual map

  • Extend this script to take a new parameter shelfmap, with the ID of a shelf map as its value
  • This will fetch the image from where it is cached and return it as an image to the browser


Don't use the shelf maps in the staff interface for the first iteration.


  • New syspref for activating shelfmaps


  • New permission for editing shelfmaps
  • Users with the permissions should only see and edit shelfmaps for their own library
  • Superlibrarian should be able to see and edit all shelfmaps

Tools > Shelfmaps

  • Maps
    • Add
    • Edit
    • Delete
  • Markers
    • Add
    • Edit
    • Delete

Call number schemes

Anyone who hangs out in the IRC channel will be familiar with "@quote 123"...

  • Start simple, add more schemes over time.
  • Dewey-number + letters seems like a good place to start?
    • E.g.: 575.01 Dar

How should the maps be generated?

Choose one to begin with, maybe add more later if needed.

Compound image on the fly

  • Take the map of the library and add the marker to it, to generate a new image.
  • Caching

JavaScript for placing markers, a la Google Maps

  • Are there Free software packages that can do this?

HTML5 Canvas

  • A bit too early, perhaps?


  • Don't think so.


What information can we use to determine the location on a map?

See Holdings data fields (9xx) for available item fields.


  • 952$b - branchcode (holdingbranch)
  • 952$j - Shelving control number
  • 952$o - Koha full call number
  • 952$y - Koha item type?
  • 952$8 - Collection code


  • ?

Examples in the wild