koha.git
5 years agoBug 21318: Add control number as an option to search authority using Z39.50
Josef Moravec [Thu, 6 Sep 2018 09:46:35 +0000 (09:46 +0000)]
Bug 21318: Add control number as an option to search authority using Z39.50

1) Apply the patch
2) Go to administration and set up a z39.50 authority server, which does
support searching by control number (use attribute 12), you can use czech
national library server:
host: aleph.nkp.cz
port: 9991
base: aut-utf
format: MARC21
encoding: UTF-8
3) Try to find an authority by control number using z39.50 - if you use the server
recomended in point 2) there is web access to the base at
http://aleph.nkp.cz/eng/aut

Signed-off-by: Michal Denar <black23@gmail.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Fixed a typo in a code comment and a whitespace issue in the template.

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
5 years agoBug 21289: Fix "isa" bug during partner request
Andrew Isherwood [Thu, 30 Aug 2018 09:52:43 +0000 (10:52 +0100)]
Bug 21289: Fix "isa" bug during partner request

We cannot call 'handle_commit_maybe' inside a 'try' block.
handle_commit_maybe redirects the client then calls 'exit', this is
interpreted as an error and the 'catch' block is erroneously called.

This patch moves the calling of 'handle_commit_maybe' outside the try
block, it will only be reached if everything inside the try block
suceeds.

To test:
1) Enable ILL and have the FreeForm backend available
2) Create a patron category to hold ILL "partners" to whom requests can
be sent. The category can be called anything, you should note the code
you assign
3) Create a patron that belongs to your new category, the patron must
have a primary email defined.
4) In your <interlibrary_loans> block in koha-conf.xml, ensure you have
a <partner_code> element, it should contain the code you assigned in
step 2
5) Create an ILL request using the FreeForm backend
6) Once the request is created, select the "Place request with partners"
button
7) Select your "partner" from the "Select partner libraries" box
8) Click "Send email"
9) TEST: Observe no errors are displayed in the UI

Signed-off-by: Barry Cannon <bc@interleaf.ie>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
5 years agoBug 16690: Simplify SHOW GRANTS to work when connected
Mark Tompsett [Wed, 8 Jun 2016 02:48:57 +0000 (22:48 -0400)]
Bug 16690: Simplify SHOW GRANTS to work when connected

If the DB is on a remote machine, the web server and the
db server are different, but the SHOW GRANTS code in
installer/install.pl is trying to use the SAME machine.
And even if the permissions were allowed accessing from
both the web and db servers, MySQL won't return the
SHOW GRANTS without access to the mysql.user table. To
install *.* permissions became easiest to get working.
Unless the DB is set up with 'user'@'%', which is also a
potential security issue.

MySQL / MariaDB allow the current connected user to
check their own grants with CURRENT_USER.
There is no need for the installer to know the
IP address of the webserver.

This also removes the need to have permissions for
'koha_kohadev'@'%', because the only process to be
accessing the koha DB is from a known host/ip.
This tightens security too.

TEST PLAN
---------
Install 2 fresh VMs from a Debian ISO.
Make sure they are on the same network (192.168.50.x) as
the kohadevbox. You will need to remember one as DB_IPADDRESS.

On the DB VM & Third VM:
sudo apt-get install mariadb-server mariadb-client net-tools
-- the third vm just needs to be able to run mysql to access
   the DB VM.

On DB VM:
sudo vi /etc/mysql/mariadb.conf.d/50-server.cnf
-- make sure the bind-address line is commented out with a #
sudo service mariadb restart
-- congratulations, your DB server is listening to remote
   calls now.

sudo mysql -u root
CREATE DATABASE koha_kohadev;
GRANT ALL PRIVILEGES ON `koha_kohadev`.* TO 'koha_kohadev'@'localhost' IDENTIFIED BY 'password';
FLUSH PRIVILEGES;
-- now you have an empty DB ready to run a web install on.
   However, because only koha_kohadev from localhost is
   allowed, we expect failure when we try to run the web
   installation step when we get there.

Let's confirm that everything is working as expected
before trying.  It will also demonstrate the reason why
this patch is superior to the existing code.

On a kohadevbox:
mysql -u koha_kohadev -h DB_IPADDRESS -p
-- this should be denied

On DB VM:
DROP USER 'koha_kohadev'@'localhost';
GRANT ALL PRIVILEGES ON `koha_kohadev`.* TO 'koha_kohadev'@'%' IDENTIFIED BY 'password';
FLUSH PRIVILEGES;

On a kohadevbox:
mysql -u koha_kohadev -h DB_IPADDRESS -p
-- this should give you a SQL prompt
SHOW GRANTS FOR CURRENT_USER;
-- this should show two lines based on 'koha_kohadev'@'%';
SHOW GRANTS FOR 'koha_kohadev'@'192.168.50.10';
-- this should give an access denied error.
SHOW GRANTS FOR 'koha_kohadev'@'%';
-- this should show two lines based on 'koha_kohadev'@'%';
QUIT
-- This case requires the unless code currently in place,
   because we aren't checking CURRENT_USER.

On DB VM:
DROP USER 'koha_kohadev'@'%';
GRANT ALL PRIVILEGES ON `koha_kohadev`.* TO 'koha_kohadev'@'192.168.50.10' IDENTIFIED BY 'password';
FLUSH PRIVILEGES;

On a kohadevbox:
mysql -u koha_kohadev -h DB_IPADDRESS -p
-- this should give you a SQL prompt
SHOW GRANTS FOR CURRENT_USER;
-- this should show two lines based on 'koha_kohadev'@'%';
SHOW GRANTS FOR 'koha_kohadev'@'192.168.50.10';
-- this should show two lines based on 'koha_kohadev'@'192.168.50.10';
SHOW GRANTS FOR 'koha_kohadev'@'%';
-- this should give an access denied error.
QUIT
-- This case demonstrates that we have two failure points:
       1) The GRANT command by the DB Admin and
       2) The koha-conf.xml setting.
   This is why CURRENT_USER is superior: only (2) is the
   failure point.

On DB VM:
GRANT ALL PRIVILEGES ON `koha_kohadev`.* TO 'koha_kohadev'@'%' IDENTIFIED BY 'password';
FLUSH PRIVILEGES;
SELECT host,user FROM mysql.user;
-- Should see both koha_kohadev for 192.168.50.10 and %.

On a kohadevbox:
mysql -u koha_kohadev -h DB_IPADDRESS -p
-- this should give you a SQL prompt
SHOW GRANTS FOR CURRENT_USER;
-- this should show two lines based on 'koha_kohadev'@'192.168.50.10';
SHOW GRANTS FOR 'koha_kohadev'@'192.168.50.10';
-- this should show two lines based on 'koha_kohadev'@'192.168.50.10';
SHOW GRANTS FOR 'koha_kohadev'@'%';
-- this should give an access denied error.
QUIT
-- This case doesn't need the unless. CURRENT_USER still
   just works.

On an third VM on the same network:
mysql -u koha_kohadev -h DB_IPADDRESS -p
-- this should give you a SQL prompt
SHOW GRANTS FOR CURRENT_USER;
-- this should show two lines based on 'koha_kohadev'@'%';
SHOW GRANTS FOR 'koha_kohadev'@'192.168.50.10';
-- this should give an access denied error.
SHOW GRANTS FOR 'koha_kohadev'@'%';
-- this should show two lines based on 'koha_kohadev'@'%';
QUIT
-- This case demonstrates that it may be more open than a DB
   administrator would prefer. And notice, CURRENT_USER still
   just works.

On DB VM:
DROP USER 'koha_kohadev'@'192.168.50.10';
DROP USER 'koha_kohadev'@'%';
GRANT ALL PRIVILEGES ON *.* TO 'koha_kohadev'@'%' IDENTIFIED BY 'password';
FLUSH PRIVILEGES;
-- This basically give koha_kohadev free reign to do pretty
   dangerous stuff.

On an third VM on the same network:
mysql -u koha_kohadev -h DB_IPADDRESS -p
-- this should give you a SQL prompt
SHOW GRANTS FOR CURRENT_USER;
-- this should show a line based on 'koha_kohadev'@'%';
SHOW GRANTS FOR 'koha_kohadev'@'192.168.50.10';
-- this should give a no such grant error.
SHOW GRANTS FOR 'koha_kohadev'@'%';
-- this should show two lines based on 'koha_kohadev'@'%';
QUIT
-- This case demonstrates that it may be more open than a DB
   administrator would prefer. And notice, CURRENT_USER still
   just works.

In the old code, both cases were literally checked.
This tweak is an optimization which doesn't require
setting permissions to the mysql.user table. Without it,
the code says the user doesn't have permissions to check
the show grants.  This issue is not visible to the user,
because both cases are checked.

On DB VM:
SELECT host,user FROM mysql.user;
-- for each one do an appropriate DROP USER 'user'@'host';
GRANT ALL PRIVILEGES ON `koha_kohadev`.* TO 'koha_kohadev'@'192.168.50.10' IDENTIFIED BY 'password';

On kohadevbox:
-- Make sure the /etc/koha/sites/kohadev/koha-conf.xml
   points to the DB VM.
-- Make sure a web install runs correctly

On third VM:
-- Make sure unable to connect as koha_kohadev/password.

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
I have not followed the whole test plan but trusting author and SO
Changes make sense to me

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
5 years agoBug 13618: (follow-up) Pass opacuser_js from plugins as raw
Nick Clemens [Wed, 26 Sep 2018 10:17:01 +0000 (10:17 +0000)]
Bug 13618: (follow-up) Pass opacuser_js from plugins as raw

We expect this field to contain script tags, html processing breaks them

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
5 years agoBug 21416: 'gr' option missing from ZEBRA_LANGUAGE options in koha-sites.conf
Andreas Roussos [Thu, 27 Sep 2018 04:54:27 +0000 (07:54 +0300)]
Bug 21416: 'gr' option missing from ZEBRA_LANGUAGE options in koha-sites.conf

'gr' (as in 'Greek') is missing from the ZEBRA_LANGUAGE options
in debian/templates/koha-sites.conf. This patch fixes that.

Test plan:
1) view koha-sites.conf and notice how 'gr' is missing from the
   ZEBRA_LANGUAGE options
2) apply the patch
3) observe that koha-sites.conf now includes 'gr' as an option

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
5 years agoBug 21167: (QA follow-up) Use accounttype.inc for generating account description
Josef Moravec [Wed, 19 Sep 2018 08:07:57 +0000 (08:07 +0000)]
Bug 21167: (QA follow-up) Use accounttype.inc for generating account description

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
5 years agoBug 21167: (QA follow-up) Fix amount formatting on invoice receipt
Josef Moravec [Wed, 19 Sep 2018 07:53:32 +0000 (07:53 +0000)]
Bug 21167: (QA follow-up) Fix amount formatting on invoice receipt

Signed-off-by: Josef Moravec <josef.moravec@gmail.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
5 years agoBug 21167: Fix price formatting on printed fee invoice and receipt
Katrin Fischer [Wed, 8 Aug 2018 19:26:47 +0000 (19:26 +0000)]
Bug 21167: Fix price formatting on printed fee invoice and receipt

The prices were not formatted correctly on the printed receipts
for fines and payments in the patron account.

This patch introduces the use of the Price TT plugin to those
templates.

Also:
- Fixes a few capitalization errors
- Removes spaces in front of :
- Updates accounttype-to-description list to the one used
  in other templats as a lot of values were missing (Credit etc.)

To test:
- Create several fines, use some .00 and some with other values
- Pay some fines
- Create a manual credit
- Use print button for all of those (credit, fee, payment)
- Verify that:
  - prices ending in .00 are displayed without the decimal part
  - instead of Credit only C is shown in the description
- Apply patch
- Print invoices and receipts again
- Verify that:
  - prices are now formatted according to CurrencyFormat system
    preference, decimal part always included
  - verify that correct description for Credit is shown

Signed-off-by: Brendan Gallagher <brendan@bywatersolutions.com>
Signed-off-by: Josef Moravec <josef.moravec@gmail.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
5 years agoBug 20785: Advanced Editor does not honor MarcFieldDocURL
Pasi Kallinen [Fri, 24 Aug 2018 08:05:04 +0000 (11:05 +0300)]
Bug 20785: Advanced Editor does not honor MarcFieldDocURL

The advanced MARC editor, Rancor, doesn't obey MarcFieldDocURL.
Make it do so.

Test plan:

1) Enable EnableAdvancedCatalogingEditor
2) Set MarcFieldDocURL to eg. http://{MARC}.example.com/{LANG}/{FIELD}
3) Go to Cataloging -> Advanced editor
4) Go to any field and press Ctrl-H
5) Marc field documentation on www.loc.gov or ifla.org should open
6) Apply patch
7) Repeat 3 and 4. The Marc field docs should open on the URL you set

Signed-off-by: Pasi Kallinen <pasi.kallinen@joensuu.fi>
Signed-off-by: Michal Denar <black23@gmail.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
5 years agoBug 21078: overdrive.js Catch error if window.opener is not accessible
Nick Clemens [Sat, 14 Jul 2018 14:29:53 +0000 (14:29 +0000)]
Bug 21078: overdrive.js Catch error if window.opener is not accessible

To Test:
0 - Enable overdrive search results on your koha
1 - From a source develop a link to your koha instance that opens a new
window:
<a target="_blank"
href="http://localhost:8080/cgi-bin/koha/opac-search.pl?q=love">Test</a>
2 - Click that link
3 - Note Overdrive results do not load
4 - Note error in JS console
5 - Apply patch
6 - Click the link again
7 - Note OD results load
8 - Note no error in console

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
5 years agoBug 20241: Fix display of publication year in subscription record search for MARC21
Katrin Fischer [Sat, 11 Aug 2018 23:55:35 +0000 (23:55 +0000)]
Bug 20241: Fix display of publication year in subscription record search for MARC21

The old problem: UNIMARC uses biblio.publicationyear, MARC21 uses
biblio.copyrightdate. Patch adds a fallback, if there is nothing
in publicationyear, copyrightdate will be displayed.

To test:
  - In a MARC21 database
  - Add a new subscription
  - Search for records
  - Verify the publication year column remains empty
  - Apply patch
  - Repeat search
  - Verify that the year now shows

https://bugs.koha-community.org/show_bug.cgi?id=20421

Signed-off-by: Michal Denar <black23@gmail.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
5 years agoBug 21362: Advanced editor: Fix tab navigation in fixed fields
Ere Maijala [Fri, 13 Oct 2017 11:07:21 +0000 (14:07 +0300)]
Bug 21362: Advanced editor: Fix tab navigation in fixed fields

Also minor tweaks to how the fields look.

Test plan:

1. Try moving from field to field and inside control fields with tab/shift-tab.
2. Make sure focus doesn't get stuck in any position.

Signed-off-by: Michal Denar <black23@gmail.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
5 years agoBug 21396: Add 2 missing use statements in Koha::Account
Jonathan Druart [Fri, 21 Sep 2018 20:55:40 +0000 (17:55 -0300)]
Bug 21396: Add 2 missing use statements in Koha::Account

1. require C4::Letters must be use C4::Letters (from bug 19191)

2. There is call to C4::Circulation::ReturnLostItem, but no use of
C4::Circulation (from bug 20631)

Test plan:
finger crossed, I ran the tests from t/db_dependent/Koha and they all
passed

Signed-off-by: Michal Denar <black23@gmail.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
5 years agoBug 16739: Show note instead of 500 error for 'Generate EDIFACT' when no EDI account...
Jon Knight [Mon, 14 May 2018 15:30:55 +0000 (15:30 +0000)]
Bug 16739: Show note instead of 500 error for 'Generate EDIFACT' when no EDI account is configured

When a book seller (vendor) does not have EDI account information configured
the basketgroup display still shows a button to generate EDIFACT output which
results in 500 error when clicked.  This patch fixes two aspects of this:

a) it stops the button being displayed in the first place, replacing it with
a message that explains there is not EDIFACT configuration for the vendor.

b) if, somehow, an edifact print operation is passed to the basketgroup
script it detects the lack of an EAN and redirects back to the basket group
display page with a warning message.

To test:
1) Create a vendor with no EDI details.
2) Create a basket with some items in, then close it and add it to a basket
   group for this vendor.
   3) Go to that vendor's basket groups, click on the "Closed" tab and then
      click on the 'generate edifact order' button. You should get a 500 error.
   4) Apply this patch.
   5) Repeat 3, except this time you should find that the 'generate edifact
      order' button has been replaced with a note that there is
      "No EDIFACT configuration for <vendor>".

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
5 years agoBug 21398: Make search field mandatory when adding to a basket from an existing record
Jonathan Druart [Sat, 22 Sep 2018 14:08:16 +0000 (11:08 -0300)]
Bug 21398: Make search field mandatory when adding to a basket from an existing record

Test plan:
- Create a basket
- Click the "Add to basket" button
- Click "Search" on the first line
=> Without this patch you get an ugly screen: https://snag.gy/U8X3ZK.jpg
=> With this patch applied you will not be able to submit without
filling the input in

QA note: Yes, we could handle that controller side as well, but much
more work.

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
5 years agoBug 21407: Can't enter new macros in the advanced cataloging editor (rancor)
Owen Leonard [Tue, 25 Sep 2018 13:51:02 +0000 (13:51 +0000)]
Bug 21407: Can't enter new macros in the advanced cataloging editor (rancor)

This patch upgrades Codemirror to the latest version (5.40.2). Doing so
fixes a problem with the advanced cataloging editor's macro editor which
appears in the latest version of Firefox (62): The first line of the
macro editor is not visible.

To test, apply the patch and clear your browser cache if necessary.
EnableAdvancedCatalogingEditor must be set to "Enable."

- Go to Cataloging -> Advanced editor.
- Click the "Macros" toolbar button.
- In the main part of this modal window you should see a blank line
  marked "1."
- Click "New macro..."
- The editor's line 1 should now be editable. Enter text to confirm that
  it works correctly.

Signed-off-by: Michal Denar <black23@gmail.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
5 years agoBug 21297: Display public lists to existing lists when adding a new item
Jonathan Druart [Fri, 14 Sep 2018 22:56:44 +0000 (15:56 -0700)]
Bug 21297: Display public lists to existing lists when adding a new item

If there are no private lists the public lists are not displayed.

Test plan:
1) Add 10 public lists (This is when the 'More lists' menu item becomes
view-able)
2) Select an item
3) Click Add to list
4) Select 'More Lists' menu item
5) Note that 'Select an existing list' is an available option

Signed-off-by: Caroline Cyr La Rose <caroline.cyr-la-rose@inlibro.com>
Signed-off-by: Julian Maurice <julian.maurice@biblibre.com>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
5 years agoBug 16424: Compiled CSS
Nick Clemens [Fri, 28 Sep 2018 19:17:13 +0000 (19:17 +0000)]
Bug 16424: Compiled CSS

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
5 years agoBug 16424: (QA follow-up) Use Modern::Perl
Katrin Fischer [Thu, 27 Sep 2018 13:16:09 +0000 (13:16 +0000)]
Bug 16424: (QA follow-up) Use Modern::Perl

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
5 years agoBug 16424: Update default values in advanced editor when changing frameworks.
Ere Maijala [Fri, 10 Nov 2017 06:28:01 +0000 (08:28 +0200)]
Bug 16424: Update default values in advanced editor when changing frameworks.

Signed-off-by: Michal Denar <black23@gmail.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
5 years agoBug 16424: Handle framework code properly also when adding a new record
Ere Maijala [Sun, 16 Sep 2018 22:06:12 +0000 (01:06 +0300)]
Bug 16424: Handle framework code properly also when adding a new record

Signed-off-by: Michal Denar <black23@gmail.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
5 years agoBug 16424: Make the svc/bib service keep the existing framework code
Ere Maijala [Sun, 16 Sep 2018 18:39:54 +0000 (21:39 +0300)]
Bug 16424: Make the svc/bib service keep the existing framework code

Previously the framework code would have been reset when the record was saved, but that seems to have been a mistake.

Signed-off-by: Michal Denar <black23@gmail.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
5 years agoBug 16424: Minor CSS change for the advanced editor Settings menu
Ere Maijala [Sun, 16 Sep 2018 21:41:14 +0000 (00:41 +0300)]
Bug 16424: Minor CSS change for the advanced editor Settings menu

Signed-off-by: Michal Denar <black23@gmail.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
5 years agoBug 16424: Add framework support to advanced MARC editor
Ere Maijala [Sun, 16 Sep 2018 18:37:06 +0000 (21:37 +0300)]
Bug 16424: Add framework support to advanced MARC editor

Keeps the selected framework, allows selecting another and validates the record using the correct framework. Contains additional minor tweaks to display proper error messages.

To test:
1. Add a record with a non-default framework in the basic editor.
2. Switch to advanced editor and make sure the settings menu displays the correct framework.
3. Save the record and confirm that the framework code did not change.
4. Change the framework and save the record again.
5. Verify that the framework code changed.
6. Change one framework to make an extra field mandatory.
7. Make sure that the field is required in the editor when the framework above is selected but not when another framework is selected.

Signed-off-by: Michal Denar <black23@gmail.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
5 years agoBug 21377: Remove erroneous "html" filter use
Andrew Isherwood [Wed, 19 Sep 2018 08:34:21 +0000 (09:34 +0100)]
Bug 21377: Remove erroneous "html" filter use

The "html" filter that is being applied to these variable declarations
is inappropriate and has been removed.
I've also simplified things by removing two of the extraneous variable
declarations.

To test:

- Before applying the patch, on master, view the "Manage request" page
for an ILL request
- TEST: Observe that, apart from the "Edit request" button, the various
available action buttons do not display correctly
- Apply the patch
- TEST: Refresh the page and observe that the buttons now display
correctly

Signed-off-by: Owen Leonard <oleonard@myacpl.org>
Signed-off-by: Julian Maurice <julian.maurice@biblibre.com>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
5 years agoBug 20534: Floating toolbar when editing vendors
Owen Leonard [Fri, 6 Apr 2018 12:53:35 +0000 (12:53 +0000)]
Bug 20534: Floating toolbar when editing vendors

This patch moves the Save and Cancel controls on the vendor edit form
into a toolbar which sticks to the top of the screen as you scroll.

To test, apply the patch and Acquisitions -> New vendor.

- Confirm that as you scroll down the page, the toolbar with the Save
  and Cancel buttons sticks to the top of the screen.
- Test that the Save and Cancel buttons both work correctly.
- Perform the same tests when editing an existing vendor.

Signed-off-by: Maksim Sen <maksim.sen@inlibro.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
5 years agoBug 21341: Style button on acquisitions existing record search with Bootstrap
Owen Leonard [Wed, 12 Sep 2018 17:43:15 +0000 (17:43 +0000)]
Bug 21341: Style button on acquisitions existing record search with Bootstrap

This patch adds Bootstrap button styles to two links: View MARC and
Order.

Unrelated: A "modal-wide" class has been added to the View MARC modal to
give more room for the MARC view.

To test, apply the patch and go to Acquisitions -> Vendor -> Basket ->
Add to basket -> From an existing record.

In the record search results, confirm that the View MARC and Order links
are now Bootstrap buttons. Test the View MARC button and confirm that
the modal preview fills most of the screen.

Signed-off-by: Claire Gravely <claire.gravely@bsz-bw.de>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
5 years agoBug 21333: (follow-up) Make link a button
Nick Clemens [Sat, 15 Sep 2018 22:36:40 +0000 (22:36 +0000)]
Bug 21333: (follow-up) Make link a button

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
5 years agoBug 21333: Add ability to add to basket from a new file
Nick Clemens [Tue, 11 Sep 2018 16:26:04 +0000 (16:26 +0000)]
Bug 21333: Add ability to add to basket from a new file

This patch adds a workflow for adding to a basket from a file. It
removes the need to stage the file before going to the basket and allows
you to stage the file and return to the basket

To test:
1 - Have basket in acquissitions
2 - Click add to basket
3 - Note new option to 'Add from new file'
4 - Click it
5 - You will be sent to the record import tool
6 - Stage your file
7 - There is a link after staging 'Add records to basket'
8 - Click it
9 - Your items should be added

Signed-off-by: Sonia <sonia.bouis@univ-lyon3.fr>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
5 years agoBug 19620: Allow skipping of patrons with valid emails for Talking Tech
Kyle M Hall [Fri, 2 Mar 2018 16:10:12 +0000 (11:10 -0500)]
Bug 19620: Allow skipping of patrons with valid emails for Talking Tech

Some libraries want to be able to skip patrons with valid email addresses when generated outbound files for Talking Tech.

Test Plan:
1) Apply this patch
2) Run TalkingTech_itiva_outbound.pl
   Overdue will be easiest to use for testing
3) Note one or more patrons show up that have email addresses
4) Run again with -s ( or --skip-patrons-with-email )
5) Note the new file no longer has patrons with emails!

Signed-off-by: Jesse Maseto <jesse@bywatersolution.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
I did not test but changes make sense

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
5 years agoBug 7143: Update about page for new dev - Alberto Martinez
Nick Clemens [Wed, 26 Sep 2018 19:00:16 +0000 (19:00 +0000)]
Bug 7143: Update about page for new dev - Alberto Martinez

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
5 years agoBug 21350: Added icon to Pending on-site checkouts and moved
Alberto [Sun, 16 Sep 2018 22:34:37 +0000 (15:34 -0700)]
Bug 21350: Added icon to Pending on-site checkouts and moved

When pending on-site checkouts is enabled, it will display checkout items that are being used in the library

test plan:
1. Go to Koha administration
2. Search for "onSiteChekouts"
3. Enable "onSitecheckout"
4. Save all Circulation preferences
5. Go back to home page and click "Circulations"
6. Please confirm there is an icon and the link is below Fast cataloging

Signed-off-by: Séverine QUEUNE <severine.queune@bulac.fr>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Amended patch: replace tabs with 4 spaces

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
5 years agoBug 20915: Use date --iso-8601 instead of date +%Y-%m-%d
Victor Grousset [Tue, 12 Jun 2018 14:04:37 +0000 (14:04 +0000)]
Bug 20915: Use date --iso-8601 instead of date +%Y-%m-%d

In delete_patrons.pl's POD
To be more readable and crontab friendly

Signed-off-by: Mark Tompsett <mtompset@hotmail.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
5 years agoBug 20669: Add upgrade method to plugins
Kyle M Hall [Thu, 26 Apr 2018 19:07:07 +0000 (15:07 -0400)]
Bug 20669: Add upgrade method to plugins

It would be nice if plugins had an upgrade method to handle altering tables and such when a new version of a plugin is installed. Right now it must be done in a completely bespoke manner.

Test Plan:
1) Apply this patch
2) Download the 2 most recent releases of the Kitchen Sink plugin
   https://github.com/bywatersolutions/koha-plugin-kitchen-sink/releases
3) Install the earlier release
4) Look at the configuration page, at the bottom it should say the
   plugin has never been upgraded
5) Install the newer release
6) Reload the configuration page, it should now say that the plugin
   was upgraded and give you the date and time of the upgrade

Signed-off-by: Claire Gravely <claire.gravely@bsz-bw.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
5 years agoBug 21380: (QA follow-up) Use uri filter in link parameters
Josef Moravec [Thu, 20 Sep 2018 11:35:11 +0000 (11:35 +0000)]
Bug 21380: (QA follow-up) Use uri filter in link parameters

Signed-off-by: Josef Moravec <josef.moravec@gmail.com>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
5 years agoBug 21380: Circulation history UI improvements - make barcode clickable
Owen Leonard [Wed, 19 Sep 2018 14:48:08 +0000 (14:48 +0000)]
Bug 21380: Circulation history UI improvements - make barcode clickable

This patch modifies the patron circulation history template so that the
barcode of each item links to the item details page.

To test, apply the patch and view the circulation history for a patron
with multiple current or past checkouts.

In the table of titles, the barcode for each item should correctly link
to the item details page for that item.

Signed-off-by: Michal Denar <black23@gmail.com>
Signed-off-by: Josef Moravec <josef.moravec@gmail.com>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
5 years agoBug 21397: Mark "Routing list" tab as active when selected
Jonathan Druart [Fri, 21 Sep 2018 21:35:06 +0000 (18:35 -0300)]
Bug 21397: Mark "Routing list" tab as active when selected

/members/routing-lists.pl?borrowernumber=5 show the different tab of the
menu but "Routing lists" is not displayed as the selected one (active).

"routinglistview" must be set and passed to the template

Test plan:
Enable the RoutingSerials pref
and hit /members/routing-lists.pl?borrowernumber=42

The "Routing lists" tab must be selected/active

Followed test plan and tab now shows as active.
Signed-off-by: Dilan Johnpullé <dilan@calyx.net.au>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
5 years agoBug 5458: DBRev 18.06.00.032
Nick Clemens [Wed, 26 Sep 2018 16:17:06 +0000 (16:17 +0000)]
Bug 5458: DBRev 18.06.00.032

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
5 years agoBug 5458: increase ccode column to varchar 80
Fridolin Somers [Tue, 4 Sep 2018 08:40:29 +0000 (10:40 +0200)]
Bug 5458: increase ccode column to varchar 80

Koha allows you to define an authorised value having length 80, but then you
can't use it.

Here is why:
The SQL field items.ccode is a varchar(10).
The SQL field authorised_values.authorised_value is a varchar(80).
Therefore the authorised value is truncated to length 10 in items.ccode and the mapping from authorised value to description string fails in Koha.

This patch increases ccode column to varchar 80, like location.

Test plan :
1) Dont apply patches
2) Check there is on item field a subfield with authorised value category CCODE
3) Check this subfield is linked with database column items.ccode
4) Create an authorised values in category CCODE with 'DOCUMENTATION'
5) Edit an item on ccode and choose 'DOCUMENTATION'
6) Save item
7) Look at items.ccode in database or export in MARCXML
8) The value is troncated to 'DOCUMENTAT'
9) Apply patches and update database with installer/data/mysql/atomicupdate/bug_5458.sql
10) Repeate step 5 to 7
11) The value is not truncated 'DOCUMENTATION'

Signed-off-by: Michal Denar <black23@gmail.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
5 years agoBug 20023: (QA follow-up) Tiny simplification
Marcel de Rooy [Fri, 21 Sep 2018 09:38:15 +0000 (11:38 +0200)]
Bug 20023: (QA follow-up) Tiny simplification

Remove empty emails from the list rightaway.
Would be tempted to lc the params->{email} at the start btw..

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
5 years agoBug 20023: Password recovery using email should be case insensitive
Blou [Mon, 17 Sep 2018 20:34:19 +0000 (16:34 -0400)]
Bug 20023: Password recovery using email should be case insensitive

When entering an email to recover the password, a user should not have to know or remember the casing of the given email.

Test
0) enable OpacResetPassword
1) On the OPAC, click "Forgot your password"
2) Enter your email address as in your user account BUT WITH A DIFFERENT CASING
3) Submit.  This will fail.
4) Apply the patch, redo with success.

Signed-off-by: Michal Denar <black23@gmail.com>
Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
5 years agoBug 21196: Use replacement cost from the item type if not set at item level
Jonathan Druart [Mon, 13 Aug 2018 15:40:22 +0000 (12:40 -0300)]
Bug 21196: Use replacement cost from the item type if not set at item level

When circ rules are set to cap at item replacement cost, calcfine only
checks the price in the item record, not the default replacement cost by
item type.

Note: We do not take '0' into account, what if you do not want to set
a replacement cost for an item? It is how it is done in chargelostitem
so keeping the existing behaviour, but that may be considered as a bug (?)

Test plan:
- Set useDefaultReplacementCost to use
- Set a default replacement cost for a given item type
- Create an item of that type with a replacementcost=0
- Create a circ rule for that item type that accrues fines but caps at
replacement cost
- check the item out, forcing a due date in the past
- check that item in
=> Fines should have been generated

Signed-off-by: Caroline Cyr La rose <caroline.cyr-la-rose@inlibro.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
5 years agoBug 21196: Add tests
Jonathan Druart [Mon, 13 Aug 2018 15:36:41 +0000 (12:36 -0300)]
Bug 21196: Add tests

Signed-off-by: Caroline Cyr La rose <caroline.cyr-la-rose@inlibro.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
5 years agoBug 21353: (follow-up) same check for select/clear all links
Jonathan Druart [Sun, 16 Sep 2018 17:41:49 +0000 (10:41 -0700)]
Bug 21353: (follow-up) same check for select/clear all links

Signed-off-by: Séverine QUEUNE <severine.queune@bulac.fr>
Signed-off-by: Séverine QUEUNE <severine.queune@bulac.fr>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
5 years agoBug 21353: Display checkboxes to merge patron even if cannot manage lists
Jonathan Druart [Sat, 15 Sep 2018 18:02:05 +0000 (11:02 -0700)]
Bug 21353: Display checkboxes to merge patron even if cannot manage lists

When permission 'manage_patron_lists' is off, there is no checkbox on
/cgi-bin/koha/members/member.pl to merge patrons.

Test plan:
Remove permission manage_patron_lists
Add permission edit_borrowers
Search for patrons
=> Without this patch you will not be able to select patrons to merge
(checkboxes are not displayed)

Signed-off-by: Séverine QUEUNE <severine.queune@bulac.fr>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
5 years agoBug 21323: Handle multi params in redirect after login
Jonathan Druart [Fri, 14 Sep 2018 23:10:56 +0000 (16:10 -0700)]
Bug 21323: Handle multi params in redirect after login

Multi params are not handle correctly after login

Test plan:
[0] Use staff interface
[1] Use advance search and tick itemtype more than one checkbox
[2] Copy result url
[3] Logout
[4] Paste url in browser
[5] Type username and password
[6] In search result page, results limit description under breadcrumbs
will show all limits

Signed-off-by: Séverine QUEUNE <severine.queune@bulac.fr>
Signed-off-by: Julian Maurice <julian.maurice@biblibre.com>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
5 years agoBug 20223: Merge members-menu and circ-menu inc files
Owen Leonard [Fri, 29 Jun 2018 14:26:17 +0000 (14:26 +0000)]
Bug 20223: Merge members-menu and circ-menu inc files

This patch removes members-menu.inc and replaces the last functional use
of it with a call to circ-menu.inc.

An invalid use of members-menu.inc has been removed from member.tt.

To test, apply the patch and open a patron record for editing. The
sidebar menu should look correct and all sidebar links should work
correctly.

View the patrons home page and confirm that nothing has broken.

Search the Koha codebase for references to members-menu.inc. There
should be none.

Signed-off-by: Michal Denar <black23@gmail.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
5 years agoBug 21281: (QA follow-up) Introduce _add_backtics
Marcel de Rooy [Fri, 21 Sep 2018 07:15:08 +0000 (09:15 +0200)]
Bug 21281: (QA follow-up) Introduce _add_backtics

Added a (initially trivial) test in Creators/Lib.t too.
Sometimes you start something, but you end somewhere else ;)

The test seems a bit slower now (regex, lookahead, etc). But this should
not hurt label creators in daily use.
Advantages: code is even more solid, consolidated in one place and can be
tested on its own.

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
5 years agoBug 21281: Correct t/db_dependent/Creators/Lib.t failures
Mark Tompsett [Wed, 5 Sep 2018 18:41:32 +0000 (18:41 +0000)]
Bug 21281: Correct t/db_dependent/Creators/Lib.t failures

TEST PLAN
---------
1) apply first patch
2) kshell kohadev
3) prove -r -v t/db_dependent/Creators/
   -- failures
4) apply this patch
5) repeat 2,3
   -- no failures
6) run koha qa test tools

Signed-off-by: Chris Cormack <chris@bigballofwax.co.nz>
Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
5 years agoBug 21281: Surround creator_templates.rows with backquotes
Jonathan Druart [Wed, 29 Aug 2018 20:05:50 +0000 (17:05 -0300)]
Bug 21281: Surround creator_templates.rows with backquotes

'rows' is a reserved word since MariaDB 10.2.4 and MySQL
https://mariadb.com/kb/en/library/mariadb-1024-release-notes/
https://dev.mysql.com/doc/refman/8.0/en/keywords.html

Test plan:
Do not apply this patch and make sure you recreate the reported issue
Apply this patch and confirm that it is now fixed.

QA will take care for the changes in installer and test files

Signed-off-by: Chris Cormack <chris@bigballofwax.co.nz>
Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
5 years agoBug 20819: (Follow-up) Show more clearly that a user gave no consent
Marcel de Rooy [Fri, 21 Sep 2018 06:00:20 +0000 (08:00 +0200)]
Bug 20819: (Follow-up) Show more clearly that a user gave no consent

See comment60 on Bugzilla.
Although I intentionally did not want to show date and time of refusal,
we can obviously add one line saying that we already have a no.

Test plan:
Login without consent and see no additional line.
Agree and verify that you see the registered on xxx line.
Disagree and verify that you now see "You indicated recently...".

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
5 years agoBug 20743: Remove duplicated line 'See your public page'
Nick Clemens [Fri, 21 Sep 2018 11:39:30 +0000 (11:39 +0000)]
Bug 20743: Remove duplicated line 'See your public page'

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
5 years agoBug 20656: (RM follow-up) Add missing filter
Nick Clemens [Thu, 20 Sep 2018 13:35:29 +0000 (13:35 +0000)]
Bug 20656: (RM follow-up) Add missing filter

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
5 years agoBug 20656: (follow-up) Don't display title for F or FU fines (it is in description)
Nick Clemens [Sun, 16 Sep 2018 03:50:13 +0000 (03:50 +0000)]
Bug 20656: (follow-up) Don't display title for F or FU fines (it is in description)

Signed-off-by: Josef Moravec <josef.moravec@gmail.com>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
5 years agoBug 20656: Better formatting for print summary
Nick Clemens [Tue, 24 Apr 2018 20:58:50 +0000 (20:58 +0000)]
Bug 20656: Better formatting for print summary

This patch is a slightly edited c&p from boraccount.tt

1 - Manually add a credit with no notes to patron
2 - Print summary
3 - Inspect the line
4 - Note that td has extra newlines and no words
5 - Apply patch
6 - Print summary again
7 - Note better formatting

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Josef Moravec <josef.moravec@gmail.com>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
5 years agoBug 20656: Don't print lines that have no balance on print summary
Nick Clemens [Tue, 24 Apr 2018 20:57:17 +0000 (20:57 +0000)]
Bug 20656: Don't print lines that have no balance on print summary

To test:
1 - Add at least two fines to a patron
2 - Pay off one of them
3 - Print summary - all 3 lines show
4 - Apply patch
5 - Print summary - only line with balance shows

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Josef Moravec <josef.moravec@gmail.com>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
5 years agoBug 20819: (RM follow-up) Add missing filters
Nick Clemens [Thu, 20 Sep 2018 13:34:49 +0000 (13:34 +0000)]
Bug 20819: (RM follow-up) Add missing filters

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
5 years agoBug 20819: DBRev 18.06.00.031
Nick Clemens [Thu, 20 Sep 2018 13:02:20 +0000 (13:02 +0000)]
Bug 20819: DBRev 18.06.00.031

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
5 years agoBug 20819: Add consent to self-registration process
Marcel de Rooy [Thu, 31 May 2018 10:29:59 +0000 (12:29 +0200)]
Bug 20819: Add consent to self-registration process

We add a section for the GDPR consent in opac-memberentry (only for the
self-registration). Not when editing personal details.

Test plan:
[1] Enable selfregistration (with confirm) and GDPR policy.
[2] Register a new account in OPAC. Verify that the GDPR checkbox is
    required.
[3] After you submit, you should see a date in borrower_modifications
    field gdpr_proc_consent.
[4] When you confirm, verify that the consent is visible on your consents.
[5] Enable selfregistration without confirmation mail. Register again.
[6] Check your consents tab again.

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Séverine QUEUNE <severine.queune@bulac.fr>
Signed-off-by: Josef Moravec <josef.moravec@gmail.com>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
5 years agoBug 20819: Add check in get_template_and_user to enforce GDPR
Marcel de Rooy [Mon, 28 May 2018 12:59:31 +0000 (14:59 +0200)]
Bug 20819: Add check in get_template_and_user to enforce GDPR

If you choose to enforce GDPR policy, a user needs to give consent for
data processing before he does something else in the OPAC while being
logged in.

Test plan:
[1] Set GDPR_Policy to Disabled or Permissive. Usual behavior.
[2] Set to Enforced. Save a refusal on your consents. Notice that
    you are logged out when saving. When you login again, all OPAC
    requests are redirected to your consents tab.

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Séverine QUEUNE <severine.queune@bulac.fr>
Signed-off-by: Josef Moravec <josef.moravec@gmail.com>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
5 years agoBug 20819: Add your consents tab to opac-user
Marcel de Rooy [Mon, 28 May 2018 07:28:50 +0000 (09:28 +0200)]
Bug 20819: Add your consents tab to opac-user

This patch adds a consents tab to the OPAC user account menu. We now
add a GDPR section here, but it is open for future extensions. Think of
a newsletter checkbox for instance.

Script opac-patron-consent handles the tab. And now only includes some
GDPR code but is also written for more general use too.

Test plan:
[1] Set GDPR_Policy pref to Disabled. Verify that OPAC operates as usual.
[2] Set pref to Permissive. Try to save a consent or a refusal. Note that
    you are not logged out when saving a refusal.
[3] Set pref to Enforced. Save a refusal. You should be logged out.
    Log in again and verify that the consents tab shows a No.
    Note: a follow-up patch will add further enforcements.

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Séverine QUEUNE <severine.queune@bulac.fr>
Signed-off-by: Josef Moravec <josef.moravec@gmail.com>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
5 years agoBug 20819: Add Koha object classes for patron consents
Marcel de Rooy [Mon, 28 May 2018 11:05:53 +0000 (13:05 +0200)]
Bug 20819: Add Koha object classes for patron consents

Introduces Koha::Patron::Consent[s] for new table.
Adds basic CRUD test.

Test plan:
Run t/db_dependent/Koha/Patron/Consents.t

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Séverine QUEUNE <severine.queune@bulac.fr>
Signed-off-by: Josef Moravec <josef.moravec@gmail.com>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
5 years agoBug 20819: Db rev for new table patron_consent and sysprefs
Marcel de Rooy [Mon, 4 Jun 2018 11:11:58 +0000 (13:11 +0200)]
Bug 20819: Db rev for new table patron_consent and sysprefs

[1] We add table patron_consent.
It allows for future extension. We could e.g. save consent for newsletter etc.
[2] Add one field to borrower_modifications
Datetime the patron who self-registered, gave consent.
[3] Syspref PrivacyPolicyURL
[4] Syspref GDPR_Policy: enforced, permissive or disabled.

Test plan:
[1] Run the dbrev or do a new install.
[2] Look at the description of the new prefs in Administration.

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Séverine QUEUNE <severine.queune@bulac.fr>
Signed-off-by: Josef Moravec <josef.moravec@gmail.com>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
5 years agoBug 21374: Fix self registration verification
Josef Moravec [Tue, 18 Sep 2018 20:17:46 +0000 (20:17 +0000)]
Bug 21374: Fix self registration verification

Test plan:
0) Do not apply the patch
1) Set PatronSelfRegistration  to Allow
2) Set PatronSelfRegistrationVerifyByEmail to Require
3) Try to create a account using self registration and verify it (use link
    in e-mail or take the url from table mesage_queue ;)
    The verificatin url return ISE - DBIx::Class::Row::store_column(): No
    such column 'timestamp' on Koha::Schema::Result::Borrower
4) Apply the patch
5) Try to acces the verification url again - now it should work

Signed-off-by: Josef Moravec <josef.moravec@gmail.com>
Signed-off-by: Michal Denar <black23@gmail.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
5 years agoBug 13406: (RM follow-up) Add missing filter
Nick Clemens [Wed, 19 Sep 2018 14:35:41 +0000 (14:35 +0000)]
Bug 13406: (RM follow-up) Add missing filter

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
5 years agoBug 19833: Bibliographic Record => Bibliographic record
Jonathan Druart [Sun, 16 Sep 2018 17:15:10 +0000 (10:15 -0700)]
Bug 19833: Bibliographic Record => Bibliographic record

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
5 years agoBug 19833: (follow-up) Minor corrections
Owen Leonard [Fri, 16 Mar 2018 14:24:56 +0000 (14:24 +0000)]
Bug 19833: (follow-up) Minor corrections

This patch makes minor corrections to lines modified in the previous
ones.

On the biblio framework page, I have deleted this line because it didn't
make much sense before or after the change:

"Framework name, then go to MARC biblio to set MARC editor parameters"

In the web services preferences file, I reverted a change to
"deletedbiblio" because it refers to a table name.

I've also made corrections to instances of "biblio" in the following
pages, including changing "biblio number" to "biblionumber," since it
refers to a specific Koha column name.

- MARC detail page
- Help files:
  - Record matching rule;s
  - Batch item modification
  - MARC modification templates
- Export data
- Staged MARC record management

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
5 years agoBug 19833: Changing the "biblios"
Zoe Bennett [Wed, 17 Jan 2018 02:57:27 +0000 (02:57 +0000)]
Bug 19833: Changing the "biblios"

To Test:
Check the following files that all the "biblio" or "biblio record" are
now written in rull as "bibliographic record".

modules/about.tt

Corrected a single capitalization error during signoff

Signed-off-by: Owen Leonard <oleonard@myacpl.org>
Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
5 years agoBug 19833: Changing the "biblios" acqui
Grace Smyth [Wed, 17 Jan 2018 02:38:38 +0000 (02:38 +0000)]
Bug 19833: Changing the "biblios" acqui

To test:
Check the following files that all all "biblio" or "biblo record" are
now writen in full as "bibliographic record".

modules/acqui/addorderiso2709.tt:44
modules/acqui/booksellers.tt:3
modules/acqui/invoices.tt:3

Signed-off-by: Owen Leonard <oleonard@myacpl.org>
Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
5 years agoBug 19833: Changing the "biblios" - most of reports
Zoe Bennett [Wed, 17 Jan 2018 02:27:57 +0000 (02:27 +0000)]
Bug 19833: Changing the "biblios" - most of reports

To Test:
Check the following files that all the "biblio" or "biblio record" are
now written in full as "bibliographic record".

modules/reports/acquisitions_stats.tt
modules/reports/cash_register_status.tt
modules/reports/catalogue_stats.tt
modules/reports/issues_stats.tt
modules/reports/reserves_stats.tt

Signed-off-by: Owen Leonard <oleonard@myacpl.org>
Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
5 years agoBug 19833: Changing the "biblios" - most of admin
Zoe Bennett [Wed, 17 Jan 2018 01:55:34 +0000 (01:55 +0000)]
Bug 19833: Changing the "biblios" - most of admin

To Test:
Check the following files that all all "biblio" or "biblo record" are
now writen in full as "bibliographic record".

modules/admin/authtypes.tt
modules/admin/biblio_framework.tt
modules/admin/preferences/authorities.pref
modules/admin/preferences/cataloguing.pref
modules/admin/preferences/circulation.pref
modules/admin/preferences/opac.pref
modules/admin/preferences/searching.pref
modules/admin/preferences/serials.pref
modules/admin/preferences/web_services.pref
modules/admin/searchengine/elasticsearch/mappings.tt

Corrected a single capitalization error during signoff

Signed-off-by: Owen Leonard <oleonard@myacpl.org>
Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
5 years agoBug 19833: Kill the "biblios"
Charlotte Cordwell [Tue, 16 Jan 2018 22:02:20 +0000 (22:02 +0000)]
Bug 19833: Kill the "biblios"

1) Check files modules/about.tt, modules/acqui/booksellers.tt and
modules/acqui/invoices.tt for typos nad check that there are no "biblio"
and only "biblographic record".

Fixed one capitalization error during signoff.

Signed-off-by: Owen Leonard <oleonard@myacpl.org>
Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
5 years agoBug 19833: Kill all the "bibilos" - final couple
Charlotte Cordwell [Wed, 17 Jan 2018 01:55:30 +0000 (01:55 +0000)]
Bug 19833: Kill all the "bibilos" - final couple

Check the following files to see that all "biblio" or "biblio record"are changed to "bibliograhic records" and there are no typos.

modules/ill/ill-requests.tt
modules/installer/step3.tt

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
5 years agoBug 20564: Don't use system to unzip files
Nick Clemens [Tue, 10 Jul 2018 13:48:07 +0000 (13:48 +0000)]
Bug 20564: Don't use system to unzip files

To test:
1 - Setup a zip file for patron images and cover images
2 - Test each tool
3 - Get a '500 error' after upload (note images do upload and attach)
4 - Apply patch
5 - Restart all the things
6 - Test agtain, uploads should complete and results display

Signed-off-by: George Williams <george@nekls.org>
Signed-off-by: Josef Moravec <josef.moravec@gmail.com>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
5 years agoBug 7143: Update about page for new dev - Jane Sandberg
Nick Clemens [Wed, 19 Sep 2018 13:40:59 +0000 (13:40 +0000)]
Bug 7143: Update about page for new dev - Jane Sandberg

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
5 years agoBug 7143: Update history to reflect recent point releases
Martin Renvoize [Thu, 6 Sep 2018 12:58:19 +0000 (13:58 +0100)]
Bug 7143: Update history to reflect recent point releases

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
5 years agoBug 13406: (follow-up) Add styling classes to authority MARC detail display
Jane Sandberg [Sun, 16 Sep 2018 22:38:29 +0000 (22:38 +0000)]
Bug 13406: (follow-up) Add styling classes to authority MARC detail display

Signed-off-by: Jane Sandberg <sandbej@linnbenton.edu>
Amended patch: replace tab characters with spaces

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
5 years agoBug 13406: Add styling classes to authority MARC detail display
Jane Sandberg [Sun, 16 Sep 2018 18:59:40 +0000 (11:59 -0700)]
Bug 13406: Add styling classes to authority MARC detail display

When viewing authority MARC records in the staff client (detail view), the
MARC tags were not displaying with the tag_num, tag_desc, tag_ind1,
tag_ind2, and desc classes, which made it impossible to add styles
to these specific parts of a MARC tag.  This commit adds these
styles (which are the same as the classes in the bibliographic
MARC detail display).

To test:
1) Open the staff client, then click Authorities.
2) Search for an authority record.
3) Click on Details.
4) Examine some MARC fields.  Note that the entire tag title line
is in a single <div>.
5) Apply this commit.
6) Repeat steps 1-3.
7) Notice that the tag title line is now separated into several
spans, each with their own classes.

Signed-off-by: Jane Sandberg <sandbej@linnbenton.edu>
Signed-off-by: Brendan Gallagher <brendan@bywatersolutions.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
5 years agoBug 21257: (bug 13618 follow-up) Handle undef values in JS before escapeHtml call
Jonathan Druart [Fri, 24 Aug 2018 19:22:20 +0000 (16:22 -0300)]
Bug 21257: (bug 13618 follow-up) Handle undef values in JS before escapeHtml call

To test:
1 - Find an item with no collection or location defined
2 - Check it out to a patron
3 - Note you cannot view the checkouts table
4 - Check the console: TypeError: oObj.collection is null
5 - Apply patch
6 - Restart all the things
7 - Checkouts table should load

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Christopher Brannon <cbrannon@cdalibrary.org>
Signed-off-by: Chris Cormack <chris@bigballofwax.co.nz>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
5 years agoBug 21317: Compiled CSS
Nick Clemens [Sun, 16 Sep 2018 04:20:40 +0000 (04:20 +0000)]
Bug 21317: Compiled CSS

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
5 years agoBug 21317: Format long lists under Koha Team tab as columns
Owen Leonard [Wed, 5 Sep 2018 14:13:25 +0000 (14:13 +0000)]
Bug 21317: Format long lists under Koha Team tab as columns

This patch adds a couple of new CSS classes for formatting content in
columns: .columns-3 and .columns-4. The four-column class is applied to
the dev team and contributing companies lists on the about page.

The patch also modifies the style of H3 on this page to improve
readability.

Unrelated: "Nelsonville Public Library" corrected to "Athens County
Public Libraries."

To test, apply the patch and regenerate staff client CSS
(https://wiki.koha-community.org/wiki/Working_with_SCSS_in_the_OPAC_and_staff_client).

View the various tabs on the about page and confirm that everything
looks good. Confirm that the dev team and contributing companies lists
are formatted as columns.

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
5 years agoBug 13692: series link is taking you to just 800a instead of whole 800
Owen Leonard [Fri, 3 Aug 2018 15:13:57 +0000 (15:13 +0000)]
Bug 13692: series link is taking you to just 800a instead of whole 800

This patch modifies the OPAC and staff client's XSL template for the
detail page so that series links based on a traced 490 tag use both
author and series title from the 800 tag.

To test you should have multiple titles in the same series with matching
490 and 800 tags in each record. Apply the patch and restart Plack if
necessary.

View the detail page for one of the series' titles. The "Series:" link
should link to a search which uses both series title and author.
Clicking the link should return the correct results.

Test both the OPAC and staff client.

Signed-off-by: John Sterbenz <jsterben@umich.edu>
Signed-off-by: Chris Cormack <chris@bigballofwax.co.nz>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
5 years agoBug 21347: Escaped fields that should be in addorderiso2709
Chris Cormack [Fri, 14 Sep 2018 22:48:23 +0000 (22:48 +0000)]
Bug 21347: Escaped fields that should be in addorderiso2709

Test plan
1/ Stage a MARC file (if you have none staged)
2/ Create a basket in aquisitions
3/ Add an order via staged file
4/ Look at the item information tab, notice there is escaped html
5/ Apply patch
6/ Refresh page, notice it is fixed

Signed-off-by: Sonia <sonia.bouis@univ-lyon3.fr>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
5 years agoBug 20217: Compiled CSS
Nick Clemens [Sun, 16 Sep 2018 00:28:30 +0000 (00:28 +0000)]
Bug 20217: Compiled CSS

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
5 years agoBug 20217: Make header's catalog search menu into a split button
Owen Leonard [Fri, 10 Aug 2018 13:37:49 +0000 (13:37 +0000)]
Bug 20217: Make header's catalog search menu into a split button

This patch modifies the markup for the staff client header's catalog
search menu so that it mimics the behavior of a Bootstrap split button
(As seen on the cataloging home page's 'New from Z39.50' button).

To test, apply the patch, run 'yarn build' to regenerate the staff
client's CSS, and clear your browser cache.

- View any page in the staff client.
- Hover your mouse over the "Search" link in the header. It should
  trigger a hover affect on the adjacent menu link.
- Clicking the "Search" link should take you directly to the advanced
  search page.
- Clicking the adjacent menu link should display a menu containing links
  to advanced search and item search.

Signed-off-by: Claire Gravely <claire.gravely@bsz-bw.de>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
5 years agoBug 19817: (follow-up) Remove local help files + edit help feature
Jonathan Druart [Sun, 16 Sep 2018 17:25:37 +0000 (10:25 -0700)]
Bug 19817: (follow-up) Remove local help files + edit help feature

I have no idea what happened but RM did not rebase that one correctly
before pushing it ;)

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
5 years agoBug 21305: Update two-column templates with Bootstrap grid: Patron clubs
Owen Leonard [Wed, 2 May 2018 16:08:29 +0000 (16:08 +0000)]
Bug 21305: Update two-column templates with Bootstrap grid: Patron clubs

This patch modifies patron clubs templates to use the Bootstrap grid
instead of YUI.

This patch also removes obsolete "text/javascript" attributes from
<script> tags in the modified templates.

To test, apply the patch and view the following pages, confirming that
they look correct at various browser widths:

 - Tools -> Patron clubs
   - View club enrollments

Signed-off-by: Dilan Johnpullé <dilan@calyx.net.au>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
5 years agoBug 21306: Update two-column templates with Bootstrap grid: Tags
Owen Leonard [Mon, 7 May 2018 14:45:25 +0000 (14:45 +0000)]
Bug 21306: Update two-column templates with Bootstrap grid: Tags

This patch modifies the tags management templates to use the
Bootstrap grid instead of YUI.

This patch also removes obsolete "text/javascript" attributes from
<script> tags and "text/css" attributes from <style> tags in the
modified templates.

To test, apply the patch and view the following pages, confirming that
they look correct at various browser widths:

 - Tools -> Tags
   - View list of tags
   - Click tag to view the list of titles tagged with that term

Signed-off-by: Dilan Johnpullé <dilan@calyx.net.au>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
5 years agoBug 21356: Add Missing space in parcel.tt
Caroline Cyr La Rose [Sat, 15 Sep 2018 20:10:22 +0000 (16:10 -0400)]
Bug 21356: Add Missing space in parcel.tt

This patch adds a space between the user's name and 'On:'
in parcel.tt.

To test:

1) Go to Acquisitions
2) Search for a vendor
3) Create a new basket
4) Add an order to the basket
5) Close the basket
6) Receive the order
7) In the page title 'Receipt summary' notice there is no space
between the 'Received by' user name and 'On:'
8) Apply the patch
9) Refresh the page, there should now be a space

Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
5 years agoBug 21262: Do not format numbers for editing if too big
Nick Clemens [Thu, 23 Aug 2018 14:44:31 +0000 (14:44 +0000)]
Bug 21262: Do not format numbers for editing if too big

This patch copies the code from bug 15770 to the format_for_editing
sub.

It also corrects schema issue, listing the purpose for two acq columns
instead of claing unused

To test:
1 - Edit a fund
2 - Set warning at amount to: 100000000000000
3 - Save budget
4 - Try to edit - internal server error
5 - Apply patch
6 - Should be able to edit budget
7 - Number should appear unformatted

Signed-off-by: Christopher Brannon <cbrannon@cdalibrary.org>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
2 quick notes:
1. Code must be moved to a subroutine if reused later
2. It would have prefered to have the comment of the 2 DB columns on a separate patch
(even separate bug report). As it's minor and that the patch will certainly backported
I will not block it.

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
5 years agoBug 21360: Prevent IssueSlip.t to fail when run at 23:59
Jonathan Druart [Sun, 16 Sep 2018 16:49:46 +0000 (09:49 -0700)]
Bug 21360: Prevent IssueSlip.t to fail when run at 23:59

Not sure what happened on bug 15029 (Make the IssueSlip tests pass even if
launched after 23:00) but we should have tested with 23:59, not 23:50...

koha_1       |     # Looks like you planned 3 tests but ran 2.
koha_1       |
koha_1       | #   Failed test 'Issue slip'
koha_1       | #   at t/db_dependent/Members/IssueSlip.t line 294.
koha_1       | Label not found for "last SKIP" at /usr/share/perl5/Test/More.pm line 1370.
koha_1       | # Looks like your test exited with 255 just after 1.
koha_1       | [23:59:10] t/db_dependent/Members/IssueSlip.t
koha_1       | Dubious, test returned 255 (wstat 65280, 0xff00)
koha_1       | Failed 3/3 subtests

Test plan:
0/ Don't apply this patch
1/ sudo date -s "2018-09-15 23:59:00";prove t/db_dependent/Members/IssueSlip.t
=> You should get the error
2/ Apply this patch and repeat 1.
=> Tests should pass now!

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
5 years agoBug 20777: DBRev 18.06.00.030
Nick Clemens [Sat, 15 Sep 2018 21:52:47 +0000 (21:52 +0000)]
Bug 20777: DBRev 18.06.00.030

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
5 years agoBug 20777: (follow-up) Remove 'dispute' reference in /credits endpoint
Tomas Cohen Arazi [Fri, 14 Sep 2018 16:10:50 +0000 (09:10 -0700)]
Bug 20777: (follow-up) Remove 'dispute' reference in /credits endpoint

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Signed-off-by: Mark Tompsett <mtompset@hotmail.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
5 years agoBug 20777: DBIC update
Tomas Cohen Arazi [Thu, 17 May 2018 13:55:26 +0000 (10:55 -0300)]
Bug 20777: DBIC update

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Signed-off-by: Mark Tompsett <mtompset@hotmail.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
5 years agoBug 20777: Remove unused accountlines.dispute field
Tomas Cohen Arazi [Thu, 17 May 2018 13:53:55 +0000 (10:53 -0300)]
Bug 20777: Remove unused accountlines.dispute field

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Signed-off-by: Mark Tompsett <mtompset@hotmail.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
5 years agoBug 21288: DBRev 18.06.00.029
Nick Clemens [Sat, 15 Sep 2018 21:44:05 +0000 (21:44 +0000)]
Bug 21288: DBRev 18.06.00.029

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
5 years agoBug 21288: Slowness in acquisition caused by GetInvoices
Pasi Kallinen [Thu, 30 Aug 2018 08:29:54 +0000 (11:29 +0300)]
Bug 21288: Slowness in acquisition caused by GetInvoices

The SQL query done by GetInvoices is quite slow on our production server,
taking about a minute.

In the query, there's this join:

  LEFT JOIN subscription ON biblio.biblionumber = subscription.biblionumber

but there's no index on subscription.biblionumber. Adding the index speeds
up the query so it only takes up about 3 seconds.

Signed-off-by: Pasi Kallinen <pasi.kallinen@joensuu.fi>
Signed-off-by: Mark Tompsett <mtompset@hotmail.com>
Signed-off-by: Chris Cormack <chris@bigballofwax.co.nz>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
5 years agoBug 20765: Fix search for items by acqdate in label batch
Fridolin Somers [Mon, 14 May 2018 14:18:29 +0000 (16:18 +0200)]
Bug 20765: Fix search for items by acqdate in label batch

In Tools >  Label creator, when creating a batch you can add items using a search.

This search has filters on acquisition date.
Actually those filters does not work.
The create a search using CCL syntaxe to query Zebra search engine.

The cause is that operator "ge" or "le" must be before "st-date-normalized" in CCL query.
Looks like it is because of "st-date-normalized" uses "r=o" in ccl.properties.

Test plan :
1) Check in advance search you have indexed acquisition date
2) Go to Tools > Label creator
3) Click on New > Label batch
4) Click on Add item(s)
5) Enter a relevent date in "Added on or after date" and in "Added on or before date"
6) Click on "Search"
=> SUCCESS: You get results
7) Apply the patch
8) Retry the 'Add item(s)' step
=> SUCCESS: Patch doesn't change behaviour for old Zebra
9) Get rid of the patch on your working branch
10) Use the latest Zebra:
- /etc/apt/sources.list.d/indexdata.list:
deb http://ftp.indexdata.dk/debian jessie main
- Add the repo key:
  $ wget http://ftp.indexdata.dk/debian/indexdata.asc -O- | sudo apt-key add -
- Upgrade:
  $ sudo apt update; sudo apt dist-upgrade
  $ sudo koha-rebuild-zebra -f -a -b -v kohadev
  $ restart_all
11) Retry the 'Add item(s)' step
=> FAIL: No results!
9) Apply the patch, retry
=> SUCCESS: Search results!
- Sign off :-D

Signed-off-by: Maryse Simard <maryse.simard@inlibro.com>
Followed the test plan and it works.
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
It doesn't break with 2.0.59-1 (stretch/jessie), and fixes the problem
for 2.1.X.

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
5 years agoBug 21355: Prevent GetDailyQuote.t to fail when run after 23:00
Jonathan Druart [Sat, 15 Sep 2018 18:24:32 +0000 (11:24 -0700)]
Bug 21355: Prevent GetDailyQuote.t to fail when run after 23:00

Tests will fail (Jenkins run #554) if run after 23:00

 #   Failed test 'Id is correct'
 #   at t/db_dependent/Koha/GetDailyQuote.t line 72.
 #          got: 6
 #     expected: 8

 #   Failed test 'Timestamp 2018-09-15 00:44:46 is correct'
 #   at t/db_dependent/Koha/GetDailyQuote.t line 74.
 #          got: '2018-09-14 23:44:46'
 #     expected: '2018-09-15 00:44:46'
 # Looks like you failed 2 tests of 12.
 [23:44:46] t/db_dependent/Koha/GetDailyQuote.t
 Dubious, test returned 2 (wstat 512, 0x200)

Adding only 1 second will hugely reduce the risk of failure here.

It also updates a useless test (column 'quote' does not exist)

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Tested:
- Run:
  $ sudo date -s 2018-09-15T23:10:00
  $ kshell
 k$ prove t/db_dependent/Koha/GetDailyQuote.t
=> FAIL: Tests fail as patch author mentions
- Apply the patch
 k$ prove t/db_dependent/Koha/GetDailyQuote.t
=> SUCCESS: Tests pass!

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
5 years agoBug 21233: (follow-up) POD fix
Tomas Cohen Arazi [Fri, 14 Sep 2018 23:23:58 +0000 (16:23 -0700)]
Bug 21233: (follow-up) POD fix

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>