Commit Graph

25271 Commits

Author SHA1 Message Date
Jonathan Druart 8d0a57f524 Bug 15840: Catch errors if userid already exists when importing patrons
Import borrowers tool explodes if userid already exists. This error
should be caught to avoid the script to explodes.

TEST PLAN
---------
1) back up DB
2) drop DB, create empty DB
3) Apply patch 15842
4) web install all the sample data
5) login as system user and import patron data
   -- sample provided to trigger error.
   -- you will get a DBIx::class exception
      "Duplicate entry ' for key 'userid'"
6) Apply this patch
7) Repeat steps 2-5
   -- patrons won't be inserted but an error
      will be nicely displayed in the error list.
8) run koha qa test tools

Note that it would be easy to insert the patrons anyway and generate a
userid based on the surname and firstname.

Signed-off-by: Mark Tompsett <mtompset@hotmail.com>

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>

Signed-off-by: Brendan Gallagher brendan@bywatersolutions.com
(cherry picked from commit f1e156453a)
Signed-off-by: Julian Maurice <julian.maurice@biblibre.com>
2016-03-23 08:06:46 +01:00
Jonathan Druart 25fdc18f77 Bug 11998: Clear L1 cache from psgi files
Signed-off-by: Tomas Cohen Arazi <tomascohen@unc.edu.ar>
Signed-off-by: Jacek Ablewicz <abl@biblos.pk.edu.pl>

Signed-off-by: Brendan Gallagher brendan@bywatersolutions.com
(cherry picked from commit 55b78f1a5d)
Signed-off-by: Julian Maurice <julian.maurice@biblibre.com>
2016-03-23 07:55:53 +01:00
Jonathan Druart d786b63fb5 Bug 11998: Add a L1 cache for sysprefs
Accessing to the cache for each call to C4::Context->preference might
have an impact on performances.
To avoid that this patch introduces a L1 cache (simple hashref). It will
be populated by accessing the L2 cache (Koha::Cache).
If a pref is retrieved 10x, the first one will get the value from the L2
cache, then the L1 cache will be check.
To do so we will need to clear the L1 cache every time a page is loaded.

Signed-off-by: Tomas Cohen Arazi <tomascohen@unc.edu.ar>
Signed-off-by: Jacek Ablewicz <abl@biblos.pk.edu.pl>

Signed-off-by: Brendan Gallagher brendan@bywatersolutions.com
(cherry picked from commit 47fbbb7cf5)
Signed-off-by: Julian Maurice <julian.maurice@biblibre.com>
2016-03-23 07:55:51 +01:00
Jonathan Druart 8c2186b402 Bug 11998: follow-up for the debian package psgi file
Signed-off-by: Tomas Cohen Arazi <tomascohen@unc.edu.ar>
Signed-off-by: Jacek Ablewicz <abl@biblos.pk.edu.pl>

Signed-off-by: Brendan Gallagher brendan@bywatersolutions.com
(cherry picked from commit 2eaf2cd71b)
Signed-off-by: Julian Maurice <julian.maurice@biblibre.com>
2016-03-23 07:55:48 +01:00
Jonathan Druart 748b3d5522 Bug 11998: Revert "Bug 13805: (Plack) Disable syspref cache"
This reverts commit ca00f0ddae.

Bug 13805 fixes an installer bug by disabling the syspref cache.
It was not a good idea, it introduced performance issues (see bug 13805
comment 14).

Test plan:
Test plan:
0/ Create a new database and fill the database entry in the koha conf
with its name
1/ Go on the mainpage, you should be redirected to the installer
2/ Try to log in
You should not get the login form again.

Signed-off-by: Tomas Cohen Arazi <tomascohen@unc.edu.ar>
Signed-off-by: Jacek Ablewicz <abl@biblos.pk.edu.pl>
Test plan not followed by me for this patch, due to lack of working
plack setup, but I don't expect it to cause any problems, and performace
gain for plack will be tremendous

Signed-off-by: Brendan Gallagher brendan@bywatersolutions.com
(cherry picked from commit d4039ce093)
Signed-off-by: Julian Maurice <julian.maurice@biblibre.com>
2016-03-23 07:55:44 +01:00
Jonathan Druart 38820140fc Bug 11998: Do not clear syspref cache in psgi file
This in only in koha.psgi, it has been introduced by bug 13815 but
should not have been added by this patch.

Removing it should not introduce any changes.
Not that it won't impact debian packages.

Signed-off-by: Tomas Cohen Arazi <tomascohen@unc.edu.ar>
Signed-off-by: Jacek Ablewicz <abl@biblos.pk.edu.pl>

Signed-off-by: Brendan Gallagher brendan@bywatersolutions.com
(cherry picked from commit f25e3ed90b)
Signed-off-by: Julian Maurice <julian.maurice@biblibre.com>
2016-03-23 07:55:39 +01:00
Jonathan Druart dcf02d0a1a Bug 11998: Make HoldsQueue.t tests pass [TO REVERT]
This patch should not be the way to make these tests pass.
The prefs should not be updated using set_preference, it will modify the
values in the cache.

I have no idea how to make them pass using the correct way, please help
:)

Signed-off-by: Tomas Cohen Arazi <tomascohen@unc.edu.ar>
Signed-off-by: Jacek Ablewicz <abl@biblos.pk.edu.pl>

Signed-off-by: Brendan Gallagher brendan@bywatersolutions.com
(cherry picked from commit 3907401a6d)
Signed-off-by: Julian Maurice <julian.maurice@biblibre.com>
2016-03-23 07:55:35 +01:00
Jonathan Druart 65b1618e9c Bug 11998: Use C4::Context->preference in Koha/Schema/Result/Item.pm
Otherwise some tests won't pass

Signed-off-by: Tomas Cohen Arazi <tomascohen@unc.edu.ar>
Signed-off-by: Jacek Ablewicz <abl@biblos.pk.edu.pl>

Signed-off-by: Brendan Gallagher brendan@bywatersolutions.com
(cherry picked from commit a691e88a4e)
Signed-off-by: Julian Maurice <julian.maurice@biblibre.com>
2016-03-23 07:53:27 +01:00
Jonathan Druart e6b03cf3a0 Bug 11998: Use t::lib::Mocks::mock_preference in tests
Unless in t/db_dependent/Context.t where we want to test the cache
behaviors.

Signed-off-by: Tomas Cohen Arazi <tomascohen@unc.edu.ar>
Signed-off-by: Jacek Ablewicz <abl@biblos.pk.edu.pl>

Signed-off-by: Brendan Gallagher brendan@bywatersolutions.com
(cherry picked from commit 56a782c666)
Signed-off-by: Julian Maurice <julian.maurice@biblibre.com>
2016-03-23 07:51:29 +01:00
Jonathan Druart c65c69a4cb Bug 11998: Use Koha::Cache to cache sysprefs
At the moment, the sysprefs are only cache in the thread memory
executing the processus
When using Plack, that means we need to clear the syspref cache on each
page.
To avoid that, we can use Koha::Cache to cache the sysprefs correctly.

A big part of the authorship of this patch goes to Robin Sheat.

Test plan:
1/ Add/Update/Delete local use prefs
2/ Update pref values and confirm that the changes are correctly taken
into account

Signed-off-by: Chris <chrisc@catalyst.net.nz>

Signed-off-by: Josef Moravec <josef.moravec@gmail.com>
Tested with plack with syspref cache enabled, there is some time between setting the syspref and applying it, but it takes just one reload of page, it shouldn't be problem, should it?
Signed-off-by: Tomas Cohen Arazi <tomascohen@unc.edu.ar>

Signed-off-by: Jacek Ablewicz <abl@biblos.pk.edu.pl>
Tested with CGI and CGI + memcache; some small issues still remain,
but it would be better to deal with them in separate bug reports
if necessary

Signed-off-by: Brendan Gallagher brendan@bywatersolutions.com
(cherry picked from commit 9820f9dfbd)
Signed-off-by: Julian Maurice <julian.maurice@biblibre.com>
2016-03-23 07:41:27 +01:00
Jonathan Druart 0d904b655e Bug 15163: Do not erase patron attributes if limited to another library
The patron attributes displayed on editing a patron are not displayed if
limited to another library.

C4::Members::Attributes::SetBorrowerAttributes will now only delete attributes
the librarian is editing.
SetBorrowerAttributes takes a new $no_branch_limit parameter. If set,
the branch limitations have not effect and all attributes are deleted
(same behavior as before this patch).

Test plan:
1/ Create 2 patron attributes, without branch limitations.
2/ Edit a patron and set a value for these attributes
3/ Limit a patron attributes to a library (one you are not logged in
with).
4/ Edit again the patron.
=> You should not see the limited attributes
5/ Edit the patron attributes and remove the branch limitation
=> Without this patch, it has been removed from the database and is not
displayed anymore.
=> With this patch, you should see it.

Signed-off-by: Jesse Weaver <jweaver@bywatersolutions.com>

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>

Signed-off-by: Brendan Gallagher brendan@bywatersolutions.com
(cherry picked from commit 4a3404594f)
Signed-off-by: Julian Maurice <julian.maurice@biblibre.com>
2016-03-23 07:38:54 +01:00
Jonathan Druart f9b25894dd Bug 16054: Fix variable scope error in paycollect.pl
$borrower, $borrowernumber and $template and not visible in the
subroutine.
Using $b_ref and passing $template fixes the issue.

Test plan:
Under plack, use the pay selected button.
On the paycollect page, you should see the image of the patron

It certainly fixes some other bugs.

Signed-off-by: Srdjan <srdjan@catalyst.net.nz>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>

Signed-off-by: Brendan Gallagher brendan@bywatersolutions.com
(cherry picked from commit da21ad0659)
Signed-off-by: Julian Maurice <julian.maurice@biblibre.com>
2016-03-17 08:53:28 +01:00
Jesse Weaver d409b43752 Bug 15446: Update DB rev (3.22.04.003)
Signed-off-by: Julian Maurice <julian.maurice@biblibre.com>
2016-03-14 11:20:13 +01:00
Jonathan Druart 88e14c04e5 Bug 15446: Update systempreferences rows where type=YesNo and value=''
Signed-off-by: Marc Véron <veron@veron.ch>

Amended to fix typo in sql statement.

Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>

Signed-off-by: Jesse Weaver <jweaver@bywatersolutions.com>
(cherry picked from commit 1427cacfe7)
Signed-off-by: Julian Maurice <julian.maurice@biblibre.com>
2016-03-14 11:10:29 +01:00
Jonathan Druart 7847081c52 Bug 15446: Rename Koha::Object[s]->type with _type
In a few case (at least systempreferences and export_format (csv profiles),
the type method of Koha::Object and Koha::Objects can be in conflict with the
column names.
Indeed systempreferences.type exists and so the method will return
'Systempreference' (the name of the module) instead of the value of the row in
DB.

I have found at least 1 place where it can cause issue:
In C4::Context->set_preference:
 601     my $syspref = Koha::Config::SysPrefs->find( $var );
 602     my $type = $syspref ? $syspref->type() : undef;
 603
 604     $value = 0 if ( $type && $type eq 'YesNo' && $value eq '' );

type will always be 'Systempreference' and the YesNo pref will be set to an
empty string '' instead of 0.

I am not sure about the consequences of this, but it is preferable to
fix it ASAP.

To reproduce:
0/ Do not apply this patch
1/ Edit a YesNo prefs, AutoEmailOpacUser for instance
2/ Set it to "Don't sent"
3/ Check the value in DB, it should be set to an empty string, instead
of 0
4/ Apply this patch and try again. Now the value should be 0

Followed test plan, value is now 0 as expected.
Signed-off-by: Marc Véron <veron@veron.ch>

Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>

Signed-off-by: Jesse Weaver <jweaver@bywatersolutions.com>
(cherry picked from commit de3289506d)
Signed-off-by: Julian Maurice <julian.maurice@biblibre.com>

Conflicts:
	Koha/Branch.pm
	Koha/Branches.pm
2016-03-14 11:10:25 +01:00
Jonathan Druart 0483a13d26 Bug 15446: Add tests
Signed-off-by: Marc Véron <veron@veron.ch>

Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>

Signed-off-by: Jesse Weaver <jweaver@bywatersolutions.com>
(cherry picked from commit bd7e79940d)
Signed-off-by: Julian Maurice <julian.maurice@biblibre.com>
2016-03-14 11:07:52 +01:00
Owen Leonard 7899e93dbb Bug 16026 - Use Font Awesome icons on cataloging home page
The cataloging home page has one instance of a Glyphicon. This patch
replaces it with a Font Awesome icon.

To test you must have the EnableAdvancedCatalogingEditor preference
enabled.

- Apply the patch and go to the Cataloging home page.
- Confirm that the "Advanced editor" button uses the "pencil" icon and
  that it still works correctly.

Signed-off-by: Nicole C Engard <nengard@bywatersolutions.com>

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>

Signed-off-by: Brendan A Gallagher <brendan@bywatersolutions.com>
(cherry picked from commit a6917deede)
Signed-off-by: Julian Maurice <julian.maurice@biblibre.com>
2016-03-14 11:03:50 +01:00
Owen Leonard 95d6311d3f Bug 16024 - Use Font Awesome icons on item types administration page
When editing an item type, a Glyphicon is used for the "translate" link.
It should use a Font Awesome icon instead. This patch corrects it.

To test, apply the patch and go to Administration -> Item types.

- Edit an existing item type.
- Confirm that the icon associated with the "Translate into other
  languages" link is correct.

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>

Signed-off-by: Brendan A Gallagher <brendan@bywatersolutions.com>
(cherry picked from commit d638520f85)
Signed-off-by: Julian Maurice <julian.maurice@biblibre.com>
2016-03-14 11:02:53 +01:00
Frédéric Demians 042d25446d Bug 15445 DateUtils.t fails on Jenkins due to server sluggishness
Jenkins server is abnormally slow to perform a task done in less than
1s elsewhere. The test stay valid by giving just a bit more time to Jenkins
server.

TO TEST:
- Confirm that the two test hasn't changed. They the just get 4s to
  perform
- Push the patch to master and observe that DateUtils.t doesn't fail
  anymore.

NOTE: Also passed koha qa test tools too.

Signed-off-by: Mark Tompsett <mtompset@hotmail.com>

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Amended: Changed to 2s, should be enough

Signed-off-by: Brendan A Gallagher <brendan@bywatersolutions.com>
(cherry picked from commit 357ddab7c6)
Signed-off-by: Julian Maurice <julian.maurice@biblibre.com>
2016-03-14 10:55:11 +01:00
Zeno Tajoli 78e5a99b74 Bug 15955: Tuning function 'New child record' for Unimarc 205$a -> 461$e
Now the sYstem tries to insert value of 205$a into 461$a when a child is
created from the father record.  In UNIMARC 46x tags there is not
present a subfield for ediction value (205$a in UNIMARC).

To Test:
1) Check to have EasyAnalyticalRecords on 'off'
2) Check to use UNIMARC
3) Create a record with data in 200$a (title), 205$a (ediction), 700
   (author) 215$a(Place), 215$d(date)
4) From those record create a child using 'New'->'New child record'
5) See the values in 461 tag: You can see that in 461$a there is the
   value of 205$a from father This is wrong, you need to have the value
   of 700 $a and $b from father record, and 205$a in 461$e.
6) Appy the patch
7) Redo 4-5
8) Now 461 is good

Signed-off-by: Frédéric Demians <f.demians@tamil.fr>

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
I have not checked the doc but trusting author and signoffer.

Signed-off-by: Brendan A Gallagher <brendan@bywatersolutions.com>
(cherry picked from commit 69cf2d9451)
Signed-off-by: Julian Maurice <julian.maurice@biblibre.com>
2016-03-14 10:45:30 +01:00
Owen Leonard bcaf129e2e Bug 15941 - The template for cloning circulation and fine rules says "issuing rules"
The template for cloning circulation and fine rules should use the
phrase "circulation and fine rules" instead of "issuing rules."

Also changed: Added "Cancel" link to return the user to the circulation
and fine rules page.

To test, navigate directly to /cgi-bin/koha/admin/clone-rules.pl.

The page title, breadcrumbs, and heading should all use the phrase
"circulation and fine rules."

Signed-off-by: Frédéric Demians <f.demians@tamil.fr>

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>

Signed-off-by: Brendan A Gallagher <brendan@bywatersolutions.com>
(cherry picked from commit 92544ea10d)
Signed-off-by: Julian Maurice <julian.maurice@biblibre.com>
2016-03-14 10:42:52 +01:00
Nicole C Engard f30c2db43c Bug 15694: Add aliases for date/time last modified
This patch will add indexes for Date/time-last-modified.

To test:

1. apply patch
2. reindex
3. search for dtlm:DATE and date-time-last-modified:DATE
4. confirm that you get results

Signed-off-by: Hector Castro <hector.hecaxmmx@gmail.com>
Works as advertised

Signed-off-by: Frédéric Demians <f.demians@tamil.fr>
  I confirm Hector signing-off. A simple Zebra server restart suffice to get
  working the searches on date-time-last-modified and dtlm.

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>

Signed-off-by: Brendan A Gallagher <brendan@bywatersolutions.com>
(cherry picked from commit 39f9b9ddb0)
Signed-off-by: Julian Maurice <julian.maurice@biblibre.com>
2016-03-14 10:41:03 +01:00
Owen Leonard 618bb26c21 Bug 16033 - Quotes upload preview broken for 973 days
A missing snippet of DataTable configuration means that when you upload
a CSV of quotes to the Quotes of the Day feature the table previewing
your import is not visible. This patch corrects it.

To test, apply the patch and go to Tools -> Quote editor -> Import
quotes.

- Upload a CSV file containing data in two columns, "source","text"
- When your upload completes you should see a DataTable previewing the
  data from your CSV.
- Check that deletion of individual quotes works from the preview.
- Check that quotes are correctly imported.
- Ponder the long 2.66 years during which this page was broken.

Signed-off-by: Frédéric Demians <f.demians@tamil.fr>
  Quote of the day: Serenity of mind comes with patience.

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>

Signed-off-by: Brendan A Gallagher <brendan@bywatersolutions.com>
(cherry picked from commit 54214c4016)
Signed-off-by: Julian Maurice <julian.maurice@biblibre.com>
2016-03-14 10:31:37 +01:00
Tomas Cohen Arazi c244431d43 Bug 16031: (followup) Fix documentation
This followup fixes a tiny mistake in the script POD.

Signed-off-by: Mark Tompsett <mtompset@hotmail.com>

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>

Signed-off-by: Brendan A Gallagher <brendan@bywatersolutions.com>
(cherry picked from commit 5439c71689)
Signed-off-by: Julian Maurice <julian.maurice@biblibre.com>
2016-03-14 10:30:46 +01:00
Tomas Cohen Arazi 808f938517 Bug 16031: sitemap.pl shouldn't append protocol to OPACBaseURL
Since bug 5010 was pushed, OPACBaseURL already contains the protocol. The
sitemap.pl script was written before this was pushed, and thus still concatenates
http:// in front of OPACBaseURL.

This patch removes this behaviour.

To test:
- Have OPACBaseURL set to (say) http://myopac.com
- Run the sitemap.pl script without specifying the --url param
=> FAIL: Notice URLs look like http://http://myopac.com/bib... in the sitemap files.
- Apply the patch
- Run the sitemap.pl script without specifying the --url param
=> SUCCESS: Notice URLs look correctly like http://myopac.com/bib...
- Sign off :-D

Regards

Signed-off-by: Mark Tompsett <mtompset@hotmail.com>

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>

Signed-off-by: Brendan A Gallagher <brendan@bywatersolutions.com>
(cherry picked from commit 41657a87f6)
Signed-off-by: Julian Maurice <julian.maurice@biblibre.com>
2016-03-14 10:30:42 +01:00
Jonathan Druart 7db11e9565 Bug 16014: Display a warning on deleting OAI sets
A JavaScript alert should ask the user to confirm deletion of a OAI set.

Test plan:
Define a OAI set
Delete it
=> With this patch you should get a warning

Signed-off-by: Aleisha <aleishaamohia@hotmail.com>

Signed-off-by: Brendan A Gallagher <brendan@bywatersolutions.com>
(cherry picked from commit 5dc392f663)
Signed-off-by: Julian Maurice <julian.maurice@biblibre.com>
2016-03-14 10:28:58 +01:00
Owen Leonard ee5780d4b7 Bug 15982 - Serials numbering patterns can be deleted without warning
A JavaScript alert should ask the user to confirm deletion of a serial
numbering pattern. This patch adds this to the template.

To test, apply the patch and go to Serials -> Manage numbering patterns.

- In the list of patterns, click any "Delete" link.
- Verify that a JavaScript alert is triggered.
- Test that cancelling the alert cancels the deletion operation.
- Test that confirming the alert allows the deletion to complete.

Signed-off-by: Nicole C Engard <nengard@bywatersolutions.com>

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>

Signed-off-by: Brendan A Gallagher <brendan@bywatersolutions.com>
(cherry picked from commit 6179f04c8a)
Signed-off-by: Julian Maurice <julian.maurice@biblibre.com>
2016-03-14 10:27:07 +01:00
Owen Leonard 5d429ae9a7 Bug 15981 - Serials frequencies can be deleted without warning
A JavaScript alert should ask the user to confirm deletion of a serial
frequency. This patch adds this to the template.

To test, apply the patch and go to Serials -> Manage frequencies

- In the list of frequencies, click any "Delete" link.
- Verify that a JavaScript alert is triggered.
- Test that cancelling the alert cancels the deletion operation.
- Test that confirming the alert allows the deletion to complete.

Signed-off-by: Nicole C Engard <nengard@bywatersolutions.com>

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>

Signed-off-by: Brendan A Gallagher <brendan@bywatersolutions.com>
(cherry picked from commit 4e82b8db94)
Signed-off-by: Julian Maurice <julian.maurice@biblibre.com>
2016-03-14 10:26:01 +01:00
Jonathan Druart 1543db81c7 Bug 15968: Unnecessary loop in C4::Templates
From C4::Templates::output

     # add variables set via param to $vars for processing
     for my $k ( keys %{ $self->{VARS} } ) {
         $vars->{$k} = $self->{VARS}->{$k};
     }

This loop is not necessary, we could do the same with

     $vars = { %$vars, %{ $self->{VARS} } };

After a quick benchmark, it gains 100 microseconds when we pass 170 vars
to the template.

Test plan:
Do some clicks on the interface, everything should be ok.

Signed-off-by: Frédéric Demians <f.demians@tamil.fr>
  Perl idiosyncratic way of merging hash, clearer, if not quicker (not
  verified)

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>

Signed-off-by: Brendan A Gallagher <brendan@bywatersolutions.com>
(cherry picked from commit 9be221b14e)
Signed-off-by: Julian Maurice <julian.maurice@biblibre.com>
2016-03-14 10:24:17 +01:00
Kyle M Hall ce5a03424e Bug 15735: Audio Alerts editor broken by use of of single quotes in editor
Single quotes audio selector break ability to edit an alert

Test Plan:
1) Enable audio alerts
2) Add new a alert with a select containing single quotes such as: input[name*='test']
3) Note you cannot edit the alert
4) Apply this patch
5) Reload the page
6) You should now be able to edit the alert

Signed-off-by: Hector Castro <hector.hecaxmmx@gmail.com>
Bug 15734 applied on top. Works as advertised

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>

Signed-off-by: Brendan A Gallagher <brendan@bywatersolutions.com>
(cherry picked from commit f300914147)
Signed-off-by: Julian Maurice <julian.maurice@biblibre.com>
2016-03-14 10:20:37 +01:00
Galen Charlton b19659e304 Bug 16009: fix GetMember() search on NULL/undef values
This patch fixes a bug whereby GetMember(searchfield => undef)
(i.e., searching for patron records where 'searchfield' is NULL)
would crash.

This fixes a regression introduced by bug 15344 that in turn
exposed a long-standing bug in GetMember().

To test:

[1] Import some offline circulation transactions that include at
    least one return.
[2] Attempt to view the list of pending transactions; a crash
    will occur.
[3] Apply the patch and view the list of pending transactions again;
    this time, it should work.

Signed-off-by: Galen Charlton <gmcharlt@gmail.com>
Signed-off-by: Srdjan <srdjan@catalyst.net.nz>

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
2016-03-14 10:12:29 +01:00
Mark Tompsett df034e8191 Bug 15871: Improve PerlCritic level for t/RecordProcessor.t
perlcritic -5 failed.
Attempt to clean up to a higher level:
-- use English to address use of $@ variable
-- perltidy on the code
-- substitute q{} for ''
-- expand out single line hacky goodness (... s/\.pm$//) to more code
-- remove parenthesis on functions that don't need it
-- add x, s, and m as needed to regexps
-- change double quotes to single quotes where no variable involved
-- tweaked eval destroy test to check return value and use $EVAL_ERROR
-- renamed $processor to $record_processor in the subtest to avoid
   lexical warnings

TEST PLAN
---------

$ perlcritic -5 t/RecordProcessor.t
Don't modify $_ in list functions at line 43, column 25.  See page 114 of PBP.  (Severity: 5)

$ perlcritic -2 t/RecordProcessor.t
No package-scoped "$VERSION" variable found at line 1, column 1.  See page 404 of PBP.  (Severity: 2)
Quotes used with a string containing no non-whitespace characters at line 34, column 36.  See page 53 of PBP.  (Severity: 2)
Quotes used with a string containing no non-whitespace characters at line 34, column 39.  See page 53 of PBP.  (Severity: 2)
Quotes used with a string containing no non-whitespace characters at line 36, column 33.  See page 53 of PBP.  (Severity: 2)
Quotes used with a string containing no non-whitespace characters at line 36, column 36.  See page 53 of PBP.  (Severity: 2)
Don't modify $_ in list functions at line 43, column 25.  See page 114 of PBP.  (Severity: 5)
Regular expression without "/s" flag at line 43, column 33.  See pages 240,241 of PBP.  (Severity: 2)
Regular expression without "/x" flag at line 43, column 33.  See page 236 of PBP.  (Severity: 3)
Regular expression without "/m" flag at line 43, column 33.  See page 237 of PBP.  (Severity: 2)
Regular expression without "/s" flag at line 43, column 66.  See pages 240,241 of PBP.  (Severity: 2)
Regular expression without "/x" flag at line 43, column 66.  See page 236 of PBP.  (Severity: 3)
Regular expression without "/m" flag at line 43, column 66.  See page 237 of PBP.  (Severity: 2)
Expression form of "grep" at line 47, column 8.  See page 169 of PBP.  (Severity: 4)
Expression form of "grep" at line 50, column 20.  See page 169 of PBP.  (Severity: 4)
Regular expression without "/s" flag at line 50, column 26.  See pages 240,241 of PBP.  (Severity: 2)
Regular expression without "/m" flag at line 50, column 26.  See page 237 of PBP.  (Severity: 2)
Return value of eval not tested at line 73, column 1.  You can't depend upon the value of $@/$EVAL_ERROR to tell whether an eval failed.  (Severity: 3)
Magic punctuation variable $@ used at line 78, column 5.  See page 79 of PBP.  (Severity: 2)
Reused variable name in lexical scope: $processor at line 84, column 5.  Invent unique variable names.  (Severity: 3)
Subroutine "new" called using indirect syntax at line 87, column 18.  See page 349 of PBP.  (Severity: 4)
Subroutine "new" called using indirect syntax at line 93, column 18.  See page 349 of PBP.  (Severity: 4)
Quotes used with a string containing no non-whitespace characters at line 96, column 40.  See page 53 of PBP.  (Severity: 2)
Subroutine "new" called using indirect syntax at line 99, column 18.  See page 349 of PBP.  (Severity: 4)
Subroutine "new" called using indirect syntax at line 106, column 18.  See page 349 of PBP.  (Severity: 4)
$ prove -v t/RecordProcessor.t
t/RecordProcessor.t .. ok
All tests successful.
Files=1, Tests=13,  0 wallclock secs ( 0.01 usr  0.00 sys +  0.22 cusr  0.02 csys =  0.25 CPU)
Result: PASS

$ prove -v t/RecordProcessor.t
...
$ git bz apply 15871

Repeat perlcritic level 2, and only $VERSION warning should exist.
Retest with the prove.
Run koha qa test tools.

Signed-off-by: Hector Castro <hector.hecaxmmx@gmail.com>
Works as advertised

Signed-off-by: Jesse Maseto <jesse@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@unc.edu.ar>
I don't really care about perlcritic as long as it involves changing '' into qw{} (WTF?)
Anyway, I'd do this kind of things as we go, for example, if we were adding more tests. In that
case it would just be a followup for this, after you provided a patch for an enh/bugfix.

Signed-off-by: Brendan A Gallagher <brendan@bywatersolutions.com>
(cherry picked from commit 7721a7b8d2)
Signed-off-by: Julian Maurice <julian.maurice@biblibre.com>
2016-03-07 14:27:07 +01:00
Nick Clemens 70efd64b47 Bug 15697 - [QA Followup] Apply change to NORMARC
This patch switches from UNLESS MARC21 to IF UNIMARC - this way changes
apply to MARC21 and NORMARC and UNIMARC remains unaffected

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>

Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
(cherry picked from commit 566daf8c24)
Signed-off-by: Julian Maurice <julian.maurice@biblibre.com>
2016-03-07 14:26:18 +01:00
Nick Clemens 889a2f7a6c Bug 15697: Unnecessary comma between title and subtitle on opac-detail.pl
To test:
1 - Go to Administration->Keyword to MARC mapping
2 - Add a mapping (or ensure it exists)
    Field name: subtitle
    MARC field: 245
    MARC subfield: b
3 - View a record with a subtitle in the opac
4 - Note in MARC 21 you have "Title of record:, subtitle of record"
5 - Apply patch
6 - View the record again and note the comma is no longer present.

Note: this patch removes the comma only for MARC21 where subtitle is not
repeatable. UNIMARC seems to be repeatable and does not include
punctuation so I believe this may be needed there.

Signed-off-by: Hector Castro <hector.hecaxmmx@gmail.com>
Works as described. Comma removed from title of the window and breadcrumb
section

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>

Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
(cherry picked from commit e19db8ca32)
Signed-off-by: Julian Maurice <julian.maurice@biblibre.com>
2016-03-07 14:26:16 +01:00
Hector Castro 16378c0d42 Bug 15693: Unnecessary punctuation mark when check-in an item in a library other than the home branch
To test:
1-Checkin an item in a library other than the home branch.
2-A message will display asking to return the item to the home branch
3-You will see the phrase "Print slip )"
4-Apply patch
5-Reproduce or repeat steps 1-2 and verify the punctuation mark is
no longer displayed

Signed-off-by: Mirko Tietgen <mirko@abunchofthings.net>

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>

Signed-off-by: Brendan Gallagher brendan@bywatersolutions.com
(cherry picked from commit a9a10c5780)
Signed-off-by: Julian Maurice <julian.maurice@biblibre.com>
2016-03-07 14:23:38 +01:00
Mark Tompsett 3384a942e1 Bug 14097: Fixed missing test cases
Fixed AllowPkiAuth issue caused by 15101.
Added missing AudioAlerts

TEST PLAN
---------
1) prove -v t/db_dependent/UsageStats.t
   -- should pass after applying patch
2) Run koha qa test tools

Signed-off-by: Indranil Das Gupta (L2C2 Technologies) <indradg@gmail.com>

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>

Signed-off-by: Brendan Gallagher brendan@bywatersolutions.com
(cherry picked from commit 5f71faf971)
Signed-off-by: Julian Maurice <julian.maurice@biblibre.com>
2016-03-07 14:22:13 +01:00
Julian FIOL bff06f2752 Bug 14097 : Changing AddReserve prototype call
In response of Joubu comment #19

Signed-off-by: Indranil Das Gupta (L2C2 Technologies) <indradg@gmail.com>

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>

Signed-off-by: Brendan Gallagher brendan@bywatersolutions.com
(cherry picked from commit 9ac68128d9)
Signed-off-by: Julian Maurice <julian.maurice@biblibre.com>
2016-03-07 14:22:12 +01:00
Julian FIOL 00fbd8877e Bug 14097 : Avoid issue if the number of syspref shared is modified
Signed-off-by: Indranil Das Gupta (L2C2 Technologies) <indradg@gmail.com>

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>

Signed-off-by: Brendan Gallagher brendan@bywatersolutions.com
(cherry picked from commit e3e507be9e)
Signed-off-by: Julian Maurice <julian.maurice@biblibre.com>
2016-03-07 14:22:10 +01:00
Mark Tompsett a9efe8521f Bug 14097 - Correct noise under Debian
The first four patches do not create any noise under Ubuntu 14.04 LTS.

Running on Debian Jessie:
[SNIP]
keys on reference is experimental at t/db_dependent/UsageStats.t line 88.
keys on reference is experimental at t/db_dependent/UsageStats.t line 106.
keys on reference is experimental at t/db_dependent/UsageStats.t line 119.
keys on reference is experimental at t/db_dependent/UsageStats.t line 136.
keys on reference is experimental at t/db_dependent/UsageStats.t line 153.
keys on reference is experimental at t/db_dependent/UsageStats.t line 162.
keys on reference is experimental at t/db_dependent/UsageStats.t line 587.
[SNIP]

Instead of having 'keys $foo->{bar}', 'keys %{$foo->{bar}}' was used.

TEST PLAN
---------
1) On a DEBIAN system (Jessie gives above messages)
   apply the first 4 patches interactively.
2) $ prove t/db_dependent/UsageStats.t
   -- trigger noise like above.
3) apply this patch
4) $ prove t/db_dependent/UsageStats.t
   -- no noise triggered.
5) koha qa test tools

Signed-off-by: Indranil Das Gupta (L2C2 Technologies) <indradg@gmail.com>

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>

Signed-off-by: Brendan Gallagher brendan@bywatersolutions.com
(cherry picked from commit 3387a6114b)
Signed-off-by: Julian Maurice <julian.maurice@biblibre.com>
2016-03-07 14:22:09 +01:00
Julian FIOL 4199049064 Bug 14097: Rollback issue and warning corrected
The rollback issue came from '_count' testing.
It used a 'DROP TABLE' and 'CREATE TABLE' which implicitly do autocommit.
That's why the final rollback could not be.

This patch no longer uses t::lib::TestBuilder either because it was the cause
of the warning on Comment #1 :
"DBIx::Class::Storage::txn_rollback(): A txn_rollback
in nested transaction is ineffective! (depth 1) at
t/lib/TestBuilder.pm line 308"

Signed-off-by: Bernardo Gonzalez Kriegel <bgkriegel@gmail.com>
Now data is preserved, no errors.

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>

Signed-off-by: Brendan Gallagher brendan@bywatersolutions.com
(cherry picked from commit afe9d02a81)
Signed-off-by: Julian Maurice <julian.maurice@biblibre.com>
2016-03-07 14:22:07 +01:00
Julian FIOL faa3e05af7 Bug 14097: changing verif_systempreferences_values subroutine
It's saving a large number of lines

Signed-off-by: Bernardo Gonzalez Kriegel <bgkriegel@gmail.com>
All tests run, no koha-qa errors

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>

Signed-off-by: Brendan Gallagher brendan@bywatersolutions.com
(cherry picked from commit acf2e684bd)
Signed-off-by: Julian Maurice <julian.maurice@biblibre.com>
2016-03-07 14:22:06 +01:00
Julian FIOL de77373665 Bug 14097: Delete table issues before testing
If we delete all biblio DB, we could have some troubles with foreign keys

Signed-off-by: Bernardo Gonzalez Kriegel <bgkriegel@gmail.com>

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>

Signed-off-by: Brendan Gallagher brendan@bywatersolutions.com
(cherry picked from commit ae5a199a55)
Signed-off-by: Julian Maurice <julian.maurice@biblibre.com>
2016-03-07 14:22:05 +01:00
Julian FIOL 30c18a39ff Bug 14097: Testing C4::UsageStats
DESCRIPTION
-----------

Add unit tests to C4::UsageStats
Subroutine :
(V : tested, X : Not tested)

	V  NeedUpdate
	V  BuiltReport
	X  ReportToCommunity
	V  _count

TEST PLAN
---------

1. Apply patch
2. prove -v t/db_dependent/UsageStats.t
-- All tests should run successfully

/!\ I have 1 warning but I don't know where it can come /!\
(in cleanup) DBIx::Class::Storage::txn_rollback(): A txn_rollback
in nested transaction is ineffective! (depth 1) at
t/lib/TestBuilder.pm line 308

TEST PLAN OPTIONAL
------------------

Go check bug 13899 to see the coverage of this module.

Coverage BEFORE this patch :
Statement  :  40,5%
Branch     :   0,0%
Condition  :   0,0%
Subroutine :  55,6%

Coverage AFTER this patch :
Statement  :  81,0%
Branch     : 100,0%
Condition  : 100,0%
Subroutine :  88,8%

Signed-off-by: Bernardo Gonzalez Kriegel <bgkriegel@gmail.com>

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>

Signed-off-by: Brendan Gallagher brendan@bywatersolutions.com
(cherry picked from commit b44b7224e0)
Signed-off-by: Julian Maurice <julian.maurice@biblibre.com>
2016-03-07 14:22:01 +01:00
Kyle M Hall c4e64889fd Bug 12920 [QA Followup] - Show override option below checkouts table when allowed
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>

Signed-off-by: Brendan Gallagher brendan@bywatersolutions.com
(cherry picked from commit 05be0f29cd)
Signed-off-by: Julian Maurice <julian.maurice@biblibre.com>
2016-03-07 14:18:40 +01:00
Natasha 35afb97378 Bug 12920: Remove AllowRenewalLimitOverride from pl scripts and tt files
use Koha.Preference instead

Test Plan:
1) Apply this patch
2) Go to circulation.pl
3) Ensure you can still override renewal limits with pref enabled
4) Ensure you can not override renewal limits with pref disabled
5) Go to moremember.pl
6) Repeat steps 3-4

Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>

Signed-off-by: Brendan Gallagher brendan@bywatersolutions.com
(cherry picked from commit 17190de524)
Signed-off-by: Julian Maurice <julian.maurice@biblibre.com>
2016-03-07 14:18:16 +01:00
Owen Leonard 3c9ed309ba Bug 15940 - Remove unused JavaScript from authorities MARC subfield structure
The authorities MARC subfield structure template contains some unused
JavaScript, "function displayMoreConstraint()" This patch removes it.

To test, apply the patch and go to Administration -> Authority types ->
MARC structure -> Subfields -> Edit subfields and confirm that there are
no JavaScript errors and tab switching works correctly.

A search of the source code should show no instances of
"displayMoreConstraint."

Signed-off-by: Frédéric Demians <f.demians@tamil.fr>
  No regression, no JS warning.

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>

Signed-off-by: Brendan A Gallagher <brendan@bywatersolutions.com>
(cherry picked from commit 3f70b4660b)
Signed-off-by: Julian Maurice <julian.maurice@biblibre.com>
2016-03-07 14:15:49 +01:00
Owen Leonard 4847de47e4 Bug 15927 - Remove use of <tr class="highlight"> for alternating row colors
The "highlight" class on table rows is unnecessary since we have a CSS
rule which defines colors for alternating row colors. This patch removes
use of the "highlight" class from templates and removes the definition
from staff-global.css

To test, view the affected pages and confirm that the change has not
broken anything.

Acquisitions -> Vendor -> View basket
Acquisitions -> Late orders
Acquisitions -> Ordered
Acquisitions -> Vendor -> Receive shipment
Acquisitions -> Spent
Acquisitions -> Vendor details -> Contracts table
Administration -> MARC frameworks (comment removed only)
Administration -> Class sources
Authorities -> Authority search results
Catalog -> Bibliographic detail page -> Items -> View item's checkout
   history
Catalog -> subject.tt (is this template used?)
Cataloging -> Cataloging search results
Patrons -> Patron account
Reports -> Patrons who haven't checked out
Reports -> Statistics wizards -> Patrons
Reports -> Top lists -> Most-circulated items
Reports -> Inactive -> Items with no checkouts
Reports -> Reports dictionary
Reports -> Statistics wizards -> Circulation
Reports -> Statistics wizards -> Holds
Holds -> Place a hold -> Existing holds table
Serials -> New subscription -> Search for a vendor -> Search results
Serials -> Check expiration
Serials -> Subscription -> Serial collection
Serials -> Subscription -> Serial collection -> Edit serials
Suggestions
Tags -> View tags -> View titles with a tag
Tools -> Manage staged MARC records -> Batch (I think the affected
section of this template is obsolete)
Tools -> Log viewer -> Log result
Lists -> View lists (May be broken by Bug 15916)

Note that if you search the templates for instances of a <tr> with a
"highlight" class you'll find two instances in slip templates which
refer to a class defined in printreceiptinvoice.css.

Signed-off-by: Frédéric Demians <f.demians@tamil.fr>
  Looks good. Haven't seen any regression.

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>

Signed-off-by: Brendan A Gallagher <brendan@bywatersolutions.com>
(cherry picked from commit 255c0af989)
Signed-off-by: Julian Maurice <julian.maurice@biblibre.com>
2016-03-07 14:13:18 +01:00
Nicole C Engard e9b25fb1a1 Bug 15926: Add help for item search fields admin
This patch will add the missing help file to the item
search fields admin page.

To test:
* Go to administration > Item search fields
* Click Help
* Confirm help is there and correct.

Signed-off-by: Marc Véron <veron@veron.ch>

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>

Signed-off-by: Brendan Gallagher brendan@bywatersolutions.com
(cherry picked from commit ac3e13248a)
Signed-off-by: Julian Maurice <julian.maurice@biblibre.com>
2016-03-07 14:08:02 +01:00
Owen Leonard d3b4f19f99 Bug 15925: Correct some markup issues with patron lists pages
This patch makes some markup changes to the patron lists interface in
order to make them more consistent with other areas of Koha.

Change to look for when testing:

Tools -> Patron lists:

- Wrap "New patron list" button in standard <div id="toolbar">
- Place toolbar above page heading.

Tools -> Patron lists -> New patron list:

- Use built-in form validation for required fields
- Clarify page title and breadcrumbs on list add and edit

Validation errors have been corrected on all three templates, including
removal of an extra </div>.

Signed-off-by: Julian Maurice <julian.maurice@biblibre.com>
2016-03-07 14:06:22 +01:00
Owen Leonard 927be5f62c Bug 15920: Clean up and fix errors in batch checkout template
The batch checkout template has some markup and JavaScript problems
which need to be resolved, including:

- Mismatched <h3></h1>
- JavaScript includes which are not used
- Incorrect DataTables configuration
- Incorrect class on warning dialogs
- Incorrect terminology: Use "checkout" instead of "issue"

This patch also changes the markup and styling of batch checkout errors,
using Font Awesome icons to retain highlighting of warnings and errors
while (I hope) improving readability.

To test, apply the patch and go to batch checkout for a patron for whom
batch checkouts are enabled.

- Check out a batch of barcodes. Include items which will trigger errors
  or warnings. For example: Invalid barcodes, lost items, items which
  are already checked out, items which are on hold for another patron,
  items which are damaged.

- When the table of items is displayed so that you can confirm the
  checkout, make sure the table is sortable.

- Think about whether the style changes on warnings and errors are an
  improvement.

- Try to initiate a batch checkout to a patron who is restricted. You
  should see an "alert" style dialog instead of a "message" style one.

- Validate the HTML and confirm that there are no errors raised by this
  template's markup.

Signed-off-by: Hector Castro <hector.hecaxmmx@gmail.com>
Works as described

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>

Signed-off-by: Brendan Gallagher brendan@bywatersolutions.com
(cherry picked from commit 24e009f72f)
Signed-off-by: Julian Maurice <julian.maurice@biblibre.com>
2016-03-07 13:55:00 +01:00