Bugzilla – Attachment 68418 Details for
Bug 7317
Add an Interlibrary Loan Module to Circulation and OPAC
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Help
|
New Account
|
Log In
[x]
|
Forgot Password
Login:
[x]
ILL overview & light documentation
intro.txt (text/plain), 4.96 KB, created by
Alex Sassmannshausen
on 2017-10-23 15:20:35 UTC
(
hide
)
Description:
ILL overview & light documentation
Filename:
MIME Type:
Creator:
Alex Sassmannshausen
Created:
2017-10-23 15:20:35 UTC
Size:
4.96 KB
patch
obsolete
>Alex Sassmannshausen > > >Table of Contents >âââââââââââââââââ > >1 ILL for brave souls >.. 1.1 Impact on Koha >.. 1.2 Installing the module >.. 1.3 Architecture > > >1 ILL for brave souls >âââââââââââââââââââââ > > The interlibrary loans module provides a general framework for > managing interlibrary loans in different contexts. > > It has a very general idea of what is involved in managing > interlibrary loan requests: > ⢠Requests should be placeable in Koha > ⢠Details of these requests should be kept in Koha > ⢠Users should be able to find out the status of their requests in > Koha > ⢠A request's journey, from placement to return, should be trackable > in Koha. > > The way the module implements this is by creating a database structure > for storing requests and their status, and by providing a 'language' > to describe ILL workflows and stages. > > We can then delegate to individual backends that make use of this > language to actually satisfy the ILL journey. > > >1.1 Impact on Koha >ââââââââââââââââââ > > The interlibrary loans module is largely an isolated module: it > operates on 2 tables (illrequests and illrequestattributes), and > simply adds a few links to existing Koha pages. > > Outside of this, the module simply operates in its own template, > script and module files. Specifically, we touch: > ⢠api/v1/swagger/paths.json to add an ILL REST API > ⢠/etc/koha-conf.xml to add some ILL configuration > ⢠circ-menu.inc to add a link to the ILL module > ⢠intranet-main.tt to add a link to the ILL module > ⢠usermenu.inc as above > ⢠opac-results & opac-results-grouped to add ILL recommendations > > The trivial nature of these changes to core Koha code should mean that > the chance of regressions in Koha is minimal. > > The ILL module does add a new, substantial amount of code, and this > code will need to be maintained into the future. Hopefully the > extensive unit tests will automatically detect breakage as a result of > core Koha code changes. > > >1.2 Installing the module >âââââââââââââââââââââââââ > > Installing the ILL module consists of 2 phases: > 1) install the module patch set â there should be at most trivial > merge conflicts > 2) install backends of choice. > > You can see what backends are currently available at: > [https://wiki.koha-community.org/wiki/ILL_backends] > > You will need to install at least one backend for the module to work. > If you just want to give it a spin I would suggest you use the Dummy > backend for now. If you want to experiment in a specific context then > feel free to install one of the other backends. > > Backends need to be installed in a specific folder: > > âââââ > â > â cd $koha_code_dir/Koha/ > â mkdir Illbackends > â cd Illbackends > â git clone $uri_to_backend > â > âââââ > > Once this is done you should be able to enable the backend module, > browse to the ILL interface (which should have appeared on > intranet-main if you have sufficient privileges), and create a new > request using one of the backends you installed. > > Some backends may well require additional configuration. There is > currently no standardised way to handle this, so the backend of your > choice may be able to help you with this. > > >1.3 Architecture >ââââââââââââââââ > > The ILL module adds 2 new Koha objects: Illrequests and > Illrequestattributes. The former stores information about requests > that are needed by the module to provide a core Koha user experience. > The latter is a key value data store that can be used in arbitrary > ways by a given backend. Data in this store is always associated with > a specific request and keyed on a 'name' for the value. > > A backend needs to provide 3 things: > 1) a Base.pm file that implements core methods (see the Dummy backend > for a comprehensive example). > 2) an intranet templates directory that contains 1 template toolkit > snippet file for each of the core methods > 3) an OPAC templates directory as above > > The OPAC template directory only needs to provide snippets for those > parts of the user journey that are available in the OPAC. > > The module provides extensibility & flexibility through 4 mechanisms > (please see the dummy backend for an illustration of these): > ⢠status_graphs allow for a backend to add new methods to the core ILL > methods > ⢠custom stages associated with each method (whether core or custom) > allow for a virtually arbitrary expansion of methods to encompass a > great variety of workflows. > ⢠custom 'status change' updates can trigger actions specific to a > given backend, almost like hooks of code that run at pre-defined > times (when a request changes from, e.g. NEW to PROCESSING) > ⢠optional capabilities, such as unmediated ILL are provided as part > of the core module, but don't have to be implemented by a specific > backend
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Raw
Actions:
View
Attachments on
bug 7317
:
59893
|
59894
|
59895
|
59920
|
60485
|
60486
|
60487
|
60488
|
63081
|
63082
|
63083
|
63084
|
63085
|
63086
|
63087
|
63088
|
63089
|
63090
|
63113
|
63175
|
63176
|
63354
|
63421
|
63472
|
63475
|
65469
|
65470
|
65471
|
65472
|
65473
|
65474
|
65475
|
65476
|
66266
|
67242
|
67243
|
67244
|
67245
|
67246
|
67247
|
67248
|
67249
|
67250
|
67251
|
67252
|
67253
|
67254
|
67255
|
67256
|
67257
|
67258
|
67259
|
67260
|
67261
|
67262
|
67263
|
67264
|
67281
|
67282
|
67283
|
67284
|
67285
|
67286
|
67287
|
67288
|
67289
|
67290
|
67291
|
67292
|
67293
|
67294
|
67295
|
67296
|
67297
|
67298
|
67299
|
67300
|
67301
|
67302
|
67303
|
68185
|
68186
|
68328
|
68391
|
68406
|
68407
|
68408
|
68409
| 68418 |
68444
|
68445
|
68483
|
68484
|
68485
|
68487
|
68516
|
68517
|
68518
|
68519
|
68520
|
68521
|
68522
|
68523
|
68524
|
68525
|
68542
|
68543
|
68544
|
68545
|
68546
|
68547
|
68548
|
68549
|
68550
|
68551
|
68552
|
68558
|
68559
|
68560
|
68561
|
68562
|
68563
|
68564
|
68565
|
68566
|
68567
|
68858
|
68874
|
68877
|
68878
|
68885
|
68886
|
68921
|
68922
|
68926
|
68927
|
68928
|
68929
|
68931
|
68932
|
68933
|
68988
|
68989
|
68999
|
69000
|
69006
|
69008
|
69009
|
69012
|
69014
|
69044
|
69045
|
69046
|
69056
|
69059
|
69060
|
69061
|
69063
|
69064
|
69065
|
69066
|
69069
|
69070
|
69071
|
69074