Koha/C4/SIP
Andrew Isherwood a2449a81be
Bug 23051: (follow-up) Add renewal feedback and move code to subroutines and test
Rebasing was a nightmare, so I'm squashing the sign off follow-ups to
ease the pain with any future rebases

Includes:

Bug 23051: (follow-up) Refactor renewal code
As per Nick's first point in comment #20, the code that tests for
renewability and renews items has been refactored into it's own
function.

Bug 23051: (follow-up) Provide feedback
For renewals that fail when a fine is being paid off, this patch causes
any errors to be passed back to the template for display.
Addresses the second point in Nick's comment #20

Bug 23051: (follow-up) Fix unit tests
As raised by Nick in comment #35

Bug 23051: (follow-up) Fix/improve feedback
This follow up patch addresses the following parts of Nick's feedback in
comment #35:
- it would be nice to get feedback on what was successfully renewed as well
- In general I think I would prefer to see 'ok' and 'not_ok' returned as
a single 'renewal_results' array
- There is no listing of errors if I use the 'pay' button on an
individual fine

Bug 23051: (follow-up) Refactor methods
This follow up patch addresses the following parts of Nick's feedback in
comment #35:
- I don't really like that the functions are internal functions and then
exported
- I think the pref description should highlight that if 'RenewalPeriodBase'
is set to due date, there may be doubled charges

Bug 23051: (follow-up) Add SIP summary
This follow up patch addresses the following parts of Nick's feedback in
comment #35:
- Ideally SIP would get feedback in a screen message

Bug 23051: (follow-up) Renewing in OPAC
This follow up patch addresses the following parts of Nick's feedback in
comment #35:
- I am also not sure about the code path if a patron paid fines on the
opac (via paypal etc.) but renewals are not allowed on the opac.

We've introduced the syspref RenewAccruingItemInOpac (default is off)
which, when enabled, will cause items attached to fines that are paid
off in the OPAC (via payment plugins), to be automatically renewed.

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
2020-03-06 10:03:34 +00:00
..
ILS Bug 23051: (follow-up) Add renewal feedback and move code to subroutines and test 2020-03-06 10:03:34 +00:00
Sip Bug 23051: (follow-up) Add renewal feedback and move code to subroutines and test 2020-03-06 10:03:34 +00:00
t
acstest.py
example_institution_dump.sh
ILS.pm Bug 23051: (follow-up) Add renewal feedback and move code to subroutines and test 2020-03-06 10:03:34 +00:00
ILS.pod
interactive_item_dump.pl
interactive_patron_check_password.pl
interactive_patron_dump.pl
interactive_renew_all_dump.pl
Makefile
README
Sip.pm Bug 20292: Filter/censor info sent via SIP 2019-06-24 15:33:48 +01:00
SIPServer.pm Bug 23640: Flushing L1 on every SIP connection 2020-02-10 08:57:53 +00:00
test.txt
xmlparse.pl

README for Open NSIP 3M-SIP Server

DEPENDENCIES

SIPServer is written entirely in Perl, but it require these CPAN
perl modules to run:

     Net::Server - The SIP server is a Net::Server::Prefork server
     XML::LibXML
     XML::Parser
     XML::Simple - for parsing the config file
     UNIVERSAL::require - for loading the correct ILS interface module
     Clone - for running the test cases

LOGGING

SIPServer uses syslog() for status and debugging messages.  All
syslog messages are logged using the syslog facility 'local6'.
If you need to change this, because something else on your system
is already using that facililty, just change the definition of
'LOG_SIP' at the top of the file SIPServer.pm

Make sure to update your syslog configuration to capture facility
'local6' and record it.